2012-03-06, 06:16
I've done a lot of review of the ffmpeg code which repacks the TrueHD data into the MAT frames for transmission over HDMI. With the generous donation of user TechLife we have the IEC standard for TrueHD data-bursts.
I can't find any flaws in the original ffmpeg code written years ago by a group which includes XBMC Team member Anssi. I've also spoken with him about the original code.
This is confirmed by the fact that the TrueHD signal is picked up and decoded correctly by AVRs.
If you wish to bitstream TrueHD as-is without decoding it is essential to disable "Sync Playback to Display", or at least set it to "Audio Clock". Problems will arise if you sync to the video clock and try to either drop/dupe or resample audio packets.
Right now there is no logic for time-stretching the MAT data-bursts which TrueHD bitstreaming uses if the audio clock falls behind the video clock, or "re-sampling".
Not sure how effective this is for anyone having issues with TrueHD, and it's not a fix (a properly-clocking GPU is), but just wanted to share the results of a little investigation with you all.
I've added it to the to-do list for AE, the ability to time-stretch these packets for syncing to the video clock.
I can't find any flaws in the original ffmpeg code written years ago by a group which includes XBMC Team member Anssi. I've also spoken with him about the original code.
This is confirmed by the fact that the TrueHD signal is picked up and decoded correctly by AVRs.
If you wish to bitstream TrueHD as-is without decoding it is essential to disable "Sync Playback to Display", or at least set it to "Audio Clock". Problems will arise if you sync to the video clock and try to either drop/dupe or resample audio packets.
Right now there is no logic for time-stretching the MAT data-bursts which TrueHD bitstreaming uses if the audio clock falls behind the video clock, or "re-sampling".
Not sure how effective this is for anyone having issues with TrueHD, and it's not a fix (a properly-clocking GPU is), but just wanted to share the results of a little investigation with you all.
I've added it to the to-do list for AE, the ability to time-stretch these packets for syncing to the video clock.