summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2014-05-09 19:16:41 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2014-05-09 19:16:41 +0000
commitfa921e531c2230ca1a71e1c79b9242f11959f987 (patch)
tree3eb08f066df770793f64669f974e99807868c36b /media-sound
parentsign (diff)
downloadgentoo-2-fa921e531c2230ca1a71e1c79b9242f11959f987.tar.gz
gentoo-2-fa921e531c2230ca1a71e1c79b9242f11959f987.tar.bz2
gentoo-2-fa921e531c2230ca1a71e1c79b9242f11959f987.zip
old
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key 4868F14D)
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/easytag/ChangeLog8
-rw-r--r--media-sound/easytag/easytag-2.1.10-r1.ebuild62
-rw-r--r--media-sound/easytag/easytag-2.1.7-r2.ebuild60
-rw-r--r--media-sound/easytag/easytag-2.1.9-r2.ebuild73
-rw-r--r--media-sound/easytag/easytag-2.2.0-r1.ebuild79
-rw-r--r--media-sound/easytag/easytag-2.2.0.ebuild76
-rw-r--r--media-sound/easytag/files/easytag-2.1.6-load-from-txt.patch14
-rw-r--r--media-sound/easytag/files/easytag-2.1.7-gold.patch30
-rw-r--r--media-sound/easytag/files/easytag-2.1.7-new_libmp4v2.patch535
9 files changed, 7 insertions, 930 deletions
diff --git a/media-sound/easytag/ChangeLog b/media-sound/easytag/ChangeLog
index 4c915e43191a..a9edff3ef552 100644
--- a/media-sound/easytag/ChangeLog
+++ b/media-sound/easytag/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-sound/easytag
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/ChangeLog,v 1.189 2014/05/09 19:15:01 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/ChangeLog,v 1.190 2014/05/09 19:16:41 ssuominen Exp $
+
+ 09 May 2014; Samuli Suominen <ssuominen@gentoo.org> -easytag-2.1.10-r1.ebuild,
+ -easytag-2.1.7-r2.ebuild, -easytag-2.1.9-r2.ebuild, -easytag-2.2.0-r1.ebuild,
+ -easytag-2.2.0.ebuild, -files/easytag-2.1.6-load-from-txt.patch,
+ -files/easytag-2.1.7-gold.patch, -files/easytag-2.1.7-new_libmp4v2.patch:
+ old
09 May 2014; Samuli Suominen <ssuominen@gentoo.org> easytag-2.2.2.ebuild:
Restore ~amd64-linux which was dropped for unknown reason.
diff --git a/media-sound/easytag/easytag-2.1.10-r1.ebuild b/media-sound/easytag/easytag-2.1.10-r1.ebuild
deleted file mode 100644
index fbc0c7972761..000000000000
--- a/media-sound/easytag/easytag-2.1.10-r1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/easytag-2.1.10-r1.ebuild,v 1.2 2014/03/21 17:00:29 jer Exp $
-
-EAPI=5
-inherit eutils autotools gnome.org fdo-mime
-
-DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags"
-HOMEPAGE="https://wiki.gnome.org/Apps/EasyTAG"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~x86"
-IUSE="flac mp3 mp4 nls speex vorbis wavpack"
-
-RDEPEND=">=x11-libs/gtk+-2.24:2
- mp3? (
- >=media-libs/id3lib-3.8.3-r7
- media-libs/libid3tag
- )
- flac? (
- media-libs/flac
- media-libs/libvorbis
- )
- mp4? ( media-libs/taglib[mp4] )
- vorbis? ( media-libs/libvorbis )
- wavpack? ( media-sound/wavpack )
- speex? (
- media-libs/speex
- media-libs/libvorbis
- )"
-DEPEND="${RDEPEND}
- app-text/yelp-tools
- dev-util/appdata-tools
- dev-util/intltool
- virtual/pkgconfig
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-2.1.8-werror.patch
- eautoreconf
-}
-
-DOCS=( AUTHORS ChangeLog HACKING NEWS README THANKS TODO )
-
-src_configure() {
- # Kludge to make easytag find its locales (bug #503698)
- export DATADIRNAME="share"
-
- econf \
- $(use_enable nls) \
- $(use_enable mp3) \
- $(use_enable mp3 id3v23) \
- $(use_enable vorbis ogg) \
- $(use_enable speex) \
- $(use_enable flac) \
- $(use_enable mp4) \
- $(use_enable wavpack)
-}
-
-pkg_postinst() { fdo-mime_desktop_database_update; }
-pkg_postrm() { fdo-mime_desktop_database_update; }
diff --git a/media-sound/easytag/easytag-2.1.7-r2.ebuild b/media-sound/easytag/easytag-2.1.7-r2.ebuild
deleted file mode 100644
index 98e8dcf896e8..000000000000
--- a/media-sound/easytag/easytag-2.1.7-r2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/easytag-2.1.7-r2.ebuild,v 1.11 2013/02/10 04:41:46 radhermit Exp $
-
-EAPI=4
-inherit eutils fdo-mime
-
-DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags"
-HOMEPAGE="http://projects.gnome.org/easytag/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="flac mp3 mp4 speex vorbis wavpack"
-
-RDEPEND=">=x11-libs/gtk+-2.12:2
- mp3? (
- >=media-libs/id3lib-3.8.3-r7
- media-libs/libid3tag
- )
- flac? (
- media-libs/flac
- media-libs/libvorbis
- )
- mp4? ( >=media-libs/libmp4v2-1.9.1:0 )
- vorbis? ( media-libs/libvorbis )
- wavpack? ( media-sound/wavpack )
- speex? (
- media-libs/speex
- media-libs/libvorbis
- )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- sys-devel/gettext"
-
-DOCS=( ChangeLog README THANKS TODO USERS-GUIDE )
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${PN}-2.1.7-gold.patch \
- "${FILESDIR}"/${PN}-2.1.6-load-from-txt.patch
-
- has_version '>=media-libs/libmp4v2-1.9.1_p479' && \
- epatch "${FILESDIR}"/${PN}-2.1.7-new_libmp4v2.patch
-}
-
-src_configure() {
- econf \
- $(use_enable mp3) \
- $(use_enable mp3 id3v23) \
- $(use_enable vorbis ogg) \
- $(use_enable flac) \
- $(use_enable mp4) \
- $(use_enable wavpack) \
- $(use_enable speex)
-}
-
-pkg_postinst() { fdo-mime_desktop_database_update; }
-pkg_postrm() { fdo-mime_desktop_database_update; }
diff --git a/media-sound/easytag/easytag-2.1.9-r2.ebuild b/media-sound/easytag/easytag-2.1.9-r2.ebuild
deleted file mode 100644
index fec8e2e75ebe..000000000000
--- a/media-sound/easytag/easytag-2.1.9-r2.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/easytag-2.1.9-r2.ebuild,v 1.1 2014/03/07 08:51:45 polynomial-c Exp $
-
-EAPI=5
-inherit eutils autotools gnome.org fdo-mime
-
-DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags"
-HOMEPAGE="http://projects.gnome.org/easytag/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="flac mp3 mp4 nls speex vorbis wavpack"
-
-SRC_URI+=" https://git.gnome.org/browse/easytag/patch/?id=dd4f3bd815bd186e3e58752e0ac7999c6c645fd7 -> ${PN}-2.1.9-g_output_stream_check_fix.patch
- https://git.gnome.org/browse/easytag/patch/?id=c01a3ee46ca0b8e35fafa5008d5b6ef5e8e66592 -> ${PN}-2.1.9-invalid_arguments_crash_fix.patch
- https://git.gnome.org/browse/easytag/patch/?id=6c70f15269bd66936b2e7d65e62c8a80bc38fc9f -> ${PN}-2.1.9-do_not_unref_gfile.patch
- https://git.gnome.org/browse/easytag/patch/?id=afad898b0394b6eafeaf6f89cf411ac5c0e96ab0 -> ${PN}-2.1.9-long_format_date_memleak_fix.patch
- https://git.gnome.org/browse/easytag/patch/?id=1d0a255ca85d964141945a29f6e92d2ba0d89714 -> ${PN}-2.1.9-parse_date_memleak_fix.patch"
-
-RDEPEND=">=x11-libs/gtk+-2.24:2
- mp3? (
- >=media-libs/id3lib-3.8.3-r7
- media-libs/libid3tag
- )
- flac? (
- media-libs/flac
- media-libs/libvorbis
- )
- mp4? ( media-libs/taglib[mp4] )
- vorbis? ( media-libs/libvorbis )
- wavpack? ( media-sound/wavpack )
- speex? (
- media-libs/speex
- media-libs/libvorbis
- )"
-DEPEND="${RDEPEND}
- app-text/yelp-tools
- dev-util/intltool
- virtual/pkgconfig
- nls? ( sys-devel/gettext )"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-2.1.8-werror.patch
- # 500654
- epatch "${DISTDIR}/${P}-g_output_stream_check_fix.patch" \
- "${DISTDIR}/${P}-invalid_arguments_crash_fix.patch" \
- "${DISTDIR}/${P}-do_not_unref_gfile.patch" \
- "${DISTDIR}/${P}-long_format_date_memleak_fix.patch" \
- "${DISTDIR}/${P}-parse_date_memleak_fix.patch"
- eautoreconf
-}
-
-DOCS=( AUTHORS ChangeLog HACKING NEWS README THANKS TODO )
-
-src_configure() {
- # Kludge to make easytag find its locales (bug #503698)
- export DATADIRNAME="share"
-
- econf \
- $(use_enable nls) \
- $(use_enable mp3) \
- $(use_enable mp3 id3v23) \
- $(use_enable vorbis ogg) \
- $(use_enable speex) \
- $(use_enable flac) \
- $(use_enable mp4) \
- $(use_enable wavpack)
-}
-
-pkg_postinst() { fdo-mime_desktop_database_update; }
-pkg_postrm() { fdo-mime_desktop_database_update; }
diff --git a/media-sound/easytag/easytag-2.2.0-r1.ebuild b/media-sound/easytag/easytag-2.2.0-r1.ebuild
deleted file mode 100644
index d4d165e7a01a..000000000000
--- a/media-sound/easytag/easytag-2.2.0-r1.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/easytag-2.2.0-r1.ebuild,v 1.1 2014/04/20 08:17:07 yngwin Exp $
-
-EAPI=5
-inherit gnome.org gnome2-utils fdo-mime
-
-DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags"
-HOMEPAGE="https://wiki.gnome.org/Apps/EasyTAG"
-
-LICENSE="GPL-2 GPL-2+ LGPL-2 LGPL-2+ LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~x86 ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="flac gtk2 +gtk3 mp3 opus speex test wavpack"
-REQUIRED_USE="|| ( gtk2 gtk3 )"
-
-RDEPEND=">=dev-libs/glib-2.32:2
- >=media-libs/libogg-1.3.1
- >=media-libs/libvorbis-1.3.4
- >=media-libs/taglib-1.9.1[mp4]
- flac? ( >=media-libs/flac-1.3 )
- gtk2? ( >=x11-libs/gtk+-2.24:2 )
- gtk3? ( >=x11-libs/gtk+-3.4:3 )
- mp3? (
- >=media-libs/id3lib-3.8.3-r8
- >=media-libs/libid3tag-0.15.1b-r4
- )
- opus? (
- >=media-libs/opus-1.1
- >=media-libs/opusfile-0.4
- )
- speex? ( >=media-libs/speex-1.2_rc1 )
- wavpack? ( >=media-sound/wavpack-4.70 )"
-DEPEND="${RDEPEND}
- app-text/docbook-xml-dtd:4.4
- app-text/yelp-tools
- dev-libs/libxml2
- dev-libs/libxslt
- >=dev-util/intltool-0.50
- >=sys-devel/gettext-0.18.3.2
- virtual/pkgconfig
- !<dev-util/pkgconfig-0.27
- test? (
- >=dev-util/appdata-tools-0.1.7
- || ( >=dev-util/desktop-file-utils-22 <dev-util/desktop-file-utils-22 )
- )"
-
-src_prepare() {
- sed -i \
- -e '/^DEPRECATED_CPPFLAGS="/d' \
- -e '/warning_flags/s: -Werror=.*:":' \
- configure || die
-}
-
-DOCS=( AUTHORS ChangeLog HACKING NEWS README THANKS TODO )
-
-src_configure() {
- # Kludge to make easytag find its locales (bug #503698)
- export DATADIRNAME=share
-
- # FIXME: src/gio_wrapper.h -> taglib #include without #ifdef -> --enable-mp4
- # FIXME: src/vcedit.h -> ogg and vorbis #include without #ifdef -> --enable-ogg
- econf \
- $(use_enable test appdata-validate) \
- $(use_enable test tests) \
- $(use_enable mp3) \
- $(use_enable mp3 id3v23) \
- --enable-ogg \
- $(use_enable opus) \
- $(use_enable speex) \
- $(use_enable flac) \
- --enable-mp4 \
- $(use_enable wavpack) \
- $(use_with gtk2)
-}
-
-pkg_preinst() { gnome2_icon_savelist; }
-pkg_postinst() { gnome2_icon_cache_update; fdo-mime_desktop_database_update; }
-pkg_postrm() { gnome2_icon_cache_update; fdo-mime_desktop_database_update; }
diff --git a/media-sound/easytag/easytag-2.2.0.ebuild b/media-sound/easytag/easytag-2.2.0.ebuild
deleted file mode 100644
index 29c2176302ee..000000000000
--- a/media-sound/easytag/easytag-2.2.0.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/easytag/easytag-2.2.0.ebuild,v 1.5 2014/04/17 07:19:59 ssuominen Exp $
-
-EAPI=5
-inherit gnome.org gnome2-utils fdo-mime
-
-DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags"
-HOMEPAGE="https://wiki.gnome.org/Apps/EasyTAG"
-
-LICENSE="GPL-2 GPL-2+ LGPL-2 LGPL-2+ LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~x86 ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="flac mp3 opus speex test wavpack"
-
-RDEPEND=">=dev-libs/glib-2.32:2
- >=media-libs/libogg-1.3.1
- >=media-libs/libvorbis-1.3.4
- >=media-libs/taglib-1.9.1[mp4]
- >=x11-libs/gtk+-3.4:3
- flac? ( >=media-libs/flac-1.3 )
- mp3? (
- >=media-libs/id3lib-3.8.3-r8
- >=media-libs/libid3tag-0.15.1b-r4
- )
- opus? (
- >=media-libs/opus-1.1
- >=media-libs/opusfile-0.4
- )
- speex? ( >=media-libs/speex-1.2_rc1 )
- wavpack? ( >=media-sound/wavpack-4.70 )"
-DEPEND="${RDEPEND}
- app-text/docbook-xml-dtd:4.4
- app-text/yelp-tools
- dev-libs/libxml2
- dev-libs/libxslt
- >=dev-util/intltool-0.50
- >=sys-devel/gettext-0.18.3.2
- virtual/pkgconfig
- !<dev-util/pkgconfig-0.27
- test? (
- >=dev-util/appdata-tools-0.1.7
- || ( >=dev-util/desktop-file-utils-22 <dev-util/desktop-file-utils-22 )
- )"
-
-src_prepare() {
- sed -i \
- -e '/^DEPRECATED_CPPFLAGS="/d' \
- -e '/warning_flags/s: -Werror=.*:":' \
- configure || die
-}
-
-DOCS=( AUTHORS ChangeLog HACKING NEWS README THANKS TODO )
-
-src_configure() {
- # Kludge to make easytag find its locales (bug #503698)
- export DATADIRNAME=share
-
- # FIXME: src/gio_wrapper.h -> taglib #include without #ifdef -> --enable-mp4
- # FIXME: src/vcedit.h -> ogg and vorbis #include without #ifdef -> --enable-ogg
- econf \
- $(use_enable test appdata-validate) \
- $(use_enable test tests) \
- $(use_enable mp3) \
- $(use_enable mp3 id3v23) \
- --enable-ogg \
- $(use_enable opus) \
- $(use_enable speex) \
- $(use_enable flac) \
- --enable-mp4 \
- $(use_enable wavpack)
-}
-
-pkg_preinst() { gnome2_icon_savelist; }
-pkg_postinst() { gnome2_icon_cache_update; fdo-mime_desktop_database_update; }
-pkg_postrm() { gnome2_icon_cache_update; fdo-mime_desktop_database_update; }
diff --git a/media-sound/easytag/files/easytag-2.1.6-load-from-txt.patch b/media-sound/easytag/files/easytag-2.1.6-load-from-txt.patch
deleted file mode 100644
index ed86e58b6b2b..000000000000
--- a/media-sound/easytag/files/easytag-2.1.6-load-from-txt.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-http://cvs.fedoraproject.org/viewvc/rpms/easytag/devel/easytag-2.1.6-load-from-txt.patch?view=log
-http://bugs.gentoo.org/329575
-
---- src/misc.c
-+++ src/misc.c
-@@ -3327,7 +3327,7 @@ void Load_Filename_Set_Filenames (void)
- g_free(list_text);
- }
-
-- g_free(currentPath);
-+ gtk_tree_path_free(currentPath);
-
- Browser_List_Refresh_Whole_List();
- ET_Display_File_Data_To_UI(ETCore->ETFileDisplayed);
diff --git a/media-sound/easytag/files/easytag-2.1.7-gold.patch b/media-sound/easytag/files/easytag-2.1.7-gold.patch
deleted file mode 100644
index 581a5e23282b..000000000000
--- a/media-sound/easytag/files/easytag-2.1.7-gold.patch
+++ /dev/null
@@ -1,30 +0,0 @@
- src/Makefile.am | 2 +-
- src/Makefile.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 02dd02e..b58791c 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -85,7 +85,7 @@ EXTRA_DIST = \
- win32/nsis/easytag-install.ico \
- win32/nsis/easytag-uninstall.bmp
-
--easytag_LDADD = $(GTK_LIBS) libmpg123/libmpg123.a libapetag/libapetag.a id3lib/libid3bugfix.a
-+easytag_LDADD = $(GTK_LIBS) libmpg123/libmpg123.a libapetag/libapetag.a id3lib/libid3bugfix.a -lm
-
- localedir = $(datadir)/locale
- PACKAGE_DATA_DIR = $(datadir)/$(PACKAGE)
-diff --git a/src/Makefile.in b/src/Makefile.in
-index b5093c7..91bdf29 100644
---- a/src/Makefile.in
-+++ b/src/Makefile.in
-@@ -351,7 +351,7 @@ EXTRA_DIST = \
- win32/nsis/easytag-install.ico \
- win32/nsis/easytag-uninstall.bmp
-
--easytag_LDADD = $(GTK_LIBS) libmpg123/libmpg123.a libapetag/libapetag.a id3lib/libid3bugfix.a
-+easytag_LDADD = $(GTK_LIBS) libmpg123/libmpg123.a libapetag/libapetag.a id3lib/libid3bugfix.a -lm
- PACKAGE_DATA_DIR = $(datadir)/$(PACKAGE)
- INCLUDES = -DLOCALEDIR=\"$(localedir)\" \
- -DPACKAGE_DATA_DIR=\"$(PACKAGE_DATA_DIR)\"
diff --git a/media-sound/easytag/files/easytag-2.1.7-new_libmp4v2.patch b/media-sound/easytag/files/easytag-2.1.7-new_libmp4v2.patch
deleted file mode 100644
index 4a6c315c2177..000000000000
--- a/media-sound/easytag/files/easytag-2.1.7-new_libmp4v2.patch
+++ /dev/null
@@ -1,535 +0,0 @@
-Compability with libmp4v2.so.2 (upstream revision r479)
-
-http://bugs.gentoo.org/409281
-
---- src/mp4_header.c
-+++ src/mp4_header.c
-@@ -204,7 +204,7 @@
- /* Get size of file */
- ETFileInfo->size = Get_File_Size(filename);
-
-- if ((file = MP4Read(filename, 0)) == MP4_INVALID_FILE_HANDLE )
-+ if ((file = MP4Read(filename)) == MP4_INVALID_FILE_HANDLE )
- {
- gchar *filename_utf8 = filename_to_display(filename);
- //g_print(_("ERROR while opening file: '%s' (%s)."),filename_utf8,g_strerror(errno));
-@@ -218,7 +218,7 @@
- {
- gchar *filename_utf8 = filename_to_display(filename);
- Log_Print(LOG_ERROR,_("ERROR while opening file: '%s' (%s)."),filename_utf8,("Contains no audio track"));
-- MP4Close(file);
-+ MP4Close(file, 0);
- g_free(filename_utf8);
- return FALSE;
- }
-@@ -243,7 +243,7 @@
- ETFileInfo->mode = MP4GetTrackAudioChannels(file, trackId);
- ETFileInfo->duration = MP4ConvertFromTrackDuration(file, trackId, MP4GetTrackDuration(file, trackId), MP4_SECS_TIME_SCALE);
-
-- MP4Close(file);
-+ MP4Close(file, 0);
- return TRUE;
- }
-
---- src/mp4_tag.c
-+++ src/mp4_tag.c
-@@ -80,15 +80,9 @@
- {
- FILE *file;
- MP4FileHandle mp4file = NULL;
-- uint16_t track, track_total;
-- uint16_t disk, disktotal;
-- u_int8_t *coverArt;
-- u_int32_t coverSize;
- Picture *prev_pic = NULL;
--#ifdef NEWMP4
- gint pic_num;
--#endif
--
-+
- if (!filename || !FileTag)
- return FALSE;
-
-@@ -102,7 +96,7 @@
- fclose(file); // We close it cause mp4 opens/closes file itself
-
- /* Get data from tag */
-- mp4file = MP4Read(filename, 0);
-+ mp4file = MP4Read(filename);
- if (mp4file == MP4_INVALID_FILE_HANDLE)
- {
- gchar *filename_utf8 = filename_to_display(filename);
-@@ -111,109 +105,134 @@
- return FALSE;
- }
-
-+ const MP4Tags* tags = MP4TagsAlloc();
-+ MP4TagsFetch(tags, mp4file);
-+
- /* TODO Add error detection */
-
- /*********
- * Title *
- *********/
-- MP4GetMetadataName(mp4file, &FileTag->title);
-+ if (tags->name)
-+ {
-+ FileTag->title = Try_To_Validate_Utf8_String(tags->name);
-+ }
-
- /**********
- * Artist *
- **********/
-- MP4GetMetadataArtist(mp4file, &FileTag->artist);
-+ if (tags->artist)
-+ {
-+ FileTag->artist = Try_To_Validate_Utf8_String(tags->artist);
-+ }
-+
-+ /****************
-+ * Album Artist *
-+ ****************/
-+ if (tags->albumArtist)
-+ {
-+ FileTag->album_artist = Try_To_Validate_Utf8_String(tags->albumArtist);
-+ }
-
- /*********
- * Album *
- *********/
-- MP4GetMetadataAlbum(mp4file, &FileTag->album);
-+ if (tags->album)
-+ {
-+ FileTag->album = Try_To_Validate_Utf8_String(tags->album);
-+ }
-
- /**********************
- * Disk / Total Disks *
- **********************/
-- if (MP4GetMetadataDisk(mp4file, &disk, &disktotal))
-+ if (tags->disk)
- {
-- if (disk != 0 && disktotal != 0)
-- FileTag->disc_number = g_strdup_printf("%d/%d",(gint)disk,(gint)disktotal);
-- else if (disk != 0)
-- FileTag->disc_number = g_strdup_printf("%d",(gint)disk);
-- else if (disktotal != 0)
-- FileTag->disc_number = g_strdup_printf("/%d",(gint)disktotal);
-- //if (disktotal != 0)
-- // FileTag->disk_number_total = g_strdup_printf("%d",(gint)disktotal);
-+ if (tags->disk->index != 0 && tags->disk->total != 0)
-+ FileTag->disc_number = g_strdup_printf("%d/%d",(gint)tags->disk->index,(gint)tags->disk->total);
-+ else if (tags->disk->index != 0)
-+ FileTag->disc_number = g_strdup_printf("%d",(gint)tags->disk->index);
-+ else if (tags->disk->total != 0)
-+ FileTag->disc_number = g_strdup_printf("/%d",(gint)tags->disk->total);
- }
-
- /********
- * Year *
- ********/
-- MP4GetMetadataYear(mp4file, &FileTag->year);
-+ if (tags->releaseDate)
-+ {
-+ FileTag->year = Try_To_Validate_Utf8_String(tags->releaseDate);
-+ }
-
- /*************************
- * Track and Total Track *
- *************************/
-- if (MP4GetMetadataTrack(mp4file, &track, &track_total))
-+ if (tags->track)
- {
-- if (track != 0)
-- FileTag->track = g_strdup_printf("%.*d",NUMBER_TRACK_FORMATED_SPIN_BUTTON,(gint)track); // Just to have numbers like this : '01', '05', '12', ...
-- if (track_total != 0)
-- FileTag->track_total = g_strdup_printf("%.*d",NUMBER_TRACK_FORMATED_SPIN_BUTTON,(gint)track_total); // Just to have numbers like this : '01', '05', '12', ...
-+ if (tags->track->index != 0)
-+ FileTag->track = g_strdup_printf("%.*d",NUMBER_TRACK_FORMATED_SPIN_BUTTON,(gint)tags->track->index); // Just to have numbers like this : '01', '05', '12', ...
-+ if (tags->track->total != 0)
-+ FileTag->track_total = g_strdup_printf("%.*d",NUMBER_TRACK_FORMATED_SPIN_BUTTON,(gint)tags->track->total); // Just to have numbers like this : '01', '05', '12', ...
- }
-
- /*********
- * Genre *
- *********/
-- MP4GetMetadataGenre(mp4file, &FileTag->genre);
-+ if (tags->genre)
-+ {
-+ FileTag->genre = Try_To_Validate_Utf8_String(tags->genre);
-+ }
-
- /***********
- * Comment *
- ***********/
-- MP4GetMetadataComment(mp4file, &FileTag->comment);
-+ if (tags->comments)
-+ {
-+ FileTag->comment = Try_To_Validate_Utf8_String(tags->comments);
-+ }
-
- /**********************
- * Composer or Writer *
- **********************/
-- MP4GetMetadataWriter(mp4file, &FileTag->composer);
-+ if (tags->composer)
-+ {
-+ FileTag->composer = Try_To_Validate_Utf8_String(tags->composer);
-+ }
-
- /*****************
- * Encoding Tool *
- *****************/
-- MP4GetMetadataTool(mp4file, &FileTag->encoded_by);
--
-- /* Unimplemented
-- Tempo / BPM
-- MP4GetMetadataTempo(file, &string)
-- */
-+ if (tags->encodedBy)
-+ {
-+ FileTag->encoded_by = Try_To_Validate_Utf8_String(tags->encodedBy);
-+ }
-
- /***********
- * Picture *
- ***********/
--#ifdef NEWMP4
-- // There version can handle multiple pictures!
-- // Version 1.6 of libmp4v2 introduces an index argument for MP4GetMetadataCoverart
-- for (pic_num = 0; (MP4GetMetadataCoverArt( mp4file, &coverArt, &coverSize,pic_num )); pic_num++)
--#else
-- // There version handle only one picture!
-- if ( MP4GetMetadataCoverArt( mp4file, &coverArt, &coverSize ) )
--#endif
-- {
-- Picture *pic;
--
-- pic = Picture_Allocate();
-- if (!prev_pic)
-- FileTag->picture = pic;
-- else
-- prev_pic->next = pic;
-- prev_pic = pic;
--
-- pic->size = coverSize;
-- pic->data = coverArt;
-- pic->type = PICTURE_TYPE_FRONT_COVER;
-- pic->description = NULL;
-+ if (tags->artworkCount) {
-+ const MP4TagArtwork* art = tags->artwork; /* artwork != NULL when artworkCount > 0 */
-+ for (pic_num = 0; pic_num < tags->artworkCount; pic_num++, art++)
-+ {
-+ Picture *pic;
-+
-+ pic = Picture_Allocate();
-+ if (!prev_pic)
-+ FileTag->picture = pic;
-+ else
-+ prev_pic->next = pic;
-+ prev_pic = pic;
-+
-+ pic->size = art->size;
-+ pic->data = g_memdup(art->data, pic->size);
-+ pic->type = PICTURE_TYPE_FRONT_COVER;
-+ pic->description = NULL;
-+ }
- }
-
-
- /* Free allocated data */
-- MP4Close(mp4file);
-+ MP4TagsFree(tags);
-+ MP4Close(mp4file, 0);
-
- return TRUE;
- }
-@@ -235,6 +254,7 @@
- FILE *file;
- MP4FileHandle mp4file = NULL;
- gint error = 0;
-+ gint pic_num;
-
- if (!ETFile || !ETFile->FileTag)
- return FALSE;
-@@ -252,23 +272,25 @@
- fclose(file);
-
- /* Open file for writing */
-- mp4file = MP4Modify(filename,0,0);
-+ mp4file = MP4Modify(filename, 0);
- if (mp4file == MP4_INVALID_FILE_HANDLE)
- {
- Log_Print(LOG_ERROR,_("ERROR while opening file: '%s' (%s)."),filename_utf8,_("MP4 format invalid"));
- return FALSE;
- }
-
-+ const MP4Tags* tags = MP4TagsAlloc();
-+ MP4TagsFetch(tags, mp4file);
-+
- /*********
- * Title *
- *********/
- if (FileTag->title && g_utf8_strlen(FileTag->title, -1) > 0)
- {
-- MP4SetMetadataName(mp4file, FileTag->title);
-+ MP4TagsSetName(tags, FileTag->title);
- }else
- {
-- //MP4DeleteMetadataName(mp4file); // Not available on mpeg4ip-1.2 (only in 1.3)
-- MP4SetMetadataName(mp4file, "");
-+ MP4TagsSetName(tags, "");
- }
-
- /**********
-@@ -276,11 +298,21 @@
- **********/
- if (FileTag->artist && g_utf8_strlen(FileTag->artist, -1) > 0)
- {
-- MP4SetMetadataArtist(mp4file, FileTag->artist);
-+ MP4TagsSetArtist(tags, FileTag->artist);
-+ }else
-+ {
-+ MP4TagsSetArtist(tags, "");
-+ }
-+
-+ /****************
-+ * Album Artist *
-+ ****************/
-+ if (FileTag->artist && g_utf8_strlen(FileTag->artist, -1) > 0)
-+ {
-+ MP4TagsSetAlbumArtist(tags, FileTag->album_artist);
- }else
- {
-- //MP4DeleteMetadataArtist(mp4file);
-- MP4SetMetadataArtist(mp4file, "");
-+ MP4TagsSetAlbumArtist(tags, "");
- }
-
- /*********
-@@ -288,22 +320,19 @@
- *********/
- if (FileTag->album && g_utf8_strlen(FileTag->album, -1) > 0)
- {
-- MP4SetMetadataAlbum(mp4file, FileTag->album);
-+ MP4TagsSetAlbum(tags, FileTag->album);
- }else
- {
-- //MP4DeleteMetadataAlbum(mp4file);
-- MP4SetMetadataAlbum(mp4file, "");
-+ MP4TagsSetAlbum(tags, "");
- }
-
- /**********************
- * Disk / Total Disks *
- **********************/
-+ MP4TagDisk td;
- if (FileTag->disc_number && g_utf8_strlen(FileTag->disc_number, -1) > 0)
- //|| FileTag->disc_number_total && g_utf8_strlen(FileTag->disc_number_total, -1) > 0)
- {
-- uint16_t disk = 0;
-- uint16_t disktotal = 0;
--
- /* At the present time, we manage only disk number like '1' or '1/2', we
- * don't use disk number total... so here we try to decompose */
- if (FileTag->disc_number)
-@@ -314,27 +343,24 @@
- {
- // A disc_number_total was entered
- if ( (tmp+1) && atoi(tmp+1) )
-- disktotal = atoi(tmp+1);
-+ td.total = atoi(tmp+1);
-
- // Fill disc_number
- *tmp = '\0';
-- disk = atoi(dn_tmp);
-+ td.index = atoi(dn_tmp);
- }else
- {
-- disk = atoi(FileTag->disc_number);
-+ td.index = atoi(FileTag->disc_number);
-+ td.total = NULL;
- }
- g_free(dn_tmp);
- }
-- /*if (FileTag->disc_number)
-- disk = atoi(FileTag->disc_number);
-- if (FileTag->disc_number_total)
-- disktotal = atoi(FileTag->disc_number_total);
-- */
-- MP4SetMetadataDisk(mp4file, disk, disktotal);
-+ MP4TagsSetDisk(tags, &td);
- }else
- {
-- //MP4DeleteMetadataDisk(mp4file);
-- MP4SetMetadataDisk(mp4file, 0, 0);
-+ td.index = NULL;
-+ td.total = NULL;
-+ MP4TagsSetDisk(tags, &td);
- }
-
- /********
-@@ -342,30 +368,29 @@
- ********/
- if (FileTag->year && g_utf8_strlen(FileTag->year, -1) > 0)
- {
-- MP4SetMetadataYear(mp4file, FileTag->year);
-+ MP4TagsSetReleaseDate(tags, FileTag->year);
- }else
- {
-- //MP4DeleteMetadataYear(mp4file);
-- MP4SetMetadataYear(mp4file, "");
-+ MP4TagsSetReleaseDate(tags, "");
- }
-
- /*************************
- * Track and Total Track *
- *************************/
-+ MP4TagTrack tt;
- if ( (FileTag->track && g_utf8_strlen(FileTag->track, -1) > 0)
- || (FileTag->track_total && g_utf8_strlen(FileTag->track_total, -1) > 0) )
- {
-- uint16_t track = 0;
-- uint16_t track_total = 0;
- if (FileTag->track)
-- track = atoi(FileTag->track);
-+ tt.index = atoi(FileTag->track);
- if (FileTag->track_total)
-- track_total = atoi(FileTag->track_total);
-- MP4SetMetadataTrack(mp4file, track, track_total);
-+ tt.total = atoi(FileTag->track_total);
-+ MP4TagsSetTrack(tags, &tt);
- }else
- {
-- //MP4DeleteMetadataTrack(mp4file);
-- MP4SetMetadataTrack(mp4file, 0, 0);
-+ tt.index = NULL;
-+ tt.total = NULL;
-+ MP4TagsSetTrack(tags, &tt);
- }
-
- /*********
-@@ -373,11 +398,10 @@
- *********/
- if (FileTag->genre && g_utf8_strlen(FileTag->genre, -1) > 0 )
- {
-- MP4SetMetadataGenre(mp4file, FileTag->genre);
-+ MP4TagsSetGenre(tags, FileTag->genre);
- }else
- {
-- //MP4DeleteMetadataGenre(mp4file);
-- MP4SetMetadataGenre(mp4file, "");
-+ MP4TagsSetGenre(tags, "");
- }
-
- /***********
-@@ -385,11 +409,10 @@
- ***********/
- if (FileTag->comment && g_utf8_strlen(FileTag->comment, -1) > 0)
- {
-- MP4SetMetadataComment(mp4file, FileTag->comment);
-+ MP4TagsSetComments(tags, FileTag->comment);
- }else
- {
-- //MP4DeleteMetadataComment(mp4file);
-- MP4SetMetadataComment(mp4file, "");
-+ MP4TagsSetComments(tags, "");
- }
-
- /**********************
-@@ -397,11 +420,10 @@
- **********************/
- if (FileTag->composer && g_utf8_strlen(FileTag->composer, -1) > 0)
- {
-- MP4SetMetadataWriter(mp4file, FileTag->composer);
-+ MP4TagsSetComposer(tags, FileTag->composer);
- }else
- {
-- //MP4DeleteMetadataWriter(mp4file);
-- MP4SetMetadataWriter(mp4file, "");
-+ MP4TagsSetComposer(tags, "");
- }
-
- /*****************
-@@ -409,33 +431,39 @@
- *****************/
- if (FileTag->encoded_by && g_utf8_strlen(FileTag->encoded_by, -1) > 0)
- {
-- MP4SetMetadataTool(mp4file, FileTag->encoded_by);
-+ MP4TagsSetEncodedBy(tags, FileTag->encoded_by);
- }else
- {
-- //MP4DeleteMetadataTool(mp4file);
-- MP4SetMetadataTool(mp4file, "");
-+ MP4TagsSetEncodedBy(tags, "");
- }
-
- /***********
- * Picture *
- ***********/
-+ Picture *pic = FileTag->picture;
-+ const gint artworkCount = tags->artworkCount;
-+
-+ for (pic_num = 0; pic_num < artworkCount; pic_num++)
- {
-- // Can handle only one picture...
-- Picture *pic;
-+ MP4TagsRemoveArtwork(tags, 0);
-+ }
-
-- //MP4DeleteMetadataCoverArt(mp4file);
-- MP4SetMetadataCoverArt(mp4file, NULL, 0);
-- for( pic = FileTag->picture; pic; pic = pic->next )
-+ while (pic)
-+ {
-+ if (pic->data)
- {
-- if( pic->type == PICTURE_TYPE_FRONT_COVER )
-- {
-- MP4SetMetadataCoverArt(mp4file, pic->data, pic->size);
-- }
-+ MP4TagArtwork art;
-+ art.data = pic->data;
-+ art.size = pic->size;
-+ art.type = MP4_ART_UNDEFINED; // delegate typing to libmp4v2
-+ MP4TagsAddArtwork(tags, &art);
- }
-+ pic = pic->next;
- }
-
--
-- MP4Close(mp4file);
-+ MP4TagsStore(tags, mp4file);
-+ MP4TagsFree(tags);
-+ MP4Close(mp4file, 0);
-
- if (error) return FALSE;
- else return TRUE;
---- src/picture.c
-+++ src/picture.c
-@@ -326,24 +326,7 @@
- else if (MESSAGE_BOX_POSITION_MOUSE)
- gtk_window_set_position(GTK_WINDOW(FileSelectionWindow),GTK_WIN_POS_MOUSE);
-
-- // Behaviour following the tag type...
-- switch (ETCore->ETFileDisplayed->ETFileDescription->TagType)
-- {
-- case MP4_TAG:
-- {
-- // Only one file can be selected
-- gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(FileSelectionWindow), FALSE);
-- break;
-- }
--
-- // Other tag types
-- default:
-- {
-- gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(FileSelectionWindow), TRUE);
-- break;
-- }
-- }
--
-+ gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(FileSelectionWindow), TRUE);
- gtk_dialog_set_default_response(GTK_DIALOG(FileSelectionWindow), GTK_RESPONSE_OK);
-
- // Starting directory (the same of the current file)