git: 9df78543e018 - main - multimedia: Revert removal of transcode and dependent ports

Stefan Eßer se at FreeBSD.org
Sat May 1 18:53:36 UTC 2021


The branch main has been updated by se:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9df78543e018a28c73fc97caff2c3ac9cc7b62f7

commit 9df78543e018a28c73fc97caff2c3ac9cc7b62f7
Author:     Stefan Eßer <se at FreeBSD.org>
AuthorDate: 2021-05-01 17:43:12 +0000
Commit:     Stefan Eßer <se at FreeBSD.org>
CommitDate: 2021-05-01 18:48:53 +0000

    multimedia: Revert removal of transcode and dependent ports
    
    This is a partial revert of commit 60955c0a0956 which removed transcode
    and ports depending on it for not building with -fno-common.
    
    multimedia/transcode: Revert removal of port
    
    The transcode port has been fixed to build with -fno-common by adding
    1 "extern" and 3 "static" keywords to prevent some global symbols to
    be defined in multiple files that are linked into one binary.
    
    While here fix a few issues reported by "make stage-qa".
    
    multimedia/dvdrip: remove DEPRECATED
    multimedia/mkxvcd: remove DEPRECATED
    multimedia/subtitleripper: remove DEPRECATED
    
    While here add TIMESTAMP to distinfo of these ports and make portlint
    and portclippy happy.
    
    multimedia/transcode: Add TIMESTAMP to distinfo
---
 multimedia/Makefile                                |   4 +
 multimedia/dvdrip/Makefile                         |  68 +++
 multimedia/dvdrip/distinfo                         |   3 +
 .../patch-lib__Video__DVDRip__Cluster__Master.pm   |  11 +
 .../files/patch-lib__Video__DVDRip__Config.pm      |  40 ++
 .../files/patch-lib__Video__DVDRip__FilterList.pm  |  11 +
 ...ch-lib__Video__DVDRip__GUI__Project__Storage.pm |  15 +
 ...atch-lib__Video__DVDRip__GUI__Project__Title.pm |  27 ++
 .../files/patch-lib__Video__DVDRip__Project.pm     |  51 +++
 multimedia/dvdrip/pkg-descr                        |   6 +
 multimedia/dvdrip/pkg-plist                        | 100 ++++
 multimedia/mkxvcd/Makefile                         |  39 ++
 multimedia/mkxvcd/distinfo                         |   3 +
 multimedia/mkxvcd/pkg-descr                        |  16 +
 multimedia/subtitleripper/Makefile                 |  71 +++
 multimedia/subtitleripper/distinfo                 |   3 +
 multimedia/subtitleripper/pkg-descr                |  16 +
 multimedia/subtitleripper/pkg-plist                |  15 +
 multimedia/transcode/Makefile                      | 160 +++++++
 multimedia/transcode/distinfo                      |   3 +
 multimedia/transcode/files/patch-configure         |  29 ++
 multimedia/transcode/files/patch-ffmpeg0-10        |  13 +
 multimedia/transcode/files/patch-ffmpeg0-11        | 299 ++++++++++++
 multimedia/transcode/files/patch-ffmpeg2           | 328 ++++++++++++++
 multimedia/transcode/files/patch-ffmpeg29          | 352 +++++++++++++++
 multimedia/transcode/files/patch-ffmpeg3           | 213 +++++++++
 multimedia/transcode/files/patch-ffmpeg4           | 502 +++++++++++++++++++++
 .../files/patch-filter_yuvdenoise_motion.c         |  61 +++
 multimedia/transcode/files/patch-import-v4l        |  30 ++
 .../transcode/files/patch-import_Makefile.in       |  11 +
 .../transcode/files/patch-import__probe_ffmpeg.c   |  11 +
 .../transcode/files/patch-import_demux__pass.c     |  11 +
 .../transcode/files/patch-import_extract__ac3.c    |  11 +
 .../transcode/files/patch-import_extract__mp3.c    |  11 +
 .../transcode/files/patch-import_extract__pcm.c    |  11 +
 multimedia/transcode/files/patch-libav-10.patch    |  32 ++
 .../transcode/files/patch-libtc-tc_functions.c     |  33 ++
 multimedia/transcode/files/patch-livav-9.patch     |  31 ++
 multimedia/transcode/pkg-descr                     |  21 +
 multimedia/transcode/pkg-plist                     | 130 ++++++
 40 files changed, 2802 insertions(+)

diff --git a/multimedia/Makefile b/multimedia/Makefile
index 91a4c8714eb8..40e378caa672 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -50,6 +50,7 @@
     SUBDIR += dvdauthor
     SUBDIR += dvdid
     SUBDIR += dvdread
+    SUBDIR += dvdrip
     SUBDIR += dvdstyler
     SUBDIR += elementary-videos
     SUBDIR += emby-server
@@ -231,6 +232,7 @@
     SUBDIR += mkclean
     SUBDIR += mkvalidator
     SUBDIR += mkvtoolnix
+    SUBDIR += mkxvcd
     SUBDIR += mlt
     SUBDIR += mlt-qt5
     SUBDIR += mmsclient
@@ -368,6 +370,7 @@
     SUBDIR += subsync
     SUBDIR += subtitlecomposer
     SUBDIR += subtitleoffsetmodifier
+    SUBDIR += subtitleripper
     SUBDIR += subtools
     SUBDIR += svt-av1
     SUBDIR += svt-hevc
@@ -381,6 +384,7 @@
     SUBDIR += tivodecode
     SUBDIR += totem
     SUBDIR += totem-pl-parser
+    SUBDIR += transcode
     SUBDIR += tstools
     SUBDIR += tvheadend
     SUBDIR += umph
