Today I found that recent builds have a critical performance slowdown on single-core processors. As I am using a Intel Core2 which is a dual-core processor, I failed to notice this issue until I was told that MediaCoder’s speed on single-core processors has recently become very slow under some combinations of settings.
After some investigations, I concluded that this issue occurs when following factors meet together:
- Target video format is XviD
- Target container is other than AVI (e.g. MP4)
- Audio is not disabled
- Audio encoder is an executable (instead of a DLL)
The root cause of the issue is the the priority of audio encoder process is not set properly, which causes the audio transcoding thread to fall behind the video thread seriously and brings performance penalty.
On dual-core processor, this won’t be an issue because a low-priority process (in this case, the audio encoder process, e.g. lame.exe) won’t be blocked by another busy process (in this case, the process of MediaCoder).
Luckily it is found out and fixed. Please update to build 3770.