Audio Capture Filter (Windows Embedded CE 6.0)

1/6/2010

The Audio Capture filter represents an audio capture device. It has one capture output pin and several input pins (one for each type of input on the card, such as Line In, Mic, CD, and MIDI).

Filter property Description

Filter Interfaces

IAMAudioInputMixer, IAMFilterMiscFlags Interface, IAMResourceControl, IBaseFilter Interface, IPersistPropertyBag, ISpecifyPropertyPages

Input Pin Media Types

MEDIATYPE_AnalogAudio, MEDIASUBTYPE_NULL

Input Pin Interfaces

IAMAudioInputMixer, IMemInputPin Interface, IPin Interface, IQualityControl

Output Pin Media Types

MEDIATYPE_Audio, MEDIASUBTYPE_NULL

Output Pin Interfaces

IAMBufferNegotiation Interface, IAMPushSource, IAMStreamConfig Interface, IAMStreamControl Interface, IKsPropertySet Interface, IReferenceClock Interface, IQualityControl Interface

Filter CLSID

Not applicable.

Executable

qcap.dll

Merit

MERIT_DO_NOT_USE

Filter Category

CLSID_AudioInputDeviceCategory

Remarks

The input pins represent physical hardware connections and are never connected to other filters in DirectShow.

GSM610 uses the pcm subtype but it requires a specific wave format tag to select it. This is how to set the format to on the audio capture filter to enable GSM610 output:

AM_MEDIA_TYPE mt;

GSM610WAVEFORMAT wf;

#ifndef WAVE_FORMAT_GSM610

#define WAVE_FORMAT_GSM610 0x31

#endif

mt.majortype = MEDIATYPE_Audio;

mt.bFixedSizeSamples = true;

mt.bTemporalCompression=false;

mt.lSampleSize=4096;

mt.formattype=FORMAT_WaveFormatEx;

mt.pUnk=NULL;

wf.wfx.wFormatTag = WAVE_FORMAT_GSM610;

wf.wfx.nChannels = 0x0001;

wf.wfx.nSamplesPerSec = 0x1f40;

wf.wfx.nAvgBytesPerSec = 0x00000659;

wf.wfx.nBlockAlign = 0x0041;

wf.wfx.wBitsPerSample = 0x0000;

wf.wfx.cbSize = 0x0002;

wf.wSamplesPerBlock = 0x140;

mt.cbFormat = sizeof( GSM610WAVEFORMAT );

mt.pbFormat = (BYTE *) &wf;

See Also

Concepts

Supported DirectShow Filters