Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/LAVFilters.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHendrik Leppkes <h.leppkes@gmail.com>2012-10-27 13:21:32 +0400
committerHendrik Leppkes <h.leppkes@gmail.com>2012-10-27 13:21:32 +0400
commitececaf2f0c27aeb3e6e49bb1a4923f88c1a5fa38 (patch)
tree5b65807eb70f5c16ee7ce360c1a1727f872ceeda /decoder/LAVAudio
parent4b73fc57c8203f470cf2abf4db186d00b595887d (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.h2
-rw-r--r--decoder/LAVAudio/Media.cpp12
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)