mirror of
https://github.com/yann64/haikuports.git
synced 2026-05-04 22:18:55 +02:00
QtAV: new recipe (#870)
This commit is contained in:
175
media-video/qtav/qtav-1.11.0.recipe
Normal file
175
media-video/qtav/qtav-1.11.0.recipe
Normal file
@@ -0,0 +1,175 @@
|
||||
SUMMARY="A cross-platform multimedia framework"
|
||||
DESCRIPTION="QtAV is a multimedia playback library based on Qt and FFmpeg. \
|
||||
It can help you to write a player with less effort than ever \
|
||||
before.
|
||||
|
||||
QtAV can meet your most demands:
|
||||
|
||||
* Hardware decoding suppprt: DXVA2, VAAPI, VDA/VideoToolbox, CedarX, CUDA
|
||||
* OpenGL and ES2 support for almost all formats including Hi10P videos
|
||||
* Real time preview
|
||||
* Video capture in rgb and yuv format
|
||||
* OSD and custom filters
|
||||
* Filters in libavfilter, for example stero3d, blur
|
||||
* Subtitle track select. Dynamic change FFmpeg and libass engine
|
||||
* Play frame by frame
|
||||
* Playback speed control
|
||||
* Variant streams: locale file, http, rtsp etc. and your custom streams
|
||||
* Audio channel, tracks and external audio tracks
|
||||
* Dynamically change render engine when playing.
|
||||
* Dynamically change video decoder
|
||||
* Multiple video outputs for 1 player
|
||||
* Video eq(software and OpenGL): brightness, contrast, saturation, hue
|
||||
* QML support. Most playback APIs are compatible with QtMultimedia module
|
||||
* Compatiblity: QtAV can be built with both Qt4 and Qt5, FFmpeg(>=1.0) \
|
||||
and Libav (>=9.0). Latest FFmpeg release is recommended.
|
||||
|
||||
Extensible Framework
|
||||
|
||||
Some components in QtAV are designed to be extensible. For example, \
|
||||
you can write your decoder, audio output for particular platform."
|
||||
HOMEPAGE="http://www.qtav.org/"
|
||||
COPYRIGHT="2013-2014 Wang Bin"
|
||||
LICENSE="GNU LGPL v2.1"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://github.com/wang-bin/QtAV/archive/v$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="888675b2734940c693eec24f8b35a434a428f6827868876e149e0979d629bba5"
|
||||
SOURCE_DIR="QtAV-1.11.0"
|
||||
|
||||
ARCHITECTURES="!x86_gcc2 x86 ?x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
qtav$secondaryArchSuffix = $portVersion
|
||||
lib:libqtav$secondaryArchSuffix = 1.11.0 compat >= 1
|
||||
lib:libqtavwidgets$secondaryArchSuffix = 1.11.0 compat >= 1
|
||||
cmd:ao$secondaryArchSuffix = $portVersion
|
||||
cmd:audiopipeline$secondaryArchSuffix = $portVersion
|
||||
cmd:decoder$secondaryArchSuffix = $portVersion
|
||||
cmd:extract$secondaryArchSuffix = $portVersion
|
||||
cmd:filters$secondaryArchSuffix = $portVersion
|
||||
cmd:framereader$secondaryArchSuffix = $portVersion
|
||||
cmd:glslfilter$secondaryArchSuffix = $portVersion
|
||||
cmd:player$secondaryArchSuffix = $portVersion
|
||||
cmd:playerthread$secondaryArchSuffix = $portVersion
|
||||
cmd:qiodevice$secondaryArchSuffix = $portVersion
|
||||
cmd:qmlplayer$secondaryArchSuffix = $portVersion
|
||||
cmd:qrc$secondaryArchSuffix = $portVersion
|
||||
cmd:shader$secondaryArchSuffix = $portVersion
|
||||
cmd:sharedoutput$secondaryArchSuffix = $portVersion
|
||||
cmd:simpleplayer$secondaryArchSuffix = $portVersion
|
||||
cmd:simpletranscode$secondaryArchSuffix = $portVersion
|
||||
cmd:subtitle$secondaryArchSuffix = $portVersion
|
||||
cmd:transcode$secondaryArchSuffix = $portVersion
|
||||
cmd:videocapture$secondaryArchSuffix = $portVersion
|
||||
cmd:videographicsitem$secondaryArchSuffix = $portVersion
|
||||
cmd:videogroup$secondaryArchSuffix = $portVersion
|
||||
cmd:videowall$secondaryArchSuffix = $portVersion
|
||||
cmd:window$secondaryArchSuffix = $portVersion
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
qt5$secondaryArchSuffix
|
||||
lib:libass$secondaryArchSuffix
|
||||
lib:libavcodec$secondaryArchSuffix
|
||||
lib:libavdevice$secondaryArchSuffix
|
||||
lib:libavfilter$secondaryArchSuffix
|
||||
lib:libavformat$secondaryArchSuffix
|
||||
lib:libpostproc$secondaryArchSuffix
|
||||
lib:libavresample$secondaryArchSuffix
|
||||
lib:libswresample$secondaryArchSuffix
|
||||
lib:libswscale$secondaryArchSuffix
|
||||
lib:libavutil$secondaryArchSuffix
|
||||
lib:libgl$secondaryArchSuffix
|
||||
lib:libopenal$secondaryArchSuffix
|
||||
lib:libuchardet$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_devel="
|
||||
qtav$secondaryArchSuffix = $portVersion
|
||||
devel:libqtav$secondaryArchSuffix = 1.11.0 compat >= 1
|
||||
devel:libqtavwidgets$secondaryArchSuffix = 1.11.0 compat >= 1
|
||||
"
|
||||
REQUIRES_devel="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
qt5${secondaryArchSuffix}_devel
|
||||
devel:libass$secondaryArchSuffix
|
||||
devel:libavcodec$secondaryArchSuffix
|
||||
devel:libavdevice$secondaryArchSuffix
|
||||
devel:libavfilter$secondaryArchSuffix
|
||||
devel:libavformat$secondaryArchSuffix
|
||||
devel:libpostproc$secondaryArchSuffix
|
||||
devel:libavresample$secondaryArchSuffix
|
||||
devel:libswresample$secondaryArchSuffix
|
||||
devel:libswscale$secondaryArchSuffix
|
||||
devel:libavutil$secondaryArchSuffix
|
||||
devel:libgl$secondaryArchSuffix
|
||||
devel:libopenal$secondaryArchSuffix
|
||||
devel:libuchardet$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
qt5${secondaryArchSuffix}_devel
|
||||
devel:libass$secondaryArchSuffix
|
||||
devel:libavcodec$secondaryArchSuffix
|
||||
devel:libavdevice$secondaryArchSuffix
|
||||
devel:libavfilter$secondaryArchSuffix
|
||||
devel:libavformat$secondaryArchSuffix
|
||||
devel:libpostproc$secondaryArchSuffix
|
||||
devel:libavresample$secondaryArchSuffix
|
||||
devel:libswresample$secondaryArchSuffix
|
||||
devel:libswscale$secondaryArchSuffix
|
||||
devel:libavutil$secondaryArchSuffix
|
||||
devel:libgl$secondaryArchSuffix
|
||||
devel:libopenal$secondaryArchSuffix
|
||||
devel:libuchardet$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:find
|
||||
cmd:g++$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:qmake$secondaryArchSuffix >= 5.5
|
||||
cmd:xargs
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
mkdir -p build
|
||||
cd build
|
||||
qmake ..
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
cd build
|
||||
|
||||
mkdir -p $libDir
|
||||
mkdir -p $includeDir
|
||||
mkdir -p $dataDir/qml/QtAV/
|
||||
mkdir -p $binDir
|
||||
|
||||
cp -f lib_unix*/*Qt*AV*.so* $libDir/
|
||||
cp -R tools/install_sdk/mkspecs $dataDir/Qt5/
|
||||
cp -f ../qml/plugins.qmltypes $dataDir/qml/QtAV/
|
||||
cp -R ../src/QtAV/ $includeDir/
|
||||
cp -R ../widgets/QtAVWidgets/ $includeDir/
|
||||
cp -f -R bin/QtAV $dataDir/qml
|
||||
rm -rf bin/QtAV
|
||||
cp -f bin/* $binDir/
|
||||
|
||||
prepareInstalledDevelLibs \
|
||||
libQtAV \
|
||||
libQtAVWidgets
|
||||
|
||||
# devel package
|
||||
packageEntries devel \
|
||||
$developDir
|
||||
}
|
||||
|
||||
TEST()
|
||||
{
|
||||
make check
|
||||
}
|
||||
Reference in New Issue
Block a user