aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia
diff options
context:
space:
mode:
authortcberner <tcberner@FreeBSD.org>2017-04-08 03:57:04 +0800
committertcberner <tcberner@FreeBSD.org>2017-04-08 03:57:04 +0800
commit3e0cb165bbc6ef7f0a851e2ecf30dea1d523e326 (patch)
tree5ff17b968c2c13bfc301c38aaace9cdd36c374e0 /multimedia
parentf19b6c28cc24377121f152388551439423477adf (diff)
downloadfreebsd-ports-gnome-3e0cb165bbc6ef7f0a851e2ecf30dea1d523e326.tar.gz
freebsd-ports-gnome-3e0cb165bbc6ef7f0a851e2ecf30dea1d523e326.tar.zst
freebsd-ports-gnome-3e0cb165bbc6ef7f0a851e2ecf30dea1d523e326.zip
New port: multimedia/QtAV
A cross-platform multimedia framework based on Qt and FFmpeg. High performance. User & developer friendly. Supports Android, iOS, Windows store and desktops. WWW: https://github.com/wang-bin/QtAV Reviewed by: rakuco, jhale Approved by: rakuco (mentor) Differential Revision: https://reviews.freebsd.org/D10186
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/Makefile1
-rw-r--r--multimedia/QtAV/Makefile50
-rw-r--r--multimedia/QtAV/distinfo3
-rw-r--r--multimedia/QtAV/files/patch-deploy.pri45
-rw-r--r--multimedia/QtAV/files/patch-src_libQtAV.pro11
-rw-r--r--multimedia/QtAV/files/patch-tools_install__sdk_install__sdk.pro11
-rw-r--r--multimedia/QtAV/pkg-descr5
-rw-r--r--multimedia/QtAV/pkg-plist106
8 files changed, 232 insertions, 0 deletions
diff --git a/multimedia/Makefile b/multimedia/Makefile
index 83ea25b0e45c..d07061e42863 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -354,6 +354,7 @@
SUBDIR += qt5-phonon4-designerplugin
SUBDIR += qt5-phonon4-gstreamer
SUBDIR += qt5-phonon4-vlc
+ SUBDIR += QtAV
SUBDIR += quark
SUBDIR += quodlibet
SUBDIR += quvi
diff --git a/multimedia/QtAV/Makefile b/multimedia/QtAV/Makefile
new file mode 100644
index 000000000000..0b76a208b3a8
--- /dev/null
+++ b/multimedia/QtAV/Makefile
@@ -0,0 +1,50 @@
+# $FreeBSD$
+
+PORTNAME= QtAV
+PORTVERSION= 1.11.0
+DISTVERSIONPREFIX= v
+CATEGORIES= multimedia
+DIST_SUBDIR= KDE
+
+MAINTAINER= kde@FreeBSD.org
+COMMENT= Cross-platform multimedia framwork based on Qt and ffmpeg
+
+LICENSE= LGPL21+
+LICENSE_FIKE= ${WRKSRC}/lgpl-2.1.txt
+
+LIB_DEPENDS= libass.so:multimedia/libass \
+ libavcodec.so:multimedia/ffmpeg
+
+USES= qmake:outsource
+USE_GL= gl
+USE_QT5= core gui network opengl qml quick sql widgets \
+ buildtools_build qmake_build
+USE_XORG= x11 xext xv
+
+OPTIONS_DEFINE= OPENAL UCHARDET VAAPI PULSEAUDIO
+OPTIONS_DEFAULT= OPENAL UCHARDET VAAPI
+OPTIONS_SUB= yes
+
+OPENAL_LIB_DEPENDS= libopenal.so:audio/openal-soft
+OPENAL_QMAKE_OFF= CONFIG+=no-openal
+
+PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
+PULSEAUDIO_QMAKE_OFF= CONFIG+=no-pulseaudio
+
+UCHARDET_DESC= Guess subtitle encoding via uchardet
+UCHARDET_LIB_DEPENDS= libuchardet.so:textproc/uchardet
+UCHARDET_QMAKE_OFF= CONFIG+=no-uchardet
+
+VAAPI_LIB_DEPENDS= libva.so:multimedia/libva
+VAAPI_QMAKE_OFF= CONFIG+=no-vaapi
+
+PLIST_SUB= QT_VERSION="${_QT_VERSION}"
+
+USE_GITHUB= yes
+GH_ACCOUNT= wang-bin
+
+# The examples are GLPv3 licencensed and have too generic names, like 'Player',
+# so don't install them.
+QMAKE_ARGS= CONFIG+=no-examples
+
+.include <bsd.port.mk>
diff --git a/multimedia/QtAV/distinfo b/multimedia/QtAV/distinfo
new file mode 100644
index 000000000000..703e1453cc45
--- /dev/null
+++ b/multimedia/QtAV/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1490778279
+SHA256 (KDE/wang-bin-QtAV-v1.11.0_GH0.tar.gz) = 888675b2734940c693eec24f8b35a434a428f6827868876e149e0979d629bba5
+SIZE (KDE/wang-bin-QtAV-v1.11.0_GH0.tar.gz) = 1033232
diff --git a/multimedia/QtAV/files/patch-deploy.pri b/multimedia/QtAV/files/patch-deploy.pri
new file mode 100644
index 000000000000..9b25d334bdec
--- /dev/null
+++ b/multimedia/QtAV/files/patch-deploy.pri
@@ -0,0 +1,45 @@
+--- deploy.pri.orig 2017-04-06 20:22:41 UTC
++++ deploy.pri
+@@ -4,7 +4,7 @@ INSTALL_PREFIX = /usr/local
+ share.files = $$PROJECTROOT/qtc_packaging/common/changelog \
+ $$PROJECTROOT/qtc_packaging/common/copyright \
+ $$PROJECTROOT/qtc_packaging/common/README
+-share.path = /usr/share/doc/$${TARGET}
++share.path = $$[QT_INSTALL_PREFIX]/share/doc/$${TARGET}
+
+ isEqual(TEMPLATE, app) {
+ unix:!symbian {
+@@ -25,9 +25,9 @@ isEqual(TEMPLATE, app) {
+ #debian.files = $$PROJECTROOT/qtc_packaging/fremantle/control
+ } else {
+ desktopfile.files = $$PROJECTROOT/qtc_packaging/debian_generic/$${TARGET}.desktop
+- desktopfile.path = /usr/share/applications
++ desktopfile.path = $$[QT_INSTALL_PREFIX]/share/applications
+ icon.files = $$PROJECTROOT/qtc_packaging/debian_generic/$${TARGET}.png
+- icon.path = /usr/share/icons/hicolor/64x64/apps
++ icon.path = $$[QT_INSTALL_PREFIX]/share/icons/hicolor/64x64/apps
+ #debian.files = $$PROJECTROOT/qtc_packaging/generic/control
+ }
+ INSTALLS += desktopfile icon
+@@ -41,9 +41,9 @@ isEqual(TEMPLATE, app) {
+ isEmpty(SDK_HEADERS) {
+ sdkheaders.files = $$HEADERS
+ }
+- sdkheaders.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
+- sdkheaders_private.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$MODULE_VERSION/$$MODULE_INCNAME/private
+- !plugin: target.path = $$[QT_INSTALL_LIBS]
++ sdkheaders.path = $$[QT_INSTALL_PREFIX]/include/$$MODULE_INCNAME
++ sdkheaders_private.path = $$[QT_INSTALL_PREFIX]/include/$$MODULE_INCNAME/$$MODULE_VERSION/$$MODULE_INCNAME/private
++ !plugin: target.path = $$[QT_INSTALL_PREFIX]/lib
+ INSTALLS += sdkheaders sdkheaders_private
+ }
+ }
+@@ -51,7 +51,7 @@ isEqual(TEMPLATE, app) {
+ INSTALLS *= target share
+
+ for(bin, BIN_INSTALLS) {
+- eval($${bin}.path = $${INSTALL_PREFIX}/bin)
++ eval($${bin}.path = $$[QT_INSTALL_PREFIX]/bin)
+ message("adding $$bin to bin install targets...")
+ INSTALLS += $$bin
+ }
diff --git a/multimedia/QtAV/files/patch-src_libQtAV.pro b/multimedia/QtAV/files/patch-src_libQtAV.pro
new file mode 100644
index 000000000000..1fe42913f44b
--- /dev/null
+++ b/multimedia/QtAV/files/patch-src_libQtAV.pro
@@ -0,0 +1,11 @@
+--- src/libQtAV.pro.orig 2017-04-06 20:20:44 UTC
++++ src/libQtAV.pro
+@@ -18,7 +18,7 @@ staticlib: DEFINES += BUILD_QTAV_STATIC
+ static: CONFIG *= static_ffmpeg
+ INCLUDEPATH += $$[QT_INSTALL_HEADERS]
+ icon.files = $$PWD/$${TARGET}.svg
+-icon.path = /usr/share/icons/hicolor/scalable/apps
++icon.path = $$[QT_INSTALL_PREFIX]/share/icons/hicolor/scalable/apps
+ !contains(QMAKE_HOST.os, Windows):INSTALLS += icon
+
+ #mac: simd.prf will load qt_build_config and the result is soname will prefixed with QT_INSTALL_LIBS and link flag will append soname after QMAKE_LFLAGS_SONAME
diff --git a/multimedia/QtAV/files/patch-tools_install__sdk_install__sdk.pro b/multimedia/QtAV/files/patch-tools_install__sdk_install__sdk.pro
new file mode 100644
index 000000000000..12bc1b713e1e
--- /dev/null
+++ b/multimedia/QtAV/files/patch-tools_install__sdk_install__sdk.pro
@@ -0,0 +1,11 @@
+--- tools/install_sdk/install_sdk.pro.orig 2017-04-06 20:20:44 UTC
++++ tools/install_sdk/install_sdk.pro
+@@ -67,7 +67,7 @@ greaterThan(QT_MAJOR_VERSION, 4) {
+ MODULE_PRF_FILE = $$OUT_PWD/mkspecs/features/$${MODULE}.prf
+ NEW_LIB = $${LIBPREFIX}Qt$${QT_MAJOR_VERSION}$${MODULE_NAME}$${NAME_SUF}.$${LIBSUFFIX}
+ NEW_LIB_D = $${LIBPREFIX}Qt$${QT_MAJOR_VERSION}$${MODULE_NAME}$${NAME_SUF}$${DEBUG_SUF}.$${LIBSUFFIX}
+- MKSPECS_DIR = $$[QT_INSTALL_BINS]/../mkspecs
++ MKSPECS_DIR = $$[QT_INSTALL_ARCHDATA]/mkspecs
+ } else {
+ MODULE_PRF_FILE = $$PWD/qt4/$${MODULE}.prf
+ NEW_LIB = $${ORIG_LIB}
diff --git a/multimedia/QtAV/pkg-descr b/multimedia/QtAV/pkg-descr
new file mode 100644
index 000000000000..780ea977bc62
--- /dev/null
+++ b/multimedia/QtAV/pkg-descr
@@ -0,0 +1,5 @@
+A cross-platform multimedia framework based on Qt and FFmpeg.
+High performance. User & developer friendly. Supports Android,
+iOS, Windows store and desktops.
+
+WWW: https://github.com/wang-bin/QtAV
diff --git a/multimedia/QtAV/pkg-plist b/multimedia/QtAV/pkg-plist
new file mode 100644
index 000000000000..f212f3cab3e6
--- /dev/null
+++ b/multimedia/QtAV/pkg-plist
@@ -0,0 +1,106 @@
+include/QtAV/%%QT_VERSION%%/QtAV/private/AVCompat.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/AVDecoder_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/AVEncoder_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/AVOutput_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/AudioOutputBackend.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/AudioResampler_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/Filter_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/Frame_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/MediaIO_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/OpenGLRendererBase_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/PlayerSubtitle.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/QPainterRenderer_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/SubtitleProcessor.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/VideoRenderer_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/VideoShader_p.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/factory.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/mkid.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/prepost.h
+include/QtAV/%%QT_VERSION%%/QtAV/private/singleton.h
+include/QtAV/AVClock.h
+include/QtAV/AVDecoder.h
+include/QtAV/AVDemuxer.h
+include/QtAV/AVEncoder.h
+include/QtAV/AVError.h
+include/QtAV/AVMuxer.h
+include/QtAV/AVOutput.h
+include/QtAV/AVPlayer.h
+include/QtAV/AVTranscoder.h
+include/QtAV/AudioDecoder.h
+include/QtAV/AudioEncoder.h
+include/QtAV/AudioFormat.h
+include/QtAV/AudioFrame.h
+include/QtAV/AudioOutput.h
+include/QtAV/AudioResampler.h
+include/QtAV/ConvolutionShader.h
+include/QtAV/EncodeFilter.h
+include/QtAV/FactoryDefine.h
+include/QtAV/Filter.h
+include/QtAV/FilterContext.h
+include/QtAV/Frame.h
+include/QtAV/FrameReader.h
+include/QtAV/GLSLFilter.h
+include/QtAV/LibAVFilter.h
+include/QtAV/MediaIO.h
+include/QtAV/OpenGLRendererBase.h
+include/QtAV/OpenGLTypes.h
+include/QtAV/OpenGLVideo.h
+include/QtAV/OpenGLWindowRenderer.h
+include/QtAV/Packet.h
+include/QtAV/QPainterRenderer.h
+include/QtAV/QtAV
+include/QtAV/QtAV.h
+include/QtAV/QtAV_Global.h
+include/QtAV/Statistics.h
+include/QtAV/SubImage.h
+include/QtAV/Subtitle.h
+include/QtAV/SubtitleFilter.h
+include/QtAV/SurfaceInterop.h
+include/QtAV/VideoCapture.h
+include/QtAV/VideoDecoder.h
+include/QtAV/VideoEncoder.h
+include/QtAV/VideoFormat.h
+include/QtAV/VideoFrame.h
+include/QtAV/VideoFrameExtractor.h
+include/QtAV/VideoOutput.h
+include/QtAV/VideoRenderer.h
+include/QtAV/VideoShader.h
+include/QtAV/VideoShaderObject.h
+include/QtAV/dptr.h
+include/QtAV/version.h
+include/QtAVWidgets/GLWidgetRenderer2.h
+include/QtAVWidgets/GraphicsItemRenderer.h
+include/QtAVWidgets/OpenGLWidgetRenderer.h
+include/QtAVWidgets/QtAVWidgets
+include/QtAVWidgets/QtAVWidgets.h
+include/QtAVWidgets/VideoPreviewWidget.h
+include/QtAVWidgets/WidgetRenderer.h
+include/QtAVWidgets/global.h
+include/QtAVWidgets/version.h
+lib/libQtAV.prl
+lib/libQtAV.so
+lib/libQtAV.so.1
+lib/libQtAV.so.1.11
+lib/libQtAV.so.1.11.0
+lib/libQtAVWidgets.prl
+lib/libQtAVWidgets.so
+lib/libQtAVWidgets.so.1
+lib/libQtAVWidgets.so.1.11
+lib/libQtAVWidgets.so.1.11.0
+%%QT_MKSPECDIR%%/features/av.prf
+%%QT_MKSPECDIR%%/features/avwidgets.prf
+%%QT_MKSPECDIR%%/modules/qt_lib_av.pri
+%%QT_MKSPECDIR%%/modules/qt_lib_av_private.pri
+%%QT_MKSPECDIR%%/modules/qt_lib_avwidgets.pri
+%%QT_MKSPECDIR%%/modules/qt_lib_avwidgets_private.pri
+%%QT_QMLDIR%%/QtAV/Video.qml
+%%QT_QMLDIR%%/QtAV/libQmlAV.so
+%%QT_QMLDIR%%/QtAV/plugins.qmltypes
+%%QT_QMLDIR%%/QtAV/qmldir
+%%DOCSDIR%%/README
+%%DOCSDIR%%/changelog
+%%DOCSDIR%%/copyright
+%%DOCSDIR%%Widgets/README
+%%DOCSDIR%%Widgets/changelog
+%%DOCSDIR%%Widgets/copyright
+share/icons/hicolor/scalable/apps/QtAV.svg