initial
This commit is contained in:
39
engine/voice_codecs/frame_encoder/iframeencoder.h
Normal file
39
engine/voice_codecs/frame_encoder/iframeencoder.h
Normal file
@@ -0,0 +1,39 @@
|
||||
//========= Copyright <20> 1996-2005, Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
// $NoKeywords: $
|
||||
//=============================================================================//
|
||||
|
||||
#ifndef IFRAMEENCODER_H
|
||||
#define IFRAMEENCODER_H
|
||||
#pragma once
|
||||
|
||||
|
||||
// A frame encoder is a codec that encodes and decodes data in fixed-size frames.
|
||||
// VoiceCodec_Frame handles queuing of data and the IVoiceCodec interface.
|
||||
abstract_class IFrameEncoder
|
||||
{
|
||||
public:
|
||||
virtual ~IFrameEncoder() {}
|
||||
|
||||
// This is called by VoiceCodec_Frame to see if it can initialize..
|
||||
// Fills in the uncompressed and encoded frame size (both are in BYTES).
|
||||
virtual bool Init(int quality, int &rawFrameSize, int &encodedFrameSize) = 0;
|
||||
|
||||
virtual void Release() = 0;
|
||||
|
||||
// pUncompressed is 8-bit signed mono sound data with 'rawFrameSize' bytes.
|
||||
// pCompressed is the size of encodedFrameSize.
|
||||
virtual void EncodeFrame(const char *pUncompressed, char *pCompressed) = 0;
|
||||
|
||||
// pCompressed is encodedFrameSize.
|
||||
// pDecompressed is where the 8-bit signed mono samples are stored and has space for 'rawFrameSize' bytes.
|
||||
virtual void DecodeFrame(const char *pCompressed, char *pDecompressed) = 0;
|
||||
|
||||
// Some codecs maintain state between Compress and Decompress calls. This should clear that state.
|
||||
virtual bool ResetState() = 0;
|
||||
};
|
||||
|
||||
|
||||
#endif // IFRAMEENCODER_H
|
||||
Reference in New Issue
Block a user