jibri: import version 8.0

Jibri provides services for recording or streaming a Jitsi Meet conference.

It works by launching a Chrome instance rendered in a virtual framebuffer and
capturing and encoding the output with ffmpeg. It is intended to be run on a
separate machine (or a VM), with no other applications using the display or
audio devices. Only one recording at a time is supported on a single jibri.
This commit is contained in:
Pierre Pronchery 2020-11-22 04:03:39 +01:00
parent afc9f2efe9
commit ac4ab37250
5 changed files with 99 additions and 0 deletions

View File

@ -1682,6 +1682,7 @@ SUBDIR+= jetbrains-mono-ttf
SUBDIR+= jfsw-git
SUBDIR+= jgloss
SUBDIR+= jgraphx
SUBDIR+= jibri
SUBDIR+= jicofo
SUBDIR+= jitsi
SUBDIR+= jitsi-meet

6
jibri/DESCR Normal file
View File

@ -0,0 +1,6 @@
Jibri provides services for recording or streaming a Jitsi Meet conference.
It works by launching a Chrome instance rendered in a virtual framebuffer and
capturing and encoding the output with ffmpeg. It is intended to be run on a
separate machine (or a VM), with no other applications using the display or
audio devices. Only one recording at a time is supported on a single jibri.

78
jibri/Makefile Normal file
View File

@ -0,0 +1,78 @@
# $NetBSD$
GITHUB_PROJECT= jibri
GITHUB_TAG= v8.0
DISTNAME= v8.0
PKGNAME= ${GITHUB_PROJECT}-${DISTNAME:S,^v,,}
CATEGORIES= chat
MASTER_SITES= ${MASTER_SITE_GITHUB:=jitsi/}
DIST_SUBDIR= ${GITHUB_PROJECT}
MAINTAINER= khorben@defora.org
HOMEPAGE= https://github.com/jitsi/jibri/
COMMENT= Jitsi BRoadcasting Infrastructure
LICENSE= apache-2.0
WRKSRC= ${WRKDIR}/jibri-8.0
USE_TOOLS= bash:run
USE_JAVA2= 8
REPLACE_BASH= resources/debian-package/opt/jitsi/jibri/launch.sh
SUBST_CLASSES+= launch
SUBST_STAGE.launch= post-configure
SUBST_FILES.launch= resources/debian-package/opt/jitsi/jibri/launch.sh
SUBST_SED.launch= -e 's,^exec java,exec ${JAVA_BINPREFIX}-java,'
SUBST_SED.launch+= -e 's,=/etc/,=${PKG_SYSCONFDIR}/,'
SUBST_SED.launch+= -e 's,=/opt/jitsi/jibri/,=${PREFIX}/share/jibri/,g'
TOOL_DEPENDS+= apache-maven-[0-9]*:../../devel/apache-maven
MAVEN_FLAGS+= -DskipTests
MAVEN_FLAGS+= -Djavax.net.ssl.trustStore=${WRKDIR}/keystore
MAVEN_FLAGS+= -Djavax.net.ssl.trustStorePassword=password
EGDIR= share/examples/jibri
CONF_FILES= ${EGDIR}/asoundrc ${PKG_SYSCONFDIR}/jitsi/jibri/asoundrc
CONF_FILES+= ${EGDIR}/config.json \
${PKG_SYSCONFDIR}/jitsi/jibri/config.json
CONF_FILES+= ${EGDIR}/logging.properties \
${PKG_SYSCONFDIR}/jitsi/jibri/logging.properties
CONF_FILES+= ${EGDIR}/xorg-video-dummy.conf \
${PKG_SYSCONFDIR}/jitsi/jibri/xorg-video-dummy.conf
INSTALLATION_DIRS+= bin
INSTALLATION_DIRS+= ${EGDIR}
INSTALLATION_DIRS+= share/jibri
do-configure:
#XXX this assumes trusted CA certificates are in /etc/openssl/certs
cd ${WRKSRC} && \
for cert in /etc/openssl/certs/*.0; do \
/usr/pkg/java/openjdk11/bin/keytool -importcert \
-keystore ${WRKDIR}/keystore \
-noprompt -trustcacerts \
-storepass password -file "$$cert" \
-alias $$(basename "$$cert"); done
do-build:
cd ${WRKSRC} && \
mvn package ${MAVEN_FLAGS}
do-install:
${INSTALL_DATA} ${WRKSRC}/lib/logging.properties \
${DESTDIR}${PREFIX}/${EGDIR}/logging.properties
${INSTALL_DATA} ${WRKSRC}/resources/debian-package/etc/jitsi/jibri/asoundrc \
${DESTDIR}${PREFIX}/${EGDIR}/asoundrc
${INSTALL_DATA} ${WRKSRC}/resources/debian-package/etc/jitsi/jibri/config.json \
${DESTDIR}${PREFIX}/${EGDIR}/config.json
${INSTALL_DATA} ${WRKSRC}/resources/debian-package/etc/jitsi/jibri/xorg-video-dummy.conf \
${DESTDIR}${PREFIX}/${EGDIR}/xorg-video-dummy.conf
${INSTALL_SCRIPT} ${WRKSRC}/resources/debian-package/opt/jitsi/jibri/launch.sh \
${DESTDIR}${PREFIX}/bin/jibri
${INSTALL_DATA} ${WRKSRC}/target/jibri-8.0-SNAPSHOT-jar-with-dependencies.jar \
${DESTDIR}${PREFIX}/share/jibri/jibri.jar
.include "../../mk/java-vm.mk"
.include "../../mk/bsd.pkg.mk"

8
jibri/PLIST Normal file
View File

@ -0,0 +1,8 @@
@comment $NetBSD$
bin/jibri
share/examples/jibri/asoundrc
share/examples/jibri/config.json
share/examples/jibri/logging.properties
share/examples/jibri/xorg-video-dummy.conf
share/jibri/jibri.jar
@pkgdir etc/jitsi/jibri

6
jibri/distinfo Normal file
View File

@ -0,0 +1,6 @@
$NetBSD$
SHA1 (jibri/v8.0.tar.gz) = 885d2d12060133d2fc67d4c074e3c2f2ad8e2b07
RMD160 (jibri/v8.0.tar.gz) = 16c1543d0fe6bac0b7ae6cde3177fd2f41236491
SHA512 (jibri/v8.0.tar.gz) = 5d152c571c4eaaa45c26afe049daf1018d7bc650c0b663686c8869d7e371098824c9e63e013a3d84344f64beeb5d70c70fcd5997ddb29eea55e97cd1b706aef6
Size (jibri/v8.0.tar.gz) = 74132 bytes