From e5e2bc620d7541a88e67b31b05a940f3684f37ed Mon Sep 17 00:00:00 2001 From: David Runge Date: Thu, 6 Jul 2017 18:01:56 +0200 Subject: thesis/thesis.tex: Adding content for subsubsection assigning in- and outputs on the fly. --- thesis/thesis.tex | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/thesis/thesis.tex b/thesis/thesis.tex index 2245348..a596240 100644 --- a/thesis/thesis.tex +++ b/thesis/thesis.tex @@ -1982,6 +1982,46 @@ ssr-aap -N “server” -C “127.0.0.1:50002” \subsubsection{Assigning in- and outputs on the fly} \label{subsubsec:assigning_in_and_outputs_on_the_fly} + The \gls{ssr}, being a \gls{jack} client, is able to add inputs for its + sources and outputs for its renderers according to the configuration + variables \mintinline{yaml}{INPUT_PREFIX} and + \mintinline{yaml}{OUTPUT_PREFIX}, as shown in + Listing~\ref{lst:ssr.conf.example}.\\ + + \begin{listing}[!htb] + \begin{mdframed} + \inputminted[numbers=left, firstline=44, lastline=50, + fontsize=\footnotesize, + breaklines]{yaml}{../../ssr/data/ssr.conf.example} + \end{mdframed} + \caption{data/ssr.conf.example: \gls{jack} settings in the \gls{ssr} + configuration file} + \label{lst:ssr.conf.example} + \end{listing}\\ + + The approach however is somewhat static, as it only allows setting up + one predefined client during startup. This can be the system's hardware + in- and outputs or other \gls{jack} clients. The selected input name is + added to the prefix to connect a \gls{ssr} source to a \gls{jack} + client output with that name. Following the configuration file example, + given a source input name of \mintinline{yaml}{1}, the \gls{ssr} would + connect to the \gls{jack} client port named + \mintinline{yaml}{alsa_pcm:capture_1}.\\ + Dynamically reassigning source input or renderer output connections is + only possible by using external tools, able to handle connections of a + \gls{jack} session, such as QjackCtl \citep{website:qjackctl}, Patchage + \citep{website:patchage} or aj-snapshot \citep{website:aj-snapshot}.\\ + Every \gls{jack} client is allowed to make connections to other clients + on the same server on its own. This general feature should be harnessed + in the case of the \gls{ssr} to allow assigning and reassigning of + source inputs and renderer outputs on the fly and exposing this + functionality to the \gls{osc} interface (i.e.\ by modifying and + extending the \gls{pubsub} interface).\\ + This would make the application more dynamic and allow easier scripting + of scenes and reproduction setups alike. This becomes especially useful + in the case of listening experiments, as the experiments will not have + to rely on a mixture of different scripting languages anymore (e.g.\ + see experimental setup in attachment of \citep{DmitryGrigoriev1896}). \subsubsection{Interpolation of moving sources} \label{subsubsec:interpolation_of_moving_sources} -- cgit v1.2.3-54-g00ecf