Opened 34 hours ago

Last modified 23 hours ago

#11405 new defect

Seeking on real time transcoded AVCI 100 file fails.

Reported by: Ankur Bhatkalkar Owned by:
Priority: normal Component: undetermined
Version: Keywords:
Cc: Ankur Bhatkalkar Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description (last modified by Ankur Bhatkalkar)

Summary of the bug:

Our application requires some playback while recording for an AVC-I 100 mxf file and I am facing this issue when running some local tests with ffmpeg. I run a transcode in real time which generates a growing mxf AVC-I 100 file and in another terminal I use ffplay to try and seek to a position which is less than the duration that has been transcoded, playback from the beginning of the file works as expected, but seeking always fails with the clip always going to play from the beginning.

How to reproduce:

This will require two terminals

In the first terminal within any arbitrary directory enter this command ( file has been attached for reference ), the input file should also be in this current directory

ffmpeg -re -v 9 -loglevel 99 -report -i PermA_BuckBunny_1080i50.mov -c:v libx264 -profile:v high422 -level:v 4.1 -b:v 100M -pix_fmt yuv422p10le -x264opts force-cfr:keyint=1:min-keyint=1:avcintra-class=100:nal-hrd=cbr -c:a pcm_s16le -ar 48000 -f mxf -write_index 1 output_avci.mxf

After the first command has run for more than 10s, open a second terminal and within the same directory enter( currently seeking to 10s but this could be any other value that works as long as it's within the duration that has been transcoded )

ffplay -v 9 -loglevel 99 -report -probesize 100G -ss 10 output_avci.mxf

The logs show the error for the seek every single time, tried a different range of options yet no success.

output_avci.mxf: could not seek to position 10.000

The ffmpeg and ffplay versions for the respective commands are( latest static builds were used for this ):

./ffmpeg version
ffmpeg version N-118247-g19c95ecbff-20250106 Copyright (c) 2000-2025 the FFmpeg developers
  built with gcc 14.2.0 (crosstool-NG 1.26.0.120_4d36f27)
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-ffbuild-linux-gnu- --arch=x86_64 --target-os=linux --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-libxml2 --enable-openssl --enable-lzma --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --enable-libpulse --enable-libvmaf --enable-libxcb --enable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-libzmq --enable-lv2 --enable-libvpl --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --disable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --disable-libvvenc --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs='-ldl -lgomp' --extra-ldflags=-pthread --extra-ldexeflags=-pie --cc=x86_64-ffbuild-linux-gnu-gcc --cxx=x86_64-ffbuild-linux-gnu-g++ --ar=x86_64-ffbuild-linux-gnu-gcc-ar --ranlib=x86_64-ffbuild-linux-gnu-gcc-ranlib --nm=x86_64-ffbuild-linux-gnu-gcc-nm --extra-version=20250106
  libavutil      59. 54.101 / 59. 54.101
  libavcodec     61. 31.100 / 61. 31.100
  libavformat    61.  9.104 / 61.  9.104
  libavdevice    61.  4.100 / 61.  4.100
  libavfilter    10.  6.101 / 10.  6.101
  libswscale      8. 13.100 /  8. 13.100
  libswresample   5.  4.100 /  5.  4.100
  libpostproc    58.  4.100 / 58.  4.100
./ffplay version
ffplay version N-118247-g19c95ecbff-20250106 Copyright (c) 2003-2025 the FFmpeg developers
  built with gcc 14.2.0 (crosstool-NG 1.26.0.120_4d36f27)
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-ffbuild-linux-gnu- --arch=x86_64 --target-os=linux --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-libxml2 --enable-openssl --enable-lzma --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --enable-libpulse --enable-libvmaf --enable-libxcb --enable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-libzmq --enable-lv2 --enable-libvpl --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --disable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --disable-libvvenc --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs='-ldl -lgomp' --extra-ldflags=-pthread --extra-ldexeflags=-pie --cc=x86_64-ffbuild-linux-gnu-gcc --cxx=x86_64-ffbuild-linux-gnu-g++ --ar=x86_64-ffbuild-linux-gnu-gcc-ar --ranlib=x86_64-ffbuild-linux-gnu-gcc-ranlib --nm=x86_64-ffbuild-linux-gnu-gcc-nm --extra-version=20250106
  libavutil      59. 54.101 / 59. 54.101
  libavcodec     61. 31.100 / 61. 31.100
  libavformat    61.  9.104 / 61.  9.104
  libavdevice    61.  4.100 / 61.  4.100
  libavfilter    10.  6.101 / 10.  6.101
  libswscale      8. 13.100 /  8. 13.100
  libswresample   5.  4.100 /  5.  4.100
  libpostproc    58.  4.100 / 58.  4.100

Also attaching the ffmpeg and ffplay logs for when those commands were run, sample media has also been attached in VideolanFileUploader for this ticket.

Attachments (2)

ffmpeg-20250108-093616.log (2.2 MB ) - added by Ankur Bhatkalkar 34 hours ago.
FFmpeg log for transcoded avc i 100 file
ffplay-20250108-093635.log (263.7 KB ) - added by Ankur Bhatkalkar 34 hours ago.
FFPlay log for seeking growing AVC-I 100 file

Change History (5)

by Ankur Bhatkalkar, 34 hours ago

Attachment: ffmpeg-20250108-093616.log added

FFmpeg log for transcoded avc i 100 file

by Ankur Bhatkalkar, 34 hours ago

Attachment: ffplay-20250108-093635.log added

FFPlay log for seeking growing AVC-I 100 file

comment:1 by Ankur Bhatkalkar, 34 hours ago

Description: modified (diff)

comment:2 by Gyan, 25 hours ago

This works for MPEG-TS so the failure may be specific to MXF.

comment:3 by Balling, 23 hours ago

Seeking sometimes fails even on MPEG-TS: infamous issue #9412. After remux to mp4 issue dissappears.

Note: See TracTickets for help on using tickets.