mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
flv: add support for G.711
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
This commit is contained in:
parent
433492ac65
commit
b92c7ee662
@ -82,6 +82,8 @@ enum {
|
|||||||
FLV_CODECID_NELLYMOSER_16KHZ_MONO = 4 << FLV_AUDIO_CODECID_OFFSET,
|
FLV_CODECID_NELLYMOSER_16KHZ_MONO = 4 << FLV_AUDIO_CODECID_OFFSET,
|
||||||
FLV_CODECID_NELLYMOSER_8KHZ_MONO = 5 << FLV_AUDIO_CODECID_OFFSET,
|
FLV_CODECID_NELLYMOSER_8KHZ_MONO = 5 << FLV_AUDIO_CODECID_OFFSET,
|
||||||
FLV_CODECID_NELLYMOSER = 6 << FLV_AUDIO_CODECID_OFFSET,
|
FLV_CODECID_NELLYMOSER = 6 << FLV_AUDIO_CODECID_OFFSET,
|
||||||
|
FLV_CODECID_PCM_ALAW = 7 << FLV_AUDIO_CODECID_OFFSET,
|
||||||
|
FLV_CODECID_PCM_MULAW = 8 << FLV_AUDIO_CODECID_OFFSET,
|
||||||
FLV_CODECID_AAC = 10<< FLV_AUDIO_CODECID_OFFSET,
|
FLV_CODECID_AAC = 10<< FLV_AUDIO_CODECID_OFFSET,
|
||||||
FLV_CODECID_SPEEX = 11<< FLV_AUDIO_CODECID_OFFSET,
|
FLV_CODECID_SPEEX = 11<< FLV_AUDIO_CODECID_OFFSET,
|
||||||
};
|
};
|
||||||
|
@ -108,6 +108,14 @@ static void flv_set_audio_codec(AVFormatContext *s, AVStream *astream, AVCodecCo
|
|||||||
case FLV_CODECID_NELLYMOSER:
|
case FLV_CODECID_NELLYMOSER:
|
||||||
acodec->codec_id = CODEC_ID_NELLYMOSER;
|
acodec->codec_id = CODEC_ID_NELLYMOSER;
|
||||||
break;
|
break;
|
||||||
|
case FLV_CODECID_PCM_MULAW:
|
||||||
|
acodec->sample_rate = 8000;
|
||||||
|
acodec->codec_id = CODEC_ID_PCM_MULAW;
|
||||||
|
break;
|
||||||
|
case FLV_CODECID_PCM_ALAW:
|
||||||
|
acodec->sample_rate = 8000;
|
||||||
|
acodec->codec_id = CODEC_ID_PCM_ALAW;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
av_log(s, AV_LOG_INFO, "Unsupported audio codec (%x)\n", flv_codecid >> FLV_AUDIO_CODECID_OFFSET);
|
av_log(s, AV_LOG_INFO, "Unsupported audio codec (%x)\n", flv_codecid >> FLV_AUDIO_CODECID_OFFSET);
|
||||||
acodec->codec_tag = flv_codecid >> FLV_AUDIO_CODECID_OFFSET;
|
acodec->codec_tag = flv_codecid >> FLV_AUDIO_CODECID_OFFSET;
|
||||||
|
@ -48,6 +48,8 @@ static const AVCodecTag flv_audio_codec_ids[] = {
|
|||||||
{ CODEC_ID_ADPCM_SWF, FLV_CODECID_ADPCM >> FLV_AUDIO_CODECID_OFFSET },
|
{ CODEC_ID_ADPCM_SWF, FLV_CODECID_ADPCM >> FLV_AUDIO_CODECID_OFFSET },
|
||||||
{ CODEC_ID_AAC, FLV_CODECID_AAC >> FLV_AUDIO_CODECID_OFFSET },
|
{ CODEC_ID_AAC, FLV_CODECID_AAC >> FLV_AUDIO_CODECID_OFFSET },
|
||||||
{ CODEC_ID_NELLYMOSER, FLV_CODECID_NELLYMOSER >> FLV_AUDIO_CODECID_OFFSET },
|
{ CODEC_ID_NELLYMOSER, FLV_CODECID_NELLYMOSER >> FLV_AUDIO_CODECID_OFFSET },
|
||||||
|
{ CODEC_ID_PCM_MULAW, FLV_CODECID_PCM_MULAW >> FLV_AUDIO_CODECID_OFFSET },
|
||||||
|
{ CODEC_ID_PCM_ALAW, FLV_CODECID_PCM_ALAW >> FLV_AUDIO_CODECID_OFFSET },
|
||||||
{ CODEC_ID_SPEEX, FLV_CODECID_SPEEX >> FLV_AUDIO_CODECID_OFFSET },
|
{ CODEC_ID_SPEEX, FLV_CODECID_SPEEX >> FLV_AUDIO_CODECID_OFFSET },
|
||||||
{ CODEC_ID_NONE, 0 }
|
{ CODEC_ID_NONE, 0 }
|
||||||
};
|
};
|
||||||
@ -136,6 +138,12 @@ static int get_audio_flags(AVFormatContext *s, AVCodecContext *enc)
|
|||||||
else
|
else
|
||||||
flags |= FLV_CODECID_NELLYMOSER | FLV_SAMPLESSIZE_16BIT;
|
flags |= FLV_CODECID_NELLYMOSER | FLV_SAMPLESSIZE_16BIT;
|
||||||
break;
|
break;
|
||||||
|
case CODEC_ID_PCM_MULAW:
|
||||||
|
flags = FLV_CODECID_PCM_MULAW | FLV_SAMPLERATE_SPECIAL | FLV_SAMPLESSIZE_16BIT;
|
||||||
|
break;
|
||||||
|
case CODEC_ID_PCM_ALAW:
|
||||||
|
flags = FLV_CODECID_PCM_ALAW | FLV_SAMPLERATE_SPECIAL | FLV_SAMPLESSIZE_16BIT;
|
||||||
|
break;
|
||||||
case 0:
|
case 0:
|
||||||
flags |= enc->codec_tag << 4;
|
flags |= enc->codec_tag << 4;
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user