From ffbceb3c1d0887b5db7995fa850ed04a26aca212 Mon Sep 17 00:00:00 2001 From: Jimi Huotari Date: Fri, 17 Jun 2016 00:18:05 +0300 Subject: [PATCH] media-video/obs-studio: New package. OBS Studio provides a simple to use Qt5 user interface for video and audio capturing, including live-streaming them to on-line services such as Twitch.tv. Base for ebuild from https://github.com/saintdev/obs-studio-overlay. Gentoo-Bug: https://bugs.gentoo.org/575226 Package-Manager: portage-2.2.28 Closes: https://github.com/gentoo/gentoo/pull/1690 Signed-off-by: Patrice Clement --- media-video/obs-studio/Manifest | 1 + media-video/obs-studio/metadata.xml | 25 ++++++ .../obs-studio/obs-studio-0.14.2.ebuild | 83 +++++++++++++++++++ media-video/obs-studio/obs-studio-9999.ebuild | 83 +++++++++++++++++++ 4 files changed, 192 insertions(+) create mode 100644 media-video/obs-studio/Manifest create mode 100644 media-video/obs-studio/metadata.xml create mode 100644 media-video/obs-studio/obs-studio-0.14.2.ebuild create mode 100644 media-video/obs-studio/obs-studio-9999.ebuild diff --git a/media-video/obs-studio/Manifest b/media-video/obs-studio/Manifest new file mode 100644 index 000000000000..23cba8fa7d0d --- /dev/null +++ b/media-video/obs-studio/Manifest @@ -0,0 +1 @@ +DIST obs-studio-0.14.2.tar.gz 3406086 SHA256 b4076f1b92e9566f9f3c3c4cfb5e123210e149bb3cec3f9fb5d6cd6394b268b1 SHA512 17548841d81073595282cbe4f2f217a67b5a3050e5660b43affa1501cb88bfb8d2728d610e758ebc217733f7a50945b9078d28285a76fbc5fe0c104570faba32 WHIRLPOOL cc6a0e93274f8abc06af4ac802cbbf8f5195848b805642399f4daa503562ec747ce7f1791fc30cf316f2fd80d4576ab05b7c89da98f2adda971fa62ae9c1ff86 diff --git a/media-video/obs-studio/metadata.xml b/media-video/obs-studio/metadata.xml new file mode 100644 index 000000000000..2ab91340693d --- /dev/null +++ b/media-video/obs-studio/metadata.xml @@ -0,0 +1,25 @@ + + + + + chiitoo@gentoo.org + Jimi Huotari + + + proxy-maint@gentoo.org + Proxy Maintainers + + + A rewrite of what was formerly known as "Open Broadcaster Software", + software originally designed for recording and streaming live video + content, efficiently. Aims to be multi-platform, and improved upon + internally. + + + Enable libfdk support for AAC encoding. + Use ImageMagick for image loading instead of FFmpeg. + + + jp9000/obs-studio + + diff --git a/media-video/obs-studio/obs-studio-0.14.2.ebuild b/media-video/obs-studio/obs-studio-0.14.2.ebuild new file mode 100644 index 000000000000..738501dcba0a --- /dev/null +++ b/media-video/obs-studio/obs-studio-0.14.2.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="6" + +inherit cmake-utils + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/jp9000/obs-studio.git" + EGIT_SUBMODULES=() +else + SRC_URI="https://github.com/jp9000/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Software for Recording and Streaming Live Video Content" +HOMEPAGE="https://obsproject.com" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+alsa fdk imagemagick jack pulseaudio truetype v4l" + +DEPEND=" + >=dev-libs/jansson-2.5 + dev-qt/qtcore:5 + dev-qt/qtdeclarative:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5 + dev-qt/qtnetwork:5 + dev-qt/qtquickcontrols:5 + dev-qt/qtsql:5 + dev-qt/qttest:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + media-libs/x264:= + media-video/ffmpeg:= + x11-libs/libXcomposite + x11-libs/libXinerama + x11-libs/libXrandr + alsa? ( media-libs/alsa-lib ) + fdk? ( media-libs/fdk-aac:= ) + imagemagick? ( media-gfx/imagemagick:= ) + jack? ( virtual/jack ) + pulseaudio? ( media-sound/pulseaudio ) + truetype? ( + media-libs/fontconfig + media-libs/freetype + ) + v4l? ( media-libs/libv4l ) +" +RDEPEND="${DEPEND}" + +src_prepare() { + CMAKE_REMOVE_MODULES_LIST=(FindFreetype) + + cmake-utils_src_prepare +} + +src_configure() { + local libdir="$(get_libdir)" + local mycmakeargs=( + -DDISABLE_ALSA="$(usex !alsa)" + -DDISABLE_FREETYPE="$(usex !truetype)" + -DDISABLE_JACK="$(usex !jack)" + -DDISABLE_LIBFDK="$(usex !fdk)" + -DDISABLE_PULSEAUDIO="$(usex !pulseaudio)" + -DDISABLE_V4L2="$(usex !v4l)" + -DLIBOBS_PREFER_IMAGEMAGICK="$(usex imagemagick)" + -DOBS_MULTIARCH_SUFFIX="${libdir#lib}" + -DUNIX_STRUCTURE=1 + ) + + cmake-utils_src_configure +} + +pkg_postinst() { + if ! use alsa && ! use pulseaudio; then + elog "To be able to use the audio capture features, either the" + elog "'alsa' or the 'pulseaudio' USE-flag needs to be enabled." + fi +} diff --git a/media-video/obs-studio/obs-studio-9999.ebuild b/media-video/obs-studio/obs-studio-9999.ebuild new file mode 100644 index 000000000000..738501dcba0a --- /dev/null +++ b/media-video/obs-studio/obs-studio-9999.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="6" + +inherit cmake-utils + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/jp9000/obs-studio.git" + EGIT_SUBMODULES=() +else + SRC_URI="https://github.com/jp9000/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Software for Recording and Streaming Live Video Content" +HOMEPAGE="https://obsproject.com" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+alsa fdk imagemagick jack pulseaudio truetype v4l" + +DEPEND=" + >=dev-libs/jansson-2.5 + dev-qt/qtcore:5 + dev-qt/qtdeclarative:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5 + dev-qt/qtnetwork:5 + dev-qt/qtquickcontrols:5 + dev-qt/qtsql:5 + dev-qt/qttest:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + media-libs/x264:= + media-video/ffmpeg:= + x11-libs/libXcomposite + x11-libs/libXinerama + x11-libs/libXrandr + alsa? ( media-libs/alsa-lib ) + fdk? ( media-libs/fdk-aac:= ) + imagemagick? ( media-gfx/imagemagick:= ) + jack? ( virtual/jack ) + pulseaudio? ( media-sound/pulseaudio ) + truetype? ( + media-libs/fontconfig + media-libs/freetype + ) + v4l? ( media-libs/libv4l ) +" +RDEPEND="${DEPEND}" + +src_prepare() { + CMAKE_REMOVE_MODULES_LIST=(FindFreetype) + + cmake-utils_src_prepare +} + +src_configure() { + local libdir="$(get_libdir)" + local mycmakeargs=( + -DDISABLE_ALSA="$(usex !alsa)" + -DDISABLE_FREETYPE="$(usex !truetype)" + -DDISABLE_JACK="$(usex !jack)" + -DDISABLE_LIBFDK="$(usex !fdk)" + -DDISABLE_PULSEAUDIO="$(usex !pulseaudio)" + -DDISABLE_V4L2="$(usex !v4l)" + -DLIBOBS_PREFER_IMAGEMAGICK="$(usex imagemagick)" + -DOBS_MULTIARCH_SUFFIX="${libdir#lib}" + -DUNIX_STRUCTURE=1 + ) + + cmake-utils_src_configure +} + +pkg_postinst() { + if ! use alsa && ! use pulseaudio; then + elog "To be able to use the audio capture features, either the" + elog "'alsa' or the 'pulseaudio' USE-flag needs to be enabled." + fi +} -- 2.26.2