#10606: ffplay ignores relative audio delay tag
-----------------------------------+---------------------------------------
             Reporter:  Ulf Zibis  |                     Type:  defect
               Status:  new        |                 Priority:  normal
            Component:  ffplay     |                  Version:  unspecified
             Keywords:  audio      |               Blocked By:
             Blocking:             |  Reproduced by developer:  0
Analyzed by developer:  0          |
-----------------------------------+---------------------------------------
 Summary of the bug:
 How to reproduce:
 {{{
 $ ffmpeg -ss 27.83 -t 2:06:32.44 -i Ton_fr.mkv -c:a copy Ton_fr_cut.mkv
 ffmpeg version 5.1.1-1ubuntu2.1 Copyright (c) 2000-2022 the FFmpeg
 developers
   built with gcc 12 (Ubuntu 12.2.0-3ubuntu1)
   configuration: --prefix=/usr --extra-version=1ubuntu2.1
 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu
 --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl
 --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom
 --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
 --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite
 --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-
 libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-
 libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt
 --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist
 --enable-librubberband --enable-libshine --enable-libsnappy --enable-
 libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-
 libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab
 --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265
 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq
 --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl
 --enable-opengl --enable-sdl2 --disable-sndio --enable-pocketsphinx
 --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm
 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264
 --enable-libplacebo --enable-shared
   libavutil      57. 28.100 / 57. 28.100
   libavcodec     59. 37.100 / 59. 37.100
   libavformat    59. 27.100 / 59. 27.100
   libavdevice    59.  7.100 / 59.  7.100
   libavfilter     8. 44.100 /  8. 44.100
   libswscale      6.  7.100 /  6.  7.100
   libswresample   4.  7.100 /  4.  7.100
   libpostproc    56.  6.100 / 56.  6.100
 Input #0, matroska,webm, from 'Ton_fr.mkv':
   Metadata:
     ENCODER         : Lavf59.27.100
   Duration: 02:14:57.56, start: 0.000000, bitrate: 2853 kb/s
   Stream #0:0: Video: h264 (High 4:4:4 Predictive), gbrp(pc,
 gbr/unknown/unknown, progressive), 210x110 [SAR 1:1 DAR 21:11], 25 fps, 25
 tbr, 1k tbn
     Metadata:
       DURATION        : 02:14:57,480000000
   Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp
     Metadata:
       DURATION        : 02:14:57,557000000
 Stream mapping:
   Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
   Stream #0:1 -> #0:1 (copy)
 Press [q] to stop, [?] for help
 [libx264 @ 0x5647083b6ac0] using SAR=1/1
 [libx264 @ 0x5647083b6ac0] using cpu capabilities: MMX2 SSE2Fast SSSE3
 SSE4.1 Cache64
 [libx264 @ 0x5647083b6ac0] profile High 4:4:4 Predictive, level 1.1,
 4:4:4, 8-bit
 [libx264 @ 0x5647083b6ac0] 264 - core 164 r3095 baee400 - H.264/MPEG-4 AVC
 codec - Copyleft 2003-2022 - http://www.videolan.org/x264.html - options:
 cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1
 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1
 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=3
 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0
 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1
 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25
 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0
 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
 Output #0, matroska, to 'Ton_fr_cut.mkv':
   Metadata:
     encoder         : Lavf59.27.100
   Stream #0:0: Video: h264 (H264 / 0x34363248), yuv444p(tv, progressive),
 210x110 [SAR 1:1 DAR 21:11], q=2-31, 25 fps, 1k tbn
     Metadata:
       DURATION        : 02:14:57,480000000
       encoder         : Lavc59.37.100 libx264
     Side data:
       cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
   Stream #0:1: Audio: aac (LC) ([255][0][0][0] / 0x00FF), 48000 Hz,
 stereo, fltp
     Metadata:
       DURATION        : 02:14:57,557000000
 frame=189811 fps=367 q=-1.0 Lsize=  208409kB time=02:06:32.45 bitrate=
 224.9kbits/s speed=14.7x
 video:54887kB audio:149809kB subtitle:0kB other streams:0kB global
 headers:0kB muxing overhead: 1.814429%
 [libx264 @ 0x5647083b6ac0] frame I:1641  Avg QP:20.10  size:  4034
 [libx264 @ 0x5647083b6ac0] frame P:84383 Avg QP:23.19  size:   462
 [libx264 @ 0x5647083b6ac0] frame B:103787 Avg QP:24.76  size:   102
 [libx264 @ 0x5647083b6ac0] consecutive B-frames: 20.9% 14.7% 11.5% 52.9%
 [libx264 @ 0x5647083b6ac0] mb I  I16..4:  6.7% 50.8% 42.5%
 [libx264 @ 0x5647083b6ac0] mb P  I16..4:  0.4%  1.3%  0.6%  P16..4: 20.3%
 12.3%  8.4%  0.0%  0.0%    skip:56.7%
 [libx264 @ 0x5647083b6ac0] mb B  I16..4:  0.1%  0.2%  0.1%  B16..8: 17.2%
 3.2%  0.9%  direct: 1.0%  skip:77.4%  L0:38.4% L1:50.2% BI:11.4%
 [libx264 @ 0x5647083b6ac0] 8x8 transform intra:54.4% inter:56.3%
 [libx264 @ 0x5647083b6ac0] coded y,u,v intra: 63.6% 34.5% 31.5% inter:
 9.2% 1.8% 1.4%
 [libx264 @ 0x5647083b6ac0] i16 v,h,dc,p: 52% 28%  8% 12%
 [libx264 @ 0x5647083b6ac0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 21% 22%  4%
 5%  5%  6%  6%  7%
 [libx264 @ 0x5647083b6ac0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 21% 14%  5%
 6%  7%  6%  6%  6%
 [libx264 @ 0x5647083b6ac0] Weighted P-Frames: Y:4.8% UV:1.4%
 [libx264 @ 0x5647083b6ac0] ref P L0: 66.9% 13.8% 12.2%  6.7%  0.5%
 [libx264 @ 0x5647083b6ac0] ref B L0: 88.1%  8.4%  3.5%
 [libx264 @ 0x5647083b6ac0] ref B L1: 97.1%  2.9%
 [libx264 @ 0x5647083b6ac0] kb/s:59.22
 }}}
 `ffplay` outputs the audio at the beginning of the video with ~7 sec.
 delay, but from 00:00:23 to end, the sync is correct.
 {{{
 $ ffplay Ton_fr_cut.mkv
 ffplay version 5.1.1-1ubuntu2.1 Copyright (c) 2003-2022 the FFmpeg
 developers
   built with gcc 12 (Ubuntu 12.2.0-3ubuntu1)
   configuration: --prefix=/usr --extra-version=1ubuntu2.1
 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu
 --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl
 --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom
 --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
 --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite
 --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-
 libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-
 libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt
 --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist
 --enable-librubberband --enable-libshine --enable-libsnappy --enable-
 libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-
 libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab
 --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265
 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq
 --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl
 --enable-opengl --enable-sdl2 --disable-sndio --enable-pocketsphinx
 --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm
 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264
 --enable-libplacebo --enable-shared
   libavutil      57. 28.100 / 57. 28.100
   libavcodec     59. 37.100 / 59. 37.100
   libavformat    59. 27.100 / 59. 27.100
   libavdevice    59.  7.100 / 59.  7.100
   libavfilter     8. 44.100 /  8. 44.100
   libswscale      6.  7.100 /  6.  7.100
   libswresample   4.  7.100 /  4.  7.100
   libpostproc    56.  6.100 / 56.  6.100
 [matroska,webm @ 0x7fe7d0000c80] Could not find codec parameters for
 stream 0 (Video: h264, none(tv, progressive), 210x110): unspecified pixel
 format
 Consider increasing the value for the 'analyzeduration' (0) and
 'probesize' (5000000) options
 Input #0, matroska,webm, from 'Ton_fr_cut.mkv':
   Metadata:
     ENCODER         : Lavf59.27.100
   Duration: 02:06:40.28, start: 0.000000, bitrate: 224 kb/s
   Stream #0:0: Video: h264, none(tv, progressive), 210x110, SAR 1:1 DAR
 21:11, 25 fps, 25 tbr, 1k tbn
     Metadata:
       ENCODER         : Lavc59.37.100 libx264
       DURATION        : 02:06:40.259000000
   Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp
     Metadata:
       DURATION        : 02:06:40.277000000
   62.32 A-V: -0.006 fd=   0 aq=   20KB vq=    2KB sq=    0B f=201/0
 }}}

 With the mpv media player as alternative the sync between audio and video
 is correct from the beginning.

 The audio delay is confirmed by `mediainfo`:
 {{{
 $ mediainfo Ton_fr_cut.mkv
 [.....]
 Audio
 ID                                       : 2
 Format                                   : AAC LC
 Format/Info                              : Advanced Audio Codec Low
 Complexity
 Codec ID                                 : A_AAC-2
 Duration                                 : 2 h 6 min
 Channel(s)                               : 2 channels
 Channel layout                           : L R
 Sampling rate                            : 48.0 kHz
 Frame rate                               : 46.875 FPS (1024 SPF)
 Compression mode                         : Lossy
 Delay relative to video                  : -7 s 819 ms
 Default                                  : No
 Forced                                   : No
 }}}
 The input file was created by `simplescreenrecorder` which uses FFmpeg in
 behind. I used the `libx264rgb` encoder with bit rate 0 and options
 "`crf=0,preset=ultrafast`".
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/10606>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
_______________________________________________
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-trac

To unsubscribe, visit link above, or email
ffmpeg-trac-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to