summaryrefslogtreecommitdiffstats
path: root/package/freerdp
diff options
context:
space:
mode:
authorBernd Kuhls <bernd.kuhls@t-online.de>2014-08-03 00:11:17 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2014-08-03 10:22:23 +0200
commitbf76f4319131a107b2dd4ee5ee1eb703825ddbed (patch)
tree2b92224f698e9c98e54667ce365199060167b2af /package/freerdp
parent72b32d5197d4227ce80339388849fe39a996e441 (diff)
downloadbuildroot-bf76f4319131a107b2dd4ee5ee1eb703825ddbed.tar.gz
buildroot-bf76f4319131a107b2dd4ee5ee1eb703825ddbed.zip
package/ffmpeg: Bump to version 2.3.1
- remove obsolete option --disable-vis - add patch to fix compile error with uClibc - add patch to fix compile error in freerdp Compile-tested against all packages depending on ffmpeg using this defconfig: BR2_TOOLCHAIN_EXTERNAL=y BR2_PACKAGE_GSTREAMER=y BR2_PACKAGE_GST_FFMPEG=y BR2_PACKAGE_MPD=y BR2_PACKAGE_MPD_FFMPEG=y BR2_PACKAGE_XORG7=y BR2_PACKAGE_FREERDP=y BR2_PACKAGE_OPENCV=y BR2_PACKAGE_OPENCV_WITH_FFMPEG=y BR2_PACKAGE_MEDIASTREAMER=y BR2_PACKAGE_MINIDLNA=y VLC also compiled when the build of vlc-static is disabled in Makefiles, otherwise this known error occurs: http://autobuild.buildroot.net/results/022/022252176c051ff3365b2cb820f32aafc802803a/ Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/freerdp')
-rw-r--r--package/freerdp/freerdp-0001-ffmpeg.patch78
1 files changed, 78 insertions, 0 deletions
diff --git a/package/freerdp/freerdp-0001-ffmpeg.patch b/package/freerdp/freerdp-0001-ffmpeg.patch
new file mode 100644
index 0000000000..4f9820abea
--- /dev/null
+++ b/package/freerdp/freerdp-0001-ffmpeg.patch
@@ -0,0 +1,78 @@
+Fix freerdp compile with newer ffmpeg versions.
+
+Downloaded from https://github.com/pld-linux/freerdp/blob/master/freerdp-ffmpeg.patch
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+--- freerdp-1.0.2/channels/drdynvc/tsmf/ffmpeg/tsmf_ffmpeg.c.orig 2013-01-02 22:46:59.000000000 +0100
++++ freerdp-1.0.2/channels/drdynvc/tsmf/ffmpeg/tsmf_ffmpeg.c 2013-09-26 18:29:52.693695785 +0200
+@@ -39,7 +39,7 @@
+ ITSMFDecoder iface;
+
+ int media_type;
+- enum CodecID codec_id;
++ enum AVCodecID codec_id;
+ AVCodecContext* codec_context;
+ AVCodec* codec;
+ AVFrame* frame;
+@@ -54,7 +54,7 @@
+ {
+ TSMFFFmpegDecoder* mdecoder = (TSMFFFmpegDecoder*) decoder;
+
+- mdecoder->codec_context = avcodec_alloc_context();
++ mdecoder->codec_context = avcodec_alloc_context3(NULL);
+ if (!mdecoder->codec_context)
+ {
+ DEBUG_WARN("avcodec_alloc_context failed.");
+@@ -88,16 +88,6 @@
+ mdecoder->codec_context->channels = media_type->Channels;
+ mdecoder->codec_context->block_align = media_type->BlockAlign;
+
+-#ifdef AV_CPU_FLAG_SSE2
+- mdecoder->codec_context->dsp_mask = AV_CPU_FLAG_SSE2 | AV_CPU_FLAG_MMX2;
+-#else
+-#if LIBAVCODEC_VERSION_MAJOR < 53
+- mdecoder->codec_context->dsp_mask = FF_MM_SSE2 | FF_MM_MMXEXT;
+-#else
+- mdecoder->codec_context->dsp_mask = FF_MM_SSE2 | FF_MM_MMX2;
+-#endif
+-#endif
+-
+ return true;
+ }
+
+@@ -174,7 +164,7 @@
+ {
+ TSMFFFmpegDecoder* mdecoder = (TSMFFFmpegDecoder*) decoder;
+
+- if (avcodec_open(mdecoder->codec_context, mdecoder->codec) < 0)
++ if (avcodec_open2(mdecoder->codec_context, mdecoder->codec, NULL) < 0)
+ {
+ DEBUG_WARN("avcodec_open failed.");
+ return false;
+@@ -337,7 +327,7 @@
+ #endif
+
+ if (mdecoder->decoded_size_max == 0)
+- mdecoder->decoded_size_max = AVCODEC_MAX_AUDIO_FRAME_SIZE + 16;
++ mdecoder->decoded_size_max = 192000 /* AVCODEC_MAX_AUDIO_FRAME_SIZE */ + 16;
+ mdecoder->decoded_data = xzalloc(mdecoder->decoded_size_max);
+ /* align the memory for SSE2 needs */
+ dst = (uint8*) (((uintptr_t)mdecoder->decoded_data + 15) & ~ 0x0F);
+@@ -348,7 +338,7 @@
+ while (src_size > 0)
+ {
+ /* Ensure enough space for decoding */
+- if (mdecoder->decoded_size_max - mdecoder->decoded_size < AVCODEC_MAX_AUDIO_FRAME_SIZE)
++ if (mdecoder->decoded_size_max - mdecoder->decoded_size < 192000 /* AVCODEC_MAX_AUDIO_FRAME_SIZE */)
+ {
+ mdecoder->decoded_size_max = mdecoder->decoded_size_max * 2 + 16;
+ mdecoder->decoded_data = xrealloc(mdecoder->decoded_data, mdecoder->decoded_size_max);
+@@ -499,7 +489,6 @@
+
+ if (!initialized)
+ {
+- avcodec_init();
+ avcodec_register_all();
+ initialized = true;
+ }
OpenPOWER on IntegriCloud