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.
41 lines
921 B
41 lines
921 B
5 years ago
|
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||
|
//
|
||
|
// Purpose:
|
||
|
//
|
||
|
// $NoKeywords: $
|
||
|
//=============================================================================//
|
||
|
|
||
|
#ifndef IVOICERECORD_H
|
||
|
#define IVOICERECORD_H
|
||
|
#pragma once
|
||
|
|
||
|
|
||
|
// This is the voice recording interface. It provides 16-bit signed mono data from
|
||
|
// a mic at some sample rate.
|
||
|
abstract_class IVoiceRecord
|
||
|
{
|
||
|
protected:
|
||
|
|
||
|
virtual ~IVoiceRecord() {}
|
||
|
|
||
|
|
||
|
public:
|
||
|
|
||
|
// Use this to delete the object.
|
||
|
virtual void Release()=0;
|
||
|
|
||
|
// Start/stop capturing.
|
||
|
virtual bool RecordStart() = 0;
|
||
|
virtual void RecordStop() = 0;
|
||
|
|
||
|
// Idle processing.
|
||
|
virtual void Idle()=0;
|
||
|
|
||
|
// Get the most recent N samples. If nSamplesWanted is less than the number of
|
||
|
// available samples, it discards the first samples and gives you the last ones.
|
||
|
virtual int GetRecordedData(short *pOut, int nSamplesWanted)=0;
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif // IVOICERECORD_H
|