annotate docs/WAC2016/WAC2016.tex @ 1504:069f6a657e66

Paper: Now with images - minor edits
author Brecht De Man <b.deman@qmul.ac.uk>
date Thu, 15 Oct 2015 20:46:17 +0100
parents ba750e0e516a
children ce513811a06d
rev   line source
b@1481 1 \documentclass{sig-alternate}
b@1489 2 \usepackage{hyperref} % make links (like references, links to Sections, ...) clickable
b@1489 3 \usepackage{enumitem} % tighten itemize etc by appending '[noitemsep,nolistsep]'
djmoffat@1491 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@1502 13 \newcommand*\rot{\rotatebox{90}}
nickjillings@1502 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@1490 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@1487 65 % FIVE authors instead of four, to leave space between first two authors.
djmoffat@1483 66 \numberofauthors{5} % 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
b@1481 82 \alignauthor Nicholas Jillings\\
b@1481 83 \email{n.g.r.jillings@se14.qmul.ac.uk}
b@1487 84 % dummy author for nicer spacing
b@1487 85 \alignauthor
b@1481 86 % 2nd. author
b@1481 87 \alignauthor Brecht De Man\\
b@1481 88 \email{b.deman@qmul.ac.uk}
b@1481 89 \and % use '\and' if you need 'another row' of author names
b@1481 90 % 3rd. author
b@1481 91 \alignauthor David Moffat\\
b@1481 92 \email{d.j.moffat@qmul.ac.uk}
b@1481 93 % 4th. author
b@1481 94 \alignauthor Joshua D. Reiss\\
b@1481 95 \email{joshua.reiss@qmul.ac.uk}
b@1487 96 \and % new line for address
nickjillings@1501 97 \affaddr{Centre for Digital Music, School of Electronic Engineering and Computer Science}\\
b@1481 98 \affaddr{Queen Mary University of London}\\
b@1481 99 \affaddr{Mile End Road,}
b@1481 100 \affaddr{London E1 4NS}\\
b@1481 101 \affaddr{United Kingdom}\\
b@1481 102 }
b@1481 103 %Centre for Digital Music, School of Electronic Engineering and Computer Science, Queen Mary University of London
b@1481 104 %% 5th. author
b@1481 105 %\alignauthor Sean Fogarty\\
b@1481 106 % \affaddr{NASA Ames Research Center}\\
b@1481 107 % \affaddr{Moffett Field}\\
b@1481 108 % \email{fogartys@amesres.org}
b@1481 109 %% 6th. author
b@1481 110 %\alignauthor Charles Palmer\\
b@1481 111 % \affaddr{Palmer Research Laboratories}\\
b@1481 112 % \affaddr{8600 Datapoint Drive}\\
b@1481 113 % \email{cpalmer@prl.com}
b@1481 114 %}
b@1481 115 % There's nothing stopping you putting the seventh, eighth, etc.
b@1481 116 % author on the opening page (as the 'third row') but we ask,
b@1481 117 % for aesthetic reasons that you place these 'additional authors'
b@1481 118 % in the \additional authors block, viz.
b@1481 119 %\additionalauthors{Additional authors: John Smith (The Th{\o}rv{\"a}ld Group,
b@1481 120 %email: {\texttt{jsmith@affiliation.org}}) and Julius P.~Kumquat
b@1481 121 %(The Kumquat Consortium, email: {\texttt{jpkumquat@consortium.net}}).}
b@1481 122 \date{1 October 2015}
b@1481 123 % Just remember to make sure that the TOTAL number of authors
b@1481 124 % is the number that will appear on the first page PLUS the
b@1481 125 % number that will appear in the \additionalauthors section.
b@1481 126
b@1481 127 \maketitle
b@1481 128 \begin{abstract}
b@1481 129 Here comes the abstract.
b@1481 130 \end{abstract}
b@1481 131
b@1481 132
b@1481 133 \section{Introduction}
b@1488 134
b@1488 135 % Listening tests/perceptual audio evaluation: what are they, why are they important
b@1488 136 % 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@1501 137 Perceptual evaluation of audio, in the form of 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 138 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 139 % maybe some references? If there's space.
b@1488 140
b@1489 141 % check out http://link.springer.com/article/10.1007/s10055-015-0270-8 - only paper that cited WAC15 paper
b@1489 142
nickjillings@1496 143 % Why difficult? Challenges? What constitutes a good interface?
nickjillings@1496 144 % Technical, interfaces, user friendliness, reliability
b@1504 145 Several applications for performing perceptual listening tests currently exist, as can be seen in Table \ref{tab:toolboxes}. A review of existing listening test frameworks was undertaken and presented in~\Cref{tab:toolboxes}. HULTI-GEN~\cite{hultigen} is a single example of a toolbox that presents the user with a large number of different test interfaces and allows for customisation of each test interface, without requiring knowledge of any programming language. The Web Audio Evaluation Toolbox (WAET) stands out as it 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, it does not require any progamming experience as 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@1488 146
b@1488 147 % Why in the browser?
b@1504 148 The Web Audio API provides important features for performing perceptual tests including sample level manipulation of audio streams \cite{schoeffler2015mushra} and the ability for synchronous and flexible playback. Being in the browser allows leveraging the flexible object oriented 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 advanced 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 \cite{schoeffler2015mushra} can enable participants in multiple locations to perform the test. However, to our knowledge, no tool currently exists that allows the creation of a remotely accessible listening test.
b@1479 149
nickjillings@1501 150 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@1487 151
b@1487 152 % only browser-based?
djmoffat@1491 153 \begin{table*}[ht]
nickjillings@1500 154 \caption{Table with existing listening test platforms and their features}
nickjillings@1502 155 \small
nickjillings@1500 156 \begin{center}
nickjillings@1502 157 \begin{tabular}{|*{9}{l|}}
nickjillings@1500 158 \hline
nickjillings@1502 159 \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@1502 160 \textbf{Reference} & \cite{ape} & \cite{beaqlejs} & \cite{hultigen} & & \cite{mushram} & \cite{scale} & \cite{whisper} & \cite{waet} \\ \hline
nickjillings@1502 161 \textbf{Language} & MATLAB & JS & MAX & JS & MATLAB & MATLAB & MATLAB & JS \\ \hline
nickjillings@1502 162 \textbf{Remote} & & (not native) & & \checkmark & & & & \checkmark \\ \hline \hline
nickjillings@1502 163 MUSHRA (ITU-R BS. 1534) & & \checkmark & \checkmark & \checkmark & \checkmark & & & \checkmark \\ \hline
nickjillings@1502 164 APE & \checkmark & & & & & & & \checkmark \\ \hline
nickjillings@1502 165 Rank Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 166 Likert Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nickjillings@1502 167 ABC/HR (ITU-R BS. 1116) & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 168 -50 to 50 Bipolar with ref. & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 169 Absolute Category Rating Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 170 Degredation Category Rating Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 171 Comparison Category Rating Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nickjillings@1502 172 9 Point Hedonic Category Rating Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nickjillings@1502 173 ITU-R 5 Continuous Impairment Scale & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 174 Pairwise / AB Test & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 175 Multi-attribute ratings & & & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 176 ABX Test & & \checkmark & \checkmark & & & & & \checkmark \\ \hline
nickjillings@1502 177 Adaptive psychophysical methods & & & & & & & \checkmark & \\ \hline
nickjillings@1502 178 Repertory Grid Technique & & & & & & & \checkmark & \\ \hline
nickjillings@1502 179 Semantic Differential & & & & & & \checkmark & \checkmark & \\ \hline
nickjillings@1502 180 n-Alternative Forced Choice & & & & & & \checkmark & & \\ \hline
nickjillings@1500 181 \end{tabular}
nickjillings@1500 182 \end{center}
nickjillings@1500 183 \label{tab:toolboxes}
nickjillings@1502 184 \end{table*}
b@1487 185 %
nickjillings@1496 186 %Selling points: remote tests, visualisaton, create your own test in the browser, many interfaces, few/no dependencies, flexibility
b@1488 187
nickjillings@1497 188 %[Talking about what we do in the various sections of this paper. Referring to \cite{waet}. ]
nickjillings@1499 189 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 at the time of its inception 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. We have now expanded this 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 which 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. Specifically, in Section \ref{sec:architecture} we cover the general implementation aspects, with a focus on the Web Audio API, followed by a discussion of the requirements for successful remote tests in Section \ref{sec:remote}. Section \ref{sec:interfaces} describes the various interfaces the tool supports, as well as how to keep this manageable. Finally, in Section \ref{sec:analysis} we provide an overview of the analysis capabilities in the browser, before summarising our findings and listing future research directions in Section \ref{sec:conclusion}.
nickjillings@1497 190
b@1478 191 \begin{figure}[tb]
b@1478 192 \centering
b@1478 193 \includegraphics[width=.5\textwidth]{interface.png}
b@1478 194 \caption{A simple example of a multi-stimulus, single attribute, single rating scale test with a reference and comment fields.}
b@1478 195 \label{fig:interface}
b@1478 196 \end{figure}
b@1478 197
nickjillings@1496 198 \begin{comment}
b@1490 199 % MEETING 8 OCTOBER
b@1490 200 \subsection{Meeting 8 October}
b@1490 201 \begin{itemize}
b@1490 202 \item Do we manipulate audio?\\
b@1490 203 \begin{itemize}
b@1490 204 \item Add loudness equalisation? (test\_create.html) Tag with gains.
b@1490 205 \item Add volume slider?
b@1490 206 \item Cross-fade (in interface node): default 0, number of seconds
b@1490 207 \item Also: we use the playback buffer to present metrics of which portion is listened to
b@1490 208 \end{itemize}
b@1490 209 \item Logging system information: whichever are possible (justify others)
b@1490 210 \item Input streams as audioelements
b@1490 211 \item Capture microphone to estimate loudness (especially Macbook)
b@1490 212 \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@1490 213 \item Record IP address (PHP function, grab and append to XML file)
b@1490 214 \item Expand anchor/reference options
b@1490 215 \item AB / ABX
b@1490 216 \end{itemize}
b@1490 217
b@1490 218 \subsubsection{Issues}
b@1490 219 \begin{itemize}
b@1490 220 \item Filters not consistent (Nick to test across browsers)
b@1490 221 \item Playback audiobuffers need to be destroyed and rebuilt each time
b@1490 222 \item Can't get channel data, hardware input/output...
b@1490 223 \end{itemize}
nickjillings@1496 224 \end{comment}
b@1487 225
b@1488 226 \section{Architecture} % title? 'back end'? % NICK
nickjillings@1500 227 \label{sec:architecture}
nickjillings@1497 228 %A slightly technical overview of the system. Talk about XML, JavaScript, Web Audio API, HTML5.
b@1479 229
nickjillings@1501 230 Although WAET uses a sparse subset of the Web Audio API functionality, its performance comes directly from using 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 obtain 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 helps detect poor participants whose results are potentially not representative.
nickjillings@1492 231
nickjillings@1501 232 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. This document is called the specification document and can be designed either by manually writing the XML (or modifying an existing document or template) or using our included test creator. These are standalone HTML pages which do not require any server or internet connection and help a build the test specification document. The first (test\_create.html) is for simpler tests and operates step-by-step to guide the user. It supports media through drag and drop and a clutter free interface. The advanced version is for more advanced tests where raw XML manipulation is not wanted but the same freedom is required (whilst keeping a safety net). Both models support automatic verification to ensure the XML file is valid and will highlight areas which are either incorrect and would cause an error, or options which should be removed as they are blank.
b@1479 233
nickjillings@1501 234 The basic test creator utilises the Web Audio API to perform quick playback checks and also allows for loudness normalisation techniques inspired from \cite{ape}. These are calculated offline by accessing the raw audio samples exposed from the buffer before being applied to the audio element as a gain attribute. This is used in the test to perform loudness normalisation without needing to edit any audio files. Equally the gain can be modified in either editor using an HTML5 slider or number box.
nickjillings@1492 235
nickjillings@1497 236 %Describe and/or visualise audioholder-audioelement-... structure.
nickjillings@1501 237 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 resulting buffers are assigned to a custom Audio Objects node which tracks the fragment buffer, the playback bufferSourceNode, the XML information including its unique test 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 Context node (not to be confused with the Web Audio Context). This parent JS Node allows for session wide control of the Audio Objects including starting and stopping playback of specific nodes.
nickjillings@1492 238
nickjillings@1501 239 The only issue with this model is the bufferNode in the Web Audio API, which is implemented in the standard as a `use once' object. Once the bufferNode has been played, the bufferNode must be discarded as it cannot be instructed to play the same bufferSourceNode again. Therefore on each start request the buffer object must be created and then linked with the stored bufferSourceNode. This is an odd behaviour for such a simple object which has no alternative except to use the HTML5 audio element. However they do not have the ability to synchronously start on a given time and therefore not suited.
b@1479 240
nickjillings@1501 241 In the test, each buffer node is connected to a gain node which will operate at the level determined by the specification document. Therefore it is possible to perform a 'Method of Adjustment' test where an interface could directly manipulate these gain nodes. There is also an optional 'Master Volume' slider which can be shown on the test GUI. This slider modifies a gain node before the destination node. This slider can also be monitored and therefore its data tracked providing extra validation. This slider is not indicative of the final volume exiting the speakers and therefore its use should only be considered in a lab condition environment to ensure proper behaviour. Finally the gain nodes allow for cross-fading between samples when operating in synchronous playback. Cross-fading can either be fade-out fade-in or a true cross-fade.
nickjillings@1492 242
nickjillings@1497 243 %Which type of files? WAV, anything else? Perhaps not exhaustive list, but say something along the lines of 'whatever browser supports'. Compatability?
nickjillings@1501 244 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 accpeted by every browser supporting the Web Audio API. The toolbox will work in any browser which supports the Web Audio API.
nickjillings@1492 245
nickjillings@1492 246 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 other interface-specific data points.
nickjillings@1492 247
b@1487 248 \section{Remote tests} % with previous?
b@1479 249 \label{sec:remote}
b@1488 250
nickjillings@1501 251 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 so that participants can take part remotely. 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 a wide range of metrics logged during the test 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@1488 252 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@1488 253
b@1486 254 The following features allow easy and effective remote testing:
b@1479 255 \begin{description}[noitemsep,nolistsep]
b@1479 256 \item[PHP script to collect result XML files] and store on central server.
b@1479 257 \item[Randomly pick a specified number of pages] to ensure an equal and randomised spread of the different pages (`audioHolders') across participants.
b@1479 258 \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@1492 259 % In theory calibration could be applied anywhere??
b@1479 260 % \item Functionality to participate multiple times
b@1479 261 % \begin{itemize}[noitemsep,nolistsep]
b@1479 262 % \item Possible to log in with unique ID (no password)
b@1479 263 % \item Pick `new user' (generates new, unique ID) or `already participated' (need already available ID)
b@1479 264 % \item Store XML on server with IDs plus which audioholders have already been listened to
b@1479 265 % \item Don't show `post-test' survey after first time
b@1479 266 % \item Pick `new' audioholders if available
b@1479 267 % \item Copy survey information first time to new XMLs
b@1479 268 % \end{itemize}
b@1479 269 \item[Intermediate saves] for tests which were interrupted or unfinished.
b@1479 270 \item[Collect IP address information] for geographic location, through PHP function which grabs address and appends to XML file.
b@1479 271 \item[Collect Browser and Display information] to the extent it is available and reliable.
b@1479 272 \end{description}
b@1486 273
b@1481 274
b@1487 275 \section{Interfaces} % title? 'Front end'? % Dave
b@1479 276 \label{sec:interfaces}
djmoffat@1491 277
nickjillings@1501 278 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.
djmoffat@1491 279
b@1493 280 To provide users with a flexible system, a large range of `standard' listening test interfaces have been implemented, including: % pretty much the same wording as two sentences earlier
djmoffat@1491 281 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 282 \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
nickjillings@1498 283 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 284 \item Multiple stimuli are presented and rated on a continuous scale, which includes a reference, hidden reference and hidden anchors.
djmoffat@1491 285 \end{itemize}
djmoffat@1491 286 \item Rank Scale~\cite{pascoe1983evaluation}
nickjillings@1498 287 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 288 \item Stimuli ranked on single horizontal scale, where they are ordered in preference order.
djmoffat@1491 289 \end{itemize}
djmoffat@1491 290 \item Likert scale~\cite{likert1932technique}
nickjillings@1498 291 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 292 \item Each stimuli has a five point scale with values: Strongly Agree, Agree, Neutral, Disagree and Strongly Disagree.
djmoffat@1491 293 \end{itemize}
djmoffat@1491 294 \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116} (Mean Opinion Score: MOS)
nickjillings@1498 295 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 296 \item Each stimulus has a continuous scale (5-1), labeled as Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying.
djmoffat@1491 297 \end{itemize}
djmoffat@1491 298 \item -50 to 50 Bipolar with Ref
nickjillings@1498 299 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 300 \item Each stimulus has a continuous scale -50 to 50 with default values as 0 in middle and a comparison. There is also a provided reference \end{itemize}
djmoffat@1491 301 \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
nickjillings@1498 302 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 303 \item Each stimuli has a five point scale with values: Bad, Poor, Fair, Good, Excellent
djmoffat@1491 304 \end{itemize}
djmoffat@1491 305 \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
nickjillings@1498 306 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 307 \item Each stimuli has a five point scale with values: (5) Inaudible, (4) Audible but not annoying, (3) slightly annoying, (2) annoying, (1) very annoying.
djmoffat@1491 308 \end{itemize}
djmoffat@1491 309 \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
nickjillings@1498 310 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 311 \item Each stimuli has a seven point scale with values: Much Better, Better, Slightly Better, About the same, slightly worse, worse, much worse. There is also a provided reference.
djmoffat@1491 312 \end{itemize}
djmoffat@1491 313 \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
nickjillings@1498 314 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 315 \item 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.
djmoffat@1491 316 \end{itemize}
djmoffat@1491 317 \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
nickjillings@1498 318 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 319 \item Each stimuli has a five point scale with values: (5) Imperceptible, (4) Perceptible but not annoying, (3) slightly annoying, (2) annoying, (1) very annoying. There is also a provided reference.
djmoffat@1491 320 \end{itemize}
djmoffat@1491 321 \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
nickjillings@1498 322 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 323 \item A reference is provided and ever stimulus is rated as being either better or worse than the reference.
djmoffat@1491 324 \end{itemize}
djmoffat@1491 325 \item APE style \cite{ape}
nickjillings@1498 326 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 327 \item Multiple stimuli on a single horizontal slider for inter-sample rating.
djmoffat@1491 328 \end{itemize}
djmoffat@1491 329 \item Multi attribute ratings
nickjillings@1498 330 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 331 \item Multiple stimuli as points on a 2D plane for inter-sample rating (eg. Valence Arousal)
djmoffat@1491 332 \end{itemize}
djmoffat@1491 333 \item AB Test~\cite{lipshitz1981great}
nickjillings@1498 334 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 335 \item Two stimuli are presented at a time and the participant has to select a preferred stimulus.
djmoffat@1491 336 \end{itemize}
djmoffat@1491 337 \item ABX Test~\cite{clark1982high}
nickjillings@1498 338 \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 339 \item Two stimuli are presented along with a reference and the participant has to select a preferred stimulus, often the closest to the reference.
djmoffat@1491 340 \end{itemize}
djmoffat@1491 341 \end{itemize}
djmoffat@1491 342
nickjillings@1501 343 It is possible to include any number of references, anchors, hidden references and hidden anchors into all of these listening test formats.
djmoffat@1491 344
nickjillings@1501 345 Because of the design choice to separate the core code and interface modules, it is possible for a 3rd party interface to be built with minimal effort. The repository includes documentation on which functions must be called and the specific functions they expect your interface to perform. To this end, there is an `Interface' object which includes object prototypes for creating the on-page comment boxes (including those with radio or checkbox responses), start and stop buttons with function handles pre-attached and the playhead / transport bars.
nickjillings@1494 346
djmoffat@1491 347 %%%% \begin{itemize}[noitemsep,nolistsep]
djmoffat@1491 348 %%%% \item (APE style) \cite{ape}
djmoffat@1491 349 %%%% \item Multi attribute ratings
djmoffat@1491 350 %%%% \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
djmoffat@1491 351 %%%% \item Interval Scale~\cite{zacharov1999round}
djmoffat@1491 352 %%%% \item Rank Scale~\cite{pascoe1983evaluation}
djmoffat@1491 353 %%%%
djmoffat@1491 354 %%%% \item 2D Plane rating - e.g. Valence vs. Arousal~\cite{carroll1969individual}
djmoffat@1491 355 %%%% \item Likert scale~\cite{likert1932technique}
djmoffat@1491 356 %%%%
djmoffat@1491 357 %%%% \item {\bf All the following are the interfaces available in HULTI-GEN~\cite{hultigen} }
djmoffat@1491 358 %%%% \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116}
djmoffat@1491 359 %%%% \begin{itemize}
djmoffat@1491 360 %%%% \item Continuous Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)
djmoffat@1491 361 %%%% \end{itemize}
djmoffat@1491 362 %%%% \item -50 to 50 Bipolar with Ref
djmoffat@1491 363 %%%% \begin{itemize}
djmoffat@1491 364 %%%% \item Scale -50 to 50 on Mushra with default values as 0 in middle and a comparison ``Reference'' to compare to 0 value
djmoffat@1491 365 %%%% \end{itemize}
djmoffat@1491 366 %%%% \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
djmoffat@1491 367 %%%% \begin{itemize}
djmoffat@1491 368 %%%% \item 5 point Scale - Bad, Poor, Fair, Good, Excellent (Default fair?)
djmoffat@1491 369 %%%% \end{itemize}
djmoffat@1491 370 %%%% \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
djmoffat@1491 371 %%%% \begin{itemize}
djmoffat@1491 372 %%%% \item 5 point Scale - Inaudible, Audible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?) - {\it Basically just quantised ABC/HR?}
djmoffat@1491 373 %%%% \end{itemize}
djmoffat@1491 374 %%%% \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
djmoffat@1491 375 %%%% \begin{itemize}
djmoffat@1491 376 %%%% \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
djmoffat@1491 377 %%%% \end{itemize}
djmoffat@1491 378 %%%% \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
djmoffat@1491 379 %%%% \begin{itemize}
djmoffat@1491 380 %%%% \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
djmoffat@1491 381 %%%% \end{itemize}
djmoffat@1491 382 %%%% \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
djmoffat@1491 383 %%%% \begin{itemize}
djmoffat@1491 384 %%%% \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}
djmoffat@1491 385 %%%% \end{itemize}
djmoffat@1491 386 %%%% \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
djmoffat@1491 387 %%%% \begin{itemize}
djmoffat@1491 388 %%%% \item 2 point Scale - Better or Worse - (not sure how to default this - they default everything to better, which is an interesting choice)
djmoffat@1491 389 %%%% \end{itemize}
djmoffat@1491 390 %%%% \end{itemize}
djmoffat@1491 391
nickjillings@1494 392 % Build your own test
nickjillings@1496 393 \begin{comment}
djmoffat@1491 394 { \bf A screenshot would be nice.
djmoffat@1491 395
djmoffat@1491 396 Established tests (see below) included as `presets' in the build-your-own-test page. }
nickjillings@1496 397 \end{comment}
b@1481 398
b@1481 399 \section{Analysis and diagnostics}
b@1479 400 \label{sec:analysis}
b@1488 401 % don't mention Python scripts
b@1479 402 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.
b@1478 403 \begin{figure}[bhf]
b@1478 404 \centering
b@1478 405 \includegraphics[width=.5\textwidth]{boxplot.png}
b@1478 406 %\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 407 \caption{Box and whisker plot showing the aggregated numerical ratings of six stimuli by a group of subjects.}
b@1478 408 \label{fig:timeline}
b@1478 409 \end{figure}
b@1479 410 For this reason, we include a proof-of-concept web page with:
b@1489 411 \begin{itemize}[noitemsep,nolistsep]
b@1479 412 \item All audioholder IDs, file names, subject IDs, audio element IDs, ... in the collected XMLs so far (\texttt{saves/*.xml})
b@1479 413 \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 414 \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 415 \item Scatter plot, confidence plot and box plot of rating values (see Figure )
nickjillings@1500 416 \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@1500 417 \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 418 \item All `comments' on a specific audioelement
nickjillings@1500 419 \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@1500 420 %\item Validation of setup XMLs (easily spot `errors', like duplicate IDs or URLs, missing/dangling tags, ...)
b@1484 421 \end{itemize}
b@1484 422
nickjillings@1500 423
nickjillings@1497 424 %A subset of the above would already be nice for this paper.
nickjillings@1498 425 [Some pictures here please.]
b@1479 426 \section{Concluding remarks and future work}
b@1479 427 \label{sec:conclusion}
b@1484 428
nickjillings@1498 429 The code and documentation can be pulled or downloaded from our online repository available at \url{code.soundsoftware.ac.uk/projects/webaudioevaluationtool}.
b@1481 430
b@1488 431 [Talking a little bit about what else might happen. Unless we really want to wrap this up. ]
nickjillings@1496 432
b@1479 433 \cite{schoeffler2015mushra} gives a `checklist' for subjective evaluation of audio systems. The Web Audio Evaluation Toolbox meets most of its given requirements including remote testing, crossfading between audio streams, collecting browser information, utilising UI elements and working with various audio formats including uncompressed PCM or WAV format.
b@1488 434 % remote
b@1488 435 % language support (not explicitly stated)
b@1488 436 % crossfades
nickjillings@1495 437 % choosing speakers/sound device from within browser? --- NOT POSSIBLE, can only determine channel output counts and its up to the hardware to determine
b@1488 438 % collect information about software and sound system
b@1488 439 % buttons, scales, ... UI elements
b@1488 440 % must be able to load uncompressed PCM
b@1488 441
b@1488 442 [What can we not do? `Method of adjustment', as in \cite{schoeffler2015mushra} is another can of worms, because, like, you could adjust lots of things (volume is just one of them, that could be done quite easily). Same for using input signals like the participant's voice. Either leave out, or mention this requires modification of the code we provide.]
b@1481 443
b@1481 444 %
b@1481 445 % The following two commands are all you need in the
b@1481 446 % initial runs of your .tex file to
b@1481 447 % produce the bibliography for the citations in your paper.
b@1481 448 \bibliographystyle{abbrv}
b@1481 449 \bibliography{WAC2016} % sigproc.bib is the name of the Bibliography in this case
b@1481 450 % You must have a proper ".bib" file
b@1481 451 % and remember to run:
b@1481 452 % latex bibtex latex latex
b@1481 453 % to resolve all references
b@1481 454 %
b@1481 455 % ACM needs 'a single self-contained file'!
b@1481 456 %
b@1481 457 \end{document}