mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-04 01:48:54 +00:00
multimedia/vapoursynth: add new port
Simple video processing framework, inspired by Avisynth. http://www.vapoursynth.com/about/
This commit is contained in:
parent
a5ad2458e1
commit
6c9554d4e2
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=412879
@ -393,6 +393,7 @@
|
||||
SUBDIR += v4l-utils
|
||||
SUBDIR += v4l_compat
|
||||
SUBDIR += vamps
|
||||
SUBDIR += vapoursynth
|
||||
SUBDIR += vcdgear
|
||||
SUBDIR += vcdimager
|
||||
SUBDIR += vcdpad
|
||||
|
124
multimedia/vapoursynth/Makefile
Normal file
124
multimedia/vapoursynth/Makefile
Normal file
@ -0,0 +1,124 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= vapoursynth
|
||||
DISTVERSION= R32
|
||||
CATEGORIES= multimedia
|
||||
|
||||
MAINTAINER= jbeich@FreeBSD.org
|
||||
COMMENT= Video processing framework with simplicity in mind
|
||||
|
||||
LICENSE= LGPL21+
|
||||
|
||||
USE_GITHUB= yes
|
||||
|
||||
USES= autoreconf gmake libtool localbase pathfix pkgconfig
|
||||
PATHFIX_MAKEFILEIN= Makefile.am
|
||||
GNU_CONFIGURE= yes
|
||||
CONFIGURE_ARGS= --disable-silent-rules
|
||||
CPPFLAGS+= -D_GLIBCXX_USE_C99 # XXX ports/193528
|
||||
INSTALL_TARGET= install-strip
|
||||
USE_LDCONFIG= yes
|
||||
DATADIR= ${PREFIX}/lib/vapoursynth
|
||||
|
||||
OPTIONS_DEFINE= DEBUG DOCS FRAME_GUARD
|
||||
OPTIONS_DEFAULT=${OPTIONS_GROUP_COMPS} ${OPTIONS_GROUP_PLUGINS}
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
OPTIONS_DEFINE_amd64= SIMD
|
||||
OPTIONS_DEFINE_i386= SIMD
|
||||
OPTIONS_DEFAULT_amd64= SIMD
|
||||
|
||||
OPTIONS_GROUP= COMPS PLUGINS
|
||||
COMPS_DESC= Components
|
||||
OPTIONS_GROUP_COMPS= CORE PYTHON VSPIPE VSSCRIPT
|
||||
PLUGINS_DESC= Plugins
|
||||
OPTIONS_GROUP_PLUGINS= ASS EEDI3 IMAGEMAGICK MORPHO TESSERACT REMOVEGRAIN VINVERSE VIVTC
|
||||
|
||||
# General options
|
||||
|
||||
DEBUG_CONFIGURE_ENABLE= debug
|
||||
|
||||
DOCS_BUILD_DEPENDS= sphinx-build:textproc/py-sphinx
|
||||
DOCS_USES= makeinfo
|
||||
DOCS_INFO= VapourSynth
|
||||
DOCS_PORTDOCS= *
|
||||
|
||||
FRAME_GUARD_DESC= Check integrity after each filter
|
||||
FRAME_GUARD_CONFIGURE_ENABLE= guard-pattern
|
||||
|
||||
# VSSCRIPT or REMOVEGRAIN
|
||||
SIMD_BUILD_DEPENDS= yasm:devel/yasm
|
||||
SIMD_CONFIGURE_ENABLE= x86-asm
|
||||
|
||||
# COMPS group
|
||||
|
||||
CORE_DESC= Core library
|
||||
CORE_LIB_DEPENDS= libzimg.so:graphics/sekrit-twc-zimg
|
||||
CORE_USES= compiler:c++11-lib
|
||||
CORE_CONFIGURE_ENABLE= core
|
||||
|
||||
PYTHON_USES= python:3.3-
|
||||
PYTHON_BUILD_DEPENDS= cython:lang/cython
|
||||
PYTHON_CONFIGURE_ENABLE= python-module
|
||||
PYTHON_IMPLIES= CORE
|
||||
|
||||
VSPIPE_DESC= Command line interface
|
||||
VSPIPE_USES= compiler:c++11-lib
|
||||
VSPIPE_CONFIGURE_ENABLE= vspipe
|
||||
VSPIPE_IMPLIES= VSSCRIPT
|
||||
|
||||
VSSCRIPT_DESC= Scripting library
|
||||
VSSCRIPT_USES= compiler:c++11-lib python:3.3-
|
||||
VSSCRIPT_CONFIGURE_ENABLE= vsscript
|
||||
|
||||
# PLUGINS group
|
||||
|
||||
ASS_DESC= Subtitles rendering via libass
|
||||
ASS_LIB_DEPENDS= libass.so:multimedia/libass
|
||||
ASS_CONFIGURE_ENABLE= assvapour
|
||||
|
||||
EEDI3_DESC= Very slow edge directed interpolation
|
||||
EEDI3_CONFIGURE_ENABLE= eedi3
|
||||
|
||||
IMAGEMAGICK_LIB_DEPENDS= libMagick++-6.so:graphics/ImageMagick
|
||||
IMAGEMAGICK_USES= compiler:c++11-lib
|
||||
IMAGEMAGICK_CONFIGURE_ENABLE= imwri
|
||||
|
||||
TESSERACT_DESC= Optical Character Recognition via Tesseract
|
||||
TESSERACT_LIB_DEPENDS= libtesseract.so:graphics/tesseract
|
||||
TESSERACT_CONFIGURE_ENABLE= ocr
|
||||
|
||||
MORPHO_DESC= Morphological filter
|
||||
MORPHO_CONFIGURE_ENABLE= morpho
|
||||
|
||||
REMOVEGRAIN_DESC= 3x3 median and convolution denoising
|
||||
REMOVEGRAIN_CONFIGURE_ENABLE= removegrain
|
||||
|
||||
VINVERSE_DESC= Remove residual combing
|
||||
VINVERSE_CONFIGURE_ENABLE= vinverse
|
||||
|
||||
VIVTC_DESC= Field matching, inverse telecine and decimation
|
||||
VIVTC_CONFIGURE_ENABLE= vivtc
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's/x86_64/&|amd64/' \
|
||||
${WRKSRC}/configure.ac
|
||||
|
||||
post-build-DOCS-on:
|
||||
@${DO_MAKE_BUILD} html texinfo -C${WRKSRC}/doc
|
||||
@${DO_MAKE_BUILD} info -C${WRKSRC}/doc/_build/texinfo
|
||||
@if [ -n "${PORT_OPTIONS:MVSPIPE}" ]; then \
|
||||
${DO_MAKE_BUILD} man -C${WRKSRC}/doc; \
|
||||
fi
|
||||
|
||||
post-install-DOCS-on:
|
||||
${INSTALL_MAN} ${WRKSRC}/doc/_build/texinfo/VapourSynth.info \
|
||||
${STAGEDIR}${PREFIX}/${INFO_PATH}
|
||||
(cd ${WRKSRC}/doc/_build/html && ${COPYTREE_SHARE} \
|
||||
"${PORTDOCS}" ${STAGEDIR}${DOCSDIR})
|
||||
@if [ -n "${PORT_OPTIONS:MVSPIPE}" ]; then \
|
||||
${INSTALL_MAN} -v ${WRKSRC}/doc/_build/man/vspipe.1 \
|
||||
${STAGEDIR}${MAN1PREFIX}/man/man1; \
|
||||
fi
|
||||
|
||||
.include <bsd.port.mk>
|
2
multimedia/vapoursynth/distinfo
Normal file
2
multimedia/vapoursynth/distinfo
Normal file
@ -0,0 +1,2 @@
|
||||
SHA256 (vapoursynth-vapoursynth-R32_GH0.tar.gz) = e9560f64ba298c2ef9e6e3d88f63ea0ab88e14bbd0e9feee9c621b9224e408c8
|
||||
SIZE (vapoursynth-vapoursynth-R32_GH0.tar.gz) = 499058
|
31
multimedia/vapoursynth/files/patch-non-x86
Normal file
31
multimedia/vapoursynth/files/patch-non-x86
Normal file
@ -0,0 +1,31 @@
|
||||
--- src/core/cpufeatures.c.orig 2016-02-02 16:12:42 UTC
|
||||
+++ src/core/cpufeatures.c
|
||||
@@ -60,7 +60,7 @@ void getCPUFeatures(CPUFeatures *cpuFeat
|
||||
}
|
||||
}
|
||||
}
|
||||
-#elif defined(VS_TARGET_OS_LINUX)
|
||||
+#elif defined(VS_TARGET_OS_LINUX) && defined(__linux__)
|
||||
#include <sys/auxv.h>
|
||||
|
||||
void getCPUFeatures(CPUFeatures *cpuFeatures) {
|
||||
@@ -89,5 +89,7 @@ void getCPUFeatures(CPUFeatures *cpuFeat
|
||||
#endif
|
||||
}
|
||||
#else
|
||||
-#error Do not know how to get CPU features.
|
||||
+void getCPUFeatures(CPUFeatures *cpuFeatures) {
|
||||
+ memset(cpuFeatures, 0, sizeof(CPUFeatures));
|
||||
+}
|
||||
#endif
|
||||
--- src/core/cpufeatures.h.orig 2016-02-02 16:12:42 UTC
|
||||
+++ src/core/cpufeatures.h
|
||||
@@ -51,8 +51,6 @@ typedef struct CPUFeatures {
|
||||
char efp_double;
|
||||
char dfp;
|
||||
char vsx;
|
||||
-#else
|
||||
-#error No VS_TARGET_CPU_* defined/handled!
|
||||
#endif
|
||||
} CPUFeatures;
|
||||
|
20
multimedia/vapoursynth/pkg-descr
Normal file
20
multimedia/vapoursynth/pkg-descr
Normal file
@ -0,0 +1,20 @@
|
||||
VapourSynth is an application for video manipulation. Or a plugin. Or
|
||||
a library. It's hard to tell because it has a core library written in
|
||||
C++ and a Python module to allow video scripts to be created. It came
|
||||
to be when I started thinking about alternative designs for Avisynth
|
||||
and most of it was written over a 3 month period.
|
||||
|
||||
The software has been heavily inspired by and aims to be a 21st
|
||||
century rewrite, taking advantage of the advancements computers have
|
||||
made since the late 90s. The main features compared to Avisynth are:
|
||||
|
||||
* Multithreaded - Frame level multithreading that scales well
|
||||
* Generalized Colorspaces - New colorspaces can be specified at runtime
|
||||
* Per Frame Properties - Additional metadata can be attached to frames
|
||||
* Python Based - The scripting part is implemented as a Python module so you
|
||||
don't have to learn a special language
|
||||
* Support for video with format changes - Some video just can't stick to one
|
||||
format or frame size. VapourSynth can handle any kind of change
|
||||
* Compatible with a large number of already existing Avisynth plugins
|
||||
|
||||
WWW: http://www.vapoursynth.com/
|
22
multimedia/vapoursynth/pkg-plist
Normal file
22
multimedia/vapoursynth/pkg-plist
Normal file
@ -0,0 +1,22 @@
|
||||
%%VSPIPE%%bin/vspipe
|
||||
%%CORE%%include/vapoursynth/VSHelper.h
|
||||
%%CORE%%include/vapoursynth/VSScript.h
|
||||
%%CORE%%include/vapoursynth/VapourSynth.h
|
||||
%%VSSCRIPT%%lib/libvapoursynth-script.a
|
||||
%%VSSCRIPT%%lib/libvapoursynth-script.so
|
||||
%%VSSCRIPT%%lib/libvapoursynth-script.so.0
|
||||
%%VSSCRIPT%%lib/libvapoursynth-script.so.0.0.0
|
||||
%%CORE%%lib/libvapoursynth.a
|
||||
%%CORE%%lib/libvapoursynth.so
|
||||
%%PYTHON%%%%PYTHON_SITELIBDIR%%/vapoursynth.so
|
||||
%%DOCS%%%%VSPIPE%%man/man1/vspipe.1.gz
|
||||
%%ASS%%%%DATADIR%%/libassvapour.so
|
||||
%%EEDI3%%%%DATADIR%%/libeedi3.so
|
||||
%%IMAGEMAGICK%%%%DATADIR%%/libimwri.so
|
||||
%%MORPHO%%%%DATADIR%%/libmorpho.so
|
||||
%%TESSERACT%%%%DATADIR%%/libocr.so
|
||||
%%REMOVEGRAIN%%%%DATADIR%%/libremovegrain.so
|
||||
%%VINVERSE%%%%DATADIR%%/libvinverse.so
|
||||
%%VIVTC%%%%DATADIR%%/libvivtc.so
|
||||
%%VSSCRIPT%%libdata/pkgconfig/vapoursynth-script.pc
|
||||
%%CORE%%libdata/pkgconfig/vapoursynth.pc
|
Loading…
Reference in New Issue
Block a user