ReactOS 0.4.15-dev-8614-gbc76250
|
#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 1827 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 1045 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 1013 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 778 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 1245 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 781 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 873 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 709 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 809 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 157 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 1158 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 735 of file sup.c.
Referenced by MMixerGetMidiDevicePath(), MMixerGetWaveDevicePath(), MMixerOpenMidiPin(), and MMixerOpenWavePin().
LPMIXER_DATA MMixerGetDataByDeviceName | ( | IN PMIXER_LIST | MixerList, |
IN LPWSTR | DeviceName | ||
) |
Definition at line 756 of file sup.c.
Referenced by MMixerHandlePhysicalConnection().
MIXER_STATUS MMixerGetDeviceName | ( | IN PMIXER_CONTEXT | MixerContext, |
OUT LPWSTR | DeviceName, | ||
IN HANDLE | hKey | ||
) |
Definition at line 852 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 804 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 191 of file sup.c.
MIXER_STATUS MMixerGetMixerControlById | ( | LPMIXER_INFO | MixerInfo, |
DWORD | dwControlID, | ||
LPMIXERLINE_EXT * | MixerLine, | ||
LPMIXERCONTROL_EXT * | MixerControl, | ||
PULONG | NodeId | ||
) |
Definition at line 278 of file sup.c.
Referenced by MMixerGetControlDetails(), MMixerGetLineControls(), and MMixerSetControlDetails().
LPMIXER_INFO MMixerGetMixerInfoByIndex | ( | IN PMIXER_CONTEXT | MixerContext, |
IN ULONG | MixerIndex | ||
) |
Definition at line 158 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 965 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 922 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 691 of file topology.c.
Referenced by MMixerSetupFilter().
LPGUID MMixerGetNodeType | ( | IN PKSMULTIPLE_ITEM | MultipleItem, |
IN ULONG | Index | ||
) |
Definition at line 1184 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 255 of file sup.c.
Referenced by MMixerGetLineInfo().
LPMIXERLINE_EXT MMixerGetSourceMixerLineByLineId | ( | LPMIXER_INFO | MixerInfo, |
DWORD | dwLineID | ||
) |
Definition at line 218 of file sup.c.
Referenced by MMixerAddMixerControlsToDestinationLine(), MMixerAddMixerSourceLines(), MMixerBuildMixerSourceLine(), MMixerGetLineControls(), MMixerGetLineInfo(), MMixerHandleAlternativeMixers(), and MMixerPrintMixers().
Definition at line 1004 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 1676 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 901 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 347 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 1112 of file topology.c.
Referenced by MMixerAddMixerSourceLines().
Definition at line 1077 of file topology.c.
Referenced by MMixerCountMixerControls().
VOID MMixerIsTopologyNodeReserved | ( | IN PTOPOLOGY | Topology, |
IN ULONG | NodeIndex, | ||
OUT PULONG | bReserved | ||
) |
Definition at line 1232 of file topology.c.
Referenced by MMixerAddMixerControlsToMixerLineByNodeIndexArray().
Definition at line 1207 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 1875 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 214 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 364 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 665 of file sup.c.
Referenced by MMixerGetControlDetails(), and MMixerSetControlDetails().
Definition at line 1220 of file topology.c.
Referenced by MMixerAddMixerControlsToMixerLineByNodeIndexArray().
Definition at line 1195 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 1749 of file controls.c.
Referenced by MMixerInitialize().
MIXER_STATUS MMixerVerifyContext | ( | IN PMIXER_CONTEXT | MixerContext | ) |
Definition at line 40 of file sup.c.
Referenced by MMixerClose(), MMixerGetCapabilities(), MMixerGetControlDetails(), MMixerGetCount(), MMixerGetLineControls(), MMixerGetLineInfo(), MMixerGetMidiDevicePath(), MMixerGetMidiInCount(), MMixerGetMidiOutCount(), MMixerGetWaveDevicePath(), MMixerGetWaveInCount(), MMixerGetWaveOutCount(), MMixerGetWavePosition(), MMixerMidiInCapabilities(), MMixerMidiOutCapabilities(), MMixerOpen(), MMixerOpenMidi(), MMixerOpenWave(), MMixerSetControlDetails(), MMixerSetWaveResetState(), MMixerSetWaveStatus(), MMixerWaveInCapabilities(), and MMixerWaveOutCapabilities().