diff options
author | David Runge <dave@sleepmap.de> | 2017-06-19 22:18:03 +0200 |
---|---|---|
committer | David Runge <dave@sleepmap.de> | 2017-06-19 22:18:03 +0200 |
commit | 8e7760e8922b8dd900ce5af5008511696c6f694f (patch) | |
tree | f795dfd28120a674b40c2493aed5bf6fd0c137c2 /thesis | |
parent | a21aab0cb3fab439b981c4d4e702ee4c516f1a6f (diff) | |
download | master-thesis-8e7760e8922b8dd900ce5af5008511696c6f694f.tar.gz master-thesis-8e7760e8922b8dd900ce5af5008511696c6f694f.tar.bz2 master-thesis-8e7760e8922b8dd900ce5af5008511696c6f694f.tar.xz master-thesis-8e7760e8922b8dd900ce5af5008511696c6f694f.zip |
thesis/thesis.tex: Adding fancyhdr. Adding minted for listing source code. Adding AAP and NFC-HOA acronyms. Adding Roman page numbering for everything up to TOC. Moving lists before toc. Adding subsubsection about Starting the SSR (with client/server paragraphs). Adding code block for enum class MessageLevel. Adding more info on osc messaging. Adding remaining OSC messages in tables. Adding appendix.
Diffstat (limited to 'thesis')
-rw-r--r-- | thesis/thesis.tex | 117 |
1 files changed, 89 insertions, 28 deletions
diff --git a/thesis/thesis.tex b/thesis/thesis.tex index 4ba79f3..86ecd0d 100644 --- a/thesis/thesis.tex +++ b/thesis/thesis.tex @@ -1,9 +1,11 @@ -\documentclass[12pt,a4paper,oneside,titlepage]{paper} +\documentclass[11pt, a4paper, oneside, titlepage, listof=totoc, headinclude, +open=right, glossaries=totoc, captions=tableheading, final, BCOR=10mm, +parskip=never]{paper} \usepackage[english]{babel} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{textcomp} -\usepackage[dvipsnames,table]{xcolor} +\usepackage[usenames,dvipsnames,svgnames,table]{xcolor} \definecolor{osc-out}{RGB}{150,0,255} \definecolor{osc-in}{RGB}{0,0,255} \definecolor{audio-in}{RGB}{255,0,0} @@ -13,21 +15,16 @@ \definecolor{table-background-one}{RGB}{194,195,194} \definecolor{table-background-two}{RGB}{210,213,210} -\usepackage{listings} -\lstdefinelanguage{Ini}{basicstyle=\ttfamily\tiny, - columns=fullflexible, - tag=[s]{[]}, - tagstyle=\color{blue}\bfseries, - usekeywordsintag=true -}[html] -\lstdefinelanguage{bash}{basicstyle=\ttfamily\tiny} +\usepackage[cache=false,newfloat=true]{minted} +\usepackage{mdframed} -\usepackage{ulem} -\usepackage{lmodern} -\usepackage{multirow} +\usepackage{fancyhdr} +%\usepackage{ulem} +%\usepackage{lmodern} \usepackage{url} \usepackage{graphicx} \usepackage{pdfpages} +\usepackage{mathtools} \usepackage{float} \floatstyle{boxed} @@ -43,6 +40,7 @@ % glossary \usepackage[acronym,nonumberlist,toc]{glossaries} +\newacronym{aap}{AAP}{Ambisonics Amplitude Panning} \newacronym{adat}{ADAT}{Alesis Digital Audio Tape} \newacronym{alsa}{ALSA}{Advanced Linux Sound Architecture} \newacronym{api}{API}{Application programming interface} @@ -62,6 +60,7 @@ \newacronym{ip}{IP}{Internet Protocol} \newacronym{jack}{JACK}{JACK Audio Connection Kit} \newacronym{madi}{MADI}{Multichannel Audio Digital Interface} +\newacronym{nfc-hoa}{NFC-HOA}{Near-field-corrected Higher Order Ambisonics} \newacronym{oop}{OOP}{Object-oriented Programming} \newacronym{os}{OS}{Operating System} \newacronym{osc}{OSC}{Open Sound Control} @@ -81,6 +80,8 @@ \graphicspath{{../images//}} \begin{document} + \pagenumbering{Roman} + \pagestyle{empty} \begin{titlepage} \centering \includegraphics[width=0.3\textwidth]{tu-berlin-logo.pdf}\par\vspace{1cm} @@ -100,7 +101,6 @@ {\large \today\par} \end{titlepage} - \pagestyle{empty} \section*{Eidesstattliche Erklärung} \vspace{1cm} Hiermit erkläre ich, dass ich die vorliegende Arbeit selbstständig und @@ -110,6 +110,10 @@ \vspace{2cm} \noindent\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\\ David Runge + \newpage + + Thanks + \newpage \begin{abstract} \gls{wfs} as a technological concept has been around for @@ -128,6 +132,7 @@ This work is about the extension of the SoundScape Renderer's functionality to turn it into a networking application for large scale \gls{wfs} setups. \end{abstract} + \newpage \renewcommand{\abstractname}{Zusammenfassung} \begin{abstract} @@ -147,11 +152,39 @@ This work is about the extension of the SoundScape Renderer's functionality to turn it into a networking application for large scale \gls{wfs} setups. \end{abstract} + \newpage + + \setcounter{page}{1} + \pagestyle{plain} + \printglossaries + \newpage + \phantomsection + \addcontentsline{toc}{section}{\listtablename} + \listoftables + \newpage + + \phantomsection + \addcontentsline{toc}{section}{\listfigurename} + \listoffigures + \newpage + + \phantomsection + \addcontentsline{toc}{section}{\listlistingname} + \listoflistings + \newpage + + \pagestyle{empty} + { + \renewcommand{\thispagestyle}[1]{} + \tableofcontents + \newpage + } - \tableofcontents - \cleardoublepage \pagestyle{headings} \setcounter{page}{1} + \pagenumbering{arabic} + \renewcommand{\theFancyVerbLine}{\textcolor{gray}{\scriptsize\arabic{FancyVerbLine}}} + \RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm} \section{Introduction} \label{sec:introduction} @@ -567,6 +600,19 @@ version, instead of the current stable version of liblo was chosen for the implementation. + \subsubsection{Starting the SSR} + \label{subsubsec:starting-the-ssr} + The \gls{ssr} can be started with a rendering engine preselected (an + executable postfixed by the rendering acronym), or by selecting one + through the configuration file, when using the executable named + \textbf{ssr}. This way \gls{aap}, \gls{bs}, \gls{brs}, generic, + \gls{nfc-hoa}, \gls{vbap}, \gls{wfs} renderers become available.\\ + + \paragraph{Client instance} + \label{para:client-instance} + \paragraph{Server instance} + \label{para:server-instance} + \subsubsection{Setups} \label{subsubsec:setups} The \gls{ssr} offers the possibility for many different \gls{osc} @@ -735,10 +781,18 @@ To be able to distinguish between types of clients and servers, several message levels were implemented for the \gls{osc} interface conceived in the course of this work.\\ - The \textit{enumeration class} MessageLevel in - \textit{src/ssr\_global.h} defines the four types \textit{CLIENT}, + The \textit{enumeration class} MessageLevel (see + Listing~\ref{lst:ssr_global.h}) defines the four types \textit{CLIENT}, \textit{GUI\_CLIENT}, \textit{SERVER}, \textit{GUI\_SERVER}, (in ascending order).\\ + \begin{listing}[!htb] + \begin{mdframed} + \inputminted[numbers=left, firstline=54, lastline=60, + fontsize=\footnotesize]{c++}{../../ssr/src/ssr_global.h} + \end{mdframed} + \caption{src/ssr\_global.h: enum class MessageLevel} + \label{lst:ssr_global.h} + \end{listing}\\ \gls{ssr} client instances subscribe to (\gls{ssr}) server instances with the \textit{MessageLevel} \textit{CLIENT} by default. Server instances get the \textit{MessageLevel} \textit{SERVER} assigned @@ -773,7 +827,13 @@ understood by client or server (or a context dependant meaning), most of the messages understood by the \nameref{subsec:ip-interface} could be implemented. Additional features, related to the server-client setup - were integrated as well. + were integrated as well.\\ + When starting a \gls{ssr} server instance (see + \nameref{para:server-instance}), it responds to the messages shown in + Table~\ref{tab:ssr-osc-subscribe}, + Table~\ref{tab:ssr-osc-scene}, + Table~\ref{tab:ssr-osc-processing-tracker-transport}, + Table~\ref{tab:ssr-osc-reference} and Table~\ref{tab:ssr-osc-update}. \begin{table}[!htb] \scriptsize @@ -805,8 +865,8 @@ \end{tabular} \caption{\gls{osc} messages relevant for subscribing and setting of message levels for clients.\\ - Understood by server. } + \caption*{Understood by server.} \label{tab:ssr-osc-subscribe} \end{table} @@ -916,8 +976,13 @@ true]}\\ \texttt{/scene/clear} & & Delete all sources & \texttt{[/scene/clear]}\\ + \texttt{/scene/decay\_exponent} & f & Set amplitude decay exponent + in virtual space ($1/r^{exp}$). & \texttt{[/scene/decay\_exponent, + 2.0]}\\ \texttt{/scene/load} & s & Load scene from \gls{asdf} file. & \texttt{[/scene/load, “example.asd”]}\\ + \texttt{/scene/master\_signal\_level} & f & Set the renderers + signal level. & \texttt{[/scene/master\_signal\_level, -20]}\\ \texttt{/scene/save} & s & Save scene to \gls{asdf} file. & \texttt{[/scene/save, “example.asd”]}\\ \texttt{/scene/volume} & f & Set scene master volume. & @@ -943,6 +1008,9 @@ \texttt{[/source/delete, 1]}\\ \texttt{/source/file\_channel} & ii & Set a source's file channel & \texttt{[/source/file\_channel, 1, 2]}\\ + \texttt{/source/file\_name\_or\_port\_number} & is & Set a source's + file name or port number & + \texttt{[/source/file\_name\_or\_port\_number, 1, “1”]}\\ \texttt{/source/port\_name } & is & Set a source's \gls{jack} input port name & \texttt{[/source/port\_name, 1, “system:capture\_2”]}\\ \texttt{/source/gain} & if & Set a source's gain & @@ -1115,14 +1183,7 @@ \pagestyle{empty} \cleardoublepage - \addcontentsline{toc}{section}{\listfigurename} - \listoffigures - \cleardoublepage - \addcontentsline{toc}{section}{\listtablename} - \listoftables - \cleardoublepage - \printindex - \printglossaries + \appendix \cleardoublepage \bibliographystyle{plainnat} \bibliography{../bib/ssr-networking} |