| Index: webrtc/modules/utility/source/coder.cc
|
| diff --git a/webrtc/modules/utility/source/coder.cc b/webrtc/modules/utility/source/coder.cc
|
| index 18b690dc67c2ed154d3b2c079970859ec18f11aa..1476e02d9c5057fac58d46511582acdb3b5a982f 100644
|
| --- a/webrtc/modules/utility/source/coder.cc
|
| +++ b/webrtc/modules/utility/source/coder.cc
|
| @@ -29,23 +29,19 @@ AudioCoder::~AudioCoder()
|
| {
|
| }
|
|
|
| -int32_t AudioCoder::SetEncodeCodec(const CodecInst& codecInst)
|
| -{
|
| - if(_acm->RegisterSendCodec((CodecInst&)codecInst) == -1)
|
| - {
|
| - return -1;
|
| - }
|
| - return 0;
|
| +int32_t AudioCoder::SetEncodeCodec(const CodecInst& codecInst) {
|
| + const bool success = codec_manager_.RegisterEncoder(codecInst) &&
|
| + codec_manager_.MakeEncoder(&rent_a_codec_, _acm.get());
|
| + return success ? 0 : -1;
|
| }
|
|
|
| -int32_t AudioCoder::SetDecodeCodec(const CodecInst& codecInst)
|
| -{
|
| - if(_acm->RegisterReceiveCodec((CodecInst&)codecInst) == -1)
|
| - {
|
| - return -1;
|
| - }
|
| - memcpy(&_receiveCodec,&codecInst,sizeof(CodecInst));
|
| - return 0;
|
| +int32_t AudioCoder::SetDecodeCodec(const CodecInst& codecInst) {
|
| + if (_acm->RegisterReceiveCodec(
|
| + codecInst, [&] { return rent_a_codec_.RentIsacDecoder(); }) == -1) {
|
| + return -1;
|
| + }
|
| + memcpy(&_receiveCodec, &codecInst, sizeof(CodecInst));
|
| + return 0;
|
| }
|
|
|
| int32_t AudioCoder::Decode(AudioFrame& decodedAudio,
|
|
|