RMerlin
07-23-2010, 03:38 AM
Hi,
The version of ffmpeg bundled with Mezzmo 2.1.8 isn't multithreaded (or at least the libx264 library linked with isn't).
I modified a device profile to use -threads 8 (default was -threads 4). This is my CPU usage (i7 860: 4 phy cores + 4 HT threads) while transcoding using the Conceiva bundled ffmpeg:
http://www.lostrealm.ca/temp/conceiva-ffmpeg.png
This one is while using a static build from http://ffmpeg.arrozcru.org/autobuilds/ :
http://www.lostrealm.ca/temp/mt-ffmpeg.png
The test was done with the same sample file in both case (an MPEG2 AC3 being transcoded to libx264 and AC3)
On a related subject, a suggestion: add an option to Mezzmo to determine the number of threads to use, and pass that information to ffmpeg instead of hardcoding it into device profiles. I would suggest querying the PC to determine how many CPU threads are supported by the computer, then offer the user to select between 1 and the number of threads available, with the addition of "Auto" (as the default option), which would automatically pass the maximum number of threads to ffmpeg.
The version of ffmpeg bundled with Mezzmo 2.1.8 isn't multithreaded (or at least the libx264 library linked with isn't).
I modified a device profile to use -threads 8 (default was -threads 4). This is my CPU usage (i7 860: 4 phy cores + 4 HT threads) while transcoding using the Conceiva bundled ffmpeg:
http://www.lostrealm.ca/temp/conceiva-ffmpeg.png
This one is while using a static build from http://ffmpeg.arrozcru.org/autobuilds/ :
http://www.lostrealm.ca/temp/mt-ffmpeg.png
The test was done with the same sample file in both case (an MPEG2 AC3 being transcoded to libx264 and AC3)
On a related subject, a suggestion: add an option to Mezzmo to determine the number of threads to use, and pass that information to ffmpeg instead of hardcoding it into device profiles. I would suggest querying the PC to determine how many CPU threads are supported by the computer, then offer the user to select between 1 and the number of threads available, with the addition of "Auto" (as the default option), which would automatically pass the maximum number of threads to ffmpeg.