aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia
diff options
context:
space:
mode:
authorse <se@FreeBSD.org>2005-12-29 08:18:05 +0800
committerse <se@FreeBSD.org>2005-12-29 08:18:05 +0800
commit34c2b21faa83c11561c68bc480062572c9ce9bb2 (patch)
treeef1a5686713db4f33a23006fa5a8d1e01af7c3d2 /multimedia
parentcaeb2903d86e7c2ebbd5935c90c6323e297e292a (diff)
downloadfreebsd-ports-graphics-34c2b21faa83c11561c68bc480062572c9ce9bb2.tar.gz
freebsd-ports-graphics-34c2b21faa83c11561c68bc480062572c9ce9bb2.tar.zst
freebsd-ports-graphics-34c2b21faa83c11561c68bc480062572c9ce9bb2.zip
Add dvbcut, a Qt based program for cutting of MPEG TS stream files
(e.g. DVB) and the conversion from MPEG transport stream to program stream.
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/Makefile1
-rw-r--r--multimedia/dvbcut/Makefile40
-rw-r--r--multimedia/dvbcut/distinfo3
-rw-r--r--multimedia/dvbcut/files/patch-Makefile13
-rw-r--r--multimedia/dvbcut/files/patch-SConstruct22
-rw-r--r--multimedia/dvbcut/files/patch-defines.h23
-rw-r--r--multimedia/dvbcut/files/patch-imageprovider.cpp19
-rw-r--r--multimedia/dvbcut/files/patch-imageprovider.h11
-rw-r--r--multimedia/dvbcut/files/patch-index.h15
-rw-r--r--multimedia/dvbcut/pkg-descr8
10 files changed, 155 insertions, 0 deletions
diff --git a/multimedia/Makefile b/multimedia/Makefile
index e9dabc6646e..4865654523e 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -17,6 +17,7 @@
SUBDIR += dtv
SUBDIR += dumpmpeg
SUBDIR += dv2jpg
+ SUBDIR += dvbcut
SUBDIR += dvd-slideshow
SUBDIR += dvdauthor
SUBDIR += dvdrip
diff --git a/multimedia/dvbcut/Makefile b/multimedia/dvbcut/Makefile
new file mode 100644
index 00000000000..5d41223c5b9
--- /dev/null
+++ b/multimedia/dvbcut/Makefile
@@ -0,0 +1,40 @@
+# New ports collection makefile for: dvbcut
+# Date created: Mon Dec 19 23:20:01 CET 2005
+# Whom: se@freebsd.org
+#
+# $FreeBSD$
+#
+
+PORTNAME= dvbcut
+PORTVERSION= 0.5.3
+CATEGORIES= multimedia
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR=dvbcut
+DISTNAME= ${PORTNAME}_${PORTVERSION}
+
+MAINTAINER= se@FreeBSD.org
+COMMENT= Qt application for cutting of MPEG PS and MPEG TS streams (DVB)
+
+BUILD_DEPENDS= scons:${PORTSDIR}/devel/scons \
+ mplayer:${PORTSDIR}/multimedia/mplayer
+RUN_DEPENDS= mplayer:${PORTSDIR}/multimedia/mplayer
+LIB_DEPENDS= avutil.1:${PORTSDIR}/multimedia/ffmpeg-devel \
+ ao.3:${PORTSDIR}/audio/libao
+
+WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
+USE_BZIP2= yes
+USE_GMAKE= yes
+USE_QT_VER= 3
+ALL_TARGET= build
+MAKE_ENV= QTDIR=${QT_PREFIX} FFMPEG=${PREFIX} LDFLAGS="${LDFLAGS}"
+CFLAGS+= -pthread
+LDFLAGS+= -pthread
+
+MAN1= dvbcut.1
+PLIST_FILES= bin/dvbcut
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/bin/dvbcut ${PREFIX}/bin/
+ ${INSTALL_MAN} ${WRKSRC}/dvbcut.1 ${PREFIX}/man/man1/
+
+.include <bsd.port.mk>
diff --git a/multimedia/dvbcut/distinfo b/multimedia/dvbcut/distinfo
new file mode 100644
index 00000000000..9eca29cc787
--- /dev/null
+++ b/multimedia/dvbcut/distinfo
@@ -0,0 +1,3 @@
+MD5 (dvbcut_0.5.3.tar.bz2) = 11cbc9b874e6dad640febadf620de129
+SHA256 (dvbcut_0.5.3.tar.bz2) = 6496e5a9fe9a4313a480a3b21f075ea17e07451499d2c8e27559f1c4878b5238
+SIZE (dvbcut_0.5.3.tar.bz2) = 791953
diff --git a/multimedia/dvbcut/files/patch-Makefile b/multimedia/dvbcut/files/patch-Makefile
new file mode 100644
index 00000000000..ad693b5a84f
--- /dev/null
+++ b/multimedia/dvbcut/files/patch-Makefile
@@ -0,0 +1,13 @@
+--- Makefile~ Tue Dec 6 08:57:49 2005
++++ Makefile Thu Dec 29 00:19:02 2005
+@@ -2,7 +2,9 @@
+
+ build:
+ scons $(if $(FFMPEG),FFMPEG=$(FFMPEG)) \
+- $(if $(DEBUG),DEBUG=$(DEBUG))
++ $(if $(DEBUG),DEBUG=$(DEBUG)) \
++ $(if $(CFLAGS),CFLAGS="$(CFLAGS)") \
++ $(if $(LDFLAGS),LDFLAGS="$(LDFLAGS)")
+
+ clean:
+ scons --clean
diff --git a/multimedia/dvbcut/files/patch-SConstruct b/multimedia/dvbcut/files/patch-SConstruct
new file mode 100644
index 00000000000..928bd34888b
--- /dev/null
+++ b/multimedia/dvbcut/files/patch-SConstruct
@@ -0,0 +1,22 @@
+--- SConstruct~ Sun Dec 11 12:07:09 2005
++++ SConstruct Thu Dec 29 00:19:48 2005
+@@ -38,13 +38,17 @@
+
+ ###### BUILD ENVIRONMENT
+
++opts.Add('CFLAGS','compiler flags', "-O3 -Wall")
++opts.Add('LDFLAGS','linker flags', "")
++
+ env=Environment(options=opts, ENV=os.environ)
+ debug=int(env['DEBUG'])
+
+ if (debug>0):
+ env.Append(CCFLAGS=['-g3','-Wall'])
+-else:
+- env.Append(CCFLAGS=['-O3','-Wall'])
++env.Append(CCFLAGS=Split(env["CFLAGS"]))
++
++env.Append(LINKFLAGS=Split(env["LDFLAGS"]))
+
+ env.Replace(CXXFILESUFFIX=".cpp")
+
diff --git a/multimedia/dvbcut/files/patch-defines.h b/multimedia/dvbcut/files/patch-defines.h
new file mode 100644
index 00000000000..e8ff0b5864f
--- /dev/null
+++ b/multimedia/dvbcut/files/patch-defines.h
@@ -0,0 +1,23 @@
+--- src/defines.h~ Sun Dec 11 21:13:26 2005
++++ src/defines.h Mon Dec 19 23:05:03 2005
+@@ -40,6 +40,12 @@
+ #endif
+ }
+
++#if defined(__FreeBSD__)
++#define mbo32(x) htobe32(x)
++#define htom32(x) htobe32(x)
++#define mbo16(x) htobe16(x)
++#define htom16(x) htobe16(x)
++#else
+ #if __BYTE_ORDER == __LITTLE_ENDIAN
+ #define mbo32(x) (__bswap_constant_32(x))
+ #define htom32(x) (__bswap_32(x))
+@@ -50,6 +56,7 @@
+ #define htom32(x) (x)
+ #define mbo16(x) (x)
+ #define htom16(x) (x)
++#endif
+ #endif
+
+ #define DVBCUT_QSETTINGS_DOMAIN "dvbcut.sf.net"
diff --git a/multimedia/dvbcut/files/patch-imageprovider.cpp b/multimedia/dvbcut/files/patch-imageprovider.cpp
new file mode 100644
index 00000000000..b6c1e7c6692
--- /dev/null
+++ b/multimedia/dvbcut/files/patch-imageprovider.cpp
@@ -0,0 +1,19 @@
+--- ./src/imageprovider.cpp~ Thu Dec 15 21:02:14 2005
++++ ./src/imageprovider.cpp Sat Dec 24 16:18:17 2005
+@@ -40,11 +40,14 @@
+ void imageprovider::shrinkcache(int free)
+ {
+ int keep=maxcachedframes;
+- if (free>0)
+- keep-=free;
++ if (free<0)
++ return;
++ if (keep<free)
++ free=keep-1;
++ keep-=free;
+
+ std::list<framecacheitem>::iterator it=framecache.begin();
+ for(int i=0;i<keep&&it!=framecache.end();++it,++i)
+ ;
+
+ while(it!=framecache.end())
diff --git a/multimedia/dvbcut/files/patch-imageprovider.h b/multimedia/dvbcut/files/patch-imageprovider.h
new file mode 100644
index 00000000000..c6b8d0779dc
--- /dev/null
+++ b/multimedia/dvbcut/files/patch-imageprovider.h
@@ -0,0 +1,11 @@
+--- src/imageprovider.h~ Wed Dec 28 20:37:37 2005
++++ src/imageprovider.h Wed Dec 28 20:59:23 2005
+@@ -47,7 +47,7 @@
+ virtual void decodepicture(int picture, bool decodeallgop=false);
+
+ public:
+- imageprovider(mpgfile &mpg, busyindicator *bi=0, bool unscaled=false, int factor=1, int cachesize=50);
++ imageprovider(mpgfile &mpg, busyindicator *bi=0, bool unscaled=false, int factor=1, int cachesize=8);
+ virtual ~imageprovider();
+ int rtti() const
+ {
diff --git a/multimedia/dvbcut/files/patch-index.h b/multimedia/dvbcut/files/patch-index.h
new file mode 100644
index 00000000000..c21f19c09aa
--- /dev/null
+++ b/multimedia/dvbcut/files/patch-index.h
@@ -0,0 +1,15 @@
+--- src/index.h~ Mon Dec 19 22:52:11 2005
++++ src/index.h Mon Dec 19 23:05:24 2005
+@@ -20,7 +20,11 @@
+ #define _DVBCUT_INDEX_H
+
+ #include <stdint.h>
+-#include <byteswap.h>
++#if defined(__FreeBSD__)
++#include <sys/endian.h>
++#else
++#include <byteswap.h>
++#endif
+ #include "types.h"
+ #include "pts.h"
+ #include "defines.h"
diff --git a/multimedia/dvbcut/pkg-descr b/multimedia/dvbcut/pkg-descr
new file mode 100644
index 00000000000..736d7abb2b0
--- /dev/null
+++ b/multimedia/dvbcut/pkg-descr
@@ -0,0 +1,8 @@
+dvbcut is a Qt application which enables you to select certain parts of an
+MPEG transport stream (as received on Digital Video Broadcasting, DVB) and
+save these parts into a single MPEG output file. It follows a "keyhole
+surgery" approach. Thus, the input video and audio data is mostly kept
+unchanged, only very few frames at the beginning and/or end of the selected
+range are recoded in order to obtain a valid MPEG file.
+
+WWW: http://dvbcut.sourceforge.net/