I did some more research about this problem, it seems like most stutter and audio sync issues are due to this bug (with the exception of those who have underpowered computers).
It appears that people bypass the problem when they enable "Remux when audio track is AC3", but:
1) that only works if the source has AC3 audio, all the rest will play badly.
2) still doesn't solve the problem of broken AC3 encoding
So, I did some more searching and I found out that there are even more problems with 6.1 channels and AC3. For example, the speech ends up on one of the two stereo channels, thus audio sounds weird. Based on various forum threads and some mailing lists, I traced the problem to the AC3 encoding in mencoder. Apparently the AC3 encoder is broken in various ways depending on the mencoder version, and thats why some people have more problems than others.
In other words, I found out that by using mp3 in the output to the PS3 will solve ALL audio issues (unless your computer is underpowered of course). It seems possible to use alternative AC3 encoders, but I haven't found a way how to do that without messing with the source code of PMS.
It is possible to use other audio codecs for the output, for example PCM or whatever your player supports (TV, PopcornHour, PS3, etc). I stuck with MP3 because it worked out-of-the-box for me without any sync issues.
I'm hoping to hear from others with audio issues and their experience with this parameter.
PS:
The way I constructed the parameter, is that it is used ONLY on mkv containers, so .ISO or .AVI or whatever will not be forced into mp3 output. A better way would be this: Enable "Remux when audio is AC3" and use this instead:
- Code: Select all
acodec != ac3 :: -lavcopts acodec=libmp3lame
The above will only be enabled when the source audio is not AC3 (thus it will be converted to MP3 and work without audio problems), and when the source audio is AC3 then it will be remuxed and passed to the player directly.