summaryrefslogtreecommitdiff
path: root/graphics/mpeg_encode
diff options
context:
space:
mode:
authorhubertf <hubertf@pkgsrc.org>2001-05-14 23:06:03 +0000
committerhubertf <hubertf@pkgsrc.org>2001-05-14 23:06:03 +0000
commita70cacaa1dc3096e4b1d5eb188fe40ea7ac49631 (patch)
tree72a4f79f61db3b079e268f556308b9112b814cc8 /graphics/mpeg_encode
parentd35a59d1beff3f04df9d89a7a2b593b41d62fb23 (diff)
downloadpkgsrc-a70cacaa1dc3096e4b1d5eb188fe40ea7ac49631.tar.gz
Add mpeg_encode-1.5b: The Parallel Berkeley MPEG Encoder
The primary focus of MPEG encoding algorithms is 1) To create fast and efficient motion vector search techniques and 2) To find "good" encoding parameters that provide a balance of encoding speed, compression and quality. The Berkeley encoder accelerates the process by parallelizing in the temporal direction. The overall organization of the encoder is shown in Figure 2. The Master server is the overall coordinator. It allocates groups of frames to the Slave servers for encoding. The sharing of the files is achieved best, if the directories containing the video files are NFS mounted and accessible uniformly to all processors (alternatively they can be sent out though sockets by the Master). The various activities are managed by inter process communication through sockets.
Diffstat (limited to 'graphics/mpeg_encode')
-rw-r--r--graphics/mpeg_encode/Makefile35
-rw-r--r--graphics/mpeg_encode/distinfo7
-rw-r--r--graphics/mpeg_encode/patches/patch-aa17
-rw-r--r--graphics/mpeg_encode/patches/patch-ab13
-rw-r--r--graphics/mpeg_encode/patches/patch-ac25
-rw-r--r--graphics/mpeg_encode/pkg/DESCR14
-rw-r--r--graphics/mpeg_encode/pkg/PLIST167
7 files changed, 278 insertions, 0 deletions
diff --git a/graphics/mpeg_encode/Makefile b/graphics/mpeg_encode/Makefile
new file mode 100644
index 00000000000..6c4fba3b92f
--- /dev/null
+++ b/graphics/mpeg_encode/Makefile
@@ -0,0 +1,35 @@
+# $NetBSD: Makefile,v 1.1.1.1 2001/05/14 23:06:03 hubertf Exp $
+#
+
+DISTNAME= mpeg_encode-1.5b-src
+PKGNAME= ${DISTNAME:S/-src//}
+CATEGORIES= graphics net
+MASTER_SITES= ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/encode/
+
+MAINTAINER= hubertf@netbsd.org
+HOMEPAGE= http://bmrc.berkeley.edu/frame/research/mpeg/mpeg_encode.html
+COMMENT= The Parallel Berkeley MPEG Encoder
+
+DEPENDS+= jpeg-6*:../../graphics/jpeg
+
+WRKSRC= ${WRKDIR}/mpeg_encode
+
+post-build:
+ ${MAKE} do-build WRKSRC=${WRKSRC}/convert
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/mpeg_encode ${LOCALBASE}/bin
+.for i in eyuvtojpeg jmovie2jpeg mpeg_demux
+ ${INSTALL_PROGRAM} ${WRKSRC}/convert/${i} ${LOCALBASE}/bin
+.endfor
+ ${INSTALL_DATA_DIR} ${LOCALBASE}/share/doc/mpeg_encode
+.for i in EXTENSIONS INPUT.FORMAT mpeg_encode.1 parallel.param param-summary \
+ template.param users-guide.fm users-guide.mif users-guide.ps
+ ${INSTALL_DATA} ${WRKSRC}/docs/${i} ${LOCALBASE}/share/doc/mpeg_encode
+.endfor
+ ${INSTALL_DATA_DIR} ${LOCALBASE}/share/examples/mpeg_encode
+ cd ${WRKSRC}/examples ; for i in * ; do \
+ ${INSTALL_DATA} $$i ${LOCALBASE}/share/examples/mpeg_encode; \
+ done
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/graphics/mpeg_encode/distinfo b/graphics/mpeg_encode/distinfo
new file mode 100644
index 00000000000..63c13b01b7e
--- /dev/null
+++ b/graphics/mpeg_encode/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1.1.1 2001/05/14 23:06:03 hubertf Exp $
+
+SHA1 (mpeg_encode-1.5b-src.tar.gz) = 853cd175f73b8064ce28deb256e4b81159a684ed
+Size (mpeg_encode-1.5b-src.tar.gz) = 2028724 bytes
+SHA1 (patch-aa) = 1d233d6c578217d05f31f8a0264f9101b307f5ae
+SHA1 (patch-ab) = f2cdf02d49b726b4fb7fb210074e7ba53b9b380b
+SHA1 (patch-ac) = 8f89257bd93584cd028b659bb8c3379d713339da
diff --git a/graphics/mpeg_encode/patches/patch-aa b/graphics/mpeg_encode/patches/patch-aa
new file mode 100644
index 00000000000..5227b1878a5
--- /dev/null
+++ b/graphics/mpeg_encode/patches/patch-aa
@@ -0,0 +1,17 @@
+$NetBSD: patch-aa,v 1.1.1.1 2001/05/14 23:06:03 hubertf Exp $
+
+--- Makefile.orig Thu Aug 17 00:16:56 1995
++++ Makefile
+@@ -36,9 +36,9 @@
+ ##############
+ # JPEG STUFF #
+ ##############
+-JPEG_LIB = jpeg/libjpeg.a
+-JPEG_DIR = -Ijpeg
+-JPEG_LIB_DIR = -Ljpeg
++JPEG_LIB = -ljpeg
++JPEG_DIR = -I${LOCALBASE}/include
++JPEG_LIB_DIR = -L${LOCALBASE}/lib -Wl,-R${LOCALBASE}/lib
+ MP_JPEG_OBJS = jpeg.o
+ MP_JPEG_SRCS = jpeg.c
+
diff --git a/graphics/mpeg_encode/patches/patch-ab b/graphics/mpeg_encode/patches/patch-ab
new file mode 100644
index 00000000000..d06921f9b40
--- /dev/null
+++ b/graphics/mpeg_encode/patches/patch-ab
@@ -0,0 +1,13 @@
+$NetBSD: patch-ab,v 1.1.1.1 2001/05/14 23:06:03 hubertf Exp $
+
+--- jpeg.c.orig Sat Aug 5 01:35:07 1995
++++ jpeg.c
+@@ -77,7 +77,7 @@
+
+ /* make it happier.... */
+ #undef DCTSIZE2
+-#include "jpeg/jpeglib.h"
++#include "jpeglib.h" /* Use system header! */
+
+
+ #define HEADER_SIZE 607 /*JFIF header size used on output images*/
diff --git a/graphics/mpeg_encode/patches/patch-ac b/graphics/mpeg_encode/patches/patch-ac
new file mode 100644
index 00000000000..92eee593f00
--- /dev/null
+++ b/graphics/mpeg_encode/patches/patch-ac
@@ -0,0 +1,25 @@
+$NetBSD: patch-ac,v 1.1.1.1 2001/05/14 23:06:03 hubertf Exp $
+
+--- libpnmrw.c.orig Thu Aug 17 00:24:26 1995
++++ libpnmrw.c
+@@ -28,6 +28,9 @@
+ #endif
+
+ #include <stdio.h>
++#ifdef __NetBSD__
++# include <errno.h>
++#endif
+ #include "libpnmrw.h"
+
+ /* if don't have string.h, try strings.h */
+@@ -126,8 +129,10 @@
+ pm_perror( reason )
+ char* reason;
+ {
++#ifndef __NetBSD__
+ extern char* sys_errlist[];
+ extern int errno;
++#endif
+ char* e;
+
+ e = sys_errlist[errno];
diff --git a/graphics/mpeg_encode/pkg/DESCR b/graphics/mpeg_encode/pkg/DESCR
new file mode 100644
index 00000000000..f1d129b6c31
--- /dev/null
+++ b/graphics/mpeg_encode/pkg/DESCR
@@ -0,0 +1,14 @@
+The primary focus of MPEG encoding algorithms is 1) To create fast
+and efficient motion vector search techniques and 2) To find "good"
+encoding parameters that provide a balance of encoding speed,
+compression and quality.
+
+The Berkeley encoder accelerates the process by parallelizing in
+the temporal direction. The overall organization of the encoder is
+shown in Figure 2. The Master server is the overall coordinator.
+It allocates groups of frames to the Slave servers for encoding.
+The sharing of the files is achieved best, if the directories
+containing the video files are NFS mounted and accessible uniformly
+to all processors (alternatively they can be sent out though sockets
+by the Master). The various activities are managed by inter process
+communication through sockets.
diff --git a/graphics/mpeg_encode/pkg/PLIST b/graphics/mpeg_encode/pkg/PLIST
new file mode 100644
index 00000000000..4698ae40c3c
--- /dev/null
+++ b/graphics/mpeg_encode/pkg/PLIST
@@ -0,0 +1,167 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2001/05/14 23:06:03 hubertf Exp $
+bin/eyuvtojpeg
+bin/jmovie2jpeg
+bin/mpeg_demux
+bin/mpeg_encode
+share/doc/mpeg_encode/EXTENSIONS
+share/doc/mpeg_encode/INPUT.FORMAT
+share/doc/mpeg_encode/mpeg_encode.1
+share/doc/mpeg_encode/parallel.param
+share/doc/mpeg_encode/param-summary
+share/doc/mpeg_encode/template.param
+share/doc/mpeg_encode/users-guide.fm
+share/doc/mpeg_encode/users-guide.mif
+share/doc/mpeg_encode/users-guide.ps
+share/examples/mpeg_encode/basicspeed.param
+share/examples/mpeg_encode/decoded.test
+share/examples/mpeg_encode/decoded2.test
+share/examples/mpeg_encode/decorig.param
+share/examples/mpeg_encode/default.param
+share/examples/mpeg_encode/fastspeed.param
+share/examples/mpeg_encode/foobar.param
+share/examples/mpeg_encode/frame.test
+share/examples/mpeg_encode/gop.combine
+share/examples/mpeg_encode/gop.test
+share/examples/mpeg_encode/gop1.param
+share/examples/mpeg_encode/hello.param
+share/examples/mpeg_encode/i.test
+share/examples/mpeg_encode/ispeed.jpeg.param
+share/examples/mpeg_encode/ispeed.param
+share/examples/mpeg_encode/jpeg.test
+share/examples/mpeg_encode/jpeg19.param
+share/examples/mpeg_encode/jpegout19.param
+share/examples/mpeg_encode/localdisk.param
+share/examples/mpeg_encode/localremote.test
+share/examples/mpeg_encode/luxo.param
+share/examples/mpeg_encode/luxo18.param
+share/examples/mpeg_encode/luxo19.5.param
+share/examples/mpeg_encode/luxo19.param
+share/examples/mpeg_encode/luxo2.param
+share/examples/mpeg_encode/luxo48.param
+share/examples/mpeg_encode/luxo49.param
+share/examples/mpeg_encode/luxo50.param
+share/examples/mpeg_encode/luxo52.5.param
+share/examples/mpeg_encode/luxo52.param
+share/examples/mpeg_encode/luxo53.param
+share/examples/mpeg_encode/luxobug.param
+share/examples/mpeg_encode/luxoskip.param
+share/examples/mpeg_encode/med.param
+share/examples/mpeg_encode/med18.param
+share/examples/mpeg_encode/medspeed.param
+share/examples/mpeg_encode/nametest.param
+share/examples/mpeg_encode/nosearch.param
+share/examples/mpeg_encode/par3.param
+share/examples/mpeg_encode/par4.param
+share/examples/mpeg_encode/par5.param
+share/examples/mpeg_encode/parallel.2
+share/examples/mpeg_encode/parallel.param
+share/examples/mpeg_encode/parallel.test
+share/examples/mpeg_encode/param.template
+share/examples/mpeg_encode/payam.param
+share/examples/mpeg_encode/payam18.param
+share/examples/mpeg_encode/pnm.param
+share/examples/mpeg_encode/ppm.param
+share/examples/mpeg_encode/prof.b.param
+share/examples/mpeg_encode/prof.bhalf.param
+share/examples/mpeg_encode/prof.param
+share/examples/mpeg_encode/prof.ss.param
+share/examples/mpeg_encode/prof2.param
+share/examples/mpeg_encode/prof3.param
+share/examples/mpeg_encode/prof4.param
+share/examples/mpeg_encode/remote.test
+share/examples/mpeg_encode/search1.param
+share/examples/mpeg_encode/search10.param
+share/examples/mpeg_encode/search11.param
+share/examples/mpeg_encode/search12.param
+share/examples/mpeg_encode/search13.param
+share/examples/mpeg_encode/search14.param
+share/examples/mpeg_encode/search15.param
+share/examples/mpeg_encode/search16.param
+share/examples/mpeg_encode/search17.param
+share/examples/mpeg_encode/search18.param
+share/examples/mpeg_encode/search19.5.param
+share/examples/mpeg_encode/search19.param
+share/examples/mpeg_encode/search2.param
+share/examples/mpeg_encode/search20.param
+share/examples/mpeg_encode/search21.param
+share/examples/mpeg_encode/search22.param
+share/examples/mpeg_encode/search23.param
+share/examples/mpeg_encode/search24.param
+share/examples/mpeg_encode/search25.param
+share/examples/mpeg_encode/search26.param
+share/examples/mpeg_encode/search27.param
+share/examples/mpeg_encode/search28.param
+share/examples/mpeg_encode/search29.param
+share/examples/mpeg_encode/search3.param
+share/examples/mpeg_encode/search30.param
+share/examples/mpeg_encode/search31.param
+share/examples/mpeg_encode/search32.param
+share/examples/mpeg_encode/search33.param
+share/examples/mpeg_encode/search34.param
+share/examples/mpeg_encode/search35.param
+share/examples/mpeg_encode/search36.param
+share/examples/mpeg_encode/search37.param
+share/examples/mpeg_encode/search38.param
+share/examples/mpeg_encode/search39.param
+share/examples/mpeg_encode/search4.param
+share/examples/mpeg_encode/search40.param
+share/examples/mpeg_encode/search41.param
+share/examples/mpeg_encode/search42.param
+share/examples/mpeg_encode/search43.param
+share/examples/mpeg_encode/search44.param
+share/examples/mpeg_encode/search45.param
+share/examples/mpeg_encode/search46.param
+share/examples/mpeg_encode/search47.param
+share/examples/mpeg_encode/search48.param
+share/examples/mpeg_encode/search49.param
+share/examples/mpeg_encode/search5.param
+share/examples/mpeg_encode/search50.param
+share/examples/mpeg_encode/search51.param
+share/examples/mpeg_encode/search52.5.param
+share/examples/mpeg_encode/search52.param
+share/examples/mpeg_encode/search53.param
+share/examples/mpeg_encode/search6.param
+share/examples/mpeg_encode/search7.param
+share/examples/mpeg_encode/search8.param
+share/examples/mpeg_encode/search9.param
+share/examples/mpeg_encode/seq.param
+share/examples/mpeg_encode/sequoia.param
+share/examples/mpeg_encode/sequoia19.param
+share/examples/mpeg_encode/sequoia2.param
+share/examples/mpeg_encode/slice.param
+share/examples/mpeg_encode/slimed.param
+share/examples/mpeg_encode/slowspeed.param
+share/examples/mpeg_encode/stanford.param
+share/examples/mpeg_encode/subtest.param
+share/examples/mpeg_encode/temp.param
+share/examples/mpeg_encode/template.param
+share/examples/mpeg_encode/tennis.param
+share/examples/mpeg_encode/tennis18.param
+share/examples/mpeg_encode/tennis19.5.param
+share/examples/mpeg_encode/tennis19.param
+share/examples/mpeg_encode/tennis48.param
+share/examples/mpeg_encode/tennis49.param
+share/examples/mpeg_encode/tennis50.param
+share/examples/mpeg_encode/tennis52.5.param
+share/examples/mpeg_encode/tennis52.param
+share/examples/mpeg_encode/tennis53.param
+share/examples/mpeg_encode/tennisbug.param
+share/examples/mpeg_encode/testp.param
+share/examples/mpeg_encode/walk.param
+share/examples/mpeg_encode/walk1.param
+share/examples/mpeg_encode/walk18.param
+share/examples/mpeg_encode/walk19.5.param
+share/examples/mpeg_encode/walk19.param
+share/examples/mpeg_encode/walk2.param
+share/examples/mpeg_encode/walk3.param
+share/examples/mpeg_encode/walk4.param
+share/examples/mpeg_encode/walk48.param
+share/examples/mpeg_encode/walk49.param
+share/examples/mpeg_encode/walk5.param
+share/examples/mpeg_encode/walk50.param
+share/examples/mpeg_encode/walk52.5.param
+share/examples/mpeg_encode/walk52.param
+share/examples/mpeg_encode/walk53.param
+share/examples/mpeg_encode/walk93.param
+@dirrm share/examples/mpeg_encode
+@dirrm share/doc/mpeg_encode