diff options
author | root <root@rshg054.dnsready.net> | 2011-11-06 23:15:07 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2011-11-06 23:15:07 +0000 |
commit | a4d309341dbcd3c28ee68e818c1d5ef54114adf8 (patch) | |
tree | d8b088a03f5cb2b56b2b7508933b4efcfd67f0b2 /testing/miro | |
parent | 82fd7f658509afe9737e14e8d1ee9fefe13c9d1f (diff) |
Sun Nov 6 23:15:07 UTC 2011
Diffstat (limited to 'testing/miro')
-rw-r--r-- | testing/miro/PKGBUILD | 35 | ||||
-rw-r--r-- | testing/miro/ffmpeg.patch | 95 | ||||
-rw-r--r-- | testing/miro/miro.install | 17 |
3 files changed, 147 insertions, 0 deletions
diff --git a/testing/miro/PKGBUILD b/testing/miro/PKGBUILD new file mode 100644 index 000000000..7219c5476 --- /dev/null +++ b/testing/miro/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 142153 2011-11-05 11:38:04Z ibiru $ +# Maintainer: Ronald van Haren <ronald.archlinux.org> + +pkgname=miro +pkgver=4.0.3 +pkgrel=2 +pkgdesc="The free and open source internet TV platform" +arch=('i686' 'x86_64') +url="http://www.getmiro.com" +license=('GPL2') +depends=('dbus-python' 'pyrex' 'pygtk' 'gstreamer0.10' 'python2-gconf' + 'python-pysqlite' 'pywebkitgtk' 'shared-mime-info' + 'desktop-file-utils' 'gstreamer0.10' 'hicolor-icon-theme' + 'gstreamer0.10-python' 'python-notify' 'libtorrent-rasterbar' + 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python-pycurl' + 'gstreamer0.10-ffmpeg' 'ffmpeg' 'mutagen') +makedepends=('pkg-config') +install=miro.install +options=('!makeflags') +source=("http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz" + 'ffmpeg.patch') +sha1sums=('b08cd09d514d1af0b2403ab8dcd725b8c5d4b840' + 'f0c851d51318c0e0be8b91463ef901625d2587a9') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i "${srcdir}/ffmpeg.patch" + cd linux + + python2 setup.py install --root="${pkgdir}" + + # fix miro startup script so --debug works with python2 + sed -i "s|which python|which python2|" "${pkgdir}/usr/bin/miro" + sed -i "s|./miro.real|/usr/bin/miro.real|" "${pkgdir}/usr/bin/miro" +} diff --git a/testing/miro/ffmpeg.patch b/testing/miro/ffmpeg.patch new file mode 100644 index 000000000..edf378459 --- /dev/null +++ b/testing/miro/ffmpeg.patch @@ -0,0 +1,95 @@ +diff -urN miro-4.0.old/linux/miro-segmenter.c miro-4.0/linux/miro-segmenter.c +--- miro-4.0.old/linux/miro-segmenter.c 2011-05-25 15:58:21.000000000 +0200 ++++ miro-4.0/linux/miro-segmenter.c 2011-05-25 16:09:41.000000000 +0200 +@@ -60,7 +60,7 @@ + } + + switch (input_codec_context->codec_type) { +- case CODEC_TYPE_AUDIO: ++ case AVMEDIA_TYPE_AUDIO: + 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 +72,7 @@ + output_codec_context->block_align = input_codec_context->block_align; + } + break; +- case CODEC_TYPE_VIDEO: ++ case AVMEDIA_TYPE_VIDEO: + 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 +154,7 @@ + exit(1); + } + +- ofmt = guess_format("mpegts", NULL, NULL); ++ ofmt = av_guess_format("mpegts", NULL, NULL); + if (!ofmt) { + fprintf(stderr, "Could not find MPEG-TS muxer\n"); + exit(1); +@@ -174,12 +174,12 @@ + + for (i = 0; i < ic->nb_streams && (video_index < 0 || audio_index < 0); i++) { + switch (ic->streams[i]->codec->codec_type) { +- case CODEC_TYPE_VIDEO: ++ case AVMEDIA_TYPE_VIDEO: + video_index = i; + ic->streams[i]->discard = AVDISCARD_NONE; + video_st = add_output_stream(oc, ic->streams[i]); + break; +- case CODEC_TYPE_AUDIO: ++ case AVMEDIA_TYPE_AUDIO: + audio_index = i; + ic->streams[i]->discard = AVDISCARD_NONE; + audio_st = add_output_stream(oc, ic->streams[i]); +@@ -195,7 +195,7 @@ + exit(1); + } + +- dump_format(oc, 0, input, 1); ++ av_dump_format(oc, 0, input, 1); + + if (video_st) { + codec = avcodec_find_decoder(video_st->codec->codec_id); +@@ -208,7 +208,7 @@ + } + } + +- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) { ++ if (avio_open(&oc->pb, output_filename, URL_WRONLY) < 0) { + fprintf(stderr, "Could not open '%s'\n", output_filename); + exit(1); + } +@@ -234,7 +234,7 @@ + break; + } + +- if (packet.stream_index == video_index && (packet.flags & PKT_FLAG_KEY)) { ++ if (packet.stream_index == video_index && (packet.flags & AV_PKT_FLAG_KEY)) { + segment_time = (double)video_st->pts.val * video_st->time_base.num / video_st->time_base.den; + } + else if (video_index < 0) { +@@ -245,10 +245,10 @@ + } + + if (segment_time - prev_segment_time >= segment_duration) { +- put_flush_packet(oc->pb); +- url_fclose(oc->pb); ++ avio_flush(oc->pb); ++ avio_close(oc->pb); + +- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) { ++ if (avio_open(&oc->pb, output_filename, URL_WRONLY) < 0) { + fprintf(stderr, "Could not open '%s'\n", output_filename); + break; + } +@@ -278,7 +278,7 @@ + av_freep(&oc->streams[i]); + } + +- url_fclose(oc->pb); ++ avio_close(oc->pb); + av_free(oc); + + return 0; diff --git a/testing/miro/miro.install b/testing/miro/miro.install new file mode 100644 index 000000000..a5ee228aa --- /dev/null +++ b/testing/miro/miro.install @@ -0,0 +1,17 @@ +post_install() { + update-desktop-database -q + xdg-icon-resource forceupdate --theme hicolor + update-mime-database usr/share/mime > /dev/null +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + update-desktop-database -q + xdg-icon-resource forceupdate --theme hicolor + update-mime-database usr/share/mime > /dev/null +} + + |