/* Copyright (C) 2014 DaikonForge */
namespace DaikonForge.VoIP
{
///
/// Represents an audio codec
///
public interface IAudioCodec
{
///
/// Called when new audio data is received from the microphone
///
void OnAudioAvailable( BigArray rawPCM );
///
/// Returns the next encoded frame, or NULL if there isn't one
///
VoicePacketWrapper? GetNextEncodedFrame( int frequency );
///
/// Decode the raw encoded frame into 32-bit float PCM
///
BigArray DecodeFrame( VoicePacketWrapper data );
///
/// Generate filler data for a missing frame
///
BigArray GenerateMissingFrame( int frequency );
}
}