aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-10-13 13:57:47 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-10-13 14:14:11 +0200
commit3b0bb321a50cd2591c6bd46059a66f6a53d9fc08 (patch)
tree1e9caead8b857d3a52b4b2dd86407670442ea05a
parent3cc0252732513dc7411093935821b1eb6416a9a6 (diff)
parentf6c38c5f4ed6683a6a61db2ed418a68bbe5f5507 (diff)
downloadffmpeg-3b0bb321a50cd2591c6bd46059a66f6a53d9fc08.tar.gz
Merge commit 'f6c38c5f4ed6683a6a61db2ed418a68bbe5f5507'
* commit 'f6c38c5f4ed6683a6a61db2ed418a68bbe5f5507': avfilter: call x86 init functions under if (ARCH_X86), not if (HAVE_MMX) rtspdec: Set the default port for listen mode, if none is specified tscc2: Fix an out of array access rtmpproto: Fix an out of array write rtspdec: Fix use of uninitialized byte vp8: reset loopfilter delta values at keyframes. avutil: add yuva422p and yuva444p formats Conflicts: libavutil/pixdesc.c libavutil/pixfmt.h tests/ref/lavfi/pixdesc tests/ref/lavfi/pixfmts_copy tests/ref/lavfi/pixfmts_null tests/ref/lavfi/pixfmts_scale tests/ref/lavfi/pixfmts_vflip Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavfilter/vf_gradfun.c2
-rw-r--r--libavfilter/vf_yadif.c2
-rw-r--r--libavfilter/x86/Makefile5
-rw-r--r--libavformat/rtspdec.c4
-rw-r--r--libavutil/pixfmt.h14
5 files changed, 23 insertions, 4 deletions
diff --git a/libavfilter/vf_gradfun.c b/libavfilter/vf_gradfun.c
index ec7a786549..3f8b221457 100644
--- a/libavfilter/vf_gradfun.c
+++ b/libavfilter/vf_gradfun.c
@@ -135,7 +135,7 @@ static av_cold int init(AVFilterContext *ctx, const char *args)
gf->blur_line = ff_gradfun_blur_line_c;
gf->filter_line = ff_gradfun_filter_line_c;
- if (HAVE_MMX)
+ if (ARCH_X86)
ff_gradfun_init_x86(gf);
av_log(ctx, AV_LOG_VERBOSE, "threshold:%.2f radius:%d\n", thresh, gf->radius);
diff --git a/libavfilter/vf_yadif.c b/libavfilter/vf_yadif.c
index 2783086bca..cbbe7614b9 100644
--- a/libavfilter/vf_yadif.c
+++ b/libavfilter/vf_yadif.c
@@ -412,7 +412,7 @@ static av_cold int init(AVFilterContext *ctx, const char *args)
yadif->filter_line = filter_line_c;
- if (HAVE_MMX)
+ if (ARCH_X86)
ff_yadif_init_x86(yadif);
av_log(ctx, AV_LOG_VERBOSE, "mode:%d parity:%d auto_enable:%d\n",
diff --git a/libavfilter/x86/Makefile b/libavfilter/x86/Makefile
index 46fc84f3ec..4289f924da 100644
--- a/libavfilter/x86/Makefile
+++ b/libavfilter/x86/Makefile
@@ -1,3 +1,4 @@
-MMX-OBJS-$(CONFIG_YADIF_FILTER) += x86/yadif.o
-MMX-OBJS-$(CONFIG_GRADFUN_FILTER) += x86/gradfun.o
+OBJS-$(CONFIG_GRADFUN_FILTER) += x86/gradfun.o
+OBJS-$(CONFIG_YADIF_FILTER) += x86/yadif.o
+
YASM-OBJS-$(CONFIG_HQDN3D_FILTER) += x86/hqdn3d.o
diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c
index 16ef2749f1..da571a8ee8 100644
--- a/libavformat/rtspdec.c
+++ b/libavformat/rtspdec.c
@@ -621,6 +621,10 @@ static int rtsp_listen(AVFormatContext *s)
/* ff_url_join. No authorization by now (NULL) */
ff_url_join(rt->control_uri, sizeof(rt->control_uri), "rtsp", NULL, host,
port, "%s", path);
+
+ if (port < 0)
+ port = RTSP_DEFAULT_PORT;
+
/* Create TCP connection */
ff_url_join(tcpname, sizeof(tcpname), "tcp", NULL, host, port,
"?listen&listen_timeout=%d", rt->initial_timeout * 1000);
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index 4997bf2158..ef7a16ae06 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -173,6 +173,14 @@ enum AVPixelFormat {
AV_PIX_FMT_GBRP16BE, ///< planar GBR 4:4:4 48bpp, big endian
AV_PIX_FMT_GBRP16LE, ///< planar GBR 4:4:4 48bpp, little endian
+ /**
+ * duplicated pixel formats for compatibility with libav.
+ * FFmpeg supports these formats since May 8 2012 and Jan 28 2012 (commits f9ca1ac7 and 143a5c55)
+ * Libav added them Oct 12 2012 with incompatible values (commit 6d5600e85)
+ */
+ AV_PIX_FMT_YUVA422P_LIBAV, ///< planar YUV 4:2:2 24bpp, (1 Cr & Cb sample per 2x1 Y & A samples)
+ AV_PIX_FMT_YUVA444P_LIBAV, ///< planar YUV 4:4:4 32bpp, (1 Cr & Cb sample per 1x1 Y & A samples)
+
#ifndef AV_PIX_FMT_ABI_GIT_MASTER
AV_PIX_FMT_RGBA64BE=0x123, ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
AV_PIX_FMT_RGBA64LE, ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
@@ -210,6 +218,12 @@ enum AVPixelFormat {
#endif
};
+#if AV_HAVE_INCOMPATIBLE_FORK_ABI
+#define AV_PIX_FMT_YUVA422P AV_PIX_FMT_YUVA422P_LIBAV
+#define AV_PIX_FMT_YUVA444P AV_PIX_FMT_YUVA444P_LIBAV
+#endif
+
+
#define AV_PIX_FMT_Y400A AV_PIX_FMT_GRAY8A
#define AV_PIX_FMT_GBR24P AV_PIX_FMT_GBRP