[FFmpeg-trac] #6915(avformat:new): DASH audio segments duration doesn't match exactly with video segments duration.

FFmpeg trac at avcodec.org
Thu Dec 21 12:57:49 EET 2017


#6915: DASH audio segments duration doesn't match exactly with video segments
duration.
------------------------------------+------------------------------------
             Reporter:  beloko      |                    Owner:
                 Type:  defect      |                   Status:  new
             Priority:  normal      |                Component:  avformat
              Version:  git-master  |               Resolution:
             Keywords:              |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+------------------------------------

Comment (by stevenliu):

 Replying to [comment:11 j_karthic]:
 > Replying to [comment:10 stevenliu]:
 > > Replying to [comment:9 j_karthic]:
 > > > Replying to [comment:8 stevenliu]:
 > > > > Replying to [comment:7 j_karthic]:
 > > > > > Well, if we round the target duration to '''nearest integer'''
 as per the spec, part of the problem is resolved. Right now we are
 '''ceiling to the upper integer''' which is not according to HLS
 specifications.
 > > > > >
 > > > > > {{{
 > > > > > 4.3.3.1.  EXT-X-TARGETDURATION
 > > > > >
 > > > > >    The EXT-X-TARGETDURATION tag specifies the maximum Media
 Segment
 > > > > >    duration.  The EXTINF duration of each Media Segment in the
 Playlist
 > > > > >    file, when rounded to the nearest integer, MUST be less than
 or equal
 > > > > >    to the target duration; longer segments can trigger playback
 stalls
 > > > > >    or other errors.  It applies to the entire Playlist file.
 Its format
 > > > > >    is:
 > > > > >
 > > > > >    #EXT-X-TARGETDURATION:<s>
 > > > > >
 > > > > >    where s is a decimal-integer indicating the target duration
 in
 > > > > >    seconds.  The EXT-X-TARGETDURATION tag is REQUIRED.
 > > > > >
 > > > > > }}}
 > > > > >
 > > > > > So as per the spec, the EXT-X-TARGETDURATION should rounded to 4
 instead of 5.
 > > > > >
 > > > > > But when I submitted a patch for fixing such an issue in hlsenc,
 it was rejected by Steven. See thread http://ffmpeg.org/pipermail/ffmpeg-
 devel/2017-September/215630.html more details. During that time, I was not
 able to provide a concrete example with mediastreamvalidator like @beloko
 has done now. But I thought the spec was very clear about it without any
 room for confusion.
 > > > > >
 > > > > > @stevenliu
 > > > > > If you have a change of mind after seeing these results, please
 let me know. Maybe I will send a new patch which fixes the target duration
 in dashenc, and we can take forward our discussions there.
 > > > >
 > > > > The spec said "EXT-X-TARGETDURATION must > EXTINF", we have talk
 and you have sent twice patch about it. you can see the spec said "MUST be
 less than or equal to the target duration.", attention the MUST, MUST,
 MUST, we should don't care the tool, we should care the spec. If the tool
 different with the spec, that maybe apple's mistake, you should push
 apple.
 > > > I think you missing the important line "'''when rounded to the
 nearest integer'''" in the spec. I am also only talking about the spec.
 This is just a pure argument, about interpreting that English line. This
 is where I feel some other people in the ffmpeg community should also
 pitch in moderate a discussion, rather than leaving it as "'''Maintainer
 is always right'''".
 > > '''Maintainer''' not always right, but can you give me the mean
 '''MUST be less than or equal  to the target duration''' how should i
 understand it?
 > "'''when rounded to the nearest integer, MUST be less than or equal to
 the target duration'''" is in one sentence. That should be read in
 conjunction with the phrase "when rounded to the nearest integer". It
 means after rounding duration to the nearest integer, it MUST be less than
 or equal to the target duration.
 how should i understand the '''target duration'''?
 do you mean, when the '''EXTINF''' is '''1.080000''', the
 '''EXT-X-TARGETDURATION''' should equal to '''1''' ?

 > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > > >

--
Ticket URL: <https://trac.ffmpeg.org/ticket/6915#comment:12>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list