summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--multimedia/mediatomb/Makefile4
-rw-r--r--multimedia/mediatomb/distinfo4
-rw-r--r--multimedia/mediatomb/patches/patch-src_metadata_ffmpeg__handler.cc58
3 files changed, 55 insertions, 11 deletions
diff --git a/multimedia/mediatomb/Makefile b/multimedia/mediatomb/Makefile
index 72efa85ce33..b430f19f846 100644
--- a/multimedia/mediatomb/Makefile
+++ b/multimedia/mediatomb/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.29 2012/10/08 09:21:08 asau Exp $
+# $NetBSD: Makefile,v 1.30 2012/11/27 20:16:40 tron Exp $
DISTNAME= mediatomb-0.12.1
-PKGREVISION= 10
+PKGREVISION= 11
CATEGORIES= multimedia
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mediatomb/}
diff --git a/multimedia/mediatomb/distinfo b/multimedia/mediatomb/distinfo
index 77fc734ea0d..6ce5cfb0547 100644
--- a/multimedia/mediatomb/distinfo
+++ b/multimedia/mediatomb/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.11 2012/09/25 11:45:11 ryoon Exp $
+$NetBSD: distinfo,v 1.12 2012/11/27 20:16:40 tron Exp $
SHA1 (mediatomb-0.12.1.tar.gz) = 86e880584cc9c8aaf3926d56048510d1d06e76b4
RMD160 (mediatomb-0.12.1.tar.gz) = ecb61ca2483f76421beef1036ac442b8f805fa96
@@ -16,7 +16,7 @@ SHA1 (patch-src_hash_dbo_hash.h) = a5d951dc6887273188b3d41b8076000857b92431
SHA1 (patch-src_hash_dbr_hash.h) = e98a4ce19f25f7e556c2c13e170aee21e57fc5cc
SHA1 (patch-src_hash_dso_hash.h) = c229373ea25b4c49708cb2d8555a9e13f5d8bb4f
SHA1 (patch-src_io__handler__buffer__helper.cc) = f1c88fab9379c322492ebf27840c20689bd8ac76
-SHA1 (patch-src_metadata_ffmpeg__handler.cc) = b343d3e065e506423872e32f35ae792306f2b50a
+SHA1 (patch-src_metadata_ffmpeg__handler.cc) = 7bee7b6b8f4a8d5c55475c2e342b724d14d8c55d
SHA1 (patch-src_tools.cc) = dddb50c51786cbb6a7c77ff5e60c22c3a57dc0fa
SHA1 (patch-src_transcoding_transcode__ext__handler.cc) = 6fe899f6b40de69561f568e1f976f6994e029260
SHA1 (patch-src_upnp__xml.cc) = 843e92c3a186c83920512ff6b7f37ba006defc21
diff --git a/multimedia/mediatomb/patches/patch-src_metadata_ffmpeg__handler.cc b/multimedia/mediatomb/patches/patch-src_metadata_ffmpeg__handler.cc
index bfd974d352e..3f09f5894dc 100644
--- a/multimedia/mediatomb/patches/patch-src_metadata_ffmpeg__handler.cc
+++ b/multimedia/mediatomb/patches/patch-src_metadata_ffmpeg__handler.cc
@@ -1,8 +1,13 @@
-$NetBSD: patch-src_metadata_ffmpeg__handler.cc,v 1.1 2012/09/25 11:45:11 ryoon Exp $
+$NetBSD: patch-src_metadata_ffmpeg__handler.cc,v 1.2 2012/11/27 20:16:40 tron Exp $
+
+Fix build with recent versions of "ffmpeg". Partially taken from this
+Debian bug report:
+
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=677959
--- src/metadata/ffmpeg_handler.cc.orig 2010-03-25 14:58:10.000000000 +0000
-+++ src/metadata/ffmpeg_handler.cc
-@@ -89,47 +89,30 @@ static void addFfmpegMetadataFields(Ref<
++++ src/metadata/ffmpeg_handler.cc 2012-11-27 20:02:25.000000000 +0000
+@@ -89,47 +89,30 @@
Ref<StringConverter> sc = StringConverter::m2i();
@@ -64,8 +69,8 @@ $NetBSD: patch-src_metadata_ffmpeg__handler.cc,v 1.1 2012/09/25 11:45:11 ryoon E
+ return;
+ for (const mapping_t *m = mapping; m->avname != NULL; m++)
+ {
-+ AVMetadataTag *tag = NULL;
-+ tag = av_metadata_get(pFormatCtx->metadata, m->avname, NULL, 0);
++ AVDictionaryEntry *tag = NULL;
++ tag = av_dict_get(pFormatCtx->metadata, m->avname, NULL, 0);
+ if (tag && tag->value && tag->value[0])
+ {
+ log_debug("Added metadata %s: %s\n", m->avname, tag->value);
@@ -74,7 +79,7 @@ $NetBSD: patch-src_metadata_ffmpeg__handler.cc,v 1.1 2012/09/25 11:45:11 ryoon E
}
}
-@@ -178,7 +161,7 @@ static void addFfmpegResourceFields(Ref<
+@@ -178,7 +161,7 @@
for(i=0; i<pFormatCtx->nb_streams; i++)
{
AVStream *st = pFormatCtx->streams[i];
@@ -83,7 +88,7 @@ $NetBSD: patch-src_metadata_ffmpeg__handler.cc,v 1.1 2012/09/25 11:45:11 ryoon E
{
if (st->codec->codec_tag > 0)
{
-@@ -209,7 +192,7 @@ static void addFfmpegResourceFields(Ref<
+@@ -209,7 +192,7 @@
*y = st->codec->height;
}
}
@@ -92,3 +97,42 @@ $NetBSD: patch-src_metadata_ffmpeg__handler.cc,v 1.1 2012/09/25 11:45:11 ryoon E
{
// Increase number of audiochannels
audioch++;
+@@ -251,7 +234,7 @@
+ int x = 0;
+ int y = 0;
+
+- AVFormatContext *pFormatCtx;
++ AVFormatContext *pFormatCtx = avformat_alloc_context();
+
+ // Suppress all log messages
+ av_log_set_callback(FfmpegNoOutputStub);
+@@ -259,15 +242,15 @@
+ // Register all formats and codecs
+ av_register_all();
+
+- // Open video file
+- if (av_open_input_file(&pFormatCtx,
+- item->getLocation().c_str(), NULL, 0, NULL) != 0)
++ // Open video file
++ if (avformat_open_input(&pFormatCtx,
++ item->getLocation().c_str(), NULL, NULL) != 0)
+ return; // Couldn't open file
+
+ // Retrieve stream information
+- if (av_find_stream_info(pFormatCtx) < 0)
++ if (avformat_find_stream_info(pFormatCtx,NULL) < 0)
+ {
+- av_close_input_file(pFormatCtx);
++ avformat_close_input(&pFormatCtx);
+ return; // Couldn't find stream information
+ }
+ // Add metadata using ffmpeg library calls
+@@ -276,7 +259,7 @@
+ addFfmpegResourceFields(item, pFormatCtx, &x, &y);
+
+ // Close the video file
+- av_close_input_file(pFormatCtx);
++ avformat_close_input(&pFormatCtx);
+ }
+
+ Ref<IOHandler> FfmpegHandler::serveContent(Ref<CdsItem> item, int resNum, off_t *data_size)