diff options
Diffstat (limited to 'extra/ffmpegthumbnailer')
-rw-r--r-- | extra/ffmpegthumbnailer/PKGBUILD | 13 | ||||
-rw-r--r-- | extra/ffmpegthumbnailer/ffmpegapi_fix_r241.patch | 56 |
2 files changed, 65 insertions, 4 deletions
diff --git a/extra/ffmpegthumbnailer/PKGBUILD b/extra/ffmpegthumbnailer/PKGBUILD index 7cc1baea4..c611db88b 100644 --- a/extra/ffmpegthumbnailer/PKGBUILD +++ b/extra/ffmpegthumbnailer/PKGBUILD @@ -4,7 +4,7 @@ pkgname=ffmpegthumbnailer pkgver=2.0.7 -pkgrel=3 +pkgrel=4 pkgdesc="Lightweight video thumbnailer that can be used by file managers." url="http://code.google.com/p/ffmpegthumbnailer/" license=('GPL2') @@ -12,14 +12,18 @@ arch=('i686' 'x86_64') depends=('ffmpeg' 'libjpeg' 'libpng') optdepends=('gvfs: support for gio uris') source=("http://ffmpegthumbnailer.googlecode.com/files/$pkgname-$pkgver.tar.gz" - 'ffmpegthumbnailer.desktop') + 'ffmpegthumbnailer.desktop' 'ffmpegapi_fix_r241.patch') options=('!libtool') sha1sums=('b8f5371aa995fefd1fb75e306e8cd76e8c9f3a73' - 'bdd3ae35a5c6f0e1f4b0c7926f72b3429b2eaa53') + 'bdd3ae35a5c6f0e1f4b0c7926f72b3429b2eaa53' + '4e1a6a0f06ae3ae322ea44046599ebf3ab693cb6') build() { cd "${srcdir}/${pkgname}-${pkgver}" + # Don't use deprecated (removed?) ffmpeg api + patch -Np0 -i "${srcdir}/ffmpegapi_fix_r241.patch" + ./configure --prefix=/usr --enable-gio make } @@ -29,6 +33,7 @@ package() { make DESTDIR="${pkgdir}" install # FS#24105: Generate thumbnails in nautilus + # FS#26540: Rename to .thumbnailer for nautilus install -Dm644 "${srcdir}/ffmpegthumbnailer.desktop" \ - "${pkgdir}/usr/share/thumbnailers/ffmpegthumbnailer.desktop" + "${pkgdir}/usr/share/thumbnailers/ffmpegthumbnailer.thumbnailer" } diff --git a/extra/ffmpegthumbnailer/ffmpegapi_fix_r241.patch b/extra/ffmpegthumbnailer/ffmpegapi_fix_r241.patch new file mode 100644 index 000000000..37e65b059 --- /dev/null +++ b/extra/ffmpegthumbnailer/ffmpegapi_fix_r241.patch @@ -0,0 +1,56 @@ +--- libffmpegthumbnailer/moviedecoder.cpp.old 2012-05-20 11:57:04.503450287 +0200 ++++ libffmpegthumbnailer/moviedecoder.cpp 2012-05-20 11:57:14.633450566 +0200 +@@ -58,19 +58,26 @@ + void MovieDecoder::initialize(const string& filename) + { + av_register_all(); +- avcodec_init(); + avcodec_register_all(); + + string inputFile = filename == "-" ? "pipe:" : filename; + m_AllowSeek = (filename != "-") && (filename.find("rtsp://") != 0); +- ++ ++#if LIBAVCODEC_VERSION_MAJOR < 53 + if ((!m_FormatContextWasGiven) && av_open_input_file(&m_pFormatContext, inputFile.c_str(), NULL, 0, NULL) != 0) ++#else ++ if ((!m_FormatContextWasGiven) && avformat_open_input(&m_pFormatContext, inputFile.c_str(), NULL, NULL) != 0) ++#endif + { + destroy(); + throw logic_error(string("Could not open input file: ") + filename); + } + ++#if LIBAVCODEC_VERSION_MAJOR < 53 + if (av_find_stream_info(m_pFormatContext) < 0) ++#else ++ if (avformat_find_stream_info(m_pFormatContext, NULL) < 0) ++#endif + { + destroy(); + throw logic_error(string("Could not find stream information")); +@@ -90,8 +97,12 @@ + + if ((!m_FormatContextWasGiven) && m_pFormatContext) + { ++#if LIBAVCODEC_VERSION_MAJOR < 53 + av_close_input_file(m_pFormatContext); + m_pFormatContext = NULL; ++#else ++ avformat_close_input(&m_pFormatContext); ++#endif + } + + if (m_pPacket) +@@ -159,7 +170,11 @@ + + m_pVideoCodecContext->workaround_bugs = 1; + ++#if LIBAVCODEC_VERSION_MAJOR < 53 + if (avcodec_open(m_pVideoCodecContext, m_pVideoCodec) < 0) ++#else ++ if (avcodec_open2(m_pVideoCodecContext, m_pVideoCodec, NULL) < 0) ++#endif + { + throw logic_error("Could not open video codec"); + } |