ReactOS 0.4.15-dev-6644-g539123c
|
#include <wdm.h>
#include <windef.h>
#include <mmreg.h>
#include <ks.h>
#include <ksmedia.h>
#include <mmsystem.h>
#include "mmixer.h"
Go to the source code of this file.
Classes | |
struct | __TOPOLOGY_NODE__ |
struct | PIN |
struct | TOPOLOGY |
struct | MIXER_INFO |
struct | MIXERCONTROL_EXT |
struct | MIXERLINE_EXT |
struct | MIXERCONTROL_DATA |
struct | MIXERVOLUME_DATA |
struct | MIXER_DATA |
struct | WAVE_INFO |
struct | MIDI_INFO |
struct | MIXER_LIST |
struct | EVENT_NOTIFICATION_ENTRY |
Macros | |
#define | NOBITMAP |
#define | DESTINATION_LINE (0xFFFF0000) |
#define | SOURCE_LINE (0x10000) |
Typedefs | |
typedef struct __TOPOLOGY_NODE__ | TOPOLOGY_NODE |
typedef struct __TOPOLOGY_NODE__ * | PTOPOLOGY_NODE |
typedef struct PIN * | PPIN |
typedef struct TOPOLOGY * | PTOPOLOGY |
typedef struct MIXER_INFO * | LPMIXER_INFO |
typedef struct MIXERCONTROL_EXT * | LPMIXERCONTROL_EXT |
typedef struct MIXERLINE_EXT * | LPMIXERLINE_EXT |
typedef struct MIXERCONTROL_DATA * | LPMIXERCONTROL_DATA |
typedef struct MIXERVOLUME_DATA * | LPMIXERVOLUME_DATA |
typedef struct MIXER_DATA * | LPMIXER_DATA |
typedef struct WAVE_INFO * | LPWAVE_INFO |
typedef struct MIDI_INFO * | LPMIDI_INFO |
typedef struct MIXER_LIST * | PMIXER_LIST |
typedef struct EVENT_NOTIFICATION_ENTRY * | PEVENT_NOTIFICATION_ENTRY |
typedef struct MIDI_INFO * LPMIDI_INFO |
typedef struct MIXER_DATA * LPMIXER_DATA |
typedef struct MIXER_INFO * LPMIXER_INFO |
typedef struct MIXERCONTROL_DATA * LPMIXERCONTROL_DATA |
typedef struct MIXERCONTROL_EXT * LPMIXERCONTROL_EXT |
typedef struct MIXERLINE_EXT * LPMIXERLINE_EXT |
typedef struct MIXERVOLUME_DATA * LPMIXERVOLUME_DATA |
typedef struct WAVE_INFO * LPWAVE_INFO |
typedef struct MIXER_LIST * PMIXER_LIST |
typedef struct __TOPOLOGY_NODE__ * PTOPOLOGY_NODE |
typedef struct __TOPOLOGY_NODE__ TOPOLOGY_NODE |
MIXER_STATUS MMixerAddEvent | ( | IN PMIXER_CONTEXT | MixerContext, |
IN OUT LPMIXER_INFO | MixerInfo, | ||
IN PVOID | MixerEvent, | ||
IN PMIXER_EVENT | MixerEventRoutine | ||
) |
Definition at line 1834 of file controls.c.
Referenced by MMixerOpen().
PKSPIN_CONNECT MMixerAllocatePinConnect | ( | IN PMIXER_CONTEXT | MixerContext, |
ULONG | DataFormatSize | ||
) |
Definition at line 72 of file wave.c.
Referenced by MMixerOpenMidiPin(), and MMixerOpenWavePin().
MIXER_STATUS MMixerAllocateTopologyNodeArray | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
OUT PULONG * | OutPins | ||
) |
Definition at line 1052 of file topology.c.
Referenced by MMixerAddMixerControl(), MMixerAddMixerControlsToDestinationLine(), MMixerAddMixerSourceLines(), MMixerCountMixerControls(), and MMixerSetGetMuxControlDetails().
MIXER_STATUS MMixerAllocateTopologyPinArray | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
OUT PULONG * | OutPins | ||
) |
Definition at line 1020 of file topology.c.
Referenced by MMixerAddMixerSourceLines(), MMixerHandlePhysicalConnection(), MMixerHandleTopologyFilter(), MMixerInitializeFilter(), and MMixerIsNodeConnectedToPin().
MIXER_STATUS MMixerCreateMixerData | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PMIXER_LIST | MixerList, | ||
IN ULONG | DeviceId, | ||
IN LPWSTR | DeviceName, | ||
IN HANDLE | hDevice, | ||
IN HANDLE | hKey | ||
) |
Definition at line 781 of file sup.c.
Referenced by MMixerInitialize().
MIXER_STATUS MMixerCreateTopology | ( | IN PMIXER_CONTEXT | MixerContext, |
IN ULONG | PinCount, | ||
IN PKSMULTIPLE_ITEM | NodeConnections, | ||
IN PKSMULTIPLE_ITEM | NodeTypes, | ||
OUT PTOPOLOGY * | OutTopology | ||
) |
Definition at line 1253 of file topology.c.
Referenced by MMixerBuildTopology().
VOID MMixerFreeMixerInfo | ( | IN PMIXER_CONTEXT | MixerContext, |
IN LPMIXER_INFO | MixerInfo | ||
) |
MIXER_STATUS MMixerGetAllUpOrDownstreamNodesFromNodeIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | NodeIndex, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | OutNodesCount, | ||
OUT PULONG | OutNodes | ||
) |
Definition at line 785 of file topology.c.
Referenced by MMixerAddMixerSourceLines(), and MMixerGetAllUpOrDownstreamNodesFromPinIndex().
VOID MMixerGetAllUpOrDownstreamNodesFromPinIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | PinIndex, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | OutNodesCount, | ||
OUT PULONG | OutNodes | ||
) |
Definition at line 878 of file topology.c.
VOID MMixerGetAllUpOrDownstreamPinsFromNodeIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | NodeIndex, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | OutPinsCount, | ||
OUT PULONG | OutPins | ||
) |
Definition at line 713 of file topology.c.
Referenced by MMixerAddMixerSourceLines(), MMixerGetAllUpOrDownstreamPinsFromPinIndex(), MMixerInitializeFilter(), and MMixerIsNodeConnectedToPin().
MIXER_STATUS MMixerGetAllUpOrDownstreamPinsFromPinIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | PinIndex, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | OutPinsCount, | ||
OUT PULONG | OutPins | ||
) |
Definition at line 813 of file topology.c.
Referenced by MMixerHandlePhysicalConnection(), and MMixerHandleTopologyFilter().
MIXER_STATUS MMixerGetAudioPinDataRanges | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hDevice, | ||
IN ULONG | PinId, | ||
IN OUT PKSMULTIPLE_ITEM * | OutMultipleItem | ||
) |
Definition at line 142 of file wave.c.
Referenced by MMixerInitializeMidiForFilter(), and MMixerInitializeWaveInfo().
VOID MMixerGetConnectedFromLogicalTopologyPins | ( | IN PTOPOLOGY | Topology, |
IN ULONG | NodeIndex, | ||
OUT PULONG | OutPinCount, | ||
OUT PULONG | OutPins | ||
) |
Definition at line 1165 of file topology.c.
Referenced by MMixerSetGetMuxControlDetails().
PKSTOPOLOGY_CONNECTION MMixerGetConnectionByIndex | ( | IN PKSMULTIPLE_ITEM | MultipleItem, |
IN ULONG | Index | ||
) |
Definition at line 139 of file filter.c.
Referenced by MMixerAddMixerControl().
LPMIXER_DATA MMixerGetDataByDeviceId | ( | IN PMIXER_LIST | MixerList, |
IN ULONG | DeviceId | ||
) |
Definition at line 738 of file sup.c.
Referenced by MMixerGetMidiDevicePath(), MMixerGetWaveDevicePath(), MMixerOpenMidiPin(), and MMixerOpenWavePin().
LPMIXER_DATA MMixerGetDataByDeviceName | ( | IN PMIXER_LIST | MixerList, |
IN LPWSTR | DeviceName | ||
) |
Definition at line 759 of file sup.c.
Referenced by MMixerHandlePhysicalConnection().
MIXER_STATUS MMixerGetDeviceName | ( | IN PMIXER_CONTEXT | MixerContext, |
OUT LPWSTR | DeviceName, | ||
IN HANDLE | hKey | ||
) |
Definition at line 855 of file sup.c.
Referenced by MMixerInitializeFilter(), and MMixerInitializeMidiForFilter().
MIXER_STATUS MMixerGetDeviceNameWithComponentId | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hMixer, | ||
OUT LPWSTR | DeviceName | ||
) |
Definition at line 807 of file sup.c.
Referenced by MMixerInitializeFilter().
ULONG MMixerGetFilterPinCount | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hMixer | ||
) |
Definition at line 15 of file filter.c.
Referenced by MMixerBuildTopology().
MIXER_STATUS MMixerGetFilterTopologyProperty | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hMixer, | ||
IN ULONG | PropertyId, | ||
OUT PKSMULTIPLE_ITEM * | OutMultipleItem | ||
) |
Definition at line 39 of file filter.c.
Referenced by MMixerBuildTopology().
MIXER_STATUS MMixerGetMixerByName | ( | IN PMIXER_LIST | MixerList, |
IN LPWSTR | MixerName, | ||
OUT LPMIXER_INFO * | MixerInfo | ||
) |
Definition at line 194 of file sup.c.
MIXER_STATUS MMixerGetMixerControlById | ( | LPMIXER_INFO | MixerInfo, |
DWORD | dwControlID, | ||
LPMIXERLINE_EXT * | MixerLine, | ||
LPMIXERCONTROL_EXT * | MixerControl, | ||
PULONG | NodeId | ||
) |
Definition at line 281 of file sup.c.
Referenced by MMixerGetControlDetails(), MMixerGetLineControls(), and MMixerSetControlDetails().
LPMIXER_INFO MMixerGetMixerInfoByIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN ULONG | MixerIndex | ||
) |
Definition at line 161 of file sup.c.
Referenced by MMixerClose(), MMixerGetCapabilities(), MMixerGetControlDetails(), MMixerGetLineControls(), MMixerGetLineInfo(), MMixerOpen(), MMixerPrintMixers(), and MMixerSetControlDetails().
VOID MMixerGetNextNodesFromNodeIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | NodeIndex, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | OutNodesCount, | ||
OUT PULONG | OutNodes | ||
) |
Definition at line 972 of file topology.c.
Referenced by MMixerAddMixerControl(), MMixerCountMixerControls(), and MMixerSetGetMuxControlDetails().
VOID MMixerGetNextNodesFromPinIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | PinIndex, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | OutNodesCount, | ||
OUT PULONG | OutNodes | ||
) |
Definition at line 929 of file topology.c.
Referenced by MMixerCountMixerControls().
MIXER_STATUS MMixerGetNodeIndexes | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PKSMULTIPLE_ITEM | MultipleItem, | ||
IN ULONG | NodeIndex, | ||
IN ULONG | bNode, | ||
IN ULONG | bFrom, | ||
OUT PULONG | NodeReferenceCount, | ||
OUT PULONG * | NodeReference | ||
) |
Definition at line 694 of file topology.c.
Referenced by MMixerSetupFilter().
LPGUID MMixerGetNodeType | ( | IN PKSMULTIPLE_ITEM | MultipleItem, |
IN ULONG | Index | ||
) |
Definition at line 1191 of file topology.c.
Referenced by MMixerAddMixerControl(), and MMixerAddMixerControlsToMixerLineByNodeIndexArray().
MIXER_STATUS MMixerGetPhysicalConnection | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hMixer, | ||
IN ULONG | PinId, | ||
OUT PKSPIN_PHYSICALCONNECTION * | OutConnection | ||
) |
Definition at line 91 of file filter.c.
Referenced by MMixerApplyOutputFilterHack(), MMixerGetComponentAndTargetType(), and MMixerInitializeFilter().
MIXER_STATUS MMixerGetPinDataFlowAndCommunication | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hDevice, | ||
IN ULONG | PinId, | ||
OUT PKSPIN_DATAFLOW | DataFlow, | ||
OUT PKSPIN_COMMUNICATION | Communication | ||
) |
Definition at line 15 of file midi.c.
Referenced by MMixerCheckFilterPinMidiSupport(), and MMixerGetComponentAndTargetType().
LPMIXERLINE_EXT MMixerGetSourceMixerLineByComponentType | ( | LPMIXER_INFO | MixerInfo, |
DWORD | dwComponentType | ||
) |
Definition at line 258 of file sup.c.
Referenced by MMixerGetLineInfo().
LPMIXERLINE_EXT MMixerGetSourceMixerLineByLineId | ( | LPMIXER_INFO | MixerInfo, |
DWORD | dwLineID | ||
) |
Definition at line 221 of file sup.c.
Referenced by MMixerAddMixerControlsToDestinationLine(), MMixerAddMixerSourceLines(), MMixerBuildMixerSourceLine(), MMixerGetLineControls(), MMixerGetLineInfo(), MMixerHandleAlternativeMixers(), and MMixerPrintMixers().
Definition at line 1011 of file topology.c.
Referenced by MMixerHandleAlternativeMixers(), and MMixerInitializeMidiForFilter().
VOID MMixerHandleAlternativeMixers | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PMIXER_LIST | MixerList, | ||
IN LPMIXER_DATA | MixerData, | ||
IN PTOPOLOGY | Topology | ||
) |
Definition at line 1682 of file controls.c.
Referenced by MMixerInitialize().
VOID MMixerInitializeMidiForFilter | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PMIXER_LIST | MixerList, | ||
IN LPMIXER_DATA | MixerData, | ||
IN PTOPOLOGY | Topology | ||
) |
Definition at line 172 of file midi.c.
Definition at line 904 of file sup.c.
Referenced by MMixerOpenMidiPin(), and MMixerOpenWavePin().
MIXER_STATUS MMixerInitializeWaveInfo | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PMIXER_LIST | MixerList, | ||
IN LPMIXER_DATA | MixerData, | ||
IN LPWSTR | DeviceName, | ||
IN ULONG | bWaveIn, | ||
IN ULONG | PinCount, | ||
IN PULONG | Pins | ||
) |
Definition at line 330 of file wave.c.
Referenced by MMixerInitializeFilter().
MIXER_STATUS MMixerIsNodeConnectedToPin | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PTOPOLOGY | Topology, | ||
IN ULONG | NodeIndex, | ||
IN ULONG | PinId, | ||
IN ULONG | bUpStream, | ||
OUT PULONG | bConnected | ||
) |
Definition at line 1119 of file topology.c.
Referenced by MMixerAddMixerSourceLines().
Definition at line 1084 of file topology.c.
Referenced by MMixerCountMixerControls().
VOID MMixerIsTopologyNodeReserved | ( | IN PTOPOLOGY | Topology, |
IN ULONG | NodeIndex, | ||
OUT PULONG | bReserved | ||
) |
Definition at line 1239 of file topology.c.
Referenced by MMixerAddMixerControlsToMixerLineByNodeIndexArray().
Definition at line 1214 of file topology.c.
Referenced by MMixerHandleAlternativeMixers().
VOID MMixerPrintTopology | ( | ) |
Referenced by MMixerCountMixerControls(), and MMixerCreateTopology().
MIXER_STATUS MMixerRemoveEvent | ( | IN PMIXER_CONTEXT | MixerContext, |
IN OUT LPMIXER_INFO | MixerInfo, | ||
IN PVOID | MixerEventContext, | ||
IN PMIXER_EVENT | MixerEventRoutine | ||
) |
Definition at line 1882 of file controls.c.
Referenced by MMixerClose().
MIXER_STATUS MMixerSetGetControlDetails | ( | IN PMIXER_CONTEXT | MixerContext, |
IN HANDLE | hMixer, | ||
IN ULONG | NodeId, | ||
IN ULONG | bSet, | ||
IN ULONG | PropertyId, | ||
IN ULONG | Channel, | ||
IN PLONG | InputValue | ||
) |
Definition at line 219 of file filter.c.
Referenced by MMixerSetGetMuteControlDetails(), and MMixerSetGetVolumeControlDetails().
MIXER_STATUS MMixerSetGetMuteControlDetails | ( | IN PMIXER_CONTEXT | MixerContext, |
IN LPMIXER_INFO | MixerInfo, | ||
IN LPMIXERCONTROL_EXT | MixerControl, | ||
IN ULONG | dwLineID, | ||
IN LPMIXERCONTROLDETAILS | MixerControlDetails, | ||
IN ULONG | bSet | ||
) |
Definition at line 367 of file sup.c.
Referenced by MMixerGetControlDetails(), and MMixerSetControlDetails().
MIXER_STATUS MMixerSetGetMuxControlDetails | ( | IN PMIXER_CONTEXT | MixerContext, |
IN LPMIXER_INFO | MixerInfo, | ||
IN ULONG | NodeId, | ||
IN ULONG | bSet, | ||
IN ULONG | Flags, | ||
LPMIXERCONTROL_EXT | MixerControl, | ||
IN LPMIXERCONTROLDETAILS | MixerControlDetails, | ||
LPMIXERLINE_EXT | MixerLine | ||
) |
Referenced by MMixerGetControlDetails(), and MMixerSetControlDetails().
MIXER_STATUS MMixerSetGetVolumeControlDetails | ( | IN PMIXER_CONTEXT | MixerContext, |
IN LPMIXER_INFO | MixerInfo, | ||
IN ULONG | NodeId, | ||
IN ULONG | bSet, | ||
LPMIXERCONTROL_EXT | MixerControl, | ||
IN LPMIXERCONTROLDETAILS | MixerControlDetails, | ||
LPMIXERLINE_EXT | MixerLine | ||
) |
Definition at line 668 of file sup.c.
Referenced by MMixerGetControlDetails(), and MMixerSetControlDetails().
Definition at line 1227 of file topology.c.
Referenced by MMixerAddMixerControlsToMixerLineByNodeIndexArray().
Definition at line 1202 of file topology.c.
Referenced by MMixerAddMixerSourceLines(), MMixerHandleAlternativeMixers(), MMixerHandlePhysicalConnection(), MMixerHandleTopologyFilter(), and MMixerInitializeFilter().
MIXER_STATUS MMixerSetupFilter | ( | IN PMIXER_CONTEXT | MixerContext, |
IN PMIXER_LIST | MixerList, | ||
IN LPMIXER_DATA | MixerData, | ||
IN PULONG | DeviceCount | ||
) |
Definition at line 1755 of file controls.c.
Referenced by MMixerInitialize().
MIXER_STATUS MMixerVerifyContext | ( | IN PMIXER_CONTEXT | MixerContext | ) |
Definition at line 41 of file sup.c.
Referenced by MMixerClose(), MMixerGetCapabilities(), MMixerGetControlDetails(), MMixerGetCount(), MMixerGetLineControls(), MMixerGetLineInfo(), MMixerGetMidiDevicePath(), MMixerGetMidiInCount(), MMixerGetMidiOutCount(), MMixerGetWaveDevicePath(), MMixerGetWaveInCount(), MMixerGetWaveOutCount(), MMixerMidiInCapabilities(), MMixerMidiOutCapabilities(), MMixerOpen(), MMixerOpenMidi(), MMixerOpenWave(), MMixerSetControlDetails(), MMixerSetWaveResetState(), MMixerSetWaveStatus(), MMixerWaveInCapabilities(), and MMixerWaveOutCapabilities().