summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-07-09 22:37:42 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-07-09 22:38:13 +0200
commite932ae5940562ae0a183687053a5457a76fd1fa9 (patch)
treed60f2db127f068f058a0b44adfeca3d580ba542a
parent1b58f1376132026a7633fea253f0ed67a8392343 (diff)
parentd5cf5afabbf43f00283e70b12afbe1da030d85b6 (diff)
downloadffmpeg-streaming-e932ae5940562ae0a183687053a5457a76fd1fa9.zip
ffmpeg-streaming-e932ae5940562ae0a183687053a5457a76fd1fa9.tar.gz
Merge commit 'd5cf5afabbf43f00283e70b12afbe1da030d85b6'
* commit 'd5cf5afabbf43f00283e70b12afbe1da030d85b6': adxdec: get rid of an avpriv function Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/Makefile1
-rw-r--r--libavcodec/adx.c12
-rw-r--r--libavcodec/adx.h5
-rw-r--r--libavcodec/adxdec.c10
-rw-r--r--libavformat/adxdec.c12
5 files changed, 25 insertions, 15 deletions
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 50a7b17..3a2f5ba 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -666,7 +666,6 @@ OBJS-$(CONFIG_VC1_VDPAU_HWACCEL) += vdpau_vc1.o
# libavformat dependencies
OBJS-$(CONFIG_ADTS_MUXER) += mpeg4audio.o
-OBJS-$(CONFIG_ADX_DEMUXER) += adx.o
OBJS-$(CONFIG_CAF_DEMUXER) += mpeg4audio.o mpegaudiodata.o \
ac3tab.o
OBJS-$(CONFIG_FLAC_DEMUXER) += flac.o flacdata.o vorbis_data.o \
diff --git a/libavcodec/adx.c b/libavcodec/adx.c
index 30e13c0..9c5bedc 100644
--- a/libavcodec/adx.c
+++ b/libavcodec/adx.c
@@ -35,8 +35,8 @@ void ff_adx_calculate_coeffs(int cutoff, int sample_rate, int bits, int *coeff)
coeff[1] = lrintf(-(c * c) * (1 << bits));
}
-int avpriv_adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
- int bufsize, int *header_size, int *coeff)
+int ff_adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
+ int bufsize, int *header_size, int *coeff)
{
int offset, cutoff;
@@ -80,3 +80,11 @@ int avpriv_adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
*header_size = offset;
return 0;
}
+
+#if LIBAVCODEC_VERSION_MAJOR < 56
+int avpriv_adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
+ int bufsize, int *header_size, int *coeff)
+{
+ return ff_adx_decode_header(avctx, buf, bufsize, header_size, coeff);
+}
+#endif
diff --git a/libavcodec/adx.h b/libavcodec/adx.h
index b28d09a..ca59a2d 100644
--- a/libavcodec/adx.h
+++ b/libavcodec/adx.h
@@ -74,7 +74,12 @@ void ff_adx_calculate_coeffs(int cutoff, int sample_rate, int bits, int *coeff);
* @param[out] coeff 2 LPC coefficients, can be NULL
* @return data offset or negative error code if header is invalid
*/
+int ff_adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
+ int bufsize, int *header_size, int *coeff);
+
+#if LIBAVCODEC_VERSION_MAJOR < 56
int avpriv_adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
int bufsize, int *header_size, int *coeff);
+#endif
#endif /* AVCODEC_ADX_H */
diff --git a/libavcodec/adxdec.c b/libavcodec/adxdec.c
index ec33e73..5115ced 100644
--- a/libavcodec/adxdec.c
+++ b/libavcodec/adxdec.c
@@ -40,9 +40,9 @@ static av_cold int adx_decode_init(AVCodecContext *avctx)
int ret, header_size;
if (avctx->extradata_size >= 24) {
- if ((ret = avpriv_adx_decode_header(avctx, avctx->extradata,
- avctx->extradata_size, &header_size,
- c->coeff)) < 0) {
+ if ((ret = ff_adx_decode_header(avctx, avctx->extradata,
+ avctx->extradata_size, &header_size,
+ c->coeff)) < 0) {
av_log(avctx, AV_LOG_ERROR, "error parsing ADX header\n");
return AVERROR_INVALIDDATA;
}
@@ -111,8 +111,8 @@ static int adx_decode_frame(AVCodecContext *avctx, void *data,
if (!c->header_parsed && buf_size >= 2 && AV_RB16(buf) == 0x8000) {
int header_size;
- if ((ret = avpriv_adx_decode_header(avctx, buf, buf_size, &header_size,
- c->coeff)) < 0) {
+ if ((ret = ff_adx_decode_header(avctx, buf, buf_size, &header_size,
+ c->coeff)) < 0) {
av_log(avctx, AV_LOG_ERROR, "error parsing ADX header\n");
return AVERROR_INVALIDDATA;
}
diff --git a/libavformat/adxdec.c b/libavformat/adxdec.c
index fe22c3a..ddaa201 100644
--- a/libavformat/adxdec.c
+++ b/libavformat/adxdec.c
@@ -24,7 +24,6 @@
*/
#include "libavutil/intreadwrite.h"
-#include "libavcodec/adx.h"
#include "avformat.h"
#include "internal.h"
@@ -66,7 +65,6 @@ static int adx_read_header(AVFormatContext *s)
{
ADXDemuxerContext *c = s->priv_data;
AVCodecContext *avctx;
- int ret;
AVStream *st = avformat_new_stream(s, NULL);
if (!st)
@@ -81,11 +79,11 @@ static int adx_read_header(AVFormatContext *s)
if (ff_get_extradata(avctx, s->pb, c->header_size) < 0)
return AVERROR(ENOMEM);
- ret = avpriv_adx_decode_header(avctx, avctx->extradata,
- avctx->extradata_size, &c->header_size,
- NULL);
- if (ret)
- return ret;
+ if (avctx->extradata_size < 12) {
+ av_log(s, AV_LOG_ERROR, "Invalid extradata size.\n");
+ return AVERROR_INVALIDDATA;
+ }
+ avctx->sample_rate = AV_RB32(avctx->extradata + 8);
st->codec->codec_type = AVMEDIA_TYPE_AUDIO;
st->codec->codec_id = s->iformat->raw_codec_id;
OpenPOWER on IntegriCloud