diff options
Diffstat (limited to 'src/audio/audio_encoder.h')
-rw-r--r-- | src/audio/audio_encoder.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/audio/audio_encoder.h b/src/audio/audio_encoder.h index e2fb874..b900414 100644 --- a/src/audio/audio_encoder.h +++ b/src/audio/audio_encoder.h @@ -35,6 +35,12 @@ #include <speex/speex.h> #endif +#ifdef HAVE_BCG729 +extern "C" { +# include <bcg729/encoder.h> +} +#endif + #ifdef HAVE_ILBC #ifndef HAVE_ILBC_CPP extern "C" { @@ -179,4 +185,19 @@ public: uint8 *payload, uint16 payload_size, bool &silence); }; +#ifdef HAVE_BCG729 +class t_g729a_audio_encoder : public t_audio_encoder +{ +public: + t_g729a_audio_encoder(uint16 payload_id, uint16 ptime, t_user *user_config); + virtual ~t_g729a_audio_encoder(); + + virtual uint16 encode(int16 *sample_buf, uint16 nsamples, + uint8 *payload, uint16 payload_size, bool &silence); +private: + bcg729EncoderChannelContextStruct* _context; +}; + +#endif + #endif |