[Libav-user] investigating runtime demux performance

bsenftner at earthlink.net bsenftner at earthlink.net
Wed May 13 08:42:33 EEST 2020

>> The new version is noticeably slower.
>> Case in point, decompressing 3000 frames ASAP without any display:
>> Version 3.2.2: 0.002319 seconds per frame (measured using boost high_resolution_clock::time_point)
>> Version 4.2.2: 0.004250 seconds per frame

>Please remember that only current FFmpeg git head is supported, both here and on the bug tracker.
>Can you reproduce with ffmpeg, the command line application?

>Please understand that you cannot report performance regressions for builds using "optflags", feel free to run a bisect if the issue is not reproducible with ffmpeg and if it is reproducible >without using "optflags" (and with using the same toolchain and either static or dynamic linking for both builds, mixing them makes no sense for performance comparison).

I removed use of the "optflag" in my ffmpeg builds. Considering my goals are demux only, while ffmpeg.exe will not isolate to a demux only operation, I tried building the 4.2.2 libraries with the cross compiling gcc toolchain as well as building the 3.2.14 libraries as static libraries with the MSVC toolchain. 
While I seem to have runtime library linking issues with the gcc toolchain produced libraries, the 3.2.14 libav libraries built with the MSVC toolchain built and are working fine.

So now I can compare ffmpeg 3.2.14 and ffmpeg 4.2.2 both built as static libraries with the same MSVC toolchain. 
My tests are using h.265 media files with the "wait for next packet" code disabled, causing the media files to play as fast as the file loads off disk. 
The 3.2.14 libraries are clearly twice as fast as the 4.2.2 libraries, as least with the h.265 media files I'm testing with.
(I'm testing h.265 because that is what most of our client's IP cameras stream, and this video playback library is for our computer vision applications.)   

Is anyone else noticing this pretty significant increase in processing? Any idea why?

Blake Senftner
Sr. Software Scientist | CyberExtruder
1401 Valley Road, Wayne, New Jersey 07470
cel: 213 400 6424 (pacific daylight savings timezone)
bsenftner at cyberextruder.com


More information about the Libav-user mailing list