2017-01-10 23:28 GMT+08:00 Steven Liu <l...@chinaffmpeg.org>: > when the segments largest duration value is look like 4.000000, the > EXT-X-TARGETDURATION value should equ 4. > it's wrong when hlsenc use ceil, so fix it. > > Signed-off-by: Steven Liu <l...@chinaffmpeg.org> > --- > libavformat/hlsenc.c | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c > index 3d2d41a..a2c606c 100644 > --- a/libavformat/hlsenc.c > +++ b/libavformat/hlsenc.c > @@ -141,6 +141,11 @@ typedef struct HLSContext { > char current_segment_final_filename_fmt[1024]; // when renaming > segments > } HLSContext; > > +static int get_int_from_double(double val) > +{ > + return (int)((val - (int)val) >= 0.001) ? (int)(val + 1) : (int)val; > +} > + > static int mkdir_p(const char *path) { > int ret = 0; > char *temp = av_strdup(path); > @@ -668,8 +673,8 @@ static int hls_window(AVFormatContext *s, int last) > goto fail; > > for (en = hls->segments; en; en = en->next) { > - if (target_duration < en->duration) > - target_duration = ceil(en->duration); > + if (target_duration <= en->duration) > + target_duration = get_int_from_double(en->duration); > } > > hls->discontinuity_set = 0; > -- > 2.10.1 (Apple Git-78) > > > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel >
applied! Thanks _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel