zhilizhao <quinkbl...@foxmail.com> 于2020年8月17日周一 上午10:54写道: > > Hi Steven, > > > On Aug 17, 2020, at 8:49 AM, Steven Liu <l...@chinaffmpeg.org> wrote: > > > > output a warning message if the target duration of the segment. > > The sentence is incomplete. Ah ,yes, should "Output a warning message if the target duration of the segment is negative." > > > and modify the target duration to one packet duration, > > because there maybe have bframe and then split not by keyframe, > > and the segment is very very small. > > The warning message is very helpful, modify the target duration is less > helpful > IMHO. The generated files are broken and cannot be fixed. Let the user see > what’s > going wrong from the log messages or from the m3u8 files, and fix the usage > problem. What about return a suggestion and give an error message? "duration < 0, maybe you splited a too short segment, you should split an keyframe if too short."? > > > > > Signed-off-by: Steven Liu <l...@chinaffmpeg.org> > > --- > > libavformat/hlsenc.c | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c > > index cb31d6aed7..76d59f5f79 100644 > > --- a/libavformat/hlsenc.c > > +++ b/libavformat/hlsenc.c > > @@ -2512,6 +2512,11 @@ static int hls_write_packet(AVFormatContext *s, > > AVPacket *pkt) > > > > if (vs->start_pos || hls->segment_type != SEGMENT_TYPE_FMP4) { > > double cur_duration = (double)(pkt->pts - vs->end_pts) * > > st->time_base.num / st->time_base.den; > > + if (cur_duration < 0) { > > + av_log(s, AV_LOG_WARNING, "duration < 0, maybe you splited > > a too short segment, " > > + "the duration will set to 1 packet > > duration.\n"); > > + cur_duration = vs->duration; > > + } > > ret = hls_append_segment(s, hls, vs, cur_duration, > > vs->start_pos, vs->size); > > vs->end_pts = pkt->pts; > > vs->duration = 0; > > -- > > 2.25.0 > > > > _______________________________________________ > > ffmpeg-devel mailing list > > ffmpeg-devel@ffmpeg.org > > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > > > To unsubscribe, visit link above, or email > > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Thanks Steven _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".