diff options
Diffstat (limited to 'multimedia/mediatomb/mediatomb-0.12.1-libmp4v2_191_p479.patch')
-rw-r--r-- | multimedia/mediatomb/mediatomb-0.12.1-libmp4v2_191_p479.patch | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/multimedia/mediatomb/mediatomb-0.12.1-libmp4v2_191_p479.patch b/multimedia/mediatomb/mediatomb-0.12.1-libmp4v2_191_p479.patch deleted file mode 100644 index 6a6b51e1e0..0000000000 --- a/multimedia/mediatomb/mediatomb-0.12.1-libmp4v2_191_p479.patch +++ /dev/null @@ -1,187 +0,0 @@ -diff -urN old/src/metadata/libmp4v2_handler.cc new/src/metadata/libmp4v2_handler.cc ---- old/src/metadata/libmp4v2_handler.cc 2012-04-05 01:46:26.000000000 +0200 -+++ new/src/metadata/libmp4v2_handler.cc 2012-04-05 02:01:24.000000000 +0200 -@@ -65,29 +65,28 @@ - static void addMetaField(metadata_fields_t field, MP4FileHandle mp4, Ref<CdsItem> item) - { - String value; -- char* mp4_retval = NULL; -- u_int16_t track; -- u_int16_t total_tracks; -- - Ref<StringConverter> sc = StringConverter::i2i(); - -+ const MP4Tags* new_tags = MP4TagsAlloc(); -+ -+ if (!MP4TagsFetch(new_tags, mp4)) -+ return; -+ - switch (field) - { - case M_TITLE: -- MP4GetMetadataName(mp4, &mp4_retval); -+ value = new_tags->name; - break; - case M_ARTIST: -- MP4GetMetadataArtist(mp4, &mp4_retval); -+ value = new_tags->artist; - break; - case M_ALBUM: -- MP4GetMetadataAlbum(mp4, &mp4_retval); -+ value = new_tags->album; - break; - case M_DATE: -- MP4GetMetadataYear(mp4, &mp4_retval); -- if (mp4_retval) -+ value = new_tags->releaseDate; -+ if (value.length() > 0) - { -- value = mp4_retval; -- free(mp4_retval); - if (string_ok(value)) - value = value + "-01-01"; - else -@@ -95,34 +94,31 @@ - } - break; - case M_GENRE: -- MP4GetMetadataGenre(mp4, &mp4_retval); -+ value = new_tags->genre; - break; - case M_DESCRIPTION: -- MP4GetMetadataComment(mp4, &mp4_retval); -+ value = new_tags->comments; - break; - case M_TRACKNUMBER: -- MP4GetMetadataTrack(mp4, &track, &total_tracks); -- if (track > 0) -+ if (new_tags->track) - { -- value = String::from(track); -- item->setTrackNumber((int)track); -+ value = String::from(new_tags->track->index); -+ item->setTrackNumber((int)new_tags->track->index); - } - else -+ { -+ MP4TagsFree( new_tags ); - return; -+ } - break; - default: -+ MP4TagsFree( new_tags ); - return; - } - -- if ((field != M_DATE) && (field != M_TRACKNUMBER) && -- (mp4_retval)) -- { -- value = mp4_retval; -- free(mp4_retval); -- } -- -+ MP4TagsFree( new_tags ); - value = trim_string(value); -- -+ - if (string_ok(value)) - { - item->setMetadata(MT_KEYS[field].upnp, sc->convert(value)); -@@ -190,14 +186,19 @@ - } - - #if defined(HAVE_MAGIC) -- u_int8_t *art_data; -- u_int32_t art_data_len; -+ void *art_data = 0; -+ u_int32_t art_data_len = 0; - String art_mimetype; -+ -+ const MP4Tags* new_tags = MP4TagsAlloc(); -+ MP4TagsFetch(new_tags, mp4); -+ if (new_tags->artworkCount) -+ { -+ art_data = new_tags->artwork->data; -+ art_data_len = new_tags->artwork->size; -+ } - #ifdef HAVE_MP4_GET_METADATA_COVER_ART_COUNT -- if (MP4GetMetadataCoverArtCount(mp4) && -- MP4GetMetadataCoverArt(mp4, &art_data, &art_data_len)) --#else -- MP4GetMetadataCoverArt(mp4, &art_data, &art_data_len); -+ if (new_tags->artworkCount && art_data_len > 0) - #endif - { - if (art_data) -@@ -211,11 +212,10 @@ - } - catch (Exception ex) - { -- free(art_data); -+ MP4TagsFree(new_tags); - throw ex; - } - -- free(art_data); - if (art_mimetype != _(MIMETYPE_DEFAULT)) - { - Ref<CdsResource> resource(new CdsResource(CH_MP4)); -@@ -225,6 +225,7 @@ - } - } - } -+ MP4TagsFree(new_tags); - #endif - MP4Close(mp4); - } -@@ -249,26 +250,35 @@ - - if (ctype != ID3_ALBUM_ART) - throw _Exception(_("LibMP4V2Handler: got unknown content type: ") + ctype); -+ -+ const MP4Tags* new_tags = MP4TagsAlloc(); -+ if (MP4TagsFetch(new_tags, mp4)) -+ { - #ifdef HAVE_MP4_GET_METADATA_COVER_ART_COUNT -- if (!MP4GetMetadataCoverArtCount(mp4)) -- throw _Exception(_("LibMP4V2Handler: resource has no album art information")); -+ if (!new_tags->artworkCount) -+ throw _Exception(_("LibMP4V2Handler: resource has no album art information")); - #endif -- u_int8_t *art_data; -- u_int32_t art_data_len; -- if (MP4GetMetadataCoverArt(mp4, &art_data, &art_data_len)) -- { -- if (art_data) -+ void *art_data = 0; -+ u_int32_t art_data_len; -+ -+ const MP4TagArtwork* art = new_tags->artwork; -+ art_data = art->data; -+ art_data_len = art->size; -+ if (art) - { -- *data_size = (off_t)art_data_len; -- Ref<IOHandler> h(new MemIOHandler((void *)art_data, art_data_len)); -- free(art_data); -- return h; -+ if (art_data) -+ { -+ *data_size = (off_t)art_data_len; -+ Ref<IOHandler> h(new MemIOHandler(art_data, art_data_len)); -+ MP4TagsFree(new_tags); -+ return h; -+ } - } -+ MP4TagsFree(new_tags); - } -- - throw _Exception(_("LibMP4V2Handler: could not serve album art " -- "for file") + item->getLocation() + -- " - embedded image not found"); -+ "for file") + item->getLocation() + -+ " - embedded image not found"); - } - - #endif // HAVE_LIBMP4V2 -De binära filerna old/src/metadata/.libmp4v2_handler.cc.swp och new/src/metadata/.libmp4v2_handler.cc.swp skiljer |