MythTV/mythtv — pull request #20 by Glidos (2012-05-05 08:06:09+00:00)
Title: Fix passthrough case of mythtrancode running in fifo mode

The new version of AudioRencodeBuffer requires the assumption that buflen == frames * byte_per_frame, which isn't true in passthrough mode, since the data is compressed. I've updated the code so that, at least in the case that m_audioFrameSize == 0, the number of frames is recorded separately from the buffer length, and used in further calculations. That fixes the fifo-mode case. Possibly other passthrough cases could be handled by changing the condition on which frames are used, but I don't understand enough of the surrounding code to be sure.

I've also simplified AudioReencodeBuffer::addData. Now data is always placed in saveBuffer before moving to the buffer list. That simplifies the algorithm a lot without any loss in efficiency.

Lastly I've change one of the calls to cutter where 1 was being passed rather than the number of frames.