diff options
author | Hanno Boeck <hanno@gentoo.org> | 2006-08-20 16:40:10 +0000 |
---|---|---|
committer | Hanno Boeck <hanno@gentoo.org> | 2006-08-20 16:40:10 +0000 |
commit | f02e61b35b46cc0e95eb4dd13874f33d6661f7a4 (patch) | |
tree | 2fdad5836568cce965e151f84c539b5183c5193a /media-libs/libquicktime | |
parent | add libquicktime with new x264-support to package.mask (diff) | |
download | historical-f02e61b35b46cc0e95eb4dd13874f33d6661f7a4.tar.gz historical-f02e61b35b46cc0e95eb4dd13874f33d6661f7a4.tar.bz2 historical-f02e61b35b46cc0e95eb4dd13874f33d6661f7a4.zip |
fix for new x264
Package-Manager: portage-2.1.1_pre5-r2
Diffstat (limited to 'media-libs/libquicktime')
-rw-r--r-- | media-libs/libquicktime/ChangeLog | 8 | ||||
-rw-r--r-- | media-libs/libquicktime/Manifest | 25 | ||||
-rw-r--r-- | media-libs/libquicktime/files/digest-libquicktime-0.9.9-r1 | 3 | ||||
-rw-r--r-- | media-libs/libquicktime/files/libquicktime-new-x264.patch | 146 | ||||
-rw-r--r-- | media-libs/libquicktime/libquicktime-0.9.9-r1.ebuild | 81 |
5 files changed, 255 insertions, 8 deletions
diff --git a/media-libs/libquicktime/ChangeLog b/media-libs/libquicktime/ChangeLog index 05358b0cfa5e..99a66a428afb 100644 --- a/media-libs/libquicktime/ChangeLog +++ b/media-libs/libquicktime/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for media-libs/libquicktime # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/libquicktime/ChangeLog,v 1.61 2006/08/08 22:38:52 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/libquicktime/ChangeLog,v 1.62 2006/08/20 16:40:10 hanno Exp $ + +*libquicktime-0.9.9-r1 (20 Aug 2006) + + 20 Aug 2006; Hanno Boeck <hanno@gentoo.org> + +files/libquicktime-new-x264.patch, +libquicktime-0.9.9-r1.ebuild: + Add patch to compile with latest x264 (still masked). 08 Aug 2006; Chris Gianelloni <wolf31o2@gentoo.org> libquicktime-0.9.7-r1.ebuild: diff --git a/media-libs/libquicktime/Manifest b/media-libs/libquicktime/Manifest index 46bdb6086283..543445de5bb1 100644 --- a/media-libs/libquicktime/Manifest +++ b/media-libs/libquicktime/Manifest @@ -17,6 +17,10 @@ AUX libquicktime-0.9.7-unrice.patch 871 RMD160 00db7ed14972216f37b79903120539cff MD5 bafb8667d95f5399ac28bdb66161035d files/libquicktime-0.9.7-unrice.patch 871 RMD160 00db7ed14972216f37b79903120539cff7d69c10 files/libquicktime-0.9.7-unrice.patch 871 SHA256 d21e8f756f2c4f6465b63923594b26ae88ee167600bcb7fe01fddb005bb1457a files/libquicktime-0.9.7-unrice.patch 871 +AUX libquicktime-new-x264.patch 5071 RMD160 14f849bb29141787398911197ffa5f57d3315501 SHA1 f12d9a0b35b8fed038215d60a1cfee4b5924eba3 SHA256 8fa784cfd8232244370433e24cb50b6e08104168e0ebf837b6c6d2656794ce59 +MD5 4e803ecc9f1dc3e718b4e28589edc4af files/libquicktime-new-x264.patch 5071 +RMD160 14f849bb29141787398911197ffa5f57d3315501 files/libquicktime-new-x264.patch 5071 +SHA256 8fa784cfd8232244370433e24cb50b6e08104168e0ebf837b6c6d2656794ce59 files/libquicktime-new-x264.patch 5071 DIST libquicktime-0.9.2.tar.gz 666586 RMD160 d0a4e3856f3617ec5473d2e03d39836df738561b SHA1 896758aa295b81eaa1f45ddc4ef0b8ed40006be2 SHA256 4010890586da8d84ba5bdfb387d9faf7f2ae6ddc4227c60802537a7b3bfd10d3 DIST libquicktime-0.9.4.tar.gz 782651 RMD160 93a8098770a860cba31d71f876b782c2a7b00fdf SHA1 8835cd89434f4d7da540ca50e629d18cc7d5c24b SHA256 344e9308cb6655cb6d3a8eba0abd824a8c157943739b18762aee64c0d50cb8aa DIST libquicktime-0.9.7.tar.gz 765719 RMD160 a886cbc714306d94977616de7221a19298fa251d SHA1 93346b8a9a411a4bdf97283fbf3ac8ed52252c73 SHA256 43b3b1b3a4ca24c2017f1fa0470425e522b59346b74203b39f9991f6a7b6085e @@ -33,14 +37,18 @@ EBUILD libquicktime-0.9.7-r1.ebuild 2518 RMD160 d599699e332e7439c4daa323370ca7fa MD5 04cc266da63cbd3977544046b8d75dd1 libquicktime-0.9.7-r1.ebuild 2518 RMD160 d599699e332e7439c4daa323370ca7fa8cac5a23 libquicktime-0.9.7-r1.ebuild 2518 SHA256 b5270ac7866aa99dba1f4e755ff11da7498bcd513a3de726d60e629d47432788 libquicktime-0.9.7-r1.ebuild 2518 +EBUILD libquicktime-0.9.9-r1.ebuild 2192 RMD160 ffcef762806f0edf54c18a2215e0ac1dc06a3df5 SHA1 e6826ebc920a340321013f729a89d69f96c6cf8d SHA256 489188fe76760b2de19f5107e89c3baa9f6c2c018d625a9e5ebae3d542cf004a +MD5 05dd8bc86290abe7dd3694362fffc81c libquicktime-0.9.9-r1.ebuild 2192 +RMD160 ffcef762806f0edf54c18a2215e0ac1dc06a3df5 libquicktime-0.9.9-r1.ebuild 2192 +SHA256 489188fe76760b2de19f5107e89c3baa9f6c2c018d625a9e5ebae3d542cf004a libquicktime-0.9.9-r1.ebuild 2192 EBUILD libquicktime-0.9.9.ebuild 2110 RMD160 27ef01ce6c2bad88ff93a4a3d1475b1fd2ad32da SHA1 d1dc2092de113198c236d5e9ade38aa2474ce16b SHA256 293e07ef09deacee6aa9f6d7fc237ab879bf11ec0c65ad5fbf7d83f1831778fc MD5 3b460eb1e8ae72fb1e5f516fffe4d478 libquicktime-0.9.9.ebuild 2110 RMD160 27ef01ce6c2bad88ff93a4a3d1475b1fd2ad32da libquicktime-0.9.9.ebuild 2110 SHA256 293e07ef09deacee6aa9f6d7fc237ab879bf11ec0c65ad5fbf7d83f1831778fc libquicktime-0.9.9.ebuild 2110 -MISC ChangeLog 9526 RMD160 c2e79077dc98dce157b044bbfd8da5f63401f617 SHA1 1e558ef68007639728c82b2a35af46c90d4de031 SHA256 8b5f2fa4b17a983307d314429f6078997a8a6b962f3b1975818de6082bda9c5e -MD5 2b6e92fe58013b80df5f60006a55beb7 ChangeLog 9526 -RMD160 c2e79077dc98dce157b044bbfd8da5f63401f617 ChangeLog 9526 -SHA256 8b5f2fa4b17a983307d314429f6078997a8a6b962f3b1975818de6082bda9c5e ChangeLog 9526 +MISC ChangeLog 9733 RMD160 e0547d5ee588bb5d3650cfaa731d959756ea7eca SHA1 7795d56e4edae1056d4135fd460003a1ba24f5d3 SHA256 af5864f311d0dfc7287e3f19ae1459285ed94165b80a102b4d153fabfcdb909b +MD5 6687ac216df99da6243490cfb051c984 ChangeLog 9733 +RMD160 e0547d5ee588bb5d3650cfaa731d959756ea7eca ChangeLog 9733 +SHA256 af5864f311d0dfc7287e3f19ae1459285ed94165b80a102b4d153fabfcdb909b ChangeLog 9733 MISC metadata.xml 251 RMD160 11462994b78856883a805c72334300d07101713d SHA1 a8362b29138cd87a592947af33840bf3210cfc59 SHA256 0e151c0a2781f2632c75a2f2c3b1a8d187aed329467472236c65627a7e0ba42f MD5 955f56e990f8c32d705708b4cc4db089 metadata.xml 251 RMD160 11462994b78856883a805c72334300d07101713d metadata.xml 251 @@ -57,10 +65,13 @@ SHA256 472a7162078a0d4d6a44ae9a25a92be60a484c20dbeb4759ca0378b775782d38 files/di MD5 724a301e45d8d08f65e454647ead84ae files/digest-libquicktime-0.9.9 256 RMD160 a564e03f1dcb0cb4bb3352579c12b96a3eee61d5 files/digest-libquicktime-0.9.9 256 SHA256 6091518a14516ef99b1505679439e1678f35c617d15df3dfc740210c4822f518 files/digest-libquicktime-0.9.9 256 +MD5 724a301e45d8d08f65e454647ead84ae files/digest-libquicktime-0.9.9-r1 256 +RMD160 a564e03f1dcb0cb4bb3352579c12b96a3eee61d5 files/digest-libquicktime-0.9.9-r1 256 +SHA256 6091518a14516ef99b1505679439e1678f35c617d15df3dfc740210c4822f518 files/digest-libquicktime-0.9.9-r1 256 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) -iD8DBQFE2RKCkT4lNIS36YERAlwrAKDCDb/4mUnbfLcBkNFXF7e/qIwuBgCfbnWo -eIZu/LeKHpio58eYzpo0bwI= -=KhTc +iD8DBQFE6JCRr2QksT29OyARAq5UAJ9VzfiDT5RiuurZuYt4Ue5pNmN9nQCfXyc7 +tX81u0CZAttMXmqSIg7FSSM= +=MFMn -----END PGP SIGNATURE----- diff --git a/media-libs/libquicktime/files/digest-libquicktime-0.9.9-r1 b/media-libs/libquicktime/files/digest-libquicktime-0.9.9-r1 new file mode 100644 index 000000000000..f515872f62a6 --- /dev/null +++ b/media-libs/libquicktime/files/digest-libquicktime-0.9.9-r1 @@ -0,0 +1,3 @@ +MD5 4ac23264f22a22ff013722aa9d188190 libquicktime-0.9.9.tar.gz 926280 +RMD160 c345f54d949f29a9f5be42ca5fbdc80be781a3d4 libquicktime-0.9.9.tar.gz 926280 +SHA256 b92f08e8e9a9e4be36dd5cdd4b1c5d31f0cc821569623b2f5f79b3e7ba8ed3da libquicktime-0.9.9.tar.gz 926280 diff --git a/media-libs/libquicktime/files/libquicktime-new-x264.patch b/media-libs/libquicktime/files/libquicktime-new-x264.patch new file mode 100644 index 000000000000..f87de840811e --- /dev/null +++ b/media-libs/libquicktime/files/libquicktime-new-x264.patch @@ -0,0 +1,146 @@ +--- libquicktime-0.9.9/plugins/x264/x264.c 2006/06/25 13:10:30 1.7 ++++ libquicktime-0.9.9/plugins/x264/x264.c 2006/07/25 12:17:37 1.8 +@@ -437,7 +437,7 @@ + codec->stats_filename = malloc(strlen(stats_file)+1); + strcpy(codec->stats_filename, stats_file); + +- fprintf(stderr, "set_pass_x264 %d %d %s\n", pass, total_passes, stats_file); ++ // fprintf(stderr, "set_pass_x264 %d %d %s\n", pass, total_passes, stats_file); + return 1; + } + +@@ -488,22 +488,28 @@ + codec->params.i_fps_den = lqt_frame_duration(file, track, NULL); + + /* Set multipass control */ +- +- /* Open encoder */ + +- if(codec->pass == 1) ++ if(codec->total_passes) + { +- /* Strings will be made private by x264 */ +- codec->params.rc.psz_stat_out = codec->stats_filename; +- codec->params.rc.b_stat_write = 1; +- } +- else if(codec->total_passes && (codec->pass == codec->total_passes)) +- { +- /* Strings will be made private by x264 */ +- codec->params.rc.psz_stat_in = codec->stats_filename; +- codec->params.rc.b_stat_read = 1; ++ /* Force ABR */ ++ codec->params.rc.i_rc_method = X264_RC_ABR; ++ codec->params.rc.i_rf_constant = 0; ++ if(codec->pass == 1) ++ { ++ /* Strings will be made private by x264 */ ++ codec->params.rc.psz_stat_out = codec->stats_filename; ++ codec->params.rc.b_stat_write = 1; ++ } ++ else if(codec->pass == codec->total_passes) ++ { ++ /* Strings will be made private by x264 */ ++ codec->params.rc.psz_stat_in = codec->stats_filename; ++ codec->params.rc.b_stat_read = 1; ++ } + } + ++ /* Open encoder */ ++ + codec->enc = x264_encoder_open(&codec->params); + if(!codec->enc) + { +@@ -621,6 +627,14 @@ + { "Auto", X264_DIRECT_PRED_AUTO } + }; + ++enum_t rc_methods[] = ++ { ++ { "Constant quality", X264_RC_CQP }, ++ { "Average bitrate", X264_RC_ABR }, ++ { "CRF based VBR", X264_RC_CRF } ++ }; ++ ++ + static int set_parameter(quicktime_t *file, + int track, + char *key, +@@ -637,22 +651,11 @@ + INTPARAM("x264_i_bframe_bias", codec->params.i_bframe_bias); + INTPARAM("x264_b_bframe_pyramid", codec->params.b_bframe_pyramid); + +- if(!strcasecmp(key, "x264_i_bitrate")) +- { +- if(*(int*)(value)) +- { +- codec->params.rc.b_cbr = 1; +- codec->params.rc.i_bitrate = *(int*)(value); +- } +- else +- { +- codec->params.rc.b_cbr = 0; +- codec->params.rc.i_bitrate = 0; +- } +- found = 1; +- } +- ++ ENUMPARAM("x264_i_rc_method", codec->params.rc.i_rc_method, rc_methods); ++ INTPARAM("x264_i_bitrate", codec->params.rc.i_bitrate); ++ + INTPARAM("x264_i_qp_constant", codec->params.rc.i_qp_constant); ++ INTPARAM("x264_i_rf_constant", codec->params.rc.i_rf_constant); + INTPARAM("x264_i_qp_min", codec->params.rc.i_qp_min); + INTPARAM("x264_i_qp_max", codec->params.rc.i_qp_max); + INTPARAM("x264_i_qp_step", codec->params.rc.i_qp_step); +--- libquicktime-0.9.9/plugins/x264/lqt_x264.c 2006/04/10 21:46:15 1.2 ++++ libquicktime-0.9.9/plugins/x264/lqt_x264.c 2006/07/25 12:17:37 1.3 +@@ -74,6 +74,21 @@ + type: LQT_PARAMETER_SECTION + }, + { ++ name: "x264_i_rc_method", ++ real_name: "Ratecontrol method", ++ type: LQT_PARAMETER_STRINGLIST, ++ val_default: { val_string: "Constant quality" }, ++ stringlist_options: (char*[]){ "Constant quality", ++ "Average bitrate", ++ "CRF based VBR", ++ (char*)0 }, ++ help_string: "Ratecontrol method:\n\ ++Constant quality: Specify a quantizer parameter below\n\ ++Average bitrate: Specify a bitrate below\n\ ++CRF based VBR: Specify a rate factor below\n\ ++Selecting 2-pass encoding will force Average bitrate.", ++ }, ++ { + name: "x264_i_bitrate", + real_name: "Bitrate", + type: LQT_PARAMETER_INT, +@@ -81,6 +96,16 @@ + help_string: "Bitrate in kbit/s. 0 means VBR (recommended)" + }, + { ++ name: "x264_i_rf_constant", ++ real_name: "Nominal Quantizer parameter", ++ type: LQT_PARAMETER_INT, ++ val_default: { val_int: 26 }, ++ val_min: { val_int: 0 }, ++ val_max: { val_int: 51 }, ++ help_string: "This selects the nominal quantizer to use (1 to 51). Lower values result in " \ ++ "better fidelity, but higher bitrates. 26 is a good default value. 0 means lossless." ++ }, ++ { + name: "x264_i_qp_constant", + real_name: "Quantizer parameter", + type: LQT_PARAMETER_INT, +@@ -90,7 +115,9 @@ + help_string: "This selects the quantizer to use (1 to 51). Lower values result in " \ + "better fidelity, but higher bitrates. 26 is a good default value. 0 means lossless." + }, +- { ++ ++ ++{ + name: "x264_i_qp_min", + real_name: "Minimum quantizer parameter", + type: LQT_PARAMETER_INT, diff --git a/media-libs/libquicktime/libquicktime-0.9.9-r1.ebuild b/media-libs/libquicktime/libquicktime-0.9.9-r1.ebuild new file mode 100644 index 000000000000..a910bdd293f5 --- /dev/null +++ b/media-libs/libquicktime/libquicktime-0.9.9-r1.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/libquicktime/libquicktime-0.9.9-r1.ebuild,v 1.1 2006/08/20 16:40:10 hanno Exp $ + +inherit libtool eutils autotools + +DESCRIPTION="A library based on quicktime4linux with extensions" +HOMEPAGE="http://libquicktime.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86" + +IUSE="mmx X" + +DEPEND="media-libs/libdv + >=x11-libs/gtk+-2.4.0 + media-libs/libpng + media-libs/jpeg + media-libs/libvorbis + media-libs/libogg + media-libs/x264-svn + X? ( || ( ( x11-libs/libXaw + x11-libs/libXv + x11-proto/xextproto + ) + virtual/x11 + ) + ) + !virtual/quicktime" +PROVIDE="virtual/quicktime" + +pkg_setup() { + if has_version '=x11-base/xorg-x11-6*' && ! built_with_use x11-base/xorg-x11 xv; then + die "You need xv support to compile ${PN}." + fi +} + +src_unpack() { + unpack ${A} + epatch ${FILESDIR}/libquicktime-new-x264.patch +} + +src_compile() { + econf --enable-shared \ + --enable-static \ + --enable-gpl \ + $(use_enable mmx) \ + $(use_with X x) \ + --without-cpuflags || die "econf failed" + emake || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + + # Compatibility with software that uses quicktime prefix, but + # don't do that when building for Darwin/MacOS + [[ ${CHOST} != *-darwin* ]] && \ + dosym /usr/include/lqt /usr/include/quicktime +} + +pkg_preinst() { + if [[ -d /usr/include/quicktime && ! -L /usr/include/quicktime ]]; then + einfo "For compatibility with other quicktime libraries, ${PN} was" + einfo "going to create a /usr/include/quicktime symlink, but for some" + einfo "reason that is a directory on your system." + + if $(has_version =media-libs/libquicktime-0.9.4); then + einfo "It seems this directory belongs to libquicktime-0.9.4." + einfo "We'll delete that directory now." + rm -rvf /usr/include/quicktime + else + einfo "Please check that is empty, and remove it, or submit a bug" + einfo "telling us which package owns the directory." + die "/usr/include/quicktime is a directory." + fi + fi +} + |