summaryrefslogtreecommitdiff
path: root/media-sound/xmms2/files/xmms2-0.8-audio4-p6.patch
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/xmms2/files/xmms2-0.8-audio4-p6.patch')
-rw-r--r--media-sound/xmms2/files/xmms2-0.8-audio4-p6.patch106
1 files changed, 0 insertions, 106 deletions
diff --git a/media-sound/xmms2/files/xmms2-0.8-audio4-p6.patch b/media-sound/xmms2/files/xmms2-0.8-audio4-p6.patch
deleted file mode 100644
index b1bc1c5d609b..000000000000
--- a/media-sound/xmms2/files/xmms2-0.8-audio4-p6.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-commit fc66249e69f53eef709c5210546fdd92e1c89554
-Author: Erik Massop <e.massop@hccnet.nl>
-Date: Sun Dec 22 23:04:08 2013 +0100
-
- OTHER: Some compatibility with different avcodec versions
-
-diff --git a/src/plugins/avcodec/avcodec.c b/src/plugins/avcodec/avcodec.c
-index a41a675..023833d 100644
---- a/src/plugins/avcodec/avcodec.c
-+++ b/src/plugins/avcodec/avcodec.c
-@@ -124,7 +124,7 @@ xmms_avcodec_destroy (xmms_xform_t *xform)
-
- avcodec_close (data->codecctx);
- av_free (data->codecctx);
-- avcodec_free_frame (&data->read_out_frame);
-+ av_frame_free (&data->read_out_frame);
-
- g_string_free (data->outbuf, TRUE);
- g_free (data->buffer);
-@@ -150,7 +150,7 @@ xmms_avcodec_init (xmms_xform_t *xform)
- data->buffer_size = AVCODEC_BUFFER_SIZE;
- data->codecctx = NULL;
-
-- data->read_out_frame = avcodec_alloc_frame ();
-+ data->read_out_frame = av_frame_alloc ();
-
- xmms_xform_private_data_set (xform, data);
-
-@@ -231,7 +231,6 @@ xmms_avcodec_init (xmms_xform_t *xform)
- data->codecctx->extradata_size = data->extradata_size;
- data->codecctx->codec_id = codec->id;
- data->codecctx->codec_type = codec->type;
-- data->codecctx->refcounted_frames = 0;
-
- if (avcodec_open2 (data->codecctx, codec, NULL) < 0) {
- XMMS_DBG ("Opening decoder '%s' failed", codec->name);
-@@ -473,7 +472,8 @@ xmms_avcodec_internal_decode_some (xmms_avcodec_data_t *data)
- packet.data = data->buffer;
- packet.size = data->buffer_length;
-
-- avcodec_get_frame_defaults (data->read_out_frame);
-+ /* clear buffers and reset fields to defaults */
-+ av_frame_unref (data->read_out_frame);
-
- bytes_read = avcodec_decode_audio4 (
- data->codecctx, data->read_out_frame, &got_frame, &packet);
-diff --git a/src/plugins/avcodec/avcodec_compat.h b/src/plugins/avcodec/avcodec_compat.h
-index 73ac2ab..e74b3f8 100644
---- a/src/plugins/avcodec/avcodec_compat.h
-+++ b/src/plugins/avcodec/avcodec_compat.h
-@@ -83,3 +83,17 @@ typedef struct AVPacket {
- # define avcodec_open2(avctx, codec, options) \
- avcodec_open(avctx, codec)
- #endif
-+
-+/* Map avcodec_free_frame to av_freep if the former doesn't exist.
-+ * (This is in versions earlier than 54.28.0 (libav) or 54.59.100 (ffmpeg)) */
-+#if ! HAVE_AVCODEC_FREE_FRAME
-+# define avcodec_free_frame av_freep
-+#endif
-+
-+/* Map av_frame_alloc, av_frame_unref, av_frame_free into their
-+ * deprecated versions in versions earlier than 55.28.1 */
-+#if LIBAVCODEC_VERSION_INT < 0x371c01
-+# define av_frame_alloc avcodec_alloc_frame
-+# define av_frame_unref avcodec_get_frame_defaults
-+# define av_frame_free avcodec_free_frame
-+#endif
-diff --git a/src/plugins/avcodec/wscript b/src/plugins/avcodec/wscript
-index 03ba7d8..d367816 100644
---- a/src/plugins/avcodec/wscript
-+++ b/src/plugins/avcodec/wscript
-@@ -1,10 +1,33 @@
- from waftools.plugin import plugin
-
-+## Code fragments for configuration
-+avcodec_free_frame_fragment = """
-+#ifdef HAVE_LIBAVCODEC_AVCODEC_H
-+# include "libavcodec/avcodec.h"
-+#else
-+# include "avcodec.h"
-+#endif
-+int main(void) {
-+ AVFrame *frame;
-+
-+ avcodec_free_frame (&frame);
-+
-+ return 0;
-+}
-+"""
-+
- def plugin_configure(conf):
- conf.check_cfg(package="libavcodec", uselib_store="avcodec",
- args="--cflags --libs")
- conf.check_cc(header_name="avcodec.h", uselib="avcodec", type="cshlib", mandatory=False)
- conf.check_cc(header_name="libavcodec/avcodec.h", uselib="avcodec", type="cshlib", mandatory=False)
-
-+ # non-mandatory function avcodec_free_frame since
-+ # * ffmpeg: commit 46a3595, lavc 54.59.100, release 1.0
-+ # * libav: commit a42aada, lavc 54.28.0, release 9
-+ conf.check_cc(fragment=avcodec_free_frame_fragment, uselib="avcodec",
-+ uselib_store="avcodec_free_frame",
-+ msg="Checking for function avcodec_free_frame", mandatory=False)
-+
- configure, build = plugin('avcodec', configure=plugin_configure,
- libs=["avcodec"])