tags:

views:

248

answers:

2

Hi guys,

I have already asked a similar question here: http://stackoverflow.com/questions/956720/python-open-raw-audio-data-file

Now I want to open, and play, raw audio files with QtPhonon. The main goal is to open the file and play a certain location in the file, for example from the 10th second to the 20th second. Is it possible using QtPhonon ?

I couldn't find anything useful about the subject.

Thanx in advance.

+1  A: 

You can probably use the seek() method after loading your MediaObject.

void MediaObject::seek ( qint64 time ) [slot]

Robert Karl
Yeah thought about it, and I think I can stop the playback if I handle the "tick" signal. But I don't think it's gonna be clean if I need to play several chunks in the file.
thelinuxer
+2  A: 

The problem in trying to do this with Phonon is that Phonon::MediaSource does not expose any API with which you can specify the audio format - i.e. the sample rate, encoding and number of channels in your PCM data stream. Normally, this information is encoded in the file header (for PCM data files, typically a WAV header), but since you stated that you want to play "raw audio", I'm assuming you mean literally buffers of PCM samples.

Qt 4.6 introduces a new, lower level, suite of audio APIs in the QtMultimedia module. You can use QAudioOutput to play raw audio streams.

Note that support for the QtMultimedia APIs is not yet as widespread as Phonon, but there are already backends for Windows, Mac, and Linux (supporting PULSE and ALSA audio subsystems).

Gareth Stockwell
I guess this answers my question thanks. It will take me some time to test it cause I don't have 4.6 on my platform.
thelinuxer