summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure6
-rw-r--r--libavcodec/h263dec.c2
-rw-r--r--libavcodec/vp3.c2
-rw-r--r--libavdevice/libcdio.c7
-rw-r--r--libavformat/riff.c1
-rw-r--r--libavutil/x86/float_dsp_init.c6
6 files changed, 19 insertions, 5 deletions
diff --git a/configure b/configure
index 80e2d731b4..2350c51ef6 100755
--- a/configure
+++ b/configure
@@ -1343,6 +1343,8 @@ HAVE_LIST="
asm_types_h
attribute_may_alias
attribute_packed
+ cdio_paranoia_h
+ cdio_paranoia_paranoia_h
clock_gettime
closesocket
cmov
@@ -3827,7 +3829,6 @@ enabled libiec61883 && require libiec61883 libiec61883/iec61883.h iec61883_cmp_c
enabled libaacplus && require "libaacplus >= 2.0.0" aacplus.h aacplusEncOpen -laacplus
enabled libass && require_pkg_config libass ass/ass.h ass_library_init
enabled libbluray && require libbluray libbluray/bluray.h bd_open -lbluray
-enabled libcdio && require2 libcdio "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio
enabled libcelt && require libcelt celt/celt.h celt_decode -lcelt0 &&
{ check_lib celt/celt.h celt_decoder_create_custom -lcelt0 ||
die "ERROR: libcelt must be installed and version must be >= 0.11.0."; }
@@ -3966,6 +3967,9 @@ enabled jack_indev && check_lib2 jack/jack.h jack_client_open -ljack && check_fu
enabled_any sndio_indev sndio_outdev && check_lib2 sndio.h sio_open -lsndio
+if enabled libcdio; then
+ check_lib2 "cdio/cdda.h cdio/paranoia.h" cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio || check_lib2 "cdio/paranoia/cdda.h cdio/paranoia/paranoia.h" cdio_cddap_open -lcdio_paranoia -lcdio_cdda -lcdio
+fi
enabled x11grab &&
require X11 X11/Xlib.h XOpenDisplay -lX11 &&
diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c
index 0232aa4c9d..8f1e4d3c9a 100644
--- a/libavcodec/h263dec.c
+++ b/libavcodec/h263dec.c
@@ -469,7 +469,7 @@ retry:
if(s->xvid_build==-1 && s->divx_version==-1 && s->lavc_build==-1){
if(s->stream_codec_tag == AV_RL32("XVID") ||
s->codec_tag == AV_RL32("XVID") || s->codec_tag == AV_RL32("XVIX") ||
- s->codec_tag == AV_RL32("RMP4") ||
+ s->codec_tag == AV_RL32("RMP4") || s->codec_tag == AV_RL32("ZMP4") ||
s->codec_tag == AV_RL32("SIPP")
)
s->xvid_build= 0;
diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
index dcc2578b8f..ce3ffe832a 100644
--- a/libavcodec/vp3.c
+++ b/libavcodec/vp3.c
@@ -2339,6 +2339,8 @@ static av_cold int theora_decode_init(AVCodecContext *avctx)
}
for(i=0;i<3;i++) {
+ if (header_len[i] <= 0)
+ continue;
init_get_bits(&gb, header_start[i], header_len[i] * 8);
ptype = get_bits(&gb, 8);
diff --git a/libavdevice/libcdio.c b/libavdevice/libcdio.c
index ec53e2c072..a824bc3882 100644
--- a/libavdevice/libcdio.c
+++ b/libavdevice/libcdio.c
@@ -23,8 +23,15 @@
* libcdio CD grabbing
*/
+#include "config.h"
+
+#if HAVE_CDIO_PARANOIA_H
#include <cdio/cdda.h>
#include <cdio/paranoia.h>
+#elif HAVE_CDIO_PARANOIA_PARANOIA_H
+#include <cdio/paranoia/cdda.h>
+#include <cdio/paranoia/paranoia.h>
+#endif
#include "libavutil/log.h"
#include "libavutil/mem.h"
diff --git a/libavformat/riff.c b/libavformat/riff.c
index 573e4179cd..508beb1f0b 100644
--- a/libavformat/riff.c
+++ b/libavformat/riff.c
@@ -62,6 +62,7 @@ const AVCodecTag ff_codec_bmp_tags[] = {
{ AV_CODEC_ID_MPEG4, MKTAG('M', 'P', '4', 'S') },
{ AV_CODEC_ID_MPEG4, MKTAG('M', '4', 'S', '2') },
{ AV_CODEC_ID_MPEG4, MKTAG( 4 , 0 , 0 , 0 ) }, /* some broken avi use this */
+ { AV_CODEC_ID_MPEG4, MKTAG('Z', 'M', 'P', '4') }, /* some broken avi use this */
{ AV_CODEC_ID_MPEG4, MKTAG('D', 'I', 'V', '1') },
{ AV_CODEC_ID_MPEG4, MKTAG('B', 'L', 'Z', '0') },
{ AV_CODEC_ID_MPEG4, MKTAG('m', 'p', '4', 'v') },
diff --git a/libavutil/x86/float_dsp_init.c b/libavutil/x86/float_dsp_init.c
index 93cff9f49a..68ddf878c6 100644
--- a/libavutil/x86/float_dsp_init.c
+++ b/libavutil/x86/float_dsp_init.c
@@ -41,7 +41,7 @@ extern void ff_vector_dmul_scalar_sse2(double *dst, const double *src,
extern void ff_vector_dmul_scalar_avx(double *dst, const double *src,
double mul, int len);
-#if HAVE_6REGS
+#if HAVE_6REGS && HAVE_INLINE_ASM
static void vector_fmul_window_3dnowext(float *dst, const float *src0,
const float *src1, const float *win,
int len)
@@ -105,13 +105,13 @@ static void vector_fmul_window_sse(float *dst, const float *src0,
: "r"(dst + len), "r"(src0 + len), "r"(src1), "r"(win + len)
);
}
-#endif /* HAVE_6REGS */
+#endif /* HAVE_6REGS && HAVE_INLINE_ASM */
void ff_float_dsp_init_x86(AVFloatDSPContext *fdsp)
{
int mm_flags = av_get_cpu_flags();
-#if HAVE_6REGS
+#if HAVE_6REGS && HAVE_INLINE_ASM
if (INLINE_AMD3DNOWEXT(mm_flags)) {
fdsp->vector_fmul_window = vector_fmul_window_3dnowext;
}