faac:moved into main for pisi 2.0

This commit is contained in:
2015-07-22 16:07:31 +03:00
parent c2c38084da
commit a3e487790f
6 changed files with 339 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
shelltools.system("./bootstrap")
autotools.configure("--disable-static")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("ChangeLog", "AUTHORS", "NEWS", "README", "TODO", "docs/libfaac.pdf")
+40
View File
@@ -0,0 +1,40 @@
http://bugs.gentoo.org/306881
--- configure.in
+++ configure.in
@@ -33,7 +33,12 @@
AC_CHECK_DECLS([MP4Create, MP4MetadataDelete],
AC_CHECK_LIB(mp4v2, MP4MetadataDelete, external_mp4v2=yes,
external_mp4v2=no, -lstdc++),
- external_mp4v2=no, [#include <mp4v2/mp4v2.h>])
+ external_mp4v2=no, [
+ #if defined(__ALTIVEC__)
+ #undef bool
+ #endif
+ #include <mp4v2/mp4v2.h>
+ ])
if test x$external_mp4v2 = xyes; then
AC_MSG_NOTICE([*** Building with external mp4v2 ***])
--- frontend/main.c
+++ frontend/main.c
@@ -30,6 +30,9 @@
#endif
#ifdef HAVE_LIBMP4V2
+#if defined(__ALTIVEC__)
+# undef bool
+#endif
# include <mp4v2/mp4v2.h>
#endif
--- common/mp4v2/mpeg4ip.h
+++ common/mp4v2/mpeg4ip.h
@@ -123,7 +123,6 @@
#ifdef __cplusplus
extern "C" {
#endif
-char *strcasestr(const char *haystack, const char *needle);
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,47 @@
diff -ur faac-1.28.orig/configure.in faac-1.28/configure.in
--- faac-1.28.orig/configure.in 2009-02-05 02:55:38.000000000 +0200
+++ faac-1.28/configure.in 2009-07-10 13:21:34.000000000 +0300
@@ -28,14 +28,17 @@
AC_CHECK_LIB(gnugetopt, getopt_long)
AM_CONDITIONAL(WITH_MP4V2, false)
+AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, false)
AC_CHECK_DECLS([MP4Create, MP4MetadataDelete],
AC_CHECK_LIB(mp4v2, MP4MetadataDelete, external_mp4v2=yes,
external_mp4v2=no, -lstdc++),
- external_mp4v2=no, [#include <mp4.h>])
+ external_mp4v2=no, [#include <mp4v2/mp4v2.h>])
if test x$external_mp4v2 = xyes; then
AC_MSG_NOTICE([*** Building with external mp4v2 ***])
+ MY_DEFINE(HAVE_LIBMP4V2)
+ AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, true)
else
if test x$WITHMP4V2 = xyes; then
AC_MSG_NOTICE([*** Building with internal mp4v2 ***])
diff -ur faac-1.28.orig/frontend/main.c faac-1.28/frontend/main.c
--- faac-1.28.orig/frontend/main.c 2009-01-24 03:10:20.000000000 +0200
+++ faac-1.28/frontend/main.c 2009-07-10 13:22:18.000000000 +0300
@@ -30,7 +30,7 @@
#endif
#ifdef HAVE_LIBMP4V2
-# include <mp4.h>
+# include <mp4v2/mp4v2.h>
#endif
#define DEFAULT_TNS 0
diff -ur faac-1.28.orig/frontend/Makefile.am faac-1.28/frontend/Makefile.am
--- faac-1.28.orig/frontend/Makefile.am 2008-12-16 02:56:00.000000000 +0200
+++ faac-1.28/frontend/Makefile.am 2009-07-10 13:21:55.000000000 +0300
@@ -8,5 +8,9 @@
LDADD = $(top_builddir)/libfaac/libfaac.la $(top_srcdir)/common/mp4v2/libmp4v2.a -lm -lstdc++
else
INCLUDES = -I$(top_srcdir)/include
+if WITH_EXTERNAL_MP4V2
+LDADD = $(top_builddir)/libfaac/libfaac.la -lm -lmp4v2
+else
LDADD = $(top_builddir)/libfaac/libfaac.la -lm
endif
+endif
@@ -0,0 +1,138 @@
http://bugs.gentoo.org/397575
http://sourceforge.net/tracker/?func=detail&aid=3476707&group_id=704&atid=100704
--- configure.in
+++ configure.in
@@ -33,8 +33,8 @@ AC_CHECK_LIB(gnugetopt, getopt_long)
AM_CONDITIONAL(WITH_MP4V2, false)
AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, false)
-AC_CHECK_DECLS([MP4Create, MP4MetadataDelete],
- AC_CHECK_LIB(mp4v2, MP4MetadataDelete, external_mp4v2=yes,
+AC_CHECK_DECLS([MP4Create],
+ AC_CHECK_LIB(mp4v2, MP4Create, external_mp4v2=yes,
external_mp4v2=no, -lstdc++),
external_mp4v2=no, [#include <mp4v2/mp4v2.h>])
@@ -42,6 +42,7 @@ if test x$external_mp4v2 = xyes; then
AC_MSG_NOTICE([*** Building with external mp4v2 ***])
MY_DEFINE(HAVE_EXTERNAL_LIBMP4V2)
AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, true)
+ AC_CHECK_DECLS([MP4TagsAlloc], [], [], [#include <mp4v2/mp4v2.h>])
else
if test x$WITHMP4V2 = xyes; then
AC_MSG_NOTICE([*** Building with internal mp4v2 ***])
--- frontend/main.c
+++ frontend/main.c
@@ -873,8 +873,12 @@ int main(int argc, char *argv[])
if (!faacEncSetConfiguration(hEncoder, myFormat)) {
fprintf(stderr, "Unsupported output format!\n");
#ifdef HAVE_LIBMP4V2
+#ifdef MP4_CLOSE_DO_NOT_COMPUTE_BITRATE /* r479 fix */
+ if (container == MP4_CONTAINER) MP4Close(MP4hFile, 0);
+#else
if (container == MP4_CONTAINER) MP4Close(MP4hFile);
#endif
+#endif
return 1;
}
@@ -885,12 +889,10 @@ int main(int argc, char *argv[])
unsigned long ASCLength = 0;
char *version_string;
-#ifdef MP4_CREATE_EXTENSIBLE_FORMAT
- /* hack to compile against libmp4v2 >= 1.0RC3
- * why is there no version identifier in mp4.h? */
+#ifdef MP4_DETAILS_ERROR /* r453 fix */
MP4hFile = MP4Create(aacFileName, MP4_DETAILS_ERROR, 0);
#else
- MP4hFile = MP4Create(aacFileName, MP4_DETAILS_ERROR, 0, 0);
+ MP4hFile = MP4Create(aacFileName, 0);
#endif
if (!MP4_IS_VALID_FILE_HANDLE(MP4hFile)) {
fprintf(stderr, "Couldn't create output file %s\n", aacFileName);
@@ -905,12 +907,22 @@ int main(int argc, char *argv[])
free(ASC);
/* set metadata */
+#if HAVE_DECL_MP4TAGSALLOC
+ const MP4Tags* tags;
+ tags = MP4TagsAlloc();
+ MP4TagsFetch( tags, MP4hFile );
+#endif
version_string = malloc(strlen(faac_id_string) + 6);
strcpy(version_string, "FAAC ");
strcpy(version_string + 5, faac_id_string);
+#if !HAVE_DECL_MP4TAGSALLOC
MP4SetMetadataTool(MP4hFile, version_string);
+#else
+ MP4TagsSetEncodingTool(tags, version_string);
+#endif
free(version_string);
+#if !HAVE_DECL_MP4TAGSALLOC
if (artist) MP4SetMetadataArtist(MP4hFile, artist);
if (writer) MP4SetMetadataWriter(MP4hFile, writer);
if (title) MP4SetMetadataName(MP4hFile, title);
@@ -923,8 +935,40 @@ int main(int argc, char *argv[])
if (comment) MP4SetMetadataComment(MP4hFile, comment);
if (artSize) {
MP4SetMetadataCoverArt(MP4hFile, art, artSize);
+#else
+ if (artist) MP4TagsSetArtist(tags, artist);
+ if (writer) MP4TagsSetComposer(tags, writer);
+ if (title) MP4TagsSetName(tags, title);
+ if (album) MP4TagsSetAlbum(tags, album);
+ if (trackno > 0) {
+ MP4TagTrack tt;
+ tt.index = trackno;
+ tt.total = ntracks;
+ MP4TagsSetTrack(tags, &tt);
+ }
+ if (discno > 0) {
+ MP4TagDisk td;
+ td.index = discno;
+ td.total = ndiscs;
+ MP4TagsSetDisk(tags, &td);
+ }
+ if (compilation) MP4TagsSetCompilation(tags, compilation);
+ if (year) MP4TagsSetReleaseDate(tags, year);
+ if (genre) MP4TagsSetGenre(tags, genre);
+ if (comment) MP4TagsSetComments(tags, comment);
+ if (artSize) {
+ MP4TagArtwork mp4art;
+ mp4art.data = art;
+ mp4art.size = artSize;
+ mp4art.type = MP4_ART_UNDEFINED; // delegate typing to libmp4v2
+ MP4TagsAddArtwork( tags, &mp4art );
+#endif
free(art);
}
+#if HAVE_DECL_MP4TAGSALLOC
+ MP4TagsStore( tags, MP4hFile );
+ MP4TagsFree( tags );
+#endif
}
else
{
@@ -1141,11 +1185,19 @@ int main(int argc, char *argv[])
/* clean up */
if (container == MP4_CONTAINER)
{
+#ifdef MP4_CLOSE_DO_NOT_COMPUTE_BITRATE /* r479 fix */
+ MP4Close(MP4hFile, 0);
+#else
MP4Close(MP4hFile);
+#endif
if (optimizeFlag == 1)
{
fprintf(stderr, "\n\nMP4 format optimization... ");
+#ifdef MP4_DETAILS_ERROR /* r453 fix */
MP4Optimize(aacFileName, NULL, 0);
+#else
+ MP4Optimize(aacFileName, NULL);
+#endif
fprintf(stderr, "Done!");
}
} else
+80
View File
@@ -0,0 +1,80 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>faac</Name>
<Homepage>http://www.audiocoding.com/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>LGPLv2.1</License>
<IsA>app:console</IsA>
<IsA>library</IsA>
<Summary>MPEG-4 audio codecs</Summary>
<Description>Free MPEG-4 audio codecs by AudioCoding.com.</Description>
<Archive sha1sum="d00b023a3642f81bb1fb13d962a65079121396ee" type="targz">mirrors://sourceforge/faac/faac-1.28.tar.gz</Archive>
<BuildDependencies>
<Dependency>libmp4v2-devel</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">mp4v2-1.9.patch</Patch>
<Patch level="0">mp4v2-2.0.0.patch</Patch>
<Patch level="0">altivec.patch</Patch>
</Patches>
</Source>
<Package>
<Name>faac</Name>
<RuntimeDependencies>
<Dependency>libmp4v2</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc/faac</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<Package>
<Name>faac-devel</Name>
<Summary>Development files for faac</Summary>
<RuntimeDependencies>
<Dependency release="current">faac</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
</Files>
</Package>
<History>
<Update release="4">
<Date>2014-12-14</Date>
<Version>1.28</Version>
<Comment>Rebuild.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2014-05-20</Date>
<Version>1.28</Version>
<Comment>Rebuild</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2014-01-23</Date>
<Version>1.28</Version>
<Comment>Rebuild</Comment>
<Name>Stefan Gronewold(groni)</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2010-10-12</Date>
<Version>1.28</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+12
View File
@@ -0,0 +1,12 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>faac</Name>
<Summary xml:lang="tr">Özgür MPEG-4 ses codecleri</Summary>
</Source>
<Package>
<Name>faac-devel</Name>
<Summary xml:lang="tr">faac için geliştirme dosyaları</Summary>
</Package>
</PISI>