Multimedia API + Delphi

Do you know if it is possible to play a waveform using selective speed, or to play it in reverse direction?
I am using Delphi and MM API.I found the function waveOutGetPlaybackRate but I am not sure for its use. But anyway it asks for the handle of the waveform-audio output device.How do I get that handle if I didn't use the standart waveOutOpen?
I am using instead a Delphi 3.0 MediaPlayer component, which does not return (as far as I know) that handle.
LVL 1
kyriacosAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
chensuConnect With a Mentor Commented:
You can use waveOutSetPlaybackRate to change the playback speed. But not all devices support playback rate changes. To determine whether a device supports playback rate changes, use the WAVECAPS_PLAYBACKRATE flag to test the dwSupport member of the WAVEOUTCAPS structure (filled by the waveOutGetDevCaps function). There is another limited method. Load the wave file into a buffer, change the sample rate of the WAVEFORMAT (e.g., from 11025 to 44100) before using waveOutWrite to play it.

To play a waveform in reverse direction, load the wave file into a buffer, reverse the sample before playing it. There is an example C code called 'reverse' in Windows SDK.

I think you have to use waveOutOpen to get the handle.

0
 
kyriacosAuthor Commented:
I found the idea of changing sample rates very nice...
0
All Courses

From novice to tech pro — start learning today.