[FFmpeg-trac] #1731(avformat:new): libavformat muxers destroy initial timestamp offsets

FFmpeg trac at avcodec.org
Thu Sep 13 14:08:15 CEST 2012


#1731: libavformat muxers destroy initial timestamp offsets
-------------------------------------+-------------------------------------
             Reporter:  saste        |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:  avformat
              Version:  unspecified  |               Resolution:
             Keywords:  muxer        |               Blocked By:
  timestamp flv avi                  |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Description changed by saste:

Old description:

> Many muxers in libavformat (tested: avi, flv) destory the initial offset.
> This is meant as a feature, but has the effect that remuxing a file will
> destroy the original timestamp information. This is especially annoying
> in case streams from different sources need to be synched.
>
> How to reproduce:
> {{{
> ffmpeg -f lavfi -i "aevalsrc=sin(2*PI*400*t)::d=5,asetpts=PTS+10/TB" -y
> out.flv
> }
>
> then check the packet timestamps with ffprobe -show_packets out.flv.
>
> A possible workaround:
> {{{
> ffmpeg -f lavfi -i
> "aevalsrc=sin(2*PI*400*t)::d=5,asetpts=PTS+10/TB,aresample=min_comp=0.001:min_hard_comp=0.0010"
> -y out.flv
> }}}
>
> (with video the problem can't be easily worked around).
>
> The behavior with respect to the initial offset could be made
> configurable through some options.

New description:

 Many muxers in libavformat (tested: avi, flv) destory the initial offset.
 This is meant as a feature, but has the effect that remuxing a file will
 destroy the original timestamp information. This is especially annoying in
 case streams from different sources need to be synched.

 How to reproduce:
 {{{
 ffmpeg -f lavfi -i "aevalsrc=sin(2*PI*400*t)::d=5,asetpts=PTS+10/TB" -y
 out.flv
 }}}

 then check the packet timestamps with ffprobe -show_packets out.flv.

 A possible workaround:
 {{{
 ffmpeg -f lavfi -i
 "aevalsrc=sin(2*PI*400*t)::d=5,asetpts=PTS+10/TB,aresample=min_comp=0.001:min_hard_comp=0.0010"
 -y out.flv
 }}}

 (with video the problem can't be easily worked around).

 The behavior with respect to the initial offset could be made configurable
 through some options.

--

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1731#comment:1>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list