diff options
author | Hendrik Leppkes <h.leppkes@gmail.com> | 2012-10-27 13:21:32 +0400 |
---|---|---|
committer | Hendrik Leppkes <h.leppkes@gmail.com> | 2012-10-27 13:21:32 +0400 |
commit | ececaf2f0c27aeb3e6e49bb1a4923f88c1a5fa38 (patch) | |
tree | 5b65807eb70f5c16ee7ce360c1a1727f872ceeda /decoder/LAVAudio | |
parent | 4b73fc57c8203f470cf2abf4db186d00b595887d (diff) |
Map A-Law, muLaw, MS-GSM, MS ADPCM and Truespeech to DirectShow types
Diffstat (limited to 'decoder/LAVAudio')
-rw-r--r-- | decoder/LAVAudio/LAVAudioSettings.h | 2 | ||||
-rw-r--r-- | decoder/LAVAudio/Media.cpp | 12 |
2 files changed, 14 insertions, 0 deletions
diff --git a/decoder/LAVAudio/LAVAudioSettings.h b/decoder/LAVAudio/LAVAudioSettings.h index 6448b938..260d74e8 100644 --- a/decoder/LAVAudio/LAVAudioSettings.h +++ b/decoder/LAVAudio/LAVAudioSettings.h @@ -52,6 +52,8 @@ typedef enum LAVAudioCodec { Codec_Opus, Codec_AMR, Codec_Nellymoser, + Codec_MSPCM, + Codec_Truespeech, Codec_NB // Number of entrys (do not use when dynamically linking) }; diff --git a/decoder/LAVAudio/Media.cpp b/decoder/LAVAudio/Media.cpp index 5405ff0f..a9623d9a 100644 --- a/decoder/LAVAudio/Media.cpp +++ b/decoder/LAVAudio/Media.cpp @@ -120,6 +120,11 @@ static const FFMPEG_SUBTYPE_MAP lavc_audio_codecs[] = { { &MEDIASUBTYPE_OPUS, AV_CODEC_ID_OPUS }, { &MEDIASUBTYPE_SAMR, AV_CODEC_ID_AMR_NB }, { &MEDIASUBTYPE_NELLYMOSER, AV_CODEC_ID_NELLYMOSER }, + { &MEDIASUBTYPE_ALAW, AV_CODEC_ID_PCM_ALAW }, + { &MEDIASUBTYPE_MULAW, AV_CODEC_ID_PCM_MULAW }, + { &MEDIASUBTYPE_MSGSM610, AV_CODEC_ID_GSM_MS }, + { &MEDIASUBTYPE_ADPCM_MS, AV_CODEC_ID_ADPCM_MS }, + { &MEDIASUBTYPE_TRUESPEECH, AV_CODEC_ID_TRUESPEECH }, // Special LAVFSplitter interface { &MEDIASUBTYPE_FFMPEG_AUDIO, AV_CODEC_ID_NONE }, @@ -226,6 +231,11 @@ const AMOVIESETUP_MEDIATYPE CLAVAudio::sudPinTypesIn[] = { { &MEDIATYPE_Audio, &MEDIASUBTYPE_OPUS }, { &MEDIATYPE_Audio, &MEDIASUBTYPE_SAMR }, { &MEDIATYPE_Audio, &MEDIASUBTYPE_NELLYMOSER }, + { &MEDIATYPE_Audio, &MEDIASUBTYPE_ALAW }, + { &MEDIATYPE_Audio, &MEDIASUBTYPE_MULAW }, + { &MEDIATYPE_Audio, &MEDIASUBTYPE_MSGSM610 }, + { &MEDIATYPE_Audio, &MEDIASUBTYPE_ADPCM_MS }, + { &MEDIATYPE_Audio, &MEDIASUBTYPE_TRUESPEECH }, // Special LAVFSplitter interface { &MEDIATYPE_Audio, &MEDIASUBTYPE_FFMPEG_AUDIO }, @@ -630,6 +640,8 @@ static codec_config_t m_codec_config[] = { { 1, { AV_CODEC_ID_OPUS }, "opus", "Opus Audio Codec"}, // CC_OPUS { 2, { AV_CODEC_ID_AMR_NB, AV_CODEC_ID_AMR_WB }, "amr", "AMR-NB/WB (Adaptive Multi-Rate NarrowBand/WideBand)" }, // CC_AMR { 1, { AV_CODEC_ID_NELLYMOSER }}, // CC_Nellymoser + { 4, { AV_CODEC_ID_PCM_ALAW, AV_CODEC_ID_PCM_MULAW, AV_CODEC_ID_GSM_MS, AV_CODEC_ID_ADPCM_MS }, "mspcm", "Microsoft PCM (A-Law, muLaw, MS-GSM, MS ADPCM)" }, // CC_MSPCM + { 1, { AV_CODEC_ID_TRUESPEECH }}, // CC_Truespeech }; const codec_config_t *get_codec_config(LAVAudioCodec codec) |