annotate docs/WAC2016/WAC2016.tex @ 2139:953bcdef0357

Reviewed WAC2016
author Nicholas Jillings <nickjillings@users.noreply.github.com>
date Thu, 25 Feb 2016 11:52:57 +0000
parents b56063477c72
children 5a6a75fb2a24
rev   line source
b@1481 1 \documentclass{sig-alternate}
b@1950 2 \usepackage{hyperref} % make links (like references, links to Sections, ...) clickable
b@1950 3 \usepackage{enumitem} % tighten itemize etc by appending '[noitemsep,nolistsep]'
me@1952 4 \usepackage{cleveref}
b@1481 5
b@1479 6 \graphicspath{{img/}} % put the images in this folder
b@1479 7
b@1481 8 \begin{document}
b@1481 9
b@1481 10 % Copyright
b@1481 11 \setcopyright{waclicense}
b@1481 12
nickjillings@1963 13 \newcommand*\rot{\rotatebox{90}}
nickjillings@1963 14
b@1481 15
b@1481 16 %% DOI
b@1481 17 %\doi{10.475/123_4}
b@1481 18 %
b@1481 19 %% ISBN
b@1481 20 %\isbn{123-4567-24-567/08/06}
b@1481 21 %
b@1481 22 %%Conference
b@1481 23 %\conferenceinfo{PLDI '13}{June 16--19, 2013, Seattle, WA, USA}
b@1481 24 %
b@1481 25 %\acmPrice{\$15.00}
b@1481 26
b@1481 27 %
b@1481 28 % --- Author Metadata here ---
b@1481 29 \conferenceinfo{Web Audio Conference WAC-2016,}{April 4--6, 2016, Atlanta, USA}
b@1481 30 \CopyrightYear{2016} % Allows default copyright year (20XX) to be over-ridden - IF NEED BE.
b@1481 31 %\crdata{0-12345-67-8/90/01} % Allows default copyright data (0-89791-88-6/97/05) to be over-ridden - IF NEED BE.
b@1481 32 % --- End of Author Metadata ---
b@1481 33
b@1951 34 \title{Web Audio Evaluation Tool: A framework for subjective assessment of audio}
b@1481 35 %\subtitle{[Extended Abstract]
b@1481 36 %\titlenote{A full version of this paper is available as
b@1481 37 %\textit{Author's Guide to Preparing ACM SIG Proceedings Using
b@1481 38 %\LaTeX$2_\epsilon$\ and BibTeX} at
b@1481 39 %\texttt{www.acm.org/eaddress.htm}}}
b@1481 40 %
b@1481 41 % You need the command \numberofauthors to handle the 'placement
b@1481 42 % and alignment' of the authors beneath the title.
b@1481 43 %
b@1481 44 % For aesthetic reasons, we recommend 'three authors at a time'
b@1481 45 % i.e. three 'name/affiliation blocks' be placed beneath the title.
b@1481 46 %
b@1481 47 % NOTE: You are NOT restricted in how many 'rows' of
b@1481 48 % "name/affiliations" may appear. We just ask that you restrict
b@1481 49 % the number of 'columns' to three.
b@1481 50 %
b@1481 51 % Because of the available 'opening page real-estate'
b@1481 52 % we ask you to refrain from putting more than six authors
b@1481 53 % (two rows with three columns) beneath the article title.
b@1481 54 % More than six makes the first-page appear very cluttered indeed.
b@1481 55 %
b@1481 56 % Use the \alignauthor commands to handle the names
b@1481 57 % and affiliations for an 'aesthetic maximum' of six authors.
b@1481 58 % Add names, affiliations, addresses for
b@1481 59 % the seventh etc. author(s) as the argument for the
b@1481 60 % \additionalauthors command.
b@1481 61 % These 'additional authors' will be output/set for you
b@1481 62 % without further effort on your part as the last section in
b@1481 63 % the body of your article BEFORE References or any Appendices.
b@1481 64
b@1948 65 % FIVE authors instead of four, to leave space between first two authors.
nickjillings@1315 66 \numberofauthors{6} % in this sample file, there are a *total*
b@1481 67 % of EIGHT authors. SIX appear on the 'first-page' (for formatting
b@1481 68 % reasons) and the remaining two appear in the \additionalauthors section.
b@1481 69 %
b@1481 70 \author{
b@1481 71 % You can go ahead and credit any number of authors here,
b@1481 72 % e.g. one 'row of three' or two rows (consisting of one row of three
b@1481 73 % and a second row of one, two or three).
b@1481 74 %
b@1481 75 % The command \alignauthor (no curly braces needed) should
b@1481 76 % precede each author name, affiliation/snail-mail address and
b@1481 77 % e-mail address. Additionally, tag each line of
b@1481 78 % affiliation/address with \affaddr, and tag the
b@1481 79 % e-mail address with \email.
b@1481 80 %
b@1481 81 % 1st. author
nickjillings@1315 82 \alignauthor Nicholas Jillings\textsuperscript{2}\\
nickjillings@2102 83 \email{nicholas.jillings@mail.bcu.ac.uk}
nickjillings@1315 84 % 2nd. author
nickjillings@2102 85 \alignauthor
nickjillings@1315 86 \alignauthor Brecht De Man\textsuperscript{1}\\
nickjillings@1315 87 \email{b.deman@qmul.ac.uk}
nickjillings@2102 88 \and
nickjillings@2102 89 % use '\and' if you need 'another row' of author names
b@1481 90 % 3rd. author
nickjillings@1315 91 \alignauthor David Moffat\textsuperscript{1}\\
b@1481 92 \email{d.j.moffat@qmul.ac.uk}
b@1481 93 % 4th. author
nickjillings@1315 94 \alignauthor Joshua D. Reiss\textsuperscript{1}\\
b@1481 95 \email{joshua.reiss@qmul.ac.uk}
nickjillings@1315 96 \alignauthor Ryan Stables\textsuperscript{2}\\
nickjillings@1315 97 \email{ryan.stables@bcu.ac.uk}
b@1948 98 \and % new line for address
nickjillings@1315 99 \affaddr{Centre for Digital Music, School of Electronic Engineering and Computer Science\textsuperscript{1}}\\
b@1481 100 \affaddr{Queen Mary University of London}\\
b@1481 101 \affaddr{Mile End Road,}
b@1481 102 \affaddr{London E1 4NS}\\
b@1481 103 \affaddr{United Kingdom}\\
nickjillings@1315 104 \and
nickjillings@1315 105 \affaddr{Digital Media Technology Lab\textsuperscript{2}}\\
nickjillings@1315 106 \affaddr{Birmingham City University}\\
nickjillings@1315 107 \affaddr{Birmingham B4 7XG}\\
nickjillings@1315 108 \affaddr{United Kingdom}\\
b@1481 109 }
b@1481 110 %Centre for Digital Music, School of Electronic Engineering and Computer Science, Queen Mary University of London
b@1481 111 %% 5th. author
b@1481 112 %\alignauthor Sean Fogarty\\
b@1481 113 % \affaddr{NASA Ames Research Center}\\
b@1481 114 % \affaddr{Moffett Field}\\
b@1481 115 % \email{fogartys@amesres.org}
b@1481 116 %% 6th. author
b@1481 117 %\alignauthor Charles Palmer\\
b@1481 118 % \affaddr{Palmer Research Laboratories}\\
b@1481 119 % \affaddr{8600 Datapoint Drive}\\
b@1481 120 % \email{cpalmer@prl.com}
b@1481 121 %}
b@1481 122 % There's nothing stopping you putting the seventh, eighth, etc.
b@1481 123 % author on the opening page (as the 'third row') but we ask,
b@1481 124 % for aesthetic reasons that you place these 'additional authors'
b@1481 125 % in the \additional authors block, viz.
b@1481 126 %\additionalauthors{Additional authors: John Smith (The Th{\o}rv{\"a}ld Group,
b@1481 127 %email: {\texttt{jsmith@affiliation.org}}) and Julius P.~Kumquat
b@1481 128 %(The Kumquat Consortium, email: {\texttt{jpkumquat@consortium.net}}).}
b@1481 129 \date{1 October 2015}
b@1481 130 % Just remember to make sure that the TOTAL number of authors
b@1481 131 % is the number that will appear on the first page PLUS the
b@1481 132 % number that will appear in the \additionalauthors section.
b@1481 133
b@1481 134 \maketitle
b@1481 135 \begin{abstract}
nickjillings@1966 136
nickjillings@1968 137 Perceptual listening tests are commonplace in audio research and a vital form of evaluation. Many tools exist to run such tests, however many operate one test type and are therefore limited whilst most require proprietary software. Using Web Audio the Web Audio Evaluation Tool (WAET) addresses these concerns by having one toolbox which can be configured to run many different tests, perform it through a web browser and without needing proprietary software or computer programming knowledge. In this paper the role of the Web Audio API in giving WAET key functionalities are shown. The paper also highlights less common features, available to web based tools, such as easy remote testing environment and in-browser analytics.
nickjillings@1966 138
b@1481 139 \end{abstract}
b@1481 140
b@1481 141
b@1481 142 \section{Introduction}
b@1949 143
b@1949 144 % Listening tests/perceptual audio evaluation: what are they, why are they important
b@1949 145 % As opposed to limited scope of WAC15 paper: also musical features, realism of sound effects / sound synthesis, performance of source separation and other algorithms...
nickjillings@2139 146 Perceptual evaluation of audio, using listening tests, is a powerful way to assess anything from audio codec quality to realism of sound synthesis to the performance of source separation, automated music production and other auditory evaluations.
b@1479 147 In less technical areas, the framework of a listening test can be used to measure emotional response to music or test cognitive abilities.
b@1479 148 % maybe some references? If there's space.
b@1949 149
b@1950 150 % check out http://link.springer.com/article/10.1007/s10055-015-0270-8 - only paper that cited WAC15 paper
b@1950 151
nickjillings@1957 152 % Why difficult? Challenges? What constitutes a good interface?
nickjillings@1957 153 % Technical, interfaces, user friendliness, reliability
nickjillings@2139 154 Several applications for performing perceptual listening tests currently exist presented in~\Cref{tab:toolboxes}. Many rely on proprietary, 3rd party software such as MATLAB and MAX, making them less attractive for many. With the exception of the existing JavaScript-based toolboxes, remote deployment (web-based test hosting and result collection) is not possible.
nickjillings@1968 155
nickjillings@2139 156 HULTI-GEN~\cite{hultigen} is a single example of a toolbox that presents the user with a large number of different test interfaces and customisation, without requiring knowledge of any programming language. The Web Audio Evaluation Toolbox (WAET), presented here, stands out for the same reasons and does not require proprietary software or a specific platform. It also provides a wide range of interface and test types in one user friendly environment. Furthermore any test based on the default test types can be configured in the browser as well. Note that the design of an effective listening test further poses many challenges unrelated to interface design, which are beyond the scope of this paper \cite{bech}.
b@1949 157
b@1949 158 % Why in the browser?
nickjillings@2139 159 The Web Audio API provides important features including sample level manipulation of audio streams \cite{schoeffler2015mushra} and synchronous and flexible playback. Operating in the browser allows leveraging the flexible JavaScript language and native support for web documents, such as the extensible markup language (XML) which is used for configuration and test result files. Using the web also reduces deployment requirements to a basic web server with extra functionality, such as test collection and automatic processing, using PHP. As recruiting participants can be very time-consuming, and as for some tests a large number of participants is needed, browser-based tests can enable participants in multiple locations to perform the test simultaneously \cite{schoeffler2015mushra}.
b@1479 160
b@1967 161 Both BeaqleJS \cite{beaqlejs} and mushraJS\footnote{https://github.com/akaroice/mushraJS} also operate in the browser. However, BeaqleJS does not make use of the Web Audio API and therefore lacks arbitrary manipulation of audio stream samples, and neither offer an adequately wide choice of test designs for them to be useful to many researchers. %requires programming knowledge?...
b@1948 162
b@1948 163 % only browser-based?
me@1952 164 \begin{table*}[ht]
nickjillings@1961 165 \caption{Table with existing listening test platforms and their features}
nickjillings@1963 166 \small
nickjillings@1961 167 \begin{center}
nickjillings@1963 168 \begin{tabular}{|*{9}{l|}}
nickjillings@1961 169 \hline
nickjillings@1963 170 \textbf{Toolbox} & \rot{\textbf{APE}} & \rot{\textbf{BeaqleJS}} &\rot{\textbf{HULTI-GEN}} & \rot{\textbf{mushraJS}} & \rot{\textbf{MUSHRAM}} & \rot{\textbf{Scale}} & \rot{\textbf{WhisPER}} & \rot{\textbf{WAET}} \\ \hline
nickjillings@1963 171 \textbf{Reference} & \cite{ape} & \cite{beaqlejs} & \cite{hultigen} & & \cite{mushram} & \cite{scale} & \cite{whisper} & \cite{waet} \\ \hline
nickjillings@1963 172 \textbf{Language} & MATLAB & JS & MAX & JS & MATLAB & MATLAB & MATLAB & JS \\ \hline
b@1967 173 \textbf{Remote} & & (\checkmark) & & \checkmark & & & & \checkmark \\ \hline \hline
nickjillings@1963 174 MUSHRA (ITU-R BS. 1534) & & \checkmark & \checkmark & \checkmark & \checkmark & & & \checkmark \\ \hline
nickjillings@1963 175 APE & \checkmark & & & & & & & \checkmark \\ \hline
nickjillings@1963 176 Rank Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 177 Likert Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nickjillings@1963 178 ABC/HR (ITU-R BS. 1116) & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 179 -50 to 50 Bipolar with ref. & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 180 Absolute Category Rating Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1968 181 Degradation Category Rating Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 182 Comparison Category Rating Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nickjillings@1963 183 9 Point Hedonic Category Rating Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nickjillings@1963 184 ITU-R 5 Continuous Impairment Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 185 Pairwise / AB Test & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 186 Multi-attribute ratings & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 187 ABX Test & & \checkmark & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1963 188 Adaptive psychophysical methods & & & & & & & \checkmark & \\ \hline
nickjillings@1963 189 Repertory Grid Technique & & & & & & & \checkmark & \\ \hline
b@1967 190 Semantic Differential & & & & & & \checkmark & \checkmark &\checkmark \\ \hline
nickjillings@1963 191 n-Alternative Forced Choice & & & & & & \checkmark & & \\ \hline
nickjillings@1961 192 \end{tabular}
nickjillings@1961 193 \end{center}
nickjillings@1961 194 \label{tab:toolboxes}
nickjillings@1963 195 \end{table*}
b@1948 196 %
nickjillings@1957 197 %Selling points: remote tests, visualisaton, create your own test in the browser, many interfaces, few/no dependencies, flexibility
b@1949 198
nickjillings@1958 199 %[Talking about what we do in the various sections of this paper. Referring to \cite{waet}. ]
nickjillings@2139 200 To meet the need for a cross-platform, versatile and easy-to-use listening test tool, we previously developed the Web Audio Evaluation Tool \cite{waet} which was capable of running a listening test in the browser from an XML configuration file, and storing an XML file as well, with one particular interface. This has now expanded into a tool with which a wide range of listening test types can easily be constructed and set up remotely, without any need for manually altering code or configuration files, and allows visualisation of the collected results in the browser. In this paper, we discuss these different aspects and explore which future improvements would be possible.
b@1967 201
b@1478 202 \begin{figure}[tb]
b@1478 203 \centering
b@1478 204 \includegraphics[width=.5\textwidth]{interface.png}
b@1478 205 \caption{A simple example of a multi-stimulus, single attribute, single rating scale test with a reference and comment fields.}
b@1478 206 \label{fig:interface}
b@1478 207 \end{figure}
b@1478 208
nickjillings@1957 209 \begin{comment}
b@1951 210 % MEETING 8 OCTOBER
b@1951 211 \subsection{Meeting 8 October}
b@1951 212 \begin{itemize}
b@1951 213 \item Do we manipulate audio?\\
b@1951 214 \begin{itemize}
b@1951 215 \item Add loudness equalisation? (test\_create.html) Tag with gains.
b@1951 216 \item Add volume slider?
b@1951 217 \item Cross-fade (in interface node): default 0, number of seconds
b@1951 218 \item Also: we use the playback buffer to present metrics of which portion is listened to
b@1951 219 \end{itemize}
b@1951 220 \item Logging system information: whichever are possible (justify others)
b@1951 221 \item Input streams as audioelements
b@1951 222 \item Capture microphone to estimate loudness (especially Macbook)
b@1951 223 \item Test page (in-built oscillators): left-right calibration, ramp up test tone until you hear it; optional compensating EQ (future work implementing own filters) --> Highlight issues!
b@1951 224 \item Record IP address (PHP function, grab and append to XML file)
b@1951 225 \item Expand anchor/reference options
b@1951 226 \item AB / ABX
b@1951 227 \end{itemize}
b@1951 228
b@1951 229 \subsubsection{Issues}
b@1951 230 \begin{itemize}
b@1951 231 \item Filters not consistent (Nick to test across browsers)
b@1951 232 \item Playback audiobuffers need to be destroyed and rebuilt each time
b@1951 233 \item Can't get channel data, hardware input/output...
b@1951 234 \end{itemize}
nickjillings@1957 235 \end{comment}
b@1948 236
b@1949 237 \section{Architecture} % title? 'back end'? % NICK
nickjillings@1961 238 \label{sec:architecture}
nickjillings@1958 239 %A slightly technical overview of the system. Talk about XML, JavaScript, Web Audio API, HTML5.
b@1479 240
nickjillings@1968 241 Although WAET uses a sparse subset of the Web Audio API functionality, its performance comes directly from it. Listening tests can convey large amounts of information other than obtaining the perceptual relationship between the audio fragments. With WAET it is possible to track which parts of the audio fragments were listened to and when, at what point in the audio stream the participant switched to a different fragment, and how a fragment's rating was adjusted over time within a session, to name a few. Not only does this allow evaluation of a wealth of perceptual aspects, but it also helps detect poor participants whose results are potentially not representative.
nickjillings@1953 242
nickjillings@2139 243 One of the key initial design parameters for WAET was to make the tool as open as possible to non-programmers and to this end all of the user modifiable options are included in a single XML document, referred to as the specification document, that can be written manually (or modifying an existing document or template) or using the included test creator. The test creator can modify existing specification documents or generate new ones in a user friendly environment. This simplifies the creation of elements by visualising the data structure with explanatory text.
nickjillings@1953 244
nickjillings@1958 245 %Describe and/or visualise audioholder-audioelement-... structure.
nickjillings@2139 246 The specification document contains the URL of the audio fragments for each test page. These fragments are downloaded asynchronously in the test and decoded offline by the Web Audio offline decoder. The LUFS integrated loudness of the buffers are calculated \cite{loudness201510} and stored to enable on-the-fly loudness normalisation. Equally if the playback uses synchronous looping, the buffers are zero-padded accordingly. Performing these in the browser removes any pre-processing. The resulting buffers are assigned to a custom Audio Objects node which tracks the fragment buffer, the Web Audio \textit{bufferSourceNode}, and other specification attributes including its ID, the interface object(s) associated with the fragment and any metric or data collection objects. The Audio Object is controlled by an over-arching custom Audio Engine node allowing for session wide control of the Audio Objects.
nickjillings@1953 247
nickjillings@2139 248 The only significant issue with this model is the \textit{bufferNode} in the Web Audio API, implemented in the standard as a `use once' object. Once the node has been played it must be discarded as it cannot be instructed to play again. Therefore on each play request the \textit{bufferSourceNode} must be created and then linked with the stored \textit{bufferNode}. This is an odd behaviour with no alternative except to use the HTML5 audio element, but they do not have the ability to synchronously start on a given time and therefore not suited.
b@1479 249
nickjillings@2139 250 In the test, each buffer node is connected to a gain node configured by the loudness normalisation and any user specified gain. Therefore it is possible to perform a `Method of Adjustment' test where an interface could directly manipulate these gain nodes. These gain nodes are used for cross-fading between samples when operating in synchronous playback. Cross-fading can either be fade-out fade-in or a true cross-fade. This is achieved by using the AudioParam controls to provide linear ramping from 0 to the calculated playback level. There is also an optional `Master Volume' slider which can be shown on the test GUI which modifies a gain node before the destination. The controls' position is tracked providing extra test use validation. This is not indicative of the final volume exiting the speakers, not least because the browser cannot read the system volume. Therefore its use should only be considered in a lab environment to ensure results are representative.
nickjillings@1953 251
nickjillings@1958 252 %Which type of files? WAV, anything else? Perhaps not exhaustive list, but say something along the lines of 'whatever browser supports'. Compatability?
nickjillings@2139 253 The media files supported depend on the browser level support for the initial decoding of information and is the same as the browser support for the HTML5 audio element. The most widely supported media file is the wave (.WAV) format which is accepted by every browser supporting the Web Audio API. Most browsers support floating point WAV except Firefox. To resolve this the tool includes its own wave file decoder to extract the samples. The toolbox works in any browser which supports the Web Audio API and HTML 5.
nickjillings@1953 254
nickjillings@2139 255 All the collected session data is returned in an XML document structured similarly to the configuration document, where test pages contain the audio elements with their trace collection, results, comments and any interface specific data points.
nickjillings@1953 256
b@1948 257 \section{Remote tests} % with previous?
b@1479 258 \label{sec:remote}
b@1949 259
nickjillings@2139 260 If the experimenter is willing to trade some degree of control for a higher number of participants, the test can be hosted on a public web server. This way, a link can be shared widely in the hope of attracting a large amount of subjects, while listening conditions and subject reliability may be less ideal. However, a sound system calibration page and the range of metrics logged mitigate these problems. In some experiments, it may be preferred that the subject has a `real life', familiar listening set-up, for instance when perceived quality differences on everyday sound systems are investigated.
b@1949 261 Furthermore, a fully browser-based test, where the collection of the results is automatic, is more efficient and technically reliable even when the test still takes place under lab conditions.
b@1949 262
b@1947 263 The following features allow easy and effective remote testing:
b@1479 264 \begin{description}[noitemsep,nolistsep]
b@1479 265 \item[PHP script to collect result XML files] and store on central server.
b@1479 266 \item[Randomly pick a specified number of pages] to ensure an equal and randomised spread of the different pages (`audioHolders') across participants.
b@1479 267 \item[Calibration of the sound system (and participant)] by a perceptual pre-test to gather information about the frequency response and speaker configuration - this can be supplemented with a survey.
nickjillings@1953 268 % In theory calibration could be applied anywhere??
b@1479 269 % \item Functionality to participate multiple times
b@1479 270 % \begin{itemize}[noitemsep,nolistsep]
b@1479 271 % \item Possible to log in with unique ID (no password)
b@1479 272 % \item Pick `new user' (generates new, unique ID) or `already participated' (need already available ID)
b@1479 273 % \item Store XML on server with IDs plus which audioholders have already been listened to
b@1479 274 % \item Don't show `post-test' survey after first time
b@1479 275 % \item Pick `new' audioholders if available
b@1479 276 % \item Copy survey information first time to new XMLs
b@1479 277 % \end{itemize}
b@1479 278 \item[Intermediate saves] for tests which were interrupted or unfinished.
b@1479 279 \item[Collect IP address information] for geographic location, through PHP function which grabs address and appends to XML file.
b@1479 280 \item[Collect Browser and Display information] to the extent it is available and reliable.
b@1479 281 \end{description}
b@1947 282
b@1481 283
b@1948 284 \section{Interfaces} % title? 'Front end'? % Dave
b@1479 285 \label{sec:interfaces}
me@1952 286
nickjillings@2139 287 The purpose of this listening test framework is to allow any user the maximum flexibility to design a listening test for their exact application with minimum effort. To this end, a large range of standard listening test interfaces have been implemented including: % pretty much the same wording as two sentences earlier
me@1952 288 \begin{itemize}[noitemsep,nolistsep]
nickjillings@2139 289 \item AB Test~\cite{lipshitz1981great}: Two stimuli presented at a time, participant selects a preferred stimulus.
nickjillings@2139 290 \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116} (Mean Opinion Score: MOS): each stimulus has a continuous scale (5-1), labeled as Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying.
nickjillings@2139 291 \item -50 to 50 Bipolar with Ref: each stimulus has a continuous scale -50 to 50 with default values as 0 in middle and a reference.
nickjillings@2139 292 \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}: Likert but labels are Bad, Poor, Fair, Good, Excellent
nickjillings@2139 293 \item ABX Test~\cite{clark1982high}: Two stimuli are presented along with a reference and the participant has to select a preferred stimulus, often the closest to the reference.
nickjillings@2139 294 \item APE style \cite{ape}: Multiple stimuli as points on a 2D plane for inter-sample rating (eg. Valence Arousal)
nickjillings@2139 295 \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}: ACR \& DCR but 7 point scale: Much Better, Better, Slightly Better, About the same, slightly worse, worse, much worse. There is also a provided reference.
nickjillings@2139 296 \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}: ABC \& Likert but labels are (5) Inaudible, (4) Audible but not annoying, (3) slightly annoying, (2) annoying, (1) very annoying.
nickjillings@2139 297 \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}: Same as ABC/HR but with a reference.
nickjillings@2139 298 \item Likert scale~\cite{likert1932technique}: each stimuli has a five point scale with values: Strongly Agree, Agree, Neutral, Disagree and Strongly Disagree.
me@1952 299 \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
nickjillings@1968 300 \begin{comment}
nickjillings@1959 301 \begin{itemize}[noitemsep,nolistsep]
me@1952 302 \item Multiple stimuli are presented and rated on a continuous scale, which includes a reference, hidden reference and hidden anchors.
me@1952 303 \end{itemize}
nickjillings@1968 304 \end{comment}
nickjillings@2139 305 \item Pairwise Comparison (Better/Worse)~\cite{david1963method}: every stimulus is rated as being either better or worse than the reference.
nickjillings@1968 306 \item Rank Scale~\cite{pascoe1983evaluation}: stimuli ranked on single horizontal scale, where they are ordered in preference order.
nickjillings@1968 307 \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}: each stimuli has a seven point scale with values: Like Extremely, Like Very Much, Like Moderate, Like Slightly, Neither Like nor Dislike, dislike Extremely, dislike Very Much, dislike Moderate, dislike Slightly. There is also a provided reference.
me@1952 308 \end{itemize}
me@1952 309
nickjillings@2139 310 It is possible to include any number of references, hidden references and hidden anchors into all of these listening test formats.
me@1952 311
nickjillings@2139 312 Because of the design to have separate core code and interface modules, it is possible for a 3rd party interface to be built with minimal effort. The repository includes a boilerplate (blank.js) and documentation on which functions must be called and the specific functions they expect your interface to perform. The core includes an `Interface' object which includes object prototypes for the on-page comment boxes (including those with radio or checkbox responses), start and stop buttons and the playhead / transport bars.
nickjillings@1955 313
me@1952 314 %%%% \begin{itemize}[noitemsep,nolistsep]
me@1952 315 %%%% \item (APE style) \cite{ape}
me@1952 316 %%%% \item Multi attribute ratings
me@1952 317 %%%% \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
me@1952 318 %%%% \item Interval Scale~\cite{zacharov1999round}
me@1952 319 %%%% \item Rank Scale~\cite{pascoe1983evaluation}
me@1952 320 %%%%
me@1952 321 %%%% \item 2D Plane rating - e.g. Valence vs. Arousal~\cite{carroll1969individual}
me@1952 322 %%%% \item Likert scale~\cite{likert1932technique}
me@1952 323 %%%%
me@1952 324 %%%% \item {\bf All the following are the interfaces available in HULTI-GEN~\cite{hultigen} }
me@1952 325 %%%% \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116}
me@1952 326 %%%% \begin{itemize}
me@1952 327 %%%% \item Continuous Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)
me@1952 328 %%%% \end{itemize}
me@1952 329 %%%% \item -50 to 50 Bipolar with Ref
me@1952 330 %%%% \begin{itemize}
me@1952 331 %%%% \item Scale -50 to 50 on Mushra with default values as 0 in middle and a comparison ``Reference'' to compare to 0 value
me@1952 332 %%%% \end{itemize}
me@1952 333 %%%% \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
me@1952 334 %%%% \begin{itemize}
me@1952 335 %%%% \item 5 point Scale - Bad, Poor, Fair, Good, Excellent (Default fair?)
me@1952 336 %%%% \end{itemize}
me@1952 337 %%%% \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
me@1952 338 %%%% \begin{itemize}
me@1952 339 %%%% \item 5 point Scale - Inaudible, Audible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?) - {\it Basically just quantised ABC/HR?}
me@1952 340 %%%% \end{itemize}
me@1952 341 %%%% \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
me@1952 342 %%%% \begin{itemize}
me@1952 343 %%%% \item 7 point scale: Much Better, Better, Slightly Better, About the same, slightly worse, worse, much worse - Default about the same with reference to compare to
me@1952 344 %%%% \end{itemize}
me@1952 345 %%%% \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
me@1952 346 %%%% \begin{itemize}
me@1952 347 %%%% \item 9 point scale: Like Extremely, Like Very Much, Like Moderate, Like Slightly, Neither Like nor Dislike, dislike Extremely, dislike Very Much, dislike Moderate, dislike Slightly - Default Neither Like nor Dislike with reference to compare to
me@1952 348 %%%% \end{itemize}
me@1952 349 %%%% \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
me@1952 350 %%%% \begin{itemize}
me@1952 351 %%%% \item 5 point Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)- {\it Basically just quantised ABC/HR, or Different named DCR}
me@1952 352 %%%% \end{itemize}
me@1952 353 %%%% \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
me@1952 354 %%%% \begin{itemize}
me@1952 355 %%%% \item 2 point Scale - Better or Worse - (not sure how to default this - they default everything to better, which is an interesting choice)
me@1952 356 %%%% \end{itemize}
me@1952 357 %%%% \end{itemize}
me@1952 358
nickjillings@1955 359 % Build your own test
nickjillings@1966 360
nickjillings@1957 361 \begin{comment}
me@1952 362 { \bf A screenshot would be nice.
me@1952 363
me@1952 364 Established tests (see below) included as `presets' in the build-your-own-test page. }
nickjillings@1957 365 \end{comment}
b@1481 366
b@1481 367 \section{Analysis and diagnostics}
b@1479 368 \label{sec:analysis}
b@1949 369 % don't mention Python scripts
b@1479 370 There are several benefits to providing basic analysis tools in the browser: they allow diagnosing problems, with the interface or with the test subject; they may be sufficient for many researchers' purposes; and test subjects may enjoy seeing an overview of their own results and/or results thus far at the end of their tests.
nickjillings@1315 371 \begin{figure}[bh]
b@1478 372 \centering
b@1478 373 \includegraphics[width=.5\textwidth]{boxplot.png}
b@1478 374 %\caption{This timeline of a single subject's listening test shows playback of fragments (red segments) and marker movements on the rating axis in function of time. }
b@1478 375 \caption{Box and whisker plot showing the aggregated numerical ratings of six stimuli by a group of subjects.}
b@1478 376 \label{fig:timeline}
b@1478 377 \end{figure}
b@1479 378 For this reason, we include a proof-of-concept web page with:
b@1950 379 \begin{itemize}[noitemsep,nolistsep]
b@1479 380 \item All audioholder IDs, file names, subject IDs, audio element IDs, ... in the collected XMLs so far (\texttt{saves/*.xml})
b@1479 381 \item Selection of subjects and/or test samples to zoom in on a subset of the data %Check/uncheck each of the above for analysis (e.g. zoom in on a certain song, or exclude a subset of subjects)
b@1479 382 \item Embedded audio to hear corresponding test samples % (follow path in XML setup file, which is also embedded in the XML result file)
b@1478 383 \item Scatter plot, confidence plot and box plot of rating values (see Figure )
nickjillings@1961 384 \item Timeline for a specific subject %(see Figure \ref{fig:timeline})%, perhaps re-playing the experiment in X times realtime. (If actual realtime, you could replay the audio...)
nickjillings@1961 385 \item Distribution plots of any radio button and number questions in pre- and post-test survey %(drop-down menu with `pretest', `posttest', ...; then drop-down menu with question `IDs' like `gender', `age', ...; make pie chart/histogram of these values over selected range of XMLs)
b@1479 386 \item All `comments' on a specific audioelement
nickjillings@1961 387 \item A `download' function for a CSV of ratings, survey responses and comments% various things (values, survey responses, comments) people might want to use for analysis, e.g. when XML scares them
nickjillings@1961 388 %\item Validation of setup XMLs (easily spot `errors', like duplicate IDs or URLs, missing/dangling tags, ...)
b@1945 389 \end{itemize}
b@1945 390
nickjillings@1961 391
nickjillings@1958 392 %A subset of the above would already be nice for this paper.
b@1479 393 \section{Concluding remarks and future work}
b@1479 394 \label{sec:conclusion}
b@1967 395
nickjillings@2139 396 We have developed a browser-based tool for the design and deployment of listening tests, requiring no programming experience or proprietary software. Following the predictions or guidelines in \cite{schoeffler2015mushra}, it supports remote testing, cross-fading between audio streams, collecting information about the system, among others.
b@1967 397
nickjillings@2139 398 Whereas many other types of interfaces do exist, we felt that supporting e.g. a range of `method of adjustment' tests would be beyond the scope of a tool that aims to be versatile enough while not claiming to support any custom experiment one might want to set up. Rather, it supports many non-adaptive listening test up to multi-stimulus, multi-attribute evaluation including references, anchors, text boxes, radio buttons and/or checkboxes, with arbitrary placement of the various UI elements.
b@1945 399
nickjillings@2139 400 The code and documentation can be downloaded from our online repository available at \url{code.soundsoftware.ac.uk/projects/webaudioevaluationtool}.
b@1949 401 % remote
b@1949 402 % language support (not explicitly stated)
b@1949 403 % crossfades
nickjillings@1956 404 % choosing speakers/sound device from within browser? --- NOT POSSIBLE, can only determine channel output counts and its up to the hardware to determine
b@1949 405 % collect information about software and sound system
b@1949 406 % buttons, scales, ... UI elements
b@1949 407 % must be able to load uncompressed PCM
b@1949 408
b@1481 409 %
b@1481 410 % The following two commands are all you need in the
b@1481 411 % initial runs of your .tex file to
b@1481 412 % produce the bibliography for the citations in your paper.
nickjillings@1966 413 \bibliographystyle{ieeetr}
nickjillings@1968 414 \small
b@1481 415 \bibliography{WAC2016} % sigproc.bib is the name of the Bibliography in this case
b@1481 416 % You must have a proper ".bib" file
b@1481 417 % and remember to run:
b@1481 418 % latex bibtex latex latex
b@1481 419 % to resolve all references
b@1481 420 %
b@1481 421 % ACM needs 'a single self-contained file'!
b@1481 422 %
b@1481 423 \end{document}