NetEq: Use a BuiltinAudioDecoderFactory to create decoders
Later steps in the refactoring will have the factory injected from the outside rather than owned by NetEq. BUG=webrtc:5801 Review-Url: https://codereview.webrtc.org/1928293002 Cr-Commit-Position: refs/heads/master@{#12604}
This commit is contained in:
@ -137,67 +137,4 @@ int CodecSampleRateHz(NetEqDecoder codec_type) {
|
||||
}
|
||||
}
|
||||
|
||||
AudioDecoder* CreateAudioDecoder(NetEqDecoder codec_type) {
|
||||
if (!CodecSupported(codec_type)) {
|
||||
return NULL;
|
||||
}
|
||||
switch (codec_type) {
|
||||
case NetEqDecoder::kDecoderPCMu:
|
||||
return new AudioDecoderPcmU(1);
|
||||
case NetEqDecoder::kDecoderPCMa:
|
||||
return new AudioDecoderPcmA(1);
|
||||
case NetEqDecoder::kDecoderPCMu_2ch:
|
||||
return new AudioDecoderPcmU(2);
|
||||
case NetEqDecoder::kDecoderPCMa_2ch:
|
||||
return new AudioDecoderPcmA(2);
|
||||
#ifdef WEBRTC_CODEC_ILBC
|
||||
case NetEqDecoder::kDecoderILBC:
|
||||
return new AudioDecoderIlbc;
|
||||
#endif
|
||||
#if defined(WEBRTC_CODEC_ISACFX)
|
||||
case NetEqDecoder::kDecoderISAC:
|
||||
return new AudioDecoderIsacFix();
|
||||
#elif defined(WEBRTC_CODEC_ISAC)
|
||||
case NetEqDecoder::kDecoderISAC:
|
||||
case NetEqDecoder::kDecoderISACswb:
|
||||
return new AudioDecoderIsac();
|
||||
#endif
|
||||
case NetEqDecoder::kDecoderPCM16B:
|
||||
case NetEqDecoder::kDecoderPCM16Bwb:
|
||||
case NetEqDecoder::kDecoderPCM16Bswb32kHz:
|
||||
case NetEqDecoder::kDecoderPCM16Bswb48kHz:
|
||||
return new AudioDecoderPcm16B(1);
|
||||
case NetEqDecoder::kDecoderPCM16B_2ch:
|
||||
case NetEqDecoder::kDecoderPCM16Bwb_2ch:
|
||||
case NetEqDecoder::kDecoderPCM16Bswb32kHz_2ch:
|
||||
case NetEqDecoder::kDecoderPCM16Bswb48kHz_2ch:
|
||||
return new AudioDecoderPcm16B(2);
|
||||
case NetEqDecoder::kDecoderPCM16B_5ch:
|
||||
return new AudioDecoderPcm16B(5);
|
||||
#ifdef WEBRTC_CODEC_G722
|
||||
case NetEqDecoder::kDecoderG722:
|
||||
return new AudioDecoderG722;
|
||||
case NetEqDecoder::kDecoderG722_2ch:
|
||||
return new AudioDecoderG722Stereo;
|
||||
#endif
|
||||
#ifdef WEBRTC_CODEC_OPUS
|
||||
case NetEqDecoder::kDecoderOpus:
|
||||
return new AudioDecoderOpus(1);
|
||||
case NetEqDecoder::kDecoderOpus_2ch:
|
||||
return new AudioDecoderOpus(2);
|
||||
#endif
|
||||
case NetEqDecoder::kDecoderCNGnb:
|
||||
case NetEqDecoder::kDecoderCNGwb:
|
||||
case NetEqDecoder::kDecoderCNGswb32kHz:
|
||||
case NetEqDecoder::kDecoderCNGswb48kHz:
|
||||
RTC_CHECK(false) << "CNG should not be created like this anymore!";
|
||||
case NetEqDecoder::kDecoderRED:
|
||||
case NetEqDecoder::kDecoderAVT:
|
||||
case NetEqDecoder::kDecoderArbitrary:
|
||||
default: {
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
Reference in New Issue
Block a user