Bartlomiej Wolowiec wrote:
On wtorek, 18 marca 2008, Michael Niedermayer wrote:
The (E)AC-3 AVParser should split the (E)AC-3 stream so that the chunks of data send to the decoder (ac3_decode_frame) are complete and contain all channels. So ac3_decode_frame() would receive as input several "ac3 frames" if some channels are stored in future frames.
Hi, Recently I had some free time, so I've tried to work on the parser. I encountered one problem: ff_aac_ac3_parse function in aac_ac3_parser.c needs to know stream_type. As an interface to read data about the stream it uses sync pointer from AACAC3ParseContext, but this function returns only few values from the stream. Due to this, I have a question: how should I get stream_type? I have three ideas: - add argument to sync, AAC parser will need some changes then, - change sync, so that it won't use long list of arguments but a new defined structure (in the future there will be need to get substream_id...), or
Either of these 2 would be fine with me.
- read necessary bits directly from aac3_ac3_parse
I don't like this one
Maybe you have different ideas?
For the issue you're concerned about, what you have proposed will work fine. I can only make assumptions about how these changes fit into the rest of your solution. But you seem to be on the right track. -Justin