You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.2 KiB
48 lines
1.2 KiB
5 years ago
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
// Purpose:
|
||
|
//
|
||
|
// $NoKeywords: $
|
||
|
//=============================================================================//
|
||
|
|
||
|
#ifndef MIXER_CONTROLS_H
|
||
|
#define MIXER_CONTROLS_H
|
||
|
#pragma once
|
||
|
|
||
|
|
||
|
abstract_class IMixerControls
|
||
|
{
|
||
|
|
||
|
public:
|
||
|
virtual ~IMixerControls() {}
|
||
|
enum Control
|
||
|
{
|
||
|
// Microphone boost is a boolean switch that sound cards support which boosts the input signal by about +20dB.
|
||
|
// If this isn't on, the mic is usually way too quiet.
|
||
|
MicBoost=0,
|
||
|
|
||
|
// Volume values are 0-1.
|
||
|
MicVolume,
|
||
|
|
||
|
// Mic playback muting. You usually want this set to false, otherwise the sound card echoes whatever you say into the mic.
|
||
|
MicMute,
|
||
|
|
||
|
NumControls
|
||
|
};
|
||
|
|
||
|
virtual bool GetValue_Float(Control iControl, float &value) = 0;
|
||
|
virtual bool SetValue_Float(Control iControl, float value) = 0;
|
||
|
|
||
|
// Apps like RealJukebox will switch the waveIn input to use CD audio
|
||
|
// rather than the microphone. This should be called at startup to set it back.
|
||
|
virtual bool SelectMicrophoneForWaveInput() = 0;
|
||
|
};
|
||
|
|
||
|
extern IMixerControls *g_pMixerControls;
|
||
|
// Allocates a set of mixer controls.
|
||
|
void InitMixerControls();
|
||
|
void ShutdownMixerControls();
|
||
|
|
||
|
|
||
|
#endif // MIXER_CONTROLS_H
|