[FFmpeg-trac] #10270(ffmpeg:reopened): Random duration changes when transcoding ogg vorbis
FFmpeg
trac at avcodec.org
Sun Mar 19 17:00:32 EET 2023
#10270: Random duration changes when transcoding ogg vorbis
------------------------------------+------------------------------------
Reporter: Ace17 | Owner: (none)
Type: defect | Status: reopened
Priority: normal | Component: ffmpeg
Version: git-master | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
------------------------------------+------------------------------------
Comment (by Ace17):
> Check for yourself on Windows
Until now, I was exclusively testing on GNU/Linux.
So I just followed your advice and tested on Windows, with the URL you
provided.
Here's what I get:
{{{
#./repro.sh
++ uname -a
MINGW64_NT-6.1-7601 SEBASTIENA 3.4.6.x86_64 2023-02-15 18:03 UTC x86_64
Msys
+ md5sum bizarre.wav
4d5be4933ec09cf1159b93106a11b333 bizarre.wav
++ ffmpeg -version
ffmpeg version N-110043-gadb5f7b41f-20230318 Copyright (c) 2000-2023 the
FFmpeg developers
built with gcc 12.2.0 (crosstool-NG 1.25.0.90_cf9beb1)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-
config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug
--enable-shared --disable-static --disable-w32threads --enable-pthreads
--enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype
--enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig
--enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf
--disable-libxcb --disable-xlib --enable-amf --enable-libaom --enable-
libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d
--enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-
llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libass
--enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus
--enable-librist --enable-libssh --enable-libtheora --enable-libvpx
--enable-libwebp --enable-lv2 --disable-libmfx --enable-libvpl --enable-
openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-
libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e
--enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr
--enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d
--disable-libdrm --disable-vaapi --enable-libvidstab --enable-vulkan
--enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265
--enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi
--extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-
ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp --extra-
version=20230318
libavutil 58. 4.100 / 58. 4.100
libavcodec 60. 6.101 / 60. 6.101
libavformat 60. 4.100 / 60. 4.100
libavdevice 60. 2.100 / 60. 2.100
libavfilter 9. 4.100 / 9. 4.100
libswscale 7. 2.100 / 7. 2.100
libswresample 4. 11.100 / 4. 11.100
libpostproc 57. 2.100 / 57. 2.100
++ ffmpeg -loglevel 1 -i bizarre.wav -acodec libvorbis -y sound1.ogg
++ ffmpeg -loglevel 1 -i sound1.ogg -acodec libvorbis -y sound2.ogg
++ ffmpeg -loglevel 1 -i sound2.ogg -acodec libvorbis -y sound3.ogg
++ ffmpeg -loglevel 1 -i sound3.ogg -acodec libvorbis -y sound4.ogg
++ ffmpeg -loglevel 1 -i sound4.ogg -acodec libvorbis -y sound5.ogg
++ ffmpeg -loglevel 1 -i sound5.ogg -acodec libvorbis -y sound6.ogg
++ for f in sound*.ogg
++ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound1.ogg
1.000000
++ for f in sound*.ogg
++ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound2.ogg
1.000000
++ for f in sound*.ogg
++ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound3.ogg
1.000000
++ for f in sound*.ogg
++ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound4.ogg
1.000000
++ for f in sound*.ogg
++ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound5.ogg
1.000000
++ for f in sound*.ogg
++ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound6.ogg
1.000000
}}}
You're right, the durations are OK on Windows!
So I used the prebuilt latest (static) binaries ( https://github.com/BtbN
/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-
linux64-gpl.tar.xz ), and re-tested on GNU/Linux.
Here's what I got:
{{{
ace at ANTEC repro % ./repro.sh
+ uname -a
Linux ANTEC 6.1.0-6-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.15-1
(2023-03-05) x86_64 GNU/Linux
+ md5sum bizarre.wav
4d5be4933ec09cf1159b93106a11b333 bizarre.wav
+ which ffmpeg
/tmp/ffmpeg-master-latest-linux64-gpl/bin/ffmpeg
+ ffmpeg -version
ffmpeg version N-110043-gadb5f7b41f-20230318 Copyright (c) 2000-2023 the
FFmpeg developers
built with gcc 12.2.0 (crosstool-NG 1.25.0.90_cf9beb1)
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-libxml2 --enable-zlib --enable-libfreetype --enable-
libfribidi --enable-gmp --enable-lzma --enable-fontconfig --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
--disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r
--enable-libgme --enable-libkvazaar --enable-libass --enable-libbluray
--enable-libjxl --enable-libmp3lame --enable-libopus --enable-mbedtls
--enable-librist --enable-libssh --enable-libtheora --enable-libvpx
--enable-libwebp --enable-lv2 --disable-libmfx --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 --enable-libx264 --enable-libx265
--enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi
--extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-
ldflags=-pthread --extra-ldexeflags=-pie --extra-libs='-ldl -lgomp'
--extra-version=20230318
libavutil 58. 4.100 / 58. 4.100
libavcodec 60. 6.101 / 60. 6.101
libavformat 60. 4.100 / 60. 4.100
libavdevice 60. 2.100 / 60. 2.100
libavfilter 9. 4.100 / 9. 4.100
libswscale 7. 2.100 / 7. 2.100
libswresample 4. 11.100 / 4. 11.100
libpostproc 57. 2.100 / 57. 2.100
+ ffmpeg -loglevel 1 -i bizarre.wav -acodec libvorbis -y sound1.ogg
+ ffmpeg -loglevel 1 -i sound1.ogg -acodec libvorbis -y sound2.ogg
+ ffmpeg -loglevel 1 -i sound2.ogg -acodec libvorbis -y sound3.ogg
+ ffmpeg -loglevel 1 -i sound3.ogg -acodec libvorbis -y sound4.ogg
+ ffmpeg -loglevel 1 -i sound4.ogg -acodec libvorbis -y sound5.ogg
+ ffmpeg -loglevel 1 -i sound5.ogg -acodec libvorbis -y sound6.ogg
+ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound1.ogg
1.000000
+ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound2.ogg
0.011519
+ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound3.ogg
1.004263
+ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound4.ogg
0.994104
+ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound5.ogg
0.994104
+ ffprobe -v error -show_entries format=duration -of
default=noprint_wrappers=1:nokey=1 sound6.ogg
0.994104
}}}
The durations are clearly not OK here.
So it seems like we're getting different results, depending on the host
platform.
What do you think ?
Thanks
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10270#comment:9>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list