\chapter{Software} \section{OBS} Über \Gls{OBS} werden die verschiedenen Videosignale gemischt, aufgenommen und an YouTube geschickt. \subsection{Grundfunktionen} In \Gls{OBS} werden verschiedene Bild-Kompositionen in sogenannten Szenen gespeichert. In einer Szene kann eine vielzahl von verschiedenen Quellen (Sources) verwendet werden, unter anderem: \begin{itemize} \item reine Audioeingänge \item Bildschirmaufnahmen \item Fensteraufnahmen \item Bilder \item Medienquellen (Video- oder Musikdateien) \item NDI (durch \nameref{obs:plugins:ndi}) \item andere Szenen \item Text \item Webcams \item Blackmagic Decklink Videoeingänge \end{itemize} Indem man sich in \Gls{OBS} mit den YouTube-Zugangsdaten anmeldet, kann man in \Gls{OBS} entweder Livestreams erstellen oder einen bereits geplanten Livestream auswählen und diesen streamen. \subsection{Plugins} \Gls{OBS} kann durch verschiedene Plugins in seiner Funktion erweitert werden. Installiert sind: \begin{itemize} \item obs-websocket \item Advanced Scene Switcher \item obs-ndi \item Audio-Monitor \end{itemize} \subsubsection{obs-websocket} \textit{obs-websocket} ermöglicht die Fernsteuerung von OBS durch einen Websocket. Dieser wird zum Beispiel von Companion genutzt, um Szenen zu wechseln oder Informationen über den aktuellen Zustand von OBS zu erlangen. \subsubsection{Advanced Scene Switcher}\label{obs:plugins:ass} Mit \textit{Advanced Scene Switcher} können Abläufe in \Gls{OBS} automatisiert werden. Beispielsweise kann am Ende einer Medienquelle automatisch die Szene gewechselt werden oder Programme beim Schließen von \Gls{OBS} ausgeführt werden. \subsubsection{obs-ndi}\label{obs:plugins:ndi} \textit{obs-ndi} ermöglicht die Nutzung von \Gls{NDI}-Signalen in \Gls{OBS}. Es fügt eine \Gls{NDI}-Source hinzu und ermöglicht eine \Gls{NDI}-Ausgabe einzelner Szenen oder des Programms. \subsubsection{Audio-Monitor} \textit{Audio-Monitor} fügt genau steuerbare Audioabhörmöglichkeiten hinzu. Die Standardmöglichkeiten von OBS sind in einem Untermenü versteckt und müssen erneut aktiviert werden, wenn der Kopfhörer neu eingesteckt wurde. \subsection{Konfiguration} \subsubsection{Intro} Der Ablauf des Intros wird durch \nameref{obs:plugins:ass}-Makros automatisiert. Es muss lediglich wenn die Kirchenglocken ausgeschalten werden zu der Szene \textit{Intro} gewechselt werden. Mit dem Start des Streams wird zur Szene \textit{Glockenläuten} gewechselt. Diese zeigt die Powerpoint, spielt ein Glockenläuten ab und mutet den Mischpultton. Mit dem Ausschalten der (echten) Glocken wird auf die Szene \textit{Intro} gewechselt. Dadurch wird das Intro-Video abgespielt und spielt ein ausklingendes Glockenläuten ab. Nach dessen Ende wird wieder zur PowerPoint zurückgeschalten und der Mischpultton wieder entmutet. \begin{table} \caption{Die Szenen für die Introsequenz} \centering \begin{tabular}{lll} \toprule \multicolumn{1}{c}{Szene} & Quelle & Quellentyp \\ \midrule \textit{Glockenläuten} & \parbox{0.3\textwidth}{PowerPoint\\Glockenläuten-Start.wav\\Glockenläuten-Loop.wav} & \parbox{0.2\textwidth}{Szene\\Medienquelle\\Medienquelle} \\ \midrule \textit{Intro} & \parbox{0.3\textwidth}{Intro.mp4\\Glockenläuten-Ende.wav} & \parbox{0.2\textwidth}{Medienquelle\\Medienquelle} \\ \bottomrule \end{tabular} \end{table} \begin{table} \caption{Die Makros für die Intro-Automatisierung} \centering \begin{tabular}{lll} \toprule \multicolumn{1}{c}{Name} & \multicolumn{1}{c}{Bedingung} & \multicolumn{1}{c}{Aktionen} \\ \midrule \textit{on\_stream\_start} & Streaming gestartet & \parbox{0.5\textwidth}{ Zu Szene \texttt{Glocken\-läuten} wechseln\\ Medienquelle \texttt{Glocken\-läuten\--Start.wav} starten\\ Mikrofon (Mischpult-Ton) entmuten } \\ \midrule \textit{glocke\_intro\_to\_loop} & \parbox{0.25\textwidth}{\texttt{Glocken\-läuten\--Start.wav} ist $t_R = \SI{0,3}{\second}$ vor Ende} & \parbox{0.5\textwidth}{Medienquelle \texttt{Glocken\-läuten\--Loop.wav} starten} \\ \midrule \textit{stop\_glocke\_on\_intro} & Aktive Szene ist \texttt{Intro} & \parbox{0.5\textwidth}{Medienquelle \texttt{Glocken\-läuten\--Loop.wav} stoppen} \\ \midrule \textit{switch\_to\_PP\_after\_intro} & \parbox{0.25\textwidth}{Medienquelle \texttt{Intro.mp4} ist zu Ende} & \parbox{0.5\textwidth}{ Zu Szene \texttt{PowerPoint} wechseln\\ Mikrofon (Mischpult-Ton) entmuten } \\ \bottomrule \end{tabular} \end{table} \subsubsection{PTZ-Kamera parken} Mit einem \nameref{obs:plugins:ass}-Makro wird die \Gls{PTZ-Kamera} beim Schließen von OBS in eine Park-Position gefahren. Siehe hierzu auch \nameref{cam:ptz:park}. \section{PPT NDI} Alle Text-Einblendungen werden mit PowerPoint erstellt. Eine Vorlage befindet sich im Google-Drive Verzeichnis. PPT NDI läd eine PowerPoint-Präsentation und spielt diese über \Gls{NDI} aus. Dieses \Gls{NDI}-Signal lässt sich wiederrum in \Gls{OBS} einbinden. Dies hat den Vorteil, dass kein Extra-Bildschirm freigehalten werden muss, auf dem PowerPoint läuft und abgefilmt wird. Die Shortcuts, um die Folien zu wechseln, sind auf dem Streamdeck programmiert. \section{Youlean-Loudness-Meter} \textit{Youlean-Loudness-Meter} ist ein \Gls{VST-Plugin}, welches die \Gls{Lautheit} eines Audiosignals plottet \section{PTZOptics-Control Pane} \textit{PTZOptics-Control Pane} ist die hauseigene Software von PTZOptics, um deren \Glsplural{PTZ-Kamera} zu steuern. Es können sowohl Pan, Tilt und Zoom, als auch tiefergehende Funktionen wie Weißabgleich, Belichtung oder das Menü gesteuert werden.