Date: Wed, 25 Feb 2009 03:45:49 GMT From: Marcin Cieslak <saper@SYSTEM.PL> To: FreeBSD-gnats-submit@freebsd.org Cc: multimedia@freebsd.org Subject: [PATCH] multimedia/libtheora: update to 1.0 Message-ID: <200902250345.n1P3jnBC005703@radziecki.saper.info>
next in thread | raw e-mail | index | archive | help
>Submitter-Id: current-users >Originator: Marcin Cieslak >Organization: http://saper.info >Confidential: no >Synopsis: [PATCH] multimedia/libtheora: update to 1.0 >Severity: non-critical >Priority: medium >Category: ports >Class: change-request >Release: FreeBSD 7.1-STABLE amd64 >Environment: System: FreeBSD radziecki.saper.info 7.1-STABLE FreeBSD 7.1-STABLE #2 r187968M: Tue Feb 17 10:52:35 CET >Description: * Update to 1.0 release * Included preliminary patch for issue https://trac.xiph.org/ticket/1515 * Assembly optimization is turned on on amd64 * New libtheoraenc/dec libraries (and pkgconfig files) Works with ffmpeg2theora and as mplayer decoder, encoding with ffmpeg needs some more testing. Added file(s): - files/patch-issue1515 Port maintainer (multimedia@FreeBSD.org) is cc'd. Generated with FreeBSD Port Tools 0.77 >How-To-Repeat: >Fix: --- libtheora-1.0.patch begins here --- diff -ruN --exclude=CVS /usr/ports/multimedia/libtheora.orig/Makefile /usr/ports/multimedia/libtheora/Makefile --- /usr/ports/multimedia/libtheora.orig/Makefile 2009-02-25 00:24:11.819196581 +0100 +++ /usr/ports/multimedia/libtheora/Makefile 2009-02-25 03:39:30.121230321 +0100 @@ -6,7 +6,7 @@ # PORTNAME= libtheora -DISTVERSION= 1.0beta2 +DISTVERSION= 1.0 CATEGORIES= multimedia MASTER_SITES= http://downloads.xiph.org/releases/theora/ \ http://distfiles.master.finkmirrors.net/ @@ -29,5 +29,6 @@ post-patch: @${REINPLACE_CMD} -e 's|doc||g' ${WRKSRC}/Makefile.in + @${REINPLACE_CMD} -e 's, x86_64), x86_64|amd64),' ${WRKSRC}/configure .include <bsd.port.mk> diff -ruN --exclude=CVS /usr/ports/multimedia/libtheora.orig/distinfo /usr/ports/multimedia/libtheora/distinfo --- /usr/ports/multimedia/libtheora.orig/distinfo 2009-02-25 00:24:11.819196581 +0100 +++ /usr/ports/multimedia/libtheora/distinfo 2009-02-25 03:39:59.138549217 +0100 @@ -1,3 +1,3 @@ -MD5 (libtheora-1.0beta2.tar.bz2) = 6ed9f998a982e996ad53d3686d655cfe -SHA256 (libtheora-1.0beta2.tar.bz2) = 8bd514ddf5836d82a97f9ff2a4b606c9ccf6ed749055a9fb79f7a335c0ef4b20 -SIZE (libtheora-1.0beta2.tar.bz2) = 1774632 +MD5 (libtheora-1.0.tar.bz2) = c963937053f45a7878954bed37ceb182 +SHA256 (libtheora-1.0.tar.bz2) = 3ae9df56e8fc75ffe26e63a13cae2ce79d079416175fb0baffe0e2de8dc91a6d +SIZE (libtheora-1.0.tar.bz2) = 1652987 diff -ruN --exclude=CVS /usr/ports/multimedia/libtheora.orig/files/patch-Makefile.in /usr/ports/multimedia/libtheora/files/patch-Makefile.in --- /usr/ports/multimedia/libtheora.orig/files/patch-Makefile.in 2009-02-25 00:24:11.818198137 +0100 +++ /usr/ports/multimedia/libtheora/files/patch-Makefile.in 2009-02-25 03:36:15.169568719 +0100 @@ -1,7 +1,7 @@ ---- Makefile.in.orig 2007-09-18 02:54:23.000000000 -0400 -+++ Makefile.in 2007-10-09 13:37:57.000000000 -0400 -@@ -73,7 +73,7 @@ - distclean-recursive maintainer-clean-recursive +--- Makefile.in.orig 2008-10-29 11:36:48.000000000 +0100 ++++ Makefile.in 2009-02-25 03:35:59.886902862 +0100 +@@ -80,7 +80,7 @@ + DATA = $(pkgconfig_DATA) ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = lib include doc tests m4 examples @@ -9,12 +9,12 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) -@@ -240,7 +240,7 @@ +@@ -274,7 +274,7 @@ libtheora.spec libtheora.spec.in \ theora-uninstalled.pc.in -pkgconfigdir = $(libdir)/pkgconfig +pkgconfigdir = $(prefix)/libdata/pkgconfig - pkgconfig_DATA = theora.pc + pkgconfig_DATA = theora.pc theoradec.pc theoraenc.pc all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive diff -ruN --exclude=CVS /usr/ports/multimedia/libtheora.orig/files/patch-issue1515 /usr/ports/multimedia/libtheora/files/patch-issue1515 --- /usr/ports/multimedia/libtheora.orig/files/patch-issue1515 1970-01-01 01:00:00.000000000 +0100 +++ /usr/ports/multimedia/libtheora/files/patch-issue1515 2009-02-25 02:55:04.310554317 +0100 @@ -0,0 +1,64 @@ +diff -ru lib/enc.orig/encode.c lib/enc/encode.c +--- lib/enc.orig/encode.c 2009-02-25 00:37:51.868139315 +0100 ++++ lib/enc/encode.c 2009-02-25 00:23:45.582743808 +0100 +@@ -934,7 +934,7 @@ + ogg_uint32_t SBRows, + ogg_uint32_t SBCols){ + +- ogg_int32_t FragIndex; /* Fragment number */ ++ ogg_int32_t FragIndex, FirstFragIndex; /* Fragment number */ + ogg_uint32_t MB, B; /* Macro-Block, Block indices */ + ogg_uint32_t SBrow; /* Super-Block row number */ + ogg_uint32_t SBcol; /* Super-Block row number */ +@@ -953,19 +953,20 @@ + /* There may be MB's lying out of frame which must be + ignored. For these MB's Top left block will have a negative + Fragment Index. */ +- if ( QuadMapToMBTopLeft(cpi->pb.BlockMap,SB,MB) >= 0 ) { ++ if ( (FirstFragIndex = QuadMapToMBTopLeft(cpi->pb.BlockMap,SB,MB)) >= 0 ) { + + cpi->MBCodingMode = CODE_INTRA; + + /* Now actually code the blocks. */ + for ( B=0; B<4; B++ ) { + FragIndex = QuadMapToIndex1( cpi->pb.BlockMap, SB, MB, B ); +- cpi->pb.FragCodingMethod[FragIndex] = cpi->MBCodingMode; ++ if (FragIndex >= 0) ++ cpi->pb.FragCodingMethod[FragIndex] = cpi->MBCodingMode; + } + + /* Matching fragments in the U and V planes */ +- UVRow = (FragIndex / (cpi->pb.HFragments * 2)); +- UVColumn = (FragIndex % cpi->pb.HFragments) / 2; ++ UVRow = (FirstFragIndex / (cpi->pb.HFragments * 2)); ++ UVColumn = (FirstFragIndex % cpi->pb.HFragments) / 2; + UVFragOffset = (UVRow * (cpi->pb.HFragments / 2)) + UVColumn; + + cpi->pb.FragCodingMethod[cpi->pb.YPlaneFragments + UVFragOffset] = +Only in lib/enc: encode.c.orig +diff -ru lib/enc.orig/misc_common.c lib/enc/misc_common.c +--- lib/enc.orig/misc_common.c 2009-02-25 00:37:51.865139234 +0100 ++++ lib/enc/misc_common.c 2009-02-25 00:51:20.362286530 +0100 +@@ -87,14 +87,14 @@ + if ( QuadMapToMBTopLeft(cpi->pb.BlockMap, SB, MB ) >= 0 ) { + /* Up regulate the component blocks Y then UV. */ + for ( B=0; B<4; B++ ){ +- FragIndex = QuadMapToIndex1( cpi->pb.BlockMap, SB, MB, B ); +- +- if ( ( !cpi->pb.display_fragments[FragIndex] ) && +- ( (NoCheck) || (cpi->FragmentLastQ[FragIndex] > RegulationQ) ) ){ +- cpi->pb.display_fragments[FragIndex] = 1; +- cpi->extra_fragments[FragIndex] = 1; +- cpi->FragmentLastQ[FragIndex] = RegulationQ; +- cpi->MotionScore++; ++ if ((FragIndex = QuadMapToIndex1( cpi->pb.BlockMap, SB, MB, B )) >= 0) { ++ if ( ( !cpi->pb.display_fragments[FragIndex] ) && ++ ( (NoCheck) || (cpi->FragmentLastQ[FragIndex] > RegulationQ) ) ){ ++ cpi->pb.display_fragments[FragIndex] = 1; ++ cpi->extra_fragments[FragIndex] = 1; ++ cpi->FragmentLastQ[FragIndex] = RegulationQ; ++ cpi->MotionScore++; ++ } + } + } + diff -ruN --exclude=CVS /usr/ports/multimedia/libtheora.orig/pkg-plist /usr/ports/multimedia/libtheora/pkg-plist --- /usr/ports/multimedia/libtheora.orig/pkg-plist 2009-02-25 00:24:11.819196581 +0100 +++ /usr/ports/multimedia/libtheora/pkg-plist 2009-02-25 03:42:17.763292835 +0100 @@ -1,7 +1,16 @@ include/theora/theora.h +include/theora/codec.h +include/theora/theoraenc.h +include/theora/theoradec.h lib/libtheora.a lib/libtheora.la lib/libtheora.so lib/libtheora.so.0 +lib/libtheoraenc.so +lib/libtheoraenc.so.1 +lib/libtheoradec.so +lib/libtheoradec.so.1 libdata/pkgconfig/theora.pc +libdata/pkgconfig/theoraenc.pc +libdata/pkgconfig/theoradec.pc @dirrm include/theora --- libtheora-1.0.patch ends here ---
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902250345.n1P3jnBC005703>