diff options
-rw-r--r-- | multimedia/miro/ffmpeg-0.8.patch | 126 | ||||
-rw-r--r-- | multimedia/miro/ffmpeg-api-change.patch | 57 | ||||
-rw-r--r-- | multimedia/miro/miro-gdb-fix.patch | 21 | ||||
-rw-r--r-- | multimedia/miro/miro.SlackBuild | 10 | ||||
-rw-r--r-- | multimedia/miro/miro.info | 8 |
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" |