30 #ifndef OPAL_CODEC_ECHOCANCEL_H
31 #define OPAL_CODEC_ECHOCANCEL_H
42 #include <ptclib/qchannel.h>
45 struct SpeexEchoState;
48 #ifndef SPEEX_PREPROCESS_H
49 struct SpeexPreprocessState;
53 class OpalEchoCanceler :
public PObject
55 PCLASSINFO(OpalEchoCanceler, PObject);
79 const PNotifier & GetReceiveHandler()
const {
return receiveHandler; }
80 const PNotifier & GetSendHandler()
const {
return sendHandler; }
86 const Params & newParam
97 PDECLARE_NOTIFIER(
RTP_DataFrame, OpalEchoCanceler, ReceivedPacket);
98 PDECLARE_NOTIFIER(
RTP_DataFrame, OpalEchoCanceler, SentPacket);
100 PNotifier receiveHandler;
101 PNotifier sendHandler;
107 PQueueChannel *echo_chan;
109 SpeexEchoState *echoState;
110 SpeexPreprocessState *preprocessState;
122 #endif // OPAL_CODEC_ECHOCANCEL_H