diff --git a/multimedia/dvdrip/Makefile b/multimedia/dvdrip/Makefile
new file mode 100644
index 000000000000..86d4bb71fde6
--- /dev/null
+++ b/multimedia/dvdrip/Makefile
@@ -0,0 +1,68 @@
+# Created by: Michael Nottebrock <michaelnottebrock at gmx.net>
+
+PORTNAME=	dvdrip
+PORTVERSION=	0.98.11
+PORTREVISION=	12
+CATEGORIES=	multimedia
+MASTER_SITES=	CPAN http://www.exit1.org/dvdrip/dist/
+MASTER_SITE_SUBDIR=	CPAN:JRED
+
+MAINTAINER=	ports at FreeBSD.org
+COMMENT=	Perl Gtk+ based dvd-ripper
+
+LICENSE=	ART10 GPLv1 # (ART10 or GPLv1) and CC-BY-SA-2.5
+LICENSE_COMB=	dual
+
+BUILD_DEPENDS=	p5-Gtk2>=0:x11-toolkits/p5-Gtk2 \
+		p5-AnyEvent>=0:devel/p5-AnyEvent \
+		p5-Event-ExecFlow>=0:devel/p5-Event-ExecFlow \
+		p5-Gtk2-Ex-FormFactory>=0:x11-toolkits/p5-Gtk2-Ex-FormFactory \
+		p5-Event-RPC>=0:devel/p5-Event-RPC \
+		p5-Locale-libintl>=0:devel/p5-Locale-libintl
+RUN_DEPENDS=	p5-Gtk2>=0:x11-toolkits/p5-Gtk2 \
+		p5-AnyEvent>=0:devel/p5-AnyEvent \
+		p5-Event-ExecFlow>=0:devel/p5-Event-ExecFlow \
+		p5-Gtk2-Ex-FormFactory>=0:x11-toolkits/p5-Gtk2-Ex-FormFactory \
+		p5-Event-RPC>=0:devel/p5-Event-RPC \
+		p5-Locale-libintl>=0:devel/p5-Locale-libintl \
+		cdrdao:sysutils/cdrdao \
+		convert:graphics/ImageMagick6 \
+		mplayer:multimedia/mplayer \
+		pstree:sysutils/pstree \
+		transcode:multimedia/transcode \
+		vcdimager:multimedia/vcdimager \
+		${LOCALBASE}/sbin/fping:net/fping \
+		cdrecord:sysutils/cdrtools
+
+USES=		gettext perl5 shebangfix
+USE_PERL5=	configure patch
+
+SHEBANG_FILES=	bin/dvdrip*
+CONFIGURE_ENV=	SKIP_UNPACK_REQUIRED_MODULES=1
+
+MAKE_JOBS_UNSAFE=	yes
+
+OPTIONS_DEFINE=		VORBIS SUBTITLE RAR
+OPTIONS_DEFAULT=	VORBIS SUBTITLE
+RAR_DESC=		Support RAR-compressed vobsub subtitles
+SUBTITLE_DESC=		Enable support for getting subtitles
+
+RAR_RUN_DEPENDS=	rar:archivers/rar
+SUBTITLE_RUN_DEPENDS=	subtitle2pgm:multimedia/subtitleripper
+VORBIS_RUN_DEPENDS=	oggenc:audio/vorbis-tools \
+			ogmmerge:multimedia/ogmtools
+
+post-patch:
+	@${PERL} -pi -e 's#/usr/sbin/fping#${LOCALBASE}/sbin/fping#' \
+		${WRKSRC}/lib/Video/DVDRip/Cluster/Master.pm \
+		${WRKSRC}/lib/Video/DVDRip/Depend.pm
+	@${FIND} ${WRKSRC} -name \*.orig -delete
+
+post-install:
+.for f in dvdrip-progress dvdrip-splitpipe
+	@${CHMOD} u+w ${STAGEDIR}${PREFIX}/bin/${f}
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${f}
+	@${CHMOD} u-w ${STAGEDIR}${PREFIX}/bin/${f}
+.endfor
+
+.include <bsd.port.mk>
diff --git a/multimedia/dvdrip/distinfo b/multimedia/dvdrip/distinfo
new file mode 100644
index 000000000000..3c7e3360a90d
--- /dev/null
+++ b/multimedia/dvdrip/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1619892059
+SHA256 (dvdrip-0.98.11.tar.gz) = 586c20968b2daa55c0afaaf334d5b9b8b6896d6ea45078a577e165806858c3a5
+SIZE (dvdrip-0.98.11.tar.gz) = 2075302
diff --git a/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Cluster__Master.pm b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Cluster__Master.pm
new file mode 100644
index 000000000000..23bb4b40ec57
--- /dev/null
+++ b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Cluster__Master.pm
@@ -0,0 +1,11 @@
+--- lib/Video/DVDRip/Cluster/Master.pm.orig	2010-04-24 17:21:50.000000000 -0300
++++ lib/Video/DVDRip/Cluster/Master.pm	2010-04-24 17:25:30.000000000 -0300
+@@ -122,7 +122,7 @@
+ sub check_prerequisites {
+     my $class = shift;
+ 
+-    foreach my $path ( "/usr/bin", "/usr/sbin" ) {
++    foreach my $path ( "/usr/bin", "/usr/sbin", "/usr/local/sbin" ) {
+         if ( -f "$path/fping" and -x "$path/fping" ) {
+             $FPING = "$path/fping";
+             last;
diff --git a/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Config.pm b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Config.pm
new file mode 100644
index 000000000000..f21f1560098d
--- /dev/null
+++ b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Config.pm
@@ -0,0 +1,40 @@
+--- lib/Video/DVDRip/Config.pm.orig	Sun Aug 20 07:56:01 2006
++++ lib/Video/DVDRip/Config.pm	Sat Sep 23 13:58:03 2006
+@@ -193,16 +193,16 @@
+     dvd_device => {
+         label => __ "Default DVD device",
+         type  => 'file',
+-        value => "",
++        value => "/cdrom",
+         dvd_button => 1,
+     },
+     selected_dvd_device => {
+-        value   => "/dev/dvd",
++        value   => "/cdrom",
+     },
+     eject_command => {
+         label => __ "Eject Command",
+         type  => 'string',
+-        value => "eject",
++        value => "cdcontrol",
+         rules => "executable-command",
+     },
+     play_dvd_command => {
+@@ -226,7 +226,7 @@
+     play_stdin_command => {
+         label   => __ "STDIN player command",
+         type    => 'string',
+-        value   => 'xine stdin://mpeg2 -g -pq -a %a',
++        value   => 'mplayer -aid %(%a+128) -',
+         presets => [
+             'mplayer -aid %(%a+128) -', 'xine stdin://mpeg2 -g -pq -a %a',
+         ],
+@@ -274,7 +274,7 @@
+     default_video_codec => {
+         label   => __ "Default video codec",
+         type    => 'string',
+-        value   => 'xvid',
++        value   => 'xvid4',
+         presets => [
+             "SVCD",   "VCD",  "XSVCD",   "XVCD",  "CVD",   "divx4",
+             "divx5",  "xvid", "xvidcvs", "xvid2", "xvid3", "xvid4",
diff --git a/multimedia/dvdrip/files/patch-lib__Video__DVDRip__FilterList.pm b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__FilterList.pm
new file mode 100644
index 000000000000..300de0fe00f7
--- /dev/null
+++ b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__FilterList.pm
@@ -0,0 +1,11 @@
+--- lib/Video/DVDRip/FilterList.pm.orig	Fri Sep 22 16:05:34 2006
++++ lib/Video/DVDRip/FilterList.pm	Fri Sep 22 16:06:07 2006
+@@ -220,7 +220,7 @@
+         "[filterlist] (re)scanning transcode's module path $modpath...\n";
+ 
+     my @filter_names = grep !/^(pv|preview)$/,
+-        map {m!/filter_([^/]+)\.so$!} glob("$modpath/filter_*");
++        map {m!/filter_([^/]+)\.so$/!} glob("$modpath/filter_*");
+ 
+     my %filters;
+     foreach my $filter_name (@filter_names) {
diff --git a/multimedia/dvdrip/files/patch-lib__Video__DVDRip__GUI__Project__Storage.pm b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__GUI__Project__Storage.pm
new file mode 100644
index 000000000000..acc6e4b11e5e
--- /dev/null
+++ b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__GUI__Project__Storage.pm
@@ -0,0 +1,15 @@
+--- lib/Video/DVDRip/GUI/Project/Storage.pm.orig	Sat Sep 23 16:06:43 2006
++++ lib/Video/DVDRip/GUI/Project/Storage.pm	Sat Sep 23 16:15:30 2006
+@@ -144,6 +144,12 @@
+                                             ."Either it's the filename of a physical DVD "
+                                             ."device or the path of a full DVD image copy."
+                             ),
++                            Gtk2::Ex::FormFactory::Label->new(
++                                label =>
++				    __"Important: On FreeBSD, please mount your DVD disc first\n"
++				     ."(eg 'mount /cdrom'), and then specify the mountpoint above\n"
++				     ."(click \"Choose DVD image directory\" and select '/cdrom').\n"
++                            ),
+                         ],
+                     ),
+                 ],
diff --git a/multimedia/dvdrip/files/patch-lib__Video__DVDRip__GUI__Project__Title.pm b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__GUI__Project__Title.pm
new file mode 100644
index 000000000000..881d7de0c6d8
--- /dev/null
+++ b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__GUI__Project__Title.pm
@@ -0,0 +1,27 @@
+--- lib/Video/DVDRip/GUI/Project/Title.pm.orig	Fri Sep 22 15:53:09 2006
++++ lib/Video/DVDRip/GUI/Project/Title.pm	Fri Sep 22 15:56:35 2006
+@@ -433,8 +433,10 @@
+     my $title = $self->selected_title;
+ 
+     my $command
+-        = $self->config('eject_command') . " " .
+-            $title->project->dvd_device;
++        = $self->config('eject_command') . " -f " .
++            $title->project->dvd_device .
++	    " eject";
++
+ 
+     system("$command &");
+ 
+@@ -446,8 +448,9 @@
+ 
+     my $title = $self->selected_title;
+ 
+-    my $command = $self->config('eject_command') . " -t "
+-        . $title->project->dvd_device;
++    my $command = $self->config('eject_command') . " -f " .
++        $title->project->dvd_device .
++	" close";
+ 
+     system("$command &");
+ 
diff --git a/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Project.pm b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Project.pm
new file mode 100644
index 000000000000..4607d0a71b0f
--- /dev/null
+++ b/multimedia/dvdrip/files/patch-lib__Video__DVDRip__Project.pm
@@ -0,0 +1,51 @@
+--- lib/Video/DVDRip/Project.pm.orig	Wed Aug 16 16:34:38 2006
++++ lib/Video/DVDRip/Project.pm	Sat Sep 23 15:32:16 2006
+@@ -345,24 +345,27 @@
+     return \%symlinks;
+ }
+ 
+-sub get_mount_dir_from_mtab {
++sub get_mount_dir_from_fstab {
+     my $self = shift;
+-    my ( $dvd_device, $mtab_file ) = @_;
++    my ( $dvd_device, $fstab_file ) = @_;
+ 
+     my $symlinks_href = $self->resolve_symlinks($dvd_device);
+ 
+-    open( my $fh, $mtab_file )
+-        or die "can't read $mtab_file";
++    open(FSTABINPUT, $fstab_file )
++	or die "can't read $fstab_file";
+ 
+     my $mount_dir;
+-    while ( my $line = <$fh> ) {
+-        my ( $device, $dir ) = split( /\s+/, $line );
+-        if ( $symlinks_href->{$device} ) {
+-            $mount_dir = $dir;
+-            last;
+-        }
++    while (<FSTABINPUT>) {
++	my ($dev, $mnt, $fstyp, $opt, $dump, $pass) = split;
++	next if $dev =~ /^#/;
++	if (( $dev eq $symlinks_href->{$dev} ) ||
++	   ( $mnt eq $symlinks_href->{$dev} )  ||
++	   ( $fstyp eq 'cd9660' )) {
++	    $mount_dir = $mnt;
++	    last;
++	}
+     }
+-    close $fh;
++    close (FSTABINPUT);
+ 
+     return $mount_dir;
+ }
+@@ -373,8 +376,7 @@
+     my $dvd_device = $self->dvd_device;
+ 
+     my $dvd_mount_point
+-        = $self->get_mount_dir_from_mtab( $dvd_device,  "/etc/mtab" )
+-        || $self->get_mount_dir_from_mtab( $dvd_device, "/etc/fstab" );
++        = $self->get_mount_dir_from_fstab( $dvd_device, "/etc/fstab" );
+ 
+     return $dvd_mount_point;
+ }
diff --git a/multimedia/dvdrip/pkg-descr b/multimedia/dvdrip/pkg-descr
new file mode 100644
index 000000000000..7ee0a7d01d75
--- /dev/null
+++ b/multimedia/dvdrip/pkg-descr
@@ -0,0 +1,6 @@
+This is dvd::rip, a Perl Gtk+ based dvd-ripper. It serves as a
+convenient frontend to transcode and makes ripping and encoding
+DVDs a breeze. It also features a cluster daemon, which can distribute
+encoding jobs over multiple machines.
+
+WWW: https://www.exit1.org/dvdrip/
diff --git a/multimedia/dvdrip/pkg-plist b/multimedia/dvdrip/pkg-plist
new file mode 100644
index 000000000000..01b557c192f3
--- /dev/null
+++ b/multimedia/dvdrip/pkg-plist
@@ -0,0 +1,100 @@
+bin/dvdrip
+bin/dvdrip-exec
+bin/dvdrip-master
+bin/dvdrip-multitee
+bin/dvdrip-progress
+bin/dvdrip-replex
+bin/dvdrip-splash
+bin/dvdrip-splitpipe
+bin/dvdrip-subpng
+bin/dvdrip-thumb
+%%PERL5_MAN1%%/dvdrip.1.gz
+%%PERL5_MAN1%%/dvdrip-progress.1.gz
+%%PERL5_MAN1%%/dvdrip-splitpipe.1.gz
+%%PERL5_MAN3%%/Video::DVDRip.3.gz
+%%PERL5_MAN3%%/Video::DVDRip::CPAN::Scanf.3.gz
+%%SITE_PERL%%/LocaleData/cs/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/da/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/de/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/es/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/fr/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/it/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/sr/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/LocaleData/sr at Latn/LC_MESSAGES/video.dvdrip.mo
+%%SITE_PERL%%/Video/DVDRip.pm
+%%SITE_PERL%%/Video/DVDRip/Audio.pm
+%%SITE_PERL%%/Video/DVDRip/Base.pm
+%%SITE_PERL%%/Video/DVDRip/BitrateCalc.pm
+%%SITE_PERL%%/Video/DVDRip/CPAN/Scanf.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/ExecFlowFrontend.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/JobPlanner.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Master.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Node.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/PSU.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Pipe.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Project.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Scheduler.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Title.pm
+%%SITE_PERL%%/Video/DVDRip/Cluster/Webserver.pm
+%%SITE_PERL%%/Video/DVDRip/Config.pm
+%%SITE_PERL%%/Video/DVDRip/Content.pm
+%%SITE_PERL%%/Video/DVDRip/Convert.pm
+%%SITE_PERL%%/Video/DVDRip/Depend.pm
+%%SITE_PERL%%/Video/DVDRip/FilterList.pm
+%%SITE_PERL%%/Video/DVDRip/FilterSettings.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Base.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/BitrateCalc.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Cluster/Control.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Cluster/Node.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Cluster/Title.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Context.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Depend.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/ExecFlow.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Filters.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/FormFactory/ClipImage.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/FormFactory/SubtitlePreviews.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Icons/dvdrip-audio-matrix.png
+%%SITE_PERL%%/Video/DVDRip/GUI/Icons/dvdrip-calc-height.png
+%%SITE_PERL%%/Video/DVDRip/GUI/Icons/dvdrip-calc-width.png
+%%SITE_PERL%%/Video/DVDRip/GUI/Icons/dvdrip-clip-move.png
+%%SITE_PERL%%/Video/DVDRip/GUI/Icons/dvdrip-play-movie.png
+%%SITE_PERL%%/Video/DVDRip/GUI/Icons/dvdrip-scan-volume.png
+%%SITE_PERL%%/Video/DVDRip/GUI/Main.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/MultiAudio.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Pipe.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Preferences.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Preview.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Progress.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Project/ClipZoom.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Project/Logging.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Project/Storage.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Project/Subtitle.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Project/Title.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Project/Transcode.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/Rules.pm
+%%SITE_PERL%%/Video/DVDRip/GUI/ZoomCalculator.pm
+%%SITE_PERL%%/Video/DVDRip/InfoFile.pm
+%%SITE_PERL%%/Video/DVDRip/JobPlanner.pm
+%%SITE_PERL%%/Video/DVDRip/Logger.pm
+%%SITE_PERL%%/Video/DVDRip/PSU.pm
+%%SITE_PERL%%/Video/DVDRip/Preset.pm
+%%SITE_PERL%%/Video/DVDRip/Probe.pm
+%%SITE_PERL%%/Video/DVDRip/Project.pm
+%%SITE_PERL%%/Video/DVDRip/SrtxFile.pm
+%%SITE_PERL%%/Video/DVDRip/Subtitle.pm
+%%SITE_PERL%%/Video/DVDRip/Term/ExitTask.pm
+%%SITE_PERL%%/Video/DVDRip/Term/Main.pm
+%%SITE_PERL%%/Video/DVDRip/Term/Progress.pm
+%%SITE_PERL%%/Video/DVDRip/Title.pm
+%%SITE_PERL%%/Video/DVDRip/TranscodeRC.pm
+%%SITE_PERL%%/Video/DVDRip/icon.xpm
+%%SITE_PERL%%/Video/DVDRip/license.txt
+%%SITE_PERL%%/Video/DVDRip/splash.ca.png
+%%SITE_PERL%%/Video/DVDRip/splash.da.png
+%%SITE_PERL%%/Video/DVDRip/splash.de.png
+%%SITE_PERL%%/Video/DVDRip/splash.en.png
+%%SITE_PERL%%/Video/DVDRip/splash.es.png
+%%SITE_PERL%%/Video/DVDRip/splash.it.png
+%%SITE_PERL%%/Video/DVDRip/splash.sr at Latn.png
+%%SITE_PERL%%/Video/DVDRip/splash.sr.png
+%%SITE_PERL%%/Video/DVDRip/translators.txt
diff --git a/multimedia/mkxvcd/Makefile b/multimedia/mkxvcd/Makefile
new file mode 100644
index 000000000000..170269d5f174
--- /dev/null
+++ b/multimedia/mkxvcd/Makefile
@@ -0,0 +1,39 @@
+# Created by: michael johnson <ahze at ahze.net>
+
+PORTNAME=	mkxvcd
+PORTVERSION=	2.0.2
+PORTREVISION=	13
+CATEGORIES=	multimedia
+MASTER_SITES=	SF/kvcd4nix/${PORTNAME}/${PORTNAME}-${PORTVERSION}/
+
+MAINTAINER=	ports at FreeBSD.org
+COMMENT=	Makes high quality X/K/S/VCD movies from many formats
+
+LICENSE=	GPLv2
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+RUN_DEPENDS=	mpeg2enc:multimedia/mjpegtools \
+		bash:shells/bash \
+		mplayer:multimedia/mplayer \
+		transcode:multimedia/transcode
+
+USES=		shebangfix
+SHEBANG_FILES=	${PORTNAME}.sh
+
+NO_ARCH=	yes
+NO_BUILD=	yes
+
+PLIST_FILES=	bin/${PORTNAME}
+PORTDOCS=	AUTHORS Changelog README
+
+OPTIONS_DEFINE=	DOCS
+
+do-install:
+	${INSTALL_SCRIPT} ${WRKSRC}/${PORTNAME}.sh \
+		${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+
+do-install-DOCS-on:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/multimedia/mkxvcd/distinfo b/multimedia/mkxvcd/distinfo
new file mode 100644
index 000000000000..98439f808c8b
--- /dev/null
+++ b/multimedia/mkxvcd/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1619893261
+SHA256 (mkxvcd-2.0.2.tar.gz) = b62ba2de3ab7a04affa856b9a625c9ad97c9b793252d3006fd38385f5785e0ca
+SIZE (mkxvcd-2.0.2.tar.gz) = 23575
diff --git a/multimedia/mkxvcd/pkg-descr b/multimedia/mkxvcd/pkg-descr
new file mode 100644
index 000000000000..53ab34d133b8
--- /dev/null
+++ b/multimedia/mkxvcd/pkg-descr
@@ -0,0 +1,16 @@
+Makes high quality X/K/S/VCD movies from any format mplayer can play
+
+From README:
+GOAL
+        Make a 2 hour vcd with good quality.
+
+USAGE
+        mkxvcd.sh yourmovie.whateverextensionmplayercanplay
+        mkxvcd.sh /dev/dvd (or whatever device your dvd drive is using)
+        Options on the commandline are:
+                -d for debugging.
+                -m to force mplayer if you don't have transcode installed.
+                -t to force transcode (you can also edit the script in the :user
+ settings" section)
+
+WWW: http://kvcd4nix.sourceforge.net/
diff --git a/multimedia/subtitleripper/Makefile b/multimedia/subtitleripper/Makefile
new file mode 100644
index 000000000000..08f88834c423
--- /dev/null
+++ b/multimedia/subtitleripper/Makefile
@@ -0,0 +1,71 @@
+# Created by: Mario Sergio Fujikawa Ferreira <lioux at FreeBSD.org>
+
+PORTNAME=	subtitleripper
+DISTVERSION=	0.3-4
+PORTREVISION=	11
+CATEGORIES=	multimedia
+MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-0.3-4
+
+MAINTAINER=	multimedia at FreeBSD.org
+COMMENT=	Convert DVD subtitles into text format (subrip srt) or VobSub format
+
+LICENSE=	GPLv2
+
+LIB_DEPENDS=	libnetpbm.so:graphics/netpbm \
+		libpng.so:graphics/png
+RUN_DEPENDS=	gocr:graphics/gocr \
+		xv:graphics/xv \
+		transcode:multimedia/transcode
+
+USES=		gmake tar:tgz
+CFLAGS+=	-D_WITH_GETLINE=1 -DHAVE_GETLINE=1 \
+		-I${LOCALBASE}/include/netpbm
+
+WRKSRC=		${WRKDIR}/${PORTNAME}
+
+OPTIONS_DEFINE=	DOCS EXAMPLES
+
+DOC_FILES=	\
+		ChangeLog \
+		README \
+		README.gocr \
+		README.srttool \
+		README.subtitle2pgm \
+		README.vobsub
+EXAMPLES_FILES=	\
+		gocrfilter_en.sed \
+		gocrfilter_fr.sed \
+		gocrfilter_nl.sed \
+		gocrfilter_none.sed
+PROGRAM_FILES=	\
+		srttool \
+		subtitle2pgm \
+		subtitle2vobsub \
+		vobsub2pgm
+SCRIPT_FILES=	\
+		pgm2txt
+
+post-patch:
+	@${REINPLACE_CMD} -E \
+		-e 's|^(CC[[:space:]]*=).*$$|\1${CC}|' \
+		-e 's|^(COPT[[:space:]]*=).*$$|\1${CFLAGS}|' \
+		-e 's|^(INCLUDES[[:space:]]*:=).*$$|\1 -I${LOCALBASE}/include|' \
+		-e 's|^(LIBS[[:space:]]*:=).*$$|\1 -lm -L${LOCALBASE}/lib|' \
+		-e 's|-lppm|-lnetpbm|' \
+		${BUILD_WRKSRC}/${MAKEFILE}
+	@${REINPLACE_CMD} -E \
+		-e 's|^(DB_PATH[[:space:]]*=).*$$|\1\$${HOME}/.db/|' \
+		-e 's|^(IMAGE_VIWER[[:space:]]*=).*$$|\1${LOCALBASE}/bin/xv|' \
+		-e 's|^(PATH_TO_LANGUAGE_FILTER[[:space:]]*=).*$$|\1${EXAMPLESDIR}/|' \
+		-e 's|(gocr[[:space:]]+)|${LOCALBASE}/bin/\1|' \
+		${WRKSRC}/pgm2txt
+
+do-install:
+	${MKDIR} ${STAGEDIR}${DOCSDIR}
+	cd ${WRKSRC}; ${INSTALL_DATA} ${DOC_FILES} ${STAGEDIR}${DOCSDIR}
+	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+	cd ${WRKSRC}; ${INSTALL_SCRIPT} ${EXAMPLES_FILES} ${STAGEDIR}${EXAMPLESDIR}
+	cd ${WRKSRC}; ${INSTALL_PROGRAM} ${PROGRAM_FILES} ${STAGEDIR}${PREFIX}/bin
+	cd ${WRKSRC}; ${INSTALL_SCRIPT} ${SCRIPT_FILES} ${STAGEDIR}${PREFIX}/bin
+
+.include <bsd.port.mk>
diff --git a/multimedia/subtitleripper/distinfo b/multimedia/subtitleripper/distinfo
new file mode 100644
index 000000000000..8bbc35ed0250
--- /dev/null
+++ b/multimedia/subtitleripper/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1619892106
+SHA256 (subtitleripper-0.3-4.tgz) = 8af6c2ebe55361900871c731ea1098b1a03efa723cd29ee1d471435bd21f3ac4
+SIZE (subtitleripper-0.3-4.tgz) = 47299
diff --git a/multimedia/subtitleripper/pkg-descr b/multimedia/subtitleripper/pkg-descr
new file mode 100644
index 000000000000..db24afa80eb4
--- /dev/null
+++ b/multimedia/subtitleripper/pkg-descr
@@ -0,0 +1,16 @@
+[ excerpt from developer's www site ]
+
+If you want to convert DVD subtitles into text format (e.g. subrip
+format) or VobSub format this program could be useful for you.
+However, it is only one tiny tool that you need in the process of
+producing srt files. This software depends heavily on  transcode
+for its input and is therefore part of the transcode package (see
+transcode's contrib directory). So, if you want to convert some
+subtitles, grap a copy of the lates transcode distribution.
+
+For srt file production the output of this program should be processed
+by some OCR software. Currently, I work with  GOCR for this purpose.
+
+For VobSub output no other tools are required.
+
+WWW: http://subtitleripper.sourceforge.net/
diff --git a/multimedia/subtitleripper/pkg-plist b/multimedia/subtitleripper/pkg-plist
new file mode 100644
index 000000000000..9b250920436a
--- /dev/null
+++ b/multimedia/subtitleripper/pkg-plist
@@ -0,0 +1,15 @@
+bin/pgm2txt
+bin/srttool
+bin/subtitle2pgm
+bin/subtitle2vobsub
+bin/vobsub2pgm
+%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/README.gocr
+%%PORTDOCS%%%%DOCSDIR%%/README.srttool
+%%PORTDOCS%%%%DOCSDIR%%/README.subtitle2pgm
+%%PORTDOCS%%%%DOCSDIR%%/README.vobsub
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/gocrfilter_en.sed
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/gocrfilter_fr.sed
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/gocrfilter_nl.sed
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/gocrfilter_none.sed
diff --git a/multimedia/transcode/Makefile b/multimedia/transcode/Makefile
new file mode 100644
index 000000000000..9470fd1c569e
--- /dev/null
+++ b/multimedia/transcode/Makefile
@@ -0,0 +1,160 @@
+# Created by: Hendrik Scholz <hendrik at scholz.net>
+
+PORTNAME=	transcode
+PORTVERSION=	1.1.7
+PORTREVISION=	47
+CATEGORIES=	multimedia
+MASTER_SITES=	https://bitbucket.org/france/transcode-tcforge/downloads/
+
+MAINTAINER=	ports at FreeBSD.org
+COMMENT=	Text-console utility for video stream processing
+
+LICENSE=	GPLv2
+
+LIB_DEPENDS=	libavcodec.so:multimedia/ffmpeg
+
+USE_LDCONFIG=	yes
+USES=		gmake libtool pkgconfig tar:bzip2 gettext-runtime
+GNU_CONFIGURE=	yes
+CONFIGURE_ARGS=	--enable-oss
+CPPFLAGS+=	-I${LOCALBASE}/include
+LDFLAGS+=	-L${LOCALBASE}/lib
+INSTALL_TARGET=	install-strip
+
+OPTIONS_DEFINE=		DOCS OPTIMIZED_CFLAGS X11 MPEG2 BKTR POSTPROC FREETYPE LAME \
+			XVID X264 OGG VORBIS THEORA DVDREAD DV QUICKTIME LZO A52 \
+			FAAC LIBXML2 MJPEGTOOLS SDL IMAGEMAGICK JPEG ICONV V4L
+OPTIONS_DEFAULT=	LAME DVDREAD JPEG ICONV
+BKTR_DESC=		Bktr capture card support
+POSTPROC_DESC=		Libpostproc support
+DVDREAD_DESC=		Libdvdread support
+
+X11_USES=			xorg
+X11_USE=			xorg=xv,xaw,xpm,sm,ice,xext,x11,xt
+X11_CONFIGURE_WITH=		x
+
+MPEG2_LIB_DEPENDS=		libmpeg2.so:multimedia/libmpeg2
+MPEG2_CONFIGURE_ENABLE=		libmpeg2 libmpeg2convert
+
+BKTR_CONFIGURE_ENABLE=		bktr
+
+POSTPROC_CONFIGURE_ENABLE=	libpostproc
+
+FREETYPE_LIB_DEPENDS=		libfreetype.so:print/freetype2
+FREETYPE_CONFIGURE_ENABLE=	freetype2
+
+LAME_LIB_DEPENDS=		libmp3lame.so:audio/lame
+LAME_CONFIGURE_ENABLE=		lame
+LAME_CONFIGURE_ON=		--with-lame-prefix=${LOCALBASE}
+
+XVID_LIB_DEPENDS=		libxvidcore.so:multimedia/xvid
+XVID_CONFIGURE_ENABLE=		xvid
+XVID_CONFIGURE_ON=		--with-xvid-prefix=${LOCALBASE}
+
+X264_LIB_DEPENDS=		libx264.so:multimedia/libx264
+X264_CONFIGURE_ENABLE=		x264
+
+OGG_LIB_DEPENDS=		libogg.so:audio/libogg
+OGG_CONFIGURE_ENABLE=		ogg
+
+VORBIS_LIB_DEPENDS=		libvorbis.so:audio/libvorbis
+VORBIS_CONFIGURE_ENABLE=	vorbis
+
+THEORA_LIB_DEPENDS=		libtheora.so:multimedia/libtheora
+THEORA_CONFIGURE_ENABLE=	theora
+
+DVDREAD_LIB_DEPENDS=		libdvdread.so:multimedia/libdvdread
+DVDREAD_CONFIGURE_ENABLE=	libdvdread
+DVDREAD_CONFIGURE_ON=		--with-libdvdread-prefix=${LOCALBASE}
+
+DV_LIB_DEPENDS=			libdv.so:multimedia/libdv
+DV_CONFIGURE_ENABLE=		libdv
+
+QUICKTIME_LIB_DEPENDS=		libquicktime.so:multimedia/libquicktime
+QUICKTIME_CONFIGURE_ENABLE=	libquicktime
+
+LZO_LIB_DEPENDS=		liblzo2.so:archivers/lzo2
+LZO_CONFIGURE_ENABLE=		lzo
+LZO_CONFIGURE_ON=		--with-lzo-prefix=${LOCALBASE} --with-lzo-includes=${LOCALBASE}
+
+A52_LIB_DEPENDS=		liba52.so:audio/liba52
+A52_CONFIGURE_ENABLE=		a52
+A52_CONFIGURE_ON=		--with-a52-prefix=${LOCALBASE}
+
+FAAC_LIB_DEPENDS=		libfaac.so:audio/faac
+FAAC_CONFIGURE_ENABLE=		faac
+FAAC_CONFIGURE_ON=		--with-faac-prefix=${LOCALBASE}
+
+LIBXML2_USES=			gnome
+LIBXML2_USE=			GNOME=libxml2
+LIBXML2_CONFIGURE_ENABLE=	libxml2
+
+MJPEGTOOLS_LIB_DEPENDS=		liblavjpeg.so:multimedia/mjpegtools
+MJPEGTOOLS_CONFIGURE_ENABLE=	mjpegtools
+
+SDL_USES=			sdl
+SDL_USE=			SDL=sdl
+SDL_CONFIGURE_ENABLE=		sdl
+
+IMAGEMAGICK_LIB_DEPENDS=	libMagickWand-6.so:graphics/ImageMagick6
+IMAGEMAGICK_CONFIGURE_ENABLE=	imagemagick
+IMAGEMAGICK_CONFIGURE_ON=	--with-imagemagick-prefix=${LOCALBASE}
+
+JPEG_USES=			jpeg
+JPEG_CONFIGURE_ENABLE=		libjpeg
+JPEG_CONFIGURE_ON=		--with-libjpeg-prefix=${LOCALBASE}
+
+ICONV_USES=			iconv
+ICONV_CONFIGURE_ENABLE=		iconv
+ICONV_CONFIGURE_ON=		--with-iconv-prefix=${ICONV_PREFIX}
+
+V4L_BUILD_DEPENDS=		${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat
+V4L_CONFIGURE_ENABLE=		v4l
+
+.include <bsd.port.pre.mk>
+
+LDFLAGS_i386+=	-Wl,-z,notext
+
+.if empty(ICONV_LIB)
+CONFIGURE_ARGS+=ac_cv_lib_iconv_iconv_open=no \
+		ac_cv_lib_iconv_libiconv_open=no
+.endif
+
+post-extract:
+	@${RM} ${WRKSRC}/import/v4l/videodev*
+
+post-patch:
+	@${REINPLACE_CMD} -E -e 's|loff_t|uint64_t|' ${WRKSRC}/avilib/avidump.c
+	@${REINPLACE_CMD} -E -e 's|<SDL/|<|' ${WRKSRC}/filter/preview/display.h
+	@${REINPLACE_CMD} -e '/^static.*lrint/s|static ||' ${WRKSRC}/filter/filter_modfps.c
+
+	@${REINPLACE_CMD} -E -e 's|(-la52)|\1 ${LIBA52_DEP_LIBS}|g ; \
+		s|FFMPEG_VERSION|LIBAVCODEC_IDENT|g ; \
+		s|-lMagick|-lMagickCore|g' \
+			${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
+
+	@${REINPLACE_CMD} -E -e 's|-ldl||g' ${WRKSRC}/configure
+	@${REINPLACE_CMD} -E -e 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/configure
+	@${REINPLACE_CMD} -E -e 's|WRKSRC|${WRKSRC}|g' ${WRKSRC}/export/Makefile.in
+	@${REINPLACE_CMD} -E -e 's|<quicktime/|<lqt/|g' \
+		${WRKSRC}/configure \
+		${WRKSRC}/export/export_mov.c \
+		${WRKSRC}/import/decode_mov.c \
+		${WRKSRC}/import/import_mov.c \
+		${WRKSRC}/import/probe_mov.c
+
+post-patch-LZO-on:
+	@${REINPLACE_CMD} -e 's|%%NUV%%|nuv|' ${WRKSRC}/import/Makefile.in
+
+post-patch-LZO-off:
+	@${REINPLACE_CMD} -e 's|%%NUV%%||' ${WRKSRC}/import/Makefile.in
+
+post-patch-OPTIMIZED_CFLAGS-off:
+	@${FIND} ${WRKSRC} -type f | ${XARGS} -n 10 -x ${REINPLACE_CMD} \
+		-e 's|-O[236]|${CFLAGS}|'
+
+post-stage:
+	@(cd ${STAGEDIR}${PREFIX} && \
+		${FIND} -s lib/transcode -type f -or -type l >> ${TMPPLIST})
+
+.include <bsd.port.post.mk>
diff --git a/multimedia/transcode/distinfo b/multimedia/transcode/distinfo
new file mode 100644
index 000000000000..4576eee2ce3e
--- /dev/null
+++ b/multimedia/transcode/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1619893866
+SHA256 (transcode-1.1.7.tar.bz2) = 1e4e72d8e0dd62a80b8dd90699f5ca64c9b0cb37a5c9325c184166a9654f0a92
+SIZE (transcode-1.1.7.tar.bz2) = 2183627
diff --git a/multimedia/transcode/files/patch-configure b/multimedia/transcode/files/patch-configure
new file mode 100644
index 000000000000..7e7d99850279
--- /dev/null
+++ b/multimedia/transcode/files/patch-configure
@@ -0,0 +1,29 @@
+--- configure.orig	2011-11-19 17:50:37.000000000 +0100
++++ configure	2014-01-17 22:18:16.637476520 +0100
+@@ -5073,7 +5073,7 @@
+   ;;
+ esac
+ fi
+-PATH_TO_AWK=$ac_cv_path_PATH_TO_AWK
++PATH_TO_AWK=$ac_cv_prog_AWK
+ if test -n "$PATH_TO_AWK"; then
+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_TO_AWK" >&5
+ $as_echo "$PATH_TO_AWK" >&6; }
+@@ -26196,7 +26196,7 @@
+   for l in $a52_ll ; do
+     case $l in
+       -L*) lpaths="$lpaths $l" ;;
+-      -l*) test x"$l" != x"-la52" && xlibs="$xlibs $l" ;;
++      -l*) test x"$l" != x"-la52  -L%%LOCALBASE%%/lib -lm" && xlibs="$xlibs $l" ;;
+         *) xlf="$xlf $l" ;;
+     esac
+   done
+@@ -26249,7 +26249,7 @@
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_a52_a52_init" >&5
+ $as_echo "$ac_cv_lib_a52_a52_init" >&6; }
+ if test "x$ac_cv_lib_a52_a52_init" = xyes; then :
+-  A52_LIBS="$a52_ll -la52 $A52_EXTRA_LIBS"
++  A52_LIBS="$a52_ll -la52  -L%%LOCALBASE%%/lib -lm $A52_EXTRA_LIBS"
+ else
+ 
+ this_pkg_err="yes"
diff --git a/multimedia/transcode/files/patch-ffmpeg0-10 b/multimedia/transcode/files/patch-ffmpeg0-10
new file mode 100644
index 000000000000..83e11846f1c6
--- /dev/null
+++ b/multimedia/transcode/files/patch-ffmpeg0-10
@@ -0,0 +1,13 @@
+--- filter/filter_pp.c
++++ filter/filter_pp.c
+@@ -38,8 +38,8 @@
+ 
+ /* FIXME: these use the filter ID as an index--the ID can grow
+  * arbitrarily large, so this needs to be fixed */
+-static pp_mode_t *mode[100];
+-static pp_context_t *context[100];
++static pp_mode *mode[100];
++static pp_context *context[100];
+ static int width[100], height[100];
+ static int pre[100];
+ 
diff --git a/multimedia/transcode/files/patch-ffmpeg0-11 b/multimedia/transcode/files/patch-ffmpeg0-11
new file mode 100644
index 000000000000..74ac7eec348c
--- /dev/null
+++ b/multimedia/transcode/files/patch-ffmpeg0-11
@@ -0,0 +1,299 @@
+diff -urN encode/encode_lavc.c.orig encode/encode_lavc.c
+--- encode/encode_lavc.c.orig	2011-11-19 08:50:27.000000000 -0800
++++ encode/encode_lavc.c	2012-07-03 10:47:03.528009149 -0700
+@@ -114,6 +114,7 @@
+ 
+     AVFrame ff_venc_frame;
+     AVCodecContext ff_vcontext;
++    AVDictionary ** ff_opts;
+ 
+     AVCodec *ff_vcodec;
+ 
+@@ -1036,14 +1037,10 @@
+     SET_FLAG(pd, mv0);
+     SET_FLAG(pd, cbp);
+     SET_FLAG(pd, qpel);
+-    SET_FLAG(pd, alt);
+-    SET_FLAG(pd, vdpart);
+     SET_FLAG(pd, naq);
+     SET_FLAG(pd, ilme);
+     SET_FLAG(pd, ildct);
+     SET_FLAG(pd, aic);
+-    SET_FLAG(pd, aiv);
+-    SET_FLAG(pd, umv);
+     SET_FLAG(pd, psnr);
+     SET_FLAG(pd, trell);
+     SET_FLAG(pd, gray);
+@@ -1064,6 +1061,18 @@
+         pd->ff_vcontext.flags |= CODEC_FLAG_INTERLACED_DCT;
+         pd->ff_vcontext.flags |= CODEC_FLAG_INTERLACED_ME;
+     }
++    if (pd->confdata.flags.alt) {
++        av_dict_set(pd->ff_opts, "alternate_scan", "1", 0);
++    }
++    if (pd->confdata.flags.vdpart) {
++        av_dict_set(pd->ff_opts, "data_partitioning", "1", 0);
++    }
++    if (pd->confdata.flags.umv) {
++        av_dict_set(pd->ff_opts, "umv", "1", 0);
++    }
++    if (pd->confdata.flags.aiv) {
++        av_dict_set(pd->ff_opts, "aiv", "1", 0);
++    }
+ }
+ 
+ #undef SET_FLAG
*** 2155 LINES SKIPPED ***


More information about the dev-commits-ports-all mailing list