Tweaking FFMPEG for performance
Hi all,
I was wondering if anyone was knowledgeable in getting more performance out of FFMPEG. I have a machine with an ATOM D525/2GB running subsonic, during transcodes of 720p material I'll get bursty play. Logically it makes no sense to me because I have PS3 Media Player (which also uses FFMPEG) running on a separate Atom 270 which is a significantly slower processor, with no bursty play, it can even handle many 1080p media.
When I launch taskmgr I can see that at most FFMPEG seems to be using around 25% CPU. This seems low. One factor is that my PS3MS PC is running WHS (a stripped down w2k3 server) and the pc running subsonic is running Win7.
Before I was running ORB on this PC and while the video quality was awful, it was doing 720P encodes fine as well.
What I've tried so far with minimal success:
- downloaded the latest version of FFMPEG
- set ffmpeg to high priority in taskmgr (major PITA to do regularly)
- checked for other tasks tying up resources, but for the most part the PC is doing nothing else (it runs a VNC server, that's about it besides subsonic right now)
- added the "-threads 1" parameter into all my video encodes, it's pure assumption because the man page for FFMPEG isn't clear at all, but I believe this will multithread and hopefully use both cores on the cpu. Web research would indicate that this is a specified number of threads you want the process to use, but anything besides 1 seems to break the web player.
update, found this in the logs, seems to indicate to me that FLV is multithreading incompatible.
[7/4/11 1:57:09 PM PDT] DEBUG InputStreamReaderThread (c:\subsonic\transcode\ffmpeg) [flv @ 02875CC0] multi threaded encoding not supported by codec
I was wondering if anyone was knowledgeable in getting more performance out of FFMPEG. I have a machine with an ATOM D525/2GB running subsonic, during transcodes of 720p material I'll get bursty play. Logically it makes no sense to me because I have PS3 Media Player (which also uses FFMPEG) running on a separate Atom 270 which is a significantly slower processor, with no bursty play, it can even handle many 1080p media.
When I launch taskmgr I can see that at most FFMPEG seems to be using around 25% CPU. This seems low. One factor is that my PS3MS PC is running WHS (a stripped down w2k3 server) and the pc running subsonic is running Win7.
Before I was running ORB on this PC and while the video quality was awful, it was doing 720P encodes fine as well.
What I've tried so far with minimal success:
- downloaded the latest version of FFMPEG
- set ffmpeg to high priority in taskmgr (major PITA to do regularly)
- checked for other tasks tying up resources, but for the most part the PC is doing nothing else (it runs a VNC server, that's about it besides subsonic right now)
- added the "-threads 1" parameter into all my video encodes, it's pure assumption because the man page for FFMPEG isn't clear at all, but I believe this will multithread and hopefully use both cores on the cpu. Web research would indicate that this is a specified number of threads you want the process to use, but anything besides 1 seems to break the web player.
update, found this in the logs, seems to indicate to me that FLV is multithreading incompatible.
[7/4/11 1:57:09 PM PDT] DEBUG InputStreamReaderThread (c:\subsonic\transcode\ffmpeg) [flv @ 02875CC0] multi threaded encoding not supported by codec