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-2017 Wang Bin" LICENSE="GNU LGPL v2.1" REVISION="3" SOURCE_URI="https://github.com/wang-bin/QtAV/archive/v$portVersion.tar.gz" CHECKSUM_SHA256="65ab859985d73521c2d17e72117baae0f3f6242b69f59994acada76fa5364193" SOURCE_DIR="QtAV-$portVersion" 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 }