diff options
-rw-r--r-- | orkaudio/Makefile.am | 2 | ||||
-rw-r--r-- | orkaudio/OrkAudio.cpp | 12 | ||||
-rw-r--r-- | orkbasecxx/Makefile.am | 3 | ||||
-rw-r--r-- | orkbasecxx/filters/g722codec/G722Codec.cpp | 60 | ||||
-rw-r--r-- | orkbasecxx/filters/g722codec/G722Codec.h | 6 | ||||
-rw-r--r-- | orkbasecxx/filters/g722codec/Makefile.am | 11 |
6 files changed, 31 insertions, 63 deletions
diff --git a/orkaudio/Makefile.am b/orkaudio/Makefile.am index cd3ad52..c475d4c 100644 --- a/orkaudio/Makefile.am +++ b/orkaudio/Makefile.am @@ -8,7 +8,7 @@ orkaudio_LDADD = orkaudio_LDFLAGS = -lACE -lxerces-c -llog4cxx -lorkbase -lsndfile orkaudio_SOURCES = OrkAudio.cpp AM_CPPFLAGS = -D_REENTRANT -INCLUDES = -I@top_srcdir@ -I../orkbasecxx -I../orkbasecxx/filters/gsm -I../orkbasecxx/filters/gsm/gsm610 -I../orkbasecxx/filters/ilbc -I../orkbasecxx/filters/ilbc/ilbc -I../orkbasecxx/filters/audiogain +INCLUDES = -I@top_srcdir@ -I../orkbasecxx -I../orkbasecxx/filters/gsm -I../orkbasecxx/filters/gsm/gsm610 -I../orkbasecxx/filters/ilbc -I../orkbasecxx/filters/ilbc/ilbc -I../orkbasecxx/filters/audiogain -I../orkbasecxx/filters/g722codec SUBDIRS = audiocaptureplugins filters #orkaudio_LDADD = $(top_builddir)/messages/libmessages.la diff --git a/orkaudio/OrkAudio.cpp b/orkaudio/OrkAudio.cpp index 12531ff..be0dead 100644 --- a/orkaudio/OrkAudio.cpp +++ b/orkaudio/OrkAudio.cpp @@ -41,13 +41,11 @@ #include "Filter.h" #include "GsmFilters.h" #include "IlbcFilters.h" +#include "G722Codec.h" #include "filters/audiogain/AudioGain.h" #include "TapeProcessor.h" #include <list> #include "EventStreaming.h" -#ifdef WIN32 -#include "G722Codec.h" -#endif static volatile bool serviceStop = false; @@ -156,10 +154,8 @@ void Transcode(CStdString &file) FilterRegistry::instance()->RegisterFilter(filter); filter.reset(new AudioGainFilter()); FilterRegistry::instance()->RegisterFilter(filter); -#ifdef WIN32 - filter.reset(new G722Decoder()); + filter.reset(new G722ToPcmFilter()); FilterRegistry::instance()->RegisterFilter(filter); -#endif // Register in-built tape processors and build the processing chain BatchProcessing::Initialize(); @@ -245,10 +241,8 @@ void MainThread() FilterRegistry::instance()->RegisterFilter(filter); filter.reset(new AudioGainFilter()); FilterRegistry::instance()->RegisterFilter(filter); -#ifdef WIN32 - filter.reset(new G722Decoder()); + filter.reset(new G722ToPcmFilter()); FilterRegistry::instance()->RegisterFilter(filter); -#endif // Register in-built tape processors and build the processing chain BatchProcessing::Initialize(); diff --git a/orkbasecxx/Makefile.am b/orkbasecxx/Makefile.am index b985cfe..95ad73f 100644 --- a/orkbasecxx/Makefile.am +++ b/orkbasecxx/Makefile.am @@ -25,7 +25,8 @@ liborkbase_la_LIBADD = $(top_builddir)/serializers/libserializers.la \ $(top_builddir)/filters/gsm/gsm610/libgsm610.la \ $(top_builddir)/filters/ilbc/libilbc.la \ $(top_builddir)/filters/ilbc/ilbc/libilbcrfc.la \ - $(top_builddir)/filters/audiogain/libaudiogain.la + $(top_builddir)/filters/audiogain/libaudiogain.la \ + $(top_builddir)/filters/g722codec/libg722codec.la -lm AM_CXXFLAGS = -D_REENTRANT 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 <stdio.h>
+#include <stdio.h> #ifndef WIN32 -#include <inttypes.h>
+#include <inttypes.h> #endif #include <memory.h> #include <stdlib.h> @@ -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; diff --git a/orkbasecxx/filters/g722codec/G722Codec.h b/orkbasecxx/filters/g722codec/G722Codec.h index 2b1fc26..4329384 100644 --- a/orkbasecxx/filters/g722codec/G722Codec.h +++ b/orkbasecxx/filters/g722codec/G722Codec.h @@ -17,11 +17,11 @@ #include "Filter.h" #include "G722.h" -class DLL_IMPORT_EXPORT_ORKBASE G722Decoder : public Filter +class DLL_IMPORT_EXPORT_ORKBASE G722ToPcmFilter : public Filter { public: - G722Decoder(); - ~G722Decoder(); + G722ToPcmFilter(); + ~G722ToPcmFilter(); FilterRef __CDECL__ Instanciate(); void __CDECL__ AudioChunkIn(AudioChunkRef& chunk); diff --git a/orkbasecxx/filters/g722codec/Makefile.am b/orkbasecxx/filters/g722codec/Makefile.am index d6f7fef..9ff6ccf 100644 --- a/orkbasecxx/filters/g722codec/Makefile.am +++ b/orkbasecxx/filters/g722codec/Makefile.am @@ -1,12 +1,7 @@ +METASOURCES = AUTO SUBDIRS = - -plugindir= $(prefix)/lib/orkaudio/plugins -plugin_LTLIBRARIES = libg722codec.la +noinst_LTLIBRARIES = libg722codec.la libg722codec_la_SOURCES = G722Codec.cpp -AM_CFLAGS = -D__unix__ -Dlinux -DNDEBUG -DNO_SCRATCH_MEMORY_USED -DLINUX32 -Dlinux32 -AM_CPPFLAGS = -D_REENTRANT -D__unix__ -Dlinux -DNDEBUG -DNO_SCRATCH_MEMORY_USED -DLINUX32 -Dlinux32 -libg722codec_la_LDFLAGS = -module -libg722codec_la_LIBADD = -lACE -lxerces-c -llog4cxx -lorkbase \ - -lpthread -lm INCLUDES = -I@top_srcdir@ -I../.. +AM_CXXFLAGS = -D_REENTRANT |