views:

37

answers:

0

There are speex audio embeded in RIFF-WAV container (The files obtained in Windows system through encoding using Speex ACM codec, WAVEFORMATEX.wFormatTag = 41225 (0xA109) is used).

Now I need to write an application, that will play such wav files. I just started to learn programming under Mac OS X, so I am looking for right start points to perform the task. It is supposed that further decoding of speex audio embeded in AVI container will also required. Moreover, decoding of media file with own container format and XVid video + Speex audio will be required eventually. But at this time, I'd like to start with simplified version - playing Speex audio in RIFF-WAV container.

It seems that desired implementation schema should look like the one in Windows while using DirectX filters. That is: File splitter -> decoding audio + decoding video -> rendering audio + rendering video. For each subtask it is prefferebly to use a ready component (from OS X system/framework or an freely available library).

As for the initial task (playing speex-wav files) and taking into account further progress, I should start with Core Audio. Am I right? Can I parse RIFF-WAV with Speex audio using Core Audio, or I have to parse the file manually? What is better to use for decoding speex (speex sources, Xiph QuickTime Components, or something else)? To build audio processing chain, I need to use Audio Queue, is it right?

Any help and links are appreciated.