From f8b12e6f3c5cdf3eee5368ef71a85c0e0ae05ecb Mon Sep 17 00:00:00 2001 From: Gerald Begumisa Date: Thu, 15 Jan 2009 14:49:54 +0000 Subject: Modified the G722 decoder such that it is not compiled as a separate Orkaudio plugin but is linked to orkbase. In addition, modified the G722 decoder to meet the same coding style as the other codecs (Ilbc and Gsm). This has so far been tested on Linux. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@594 09dcff7a-b715-0410-9601-b79a96267cd0 --- orkbasecxx/filters/g722codec/G722Codec.cpp | 60 ++++++++++-------------------- 1 file changed, 19 insertions(+), 41 deletions(-) (limited to 'orkbasecxx/filters/g722codec/G722Codec.cpp') diff --git a/orkbasecxx/filters/g722codec/G722Codec.cpp b/orkbasecxx/filters/g722codec/G722Codec.cpp index d2a72b7..5a59e1e 100644 --- a/orkbasecxx/filters/g722codec/G722Codec.cpp +++ b/orkbasecxx/filters/g722codec/G722Codec.cpp @@ -16,34 +16,25 @@ #include "G722Codec.h" -static log4cxx::LoggerPtr s_log; -static bool s_initialized = false; - -G722Decoder::G722Decoder() -{ -#ifdef WIN32 - if(s_initialized == false) - { - s_log = log4cxx::Logger::getLogger("codec.g722"); - } -#endif +G722ToPcmFilter::G722ToPcmFilter() +{ // Initialize decoder memset(&m_ctx, 0, sizeof(m_ctx)); g722_decode_init(&m_ctx, 64000, G722_SAMPLE_RATE_8000); } -G722Decoder::~G722Decoder() +G722ToPcmFilter::~G722ToPcmFilter() { memset(&m_ctx, 0, sizeof(m_ctx)); } -FilterRef G722Decoder::Instanciate() +FilterRef G722ToPcmFilter::Instanciate() { - FilterRef Filter(new G722Decoder()); + FilterRef Filter(new G722ToPcmFilter()); return Filter; } -void G722Decoder::AudioChunkIn(AudioChunkRef& inputAudioChunk) +void G722ToPcmFilter::AudioChunkIn(AudioChunkRef& inputAudioChunk) { int in_samples = 0; int out_samples = 0; @@ -82,56 +73,43 @@ void G722Decoder::AudioChunkIn(AudioChunkRef& inputAudioChunk) memcpy(outputBuffer, pcmdata, out_samples*2); } -void G722Decoder::AudioChunkOut(AudioChunkRef& chunk) +void G722ToPcmFilter::AudioChunkOut(AudioChunkRef& chunk) { chunk = m_outputAudioChunk; } -AudioEncodingEnum G722Decoder::GetInputAudioEncoding() +AudioEncodingEnum G722ToPcmFilter::GetInputAudioEncoding() { return G722Audio; } -AudioEncodingEnum G722Decoder::GetOutputAudioEncoding() +AudioEncodingEnum G722ToPcmFilter::GetOutputAudioEncoding() { return PcmAudio; } -CStdString G722Decoder::GetName() +CStdString G722ToPcmFilter::GetName() { return "G722ToPcm"; } -int G722Decoder::GetInputRtpPayloadType(void) +int G722ToPcmFilter::GetInputRtpPayloadType(void) { return 9; } -void G722Decoder::CaptureEventIn(CaptureEventRef& event) +void G722ToPcmFilter::CaptureEventIn(CaptureEventRef& event) { ; } -void G722Decoder::CaptureEventOut(CaptureEventRef& event) +void G722ToPcmFilter::CaptureEventOut(CaptureEventRef& event) { ; } //===================================================================== -extern "C" -{ - DLL_EXPORT void __CDECL__ OrkInitialize() - { - s_log = log4cxx::Logger::getLogger("codec.g722"); - - FilterRef filter(new G722Decoder()); - FilterRegistry::instance()->RegisterFilter(filter); - - LOG4CXX_INFO(s_log, "G.722 codec plugin initialized."); - } -} - /* * SpanDSP - a series of DSP components for telephony * @@ -157,9 +135,9 @@ extern "C" /*! \file */ -#include +#include #ifndef WIN32 -#include +#include #endif #include #include @@ -174,10 +152,10 @@ extern "C" #define TRUE (!FALSE) #endif -#ifdef WIN32 -static inline int16_t saturate(int32_t amp) -#else -static __inline__ int16_t saturate(int32_t amp) +#ifdef WIN32 +static inline int16_t saturate(int32_t amp) +#else +static __inline__ int16_t saturate(int32_t amp) #endif { int16_t amp16; -- cgit v1.2.3