94 lines
2.1 KiB
C
94 lines
2.1 KiB
C
/*++
|
|
|
|
Copyright (c) 1997-2000 Microsoft Corporation All Rights Reserved
|
|
|
|
Module Name:
|
|
|
|
ac3.h
|
|
|
|
Abstract:
|
|
|
|
Node and Pin numbers for ac3 sample.
|
|
|
|
--*/
|
|
|
|
#ifndef _MSVAD_AC3_H_
|
|
#define _MSVAD_AC3_H_
|
|
|
|
// Pin properties.
|
|
#define MAX_OUTPUT_STREAMS 1 // Number of capture streams.
|
|
#define MAX_INPUT_STREAMS 1 // Number of render streams.
|
|
#define MAX_TOTAL_STREAMS MAX_OUTPUT_STREAMS + MAX_INPUT_STREAMS
|
|
#define MAX_AC3_INPUT_STREAMS 1 // Number of AC3 render streams.
|
|
|
|
|
|
// PCM Info
|
|
#define MIN_CHANNELS 1 // Min Channels.
|
|
#define MAX_CHANNELS_PCM 2 // Max Channels.
|
|
#define MIN_BITS_PER_SAMPLE_PCM 8 // Min Bits Per Sample
|
|
#define MAX_BITS_PER_SAMPLE_PCM 16 // Max Bits Per Sample
|
|
#define MIN_SAMPLE_RATE 4000 // Min Sample Rate
|
|
#define MAX_SAMPLE_RATE 64000 // Max Sample Rate
|
|
|
|
// AC3 Info
|
|
#define MAX_CHANNELS_AC3 2
|
|
#define MIN_BITS_PER_SAMPLE_AC3 16
|
|
#define MAX_BITS_PER_SAMPLE_AC3 16
|
|
#define MIN_SAMPLE_RATE_AC3 48000
|
|
#define MAX_SAMPLE_RATE_AC3 48000
|
|
|
|
// Wave pins
|
|
enum
|
|
{
|
|
KSPIN_WAVE_CAPTURE_SINK = 0,
|
|
KSPIN_WAVE_CAPTURE_SOURCE,
|
|
KSPIN_WAVE_RENDER_SINK,
|
|
KSPIN_WAVE_RENDER_SOURCE,
|
|
KSPIN_WAVE_AC3_RENDER_SINK,
|
|
KSPIN_WAVE_AC3_RENDER_SOURCE
|
|
};
|
|
|
|
// Wave Topology nodes.
|
|
enum
|
|
{
|
|
KSNODE_WAVE_ADC = 0,
|
|
KSNODE_WAVE_DAC
|
|
};
|
|
|
|
// topology pins.
|
|
enum
|
|
{
|
|
KSPIN_TOPO_WAVEOUT_SOURCE = 0,
|
|
KSPIN_TOPO_SYNTHOUT_SOURCE,
|
|
KSPIN_TOPO_SYNTHIN_SOURCE,
|
|
KSPIN_TOPO_MIC_SOURCE,
|
|
KSPIN_TOPO_LINEOUT_DEST,
|
|
KSPIN_TOPO_WAVEIN_DEST
|
|
};
|
|
|
|
// topology nodes.
|
|
enum
|
|
{
|
|
KSNODE_TOPO_WAVEOUT_VOLUME = 0,
|
|
KSNODE_TOPO_WAVEOUT_MUTE,
|
|
KSNODE_TOPO_SYNTHOUT_VOLUME,
|
|
KSNODE_TOPO_SYNTHOUT_MUTE,
|
|
KSNODE_TOPO_MIC_VOLUME,
|
|
KSNODE_TOPO_SYNTHIN_VOLUME,
|
|
KSNODE_TOPO_LINEOUT_MIX,
|
|
KSNODE_TOPO_LINEOUT_VOLUME,
|
|
KSNODE_TOPO_WAVEIN_MUX
|
|
};
|
|
|
|
// Misc functions.
|
|
inline BOOL IsFormatAc3(IN PKSDATAFORMAT pDataFormat)
|
|
{
|
|
return
|
|
(WAVE_FORMAT_DOLBY_AC3_SPDIF ==
|
|
EXTRACT_WAVEFORMATEX_ID(&pDataFormat->SubFormat));
|
|
} // IsFormatAc3
|
|
|
|
|
|
#endif
|
|
|