<div dir="ltr">Hello,<br>
<br>I have recently updated FFmpeg libraries, used by our software from 2.2.3 to 2.7.2. Then, after some simple performance tests on Windows I've surprisingly found, that performance of decoding MJPEG, H264 in 2.7.2 approx. 10-20% worse than in 2.2.3. In contrast, H265/HEVC decoding performance in 2.7.2 is better than in 2.2.3. <br>
<br>Why does this performance degradation happen? Could it be because of different build configuration? Could it be a normal phenomenon for ffmpeg software evolution?<br>
<br>Build configurations:<br>ffmpeg version 2.2.3 Copyright (c) 2000-2014 the FFmpeg developers<br>  built on Jun  3 2014 13:32:59 with gcc 4.8.2 (GCC)<br>  configuration: --enable-shared --disable-static --enable-memalign-hack --disable-dxva2 --extra-cflags=-U__STRICT_ANSI__ --prefix=/s/src/ffmpeg/build-2.2.3 --shlibdir=/s/src/ffmpeg/build-2.2.3/bin/x86_64 --build-suffix=-itv-2.2.3 --bindir=/s/src/ffmpeg/build-2.2.3/bin/x86_64 --libdir=/s/src/ffmpeg/build-2.2.3/lib/x86_64 --enable-runtime-cpudetect --enable-w32threads --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --arch=x86_64<br>  libavutil      52. 66.100 / 52. 66.100<br>  libavcodec     55. 52.102 / 55. 52.102<br>  libavformat    55. 33.100 / 55. 33.100<br>  libavdevice    55. 10.100 / 55. 10.100<br>  libavfilter     4.  2.100 /  4.  2.100<br>  libswscale      2.  5.102 /  2.  5.102<br>  libswresample   0. 18.100 /  0. 18.100<br>
<br>versus:<br>ffmpeg version 2.7.2 Copyright (c) 2000-2015 the FFmpeg developers<br>  built with Microsoft (R) C/C++ Optimizing Compiler Version 18.00.21005.1 for x64<br>  configuration: --toolchain=msvc --enable-shared --disable-static --enable-memalign-hack --disable-dxva2 --extra-cflags=-U__STRICT_ANSI__ --prefix=/home/nikita.skiba/build-2.7.2 --shlibdir=/home/nikita.skiba/build-2.7.2/bin/x86_64 --build-suffix=-itv-2.7.2 --bindir=/home/nikita.skiba/build-2.7.2/bin/x86_64 --libdir=/home/nikita.skiba/build-2.7.2/lib/x86_64 --enable-runtime-cpudetect --enable-w32threads --arch=x86_64<br>  libavutil      54. 27.100 / 54. 27.100<br>  libavcodec     56. 41.100 / 56. 41.100<br>  libavformat    56. 36.100 / 56. 36.100<br>  libavdevice    56.  4.100 / 56.  4.100<br>  libavfilter     5. 16.101 /  5. 16.101<br>  libswscale      3.  1.101 /  3.  1.101<br>  libswresample   1.  2.100 /  1.  2.100<br>
<br>The same for x86_32 arch.<br>
<br>p.s. I've already created a post on Zeranoe's forum but nobody answered(<br>
<br>You can find detailed benchmark listings for some codecs there:<br><a href="https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=15&t=2752" target="_blank">https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=15&t=2752</a><br>
<br>Thank in advance, <br>Nikita Skiba<br></div>