diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-02-11 23:57:47 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-02-11 23:57:47 +0100 |
commit | d3068d25ca6d07e0a4ec51080e128329df660640 (patch) | |
tree | e290c9f2f4d804fb5cc78f00ffca4cf14f5a4c18 /libavcodec/mpegaudiodecheader.c | |
parent | 707a07f3c2b58331482d850fbe1daad997e90ca3 (diff) | |
download | ffmpeg-d3068d25ca6d07e0a4ec51080e128329df660640.tar.gz |
avcodec: Add avpriv_mpa_decode_header2()
The difference to avpriv_mpa_decode_header() is that it doesnt need or modify the context
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/mpegaudiodecheader.c')
-rw-r--r-- | libavcodec/mpegaudiodecheader.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/libavcodec/mpegaudiodecheader.c b/libavcodec/mpegaudiodecheader.c index 1772c2a3c4..d337c458a0 100644 --- a/libavcodec/mpegaudiodecheader.c +++ b/libavcodec/mpegaudiodecheader.c @@ -108,7 +108,7 @@ int avpriv_mpegaudio_decode_header(MPADecodeHeader *s, uint32_t header) return 0; } -int avpriv_mpa_decode_header(AVCodecContext *avctx, uint32_t head, int *sample_rate, int *channels, int *frame_size, int *bit_rate) +int avpriv_mpa_decode_header2(uint32_t head, int *sample_rate, int *channels, int *frame_size, int *bit_rate, enum AVCodecID *codec_id) { MPADecodeHeader s1, *s = &s1; @@ -121,16 +121,16 @@ int avpriv_mpa_decode_header(AVCodecContext *avctx, uint32_t head, int *sample_r switch(s->layer) { case 1: - avctx->codec_id = AV_CODEC_ID_MP1; + *codec_id = AV_CODEC_ID_MP1; *frame_size = 384; break; case 2: - avctx->codec_id = AV_CODEC_ID_MP2; + *codec_id = AV_CODEC_ID_MP2; *frame_size = 1152; break; default: case 3: - avctx->codec_id = AV_CODEC_ID_MP3; + *codec_id = AV_CODEC_ID_MP3; if (s->lsf) *frame_size = 576; else @@ -143,3 +143,8 @@ int avpriv_mpa_decode_header(AVCodecContext *avctx, uint32_t head, int *sample_r *bit_rate = s->bit_rate; return s->frame_size; } + +int avpriv_mpa_decode_header(AVCodecContext *avctx, uint32_t head, int *sample_rate, int *channels, int *frame_size, int *bit_rate) +{ + return avpriv_mpa_decode_header2(head, sample_rate, channels, frame_size, bit_rate, &avctx->codec_id); +} |