multimedia/ffmpeg: update to 2.0.1
- Update main ffmpeg port to 2.0.1 - Bump and update dependent ports when necessary (API change) Approved by: portmgr (bapt)
This commit is contained in:
parent
5535462810
commit
3624ddf181
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=330909
59 changed files with 2063 additions and 761 deletions
|
@ -3,7 +3,7 @@
|
|||
|
||||
PORTNAME= dvda-author
|
||||
PORTVERSION= 09.05
|
||||
PORTREVISION= 9
|
||||
PORTREVISION= 10
|
||||
PORTEPOCH= 1
|
||||
CATEGORIES= audio
|
||||
MASTER_SITES= SF/dvd-audio/${PORTNAME}-core/${PORTNAME}-${PORTVERSION}-core
|
||||
|
@ -13,10 +13,10 @@ MAINTAINER= martin.dieringer@gmx.de
|
|||
COMMENT= Author and playback unencrypted and uncompressed Audio-DVDs
|
||||
|
||||
LIB_DEPENDS= FLAC:${PORTSDIR}/audio/flac \
|
||||
ogg:${PORTSDIR}/audio/libogg \
|
||||
sox.1:${PORTSDIR}/audio/sox \
|
||||
samplerate.1:${PORTSDIR}/audio/libsamplerate \
|
||||
png15:${PORTSDIR}/graphics/png
|
||||
libogg.so:${PORTSDIR}/audio/libogg \
|
||||
libsox.so:${PORTSDIR}/audio/sox \
|
||||
libsamplerate.so:${PORTSDIR}/audio/libsamplerate \
|
||||
libpng15.so:${PORTSDIR}/graphics/png
|
||||
|
||||
MAN1= dvda-author.1
|
||||
|
||||
|
|
|
@ -148,9 +148,9 @@ LIB_DEPENDS+= zzip.13:${PORTSDIR}/devel/zziplib \
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFFMPEG}
|
||||
LIB_DEPENDS+= avcodec.1:${PORTSDIR}/multimedia/ffmpeg \
|
||||
avformat:${PORTSDIR}/multimedia/ffmpeg \
|
||||
avutil.1:${PORTSDIR}/multimedia/ffmpeg
|
||||
LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg \
|
||||
libavformat.so:${PORTSDIR}/multimedia/ffmpeg \
|
||||
libavutil.so:${PORTSDIR}/multimedia/ffmpeg
|
||||
.else
|
||||
CONFIGURE_ARGS+=--disable-ffmpeg
|
||||
.endif
|
||||
|
|
19
audio/musicpd/files/patch-ffmpeg2
Normal file
19
audio/musicpd/files/patch-ffmpeg2
Normal file
|
@ -0,0 +1,19 @@
|
|||
Fix build with FFmpeg 2.0.
|
||||
|
||||
Upstream status: Better patch sent and merged upstream.
|
||||
|
||||
Index: src/decoder/ffmpeg_decoder_plugin.c
|
||||
===================================================================
|
||||
--- src/decoder/ffmpeg_decoder_plugin.c.orig
|
||||
+++ src/decoder/ffmpeg_decoder_plugin.c
|
||||
@@ -47,6 +47,10 @@
|
||||
#undef G_LOG_DOMAIN
|
||||
#define G_LOG_DOMAIN "ffmpeg"
|
||||
|
||||
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
|
||||
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
|
||||
+#endif
|
||||
+
|
||||
static GLogLevelFlags
|
||||
level_ffmpeg_to_glib(int level)
|
||||
{
|
|
@ -2,8 +2,7 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= sox
|
||||
PORTVERSION= 14.3.2
|
||||
PORTREVISION= 6
|
||||
PORTVERSION= 14.4.1
|
||||
CATEGORIES= audio
|
||||
MASTER_SITES= SF
|
||||
|
||||
|
@ -15,15 +14,10 @@ LICENSE_COMB= dual
|
|||
|
||||
CONFLICTS= play-[0-9]*
|
||||
|
||||
MAN1= sox.1 soxi.1
|
||||
MAN3= libsox.3
|
||||
MAN7= soxformat.7
|
||||
MLINKS= sox.1 play.1 sox.1 rec.1 sox.1 soxeffect.7
|
||||
GNU_CONFIGURE= yes
|
||||
USES= pkgconfig
|
||||
NO_STAGE= yes
|
||||
USE_LDCONFIG= yes
|
||||
USE_AUTOTOOLS= libltdl
|
||||
USE_AUTOTOOLS= aclocal autoconf automake libltdl
|
||||
|
||||
OPTIONS_DEFINE= ALSA AO AMRNB AMRWB FFMPEG FLAC GSM ID3TAG LADSPA LAME \
|
||||
MAD PNG SNDFILE VORBIS WAVPACK
|
||||
|
@ -76,7 +70,7 @@ CONFIGURE_ARGS+= --without-amrwb
|
|||
|
||||
.if ${PORT_OPTIONS:MFFMPEG}
|
||||
CONFIGURE_ARGS+= --with-ffmpeg
|
||||
LIB_DEPENDS+= avcodec.1:${PORTSDIR}/multimedia/ffmpeg
|
||||
LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
|
||||
.else
|
||||
CONFIGURE_ARGS+= --without-ffmpeg
|
||||
.endif
|
||||
|
@ -156,4 +150,9 @@ LIB_DEPENDS+= wavpack.2:${PORTSDIR}/audio/wavpack
|
|||
CONFIGURE_ARGS+= --without-wavpack
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's/ CODEC_ID/ AV_CODEC_ID/g' \
|
||||
-e 's/ CodecID/ AVCodecID/g' \
|
||||
${WRKSRC}/src/ffmpeg.c
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (sox-14.3.2.tar.gz) = 0668cc087c346f7c4084ae294c676a11ddefb462974bc3f67be30d789c850e8f
|
||||
SIZE (sox-14.3.2.tar.gz) = 1110175
|
||||
SHA256 (sox-14.4.1.tar.gz) = 9a8c2c6fe51e608da346a157e111508a957af9e3ecf3de26781d36e9a67fa89b
|
||||
SIZE (sox-14.4.1.tar.gz) = 1111653
|
||||
|
|
100
audio/sox/files/patch-avcodec54
Normal file
100
audio/sox/files/patch-avcodec54
Normal file
|
@ -0,0 +1,100 @@
|
|||
Index: m4/ffmpeg.m4
|
||||
===================================================================
|
||||
--- m4/ffmpeg.m4.orig
|
||||
+++ m4/ffmpeg.m4
|
||||
@@ -49,7 +49,7 @@ then
|
||||
LIBS="$LIBS $FFMPEG_LIBS"
|
||||
have_ffmpeg="no"
|
||||
AC_CHECK_HEADERS([libavformat/avformat.h ffmpeg/avformat.h],
|
||||
- [AC_CHECK_LIB(avformat, av_open_input_file,
|
||||
+ [AC_CHECK_LIB(avformat, avformat_open_input,
|
||||
[AC_CHECK_HEADERS([libavcodec/avcodec.h ffmpeg/avcodec.h],
|
||||
[AC_CHECK_LIB(avcodec, avcodec_decode_audio3, have_ffmpeg=yes)])])
|
||||
break])
|
||||
Index: src/ffmpeg.c
|
||||
===================================================================
|
||||
--- src/ffmpeg.c.orig
|
||||
+++ src/ffmpeg.c
|
||||
@@ -92,8 +92,10 @@ static int stream_component_open(priv_t
|
||||
enc->workaround_bugs = 1;
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
enc->error_resilience = 1;
|
||||
-#else
|
||||
+#elif LIBAVCODEC_VERSION_INT < ((54<<16)+(0<<8)+0)
|
||||
enc->error_recognition = 1;
|
||||
+#else
|
||||
+ ic->error_recognition = 1;
|
||||
#endif
|
||||
|
||||
if (!codec || avcodec_open(enc, codec) < 0)
|
||||
@@ -157,7 +159,7 @@ static int audio_decode_frame(priv_t * f
|
||||
static int startread(sox_format_t * ft)
|
||||
{
|
||||
priv_t * ffmpeg = (priv_t *)ft->priv;
|
||||
- AVFormatParameters params;
|
||||
+ AVDictionary *params;
|
||||
int ret;
|
||||
int i;
|
||||
|
||||
@@ -172,7 +174,7 @@ static int startread(sox_format_t * ft)
|
||||
|
||||
/* Open file and get format */
|
||||
memset(¶ms, 0, sizeof(params));
|
||||
- if ((ret = av_open_input_file(&ffmpeg->ctxt, ft->filename, NULL, 0, ¶ms)) < 0) {
|
||||
+ if ((ret = avformat_open_input(&ffmpeg->ctxt, ft->filename, NULL, ¶ms)) < 0) {
|
||||
lsx_fail("ffmpeg cannot open file for reading: %s (code %d)", ft->filename, ret);
|
||||
return SOX_EOF;
|
||||
}
|
||||
@@ -231,7 +233,7 @@ static size_t read_samples(sox_format_t
|
||||
/* If input buffer empty, read more data */
|
||||
if (ffmpeg->audio_buf_index * 2 >= ffmpeg->audio_buf_size) {
|
||||
if ((ret = av_read_frame(ffmpeg->ctxt, pkt)) < 0 &&
|
||||
- (ret == AVERROR_EOF || url_ferror(ffmpeg->ctxt->pb)))
|
||||
+ (ret == AVERROR_EOF || ( ffmpeg->ctxt->pb && ffmpeg->ctxt->pb->error)))
|
||||
break;
|
||||
ffmpeg->audio_buf_size = audio_decode_frame(ffmpeg, ffmpeg->audio_buf_aligned, AVCODEC_MAX_AUDIO_FRAME_SIZE);
|
||||
ffmpeg->audio_buf_index = 0;
|
||||
@@ -373,13 +375,6 @@ static int startwrite(sox_format_t * ft)
|
||||
return SOX_EOF;
|
||||
}
|
||||
|
||||
- /* set the output parameters (must be done even if no
|
||||
- parameters). */
|
||||
- if (av_set_parameters(ffmpeg->ctxt, NULL) < 0) {
|
||||
- lsx_fail("ffmpeg invalid output format parameters");
|
||||
- return SOX_EOF;
|
||||
- }
|
||||
-
|
||||
/* Next line for debugging */
|
||||
/* dump_format(ffmpeg->ctxt, 0, ft->filename, 1); */
|
||||
|
||||
@@ -391,14 +386,14 @@ static int startwrite(sox_format_t * ft)
|
||||
|
||||
/* open the output file, if needed */
|
||||
if (!(ffmpeg->fmt->flags & AVFMT_NOFILE)) {
|
||||
- if (url_fopen(&ffmpeg->ctxt->pb, ft->filename, URL_WRONLY) < 0) {
|
||||
+ if (avio_open(&ffmpeg->ctxt->pb, ft->filename, AVIO_FLAG_WRITE) < 0) {
|
||||
lsx_fail("ffmpeg could not open `%s'", ft->filename);
|
||||
return SOX_EOF;
|
||||
}
|
||||
}
|
||||
|
||||
/* write the stream header, if any */
|
||||
- av_write_header(ffmpeg->ctxt);
|
||||
+ avformat_write_header(ffmpeg->ctxt, NULL);
|
||||
|
||||
return SOX_SUCCESS;
|
||||
}
|
||||
@@ -475,11 +470,7 @@ static int stopwrite(sox_format_t * ft)
|
||||
|
||||
if (!(ffmpeg->fmt->flags & AVFMT_NOFILE)) {
|
||||
/* close the output file */
|
||||
-#if (LIBAVFORMAT_VERSION_INT < 0x340000)
|
||||
- url_fclose(&ffmpeg->ctxt->pb);
|
||||
-#else
|
||||
- url_fclose(ffmpeg->ctxt->pb);
|
||||
-#endif
|
||||
+ avio_close(ffmpeg->ctxt->pb);
|
||||
}
|
||||
|
||||
/* Free the output context */
|
|
@ -1,55 +1,11 @@
|
|||
*** diff
|
||||
|
||||
Update to use the new ffmpeg library API, but still work with
|
||||
the old one.
|
||||
|
||||
--- src/ffmpeg.c 2011-06-07 00:29:34.000000000 -0500
|
||||
+++ src/ffmpeg.c 2011-06-07 00:34:12.830996927 -0500
|
||||
@@ -50,6 +50,11 @@
|
||||
#include <ctype.h>
|
||||
#include "ffmpeg.h"
|
||||
|
||||
+#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(52, 64, 0)
|
||||
+#define AVMEDIA_TYPE_AUDIO CODEC_TYPE_AUDIO
|
||||
+#define AV_PKT_FLAG_KEY PKT_FLAG_KEY
|
||||
+#endif
|
||||
+
|
||||
/* Private data for ffmpeg files */
|
||||
typedef struct {
|
||||
int audio_index;
|
||||
@@ -91,7 +96,7 @@ static int stream_component_open(priv_t
|
||||
|
||||
if (!codec || avcodec_open(enc, codec) < 0)
|
||||
return -1;
|
||||
- if (enc->codec_type != CODEC_TYPE_AUDIO) {
|
||||
+ if (enc->codec_type != AVMEDIA_TYPE_AUDIO) {
|
||||
lsx_fail("ffmpeg CODEC %x is not an audio CODEC", enc->codec_type);
|
||||
return -1;
|
||||
}
|
||||
@@ -182,7 +187,7 @@ static int startread(sox_format_t * ft)
|
||||
/* Find audio stream (FIXME: allow different stream to be selected) */
|
||||
for (i = 0; (unsigned)i < ffmpeg->ctxt->nb_streams; i++) {
|
||||
AVCodecContext *enc = ffmpeg->ctxt->streams[i]->codec;
|
||||
- if (enc->codec_type == CODEC_TYPE_AUDIO && ffmpeg->audio_index < 0) {
|
||||
+ if (enc->codec_type == AVMEDIA_TYPE_AUDIO && ffmpeg->audio_index < 0) {
|
||||
ffmpeg->audio_index = i;
|
||||
break;
|
||||
}
|
||||
@@ -273,7 +278,7 @@ static AVStream *add_audio_stream(sox_fo
|
||||
|
||||
c = st->codec;
|
||||
c->codec_id = codec_id;
|
||||
- c->codec_type = CODEC_TYPE_AUDIO;
|
||||
+ c->codec_type = AVMEDIA_TYPE_AUDIO;
|
||||
|
||||
/* put sample parameters */
|
||||
c->bit_rate = 256000; /* FIXME: allow specification */
|
||||
@@ -423,7 +428,7 @@ static size_t write_samples(sox_format_t
|
||||
av_init_packet(&pkt);
|
||||
pkt.size = avcodec_encode_audio(c, ffmpeg->audio_buf_aligned, AVCODEC_MAX_AUDIO_FRAME_SIZE, ffmpeg->samples);
|
||||
pkt.pts = av_rescale_q(c->coded_frame->pts, c->time_base, ffmpeg->audio_st->time_base);
|
||||
- pkt.flags |= PKT_FLAG_KEY;
|
||||
+ pkt.flags |= AV_PKT_FLAG_KEY;
|
||||
pkt.stream_index = ffmpeg->audio_st->index;
|
||||
pkt.data = ffmpeg->audio_buf_aligned;
|
||||
--- src/ffmpeg.h.orig
|
||||
+++ src/ffmpeg.h
|
||||
@@ -27,6 +27,8 @@
|
||||
#include <ffmpeg/avformat.h>
|
||||
#endif
|
||||
|
||||
+#include <libavutil/mathematics.h>
|
||||
+
|
||||
#if defined __SUNPRO_C
|
||||
#pragma enable_warn
|
||||
#elif defined _MSC_VER
|
||||
|
|
16
audio/sox/files/patch-ffmpeg2
Normal file
16
audio/sox/files/patch-ffmpeg2
Normal file
|
@ -0,0 +1,16 @@
|
|||
Index: src/ffmpeg.c
|
||||
===================================================================
|
||||
--- src/ffmpeg.c.orig
|
||||
+++ src/ffmpeg.c
|
||||
@@ -57,6 +57,11 @@
|
||||
#define PKT_FLAG_KEY AV_PKT_FLAG_KEY
|
||||
#endif
|
||||
|
||||
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
|
||||
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE (192000 * 4)
|
||||
+#endif
|
||||
+
|
||||
+
|
||||
/* Private data for ffmpeg files */
|
||||
typedef struct {
|
||||
int audio_index;
|
39
audio/sox/files/patch-libav9
Normal file
39
audio/sox/files/patch-libav9
Normal file
|
@ -0,0 +1,39 @@
|
|||
diff -burN src/ffmpeg.c sox-14.4.0/src/ffmpeg.c
|
||||
--- src/ffmpeg.c.orig 2012-11-25 21:59:45.990825656 +0100
|
||||
+++ src/ffmpeg.c 2012-11-25 22:07:06.436809624 +0100
|
||||
@@ -98,7 +98,7 @@
|
||||
ic->error_recognition = 1;
|
||||
#endif
|
||||
|
||||
- if (!codec || avcodec_open(enc, codec) < 0)
|
||||
+ if (!codec || avcodec_open2(enc, codec, NULL) < 0)
|
||||
return -1;
|
||||
if (enc->codec_type != AVMEDIA_TYPE_AUDIO) {
|
||||
lsx_fail("ffmpeg CODEC %x is not an audio CODEC", enc->codec_type);
|
||||
@@ -180,7 +180,7 @@
|
||||
}
|
||||
|
||||
/* Get CODEC parameters */
|
||||
- if ((ret = av_find_stream_info(ffmpeg->ctxt)) < 0) {
|
||||
+ if ((ret = avformat_find_stream_info(ffmpeg->ctxt, NULL)) < 0) {
|
||||
lsx_fail("ffmpeg could not find CODEC parameters for %s", ft->filename);
|
||||
return SOX_EOF;
|
||||
}
|
||||
@@ -274,7 +274,7 @@
|
||||
AVCodecContext *c;
|
||||
AVStream *st;
|
||||
|
||||
- st = av_new_stream(oc, 1);
|
||||
+ st = avformat_new_stream(oc, NULL);
|
||||
if (!st) {
|
||||
lsx_fail("ffmpeg could not alloc stream");
|
||||
return NULL;
|
||||
@@ -308,7 +308,7 @@
|
||||
}
|
||||
|
||||
/* open it */
|
||||
- if (avcodec_open(c, codec) < 0) {
|
||||
+ if (avcodec_open2(c, codec, NULL) < 0) {
|
||||
lsx_fail("ffmpeg could not open CODEC");
|
||||
return SOX_EOF;
|
||||
}
|
|
@ -1,14 +1,17 @@
|
|||
@comment $FreeBSD$
|
||||
bin/play
|
||||
bin/rec
|
||||
bin/sox
|
||||
bin/soxi
|
||||
include/sox.h
|
||||
include/soxstdint.h
|
||||
lib/libsox.a
|
||||
lib/libsox.la
|
||||
lib/libsox.so
|
||||
lib/libsox.so.1
|
||||
@exec mkdir -p %D/lib/sox
|
||||
@dirrm lib/sox
|
||||
lib/libsox.so.2
|
||||
man/man1/play.1.gz
|
||||
man/man1/rec.1.gz
|
||||
man/man1/sox.1.gz
|
||||
man/man1/soxi.1.gz
|
||||
man/man3/libsox.3.gz
|
||||
man/man7/soxeffect.7.gz
|
||||
man/man7/soxformat.7.gz
|
||||
libdata/pkgconfig/sox.pc
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= bino
|
||||
PORTVERSION= 1.2.1
|
||||
PORTREVISION= 1
|
||||
PORTVERSION= 1.4.2
|
||||
CATEGORIES= multimedia
|
||||
MASTER_SITES= http://download.savannah.nongnu.org/releases/bino/ http://levsha.me/ports/distfiles/
|
||||
|
||||
|
@ -13,20 +12,19 @@ COMMENT= 3D video player with multi-display support
|
|||
LICENSE= GPLv3
|
||||
|
||||
FETCH_ARGS= -Fpr
|
||||
USES= pkgconfig
|
||||
USES= gmake pkgconfig
|
||||
USE_XZ= yes
|
||||
GNU_CONFIGURE= yes
|
||||
USE_GMAKE= yes
|
||||
INSTALLS_ICONS= yes
|
||||
USE_QT4= moc_build opengl rcc_build
|
||||
|
||||
# no port fow equalizer now, lirc detecting not working
|
||||
CONFIGURE_ARGS+= --without-equalizer --without-liblircclient --docdir=${DOCSDIR}
|
||||
|
||||
LIB_DEPENDS+= ass.5:${PORTSDIR}/multimedia/libass \
|
||||
avformat.1:${PORTSDIR}/multimedia/ffmpeg \
|
||||
GLEW.1:${PORTSDIR}/graphics/glew \
|
||||
openal.1:${PORTSDIR}/audio/openal-soft
|
||||
LIB_DEPENDS+= libass.so:${PORTSDIR}/multimedia/libass \
|
||||
libavformat.so:${PORTSDIR}/multimedia/ffmpeg \
|
||||
libGLEW.so:${PORTSDIR}/graphics/glew \
|
||||
libopenal.so:${PORTSDIR}/audio/openal-soft
|
||||
|
||||
MAN1= bino.1
|
||||
INFO= bino
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (bino-1.2.1.tar.xz) = 2573ba0c0f8ae1f2cb8f7ecb5ac311146ac2759b52087bf6c8580942054458d0
|
||||
SIZE (bino-1.2.1.tar.xz) = 714608
|
||||
SHA256 (bino-1.4.2.tar.xz) = 6cd88eb16ffee30a3cbb9b5d313feb61b91068387ae846ff96d9e99dcb5c88b6
|
||||
SIZE (bino-1.4.2.tar.xz) = 794272
|
||||
|
|
13
multimedia/bino/files/patch-src-media_object.cpp
Normal file
13
multimedia/bino/files/patch-src-media_object.cpp
Normal file
|
@ -0,0 +1,13 @@
|
|||
--- src/media_object.cpp.orig 2013-10-07 13:20:40.603922682 -0300
|
||||
+++ src/media_object.cpp 2013-10-07 13:21:13.558920266 -0300
|
||||
@@ -56,6 +56,10 @@
|
||||
|
||||
#include "media_object.h"
|
||||
|
||||
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
|
||||
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
|
||||
+#endif
|
||||
+
|
||||
|
||||
// The read thread.
|
||||
// This thread reads packets from the AVFormatContext and stores them in the
|
|
@ -1,11 +1,8 @@
|
|||
# Created by: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
|
||||
# Created by: Martin Matuska <mm@FreeBSD.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= ffmpeg
|
||||
PORTVERSION= 0.7.15
|
||||
PORTREVISION= 2
|
||||
PORTEPOCH= 1
|
||||
PORTREVISION= 2
|
||||
PORTVERSION= 2.0.1
|
||||
CATEGORIES= multimedia audio ipv6 net
|
||||
MASTER_SITES= http://ffmpeg.org/releases/
|
||||
|
||||
|
@ -14,66 +11,207 @@ COMMENT= Realtime audio/video encoder/converter and streaming server
|
|||
|
||||
LICENSE= GPLv2 LGPL21
|
||||
LICENSE_COMB= multi
|
||||
LICENSE_FILE_GPLv2= ${WRKSRC}/COPYING.GPLv2
|
||||
LICENSE_FILE_LGPL21= ${WRKSRC}/COPYING.LGPLv2.1
|
||||
|
||||
BUILD_DEPENDS= yasm:${PORTSDIR}/devel/yasm \
|
||||
${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils \
|
||||
${LOCALBASE}/bin/texi2html:${PORTSDIR}/textproc/texi2html
|
||||
|
||||
CONFLICTS= libav-[0-9]*
|
||||
PORTSCOUT= limit:^0\..*
|
||||
texi2html:${PORTSDIR}/textproc/texi2html
|
||||
|
||||
HAS_CONFIGURE= yes
|
||||
CONFIGURE_LOG= config.err
|
||||
USES= gmake perl5 pkgconfig
|
||||
USES= gmake pkgconfig perl5
|
||||
USE_PERL5= build
|
||||
USE_BZIP2= yes
|
||||
WANT_SDL= yes
|
||||
USE_PERL5= build
|
||||
|
||||
OPTIONS_DEFINE= AACPLUS ALSA AMR_NB AMR_WB CELT DEBUG DIRAC FAAC \
|
||||
FFSERVER FREETYPE FREI0R GSM LAME OPENCV OPENJPEG \
|
||||
OPTIMIZED_CFLAGS RTMP SCHROEDINGER SDL SPEEX THEORA VAAPI \
|
||||
VDPAU VO_AACENC VO_AMRWBENC VORBIS VPX X11GRAB X264 XVID
|
||||
OPTIONS_DEFINE= AACPLUS ALSA AMR_NB AMR_WB ASS CDIO CELT DEBUG FAAC \
|
||||
FDK_AAC FFSERVER FONTCONFIG FREETYPE FREI0R GNUTLS GSM ICONV \
|
||||
LAME LIBBLURAY LIBV4L MODPLUG OPENAL OPENCV OPENJPEG OPENSSL \
|
||||
OPTIMIZED_CFLAGS OPUS PULSEAUDIO RTMP SCHROEDINGER SDL SPEEX \
|
||||
THEORA VAAPI VDPAU VO_AACENC VO_AMRWBENC VORBIS VPX \
|
||||
X11GRAB X264 XVID
|
||||
|
||||
OPTIONS_DEFAULT= FFSERVER FREETYPE FREI0R OPENCV SCHROEDINGER THEORA \
|
||||
VORBIS VPX X264 XVID
|
||||
OPTIONS_DEFAULT= FFSERVER FONTCONFIG FREETYPE FREI0R GNUTLS ICONV \
|
||||
OPENCV SCHROEDINGER THEORA VORBIS VPX X264 XVID
|
||||
|
||||
ASS_DESC= Subtitles rendering via libass
|
||||
CDIO_DESC= Audio CD grabbing with libcdio
|
||||
FDK_AAC_DESC= AAC audio encoding via Fraunhofer FDK
|
||||
FFSERVER_DESC= Build and install ffserver
|
||||
LIBV4L_DESC= Video for Linux support
|
||||
OPUS_DESC= Opus decoding with libopus
|
||||
X11GRAB_DESC= Enable x11 grabbing
|
||||
|
||||
COMPAT_HEADERS=libavcodec/avcodec.h \
|
||||
libavcodec/opt.h \
|
||||
libavcodec/vdpau.h \
|
||||
libavcodec/xvmc.h \
|
||||
libavdevice/avdevice.h \
|
||||
libavfilter/avfilter.h \
|
||||
libavformat/avformat.h \
|
||||
libavformat/avio.h \
|
||||
libavutil/adler32.h \
|
||||
libavutil/avstring.h \
|
||||
libavutil/avutil.h \
|
||||
libavutil/base64.h \
|
||||
libavutil/common.h \
|
||||
libavutil/crc.h \
|
||||
libavutil/fifo.h \
|
||||
libavutil/intfloat_readwrite.h \
|
||||
libavutil/log.h \
|
||||
libavutil/lzo.h \
|
||||
libavutil/mathematics.h \
|
||||
libavutil/md5.h \
|
||||
libavutil/mem.h \
|
||||
libavutil/pixfmt.h \
|
||||
libavutil/rational.h \
|
||||
libavutil/sha1.h \
|
||||
libpostproc/postprocess.h \
|
||||
libswscale/swscale.h
|
||||
# aacplus
|
||||
AACPLUS_LIB_DEPENDS= libaacplus.so:${PORTSDIR}/audio/libaacplus
|
||||
AACPLUS_CONFIGURE_ENABLE= libaacplus
|
||||
|
||||
# alsa
|
||||
ALSA_CONFIGURE_OFF= --disable-indev=alsa \
|
||||
--disable-outdev=alsa
|
||||
ALSA_LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib
|
||||
|
||||
# Opencore AMR NB
|
||||
AMR_NB_LIB_DEPENDS= libopencore-amrnb.so:${PORTSDIR}/audio/opencore-amr
|
||||
AMR_NB_CONFIGURE_ENABLE= libopencore-amrnb
|
||||
|
||||
# Opencore AMR WB
|
||||
AMR_WB_LIB_DEPENDS= libopencore-amrwb.so:${PORTSDIR}/audio/opencore-amr
|
||||
AMR_WB_CONFIGURE_ENABLE= libopencore-amrwb
|
||||
|
||||
# ass
|
||||
ASS_LIB_DEPENDS= libass.so:${PORTSDIR}/multimedia/libass
|
||||
ASS_CONFIGURE_ENABLE= libass
|
||||
|
||||
# cdio
|
||||
CDIO_LIB_DEPENDS= libcdio.so:${PORTSDIR}/sysutils/libcdio
|
||||
CDIO_CONFIGURE_ENABLE= libcdio
|
||||
|
||||
# celt
|
||||
CELT_LIB_DEPENDS= libcelt0.so:${PORTSDIR}/audio/celt
|
||||
CELT_CONFIGURE_ENABLE= libcelt
|
||||
|
||||
# faac
|
||||
FAAC_LIB_DEPENDS= libfaac.so:${PORTSDIR}/audio/faac
|
||||
FAAC_CONFIGURE_ENABLE= libfaac
|
||||
|
||||
# fdk_aac
|
||||
FDK_AAC_LIB_DEPENDS= libfdk-aac.so:${PORTSDIR}/audio/fdk-aac
|
||||
FDK_AAC_CONFIGURE_ENABLE= libfdk-aac
|
||||
|
||||
# ffserver
|
||||
FFSERVER_CONFIGURE_ENABLE= ffserver
|
||||
|
||||
# fontconfig
|
||||
FONTCONFIG_LIB_DEPENDS= libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig
|
||||
FONTCONFIG_CONFIGURE_ENABLE= fontconfig
|
||||
|
||||
# freetype
|
||||
FREETYPE_LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2
|
||||
FREETYPE_CONFIGURE_ENABLE= libfreetype
|
||||
|
||||
# frei0r
|
||||
FREI0R_BUILD_DEPENDS= ${LOCALBASE}/include/frei0r.h:${PORTSDIR}/graphics/frei0r
|
||||
FREI0R_CONFIGURE_ENABLE= frei0r
|
||||
|
||||
# gnutls
|
||||
GNUTLS_LIB_DEPENDS= libgnutls.so:${PORTSDIR}/security/gnutls
|
||||
GNUTLS_CONFIGURE_ENABLE= gnutls
|
||||
|
||||
# gsm
|
||||
GSM_LIB_DEPENDS= libgsm.so:${PORTSDIR}/audio/gsm
|
||||
GSM_CONFIGURE_ENABLE= libgsm
|
||||
|
||||
# iconv
|
||||
ICONV_USES= iconv
|
||||
ICONV_CONFIGURE_ENABLE= iconv
|
||||
|
||||
# lame
|
||||
LAME_LIB_DEPENDS= libmp3lame.so:${PORTSDIR}/audio/lame
|
||||
LAME_CONFIGURE_ENABLE= libmp3lame
|
||||
|
||||
# libbluray
|
||||
LIBBLURAY_LIB_DEPENDS= libbluray.so:${PORTSDIR}/multimedia/libbluray
|
||||
LIBBLURAY_CONFIGURE_ENABLE= libbluray
|
||||
|
||||
# libv4l
|
||||
LIBV4L_LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l
|
||||
LIBV4L_CONFIGURE_ENABLE= libv4l2
|
||||
|
||||
# modplug
|
||||
MODPLUG_LIB_DEPENDS= libmodplug.so:${PORTSDIR}/audio/libmodplug
|
||||
MODPLUG_CONFIGURE_ENABLE= libmodplug
|
||||
|
||||
# OpenAL
|
||||
OPENAL_LIB_DEPENDS= libopenal.so:${PORTSDIR}/audio/openal-soft
|
||||
OPENAL_CONFIGURE_ENABLE= openal
|
||||
|
||||
# opencv
|
||||
OPENCV_LIB_DEPENDS= libopencv_imgproc.so:${PORTSDIR}/graphics/opencv-core
|
||||
OPENCV_CONFIGURE_ENABLE= libopencv
|
||||
|
||||
# openjpeg
|
||||
OPENJPEG_LIB_DEPENDS= libopenjpeg.so:${PORTSDIR}/graphics/openjpeg
|
||||
OPENJPEG_CONFIGURE_ENABLE= libopenjpeg
|
||||
|
||||
# opus
|
||||
OPUS_LIB_DEPENDS= libopus.so:${PORTSDIR}/audio/opus
|
||||
OPUS_CONFIGURE_ENABLE= libopus
|
||||
|
||||
# pulseaudio
|
||||
PULSEAUDIO_LIB_DEPENDS= libpulse.so:${PORTSDIR}/audio/pulseaudio
|
||||
PULSEAUDIO_CONFIGURE_ENABLE= libpulse
|
||||
|
||||
# rtmp
|
||||
RTMP_LIB_DEPENDS= librtmp.so:${PORTSDIR}/multimedia/rtmpdump
|
||||
RTMP_CONFIGURE_ENABLE= librtmp
|
||||
|
||||
# schroedinger
|
||||
SCHROEDINGER_LIB_DEPENDS= libschroedinger-1.0.so:${PORTSDIR}/multimedia/schroedinger
|
||||
SCHROEDINGER_CONFIGURE_ENABLE= libschroedinger
|
||||
|
||||
# speex
|
||||
SPEEX_LIB_DEPENDS= libspeex.so:${PORTSDIR}/audio/speex
|
||||
SPEEX_CONFIGURE_ENABLE= libspeex
|
||||
|
||||
# theora
|
||||
THEORA_LIB_DEPENDS= libtheora.so:${PORTSDIR}/multimedia/libtheora
|
||||
THEORA_CONFIGURE_ENABLE= libtheora
|
||||
|
||||
# vaapi
|
||||
VAAPI_LIB_DEPENDS= libva.so:${PORTSDIR}/multimedia/libva
|
||||
VAAPI_CONFIGURE_ENABLE= vaapi
|
||||
|
||||
# vdpau
|
||||
VDPAU_BUILD_DEPENDS= ${LOCALBASE}/include/vdpau/vdpau.h:${PORTSDIR}/multimedia/libvdpau
|
||||
VDPAU_CONFIGURE_ENABLE= vdpau
|
||||
|
||||
# vo-aacenc
|
||||
VO_AACENC_LIB_DEPENDS= libvo-aacenc.so:${PORTSDIR}/audio/vo-aacenc
|
||||
VO_AACENC_CONFIGURE_ENABLE= libvo-aacenc
|
||||
|
||||
# vo-amrwbenc
|
||||
VO_AMRWBENC_LIB_DEPENDS= libvo-amrwbenc.so:${PORTSDIR}/audio/vo-amrwbenc
|
||||
VO_AMRWBENC_CONFIGURE_ENABLE= libvo-amrwbenc
|
||||
|
||||
# vorbis
|
||||
VORBIS_LIB_DEPENDS= libvorbisenc.so:${PORTSDIR}/audio/libvorbis
|
||||
VORBIS_CONFIGURE_ENABLE= libvorbis
|
||||
|
||||
# vp8
|
||||
VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx
|
||||
VPX_CONFIGURE_ENABLE= libvpx
|
||||
|
||||
# x264
|
||||
X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
|
||||
X264_CONFIGURE_ENABLE= libx264
|
||||
|
||||
# xvid
|
||||
XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid
|
||||
XVID_CONFIGURE_ENABLE= libxvid
|
||||
|
||||
FFPROGS= ffmpeg ffprobe
|
||||
INSTALL_TARGET= install-progs install-data install-libs install-headers
|
||||
#FFMPEG_SUFFIX= 2
|
||||
#PLIST_SUB+= SUFF="${FFMPEG_SUFFIX}"
|
||||
|
||||
#USE_LDCONFIG= ${PREFIX}/lib/ffmpeg${FFMPEG_SUFFIX}
|
||||
DATADIR= ${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX}
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
# rtmp
|
||||
.if ${PORT_OPTIONS:MRTMP}
|
||||
# ssl
|
||||
.if ${PORT_OPTIONS:MOPENSSL} && empty(PORT_OPTIONS:MGNUTLS)
|
||||
USE_OPENSSL= yes
|
||||
FFMPEG_NONFREE= yes
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MAACPLUS} || ${PORT_OPTIONS:MFAAC} || ${PORT_OPTIONS:MFDK_AAC}
|
||||
FFMPEG_NONFREE= yes
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MAMR_NB} || ${PORT_OPTIONS:MAMR_WB} || \
|
||||
${PORT_OPTIONS:MVO_AACENC} || ${PORT_OPTIONS:MVO_AMRWBENC}
|
||||
FFMPEG_LICENSE_GPL3= yes
|
||||
.endif
|
||||
|
||||
# x11grab
|
||||
|
@ -84,29 +222,32 @@ CONFIGURE_ARGS+= --enable-x11grab
|
|||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
DATADIR= ${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX}
|
||||
DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX}
|
||||
CONFIGURE_ENV+= COMPILER_PATH=${LOCALBASE}/bin
|
||||
MAKE_ENV+= COMPILER_PATH=${LOCALBASE}/bin
|
||||
|
||||
CONFIGURE_ARGS+=--prefix="${PREFIX}" \
|
||||
--mandir="${PREFIX}/man" \
|
||||
--datadir="${DATADIR}" \
|
||||
--enable-shared \
|
||||
--enable-gpl \
|
||||
--enable-postproc \
|
||||
--enable-avfilter \
|
||||
--enable-avresample \
|
||||
--enable-pthreads \
|
||||
--enable-memalign-hack \
|
||||
--enable-runtime-cpudetect \
|
||||
--disable-libstagefright-h264 \
|
||||
--disable-libutvideo \
|
||||
--disable-libsoxr \
|
||||
--cc="${CC}" \
|
||||
--extra-cflags="${FFMPEG_CFLAGS} -I${LOCALBASE}/include" \
|
||||
--extra-ldflags="-L${LOCALBASE}/lib ${FFMPEG_LDFLAGS}" \
|
||||
--extra-libs="${PTHREAD_LIBS}"
|
||||
SHLIB_VER= 1
|
||||
PLIST_SUB= SHLIB_VER=${SHLIB_VER}
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
DOC_FILES= CREDITS INSTALL LICENSE MAINTAINERS README RELEASE
|
||||
DOC_FILES= Changelog CREDITS INSTALL LICENSE MAINTAINERS README
|
||||
# under doc subdirectory
|
||||
DOC_DOCFILES= APIchanges RELEASE_NOTES TODO *.txt *.html
|
||||
DOC_DOCFILES= APIchanges RELEASE_NOTES *.txt *.html
|
||||
PORTDOCS= *
|
||||
|
||||
.if ${PORT_OPTIONS:MDEBUG}
|
||||
|
@ -134,7 +275,7 @@ _NO_BUILTIN_VECTOR= yes
|
|||
|
||||
# builtin vector, requires mmx and sse
|
||||
.if !defined(_NO_BUILTIN_VECTOR) && defined(_BUILTIN_VECTOR)
|
||||
CFLAGS+= -msse
|
||||
FFMPEG_CFLAGS+= -msse
|
||||
.endif
|
||||
|
||||
# optimizations
|
||||
|
@ -142,232 +283,33 @@ CFLAGS+= -msse
|
|||
CFLAGS+= -O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer
|
||||
.endif
|
||||
|
||||
#aacplus
|
||||
.if ${PORT_OPTIONS:MAACPLUS}
|
||||
FFMPEG_NONFREE= yes
|
||||
LIB_DEPENDS+= aacplus.2:${PORTSDIR}/audio/libaacplus
|
||||
CONFIGURE_ARGS+= --enable-libaacplus
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libaacplus
|
||||
.endif
|
||||
|
||||
#alsa
|
||||
.if ${PORT_OPTIONS:MALSA}
|
||||
LIB_DEPENDS+= asound.2:${PORTSDIR}/audio/alsa-lib
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-indev=alsa \
|
||||
--disable-outdev=alsa
|
||||
.endif
|
||||
|
||||
# Opencore AMR NB
|
||||
.if ${PORT_OPTIONS:MAMR_NB}
|
||||
FFMPEG_LICENSE_GPL3= yes
|
||||
LIB_DEPENDS+= opencore-amrnb.0:${PORTSDIR}/audio/opencore-amr
|
||||
CONFIGURE_ARGS+= --enable-libopencore-amrnb
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libopencore-amrnb
|
||||
.endif
|
||||
|
||||
# Opencore AMR WB
|
||||
.if ${PORT_OPTIONS:MAMR_WB}
|
||||
FFMPEG_LICENSE_GPL3= yes
|
||||
LIB_DEPENDS+= opencore-amrwb.0:${PORTSDIR}/audio/opencore-amr
|
||||
CONFIGURE_ARGS+= --enable-libopencore-amrwb
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libopencore-amrwb
|
||||
.endif
|
||||
|
||||
# celt
|
||||
.if ${PORT_OPTIONS:MCELT}
|
||||
LIB_DEPENDS+= celt0.2:${PORTSDIR}/audio/celt
|
||||
CONFIGURE_ARGS+= --enable-libcelt
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libcelt
|
||||
.endif
|
||||
|
||||
# dirac
|
||||
.if ${PORT_OPTIONS:MDIRAC}
|
||||
LIB_DEPENDS+= dirac_encoder.1:${PORTSDIR}/multimedia/dirac
|
||||
CONFIGURE_ARGS+= --enable-libdirac
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libdirac
|
||||
.endif
|
||||
|
||||
# faac
|
||||
.if ${PORT_OPTIONS:MFAAC}
|
||||
FFMPEG_NONFREE= yes
|
||||
LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac
|
||||
CONFIGURE_ARGS+= --enable-libfaac
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libfaac
|
||||
.endif
|
||||
|
||||
# ffserver
|
||||
.if ${PORT_OPTIONS:MFFSERVER}
|
||||
PLIST_SUB+= FFSERVER=""
|
||||
.else
|
||||
PLIST_SUB+= FFSERVER="@comment "
|
||||
CONFIGURE_ARGS+= --disable-ffserver
|
||||
.endif
|
||||
|
||||
# freetype
|
||||
.if ${PORT_OPTIONS:MFREETYPE}
|
||||
LIB_DEPENDS+= freetype.9:${PORTSDIR}/print/freetype2
|
||||
CONFIGURE_ARGS+= --enable-libfreetype
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libfreetype
|
||||
.endif
|
||||
|
||||
# frei0r
|
||||
.if ${PORT_OPTIONS:MFREI0R}
|
||||
BUILD_DEPENDS+= ${LOCALBASE}/include/frei0r.h:${PORTSDIR}/graphics/frei0r
|
||||
CONFIGURE_ARGS+= --enable-frei0r
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-frei0r
|
||||
.endif
|
||||
|
||||
# gsm
|
||||
.if ${PORT_OPTIONS:MGSM}
|
||||
LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm
|
||||
CONFIGURE_ARGS+= --enable-libgsm
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libgsm
|
||||
.endif
|
||||
|
||||
# mp3
|
||||
.if ${PORT_OPTIONS:MLAME}
|
||||
LIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame
|
||||
CONFIGURE_ARGS+= --enable-libmp3lame
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libmp3lame
|
||||
.endif
|
||||
|
||||
# opencv
|
||||
.if ${PORT_OPTIONS:MOPENCV}
|
||||
LIB_DEPENDS+= opencv_imgproc.2:${PORTSDIR}/graphics/opencv-core
|
||||
CONFIGURE_ARGS+= --enable-libopencv
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libopencv
|
||||
.endif
|
||||
|
||||
# openjpeg
|
||||
.if ${PORT_OPTIONS:MOPENJPEG}
|
||||
LIB_DEPENDS+= openjpeg.2:${PORTSDIR}/graphics/openjpeg
|
||||
CONFIGURE_ARGS+= --enable-libopenjpeg
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libopenjpeg
|
||||
.endif
|
||||
|
||||
# rtmp
|
||||
.if ${PORT_OPTIONS:MRTMP}
|
||||
LIB_DEPENDS+= rtmp.0:${PORTSDIR}/multimedia/rtmpdump
|
||||
CONFIGURE_ARGS+= --enable-librtmp
|
||||
. if ${OPENSSLBASE} != "/usr"
|
||||
FFMPEG_CFLAGS+= -I${OPENSSLINC}
|
||||
FFMPEG_LDFLAGS+= -L${OPENSSLLIB}
|
||||
PLIST_FILES+= man/man1/ffserver.1.gz
|
||||
FFPROGS+= ffserver
|
||||
. if ${PORT_OPTIONS:MDOCS}
|
||||
DOC_DOCFILES+= ffserver.html
|
||||
. endif
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-librtmp
|
||||
.endif
|
||||
|
||||
# schroedinger
|
||||
.if ${PORT_OPTIONS:MSCHROEDINGER}
|
||||
LIB_DEPENDS+= schroedinger-1.0.11:${PORTSDIR}/multimedia/schroedinger
|
||||
CONFIGURE_ARGS+= --enable-libschroedinger
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libschroedinger
|
||||
PLIST_SUB+= FFSERVER="@comment "
|
||||
.endif
|
||||
|
||||
# sdl
|
||||
.if ${PORT_OPTIONS:MSDL}
|
||||
USE_SDL+= sdl
|
||||
PLIST_FILES+= bin/ffplay man/man1/ffplay.1.gz
|
||||
FFPROGS+= ffplay
|
||||
.if ${PORT_OPTIONS:MDOCS}
|
||||
DOC_DOCFILES+= ffplay.html
|
||||
.endif
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-ffplay
|
||||
.endif
|
||||
|
||||
# speex
|
||||
.if ${PORT_OPTIONS:MSPEEX}
|
||||
LIB_DEPENDS+= speex.1:${PORTSDIR}/audio/speex
|
||||
CONFIGURE_ARGS+= --enable-libspeex
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libspeex
|
||||
.endif
|
||||
|
||||
# theora
|
||||
.if ${PORT_OPTIONS:MTHEORA}
|
||||
LIB_DEPENDS+= theora.0:${PORTSDIR}/multimedia/libtheora
|
||||
CONFIGURE_ARGS+= --enable-libtheora
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libtheora
|
||||
.endif
|
||||
|
||||
# vaapi
|
||||
.if ${PORT_OPTIONS:MVAAPI}
|
||||
FFMPEG_LICENSE_GPL3= yes
|
||||
LIB_DEPENDS+= va.1:${PORTSDIR}/multimedia/libva
|
||||
CONFIGURE_ARGS+= --enable-vaapi
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-vaapi
|
||||
.endif
|
||||
|
||||
# vdpau
|
||||
.if ${PORT_OPTIONS:MVDPAU}
|
||||
BUILD_DEPENDS+= ${LOCALBASE}/include/vdpau/vdpau.h:${PORTSDIR}/multimedia/libvdpau
|
||||
CONFIGURE_ARGS+= --enable-vdpau
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-vdpau
|
||||
.endif
|
||||
|
||||
# vo-aacenc
|
||||
.if ${PORT_OPTIONS:MVO_AACENC}
|
||||
FFMPEG_LICENSE_GPL3= yes
|
||||
LIB_DEPENDS+= vo-aacenc.0:${PORTSDIR}/audio/vo-aacenc
|
||||
CONFIGURE_ARGS+= --enable-libvo-aacenc
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libvo-aacenc
|
||||
.endif
|
||||
|
||||
# vo-amrwbenc
|
||||
.if ${PORT_OPTIONS:MVO_AMRWBENC}
|
||||
FFMPEG_LICENSE_GPL3= yes
|
||||
LIB_DEPENDS+= vo-amrwbenc.0:${PORTSDIR}/audio/vo-amrwbenc
|
||||
CONFIGURE_ARGS+= --enable-libvo-amrwbenc
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libvo-amrwbenc
|
||||
.endif
|
||||
|
||||
# vorbis
|
||||
.if ${PORT_OPTIONS:MVORBIS}
|
||||
LIB_DEPENDS+= vorbisenc.2:${PORTSDIR}/audio/libvorbis
|
||||
CONFIGURE_ARGS+= --enable-libvorbis
|
||||
FFMPEG_CFLAGS+= -I${LOCALBASE}/include/vorbis
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libvorbis
|
||||
.endif
|
||||
|
||||
# vp8
|
||||
.if ${PORT_OPTIONS:MVPX}
|
||||
LIB_DEPENDS+= vpx.1:${PORTSDIR}/multimedia/libvpx
|
||||
CONFIGURE_ARGS+= --enable-libvpx
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libvpx
|
||||
.endif
|
||||
|
||||
# x264
|
||||
.if ${PORT_OPTIONS:MX264}
|
||||
LIB_DEPENDS+= x264:${PORTSDIR}/multimedia/x264
|
||||
CONFIGURE_ARGS+= --enable-libx264
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libx264
|
||||
.endif
|
||||
|
||||
# xvid
|
||||
.if ${PORT_OPTIONS:MXVID}
|
||||
LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid
|
||||
CONFIGURE_ARGS+= --enable-libxvid
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-libxvid
|
||||
.endif
|
||||
|
||||
# License knobs
|
||||
|
@ -377,16 +319,16 @@ CONFIGURE_ARGS+= --enable-nonfree
|
|||
.endif
|
||||
|
||||
.if defined(FFMPEG_LICENSE_GPL3)
|
||||
LICENSE+= GPLv3 LGPL3
|
||||
CONFIGURE_ARGS+= --enable-version3
|
||||
LICENSE= GPLv3 LGPL3
|
||||
LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING.GPLv3
|
||||
LICENSE_FILE_LGPL3= ${WRKSRC}/COPYING.LGPLv3
|
||||
CONFIGURE_ARGS+= --enable-version3
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
# {C,LD}FLAGS safeness
|
||||
@${REINPLACE_CMD} -e 's|$$(LIBDIR)/pkgconfig|$$(DESTDIR)$$(prefix)/libdata/pkgconfig|' \
|
||||
${WRKSRC}/subdir.mak
|
||||
${WRKSRC}/library.mak
|
||||
@${REINPLACE_CMD} -e 's|/etc/ffserver.conf|${PREFIX}/etc/ffserver.conf|' \
|
||||
${WRKSRC}/ffserver.c
|
||||
@${REINPLACE_CMD} -E \
|
||||
|
@ -395,12 +337,12 @@ post-patch:
|
|||
s|-pthread|${PTHREAD_LIBS}|g; \
|
||||
s|gsm/gsm.h|gsm.h|g" \
|
||||
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
|
||||
@${REINPLACE_CMD} -e 's|-ldl||; s|$$(LIBMAJOR)|${SHLIB_VER}|g;' \
|
||||
@${REINPLACE_CMD} -e 's|-ldl||' \
|
||||
-e 's|opencv opencv/cxcore.h|opencv-core opencv2/core/core_c.h|g' \
|
||||
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
|
||||
@${REINPLACE_CMD} -e 's|/usr/bin/perl|${PERL5}|g' \
|
||||
${WRKSRC}/doc/texi2pod.pl
|
||||
.if ${PORT_OPTIONS:MDSL}
|
||||
.if ${PORT_OPTIONS:MSDL}
|
||||
@${REINPLACE_CMD} -E \
|
||||
-e 's|sdl-config|${SDL_CONFIG}|g' \
|
||||
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
|
||||
|
@ -417,8 +359,13 @@ post-configure:
|
|||
.endif
|
||||
|
||||
post-install:
|
||||
.for PROG in ${FFPROGS}
|
||||
@${MKDIR} ${STAGEDIR}${MAN1PREFIX}/man/man1
|
||||
${INSTALL_MAN} ${WRKSRC}/doc/${PROG}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/${PROG}.1
|
||||
.endfor
|
||||
.if ${PORT_OPTIONS:MFFSERVER}
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf ${STAGEDIR}${PREFIX}/etc/ffserver.conf-dist
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf \
|
||||
${STAGEDIR}${PREFIX}/etc/ffserver.conf-dist
|
||||
.endif
|
||||
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
.for FILE in ${DOC_FILES}
|
||||
|
@ -427,12 +374,5 @@ post-install:
|
|||
.for FILE in ${DOC_DOCFILES}
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/${FILE} ${STAGEDIR}${DOCSDIR}
|
||||
.endfor
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/include/ffmpeg
|
||||
.for FILE in ${COMPAT_HEADERS}
|
||||
${LN} -sf ../${FILE} ${STAGEDIR}${PREFIX}/include/ffmpeg/${FILE:C,^[^/]+/([^/]+).*,\1,}
|
||||
.endfor
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/include/postproc
|
||||
${LN} -sf ../libpostproc/postprocess.h \
|
||||
${STAGEDIR}${PREFIX}/include/postproc/postprocess.h
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (ffmpeg-0.7.15.tar.bz2) = c5145aab922076b9986168214c9bd607f4664644f14f9074499fc52a039fcfd9
|
||||
SIZE (ffmpeg-0.7.15.tar.bz2) = 4528584
|
||||
SHA256 (ffmpeg-2.0.1.tar.bz2) = 611eae7e3485d5fd9ff03e0ac7575ea89bc8105e40e99a40de02324957482f95
|
||||
SIZE (ffmpeg-2.0.1.tar.bz2) = 6187933
|
||||
|
|
11
multimedia/ffmpeg/files/patch-Makefile
Normal file
11
multimedia/ffmpeg/files/patch-Makefile
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- Makefile.orig 2012-05-04 12:24:34.447846798 +0200
|
||||
+++ Makefile 2012-05-04 12:24:42.471850113 +0200
|
||||
@@ -79,7 +79,7 @@
|
||||
$(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V))))
|
||||
SUBDIR := $(1)/
|
||||
include $(SRC_PATH)/$(1)/Makefile
|
||||
--include $(SRC_PATH)/$(1)/$(ARCH)/Makefile
|
||||
+-include $(SRC_PATH)/$(1)/$(FFMPEG_ARCH)/Makefile
|
||||
include $(SRC_PATH)/library.mak
|
||||
endef
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
--- configure.orig 2011-06-21 21:29:25.000000000 +0200
|
||||
+++ configure 2011-06-23 13:36:46.099381871 +0200
|
||||
@@ -1657,7 +1657,7 @@
|
||||
nm_opts='-g'
|
||||
--- configure.orig
|
||||
+++ configure
|
||||
@@ -2147,7 +2147,7 @@ yasmexe_default="yasm"
|
||||
nogas=":"
|
||||
|
||||
# machine
|
||||
-arch_default=$(uname -m)
|
||||
|
@ -9,23 +9,49 @@
|
|||
cpu="generic"
|
||||
|
||||
# OS
|
||||
@@ -2966,8 +2966,8 @@
|
||||
texi2html -version > /dev/null 2>&1 && enable texi2html || disable texi2html
|
||||
@@ -3991,10 +3991,10 @@ perl --version > /dev/null 2>&1 && enabl
|
||||
pod2man --help > /dev/null 2>&1 && enable pod2man || disable pod2man
|
||||
rsync --help 2> /dev/null | grep -q 'contimeout' && enable rsync_contimeout || disable rsync_contimeout
|
||||
|
||||
check_header linux/fb.h
|
||||
-check_header linux/fb.h
|
||||
-check_header linux/videodev.h
|
||||
-check_header linux/videodev2.h
|
||||
-check_code cc linux/videodev2.h "struct v4l2_frmsizeenum vfse; vfse.discrete.width = 0;" && enable_safe struct_v4l2_frmivalenum_discrete
|
||||
+#check_header linux/fb.h
|
||||
+#check_header linux/videodev.h
|
||||
+#check_header linux/videodev2.h
|
||||
+#check_code cc linux/videodev2.h "struct v4l2_frmsizeenum vfse; vfse.discrete.width = 0;" && enable_safe struct_v4l2_frmivalenum_discrete
|
||||
|
||||
check_header sys/videoio.h
|
||||
|
||||
check_func_headers "windows.h vfw.h" capCreateCaptureWindow "$vfwcap_indev_extralibs"
|
||||
@@ -3322,7 +3322,7 @@
|
||||
SRC_PATH="$source_path"
|
||||
SRC_PATH_BARE=$source_path
|
||||
@@ -4373,7 +4373,7 @@ ifndef MAIN_MAKEFILE
|
||||
SRC_PATH:=\$(SRC_PATH:.%=..%)
|
||||
endif
|
||||
CC_IDENT=$cc_ident
|
||||
-ARCH=$arch
|
||||
+FFMPEG_ARCH=$arch
|
||||
CC=$cc
|
||||
CXX=$cxx
|
||||
AS=$as
|
||||
LD=$ld
|
||||
@@ -4555,7 +4555,7 @@ exec_prefix=\${prefix}
|
||||
libdir=$libdir
|
||||
includedir=$incdir
|
||||
|
||||
-Name: $name
|
||||
+Name: ${name}${build_suffix}
|
||||
Description: $comment
|
||||
Version: $version
|
||||
Requires: $(enabled shared || echo $requires)
|
||||
@@ -4569,10 +4569,10 @@ EOF
|
||||
mkdir -p doc/examples/pc-uninstalled
|
||||
includedir=${source_path}
|
||||
[ "$includedir" = . ] && includedir="\${pcfiledir}/../../.."
|
||||
- cat <<EOF > doc/examples/pc-uninstalled/$name.pc
|
||||
+ cat <<EOF > doc/examples/pc-uninstalled/${name}${build_suffix}.pc
|
||||
prefix=
|
||||
exec_prefix=
|
||||
-libdir=\${pcfiledir}/../../../$name
|
||||
+libdir=\${pcfiledir}/../../../${name}${build_suffix}
|
||||
includedir=${includedir}
|
||||
|
||||
Name: $name
|
||||
|
|
11
multimedia/ffmpeg/files/patch-doc-Makefile
Normal file
11
multimedia/ffmpeg/files/patch-doc-Makefile
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- doc/Makefile.orig 2012-09-28 03:37:35.000000000 +0200
|
||||
+++ doc/Makefile 2012-10-12 21:36:56.461440175 +0200
|
||||
@@ -57,7 +57,7 @@
|
||||
install-man:
|
||||
|
||||
ifdef CONFIG_MANPAGES
|
||||
-install-progs-$(CONFIG_DOC): install-man
|
||||
+#install-progs-$(CONFIG_DOC): install-man
|
||||
|
||||
install-man: $(MANPAGES)
|
||||
$(Q)mkdir -p "$(MANDIR)/man1"
|
|
@ -1,13 +0,0 @@
|
|||
--- doc/protocols.texi.orig 2013-02-17 14:46:23.000000000 -0800
|
||||
+++ doc/protocols.texi 2013-10-08 12:00:38.375693236 -0700
|
||||
@@ -155,8 +155,8 @@
|
||||
|
||||
Real-Time Messaging Protocol.
|
||||
|
||||
-The Real-Time Messaging Protocol (RTMP) is used for streaming multime‐
|
||||
-dia content across a TCP/IP network.
|
||||
+The Real-Time Messaging Protocol (RTMP) is used for streaming multimedia
|
||||
+content across a TCP/IP network.
|
||||
|
||||
The required syntax is:
|
||||
@example
|
|
@ -1,11 +1,11 @@
|
|||
--- libavcodec/Makefile.orig 2010-08-01 20:33:53.484907333 +0200
|
||||
+++ libavcodec/Makefile 2010-08-01 20:34:26.190893400 +0200
|
||||
@@ -590,7 +590,7 @@
|
||||
--- libavcodec/Makefile.orig 2012-08-06 10:06:26.000000000 +0200
|
||||
+++ libavcodec/Makefile 2012-08-06 10:36:33.478505808 +0200
|
||||
@@ -793,7 +793,7 @@
|
||||
codec_names.h \
|
||||
fft-internal.h \
|
||||
tableprint.h \
|
||||
- $(ARCH)/vp56_arith.h \
|
||||
+ $(FFMPEG_ARCH)/vp56_arith.h \
|
||||
|
||||
OBJS-$(CONFIG_MLIB) += mlib/dsputil_mlib.o \
|
||||
|
||||
--include $(SUBDIR)$(ARCH)/Makefile
|
||||
+-include $(SUBDIR)$(FFMPEG_ARCH)/Makefile
|
||||
|
||||
SKIPHEADERS = %_tablegen.h
|
||||
SKIPHEADERS-$(CONFIG_DXVA2) += dxva2.h dxva2_internal.h
|
||||
SKIPHEADERS-$(CONFIG_LIBSCHROEDINGER) += libschroedinger.h
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
--- libavcodec/libgsm.c.orig 2010-07-21 10:24:16.297810379 +0200
|
||||
+++ libavcodec/libgsm.c 2010-07-21 10:24:22.915234561 +0200
|
||||
@@ -28,7 +28,7 @@
|
||||
// The idiosyncrasies of GSM-in-WAV are explained at http://kbs.cs.tu-berlin.de/~jutta/toast.html
|
||||
|
||||
#include "avcodec.h"
|
||||
-#include <gsm/gsm.h>
|
||||
+#include <gsm.h>
|
||||
|
||||
// gsm.h misses some essential constants
|
||||
#define GSM_BLOCK_SIZE 33
|
|
@ -1,14 +1,14 @@
|
|||
--- libavdevice/bktr.c.orig 2011-06-21 21:29:25.000000000 +0200
|
||||
+++ libavdevice/bktr.c 2011-06-23 13:39:44.160881669 +0200
|
||||
--- libavdevice/bktr.c.orig 2012-01-22 14:41:15.000000000 +0100
|
||||
+++ libavdevice/bktr.c 2012-01-22 16:07:07.873280412 +0100
|
||||
@@ -24,6 +24,11 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
+typedef unsigned char u_char;
|
||||
+typedef unsigned short u_short;
|
||||
+typedef unsigned int u_int;
|
||||
+typedef unsigned long u_long;
|
||||
+typedef unsigned char u_char;
|
||||
+typedef unsigned short u_short;
|
||||
+typedef unsigned int u_int;
|
||||
+typedef unsigned long u_long;
|
||||
+
|
||||
#include "libavformat/internal.h"
|
||||
#include "libavutil/log.h"
|
||||
#include "libavutil/opt.h"
|
||||
#include "libavutil/parseutils.h"
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
--- libavfilter/Makefile.orig 2011-06-23 16:22:46.163337772 +0200
|
||||
+++ libavfilter/Makefile 2011-06-23 16:22:53.731245405 +0200
|
||||
@@ -136,7 +136,7 @@
|
||||
OBJS-$(CONFIG_MP_FILTER) += libmpcodecs/pullup.o
|
||||
|
||||
|
||||
--include $(SUBDIR)$(ARCH)/Makefile
|
||||
+-include $(SUBDIR)$(FFMPEG_ARCH)/Makefile
|
||||
|
||||
DIRS = x86 libmpcodecs
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
--- libavfilter/vf_libopencv.c.orig 2011-06-27 21:27:01.521012341 +0200
|
||||
+++ libavfilter/vf_libopencv.c 2011-06-27 21:27:16.839540294 +0200
|
||||
--- libavfilter/vf_libopencv.c.orig 2012-08-05 14:09:37.882506740 +0200
|
||||
+++ libavfilter/vf_libopencv.c 2012-08-05 14:10:24.508510133 +0200
|
||||
@@ -25,8 +25,7 @@
|
||||
|
||||
/* #define DEBUG */
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
--- libavutil/common.h.orig 2010-04-26 23:01:38.000000000 +0200
|
||||
+++ libavutil/common.h 2010-07-10 16:06:27.038027901 +0200
|
||||
--- libavutil/common.h.orig 2010-07-07 19:27:45.000000000 +0200
|
||||
+++ libavutil/common.h 2010-08-01 22:27:42.964629491 +0200
|
||||
@@ -36,6 +36,10 @@
|
||||
#include <string.h>
|
||||
#include "attributes.h"
|
||||
|
||||
+#ifndef UINT64_C
|
||||
+#define UINT64_C(c) (c ## UL)
|
||||
+#define UINT64_C(c) (c ## UL)
|
||||
+#endif
|
||||
+
|
||||
//rounded division & shift
|
||||
|
|
|
@ -1,24 +1,7 @@
|
|||
[ excerpt (with adaptations) from developer's README ]
|
||||
ffmpeg is a hyper fast realtime audio/video encoder, a streaming
|
||||
server and a generic audio and video file converter.
|
||||
FFmpeg is a complete, cross-platform solution to record, convert and stream
|
||||
audio and video. It includes libavcodec - the leading audio/video codec
|
||||
library.
|
||||
|
||||
It can convert a standard video source into several file formats
|
||||
based on DCT/motion compensation encoding. Sound is compressed in
|
||||
MPEG audio layer 2 or using an AC3 compatible stream.
|
||||
This version is from the 2.0 release branch.
|
||||
|
||||
What makes ffmpeg interesting ?
|
||||
- Simple and efficient video encoder: outputs MPEG1, H263, Real
|
||||
Video(tm), MPEG4, DIVX and MJPEG compatible bitstreams using the
|
||||
same encoder core.
|
||||
- Hyper fast MPEG audio layer 2 compression (50 times faster than
|
||||
realtime on a K6 500).
|
||||
[snip -> rest on website below]
|
||||
|
||||
ffmpeg is made of two programs:
|
||||
* ffmpeg: soft VCR which encodes in real time to several formats.
|
||||
It can also encode from any supported input file format to any
|
||||
input supported format.
|
||||
* ffserver: high performance live broadcast streaming server based
|
||||
on the ffmpeg core encoders.
|
||||
|
||||
WWW: http://ffmpeg.mplayerhq.hu/
|
||||
WWW: http://ffmpeg.org/
|
||||
|
|
|
@ -4,68 +4,56 @@ bin/ffprobe
|
|||
%%FFSERVER%%@unexec if cmp -s %D/etc/ffserver.conf %D/etc/ffserver.conf-dist; then rm -f %D/etc/ffserver.conf; fi
|
||||
%%FFSERVER%%etc/ffserver.conf-dist
|
||||
%%FFSERVER%%@exec [ -f %B/ffserver.conf ] || cp %B/%f %B/ffserver.conf
|
||||
include/ffmpeg/adler32.h
|
||||
include/ffmpeg/avcodec.h
|
||||
include/ffmpeg/avdevice.h
|
||||
include/ffmpeg/avfilter.h
|
||||
include/ffmpeg/avformat.h
|
||||
include/ffmpeg/avio.h
|
||||
include/ffmpeg/avstring.h
|
||||
include/ffmpeg/avutil.h
|
||||
include/ffmpeg/base64.h
|
||||
include/ffmpeg/common.h
|
||||
include/ffmpeg/crc.h
|
||||
include/ffmpeg/fifo.h
|
||||
include/ffmpeg/intfloat_readwrite.h
|
||||
include/ffmpeg/log.h
|
||||
include/ffmpeg/lzo.h
|
||||
include/ffmpeg/mathematics.h
|
||||
include/ffmpeg/md5.h
|
||||
include/ffmpeg/mem.h
|
||||
include/ffmpeg/opt.h
|
||||
include/ffmpeg/pixfmt.h
|
||||
include/ffmpeg/postprocess.h
|
||||
include/ffmpeg/rational.h
|
||||
include/ffmpeg/sha1.h
|
||||
include/ffmpeg/swscale.h
|
||||
include/ffmpeg/vdpau.h
|
||||
include/ffmpeg/xvmc.h
|
||||
include/libavcodec/avcodec.h
|
||||
include/libavcodec/avfft.h
|
||||
include/libavcodec/dxva2.h
|
||||
include/libavcodec/opt.h
|
||||
include/libavcodec/old_codec_ids.h
|
||||
include/libavcodec/vaapi.h
|
||||
include/libavcodec/vda.h
|
||||
include/libavcodec/vdpau.h
|
||||
include/libavcodec/version.h
|
||||
include/libavcodec/xvmc.h
|
||||
include/libavdevice/avdevice.h
|
||||
include/libavdevice/version.h
|
||||
include/libavfilter/asrc_abuffer.h
|
||||
include/libavfilter/avcodec.h
|
||||
include/libavfilter/avfilter.h
|
||||
include/libavfilter/avfiltergraph.h
|
||||
include/libavfilter/vsink_buffer.h
|
||||
include/libavfilter/vsrc_buffer.h
|
||||
include/libavfilter/buffersink.h
|
||||
include/libavfilter/buffersrc.h
|
||||
include/libavfilter/version.h
|
||||
include/libavformat/avformat.h
|
||||
include/libavformat/avio.h
|
||||
include/libavformat/version.h
|
||||
include/libavresample/avresample.h
|
||||
include/libavresample/version.h
|
||||
include/libavutil/adler32.h
|
||||
include/libavutil/aes.h
|
||||
include/libavutil/attributes.h
|
||||
include/libavutil/audio_fifo.h
|
||||
include/libavutil/audioconvert.h
|
||||
include/libavutil/avassert.h
|
||||
include/libavutil/avconfig.h
|
||||
include/libavutil/avstring.h
|
||||
include/libavutil/avutil.h
|
||||
include/libavutil/base64.h
|
||||
include/libavutil/blowfish.h
|
||||
include/libavutil/bprint.h
|
||||
include/libavutil/bswap.h
|
||||
include/libavutil/buffer.h
|
||||
include/libavutil/channel_layout.h
|
||||
include/libavutil/common.h
|
||||
include/libavutil/crc.h
|
||||
include/libavutil/cpu.h
|
||||
include/libavutil/crc.h
|
||||
include/libavutil/dict.h
|
||||
include/libavutil/error.h
|
||||
include/libavutil/eval.h
|
||||
include/libavutil/fifo.h
|
||||
include/libavutil/file.h
|
||||
include/libavutil/frame.h
|
||||
include/libavutil/hmac.h
|
||||
include/libavutil/imgutils.h
|
||||
include/libavutil/intfloat.h
|
||||
include/libavutil/intfloat_readwrite.h
|
||||
include/libavutil/intreadwrite.h
|
||||
include/libavutil/lfg.h
|
||||
|
@ -74,77 +62,102 @@ include/libavutil/lzo.h
|
|||
include/libavutil/mathematics.h
|
||||
include/libavutil/md5.h
|
||||
include/libavutil/mem.h
|
||||
include/libavutil/murmur3.h
|
||||
include/libavutil/old_pix_fmts.h
|
||||
include/libavutil/opt.h
|
||||
include/libavutil/parseutils.h
|
||||
include/libavutil/pixdesc.h
|
||||
include/libavutil/pixfmt.h
|
||||
include/libavutil/random_seed.h
|
||||
include/libavutil/rational.h
|
||||
include/libavutil/ripemd.h
|
||||
include/libavutil/samplefmt.h
|
||||
include/libavutil/sha.h
|
||||
include/libavutil/sha1.h
|
||||
include/libavutil/sha512.h
|
||||
include/libavutil/time.h
|
||||
include/libavutil/timecode.h
|
||||
include/libavutil/timestamp.h
|
||||
include/libavutil/version.h
|
||||
include/libavutil/xtea.h
|
||||
include/libpostproc/postprocess.h
|
||||
include/postproc/postprocess.h
|
||||
include/libpostproc/version.h
|
||||
include/libswresample/swresample.h
|
||||
include/libswresample/version.h
|
||||
include/libswscale/swscale.h
|
||||
include/libswscale/version.h
|
||||
lib/libavcodec.a
|
||||
lib/libavcodec.so
|
||||
lib/libavcodec.so.1
|
||||
lib/libavcodec.so.52.123.0
|
||||
lib/libavcodec.so.55
|
||||
lib/libavcodec.so.55.18.102
|
||||
lib/libavdevice.a
|
||||
lib/libavdevice.so
|
||||
lib/libavdevice.so.1
|
||||
lib/libavdevice.so.52.5.0
|
||||
lib/libavdevice.so.55
|
||||
lib/libavdevice.so.55.3.100
|
||||
lib/libavfilter.a
|
||||
lib/libavfilter.so
|
||||
lib/libavfilter.so.1.80.0
|
||||
lib/libavfilter.so.1
|
||||
lib/libavfilter.so.3
|
||||
lib/libavfilter.so.3.79.101
|
||||
lib/libavformat.a
|
||||
lib/libavformat.so
|
||||
lib/libavformat.so.1
|
||||
lib/libavformat.so.52.111.0
|
||||
lib/libavformat.so.55
|
||||
lib/libavformat.so.55.12.100
|
||||
lib/libavresample.a
|
||||
lib/libavresample.so
|
||||
lib/libavresample.so.1
|
||||
lib/libavresample.so.1.1.0
|
||||
lib/libavutil.a
|
||||
lib/libavutil.so
|
||||
lib/libavutil.so.1
|
||||
lib/libavutil.so.50.43.0
|
||||
lib/libavutil.so.52
|
||||
lib/libavutil.so.52.38.100
|
||||
lib/libpostproc.a
|
||||
lib/libpostproc.so
|
||||
lib/libpostproc.so.1
|
||||
lib/libpostproc.so.51.2.0
|
||||
lib/libpostproc.so.52
|
||||
lib/libpostproc.so.52.3.100
|
||||
lib/libswresample.a
|
||||
lib/libswresample.so
|
||||
lib/libswresample.so.0
|
||||
lib/libswresample.so.0.17.102
|
||||
lib/libswscale.a
|
||||
lib/libswscale.so
|
||||
lib/libswscale.so.0.14.1
|
||||
lib/libswscale.so.1
|
||||
lib/libswscale.so.2
|
||||
lib/libswscale.so.2.3.100
|
||||
libdata/pkgconfig/libavcodec.pc
|
||||
libdata/pkgconfig/libavdevice.pc
|
||||
libdata/pkgconfig/libavfilter.pc
|
||||
libdata/pkgconfig/libavformat.pc
|
||||
libdata/pkgconfig/libavresample.pc
|
||||
libdata/pkgconfig/libavutil.pc
|
||||
libdata/pkgconfig/libpostproc.pc
|
||||
libdata/pkgconfig/libswresample.pc
|
||||
libdata/pkgconfig/libswscale.pc
|
||||
man/man1/ffmpeg.1.gz
|
||||
man/man1/ffprobe.1.gz
|
||||
%%FFSERVER%%man/man1/ffserver.1.gz
|
||||
%%DATADIR%%/examples/Makefile
|
||||
%%DATADIR%%/examples/README
|
||||
%%DATADIR%%/examples/decoding_encoding.c
|
||||
%%DATADIR%%/examples/demuxing.c
|
||||
%%DATADIR%%/examples/filtering_audio.c
|
||||
%%DATADIR%%/examples/filtering_video.c
|
||||
%%DATADIR%%/examples/metadata.c
|
||||
%%DATADIR%%/examples/muxing.c
|
||||
%%DATADIR%%/examples/resampling_audio.c
|
||||
%%DATADIR%%/examples/scaling_video.c
|
||||
%%DATADIR%%/ffprobe.xsd
|
||||
%%DATADIR%%/libvpx-1080p.ffpreset
|
||||
%%DATADIR%%/libvpx-1080p50_60.ffpreset
|
||||
%%DATADIR%%/libvpx-360p.ffpreset
|
||||
%%DATADIR%%/libvpx-720p.ffpreset
|
||||
%%DATADIR%%/libvpx-720p50_60.ffpreset
|
||||
%%DATADIR%%/libvpx-1080p.ffpreset
|
||||
%%DATADIR%%/libvpx-1080p50_60.ffpreset
|
||||
%%DATADIR%%/libx264-baseline.ffpreset
|
||||
%%DATADIR%%/libx264-ipod320.ffpreset
|
||||
%%DATADIR%%/libx264-ipod640.ffpreset
|
||||
%%DATADIR%%/libx264-lossless_fast.ffpreset
|
||||
%%DATADIR%%/libx264-lossless_max.ffpreset
|
||||
%%DATADIR%%/libx264-lossless_medium.ffpreset
|
||||
%%DATADIR%%/libx264-lossless_slow.ffpreset
|
||||
%%DATADIR%%/libx264-lossless_slower.ffpreset
|
||||
%%DATADIR%%/libx264-lossless_ultrafast.ffpreset
|
||||
@dirrm %%DATADIR%%/examples
|
||||
@dirrm %%DATADIR%%
|
||||
@dirrm include/postproc
|
||||
@dirrm include/libswscale
|
||||
@dirrm include/libswresample
|
||||
@dirrm include/libpostproc
|
||||
@dirrm include/libavutil
|
||||
@dirrm include/libavresample
|
||||
@dirrm include/libavformat
|
||||
@dirrm include/libavfilter
|
||||
@dirrm include/libavdevice
|
||||
@dirrm include/libavcodec
|
||||
@dirrm include/ffmpeg
|
||||
|
|
|
@ -51,7 +51,7 @@ PLIST_SUB+= FFMPEG_KINO=""
|
|||
.else
|
||||
CONFIGURE_ARGS+= --disable-local-ffmpeg
|
||||
PLIST_SUB+= FFMPEG_KINO="@comment "
|
||||
LIB_DEPENDS+= avcodec.1:${PORTSDIR}/multimedia/ffmpeg
|
||||
LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
|
||||
.endif
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
|
60
multimedia/kino/files/patch-libav7
Normal file
60
multimedia/kino/files/patch-libav7
Normal file
|
@ -0,0 +1,60 @@
|
|||
--- src/frame.cc.orig 2011-07-17 14:54:59.089481638 +0200
|
||||
+++ src/frame.cc 2011-07-17 15:09:23.199481714 +0200
|
||||
@@ -1063,7 +1063,12 @@
|
||||
AVPicture dest;
|
||||
int got_picture;
|
||||
|
||||
- avcodec_decode_video( libavcodec, frame, &got_picture, data, GetFrameSize() );
|
||||
+ AVPacket pkt;
|
||||
+ av_init_packet(&pkt);
|
||||
+ pkt.data = data;
|
||||
+ pkt.size = GetFrameSize();
|
||||
+
|
||||
+ avcodec_decode_video2( libavcodec, frame, &got_picture, &pkt );
|
||||
if ( got_picture )
|
||||
{
|
||||
avpicture_fill( &dest, static_cast<uint8_t*>( rgb ), PIX_FMT_RGB24, GetWidth(), GetHeight() );
|
||||
@@ -1123,7 +1128,12 @@
|
||||
AVPicture output;
|
||||
int got_picture;
|
||||
|
||||
- avcodec_decode_video( libavcodec, frame, &got_picture, data, GetFrameSize() );
|
||||
+ AVPacket pkt;
|
||||
+ av_init_packet(&pkt);
|
||||
+ pkt.data = data;
|
||||
+ pkt.size = GetFrameSize();
|
||||
+
|
||||
+ avcodec_decode_video2( libavcodec, frame, &got_picture, &pkt );
|
||||
if ( got_picture )
|
||||
{
|
||||
avpicture_fill( &output, static_cast<uint8_t*>( yuv ), PIX_FMT_YUV422, GetWidth(), GetHeight() );
|
||||
@@ -1156,7 +1166,12 @@
|
||||
AVFrame *frame = avcodec_alloc_frame();
|
||||
int got_picture;
|
||||
|
||||
- avcodec_decode_video( libavcodec, frame, &got_picture, data, GetFrameSize() );
|
||||
+ AVPacket pkt;
|
||||
+ av_init_packet(&pkt);
|
||||
+ pkt.data = data;
|
||||
+ pkt.size = GetFrameSize();
|
||||
+
|
||||
+ avcodec_decode_video2( libavcodec, frame, &got_picture, &pkt );
|
||||
|
||||
int width = GetWidth(), height = GetHeight();
|
||||
|
||||
@@ -1319,12 +1334,12 @@
|
||||
#if defined(HAVE_LIBAVCODEC)
|
||||
if ( avformatEncoder == NULL )
|
||||
{
|
||||
- avformatEncoder = av_alloc_format_context();
|
||||
+ avformatEncoder = avformat_alloc_context();
|
||||
if ( avformatEncoder )
|
||||
{
|
||||
- avformatEncoder->oformat = guess_format( "dv", NULL, NULL );
|
||||
+ avformatEncoder->oformat = av_guess_format( "dv", NULL, NULL );
|
||||
AVStream* vst = av_new_stream( avformatEncoder, 0 );
|
||||
- vst->codec->codec_type = CODEC_TYPE_VIDEO;
|
||||
+ vst->codec->codec_type = AVMEDIA_TYPE_VIDEO;
|
||||
vst->codec->codec_id = CODEC_ID_DVVIDEO;
|
||||
vst->codec->bit_rate = 25000000;
|
||||
vst->start_time = 0;
|
57
multimedia/kino/files/patch-libav8
Normal file
57
multimedia/kino/files/patch-libav8
Normal file
|
@ -0,0 +1,57 @@
|
|||
--- src/frame.cc.orig 2012-05-14 19:55:42.153772418 -0700
|
||||
+++ src/frame.cc 2012-05-14 20:28:34.448838653 -0700
|
||||
@@ -101,8 +101,9 @@
|
||||
#if defined(HAVE_LIBAVCODEC)
|
||||
pthread_mutex_lock( &avcodec_mutex );
|
||||
av_register_all();
|
||||
- libavcodec = avcodec_alloc_context();
|
||||
- avcodec_open( libavcodec, avcodec_find_decoder( CODEC_ID_DVVIDEO ) );
|
||||
+ libavcodec = avcodec_alloc_context3(NULL);
|
||||
+ avcodec_open2( libavcodec,
|
||||
+ avcodec_find_decoder( CODEC_ID_DVVIDEO ), NULL );
|
||||
pthread_mutex_unlock( &avcodec_mutex );
|
||||
data = ( unsigned char* ) av_mallocz( 144000 );
|
||||
#if defined(HAVE_SWSCALE)
|
||||
@@ -1338,7 +1339,7 @@
|
||||
if ( avformatEncoder )
|
||||
{
|
||||
avformatEncoder->oformat = av_guess_format( "dv", NULL, NULL );
|
||||
- AVStream* vst = av_new_stream( avformatEncoder, 0 );
|
||||
+ AVStream* vst = avformat_new_stream( avformatEncoder, NULL );
|
||||
vst->codec->codec_type = AVMEDIA_TYPE_VIDEO;
|
||||
vst->codec->codec_id = CODEC_ID_DVVIDEO;
|
||||
vst->codec->bit_rate = 25000000;
|
||||
@@ -1364,12 +1365,10 @@
|
||||
vst->sample_aspect_ratio = avcodecEncoder->sample_aspect_ratio;
|
||||
#endif
|
||||
avcodecEncoder->thread_count = 2;
|
||||
- avcodec_thread_init( avcodecEncoder, avcodecEncoder->thread_count );
|
||||
avcodecEncoder->time_base= isPAL ? ( AVRational ){ 1, 25 } : ( AVRational ){ 1001, 30000 };
|
||||
avcodecEncoder->pix_fmt = isPAL ? PIX_FMT_YUV420P : PIX_FMT_YUV411P;
|
||||
avcodecEncoder->flags |= CODEC_FLAG_INTERLACED_DCT;
|
||||
- av_set_parameters( avformatEncoder, NULL );
|
||||
- avcodec_open( avcodecEncoder, avcodec_find_encoder( CODEC_ID_DVVIDEO ) );
|
||||
+ avcodec_open2( avcodecEncoder, avcodec_find_encoder( CODEC_ID_DVVIDEO ), NULL );
|
||||
av_new_packet( &avpacketEncoder, 144000 );
|
||||
tempImage = ( uint8_t* ) av_malloc(
|
||||
avpicture_get_size( avcodecEncoder->pix_fmt, avcodecEncoder->width, avcodecEncoder->height ) );
|
||||
@@ -1475,16 +1474,16 @@
|
||||
|
||||
// Encode
|
||||
bytesInFrame = avcodec_encode_video( avcodecEncoder, avpacketEncoder.data, size, output );
|
||||
- url_open_buf( &avformatEncoder->pb, data, bytesInFrame, URL_WRONLY );
|
||||
+ avformatEncoder->pb = avio_alloc_context(data, bytesInFrame, 0, NULL, NULL, NULL, NULL);
|
||||
avpacketEncoder.size = bytesInFrame;
|
||||
if ( !isEncoderHeaderWritten )
|
||||
{
|
||||
- av_write_header( avformatEncoder );
|
||||
+ avformat_write_header( avformatEncoder, NULL );
|
||||
isEncoderHeaderWritten = true;
|
||||
}
|
||||
av_write_frame( avformatEncoder, &avpacketEncoder );
|
||||
#if LIBAVFORMAT_VERSION_INT >= ((52<<16)+(0<<8)+0)
|
||||
- url_close_buf( avformatEncoder->pb );
|
||||
+ avio_close( avformatEncoder->pb );
|
||||
#else
|
||||
url_close_buf( &avformatEncoder->pb );
|
||||
#endif
|
|
@ -8,18 +8,17 @@ CATEGORIES= multimedia
|
|||
MASTER_SITES= SF
|
||||
|
||||
MAINTAINER= ports@FreeBSD.org
|
||||
COMMENT= A library for reading and writing quicktime files
|
||||
COMMENT= library for reading and writing quicktime files
|
||||
|
||||
.if !defined(_BUILDING_LIBQUICKTIME_PLUGINS)
|
||||
LIB_DEPENDS= vorbis.4:${PORTSDIR}/audio/libvorbis
|
||||
LIB_DEPENDS= libvorbis.so:${PORTSDIR}/audio/libvorbis
|
||||
.endif
|
||||
|
||||
LICENSE= LGPL21
|
||||
LICENSE_FILE= ${WRKSRC}/COPYING
|
||||
|
||||
USE_LDCONFIG= yes
|
||||
USES= pathfix pkgconfig gettext
|
||||
USE_GMAKE= yes
|
||||
USES= gmake pathfix pkgconfig gettext
|
||||
USE_AUTOTOOLS= autoconf
|
||||
|
||||
CPPFLAGS+= -I${LOCALBASE}/include ${PTHREAD_CFLAGS}
|
||||
|
@ -34,6 +33,7 @@ MAN1= lqtplay.1
|
|||
OPTIONS_DEFINE= ALSA DV FAAC FAAD FFMPEG GTK2 JPEG OPENGL OPTIMIZED_CFLAGS PNG \
|
||||
SCHROEDINGER X264 DOCS
|
||||
OPTIONS_DEFAULT= FFMPEG JPEG OPENGL PNG SCHROEDINGER X264
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
PORTDOCS= api_usage.html codecs.html qt4l_building.html \
|
||||
qt4l_codecs.html qt4l_index.html \
|
||||
|
@ -56,14 +56,12 @@ CONFIGURE_ARGS+= --without-cpuflags
|
|||
.if ${PORT_OPTIONS:MGTK2}
|
||||
USE_GNOME+= gtk20
|
||||
CONFIGURE_ARGS+= --with-gtk
|
||||
PLIST_SUB+= GTK=""
|
||||
.else
|
||||
CONFIGURE_ARGS+= --without-gtk
|
||||
PLIST_SUB+= GTK="@comment "
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MALSA}
|
||||
LIB_DEPENDS= asound.2:${PORTSDIR}/audio/alsa-lib
|
||||
LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib
|
||||
.else
|
||||
CONFIGURE_ARGS+= --without-alsa
|
||||
.endif
|
||||
|
@ -76,73 +74,57 @@ CONFIGURE_ARGS+= --without-opengl
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MDV}
|
||||
LIB_DEPENDS+= dv.4:${PORTSDIR}/multimedia/libdv
|
||||
PLIST_SUB+= DV=""
|
||||
LIB_DEPENDS+= libdv.so:${PORTSDIR}/multimedia/libdv
|
||||
CONFIGURE_ARGS+= --with-libdv
|
||||
.else
|
||||
PLIST_SUB+= DV="@comment "
|
||||
CONFIGURE_ARGS+= --without-libdv
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MJPEG}
|
||||
LIB_DEPENDS+= jpeg.11:${PORTSDIR}/graphics/jpeg
|
||||
PLIST_SUB+= JPEG=""
|
||||
LIB_DEPENDS+= libjpeg.so:${PORTSDIR}/graphics/jpeg
|
||||
CONFIGURE_ARGS+= --with-libjpeg
|
||||
.else
|
||||
PLIST_SUB+= JPEG="@comment "
|
||||
CONFIGURE_ARGS+= --without-libjpeg
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MPNG}
|
||||
LIB_DEPENDS+= png15:${PORTSDIR}/graphics/png
|
||||
PLIST_SUB+= PNG=""
|
||||
LIB_DEPENDS+= libpng15.so:${PORTSDIR}/graphics/png
|
||||
CONFIGURE_ARGS+= --with-libpng
|
||||
.else
|
||||
PLIST_SUB+= PNG="@comment "
|
||||
CONFIGURE_ARGS+= --without-libpng
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFFMPEG}
|
||||
LIB_DEPENDS+= avcodec.1:${PORTSDIR}/multimedia/ffmpeg
|
||||
PLIST_SUB+= FFMPEG=""
|
||||
LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
|
||||
CONFIGURE_ARGS+= --with-ffmpeg
|
||||
.else
|
||||
PLIST_SUB+= FFMPEG="@comment "
|
||||
CONFIGURE_ARGS+= --without-ffmpeg
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFAAC}
|
||||
LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac
|
||||
PLIST_SUB+= FAAC=""
|
||||
LIB_DEPENDS+= libfaac.so:${PORTSDIR}/audio/faac
|
||||
CONFIGURE_ARGS+= --with-faac
|
||||
.else
|
||||
PLIST_SUB+= FAAC="@comment "
|
||||
CONFIGURE_ARGS+= --without-faac
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFAAD}
|
||||
LIB_DEPENDS+= faad.2:${PORTSDIR}/audio/faad
|
||||
PLIST_SUB+= FAAD=""
|
||||
LIB_DEPENDS+= libfaad.so:${PORTSDIR}/audio/faad
|
||||
CONFIGURE_ARGS+= --with-faad2
|
||||
.else
|
||||
PLIST_SUB+= FAAD="@comment "
|
||||
CONFIGURE_ARGS+= --without-faad2
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MX264}
|
||||
LIB_DEPENDS+= x264:${PORTSDIR}/multimedia/x264
|
||||
PLIST_SUB+= X264=""
|
||||
LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264
|
||||
CONFIGURE_ARGS+= --with-x264
|
||||
.else
|
||||
PLIST_SUB+= X264="@comment "
|
||||
CONFIGURE_ARGS+= --without-x264
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSCHROEDINGER}
|
||||
LIB_DEPENDS+= schroedinger-1.0.11:${PORTSDIR}/multimedia/schroedinger
|
||||
PLIST_SUB+= SCHROEDINGER=""
|
||||
LIB_DEPENDS+= libschroedinger-1.0.so:${PORTSDIR}/multimedia/schroedinger
|
||||
.else
|
||||
PLIST_SUB+= SCHROEDINGER="@comment "
|
||||
CONFIGURE_ARGS+= --without-schroedinger
|
||||
.endif
|
||||
|
||||
|
@ -155,7 +137,7 @@ post-patch:
|
|||
@${REINPLACE_CMD} -e 's|stdint.h|inttypes.h|' \
|
||||
${WRKSRC}/plugins/audiocodec/* \
|
||||
${WRKSRC}/plugins/videocodec/*
|
||||
@${REINPLACE_CMD} -e '/objformat=/s|=.*|=elf|' ${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -E -e 's|objformat=aout|objformat=elf|g' ${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -e 's|-DG.*_DISABLE_DEPRECATED||g' \
|
||||
${WRKSRC}/configure*
|
||||
|
||||
|
|
96
multimedia/libquicktime/files/patch-ffmpeg2
Normal file
96
multimedia/libquicktime/files/patch-ffmpeg2
Normal file
|
@ -0,0 +1,96 @@
|
|||
Extracted from upstream CVS.
|
||||
Index: plugins/ffmpeg/audio.c
|
||||
===================================================================
|
||||
--- plugins/ffmpeg/audio.c.orig
|
||||
+++ plugins/ffmpeg/audio.c
|
||||
@@ -45,6 +45,11 @@
|
||||
#define ENCODE_AUDIO 1
|
||||
#endif
|
||||
|
||||
+#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE
|
||||
+/* from libavcodec/avcodec.h dated Dec 23 2012 */
|
||||
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
|
||||
+#endif
|
||||
+
|
||||
/* The following code was ported from gmerlin_avdecoder (http://gmerlin.sourceforge.net) */
|
||||
|
||||
/* MPEG Audio header parsing code */
|
||||
Index: plugins/ffmpeg/params.c
|
||||
===================================================================
|
||||
--- plugins/ffmpeg/params.c.orig
|
||||
+++ plugins/ffmpeg/params.c
|
||||
@@ -101,6 +101,17 @@ typedef struct
|
||||
} \
|
||||
}
|
||||
|
||||
+#define PARAM_DICT_INT(name, dict_name) \
|
||||
+ { \
|
||||
+ if(!strcasecmp(name, key)) \
|
||||
+ { \
|
||||
+ char buf[128]; \
|
||||
+ snprintf(buf, sizeof(buf), "%d", *(int*)value); \
|
||||
+ av_dict_set(options, dict_name, buf, 0); \
|
||||
+ found = 1; \
|
||||
+ } \
|
||||
+ }
|
||||
+
|
||||
#define PARAM_DICT_FLAG(name, dict_name) \
|
||||
{ \
|
||||
if(!strcasecmp(name, key)) \
|
||||
@@ -202,8 +213,15 @@ void lqt_ffmpeg_set_parameter(AVCodecCon
|
||||
PARAM_INT("ff_max_b_frames",max_b_frames);
|
||||
PARAM_FLOAT("ff_b_quant_factor",b_quant_factor);
|
||||
PARAM_INT("ff_b_frame_strategy",b_frame_strategy);
|
||||
+
|
||||
+#if LIBAVCODEC_VERSION_MAJOR >= 55
|
||||
+ PARAM_DICT_INT("ff_luma_elim_threshold","luma_elim_threshold");
|
||||
+ PARAM_DICT_INT("ff_chroma_elim_threshold","chroma_elim_threshold");
|
||||
+#else
|
||||
PARAM_INT("ff_luma_elim_threshold",luma_elim_threshold);
|
||||
PARAM_INT("ff_chroma_elim_threshold",chroma_elim_threshold);
|
||||
+#endif
|
||||
+
|
||||
PARAM_INT("ff_strict_std_compliance",strict_std_compliance);
|
||||
PARAM_QP2LAMBDA("ff_b_quant_offset",b_quant_offset);
|
||||
PARAM_INT("ff_rc_min_rate",rc_min_rate);
|
||||
@@ -241,8 +259,15 @@ void lqt_ffmpeg_set_parameter(AVCodecCon
|
||||
PARAM_QP2LAMBDA("ff_lmax", lmax);
|
||||
PARAM_INT("ff_noise_reduction",noise_reduction);
|
||||
PARAM_INT_SCALE("ff_rc_initial_buffer_occupancy",rc_initial_buffer_occupancy,1000);
|
||||
+
|
||||
+#if LIBAVCODEC_VERSION_MAJOR >= 55
|
||||
+ PARAM_DICT_INT("ff_inter_threshold","inter_threshold");
|
||||
+ PARAM_DICT_INT("ff_quantizer_noise_shaping","quantizer_noise_shaping");
|
||||
+#else
|
||||
PARAM_INT("ff_inter_threshold",inter_threshold);
|
||||
PARAM_INT("ff_quantizer_noise_shaping",quantizer_noise_shaping);
|
||||
+#endif
|
||||
+
|
||||
PARAM_INT("ff_thread_count",thread_count);
|
||||
PARAM_INT("ff_me_threshold",me_threshold);
|
||||
PARAM_INT("ff_mb_threshold",mb_threshold);
|
||||
@@ -272,8 +297,16 @@ void lqt_ffmpeg_set_parameter(AVCodecCon
|
||||
PARAM_FLAG("ff_flag_bitexact",CODEC_FLAG_BITEXACT);
|
||||
PARAM_FLAG("ff_flag_ac_pred",CODEC_FLAG_AC_PRED);
|
||||
// PARAM_FLAG("ff_flag_h263p_umv",CODEC_FLAG_H263P_UMV); // Unused
|
||||
+
|
||||
+#if LIBAVCODEC_VERSION_MAJOR >= 55
|
||||
+ PARAM_DICT_FLAG("ff_flag_cbp_rd","cbp_rd");
|
||||
+ PARAM_DICT_FLAG("ff_flag_qp_rd","qp_rd");
|
||||
+ PARAM_DICT_FLAG("ff_flag2_strict_gop","strict_gop");
|
||||
+#else
|
||||
PARAM_FLAG("ff_flag_cbp_rd",CODEC_FLAG_CBP_RD);
|
||||
PARAM_FLAG("ff_flag_qp_rd",CODEC_FLAG_QP_RD);
|
||||
+ PARAM_FLAG2("ff_flag2_strict_gop",CODEC_FLAG2_STRICT_GOP);
|
||||
+#endif
|
||||
|
||||
#if LIBAVCODEC_VERSION_MAJOR >= 54
|
||||
PARAM_DICT_FLAG("ff_flag_h263p_aiv", "aiv");
|
||||
@@ -288,7 +321,6 @@ void lqt_ffmpeg_set_parameter(AVCodecCon
|
||||
PARAM_FLAG("ff_flag_loop_filter",CODEC_FLAG_LOOP_FILTER);
|
||||
PARAM_FLAG("ff_flag_closed_gop",CODEC_FLAG_CLOSED_GOP);
|
||||
PARAM_FLAG2("ff_flag2_fast",CODEC_FLAG2_FAST);
|
||||
- PARAM_FLAG2("ff_flag2_strict_gop",CODEC_FLAG2_STRICT_GOP);
|
||||
PARAM_ENUM("ff_coder_type",coder_type,coder_type);
|
||||
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
%%GTK%%bin/libquicktime_config
|
||||
%%GTK2%%bin/libquicktime_config
|
||||
bin/lqt_transcode
|
||||
bin/lqtplay
|
||||
bin/lqtremux
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= xine
|
||||
PORTVERSION= 1.2.2
|
||||
PORTVERSION= 1.2.4
|
||||
PORTREVISION= 4
|
||||
CATEGORIES= multimedia ipv6
|
||||
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-lib/${PORTVERSION}
|
||||
|
@ -12,29 +12,29 @@ DISTNAME= ${PORTNAME}-lib-${PORTVERSION}
|
|||
MAINTAINER= nox@FreeBSD.org
|
||||
COMMENT= Libraries for xine multimedia player
|
||||
|
||||
LIB_DEPENDS= FLAC:${PORTSDIR}/audio/flac \
|
||||
a52:${PORTSDIR}/audio/liba52 \
|
||||
vorbis:${PORTSDIR}/audio/libvorbis \
|
||||
speex:${PORTSDIR}/audio/speex \
|
||||
mng:${PORTSDIR}/graphics/libmng \
|
||||
png15:${PORTSDIR}/graphics/png \
|
||||
dvdread:${PORTSDIR}/multimedia/libdvdread \
|
||||
freetype:${PORTSDIR}/print/freetype2 \
|
||||
fame-0:${PORTSDIR}/multimedia/libfame \
|
||||
cdio:${PORTSDIR}/sysutils/libcdio \
|
||||
modplug:${PORTSDIR}/audio/libmodplug \
|
||||
vcdinfo:${PORTSDIR}/multimedia/vcdimager \
|
||||
theora:${PORTSDIR}/multimedia/libtheora \
|
||||
mad:${PORTSDIR}/audio/libmad \
|
||||
dca:${PORTSDIR}/multimedia/libdca \
|
||||
avcodec:${PORTSDIR}/multimedia/ffmpeg \
|
||||
faad:${PORTSDIR}/audio/faad \
|
||||
vdpau:${PORTSDIR}/multimedia/libvdpau
|
||||
LIB_DEPENDS= libFLAC.so:${PORTSDIR}/audio/flac \
|
||||
liba52.so:${PORTSDIR}/audio/liba52 \
|
||||
libvorbis.so:${PORTSDIR}/audio/libvorbis \
|
||||
libspeex.so:${PORTSDIR}/audio/speex \
|
||||
libmng.so:${PORTSDIR}/graphics/libmng \
|
||||
libpng15.so:${PORTSDIR}/graphics/png \
|
||||
libdvdread.so:${PORTSDIR}/multimedia/libdvdread \
|
||||
libfreetype.so:${PORTSDIR}/print/freetype2 \
|
||||
libfame.so:${PORTSDIR}/multimedia/libfame \
|
||||
libcdio.so:${PORTSDIR}/sysutils/libcdio \
|
||||
libmodplug.so:${PORTSDIR}/audio/libmodplug \
|
||||
libvcdinfo.so:${PORTSDIR}/multimedia/vcdimager \
|
||||
libtheora.so:${PORTSDIR}/multimedia/libtheora \
|
||||
libmad.so:${PORTSDIR}/audio/libmad \
|
||||
libdca.so:${PORTSDIR}/multimedia/libdca \
|
||||
libavcodec.so:${PORTSDIR}/multimedia/ffmpeg \
|
||||
libfaad.so:${PORTSDIR}/audio/faad \
|
||||
libvdpau.so:${PORTSDIR}/multimedia/libvdpau
|
||||
|
||||
BUILD_DEPENDS+= v4l_compat>=1.0.20100321:${PORTSDIR}/multimedia/v4l_compat
|
||||
|
||||
.if !defined(PACKAGE_BUILDING)
|
||||
LIB_DEPENDS+= dvdcss.${DVDCSS_LIBVERSION}:${PORTSDIR}/multimedia/libdvdcss
|
||||
LIB_DEPENDS+= libdvdcss.so.${DVDCSS_LIBVERSION}:${PORTSDIR}/multimedia/libdvdcss
|
||||
.endif
|
||||
|
||||
USES= gmake iconv pathfix perl5 pkgconfig
|
||||
|
@ -68,11 +68,8 @@ CONFIGURE_ARGS= --with-w32-path=${LOCALBASE}/lib/win32 \
|
|||
OPTIONS_DEFINE= CACA ESOUND JACK GNOMEVFS2 PULSEAUDIO XVMC SMB AALIB \
|
||||
IMAGEMAGICK GTK2 WAVPACK VAAPI LIBBLURAY
|
||||
|
||||
MAN1= xine-config.1 xine-list-1.2.1
|
||||
MAN5= xine.5
|
||||
|
||||
DOCSDIR= ${PREFIX}/share/doc/xine-lib
|
||||
PLIST_SUB= PLUGINSDIR="lib/xine/plugins/2.2"
|
||||
DOCSDIR= ${STAGEDIR}${PREFIX}/share/doc/xine-lib
|
||||
PLIST_SUB= PLUGINSDIR="lib/xine/plugins/2.3"
|
||||
|
||||
# DVDCSS version hardcoded in src/input/input_dvd.c misc/cdda_server.c
|
||||
# and src/input/libdvdnav/dvd_input.c (dlopen'ed)
|
||||
|
@ -80,7 +77,6 @@ DVDCSS_LIBVERSION= 3
|
|||
|
||||
PATCH_DIST_ARGS= -d ${WRKSRC} -p1 --forward --quiet
|
||||
|
||||
NO_STAGE= yes
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${ARCH} == "i386"
|
||||
|
@ -96,7 +92,7 @@ CONFIGURE_ARGS+= --disable-nls
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MCACA}
|
||||
LIB_DEPENDS+= caca:${PORTSDIR}/graphics/libcaca
|
||||
LIB_DEPENDS+= libcaca.so:${PORTSDIR}/graphics/libcaca
|
||||
PLIST_SUB+= WITH_CACA=""
|
||||
.else
|
||||
PLIST_SUB+= WITH_CACA="@comment "
|
||||
|
@ -112,7 +108,7 @@ CONFIGURE_ARGS+= --without-esound
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MJACK}
|
||||
LIB_DEPENDS+= jack:${PORTSDIR}/audio/jack
|
||||
LIB_DEPENDS+= libjack.so:${PORTSDIR}/audio/jack
|
||||
PLIST_SUB+= WITH_JACK=""
|
||||
.else
|
||||
PLIST_SUB+= WITH_JACK="@comment "
|
||||
|
@ -128,7 +124,7 @@ CONFIGURE_ARGS+= --disable-gnomevfs
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MPULSEAUDIO}
|
||||
LIB_DEPENDS+= pulse:${PORTSDIR}/audio/pulseaudio
|
||||
LIB_DEPENDS+= libpulse.so:${PORTSDIR}/audio/pulseaudio
|
||||
PLIST_SUB+= WITH_PULSEAUDIO=""
|
||||
.else
|
||||
PLIST_SUB+= WITH_PULSEAUDIO="@comment "
|
||||
|
@ -138,10 +134,10 @@ CONFIGURE_ARGS+= --without-pulseaudio
|
|||
.if ${PORT_OPTIONS:MXVMC}
|
||||
.if defined(WITH_NVIDIA304_GL) || exists(${LOCALBASE}/lib/libXvMCNVIDIA.so.1)
|
||||
CONFIGURE_ARGS+= --with-xvmc-lib=XvMCNVIDIA
|
||||
LIB_DEPENDS+= XvMCNVIDIA:${PORTSDIR}/x11/nvidia-driver-304
|
||||
LIB_DEPENDS+= libXvMCNVIDIA.so:${PORTSDIR}/x11/nvidia-driver-304
|
||||
.else
|
||||
CONFIGURE_ARGS+= --with-xvmc-lib=XvMCW
|
||||
LIB_DEPENDS+= XvMC:${PORTSDIR}/x11/libXvMC
|
||||
LIB_DEPENDS+= libXvMC.so:${PORTSDIR}/x11/libXvMC
|
||||
.endif
|
||||
PLIST_SUB+= WITH_XVMC=""
|
||||
.else
|
||||
|
@ -150,7 +146,7 @@ PLIST_SUB+= WITH_XVMC="@comment "
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSMB}
|
||||
LIB_DEPENDS+= smbclient:${PORTSDIR}/net/samba-libsmbclient
|
||||
LIB_DEPENDS+= libsmbclient.so:${PORTSDIR}/net/samba-libsmbclient
|
||||
PLIST_SUB+= WITH_SMB=""
|
||||
CONFIGURE_ARGS+= --enable-samba
|
||||
.else
|
||||
|
@ -159,7 +155,7 @@ CONFIGURE_ARGS+= --disable-samba
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MAALIB}
|
||||
LIB_DEPENDS+= aa:${PORTSDIR}/graphics/aalib
|
||||
LIB_DEPENDS+= libaa.so:${PORTSDIR}/graphics/aalib
|
||||
PLIST_SUB+= WITH_AALIB=""
|
||||
.else
|
||||
PLIST_SUB+= WITH_AALIB="@comment "
|
||||
|
@ -167,7 +163,7 @@ CONFIGURE_ARGS+= --disable-aalib --disable-aalibtest
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MMAGICK}
|
||||
LIB_DEPENDS+= MagickWand:${PORTSDIR}/graphics/ImageMagick
|
||||
LIB_DEPENDS+= libMagickWand.so:${PORTSDIR}/graphics/ImageMagick
|
||||
PLIST_SUB+= WITH_IMAGEMAGICK=""
|
||||
.else
|
||||
PLIST_SUB+= WITH_IMAGEMAGICK="@comment "
|
||||
|
@ -183,7 +179,7 @@ CONFIGURE_ARGS+= --disable-gdkpixbuf
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MWAVPACK}
|
||||
LIB_DEPENDS+= wavpack:${PORTSDIR}/audio/wavpack
|
||||
LIB_DEPENDS+= libwavpack.so:${PORTSDIR}/audio/wavpack
|
||||
PLIST_SUB+= WITH_WAVPACK=""
|
||||
CONFIGURE_ARGS+= --with-wavpack
|
||||
.else
|
||||
|
@ -192,12 +188,12 @@ CONFIGURE_ARGS+= --without-wavpack
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MVAAPI}
|
||||
LIB_DEPENDS+= va:${PORTSDIR}/multimedia/libva
|
||||
LIB_DEPENDS+= libva.so:${PORTSDIR}/multimedia/libva
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MLIBBLURAY}
|
||||
CONFIGURE_OPTS+= --enable-bluray
|
||||
LIB_DEPENDS+= bluray:${PORTSDIR}/multimedia/libbluray
|
||||
LIB_DEPENDS+= libbluray.so:${PORTSDIR}/multimedia/libbluray
|
||||
PLIST_SUB+= LIBBLURAY=""
|
||||
.else
|
||||
CONFIGURE_OPTS+= --disable-bluray
|
||||
|
@ -219,7 +215,7 @@ CONFIGURE_ARGS+= --disable-vidix
|
|||
|
||||
post-patch:
|
||||
.if ${PORT_OPTIONS:MVAAPI}
|
||||
@${PATCH} ${PATCH_DIST_ARGS} <${FILESDIR}/ffmpeg-vaapi_xine-lib-1.2.2-defaultoff.diff
|
||||
#@${PATCH} ${PATCH_DIST_ARGS} <${FILESDIR}/ffmpeg-vaapi_xine-lib-1.2.2-defaultoff.diff
|
||||
.endif
|
||||
.for f in libtool ltmain.sh
|
||||
@${REINPLACE_CMD} -e \
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (xine-lib-1.2.2.tar.xz) = e1656451be64005ef296ffafcf5085d63ef7d4ee4477024391f8e3000d3253d6
|
||||
SIZE (xine-lib-1.2.2.tar.xz) = 4857248
|
||||
SHA256 (xine-lib-1.2.4.tar.xz) = 9c5b1b4ef7bd0591962c322a3afa709eeaa5bae664678548f1340e64f43abbdd
|
||||
SIZE (xine-lib-1.2.4.tar.xz) = 4954992
|
||||
|
|
|
@ -1,45 +0,0 @@
|
|||
|
||||
# HG changeset patch
|
||||
# User Petri Hintukainen <phintuka@users.sourceforge.net>
|
||||
# Date 1339310702 -10800
|
||||
# Node ID b0df4b6003ad2b7454059c2d82ef7f8f29e48e9e
|
||||
# Parent 52a99e60c2c9aa7e03be894b4396f229f881025c
|
||||
Fix building on non-x86 systems
|
||||
|
||||
diff -r 52a99e60c2c9 -r b0df4b6003ad src/post/deinterlace/plugins/greedy2frame_template.c
|
||||
--- src/post/deinterlace/plugins/greedy2frame_template.c Sat Jun 09 18:58:05 2012 +0100
|
||||
+++ src/post/deinterlace/plugins/greedy2frame_template.c Sun Jun 10 09:45:02 2012 +0300
|
||||
@@ -85,6 +85,7 @@
|
||||
*/
|
||||
|
||||
|
||||
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
|
||||
#if !defined(MASKS_DEFINED)
|
||||
#define MASKS_DEFINED
|
||||
static const mmx_t Mask = { uq: 0x7f7f7f7f7f7f7f7fll };
|
||||
@@ -92,6 +93,7 @@
|
||||
static const mmx_t GreedyTwoFrameThreshold = { ub: {TP, TP, TP, TP} };
|
||||
#undef TP
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#if defined(IS_MMXEXT)
|
||||
static void DeinterlaceGreedy2Frame_MMXEXT(uint8_t *output, int outstride,
|
||||
diff -r 52a99e60c2c9 -r b0df4b6003ad src/post/deinterlace/plugins/greedy2frame_template_sse2.c
|
||||
--- src/post/deinterlace/plugins/greedy2frame_template_sse2.c Sat Jun 09 18:58:05 2012 +0100
|
||||
+++ src/post/deinterlace/plugins/greedy2frame_template_sse2.c Sun Jun 10 09:45:02 2012 +0300
|
||||
@@ -84,11 +84,12 @@
|
||||
** B0 | | B1 | |
|
||||
*/
|
||||
|
||||
-
|
||||
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
|
||||
static const sse_t Mask128 = { uq: { 0x7f7f7f7f7f7f7f7fll, 0x7f7f7f7f7f7f7f7fll} };
|
||||
#define TP GREEDYTWOFRAMETHRESHOLD, GREEDYTWOFRAMETHRESHOLD2
|
||||
static const sse_t GreedyTwoFrameThreshold128 = { ub: {TP, TP, TP, TP, TP, TP, TP, TP} };
|
||||
#undef TP
|
||||
+#endif
|
||||
|
||||
static void DeinterlaceGreedy2Frame_SSE2(uint8_t *output, int outstride,
|
||||
deinterlace_frame_data_t *data,
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
--- src/combined/ffmpeg/Makefile.in.orig 2013-09-23 15:58:14.000000000 -0500
|
||||
+++ src/combined/ffmpeg/Makefile.in 2013-09-25 03:25:33.000000000 -0500
|
||||
@@ -995,10 +995,7 @@
|
||||
avcodec_audio.list: AV_CODECS:=/CODEC_ID_PCM_S16LE/,/CODEC_ID_DVD_SUBTITLE/
|
||||
avcodec_video.list: AV_CODECS:=/CODEC_ID_MPEG1VIDEO/,/CODEC_ID_PCM_S16LE/
|
||||
|
||||
-# that weird shell call just yields full path of the avcodec.h file
|
||||
-avcodec_audio.list avcodec_video.list: $(shell \
|
||||
- echo '#include "$(srcdir)/ffmpeg_decoder.h"' | $(AV_CPP) -M - |\
|
||||
- sed -e 's/ \+/\n/g;' | sed -n -e '/avcodec\.h/p;')
|
||||
+avcodec_audio.list avcodec_video.list:
|
||||
$(AM_V_GEN)echo '#include "$(srcdir)/ffmpeg_decoder.h"' | $(AV_CPP) - |\
|
||||
sed -e $(AV_CODECS)'! d; s/^[ \t]*//; s/[=,].*//; /^$$/ d' >$@
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
--- src/post/deinterlace/plugins/greedy2frame_template_sse2.c.orig 2013-09-03 20:12:37.000000000 +0200
|
||||
+++ src/post/deinterlace/plugins/greedy2frame_template_sse2.c 2013-09-03 20:22:34.000000000 +0200
|
||||
@@ -173,8 +173,8 @@
|
||||
*/
|
||||
"movdqa (%3), %%xmm1 \n\t" /* xmm1 = T1 */
|
||||
"movdqa (%4), %%xmm0 \n\t" /* xmm0 = T0 */
|
||||
- "movdqa (%q5,%3), %%xmm3 \n\t" /* xmm3 = B1 */
|
||||
- "movdqa (%q5,%4), %%xmm2 \n\t" /* xmm2 = B0 */
|
||||
+ "movdqa (%3,%5), %%xmm3 \n\t" /* xmm3 = B1 */
|
||||
+ "movdqa (%4,%5), %%xmm2 \n\t" /* xmm2 = B0 */
|
||||
|
||||
/* calculate |T1-T0| keep T1 put result in xmm5 */
|
||||
"movdqa %%xmm1, %%xmm5 \n\t"
|
||||
@@ -192,11 +192,11 @@
|
||||
"pcmpgtb %1, %%xmm5 \n\t"
|
||||
"pcmpeqd %%xmm7, %%xmm5 \n\t"
|
||||
|
||||
- "prefetcht0 64(%q5,%3) \n\t"
|
||||
- "prefetcht0 64(%q5,%4) \n\t"
|
||||
+ "prefetcht0 64(%3,%5) \n\t"
|
||||
+ "prefetcht0 64(%4,%5) \n\t"
|
||||
:
|
||||
: "r" (M1), "m" (GreedyTwoFrameThreshold128),
|
||||
- "m" (*Destc), "r" (T1), "r" (T0), "r" (Pitch) );
|
||||
+ "m" (*Destc), "r" (T1), "r" (T0), "r" ((register_t)Pitch) );
|
||||
|
||||
asm volatile (
|
||||
/* calculate |B1-B0| keep B1 put result in xmm4 */
|
|
@ -104,6 +104,7 @@ share/xine-lib/fonts/serif-64.xinefont.gz
|
|||
%%WITH_GTK2%%%%PLUGINSDIR%%/xineplug_decode_gdk_pixbuf.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_gsm610.so
|
||||
%%WITH_IMAGEMAGICK%%%%PLUGINSDIR%%/xineplug_decode_image.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_libjpeg.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_lpcm.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_mad.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_mpeg2.so
|
||||
|
@ -114,6 +115,11 @@ share/xine-lib/fonts/serif-64.xinefont.gz
|
|||
%%PLUGINSDIR%%/xineplug_decode_spucmml.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_spudvb.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_spuhdmv.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_h264_alter.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_h264.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_mpeg12.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_mpeg4.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_vc1.so
|
||||
%%WITH_VIDIX%%%%PLUGINSDIR%%/xineplug_decode_w32dll.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_yuv.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_asf.so
|
||||
|
@ -126,17 +132,20 @@ share/xine-lib/fonts/serif-64.xinefont.gz
|
|||
%%WITH_DMX_IMAGE%%%%PLUGINSDIR%%/xineplug_dmx_image.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_matroska.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_mng.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_modplug.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_mpeg.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_mpeg_block.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_mpeg_elem.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_mpeg_pes.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_mpeg_ts.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_nsv.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_playlist.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_pva.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_qt.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_rawdv.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_real.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_slave.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_vc1_es.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_yuv4mpeg2.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_yuv_frames.so
|
||||
%%PLUGINSDIR%%/xineplug_flac.so
|
||||
|
@ -154,14 +163,20 @@ share/xine-lib/fonts/serif-64.xinefont.gz
|
|||
%%PLUGINSDIR%%/xineplug_inp_rtsp.so
|
||||
%%WITH_SMB%%%%PLUGINSDIR%%/xineplug_inp_smb.so
|
||||
%%PLUGINSDIR%%/xineplug_inp_stdin_fifo.so
|
||||
%%PLUGINSDIR%%/xineplug_inp_test.so
|
||||
%%PLUGINSDIR%%/xineplug_inp_vcd.so
|
||||
%%PLUGINSDIR%%/xineplug_inp_vcdo.so
|
||||
%%PLUGINSDIR%%/xineplug_nsf.so
|
||||
%%PLUGINSDIR%%/xineplug_sputext.so
|
||||
%%PLUGINSDIR%%/xineplug_vdr.so
|
||||
%%WITH_AALIB%%%%PLUGINSDIR%%/xineplug_vo_out_aa.so
|
||||
%%WITH_CACA%%%%PLUGINSDIR%%/xineplug_vo_out_caca.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_none.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_opengl.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_opengl2.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_raw.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_sdl.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_vdpau.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_xcbshm.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_xcbxv.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_xshm.so
|
||||
|
@ -169,20 +184,11 @@ share/xine-lib/fonts/serif-64.xinefont.gz
|
|||
%%WITH_XVMC%%%%PLUGINSDIR%%/xineplug_vo_out_xvmc.so
|
||||
%%WITH_XVMC%%%%PLUGINSDIR%%/xineplug_vo_out_xxmc.so
|
||||
%%WITH_WAVPACK%%%%PLUGINSDIR%%/xineplug_wavpack.so
|
||||
%%PLUGINSDIR%%/xineplug_vo_out_vdpau.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_vc1_es.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_h264_alter.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_h264.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_mpeg12.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_mpeg4.so
|
||||
%%PLUGINSDIR%%/xineplug_decode_vdpau_vc1.so
|
||||
%%PLUGINSDIR%%/xineplug_vdr.so
|
||||
%%PLUGINSDIR%%/xineplug_nsf.so
|
||||
%%PLUGINSDIR%%/xineplug_sputext.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_modplug.so
|
||||
%%PLUGINSDIR%%/xineplug_dmx_playlist.so
|
||||
%%PLUGINSDIR%%/xineplug_xiph.so
|
||||
libdata/pkgconfig/libxine.pc
|
||||
man/man1/xine-config.1.gz
|
||||
man/man1/xine-list-1.2.1.gz
|
||||
man/man5/xine.5.gz
|
||||
share/aclocal/xine.m4
|
||||
%%DOCSDIR%%/COPYING
|
||||
%%DOCSDIR%%/CREDITS
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
PORTNAME= mlt
|
||||
PORTVERSION= 0.9.0
|
||||
PORTREVISION?= 0
|
||||
PORTREVISION?= 1
|
||||
CATEGORIES?= multimedia
|
||||
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}
|
||||
|
||||
|
|
|
@ -1,19 +1,18 @@
|
|||
# Created by: SimaMoto,RyoTa <liangtai.s4@gmail.com>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= qmmp-plugin-pack
|
||||
PORTVERSION= 0.6.2
|
||||
PORTVERSION= 0.7.2
|
||||
CATEGORIES= multimedia
|
||||
MASTER_SITES= http://qmmp.ylsoftware.com/files/plugins/ \
|
||||
http://qmmp.googlecode.com/files/
|
||||
|
||||
MAINTAINER= liangtai.s4@gmail.com
|
||||
MAINTAINER= liangtai.s16@gmail.com
|
||||
COMMENT= Additional plug-ins for QMMP
|
||||
|
||||
LICENSE= GPLv2
|
||||
|
||||
LIB_DEPENDS= qmmpui:${PORTSDIR}/multimedia/qmmp
|
||||
BUILD_DEPENDS= qmmp>=0.6.0:${PORTSDIR}/multimedia/qmmp
|
||||
LIB_DEPENDS= libqmmpui.so:${PORTSDIR}/multimedia/qmmp
|
||||
BUILD_DEPENDS= qmmp>=0.7.0:${PORTSDIR}/multimedia/qmmp
|
||||
|
||||
USE_BZIP2= yes
|
||||
USES= cmake:outsource pkgconfig
|
||||
|
@ -45,7 +44,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_QSUI:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MMPG123}
|
||||
PLIST_SUB+= MPG123=""
|
||||
LIB_DEPENDS+= mpg123:${PORTSDIR}/audio/mpg123
|
||||
LIB_DEPENDS+= libmpg123.so:${PORTSDIR}/audio/mpg123
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MPG123:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= MPG123="@comment "
|
||||
|
@ -62,7 +61,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_ASM:BOOL=TRUE
|
|||
. else
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_ASM:BOOL=FALSE
|
||||
. endif
|
||||
LIB_DEPENDS+= tag:${PORTSDIR}/audio/taglib
|
||||
LIB_DEPENDS+= libtag.so:${PORTSDIR}/audio/taglib
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_FFAP:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= FFAP="@comment "
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (qmmp-plugin-pack-0.6.2.tar.bz2) = 8f241b94a3671a27d1d1f5d4695469760a52dcaafdc5e97f069b932ccb2ed41c
|
||||
SIZE (qmmp-plugin-pack-0.6.2.tar.bz2) = 121619
|
||||
SHA256 (qmmp-plugin-pack-0.7.2.tar.bz2) = ff35e1576aa91082496433c4ea22984469eb7810ec0ab7a1d99a7510066cad2d
|
||||
SIZE (qmmp-plugin-pack-0.7.2.tar.bz2) = 135630
|
||||
|
|
|
@ -1,14 +1,12 @@
|
|||
# Created by: SimaMoto,RyoTa <liangtai.s4@gmail.com>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= qmmp
|
||||
PORTVERSION= 0.6.3
|
||||
PORTREVISION= 2
|
||||
PORTVERSION= 0.7.2
|
||||
CATEGORIES= multimedia
|
||||
MASTER_SITES= http://qmmp.ylsoftware.com/files/ \
|
||||
${MASTER_SITE_GOOGLE_CODE}
|
||||
|
||||
MAINTAINER= liangtai.s4@gmail.com
|
||||
MAINTAINER= liangtai.s16@gmail.com
|
||||
COMMENT= A Qt4-based multimedia player
|
||||
|
||||
LICENSE= GPLv2
|
||||
|
@ -19,18 +17,21 @@ USE_QT4= corelib gui network xml \
|
|||
qmake_build rcc_build uic_build moc_build linguist_build
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
OPTIONS_DEFINE= SKINNEDUI DIR_ASSOC APIDOC PULSEAUDIO ALSA OSS OSS4 \
|
||||
JACK NULLOUT FLAC MUSEPACK FFMPEG MODPLUG WILDMIDI GME MAD \
|
||||
VORBIS SNDFILE WAVPACK CUE CDIO FAAD LADSPA CROSSFADE BS2B \
|
||||
STEREO SRCONV MPLAYER CURL MMS PROJECTM ANALYZER ENCA \
|
||||
CONVERTER MPRIS SCROBBLER STATICON SB NOTIFIER LYRICS HOTKEY \
|
||||
FILEOPS COVER KDENOTIFY HAL UDISKS QMMP_DIALOG
|
||||
OPTIONS_DEFAULT= SKINNEDUI DIR_ASSOC PULSEAUDIO ALSA OSS4 \
|
||||
JACK NULLOUT FLAC MUSEPACK FFMPEG MODPLUG WILDMIDI GME MAD \
|
||||
VORBIS SNDFILE WAVPACK CUE CDIO FAAD LADSPA CROSSFADE BS2B \
|
||||
STEREO SRCONV MPLAYER CURL MMS PROJECTM ANALYZER ENCA \
|
||||
CONVERTER MPRIS SCROBBLER STATICON SB NOTIFIER LYRICS HOTKEY \
|
||||
FILEOPS COVER KDENOTIFY HAL UDISKS QMMP_DIALOG
|
||||
OPTIONS_SINGLE_MPLAYER= MPLAYER1 MPLAYER2
|
||||
OPTIONS_DEFINE= ALSA ANALYZER APIDOC BS2B CDIO CONVERTER COPYPASTE \
|
||||
COVER CROSSFADE CUE CURL DIR_ASSOC DOCS ENCA FAAD \
|
||||
FFMPEG FILEOPS FLAC GME HAL HOTKEY JACK KDENOTIFY \
|
||||
LADSPA LYRICS MAD MMS MODPLUG MPLAYER MPRIS MUSEPACK \
|
||||
NOTIFIER NULLOUT OSS OSS4 PROJECTM PULSEAUDIO QMMP_DIALOG \
|
||||
SB SCROBBLER SKINNEDUI SNDFILE SRCONV STATICON STEREO \
|
||||
TRACKCHANGE UDISKS UDISKS2 VORBIS WAVPACK WILDMIDI
|
||||
OPTIONS_DEFAULT= ALSA ANALYZER BS2B CDIO CONVERTER COPYPASTE COVER \
|
||||
CROSSFADE CUE CURL DIR_ASSOC ENCA FAAD \
|
||||
FFMPEG FILEOPS FLAC GME HAL HOTKEY JACK KDENOTIFY \
|
||||
LADSPA LYRICS MAD MMS MODPLUG MPRIS MPLAYER MPLAYER1 MUSEPACK \
|
||||
NOTIFIER NULLOUT OSS4 PROJECTM PULSEAUDIO QMMP_DIALOG \
|
||||
SB SCROBBLER SKINNEDUI SNDFILE SRCONV STATICON STEREO \
|
||||
TRACKCHANGE UDISKS2 VORBIS WAVPACK WILDMIDI
|
||||
SKINNEDUI_DESC= Skinned GUI
|
||||
DIR_ASSOC_DESC= inode/directory mime type association
|
||||
APIDOC_DESC= Doxygen generated doc (libqmmp libqmmpui)
|
||||
|
@ -38,27 +39,32 @@ OSS4_DESC= Open Sound System (ver4) support
|
|||
NULLOUT_DESC= Support a null output
|
||||
WILDMIDI_DESC= Support to playback MIDI files
|
||||
GME_DESC= Support video game music files
|
||||
CDIO_DESC= Support to playback compact discs
|
||||
CROSSFADE_DESC= Support cross-fade effect
|
||||
BS2B_DESC= Support the Bauer stereophonic2binaural effect
|
||||
STEREO_DESC= Support stereo effect
|
||||
SRCONV_DESC= Support the sample rate converter
|
||||
PROJECTM_DESC= Support the projectM music visualiser
|
||||
ANALYZER_DESC= Supoort spectrum analyzer visualization
|
||||
COPYPASTE_DESC= Enable copy/paste track infos between playlists
|
||||
ENCA_DESC= Support automatic character set detection
|
||||
#OPUS_DESC= Enable reading opusfile tags
|
||||
CONVERTER_DESC= Support file type converter
|
||||
MPRIS_DESC= Support the Media Player Remote
|
||||
SCROBBLER_DESC= Support Libre.fm/Last.fm scrobbler feature
|
||||
STATICON_DESC= Support to show status icon
|
||||
SB_DESC= Browser for IceCast stream directory
|
||||
TRACKCHANGE_DESC= Enable to run external command each track switching
|
||||
NOTIFIER_DESC= Support to popup notifier
|
||||
LYRICS_DESC= Support to show lyrics using lyrics.wikia.com
|
||||
HOTKEY_DESC= Support to set shortcut keys
|
||||
FILEOPS_DESC= Support file operation
|
||||
COVER_DESC= Support to show cover images
|
||||
KDENOTIFY_DESC= Support to popup notifier for KDE
|
||||
UDISKS_DESC= Support removable disc detection using UDisks
|
||||
UDISKS_DESC= Support removable disc detection (obsolete)
|
||||
UDISKS2_DESC= Support removable disc detection using UDisks
|
||||
QMMP_DIALOG_DESC= An original dialog
|
||||
MPLAYER1_DESC= mplayer-1.1.x (multimedia/mplayer)
|
||||
MPLAYER2_DESC= mplayer-2.0.x (multimedia/mplayer2)
|
||||
|
||||
NO_STAGE= yes
|
||||
.include <bsd.port.options.mk>
|
||||
|
@ -85,7 +91,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_DIR_ASSOC:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MJACK}
|
||||
PLIST_SUB+= JACK=""
|
||||
LIB_DEPENDS+= jack:${PORTSDIR}/audio/jack
|
||||
LIB_DEPENDS+= libjack.so:${PORTSDIR}/audio/jack
|
||||
BUILD_DEPENDS+= jackit>=0.121.2:${PORTSDIR}/audio/jack
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_JACK:BOOL=TRUE
|
||||
.else
|
||||
|
@ -95,7 +101,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_JACK:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MALSA}
|
||||
PLIST_SUB+= ALSA=""
|
||||
LIB_DEPENDS+= asound:${PORTSDIR}/audio/alsa-lib
|
||||
LIB_DEPENDS+= libasound.so:${PORTSDIR}/audio/alsa-lib
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_ALSA:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= ALSA="@comment "
|
||||
|
@ -104,7 +110,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_ALSA:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MBS2B}
|
||||
PLIST_SUB+= BS2B=""
|
||||
LIB_DEPENDS+= bs2b:${PORTSDIR}/audio/libbs2b
|
||||
LIB_DEPENDS+= libbs2b.so:${PORTSDIR}/audio/libbs2b
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_BS2B:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= BS2B="@comment "
|
||||
|
@ -113,7 +119,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_BS2B:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MPULSEAUDIO}
|
||||
PLIST_SUB+= PULSE_AUDIO=""
|
||||
LIB_DEPENDS+= pulse:${PORTSDIR}/audio/pulseaudio
|
||||
LIB_DEPENDS+= libpulse.so:${PORTSDIR}/audio/pulseaudio
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_PULSE:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= PULSE_AUDIO="@comment "
|
||||
|
@ -122,7 +128,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_PULSE:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MFLAC}
|
||||
PLIST_SUB+= FLAC=""
|
||||
LIB_DEPENDS+= FLAC:${PORTSDIR}/audio/flac
|
||||
LIB_DEPENDS+= libFLAC.so:${PORTSDIR}/audio/flac
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_FLAC:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= FLAC="@comment "
|
||||
|
@ -131,7 +137,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_FLAC:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MMUSEPACK}
|
||||
PLIST_SUB+= MUSEPACK=""
|
||||
LIB_DEPENDS+= mpcdec:${PORTSDIR}/audio/musepack
|
||||
LIB_DEPENDS+= libmpcdec.so:${PORTSDIR}/audio/musepack
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MPC:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= MUSEPACK="@comment "
|
||||
|
@ -140,7 +146,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_MPC:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MGME}
|
||||
PLIST_SUB+= GME=""
|
||||
LIB_DEPENDS+= gme:${PORTSDIR}/audio/libgme
|
||||
LIB_DEPENDS+= libgme.so:${PORTSDIR}/audio/libgme
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_GME:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= GME="@comment "
|
||||
|
@ -148,12 +154,8 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_GME:BOOL=FALSE
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFFMPEG}
|
||||
LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
|
||||
PLIST_SUB+= FFMPEG=""
|
||||
. if exists(${LOCALBASE}/include/libavcodec/vda.h)
|
||||
LIB_DEPENDS+= avcodec:${PORTSDIR}/multimedia/ffmpeg-devel
|
||||
. else
|
||||
LIB_DEPENDS+= avcodec:${PORTSDIR}/multimedia/ffmpeg
|
||||
. endif
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_FFMPEG:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= FFMPEG="@comment "
|
||||
|
@ -162,7 +164,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_FFMPEG:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MMODPLUG}
|
||||
PLIST_SUB+= MODPLUG=""
|
||||
LIB_DEPENDS+= modplug:${PORTSDIR}/audio/libmodplug
|
||||
LIB_DEPENDS+= libmodplug.so:${PORTSDIR}/audio/libmodplug
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MODPLUG:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= MODPLUG="@comment "
|
||||
|
@ -171,7 +173,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_MODPLUG:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MFAAD}
|
||||
PLIST_SUB+= FAAD=""
|
||||
LIB_DEPENDS+= faad:${PORTSDIR}/audio/faad
|
||||
LIB_DEPENDS+= libfaad.so:${PORTSDIR}/audio/faad
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_AAC:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= FAAD="@comment "
|
||||
|
@ -180,7 +182,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_AAC:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MCDIO}
|
||||
PLIST_SUB+= CDIO=""
|
||||
LIB_DEPENDS+= cdio:${PORTSDIR}/sysutils/libcdio
|
||||
LIB_DEPENDS+= libcdio.so:${PORTSDIR}/sysutils/libcdio
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_CDA:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= CDIO="@comment "
|
||||
|
@ -190,7 +192,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_CDA:BOOL=FALSE
|
|||
.if ${PORT_OPTIONS:MENCA} || \
|
||||
(exists(${LOCALBASE}/include/enca.h) && ${PORT_OPTIONS:MCUE})
|
||||
PLIST_SUB+= ENCA=""
|
||||
LIB_DEPENDS+= enca:${PORTSDIR}/converters/enca
|
||||
LIB_DEPENDS+= libenca.so:${PORTSDIR}/converters/enca
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_ENCA:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= ENCA="@comment "
|
||||
|
@ -198,8 +200,12 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_ENCA:BOOL=FALSE
|
|||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MMPLAYER}
|
||||
PLIST_SUB+= MPLAYER=""
|
||||
. if ${PORT_OPTIONS:MMPLAYER2}
|
||||
RUN_DEPENDS+= mplayer:${PORTSDIR}/multimedia/mplayer2
|
||||
. else
|
||||
RUN_DEPENDS+= mplayer:${PORTSDIR}/multimedia/mplayer
|
||||
. endif
|
||||
PLIST_SUB+= MPLAYER=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MPLAYER:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= MPLAYER="@comment "
|
||||
|
@ -208,7 +214,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_MPLAYER:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MPROJECTM}
|
||||
PLIST_SUB+= PROJECTM=""
|
||||
LIB_DEPENDS+= projectM.2:${PORTSDIR}/graphics/libprojectm
|
||||
LIB_DEPENDS+= libprojectM.so.2:${PORTSDIR}/graphics/libprojectm
|
||||
USE_QT4+= opengl
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_PROJECTM:BOOL=TRUE
|
||||
.else
|
||||
|
@ -244,7 +250,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_LADSPA:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MWILDMIDI}
|
||||
PLIST_SUB+= WILDMIDI=""
|
||||
LIB_DEPENDS+= WildMidi:${PORTSDIR}/audio/wildmidi
|
||||
LIB_DEPENDS+= libWildMidi.so:${PORTSDIR}/audio/wildmidi
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MIDI:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= WILDMIDI="@comment "
|
||||
|
@ -253,16 +259,25 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_MIDI:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MMAD}
|
||||
PLIST_SUB+= MAD=""
|
||||
LIB_DEPENDS+= mad:${PORTSDIR}/audio/libmad
|
||||
LIB_DEPENDS+= libmad.so:${PORTSDIR}/audio/libmad
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MAD:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= MAD="@comment "
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MAD:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
#.if ${PORT_OPTIONS:MOPUS}
|
||||
#PLIST_SUB+= OPUS=""
|
||||
#LIB_DEPENDS+= libopusfile.so:${PORTSDIR}/audio/opusfile
|
||||
#PLUGIN_OPTIONS_CMAKE+= -DUSE_OPUS:BOOL=TRUE
|
||||
#.else
|
||||
PLIST_SUB+= OPUS="@comment "
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_OPUS:BOOL=FALSE
|
||||
#.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSNDFILE}
|
||||
PLIST_SUB+= SNDFILE=""
|
||||
LIB_DEPENDS+= sndfile:${PORTSDIR}/audio/libsndfile
|
||||
LIB_DEPENDS+= libsndfile.so:${PORTSDIR}/audio/libsndfile
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_SNDFILE:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= SNDFILE="@comment "
|
||||
|
@ -271,7 +286,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_SNDFILE:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MVORBIS}
|
||||
PLIST_SUB+= VORBIS=""
|
||||
LIB_DEPENDS+= vorbis:${PORTSDIR}/audio/libvorbis
|
||||
LIB_DEPENDS+= libvorbis.so:${PORTSDIR}/audio/libvorbis
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_VORBIS:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= VORBIS="@comment "
|
||||
|
@ -280,7 +295,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_VORBIS:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MWAVPACK}
|
||||
PLIST_SUB+= WAVPACK=""
|
||||
LIB_DEPENDS+= wavpack:${PORTSDIR}/audio/wavpack
|
||||
LIB_DEPENDS+= libwavpack.so:${PORTSDIR}/audio/wavpack
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_WAVPACK:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= WAVPACK="@comment "
|
||||
|
@ -289,7 +304,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_WAVPACK:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MCURL}
|
||||
PLIST_SUB+= CURL=""
|
||||
LIB_DEPENDS+= curl:${PORTSDIR}/ftp/curl
|
||||
LIB_DEPENDS+= libcurl.so:${PORTSDIR}/ftp/curl
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_CURL:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= CURL="@comment "
|
||||
|
@ -298,7 +313,7 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_CURL:BOOL=FALSE
|
|||
|
||||
.if ${PORT_OPTIONS:MMMS}
|
||||
PLIST_SUB+= MMS=""
|
||||
LIB_DEPENDS+= mms:${PORTSDIR}/net/libmms
|
||||
LIB_DEPENDS+= libmms.so:${PORTSDIR}/net/libmms
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MMS:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= MMS="@comment "
|
||||
|
@ -361,6 +376,14 @@ PLIST_SUB+= CONVERTER="@comment "
|
|||
PLUGIN_OPTIONS_CMAKE+= -DUSE_CONVERTER:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MCOPYPASTE}
|
||||
PLIST_SUB+= COPYPASTE=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_COPYPASTE:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= COPYPASTE="@comment "
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_COPYPASTE:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MMPRIS}
|
||||
PLIST_SUB+= MPRIS=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_MPRIS:BOOL=TRUE
|
||||
|
@ -449,6 +472,14 @@ PLIST_SUB+= KDENOTIFY="@comment "
|
|||
PLUGIN_OPTIONS_CMAKE+= -DUSE_KDENOTIFY:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MTRACKCHANGE}
|
||||
PLIST_SUB+= TRACKCHANGE=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_TRACKCHANGE:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= TRACKCHANGE="@comment "
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_TRACKCHANGE:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MUDISKS}
|
||||
PLIST_SUB+= UDISKS=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_UDISKS:BOOL=TRUE
|
||||
|
@ -457,6 +488,14 @@ PLIST_SUB+= UDISKS="@comment "
|
|||
PLUGIN_OPTIONS_CMAKE+= -DUSE_UDISKS:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MUDISKS2}
|
||||
PLIST_SUB+= UDISKS2=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_UDISKS2:BOOL=TRUE
|
||||
.else
|
||||
PLIST_SUB+= UDISKS2="@comment "
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_UDISKS2:BOOL=FALSE
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MQMMP_DIALOG}
|
||||
PLIST_SUB+= QMMP_DIALOG=""
|
||||
PLUGIN_OPTIONS_CMAKE+= -DUSE_QMMP_DIALOG:BOOL=TRUE
|
||||
|
@ -468,9 +507,10 @@ PLUGIN_OPTIONS_CMAKE+= -DUSE_QMMP_DIALOG:BOOL=FALSE
|
|||
.if ${PORT_OPTIONS:MFAAD} || ${PORT_OPTIONS:MMAD} \
|
||||
|| ${PORT_OPTIONS:MMUSEPACK} || ${PORT_OPTIONS:MFLAC} \
|
||||
|| ${PORT_OPTIONS:MVORBIS} || ${PORT_OPTIONS:MCONVERTER}
|
||||
LIB_DEPENDS+= tag:${PORTSDIR}/audio/taglib
|
||||
LIB_DEPENDS+= libtag.so:${PORTSDIR}/audio/taglib
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MKDENOTIFY} || ${PORT_OPTIONS:MUDISKS} \
|
||||
.if ${PORT_OPTIONS:MKDENOTIFY} \
|
||||
|| ${PORT_OPTIONS:MUDISKS} || ${PORT_OPTIONS:MUDISKS2} \
|
||||
|| ${PORT_OPTIONS:MHAL} || ${PORT_OPTIONS:MMPRIS}
|
||||
USE_QT4+= dbus
|
||||
.endif
|
||||
|
@ -480,15 +520,15 @@ PLIST_SUB+= SHLIB_VER=${PORTVERSION:C/-.*//}
|
|||
PORTDOCS= README README.RUS AUTHORS
|
||||
INSTALLS_ICONS= yes
|
||||
|
||||
CMAKE_ARGS+= ${PLUGIN_OPTIONS_CMAKE} \
|
||||
CMAKE_ARGS+= ${PLUGIN_OPTIONS_CMAKE} -DUSE_RPATH:BOOL=TRUE \
|
||||
-DCMAKE_REQUIRED_INCLUDES:PATH=${LOCALBASE}/include
|
||||
CFLAGS+= -I${LOCALBASE}/include
|
||||
LDFLAGS+= -L${LOCALBASE}/lib
|
||||
|
||||
post-patch:
|
||||
${REINPLACE_CMD} -e 's|/usr/local/|${LOCALBASE}/|' \
|
||||
@${REINPLACE_CMD} -e 's|/usr/local/|${LOCALBASE}/|' \
|
||||
${WRKSRC}/src/plugins/Output/oss4/CMakeLists.txt
|
||||
${REINPLACE_CMD} -e '/pkgconfig/s|$${LIB_DIR}|libdata|' \
|
||||
@${REINPLACE_CMD} -e '/pkgconfig/s|$${LIB_DIR}|libdata|' \
|
||||
${WRKSRC}/src/qmmp/CMakeLists.txt \
|
||||
${WRKSRC}/src/qmmpui/CMakeLists.txt
|
||||
|
||||
|
@ -501,20 +541,20 @@ post-build:
|
|||
.endif
|
||||
|
||||
post-install:
|
||||
.ifndef(NOPORTDOCS)
|
||||
${MKDIR} ${DOCSDIR}; \
|
||||
cd ${WRKSRC} && ${INSTALL_MAN} ${PORTDOCS} ${DOCSDIR}
|
||||
.endif
|
||||
@${MKDIR} ${STAGEDIR}/${DOCSDIR}
|
||||
cd ${WRKSRC} && ${INSTALL_MAN} ${PORTDOCS} ${STAGEDIR}/${DOCSDIR}
|
||||
.if ${PORT_OPTIONS:MAPIDOC}
|
||||
${MKDIR} ${DOCSDIR}/html/search ; \
|
||||
@${MKDIR} ${STAGEDIR}/${DOCSDIR}/html/search ; \
|
||||
cd ${WRKSRC}/doc/html && \
|
||||
${INSTALL_MAN} *.html *.png *.css ${DOCSDIR}/html ; \
|
||||
${INSTALL_MAN} *.html *.png *.css ${STAGEDIR}/${DOCSDIR}/html ; \
|
||||
cd ${WRKSRC}/doc/html/search && \
|
||||
${INSTALL_MAN} *.html *.png *.css *.js ${DOCSDIR}/html/search ; \
|
||||
${INSTALL_MAN} *.html *.png *.css *.js ${STAGEDIR}/${DOCSDIR}/html/search ; \
|
||||
${RM} -f ${WRKDIR}/PLIST.doc ; \
|
||||
${FIND} ${DOCSDIR}/html -type f | ${SED} 's|${PREFIX}/||' \
|
||||
${FIND} ${STAGEDIR}/${DOCSDIR}/html -type f | \
|
||||
${SED} 's|${STAGEDIR}/${PREFIX}/||' \
|
||||
>> ${WRKDIR}/PLIST.doc ; \
|
||||
${FIND} ${DOCSDIR}/html -type d | ${SED} 's|${PREFIX}/|@dirrm |' \
|
||||
${FIND} ${STAGEDIR}/${DOCSDIR}/html -type d | \
|
||||
${SED} 's|${STAGEDIR}/${PREFIX}/|@dirrm |' \
|
||||
| ${SORT} -r >> ${WRKDIR}/PLIST.doc ; \
|
||||
cd ${WRKDIR} ; ${SED} -i -e '/PLIST.doc/ r PLIST.doc' ${TMPPLIST}
|
||||
.endif
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (qmmp-0.6.3.tar.bz2) = 98f5b8121d475ead81c788ec9d5346c8da537e342c0d99eaff08586af4c92ca8
|
||||
SIZE (qmmp-0.6.3.tar.bz2) = 775285
|
||||
SHA256 (qmmp-0.7.2.tar.bz2) = 8e6b50ced58e247972060bb5a5156ea2c74b03f33df92e87591d09f685b82081
|
||||
SIZE (qmmp-0.7.2.tar.bz2) = 847558
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
--- CMakeLists.txt.orig 2012-06-30 17:56:52.000000000 +0900
|
||||
+++ CMakeLists.txt 2012-06-30 19:52:52.000000000 +0900
|
||||
@@ -7,6 +7,8 @@
|
||||
link_directories(/usr/local/lib64)
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} /usr/local/include)
|
||||
|
||||
+SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
+
|
||||
#extract version from qmmp.h
|
||||
FILE(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/src/qmmp/qmmp.h"
|
||||
QMMP_VERSION_DATA REGEX "^#define[ \t]+QMMP_VERSION_[A-Z]+[ \t]+[0-9]+.*$")
|
|
@ -2,9 +2,9 @@ This program is an audio-player, written with help of Qt library.
|
|||
Supported formats:
|
||||
MPEG1 layer 2/3, Ogg Vorbis, Native FLAC, Ogg FLAC, Musepack, WavePack,
|
||||
tracker modules (mod, s3m, it, xm, etc.), ADTS AAC, CD Audio, MIDI,
|
||||
WMA-Monkey's Audio (and other formats provided by FFmpeg library), PCM
|
||||
Wave (and other formats provided by libsndfile library), and Chiptune
|
||||
formats (AY, GBS, GYM, HES, KSS, NSF, NSFE, SAP, SPC, VGM, VGZ, VTX)
|
||||
Opus tags, WMA-Monkey's Audio (and other formats via FFmpeg),
|
||||
PCM Wave (and other formats via libsndfile), and Chiptune formats
|
||||
(AY, GBS, GYM, HES, KSS, NSF, NSFE, SAP, SPC, VGM, VGZ, VTX)
|
||||
DSP effects:
|
||||
Bauer Stereophonic-to-Binaural effect, sample rate conversion,
|
||||
LADSPA effects, extra stereo effect, and crossfade effect
|
||||
|
|
|
@ -17,7 +17,6 @@ include/qmmp/output.h
|
|||
include/qmmp/outputfactory.h
|
||||
include/qmmp/qmmp.h
|
||||
include/qmmp/qmmpsettings.h
|
||||
include/qmmp/recycler.h
|
||||
include/qmmp/soundcore.h
|
||||
include/qmmp/statehandler.h
|
||||
include/qmmp/tagmodel.h
|
||||
|
@ -34,6 +33,7 @@ include/qmmpui/general.h
|
|||
include/qmmpui/generalfactory.h
|
||||
include/qmmpui/mediaplayer.h
|
||||
include/qmmpui/metadataformatter.h
|
||||
include/qmmpui/playlistdownloader.h
|
||||
include/qmmpui/playlistformat.h
|
||||
include/qmmpui/playlistitem.h
|
||||
include/qmmpui/playlistmanager.h
|
||||
|
@ -62,6 +62,7 @@ lib/qmmp/CommandLineOptions/libstatusoption.so
|
|||
%%MPLAYER%%lib/qmmp/Engines/libmplayer.so
|
||||
%%QMMP_DIALOG%%lib/qmmp/FileDialogs/libqmmpfiledialog.so
|
||||
%%CONVERTER%%lib/qmmp/General/libconverter.so
|
||||
%%COPYPASTE%%lib/qmmp/General/libcopypaste.so
|
||||
%%COVER%%lib/qmmp/General/libcovermanager.so
|
||||
%%FILEOPS%%lib/qmmp/General/libfileops.so
|
||||
%%HAL%%lib/qmmp/General/libhal.so
|
||||
|
@ -73,16 +74,20 @@ lib/qmmp/CommandLineOptions/libstatusoption.so
|
|||
%%SCROBBLER%%lib/qmmp/General/libscrobbler.so
|
||||
%%STATICON%%lib/qmmp/General/libstatusicon.so
|
||||
%%SB%%lib/qmmp/General/libstreambrowser.so
|
||||
%%TRACKCHANGE%%lib/qmmp/General/libtrackchange.so
|
||||
%%UDISKS%%lib/qmmp/General/libudisks.so
|
||||
%%UDISKS2%%lib/qmmp/General/libudisks2.so
|
||||
%%FAAD%%lib/qmmp/Input/libaac.so
|
||||
%%CDIO%%lib/qmmp/Input/libcdaudio.so
|
||||
%%CUE%%lib/qmmp/Input/libcue.so
|
||||
%%FFMPEG%%lib/qmmp/Input/libffmpeg.so
|
||||
%%FFMPEG_LEGACY%%lib/qmmp/Input/libffmpeg_legacy.so
|
||||
%%FLAC%%lib/qmmp/Input/libflac.so
|
||||
%%MAD%%lib/qmmp/Input/libmad.so
|
||||
%%MODPLUG%%lib/qmmp/Input/libmodplug.so
|
||||
%%GME%%lib/qmmp/Input/libgme.so
|
||||
%%MUSEPACK%%lib/qmmp/Input/libmpc.so
|
||||
%%OPUS%%lib/qmmp/Input/libopus.so
|
||||
%%SNDFILE%%lib/qmmp/Input/libsndfile.so
|
||||
%%VORBIS%%lib/qmmp/Input/libvorbis.so
|
||||
%%WAVPACK%%lib/qmmp/Input/libwavpack.so
|
||||
|
@ -93,9 +98,9 @@ lib/qmmp/CommandLineOptions/libstatusoption.so
|
|||
%%OSS%%lib/qmmp/Output/liboss.so
|
||||
%%OSS4%%lib/qmmp/Output/liboss4.so
|
||||
%%PULSE_AUDIO%%lib/qmmp/Output/libpulseaudio.so
|
||||
lib/qmmp/PlaylistFormats/libm3uplaylistformat.so
|
||||
lib/qmmp/PlaylistFormats/libplsplaylistformat.so
|
||||
lib/qmmp/PlaylistFormats/libxspfplaylistformat.so
|
||||
lib/qmmp/PlayListFormats/libm3uplaylistformat.so
|
||||
lib/qmmp/PlayListFormats/libplsplaylistformat.so
|
||||
lib/qmmp/PlayListFormats/libxspfplaylistformat.so
|
||||
%%CURL%%lib/qmmp/Transports/libhttp.so
|
||||
%%MMS%%lib/qmmp/Transports/libmms.so
|
||||
%%SKINNEDUI%%lib/qmmp/Ui/libskinned.so
|
||||
|
@ -134,7 +139,7 @@ share/icons/hicolor/scalable/apps/qmmp-simple.svgz
|
|||
@dirrmtry lib/qmmp/General
|
||||
@dirrmtry lib/qmmp/Input
|
||||
@dirrmtry lib/qmmp/Output
|
||||
@dirrmtry lib/qmmp/PlaylistFormats
|
||||
@dirrmtry lib/qmmp/PlayListFormats
|
||||
@dirrmtry lib/qmmp/Transports
|
||||
@dirrmtry lib/qmmp/Ui
|
||||
@dirrmtry lib/qmmp/Visual
|
||||
|
|
13
multimedia/transcode/files/patch-ffmpeg0-10
Normal file
13
multimedia/transcode/files/patch-ffmpeg0-10
Normal file
|
@ -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];
|
||||
|
299
multimedia/transcode/files/patch-ffmpeg0-11
Normal file
299
multimedia/transcode/files/patch-ffmpeg0-11
Normal file
|
@ -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
|
||||
@@ -1184,18 +1193,18 @@
|
||||
{ "mv0", PAUX(flags.mv0), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_MV0 },
|
||||
{ "cbp", PAUX(flags.cbp), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_CBP_RD },
|
||||
{ "qpel", PAUX(flags.qpel), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QPEL },
|
||||
- { "alt", PAUX(flags.alt), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_ALT_SCAN },
|
||||
+ { "alt", PAUX(flags.alt), TCCONF_TYPE_FLAG, 0, 0, 1 },
|
||||
{ "ilme", PAUX(flags.ilme), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME },
|
||||
{ "ildct", PAUX(flags.ildct), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_DCT },
|
||||
{ "naq", PAUX(flags.naq), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_NORMALIZE_AQP },
|
||||
- { "vdpart", PAUX(flags.vdpart), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PART },
|
||||
+ { "vdpart", PAUX(flags.vdpart), TCCONF_TYPE_FLAG, 0, 0, 1 },
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
{ "aic", PAUX(flags.aic), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_AIC },
|
||||
#else
|
||||
{ "aic", PAUX(flags.aic), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_AC_PRED },
|
||||
#endif
|
||||
- { "aiv", PAUX(flags.aiv), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_AIV },
|
||||
- { "umv", PAUX(flags.umv), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_UMV },
|
||||
+ { "aiv", PAUX(flags.aiv), TCCONF_TYPE_FLAG, 0, 0, 1 },
|
||||
+ { "umv", PAUX(flags.umv), TCCONF_TYPE_FLAG, 0, 0, 1 },
|
||||
{ "psnr", PAUX(flags.psnr), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PSNR },
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
{ "trell", PAUX(flags.trell), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_TRELLIS_QUANT },
|
||||
@@ -1387,7 +1396,7 @@
|
||||
pd->confdata.thread_count,
|
||||
(pd->confdata.thread_count > 1) ?"s" :"");
|
||||
}
|
||||
- avcodec_thread_init(&pd->ff_vcontext, pd->confdata.thread_count);
|
||||
+ pd->ff_vcontext.thread_count = pd->confdata.thread_count;
|
||||
|
||||
pd->ff_vcodec = avcodec_find_encoder(FF_VCODEC_ID(pd));
|
||||
if (pd->ff_vcodec == NULL) {
|
||||
@@ -1397,11 +1406,11 @@
|
||||
}
|
||||
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- ret = avcodec_open(&pd->ff_vcontext, pd->ff_vcodec);
|
||||
+ ret = avcodec_open2(&pd->ff_vcontext, pd->ff_vcodec, pd->ff_opts);
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
|
||||
if (ret < 0) {
|
||||
- tc_log_error(MOD_NAME, "avcodec_open() failed");
|
||||
+ tc_log_error(MOD_NAME, "avcodec_open2() failed");
|
||||
goto failed;
|
||||
}
|
||||
/* finally, pass up the extradata, if any */
|
||||
diff -urN export/export_ffmpeg.c.orig export/export_ffmpeg.c
|
||||
--- export/export_ffmpeg.c.orig 2011-11-19 08:50:27.000000000 -0800
|
||||
+++ export/export_ffmpeg.c 2012-07-03 13:15:23.918019415 -0700
|
||||
@@ -122,6 +122,7 @@
|
||||
static AVFrame *lavc_convert_frame = NULL;
|
||||
|
||||
static AVCodec *lavc_venc_codec = NULL;
|
||||
+static AVDictionary **lavc_venc_opts = NULL;
|
||||
static AVFrame *lavc_venc_frame = NULL;
|
||||
static AVCodecContext *lavc_venc_context;
|
||||
static avi_t *avifile = NULL;
|
||||
@@ -180,7 +181,7 @@
|
||||
|
||||
|
||||
/* START: COPIED FROM ffmpeg-0.5_p22846(ffmpeg.c, cmdutils.c) */
|
||||
-#include <libavcodec/opt.h>
|
||||
+#include <libavutil/opt.h>
|
||||
#include <libavutil/avstring.h>
|
||||
#include <libswscale/swscale.h>
|
||||
|
||||
@@ -470,7 +471,6 @@
|
||||
}
|
||||
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- avcodec_init();
|
||||
avcodec_register_all();
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
|
||||
@@ -634,7 +634,7 @@
|
||||
lavc_param_rc_max_rate = 2516;
|
||||
lavc_param_rc_buffer_size = 224 * 8;
|
||||
lavc_param_rc_buffer_aggressivity = 99;
|
||||
- lavc_param_scan_offset = CODEC_FLAG_SVCD_SCAN_OFFSET;
|
||||
+ lavc_param_scan_offset = 1;
|
||||
|
||||
break;
|
||||
|
||||
@@ -674,7 +674,7 @@
|
||||
|
||||
lavc_param_rc_buffer_size = 224 * 8;
|
||||
lavc_param_rc_buffer_aggressivity = 99;
|
||||
- lavc_param_scan_offset = CODEC_FLAG_SVCD_SCAN_OFFSET;
|
||||
+ lavc_param_scan_offset = 1;
|
||||
|
||||
break;
|
||||
|
||||
@@ -887,7 +887,7 @@
|
||||
lavc_venc_context->thread_count);
|
||||
}
|
||||
|
||||
- avcodec_thread_init(lavc_venc_context, lavc_param_threads);
|
||||
+ lavc_venc_context->thread_count = lavc_param_threads;
|
||||
|
||||
if (lavc_param_intra_matrix) {
|
||||
char *tmp;
|
||||
@@ -1065,15 +1065,10 @@
|
||||
lavc_venc_context->flags |= lavc_param_closedgop;
|
||||
lavc_venc_context->flags |= lavc_param_trunc;
|
||||
lavc_venc_context->flags |= lavc_param_aic;
|
||||
- lavc_venc_context->flags |= lavc_param_umv;
|
||||
lavc_venc_context->flags |= lavc_param_v4mv;
|
||||
- lavc_venc_context->flags |= lavc_param_data_partitioning;
|
||||
lavc_venc_context->flags |= lavc_param_cbp;
|
||||
lavc_venc_context->flags |= lavc_param_mv0;
|
||||
lavc_venc_context->flags |= lavc_param_qp_rd;
|
||||
- lavc_venc_context->flags |= lavc_param_scan_offset;
|
||||
- lavc_venc_context->flags |= lavc_param_ss;
|
||||
- lavc_venc_context->flags |= lavc_param_alt;
|
||||
lavc_venc_context->flags |= lavc_param_ilme;
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
lavc_venc_context->flags |= lavc_param_trell;
|
||||
@@ -1203,7 +1198,6 @@
|
||||
|
||||
lavc_venc_context->me_method = ME_ZERO + lavc_param_vme;
|
||||
|
||||
-
|
||||
/* FIXME: transcode itself contains "broken ffmpeg default settings", thus we need to override them! */
|
||||
if (lavc_param_video_preset) {
|
||||
avcodec_opts[AVMEDIA_TYPE_VIDEO] = lavc_venc_context;
|
||||
@@ -1241,20 +1235,39 @@
|
||||
}
|
||||
}
|
||||
|
||||
+ if (lavc_param_scan_offset) {
|
||||
+ av_dict_set(lavc_venc_opts, "scan_offset", "1", 0);
|
||||
+ }
|
||||
+
|
||||
+ if (lavc_param_ss) {
|
||||
+ av_dict_set(lavc_venc_opts, "structured_slices", "1", 0);
|
||||
+ }
|
||||
+
|
||||
+ if (lavc_param_alt) {
|
||||
+ av_dict_set(lavc_venc_opts, "alternate_scan", "1", 0);
|
||||
+ }
|
||||
+
|
||||
+ if (lavc_param_umv) {
|
||||
+ av_dict_set(lavc_venc_opts, "umv", "1", 0);
|
||||
+ }
|
||||
+
|
||||
+ if (lavc_param_data_partitioning) {
|
||||
+ av_dict_set(lavc_venc_opts, "vdpart", "1", 0);
|
||||
+ }
|
||||
|
||||
//-- open codec --
|
||||
//----------------
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- ret = avcodec_open(lavc_venc_context, lavc_venc_codec);
|
||||
+ ret = avcodec_open2(lavc_venc_context, lavc_venc_codec, lavc_venc_opts);
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
if (ret < 0) {
|
||||
tc_log_warn(MOD_NAME, "could not open FFMPEG codec");
|
||||
return TC_EXPORT_ERROR;
|
||||
}
|
||||
|
||||
- if (lavc_venc_context->codec->encode == NULL) {
|
||||
+ if (av_codec_is_encoder(lavc_venc_context->codec) == 0) {
|
||||
tc_log_warn(MOD_NAME, "could not open FFMPEG codec "
|
||||
- "(lavc_venc_context->codec->encode == NULL)");
|
||||
+ "(av_codec_is_encoder(lavc_venc_context->codec) == 0)");
|
||||
return TC_EXPORT_ERROR;
|
||||
}
|
||||
|
||||
diff -urN export/ffmpeg_cfg.c.orig export/ffmpeg_cfg.c
|
||||
--- export/ffmpeg_cfg.c.orig 2011-11-19 08:50:27.000000000 -0800
|
||||
+++ export/ffmpeg_cfg.c 2012-07-03 10:09:25.011003254 -0700
|
||||
@@ -160,9 +160,9 @@
|
||||
{"vcelim", &lavc_param_chroma_elim_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99},
|
||||
{"vpsize", &lavc_param_packet_size, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 100000000},
|
||||
{"vstrict", &lavc_param_strict, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99},
|
||||
- {"vdpart", &lavc_param_data_partitioning, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PART},
|
||||
+ {"vdpart", &lavc_param_data_partitioning, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
// {"keyint", &lavc_param_keyint, TCCONF_TYPE_INT, 0, 0, 0},
|
||||
- {"gray", &lavc_param_gray, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PART},
|
||||
+ {"gray", &lavc_param_gray, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_GRAY},
|
||||
{"mpeg_quant", &lavc_param_mpeg_quant, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
{"vi_qfactor", &lavc_param_vi_qfactor, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, -31.0, 31.0},
|
||||
{"vi_qoffset", &lavc_param_vi_qoffset, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 31.0},
|
||||
@@ -211,7 +211,7 @@
|
||||
#else
|
||||
{"aic", &lavc_param_aic, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_AC_PRED},
|
||||
#endif
|
||||
- {"umv", &lavc_param_umv, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_UMV},
|
||||
+ {"umv", &lavc_param_umv, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
{"ibias", &lavc_param_ibias, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512},
|
||||
{"pbias", &lavc_param_pbias, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512},
|
||||
{"coder", &lavc_param_coder, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10},
|
||||
@@ -223,9 +223,9 @@
|
||||
{"nr", &lavc_param_noise_reduction, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000000},
|
||||
{"qprd", &lavc_param_qp_rd, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QP_RD},
|
||||
{"threads", &lavc_param_threads, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 16},
|
||||
- {"ss", &lavc_param_ss, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_SLICE_STRUCT},
|
||||
- {"svcd_sof", &lavc_param_scan_offset, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_SVCD_SCAN_OFFSET},
|
||||
- {"alt", &lavc_param_alt, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_ALT_SCAN},
|
||||
+ {"ss", &lavc_param_ss, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
+ {"svcd_sof", &lavc_param_scan_offset, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
+ {"alt", &lavc_param_alt, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
{"ilme", &lavc_param_ilme, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME},
|
||||
{"inter_threshold", &lavc_param_inter_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000},
|
||||
{"sc_threshold", &lavc_param_sc_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000},
|
||||
diff -urN import/decode_lavc.c.orig import/decode_lavc.c
|
||||
--- import/decode_lavc.c.orig 2011-11-19 08:50:27.000000000 -0800
|
||||
+++ import/decode_lavc.c 2012-07-03 10:21:46.085005182 -0700
|
||||
@@ -181,7 +181,7 @@
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
lavc_dec_context->error_resilience = 2;
|
||||
#else
|
||||
- lavc_dec_context->error_recognition = 2;
|
||||
+ lavc_dec_context->err_recognition = 2;
|
||||
#endif
|
||||
lavc_dec_context->error_concealment = 3;
|
||||
lavc_dec_context->workaround_bugs = FF_BUG_AUTODETECT;
|
||||
diff -urN import/import_ffmpeg.c.orig import/import_ffmpeg.c
|
||||
--- import/import_ffmpeg.c.orig 2011-11-19 08:50:27.000000000 -0800
|
||||
+++ import/import_ffmpeg.c 2012-07-03 10:19:36.936004841 -0700
|
||||
@@ -314,7 +314,7 @@
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
lavc_dec_context->error_resilience = 2;
|
||||
#else
|
||||
- lavc_dec_context->error_recognition = 2;
|
||||
+ lavc_dec_context->err_recognition = 2;
|
||||
#endif
|
||||
lavc_dec_context->error_concealment = 3;
|
||||
lavc_dec_context->workaround_bugs = FF_BUG_AUTODETECT;
|
||||
diff -urN import/probe_ffmpeg.c.orig import/probe_ffmpeg.c
|
||||
--- import/probe_ffmpeg.c.orig 2011-11-19 08:50:27.000000000 -0800
|
||||
+++ import/probe_ffmpeg.c 2012-07-03 10:41:42.782008306 -0700
|
||||
@@ -99,8 +99,8 @@
|
||||
|
||||
TC_INIT_LIBAVCODEC;
|
||||
|
||||
- ret = av_open_input_file(&lavf_dmx_context, ipipe->name,
|
||||
- NULL, 0, NULL);
|
||||
+ ret = avformat_open_input(&lavf_dmx_context, ipipe->name,
|
||||
+ NULL, NULL);
|
||||
if (ret != 0) {
|
||||
tc_log_error(__FILE__, "unable to open '%s'"
|
||||
" (libavformat failure)",
|
||||
diff -urN libtc/tcavcodec.h.orig libtc/tcavcodec.h
|
||||
--- libtc/tcavcodec.h.orig 2011-11-19 08:50:27.000000000 -0800
|
||||
+++ libtc/tcavcodec.h 2012-07-03 10:34:43.648007213 -0700
|
||||
@@ -53,7 +53,6 @@
|
||||
|
||||
#define TC_INIT_LIBAVCODEC do { \
|
||||
TC_LOCK_LIBAVCODEC; \
|
||||
- avcodec_init(); \
|
||||
avcodec_register_all(); \
|
||||
TC_UNLOCK_LIBAVCODEC; \
|
||||
} while (0)
|
328
multimedia/transcode/files/patch-ffmpeg2
Normal file
328
multimedia/transcode/files/patch-ffmpeg2
Normal file
|
@ -0,0 +1,328 @@
|
|||
Index: encode/encode_lavc.c
|
||||
===================================================================
|
||||
--- encode/encode_lavc.c.orig
|
||||
+++ encode/encode_lavc.c
|
||||
@@ -74,6 +74,9 @@ struct tclavcconfigdata_ {
|
||||
int lmin;
|
||||
int lmax;
|
||||
int me_method;
|
||||
+ int luma_elim_threshold;
|
||||
+ int chroma_elim_threshold;
|
||||
+ int quantizer_noise_shaping;
|
||||
|
||||
/* same as above for flags */
|
||||
struct {
|
||||
@@ -114,7 +117,7 @@ struct tclavcprivatedata_ {
|
||||
|
||||
AVFrame ff_venc_frame;
|
||||
AVCodecContext ff_vcontext;
|
||||
- AVDictionary ** ff_opts;
|
||||
+ AVDictionary * ff_opts;
|
||||
|
||||
AVCodec *ff_vcodec;
|
||||
|
||||
@@ -165,6 +168,7 @@ static const TCCodecID tc_lavc_codecs_ou
|
||||
TC_CODEC_ERROR
|
||||
};
|
||||
|
||||
+#if LIBAVCODEC_VERSION_MAJOR < 55
|
||||
static const enum CodecID tc_lavc_internal_codecs[] = {
|
||||
CODEC_ID_MPEG1VIDEO, CODEC_ID_MPEG2VIDEO, CODEC_ID_MPEG4,
|
||||
CODEC_ID_H263I, CODEC_ID_H263P,
|
||||
@@ -177,6 +181,20 @@ static const enum CodecID tc_lavc_intern
|
||||
CODEC_ID_MSMPEG4V2, CODEC_ID_MSMPEG4V3,
|
||||
CODEC_ID_NONE
|
||||
};
|
||||
+#else
|
||||
+static const enum AVCodecID tc_lavc_internal_codecs[] = {
|
||||
+ AV_CODEC_ID_MPEG1VIDEO, AV_CODEC_ID_MPEG2VIDEO, AV_CODEC_ID_MPEG4,
|
||||
+ AV_CODEC_ID_H263I, AV_CODEC_ID_H263P,
|
||||
+ AV_CODEC_ID_H264,
|
||||
+ AV_CODEC_ID_WMV1, AV_CODEC_ID_WMV2,
|
||||
+ AV_CODEC_ID_RV10,
|
||||
+ AV_CODEC_ID_HUFFYUV, AV_CODEC_ID_FFV1,
|
||||
+ AV_CODEC_ID_DVVIDEO,
|
||||
+ AV_CODEC_ID_MJPEG, AV_CODEC_ID_LJPEG,
|
||||
+ AV_CODEC_ID_MSMPEG4V2, AV_CODEC_ID_MSMPEG4V3,
|
||||
+ AV_CODEC_ID_NONE
|
||||
+};
|
||||
+#endif
|
||||
|
||||
static const TCFormatID tc_lavc_formats[] = { TC_FORMAT_ERROR };
|
||||
|
||||
@@ -938,7 +956,11 @@ static int tc_lavc_settings_from_vob(TCL
|
||||
static void tc_lavc_config_defaults(TCLavcPrivateData *pd)
|
||||
{
|
||||
/* first of all reinitialize lavc data */
|
||||
+#if LIBAVCODEC_VERSION_MAJOR < 55
|
||||
avcodec_get_context_defaults(&pd->ff_vcontext);
|
||||
+#else
|
||||
+ avcodec_get_context_defaults3(&pd->ff_vcontext, NULL);
|
||||
+#endif
|
||||
|
||||
pd->confdata.thread_count = 1;
|
||||
|
||||
@@ -976,8 +998,8 @@ static void tc_lavc_config_defaults(TCLa
|
||||
pd->ff_vcontext.mpeg_quant = 0;
|
||||
pd->ff_vcontext.rc_initial_cplx = 0.0;
|
||||
pd->ff_vcontext.rc_qsquish = 1.0;
|
||||
- pd->ff_vcontext.luma_elim_threshold = 0;
|
||||
- pd->ff_vcontext.chroma_elim_threshold = 0;
|
||||
+ pd->confdata.luma_elim_threshold = 0;
|
||||
+ pd->confdata.chroma_elim_threshold = 0;
|
||||
pd->ff_vcontext.strict_std_compliance = 0;
|
||||
pd->ff_vcontext.dct_algo = FF_DCT_AUTO;
|
||||
pd->ff_vcontext.idct_algo = FF_IDCT_AUTO;
|
||||
@@ -1001,7 +1023,7 @@ static void tc_lavc_config_defaults(TCLa
|
||||
pd->ff_vcontext.intra_quant_bias = FF_DEFAULT_QUANT_BIAS;
|
||||
pd->ff_vcontext.inter_quant_bias = FF_DEFAULT_QUANT_BIAS;
|
||||
pd->ff_vcontext.noise_reduction = 0;
|
||||
- pd->ff_vcontext.quantizer_noise_shaping = 0;
|
||||
+ pd->confdata.quantizer_noise_shaping = 0;
|
||||
pd->ff_vcontext.flags = 0;
|
||||
}
|
||||
|
||||
@@ -1033,7 +1055,6 @@ static void tc_lavc_dispatch_settings(TC
|
||||
|
||||
pd->ff_vcontext.flags = 0;
|
||||
SET_FLAG(pd, mv0);
|
||||
- SET_FLAG(pd, cbp);
|
||||
SET_FLAG(pd, qpel);
|
||||
SET_FLAG(pd, naq);
|
||||
SET_FLAG(pd, ilme);
|
||||
@@ -1060,17 +1081,29 @@ static void tc_lavc_dispatch_settings(TC
|
||||
pd->ff_vcontext.flags |= CODEC_FLAG_INTERLACED_ME;
|
||||
}
|
||||
if (pd->confdata.flags.alt) {
|
||||
- av_dict_set(pd->ff_opts, "alternate_scan", "1", 0);
|
||||
+ 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);
|
||||
+ av_dict_set(&(pd->ff_opts), "data_partitioning", "1", 0);
|
||||
}
|
||||
if (pd->confdata.flags.umv) {
|
||||
- av_dict_set(pd->ff_opts, "umv", "1", 0);
|
||||
+ av_dict_set(&(pd->ff_opts), "umv", "1", 0);
|
||||
}
|
||||
if (pd->confdata.flags.aiv) {
|
||||
- av_dict_set(pd->ff_opts, "aiv", "1", 0);
|
||||
+ av_dict_set(&(pd->ff_opts), "aiv", "1", 0);
|
||||
}
|
||||
+ if (pd->confdata.flags.cbp) {
|
||||
+ av_dict_set(&(pd->ff_opts), "mpv_flags", "+cbp_rd", 0);
|
||||
+ }
|
||||
+
|
||||
+ char buf[1024];
|
||||
+#define set_dict_opt(val, opt) \
|
||||
+ snprintf(buf, sizeof(buf), "%i", pd->confdata.val);\
|
||||
+ av_dict_set(&(pd->ff_opts), opt, buf, 0)
|
||||
+
|
||||
+ set_dict_opt(luma_elim_threshold, "luma_elim_threshold");
|
||||
+ set_dict_opt(chroma_elim_threshold, "chroma_elim_threshold");
|
||||
+ set_dict_opt(quantizer_noise_shaping, "quantizer_noise_shaping");
|
||||
}
|
||||
|
||||
#undef SET_FLAG
|
||||
@@ -1155,8 +1188,8 @@ static int tc_lavc_read_config(TCLavcPri
|
||||
{ "vrc_init_cplx", PCTX(rc_initial_cplx), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 9999999.0 },
|
||||
// { "vrc_init_occupancy", }, // not yet supported
|
||||
{ "vqsquish", PCTX(rc_qsquish), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 99.0 },
|
||||
- { "vlelim", PCTX(luma_elim_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
|
||||
- { "vcelim", PCTX(chroma_elim_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
|
||||
+ { "vlelim", PAUX(luma_elim_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
|
||||
+ { "vcelim", PAUX(chroma_elim_threshold), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
|
||||
{ "vstrict", PCTX(strict_std_compliance), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99 },
|
||||
{ "vpsize", PCTX(rtp_payload_size), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 100000000 },
|
||||
{ "dct", PCTX(dct_algo), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10 },
|
||||
@@ -1182,12 +1215,12 @@ static int tc_lavc_read_config(TCLavcPri
|
||||
{ "ibias", PCTX(intra_quant_bias), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512 },
|
||||
{ "pbias", PCTX(inter_quant_bias), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512 },
|
||||
{ "nr", PCTX(noise_reduction), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000000},
|
||||
- { "qns", PCTX(quantizer_noise_shaping), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 3 },
|
||||
+ { "qns", PAUX(quantizer_noise_shaping), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 3 },
|
||||
{ "inter_matrix_file", inter_matrix_file, TCCONF_TYPE_STRING, 0, 0, 0 },
|
||||
{ "intra_matrix_file", intra_matrix_file, TCCONF_TYPE_STRING, 0, 0, 0 },
|
||||
|
||||
{ "mv0", PAUX(flags.mv0), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_MV0 },
|
||||
- { "cbp", PAUX(flags.cbp), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_CBP_RD },
|
||||
+ { "cbp", PAUX(flags.cbp), TCCONF_TYPE_FLAG, 0, 0, 1 },
|
||||
{ "qpel", PAUX(flags.qpel), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QPEL },
|
||||
{ "alt", PAUX(flags.alt), TCCONF_TYPE_FLAG, 0, 0, 1 },
|
||||
{ "ilme", PAUX(flags.ilme), TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME },
|
||||
@@ -1350,6 +1383,8 @@ static int tc_lavc_configure(TCModuleIns
|
||||
|
||||
pd = self->userdata;
|
||||
|
||||
+ pd->ff_opts = NULL;
|
||||
+
|
||||
pd->flush_flag = vob->encoder_flush;
|
||||
|
||||
/* FIXME: move into core? */
|
||||
@@ -1402,7 +1437,7 @@ static int tc_lavc_configure(TCModuleIns
|
||||
}
|
||||
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- ret = avcodec_open2(&pd->ff_vcontext, pd->ff_vcodec, pd->ff_opts);
|
||||
+ ret = avcodec_open2(&pd->ff_vcontext, pd->ff_vcodec, &(pd->ff_opts));
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
|
||||
if (ret < 0) {
|
||||
Index: export/export_ffmpeg.c
|
||||
===================================================================
|
||||
--- export/export_ffmpeg.c.orig
|
||||
+++ export/export_ffmpeg.c
|
||||
@@ -122,7 +122,7 @@ static uint8_t *img_buffer =
|
||||
static AVFrame *lavc_convert_frame = NULL;
|
||||
|
||||
static AVCodec *lavc_venc_codec = NULL;
|
||||
-static AVDictionary **lavc_venc_opts = NULL;
|
||||
+static AVDictionary *lavc_venc_opts = NULL;
|
||||
static AVFrame *lavc_venc_frame = NULL;
|
||||
static AVCodecContext *lavc_venc_context;
|
||||
static avi_t *avifile = NULL;
|
||||
@@ -486,7 +486,7 @@ MOD_init
|
||||
codec->name, codec->fourCC, codec->comments);
|
||||
}
|
||||
|
||||
- lavc_venc_context = avcodec_alloc_context();
|
||||
+ lavc_venc_context = avcodec_alloc_context3(lavc_venc_codec);
|
||||
lavc_venc_frame = avcodec_alloc_frame();
|
||||
|
||||
lavc_convert_frame= avcodec_alloc_frame();
|
||||
@@ -838,8 +838,13 @@ MOD_init
|
||||
lavc_venc_context->rc_strategy = lavc_param_vrc_strategy;
|
||||
lavc_venc_context->b_frame_strategy = lavc_param_vb_strategy;
|
||||
lavc_venc_context->b_quant_offset = lavc_param_vb_qoffset;
|
||||
- lavc_venc_context->luma_elim_threshold= lavc_param_luma_elim_threshold;
|
||||
- lavc_venc_context->chroma_elim_threshold= lavc_param_chroma_elim_threshold;
|
||||
+
|
||||
+ char buf[1024];
|
||||
+#define set_dict_opt(val, opt) \
|
||||
+ snprintf(buf, sizeof(buf), "%i", val); \
|
||||
+ av_dict_set(&lavc_venc_opts, opt, buf, 0)
|
||||
+ set_dict_opt(lavc_param_luma_elim_threshold, "luma_elim_threshold");
|
||||
+ set_dict_opt(lavc_param_chroma_elim_threshold, "chroma_elim_threshold");
|
||||
lavc_venc_context->rtp_payload_size = lavc_param_packet_size;
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
if (lavc_param_packet_size)
|
||||
@@ -870,7 +875,7 @@ MOD_init
|
||||
lavc_venc_context->context_model = lavc_param_context;
|
||||
lavc_venc_context->scenechange_threshold= lavc_param_sc_threshold;
|
||||
lavc_venc_context->noise_reduction = lavc_param_noise_reduction;
|
||||
- lavc_venc_context->inter_threshold = lavc_param_inter_threshold;
|
||||
+ set_dict_opt(lavc_param_inter_threshold, "inter_threshold");
|
||||
lavc_venc_context->intra_dc_precision = lavc_param_intra_dc_precision;
|
||||
lavc_venc_context->skip_top = lavc_param_skip_top;
|
||||
lavc_venc_context->skip_bottom = lavc_param_skip_bottom;
|
||||
@@ -1066,9 +1071,11 @@ MOD_init
|
||||
lavc_venc_context->flags |= lavc_param_trunc;
|
||||
lavc_venc_context->flags |= lavc_param_aic;
|
||||
lavc_venc_context->flags |= lavc_param_v4mv;
|
||||
- lavc_venc_context->flags |= lavc_param_cbp;
|
||||
+ if(lavc_param_cbp)
|
||||
+ av_dict_set(&lavc_venc_opts, "mpv_flags", "+cbp_rd", 0);
|
||||
lavc_venc_context->flags |= lavc_param_mv0;
|
||||
- lavc_venc_context->flags |= lavc_param_qp_rd;
|
||||
+ if(lavc_param_qp_rd)
|
||||
+ av_dict_set(&lavc_venc_opts, "mpv_flags", "+qp_rd", 0);
|
||||
lavc_venc_context->flags |= lavc_param_ilme;
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
lavc_venc_context->flags |= lavc_param_trell;
|
||||
@@ -1238,29 +1245,29 @@ MOD_init
|
||||
}
|
||||
|
||||
if (lavc_param_scan_offset) {
|
||||
- av_dict_set(lavc_venc_opts, "scan_offset", "1", 0);
|
||||
+ av_dict_set(&lavc_venc_opts, "scan_offset", "1", 0);
|
||||
}
|
||||
|
||||
if (lavc_param_ss) {
|
||||
- av_dict_set(lavc_venc_opts, "structured_slices", "1", 0);
|
||||
+ av_dict_set(&lavc_venc_opts, "structured_slices", "1", 0);
|
||||
}
|
||||
|
||||
if (lavc_param_alt) {
|
||||
- av_dict_set(lavc_venc_opts, "alternate_scan", "1", 0);
|
||||
+ av_dict_set(&lavc_venc_opts, "alternate_scan", "1", 0);
|
||||
}
|
||||
|
||||
if (lavc_param_umv) {
|
||||
- av_dict_set(lavc_venc_opts, "umv", "1", 0);
|
||||
+ av_dict_set(&lavc_venc_opts, "umv", "1", 0);
|
||||
}
|
||||
|
||||
if (lavc_param_data_partitioning) {
|
||||
- av_dict_set(lavc_venc_opts, "vdpart", "1", 0);
|
||||
+ av_dict_set(&lavc_venc_opts, "vdpart", "1", 0);
|
||||
}
|
||||
|
||||
//-- open codec --
|
||||
//----------------
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- ret = avcodec_open2(lavc_venc_context, lavc_venc_codec, lavc_venc_opts);
|
||||
+ ret = avcodec_open2(lavc_venc_context, lavc_venc_codec, &lavc_venc_opts);
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
if (ret < 0) {
|
||||
tc_log_warn(MOD_NAME, "could not open FFMPEG codec");
|
||||
Index: export/ffmpeg_cfg.c
|
||||
===================================================================
|
||||
--- export/ffmpeg_cfg.c.orig
|
||||
+++ export/ffmpeg_cfg.c
|
||||
@@ -214,10 +214,10 @@ TCConfigEntry lavcopts_conf[]={
|
||||
{"context", &lavc_param_context, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10},
|
||||
{"intra_matrix", &lavc_param_intra_matrix, TCCONF_TYPE_STRING, 0, 0, 0},
|
||||
{"inter_matrix", &lavc_param_inter_matrix, TCCONF_TYPE_STRING, 0, 0, 0},
|
||||
- {"cbp", &lavc_param_cbp, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_CBP_RD},
|
||||
+ {"cbp", &lavc_param_cbp, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
{"mv0", &lavc_param_mv0, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_MV0},
|
||||
{"nr", &lavc_param_noise_reduction, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000000},
|
||||
- {"qprd", &lavc_param_qp_rd, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QP_RD},
|
||||
+ {"qprd", &lavc_param_qp_rd, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
{"threads", &lavc_param_threads, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 16},
|
||||
{"ss", &lavc_param_ss, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
{"svcd_sof", &lavc_param_scan_offset, TCCONF_TYPE_FLAG, 0, 0, 1},
|
||||
Index: export/aud_aux.c
|
||||
===================================================================
|
||||
--- export/aud_aux.c.orig
|
||||
+++ export/aud_aux.c
|
||||
@@ -346,7 +346,7 @@ static int tc_audio_init_ffmpeg(vob_t *v
|
||||
|
||||
//-- set parameters (bitrate, channels and sample-rate) --
|
||||
//--------------------------------------------------------
|
||||
- avcodec_get_context_defaults(&mpa_ctx);
|
||||
+ avcodec_get_context_defaults3(&mpa_ctx, mpa_codec);
|
||||
#if LIBAVCODEC_VERSION_MAJOR < 53
|
||||
mpa_ctx.codec_type = CODEC_TYPE_AUDIO;
|
||||
#else
|
||||
@@ -359,7 +359,7 @@ static int tc_audio_init_ffmpeg(vob_t *v
|
||||
//-- open codec --
|
||||
//----------------
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- ret = avcodec_open(&mpa_ctx, mpa_codec);
|
||||
+ ret = avcodec_open2(&mpa_ctx, mpa_codec, NULL);
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
if (ret < 0) {
|
||||
tc_warn("tc_audio_init_ffmpeg: could not open %s codec !",
|
||||
Index: import/import_ffmpeg.c
|
||||
===================================================================
|
||||
--- import/import_ffmpeg.c.orig
|
||||
+++ import/import_ffmpeg.c
|
||||
@@ -302,7 +302,7 @@ do_avi:
|
||||
|
||||
// Set these to the expected values so that ffmpeg's decoder can
|
||||
// properly detect interlaced input.
|
||||
- lavc_dec_context = avcodec_alloc_context();
|
||||
+ lavc_dec_context = avcodec_alloc_context3(lavc_dec_codec);
|
||||
if (lavc_dec_context == NULL) {
|
||||
tc_log_error(MOD_NAME, "Could not allocate enough memory.");
|
||||
return TC_IMPORT_ERROR;
|
||||
@@ -344,7 +344,7 @@ do_avi:
|
||||
}
|
||||
|
||||
TC_LOCK_LIBAVCODEC;
|
||||
- ret = avcodec_open(lavc_dec_context, lavc_dec_codec);
|
||||
+ ret = avcodec_open2(lavc_dec_context, lavc_dec_codec, NULL);
|
||||
TC_UNLOCK_LIBAVCODEC;
|
||||
if (ret < 0) {
|
||||
tc_log_warn(MOD_NAME, "Could not initialize the '%s' codec.",
|
31
multimedia/transcode/files/patch-livav-9.patch
Normal file
31
multimedia/transcode/files/patch-livav-9.patch
Normal file
|
@ -0,0 +1,31 @@
|
|||
--- ./import/probe_ffmpeg.c.original 2013-04-22 20:04:51.058081388 +0200
|
||||
+++ ./import/probe_ffmpeg.c 2013-04-22 20:05:25.744081897 +0200
|
||||
@@ -109,7 +109,7 @@ void probe_ffmpeg(info_t *ipipe)
|
||||
return;
|
||||
}
|
||||
|
||||
- ret = av_find_stream_info(lavf_dmx_context);
|
||||
+ ret = avformat_find_stream_info(lavf_dmx_context, NULL);
|
||||
if (ret < 0) {
|
||||
tc_log_error(__FILE__, "unable to fetch informations from '%s'"
|
||||
" (libavformat failure)",
|
||||
--- ./import/decode_lavc.c.original 2013-04-22 20:06:17.260082652 +0200
|
||||
+++ ./import/decode_lavc.c 2013-04-22 20:07:47.564083975 +0200
|
||||
@@ -170,7 +170,7 @@ void decode_lavc(decode_t *decode)
|
||||
|
||||
// Set these to the expected values so that ffmpeg's decoder can
|
||||
// properly detect interlaced input.
|
||||
- lavc_dec_context = avcodec_alloc_context();
|
||||
+ lavc_dec_context = avcodec_alloc_context3(NULL);
|
||||
if (lavc_dec_context == NULL) {
|
||||
tc_log_error(__FILE__, "Could not allocate enough memory.");
|
||||
goto decoder_error;
|
||||
@@ -186,7 +186,7 @@ void decode_lavc(decode_t *decode)
|
||||
lavc_dec_context->error_concealment = 3;
|
||||
lavc_dec_context->workaround_bugs = FF_BUG_AUTODETECT;
|
||||
|
||||
- if (avcodec_open(lavc_dec_context, lavc_dec_codec) < 0) {
|
||||
+ if (avcodec_open2(lavc_dec_context, lavc_dec_codec, NULL) < 0) {
|
||||
tc_log_error(__FILE__, "Could not initialize the '%s' codec.",
|
||||
codec->name);
|
||||
goto decoder_error;
|
26
multimedia/vdr-plugin-osdpip/files/patch-ffmpeg1
Normal file
26
multimedia/vdr-plugin-osdpip/files/patch-ffmpeg1
Normal file
|
@ -0,0 +1,26 @@
|
|||
Index: osdpip-0.1.1/decoder.h
|
||||
===================================================================
|
||||
--- osdpip-0.1.1.orig/decoder.h
|
||||
+++ osdpip-0.1.1/decoder.h
|
||||
@@ -34,7 +34,7 @@ extern "C"
|
||||
#include <libavcodec/avcodec.h>
|
||||
#ifdef USE_SWSCALE
|
||||
#include <libswscale/swscale.h>
|
||||
- #include <libavcodec/opt.h>
|
||||
+ #include <libavutil/opt.h>
|
||||
#endif
|
||||
#else
|
||||
#include <ffmpeg/avcodec.h>
|
||||
Index: osdpip-0.1.1/osdpip.c
|
||||
===================================================================
|
||||
--- osdpip-0.1.1.orig/osdpip.c
|
||||
+++ osdpip-0.1.1/osdpip.c
|
||||
@@ -73,8 +73,6 @@ bool cPluginOsdpip::ProcessArgs(int argc
|
||||
|
||||
bool cPluginOsdpip::Initialize(void)
|
||||
{
|
||||
- // must be called before using avcodec lib
|
||||
- avcodec_init();
|
||||
// register all the codecs (you can also register only the codec
|
||||
// you wish to have smaller code)
|
||||
avcodec_register_all();
|
40
multimedia/vdr-plugin-osdpip/files/patch-libav9
Normal file
40
multimedia/vdr-plugin-osdpip/files/patch-libav9
Normal file
|
@ -0,0 +1,40 @@
|
|||
diff -urN osdpip-0.1.2.old/decoder.c osdpip-0.1.2/decoder.c
|
||||
--- osdpip-0.1.2.old/decoder.c 2013-06-17 21:01:31.795476861 +0200
|
||||
+++ osdpip-0.1.2/decoder.c 2013-06-17 21:01:57.153475959 +0200
|
||||
@@ -34,8 +34,8 @@
|
||||
printf("codec not found\n");
|
||||
return -1;
|
||||
}
|
||||
- m_Context = avcodec_alloc_context();
|
||||
- if (avcodec_open(m_Context, m_Codec) < 0)
|
||||
+ m_Context = avcodec_alloc_context3(m_Codec);
|
||||
+ if (avcodec_open2(m_Context, m_Codec, NULL) < 0)
|
||||
{
|
||||
printf("could not open codec\n");
|
||||
return -1;
|
||||
@@ -106,17 +106,17 @@
|
||||
return -1;
|
||||
}
|
||||
|
||||
- av_set_int(context, "srcw", m_Context->width - (OsdPipSetup.CropLeft + OsdPipSetup.CropRight));
|
||||
- av_set_int(context, "srch", m_Context->height - (OsdPipSetup.CropTop + OsdPipSetup.CropBottom));
|
||||
- av_set_int(context, "src_format", PIX_FMT_YUV420P);
|
||||
- av_set_int(context, "dstw", m_Width);
|
||||
- av_set_int(context, "dsth", m_Height);
|
||||
+ av_opt_set_int(context, "srcw", m_Context->width - (OsdPipSetup.CropLeft + OsdPipSetup.CropRight), 0);
|
||||
+ av_opt_set_int(context, "srch", m_Context->height - (OsdPipSetup.CropTop + OsdPipSetup.CropBottom), 0);
|
||||
+ av_opt_set_int(context, "src_format", PIX_FMT_YUV420P, 0);
|
||||
+ av_opt_set_int(context, "dstw", m_Width, 0);
|
||||
+ av_opt_set_int(context, "dsth", m_Height, 0);
|
||||
#ifdef USE_NEW_FFMPEG_HEADERS
|
||||
- av_set_int(context, "dst_format", ConvertToRGB ? PIX_FMT_RGB32 : PIX_FMT_YUV420P);
|
||||
+ av_opt_set_int(context, "dst_format", ConvertToRGB ? PIX_FMT_RGB32 : PIX_FMT_YUV420P, 0);
|
||||
#else
|
||||
- av_set_int(context, "dst_format", ConvertToRGB ? PIX_FMT_RGBA32 : PIX_FMT_YUV420P);
|
||||
+ av_opt_set_int(context, "dst_format", ConvertToRGB ? PIX_FMT_RGBA32 : PIX_FMT_YUV420P, 0);
|
||||
#endif
|
||||
- av_set_int(context, "sws_flags", SWS_LANCZOS);
|
||||
+ av_opt_set_int(context, "sws_flags", SWS_LANCZOS, 0);
|
||||
|
||||
if (sws_init_context(context, NULL, NULL) < 0) {
|
||||
printf("Error initializing conversion context.\n");
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
PORTNAME= xbmc-pvr-addons
|
||||
PORTVERSION= 12.0
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= multimedia
|
||||
MASTER_SITES= http://people.freebsd.org/~decke/distfiles/
|
||||
DISTNAME= ${PORTNAME}-${PORTVERSION}-Frodo
|
||||
|
|
64
net/mediatomb/files/patch-livav7
Normal file
64
net/mediatomb/files/patch-livav7
Normal file
|
@ -0,0 +1,64 @@
|
|||
=== modified file 'src/metadata/ffmpeg_handler.cc'
|
||||
--- src/metadata/ffmpeg_handler.cc.orig 2010-08-25 17:07:03 +0000
|
||||
+++ src/metadata/ffmpeg_handler.cc 2011-05-19 04:33:32 +0000
|
||||
@@ -89,6 +89,33 @@
|
||||
|
||||
Ref<StringConverter> sc = StringConverter::m2i();
|
||||
|
||||
+ /* Tabs are 4 characters here */
|
||||
+ typedef struct {const char *avname; metadata_fields_t field;} mapping_t;
|
||||
+ static const mapping_t mapping[] =
|
||||
+ {
|
||||
+ {"title", M_TITLE},
|
||||
+ {"artist", M_ARTIST},
|
||||
+ {"album", M_ALBUM},
|
||||
+ {"date", M_DATE},
|
||||
+ {"genre", M_GENRE},
|
||||
+ {"comment", M_DESCRIPTION},
|
||||
+ {"track", M_TRACKNUMBER},
|
||||
+ {NULL, M_MAX},
|
||||
+ };
|
||||
+
|
||||
+ if (!pFormatCtx->metadata)
|
||||
+ return;
|
||||
+ for (const mapping_t *m = mapping; m->avname != NULL; m++)
|
||||
+ {
|
||||
+ AVMetadataTag *tag = NULL;
|
||||
+ tag = av_metadata_get(pFormatCtx->metadata, m->avname, NULL, 0);
|
||||
+ if (tag && tag->value && tag->value[0])
|
||||
+ {
|
||||
+ log_debug("Added metadata %s: %s\n", m->avname, tag->value);
|
||||
+ item->setMetadata(MT_KEYS[m->field].upnp, sc->convert(tag->value));
|
||||
+ }
|
||||
+ }
|
||||
+ /* Old algorithm (doesn't work with libav >= 0.7)
|
||||
if (strlen(pFormatCtx->title) > 0)
|
||||
{
|
||||
log_debug("Added metadata title: %s\n", pFormatCtx->title);
|
||||
@@ -131,6 +158,7 @@
|
||||
item->setMetadata(MT_KEYS[M_TRACKNUMBER].upnp,
|
||||
sc->convert(String::from(pFormatCtx->track)));
|
||||
}
|
||||
+ */
|
||||
}
|
||||
|
||||
// ffmpeg library calls
|
||||
@@ -178,7 +206,7 @@
|
||||
for(i=0; i<pFormatCtx->nb_streams; i++)
|
||||
{
|
||||
AVStream *st = pFormatCtx->streams[i];
|
||||
- if((st != NULL) && (videoset == false) && (st->codec->codec_type == CODEC_TYPE_VIDEO))
|
||||
+ if((st != NULL) && (videoset == false) && (st->codec->codec_type == AVMEDIA_TYPE_VIDEO))
|
||||
{
|
||||
if (st->codec->codec_tag > 0)
|
||||
{
|
||||
@@ -209,7 +237,7 @@
|
||||
*y = st->codec->height;
|
||||
}
|
||||
}
|
||||
- if(st->codec->codec_type == CODEC_TYPE_AUDIO)
|
||||
+ if(st->codec->codec_type == AVMEDIA_TYPE_AUDIO)
|
||||
{
|
||||
// Increase number of audiochannels
|
||||
audioch++;
|
||||
|
42
net/mediatomb/files/patch-livav9
Normal file
42
net/mediatomb/files/patch-livav9
Normal file
|
@ -0,0 +1,42 @@
|
|||
diff -burN mediatomb-0.12.1.old//src/metadata/ffmpeg_handler.cc mediatomb-0.12.1/src/metadata/ffmpeg_handler.cc
|
||||
--- src/metadata/ffmpeg_handler.cc.orig 2012-11-25 14:55:05.335753129 +0100
|
||||
+++ src/metadata/ffmpeg_handler.cc 2012-11-25 15:29:42.840677486 +0100
|
||||
@@ -110,8 +110,8 @@
|
||||
return;
|
||||
for (const mapping_t *m = mapping; m->avname != NULL; m++)
|
||||
{
|
||||
- AVMetadataTag *tag = NULL;
|
||||
- tag = av_metadata_get(pFormatCtx->metadata, m->avname, NULL, 0);
|
||||
+ AVDictionaryEntry *tag = NULL;
|
||||
+ tag = av_dict_get(pFormatCtx->metadata, m->avname, NULL, 0);
|
||||
if (tag && tag->value && tag->value[0])
|
||||
{
|
||||
log_debug("Added metadata %s: %s\n", m->avname, tag->value);
|
||||
@@ -290,14 +290,14 @@
|
||||
av_register_all();
|
||||
|
||||
// Open video file
|
||||
- if (av_open_input_file(&pFormatCtx,
|
||||
- item->getLocation().c_str(), NULL, 0, NULL) != 0)
|
||||
+ if (avformat_open_input(&pFormatCtx,
|
||||
+ item->getLocation().c_str(), NULL, NULL) != 0)
|
||||
return; // Couldn't open file
|
||||
|
||||
// Retrieve stream information
|
||||
- if (av_find_stream_info(pFormatCtx) < 0)
|
||||
+ if (avformat_find_stream_info(pFormatCtx, NULL) < 0)
|
||||
{
|
||||
- av_close_input_file(pFormatCtx);
|
||||
+ avformat_close_input(&pFormatCtx);
|
||||
return; // Couldn't find stream information
|
||||
}
|
||||
// Add metadata using ffmpeg library calls
|
||||
@@ -306,7 +306,7 @@
|
||||
addFfmpegResourceFields(item, pFormatCtx, &x, &y);
|
||||
|
||||
// Close the video file
|
||||
- av_close_input_file(pFormatCtx);
|
||||
+ avformat_close_input(&pFormatCtx);
|
||||
}
|
||||
|
||||
static bool _mkdir(const char *path)
|
|
@ -287,6 +287,12 @@ CONFIGURE_ARGS+= --disable-debug
|
|||
CONFIGURE_ARGS+= --disable-gsmamr \
|
||||
--disable-ruby
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's/CODEC_ID/AV_CODEC_ID/g' \
|
||||
-e 's/CodecID/AVCodecID/g' \
|
||||
${WRKSRC}/plugins/video/H.263-1998/h263-1998.* \
|
||||
${WRKSRC}/plugins/video/common/dyna.*
|
||||
|
||||
post-install:
|
||||
${LN} -sf libopal.so.${PORTVERSION} ${PREFIX}/lib/libopal.so.${PVERSION_MAJOR}
|
||||
${LN} -sf libopal.so.${PORTVERSION} ${PREFIX}/lib/libopal.so.${PVERSION_MINOR}
|
||||
|
|
189
net/opal/files/patch-ffmpeg
Normal file
189
net/opal/files/patch-ffmpeg
Normal file
|
@ -0,0 +1,189 @@
|
|||
Note: This is not optimal but is backported from what is in the 3.12 branch.
|
||||
|
||||
|
||||
r28871 | rjongbloed | 2013-01-13 02:18:43 -0300 (Sun, 13 Jan 2013) | 2 lines
|
||||
|
||||
Fixed compile against latest FFMPEG, specifically Mac OS-X "port" version. Have no idea what all the deprecated symbols are replaced by!
|
||||
|
||||
Index: plugins/video/H.263-1998/h263-1998.cxx
|
||||
===================================================================
|
||||
--- plugins/video/H.263-1998/h263-1998.cxx.orig
|
||||
+++ plugins/video/H.263-1998/h263-1998.cxx
|
||||
@@ -312,6 +312,7 @@ void H263_Base_EncoderContext::SetOption
|
||||
return;
|
||||
}
|
||||
|
||||
+#ifdef CODEC_FLAG_H263P_UMV
|
||||
if (STRCMPI(option, H263_ANNEX_D) == 0) {
|
||||
// Annex D: Unrestructed Motion Vectors
|
||||
// Level 2+
|
||||
@@ -322,7 +323,9 @@ void H263_Base_EncoderContext::SetOption
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_UMV;
|
||||
return;
|
||||
}
|
||||
+#endif
|
||||
|
||||
+#ifdef CODEC_FLAG_OBMC
|
||||
#if 0 // DO NOT ENABLE THIS FLAG. FFMPEG IS NOT THREAD_SAFE WHEN THIS FLAG IS SET
|
||||
if (STRCMPI(option, H263_ANNEX_F) == 0) {
|
||||
// Annex F: Advanced Prediction Mode
|
||||
@@ -334,7 +337,9 @@ void H263_Base_EncoderContext::SetOption
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
+#ifdef CODEC_FLAG_AC_PRED
|
||||
if (STRCMPI(option, H263_ANNEX_I) == 0) {
|
||||
// Annex I: Advanced Intra Coding
|
||||
// Level 3+
|
||||
@@ -345,7 +350,9 @@ void H263_Base_EncoderContext::SetOption
|
||||
m_context->flags &= ~CODEC_FLAG_AC_PRED;
|
||||
return;
|
||||
}
|
||||
+#endif
|
||||
|
||||
+#ifdef CODEC_FLAG_LOOP_FILTER
|
||||
if (STRCMPI(option, H263_ANNEX_J) == 0) {
|
||||
// Annex J: Deblocking Filter
|
||||
// works with eyeBeam
|
||||
@@ -355,7 +362,9 @@ void H263_Base_EncoderContext::SetOption
|
||||
m_context->flags &= ~CODEC_FLAG_LOOP_FILTER;
|
||||
return;
|
||||
}
|
||||
+#endif
|
||||
|
||||
+#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
|
||||
if (STRCMPI(option, H263_ANNEX_K) == 0) {
|
||||
// Annex K: Slice Structure
|
||||
// does not work with eyeBeam
|
||||
@@ -365,7 +374,9 @@ void H263_Base_EncoderContext::SetOption
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
|
||||
return;
|
||||
}
|
||||
+#endif
|
||||
|
||||
+#ifdef CODEC_FLAG_H263P_AIV
|
||||
if (STRCMPI(option, H263_ANNEX_S) == 0) {
|
||||
// Annex S: Alternative INTER VLC mode
|
||||
// does not work with eyeBeam
|
||||
@@ -375,6 +386,7 @@ void H263_Base_EncoderContext::SetOption
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_AIV;
|
||||
return;
|
||||
}
|
||||
+#endif
|
||||
|
||||
if (STRCMPI(option, PLUGINCODEC_MEDIA_PACKETIZATION) == 0 ||
|
||||
STRCMPI(option, PLUGINCODEC_MEDIA_PACKETIZATIONS) == 0) {
|
||||
@@ -452,12 +464,24 @@ bool H263_Base_EncoderContext::OpenCodec
|
||||
|
||||
#define CODEC_TRACER_FLAG(tracer, flag) \
|
||||
PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enabled" : "disabled"));
|
||||
+#ifdef CODEC_FLAG_H263P_UMV
|
||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV);
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_OBMC
|
||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC);
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_AC_PRED
|
||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_AC_PRED);
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
|
||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT)
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_LOOP_FILTER
|
||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_LOOP_FILTER);
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_H263P_AIV
|
||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV);
|
||||
+#endif
|
||||
|
||||
return FFMPEGLibraryInstance.AvcodecOpen(m_context, m_codec) == 0;
|
||||
}
|
||||
@@ -521,7 +545,7 @@ bool H263_Base_EncoderContext::EncodeFra
|
||||
|
||||
// Need to copy to local buffer to guarantee 16 byte alignment
|
||||
memcpy(m_inputFrame->data[0], OPAL_VIDEO_FRAME_DATA_PTR(header), header->width*header->height*3/2);
|
||||
- m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? FF_I_TYPE : AV_PICTURE_TYPE_NONE;
|
||||
+ m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? AV_PICTURE_TYPE_I : AV_PICTURE_TYPE_NONE;
|
||||
|
||||
/*
|
||||
m_inputFrame->pts = (int64_t)srcRTP.GetTimestamp()*m_context->time_base.den/m_context->time_base.num/VIDEO_CLOCKRATE;
|
||||
@@ -603,13 +627,21 @@ bool H263_RFC2190_EncoderContext::Init()
|
||||
m_context->rtp_callback = &H263_RFC2190_EncoderContext::RTPCallBack;
|
||||
m_context->opaque = this; // used to separate out packets from different encode threads
|
||||
|
||||
+#ifdef CODEC_FLAG_H263P_UMV
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_UMV;
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_4MV
|
||||
m_context->flags &= ~CODEC_FLAG_4MV;
|
||||
-#if LIBAVCODEC_RTP_MODE
|
||||
+#endif
|
||||
+#if LIBAVCODEC_RTP_MODE && defined(CODEC_FLAG_H263P_AIC)
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_AIC;
|
||||
#endif
|
||||
+#ifdef CODEC_FLAG_H263P_AIV
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_AIV;
|
||||
+#endif
|
||||
+#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
|
||||
m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
|
||||
+#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
Index: plugins/video/H.264/h264-x264.cxx
|
||||
===================================================================
|
||||
--- plugins/video/H.264/h264-x264.cxx.orig
|
||||
+++ plugins/video/H.264/h264-x264.cxx
|
||||
@@ -1071,13 +1071,13 @@ class MyDecoder : public PluginCodec<MY_
|
||||
return false;
|
||||
|
||||
m_context->workaround_bugs = FF_BUG_AUTODETECT;
|
||||
+#ifdef FF_ER_AGGRESSIVE
|
||||
m_context->error_recognition = FF_ER_AGGRESSIVE;
|
||||
+#endif
|
||||
m_context->idct_algo = FF_IDCT_H264;
|
||||
m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
|
||||
m_context->flags = CODEC_FLAG_INPUT_PRESERVED | CODEC_FLAG_EMU_EDGE;
|
||||
- m_context->flags2 = CODEC_FLAG2_BRDO |
|
||||
- CODEC_FLAG2_MEMC_ONLY |
|
||||
- CODEC_FLAG2_DROP_FRAME_TIMECODE |
|
||||
+ m_context->flags2 = CODEC_FLAG2_DROP_FRAME_TIMECODE |
|
||||
CODEC_FLAG2_SKIP_RD |
|
||||
CODEC_FLAG2_CHUNKS;
|
||||
|
||||
Index: plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
||||
===================================================================
|
||||
--- plugins/video/MPEG4-ffmpeg/mpeg4.cxx.orig
|
||||
+++ plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
||||
@@ -594,12 +594,10 @@ void MPEG4EncoderContext::SetStaticEncod
|
||||
#else
|
||||
m_avcontext->max_b_frames=0; /*don't use b frames*/
|
||||
m_avcontext->flags|=CODEC_FLAG_AC_PRED;
|
||||
- m_avcontext->flags|=CODEC_FLAG_H263P_UMV;
|
||||
/*c->flags|=CODEC_FLAG_QPEL;*/ /*don't enable this one: this forces profile_level to advanced simple profile */
|
||||
m_avcontext->flags|=CODEC_FLAG_4MV;
|
||||
m_avcontext->flags|=CODEC_FLAG_GMC;
|
||||
m_avcontext->flags|=CODEC_FLAG_LOOP_FILTER;
|
||||
- m_avcontext->flags|=CODEC_FLAG_H263P_SLICE_STRUCT;
|
||||
#endif
|
||||
m_avcontext->opaque = this; // for use in RTP callback
|
||||
}
|
||||
@@ -804,7 +802,7 @@ int MPEG4EncoderContext::EncodeFrames(co
|
||||
// Should the next frame be an I-Frame?
|
||||
if ((flags & PluginCodec_CoderForceIFrame) || (m_frameNum == 0))
|
||||
{
|
||||
- m_avpicture->pict_type = FF_I_TYPE;
|
||||
+ m_avpicture->pict_type = AV_PICTURE_TYPE_I;
|
||||
}
|
||||
else // No IFrame requested, let avcodec decide what to do
|
||||
{
|
||||
@@ -1325,7 +1323,6 @@ void MPEG4DecoderContext::SetFrameHeight
|
||||
|
||||
void MPEG4DecoderContext::SetStaticDecodingParams() {
|
||||
m_avcontext->flags |= CODEC_FLAG_4MV;
|
||||
- m_avcontext->flags |= CODEC_FLAG_PART;
|
||||
m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
|
||||
}
|
||||
|
|
@ -19,7 +19,7 @@ RUN_DEPENDS= cython:${PORTSDIR}/lang/cython \
|
|||
${PYTHON_SITELIBDIR}/PIL/__init__.py:${PORTSDIR}/graphics/py-imaging \
|
||||
py*-notify>=0:${PORTSDIR}/devel/py-notify \
|
||||
Xvfb:${PORTSDIR}/x11-servers/xorg-vfbserver
|
||||
LIB_DEPENDS+= avcodec.1:${PORTSDIR}/multimedia/ffmpeg
|
||||
LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
|
||||
|
||||
MANCOMPRESSED= no
|
||||
MAN1= xpra.1 xpra_launcher.1 parti.1
|
||||
|
|
Loading…
Reference in a new issue