summaryrefslogtreecommitdiff
path: root/multimedia/miro
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia/miro')
-rw-r--r--multimedia/miro/ffmpeg-0.8.patch126
-rw-r--r--multimedia/miro/ffmpeg-api-change.patch57
-rw-r--r--multimedia/miro/miro-gdb-fix.patch21
-rw-r--r--multimedia/miro/miro.SlackBuild10
-rw-r--r--multimedia/miro/miro.info8
5 files changed, 88 insertions, 134 deletions
diff --git a/multimedia/miro/ffmpeg-0.8.patch b/multimedia/miro/ffmpeg-0.8.patch
deleted file mode 100644
index 622e080dc5..0000000000
--- a/multimedia/miro/ffmpeg-0.8.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-diff -Naur miro-4.0.3.orig/linux/miro-segmenter.c miro-4.0.3/linux/miro-segmenter.c
---- miro-4.0.3.orig/linux/miro-segmenter.c 2011-08-10 17:53:51.000000000 +0000
-+++ miro-4.0.3/linux/miro-segmenter.c 2011-12-18 23:14:21.423409001 +0000
-@@ -60,7 +60,11 @@
- }
-
- switch (input_codec_context->codec_type) {
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ case AVMEDIA_TYPE_AUDIO:
-+#else
- case CODEC_TYPE_AUDIO:
-+#endif
- output_codec_context->channel_layout = input_codec_context->channel_layout;
- output_codec_context->sample_rate = input_codec_context->sample_rate;
- output_codec_context->channels = input_codec_context->channels;
-@@ -72,7 +76,11 @@
- output_codec_context->block_align = input_codec_context->block_align;
- }
- break;
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ case AVMEDIA_TYPE_VIDEO:
-+#else
- case CODEC_TYPE_VIDEO:
-+#endif
- output_codec_context->pix_fmt = input_codec_context->pix_fmt;
- output_codec_context->width = input_codec_context->width;
- output_codec_context->height = input_codec_context->height;
-@@ -154,7 +162,11 @@
- exit(1);
- }
-
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ ofmt = av_guess_format("mpegts", NULL, NULL);
-+#else
- ofmt = guess_format("mpegts", NULL, NULL);
-+#endif
- if (!ofmt) {
- fprintf(stderr, "Could not find MPEG-TS muxer\n");
- exit(1);
-@@ -174,12 +186,20 @@
-
- for (i = 0; i < ic->nb_streams && (video_index < 0 || audio_index < 0); i++) {
- switch (ic->streams[i]->codec->codec_type) {
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ case AVMEDIA_TYPE_VIDEO:
-+#else
- case CODEC_TYPE_VIDEO:
-+#endif
- video_index = i;
- ic->streams[i]->discard = AVDISCARD_NONE;
- video_st = add_output_stream(oc, ic->streams[i]);
- break;
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ case AVMEDIA_TYPE_AUDIO:
-+#else
- case CODEC_TYPE_AUDIO:
-+#endif
- audio_index = i;
- ic->streams[i]->discard = AVDISCARD_NONE;
- audio_st = add_output_stream(oc, ic->streams[i]);
-@@ -195,7 +215,11 @@
- exit(1);
- }
-
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ av_dump_format(oc, 0, input, 1);
-+#else
- dump_format(oc, 0, input, 1);
-+#endif
-
- if (video_st) {
- codec = avcodec_find_decoder(video_st->codec->codec_id);
-@@ -208,7 +232,11 @@
- }
- }
-
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ if (avio_open(&oc->pb, output_filename, URL_WRONLY) < 0) {
-+#else
- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
-+#endif
- fprintf(stderr, "Could not open '%s'\n", output_filename);
- exit(1);
- }
-@@ -234,7 +262,11 @@
- break;
- }
-
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ if (packet.stream_index == video_index && (packet.flags & AV_PKT_FLAG_KEY)) {
-+#else
- if (packet.stream_index == video_index && (packet.flags & PKT_FLAG_KEY)) {
-+#endif
- segment_time = (double)video_st->pts.val * video_st->time_base.num / video_st->time_base.den;
- }
- else if (video_index < 0) {
-@@ -245,10 +277,17 @@
- }
-
- if (segment_time - prev_segment_time >= segment_duration) {
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ avio_flush(oc->pb);
-+ avio_close(oc->pb);
-+
-+ if (avio_open(&oc->pb, output_filename, URL_WRONLY) < 0) {
-+#else
- put_flush_packet(oc->pb);
- url_fclose(oc->pb);
-
- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
-+#endif
- fprintf(stderr, "Could not open '%s'\n", output_filename);
- break;
- }
-@@ -278,7 +317,11 @@
- av_freep(&oc->streams[i]);
- }
-
-+#if LIBAVFORMAT_VERSION_MAJOR > 52
-+ avio_close(oc->pb);
-+#else
- url_fclose(oc->pb);
-+#endif
- av_free(oc);
-
- return 0;
diff --git a/multimedia/miro/ffmpeg-api-change.patch b/multimedia/miro/ffmpeg-api-change.patch
new file mode 100644
index 0000000000..c281635685
--- /dev/null
+++ b/multimedia/miro/ffmpeg-api-change.patch
@@ -0,0 +1,57 @@
+diff -Naur miro-4.0.4.orig/linux/miro-segmenter.c miro-4.0.4/linux/miro-segmenter.c
+--- miro-4.0.4.orig/linux/miro-segmenter.c 2011-12-22 14:45:47.000000000 +0000
++++ miro-4.0.4/linux/miro-segmenter.c 2011-12-28 22:22:48.550499302 +0000
+@@ -220,7 +220,11 @@
+ exit(1);
+ }
+
++#if LIBAVFORMAT_VERSION_MAJOR > 52
++ av_dump_format(oc, 0, input, 1);
++#else
+ dump_format(oc, 0, input, 1);
++#endif
+
+ if (video_st) {
+ codec = avcodec_find_decoder(video_st->codec->codec_id);
+@@ -233,7 +237,11 @@
+ }
+ }
+
++#if LIBAVFORMAT_VERSION_MAJOR > 52
++ if (avio_open(&oc->pb, output_filename, URL_WRONLY) < 0) {
++#else
+ if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
++#endif
+ fprintf(stderr, "Could not open '%s'\n", output_filename);
+ exit(1);
+ }
+@@ -274,10 +282,17 @@
+ }
+
+ if (segment_time - prev_segment_time >= segment_duration) {
++#if LIBAVFORMAT_VERSION_MAJOR > 52
++ avio_flush(oc->pb);
++ avio_close(oc->pb);
++
++ if (avio_open(&oc->pb, output_filename, URL_WRONLY) < 0) {
++#else
+ put_flush_packet(oc->pb);
+ url_fclose(oc->pb);
+
+ if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
++#endif
+ fprintf(stderr, "Could not open '%s'\n", output_filename);
+ break;
+ }
+@@ -307,7 +322,11 @@
+ av_freep(&oc->streams[i]);
+ }
+
++#if LIBAVFORMAT_VERSION_MAJOR > 52
++ avio_close(oc->pb);
++#else
+ url_fclose(oc->pb);
++#endif
+ av_free(oc);
+
+ /* End-of-transcode marker. */
diff --git a/multimedia/miro/miro-gdb-fix.patch b/multimedia/miro/miro-gdb-fix.patch
new file mode 100644
index 0000000000..c14e384109
--- /dev/null
+++ b/multimedia/miro/miro-gdb-fix.patch
@@ -0,0 +1,21 @@
+diff -Naur miro-4.0.4.orig/linux/miro miro-4.0.4/linux/miro
+--- miro-4.0.4.orig/linux/miro 2011-12-22 14:45:47.000000000 +0000
++++ miro-4.0.4/linux/miro 2011-12-28 21:26:20.298219802 +0000
+@@ -42,7 +42,7 @@
+ then
+ MIROREAL=./miro.real
+ else
+- MIROREAL=`which gdb`
++ MIROREAL=`which miro.real`
+ fi
+
+ echo "using ${MIROREAL}"
+@@ -60,7 +60,7 @@
+ fi
+
+ $GDB -ex 'set breakpoint pending on' \
+- -ex 'run' --args $PYTHON ./miro.real --sync "$@"
++ -ex 'run' --args $PYTHON $MIROREAL --sync "$@"
+ else
+ miro.real "$@"
+ fi
diff --git a/multimedia/miro/miro.SlackBuild b/multimedia/miro/miro.SlackBuild
index fb8027430e..bee0a34a4b 100644
--- a/multimedia/miro/miro.SlackBuild
+++ b/multimedia/miro/miro.SlackBuild
@@ -23,8 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=miro
-VERSION=4.0.3
-BUILD=${BUILD:-2}
+VERSION=4.0.4
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -70,7 +70,9 @@ find . \
-exec chmod 644 {} \;
# Patch to build against ffmpeg 0.6.x, 0.7.x and 0.8.x.
-patch -p1 < $CWD/ffmpeg-0.8.patch
+patch -p1 < $CWD/ffmpeg-api-change.patch
+# Patch to fix the gdb call from miro.
+patch -p1 < $CWD/miro-gdb-fix.patch
cd linux
sed -i 's|share/man|man|' setup.py
@@ -83,7 +85,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
# Remove unneeded files.
PYVER=$(python -c 'import sys; print sys.version[:3]')
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/python${PYVER}/site-packages/miro/test
-rm -rf $PKG/usr/share/miro/resources/testdata
+rm -rf $PKG/usr/share/${PRGNAM}/resources/testdata
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
diff --git a/multimedia/miro/miro.info b/multimedia/miro/miro.info
index d05e832e88..775dd9fb44 100644
--- a/multimedia/miro/miro.info
+++ b/multimedia/miro/miro.info
@@ -1,10 +1,10 @@
PRGNAM="miro"
-VERSION="4.0.3"
+VERSION="4.0.4"
HOMEPAGE="http://www.getmiro.com/"
-DOWNLOAD="http://ftp.osuosl.org/pub/pculture.org/miro/src/miro-4.0.3.tar.gz"
-MD5SUM="43c84f844ac7a68f2ff019b212755475"
+DOWNLOAD="http://ftp.osuosl.org/pub/pculture.org/miro/src/miro-4.0.4.tar.gz"
+MD5SUM="8bdd477eeda7e9420c29dd7db390a4d8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
-APPROVED="rworkman"
+APPROVED="rworkman,Niels Horn"