1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-03 06:04:53 +00:00

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
This commit is contained in:
Tobias C. Berner 2017-04-07 19:57:04 +00:00
parent a41d430c77
commit 4410daad3e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=437956
8 changed files with 232 additions and 0 deletions

View File

@ -354,6 +354,7 @@
SUBDIR += qt5-phonon4-designerplugin
SUBDIR += qt5-phonon4-gstreamer
SUBDIR += qt5-phonon4-vlc
SUBDIR += QtAV
SUBDIR += quark
SUBDIR += quodlibet
SUBDIR += quvi

50
multimedia/QtAV/Makefile Normal file
View File

@ -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>

3
multimedia/QtAV/distinfo Normal file
View File

@ -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

View File

@ -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
}

View File

@ -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

View File

@ -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}

View File

@ -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

106
multimedia/QtAV/pkg-plist Normal file
View File

@ -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