annotate docs/WAC2016/WAC2016.tex @ 559:7567dda76333 Dev_main

Bug #1629: Updated on page progress counter to reflect if using a subset.
author Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk>
date Tue, 23 Feb 2016 16:10:22 +0000
parents afe33269b62a
children 653c8523e541
rev   line source
b@308 1 \documentclass{sig-alternate}
b@318 2 \usepackage{hyperref} % make links (like references, links to Sections, ...) clickable
b@318 3 \usepackage{enumitem} % tighten itemize etc by appending '[noitemsep,nolistsep]'
d@321 4 \usepackage{cleveref}
b@308 5
b@329 6 \graphicspath{{img/}} % put the images in this folder
b@329 7
b@308 8 \begin{document}
b@308 9
b@308 10 % Copyright
b@308 11 \setcopyright{waclicense}
b@308 12
nicholas@337 13 \newcommand*\rot{\rotatebox{90}}
nicholas@337 14
b@308 15
b@308 16 %% DOI
b@308 17 %\doi{10.475/123_4}
b@308 18 %
b@308 19 %% ISBN
b@308 20 %\isbn{123-4567-24-567/08/06}
b@308 21 %
b@308 22 %%Conference
b@308 23 %\conferenceinfo{PLDI '13}{June 16--19, 2013, Seattle, WA, USA}
b@308 24 %
b@308 25 %\acmPrice{\$15.00}
b@308 26
b@308 27 %
b@308 28 % --- Author Metadata here ---
b@308 29 \conferenceinfo{Web Audio Conference WAC-2016,}{April 4--6, 2016, Atlanta, USA}
b@308 30 \CopyrightYear{2016} % Allows default copyright year (20XX) to be over-ridden - IF NEED BE.
b@308 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@308 32 % --- End of Author Metadata ---
b@308 33
b@320 34 \title{Web Audio Evaluation Tool: A framework for subjective assessment of audio}
b@308 35 %\subtitle{[Extended Abstract]
b@308 36 %\titlenote{A full version of this paper is available as
b@308 37 %\textit{Author's Guide to Preparing ACM SIG Proceedings Using
b@308 38 %\LaTeX$2_\epsilon$\ and BibTeX} at
b@308 39 %\texttt{www.acm.org/eaddress.htm}}}
b@308 40 %
b@308 41 % You need the command \numberofauthors to handle the 'placement
b@308 42 % and alignment' of the authors beneath the title.
b@308 43 %
b@308 44 % For aesthetic reasons, we recommend 'three authors at a time'
b@308 45 % i.e. three 'name/affiliation blocks' be placed beneath the title.
b@308 46 %
b@308 47 % NOTE: You are NOT restricted in how many 'rows' of
b@308 48 % "name/affiliations" may appear. We just ask that you restrict
b@308 49 % the number of 'columns' to three.
b@308 50 %
b@308 51 % Because of the available 'opening page real-estate'
b@308 52 % we ask you to refrain from putting more than six authors
b@308 53 % (two rows with three columns) beneath the article title.
b@308 54 % More than six makes the first-page appear very cluttered indeed.
b@308 55 %
b@308 56 % Use the \alignauthor commands to handle the names
b@308 57 % and affiliations for an 'aesthetic maximum' of six authors.
b@308 58 % Add names, affiliations, addresses for
b@308 59 % the seventh etc. author(s) as the argument for the
b@308 60 % \additionalauthors command.
b@308 61 % These 'additional authors' will be output/set for you
b@308 62 % without further effort on your part as the last section in
b@308 63 % the body of your article BEFORE References or any Appendices.
b@308 64
b@316 65 % FIVE authors instead of four, to leave space between first two authors.
n@532 66 \numberofauthors{6} % in this sample file, there are a *total*
b@308 67 % of EIGHT authors. SIX appear on the 'first-page' (for formatting
b@308 68 % reasons) and the remaining two appear in the \additionalauthors section.
b@308 69 %
b@308 70 \author{
b@308 71 % You can go ahead and credit any number of authors here,
b@308 72 % e.g. one 'row of three' or two rows (consisting of one row of three
b@308 73 % and a second row of one, two or three).
b@308 74 %
b@308 75 % The command \alignauthor (no curly braces needed) should
b@308 76 % precede each author name, affiliation/snail-mail address and
b@308 77 % e-mail address. Additionally, tag each line of
b@308 78 % affiliation/address with \affaddr, and tag the
b@308 79 % e-mail address with \email.
b@308 80 %
b@308 81 % 1st. author
n@532 82 \alignauthor Nicholas Jillings\textsuperscript{2}\\
n@528 83 \email{nicholas.jillings@mail.bcu.ac.uk}
n@532 84 % 2nd. author
n@528 85 \alignauthor
n@532 86 \alignauthor Brecht De Man\textsuperscript{1}\\
n@532 87 \email{b.deman@qmul.ac.uk}
n@528 88 \and
n@528 89 % use '\and' if you need 'another row' of author names
b@308 90 % 3rd. author
n@532 91 \alignauthor David Moffat\textsuperscript{1}\\
b@308 92 \email{d.j.moffat@qmul.ac.uk}
b@308 93 % 4th. author
n@532 94 \alignauthor Joshua D. Reiss\textsuperscript{1}\\
b@308 95 \email{joshua.reiss@qmul.ac.uk}
n@532 96 \alignauthor Ryan Stables\textsuperscript{2}\\
n@532 97 \email{ryan.stables@bcu.ac.uk}
b@316 98 \and % new line for address
n@532 99 \affaddr{Centre for Digital Music, School of Electronic Engineering and Computer Science\textsuperscript{1}}\\
b@308 100 \affaddr{Queen Mary University of London}\\
b@308 101 \affaddr{Mile End Road,}
b@308 102 \affaddr{London E1 4NS}\\
b@308 103 \affaddr{United Kingdom}\\
n@532 104 \and
n@532 105 \affaddr{Digital Media Technology Lab\textsuperscript{2}}\\
n@532 106 \affaddr{Birmingham City University}\\
n@532 107 \affaddr{Birmingham B4 7XG}\\
n@532 108 \affaddr{United Kingdom}\\
b@308 109 }
b@308 110 %Centre for Digital Music, School of Electronic Engineering and Computer Science, Queen Mary University of London
b@308 111 %% 5th. author
b@308 112 %\alignauthor Sean Fogarty\\
b@308 113 % \affaddr{NASA Ames Research Center}\\
b@308 114 % \affaddr{Moffett Field}\\
b@308 115 % \email{fogartys@amesres.org}
b@308 116 %% 6th. author
b@308 117 %\alignauthor Charles Palmer\\
b@308 118 % \affaddr{Palmer Research Laboratories}\\
b@308 119 % \affaddr{8600 Datapoint Drive}\\
b@308 120 % \email{cpalmer@prl.com}
b@308 121 %}
b@308 122 % There's nothing stopping you putting the seventh, eighth, etc.
b@308 123 % author on the opening page (as the 'third row') but we ask,
b@308 124 % for aesthetic reasons that you place these 'additional authors'
b@308 125 % in the \additional authors block, viz.
b@308 126 %\additionalauthors{Additional authors: John Smith (The Th{\o}rv{\"a}ld Group,
b@308 127 %email: {\texttt{jsmith@affiliation.org}}) and Julius P.~Kumquat
b@308 128 %(The Kumquat Consortium, email: {\texttt{jpkumquat@consortium.net}}).}
b@308 129 \date{1 October 2015}
b@308 130 % Just remember to make sure that the TOTAL number of authors
b@308 131 % is the number that will appear on the first page PLUS the
b@308 132 % number that will appear in the \additionalauthors section.
b@308 133
b@308 134 \maketitle
b@308 135 \begin{abstract}
nicholas@340 136
nicholas@342 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.
nicholas@340 138
b@308 139 \end{abstract}
b@308 140
b@308 141
b@308 142 \section{Introduction}
b@317 143
b@317 144 % Listening tests/perceptual audio evaluation: what are they, why are they important
b@317 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...
nicholas@335 146 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@329 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@329 148 % maybe some references? If there's space.
b@317 149
b@318 150 % check out http://link.springer.com/article/10.1007/s10055-015-0270-8 - only paper that cited WAC15 paper
b@318 151
nicholas@328 152 % Why difficult? Challenges? What constitutes a good interface?
nicholas@328 153 % Technical, interfaces, user friendliness, reliability
b@341 154 Several applications for performing perceptual listening tests currently exist. A review of existing listening test frameworks was undertaken and presented in~\Cref{tab:toolboxes}. Note that 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.
nicholas@342 155
nicholas@342 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 allows for customisation of each test interface, without requiring knowledge of any programming language. The Web Audio Evaluation Toolbox (WAET), presented here, 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 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@317 157
b@317 158 % Why in the browser?
nicholas@342 159 The Web Audio API provides important features including sample level manipulation of audio streams \cite{schoeffler2015mushra} and 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 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 \cite{schoeffler2015mushra}.
b@329 160
b@341 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@316 162
b@316 163 % only browser-based?
d@321 164 \begin{table*}[ht]
n@334 165 \caption{Table with existing listening test platforms and their features}
nicholas@337 166 \small
n@334 167 \begin{center}
nicholas@337 168 \begin{tabular}{|*{9}{l|}}
n@334 169 \hline
nicholas@337 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
nicholas@337 171 \textbf{Reference} & \cite{ape} & \cite{beaqlejs} & \cite{hultigen} & & \cite{mushram} & \cite{scale} & \cite{whisper} & \cite{waet} \\ \hline
nicholas@337 172 \textbf{Language} & MATLAB & JS & MAX & JS & MATLAB & MATLAB & MATLAB & JS \\ \hline
b@341 173 \textbf{Remote} & & (\checkmark) & & \checkmark & & & & \checkmark \\ \hline \hline
nicholas@337 174 MUSHRA (ITU-R BS. 1534) & & \checkmark & \checkmark & \checkmark & \checkmark & & & \checkmark \\ \hline
nicholas@337 175 APE & \checkmark & & & & & & & \checkmark \\ \hline
nicholas@337 176 Rank Scale & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 177 Likert Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nicholas@337 178 ABC/HR (ITU-R BS. 1116) & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 179 -50 to 50 Bipolar with ref. & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 180 Absolute Category Rating Scale & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@342 181 Degradation Category Rating Scale & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 182 Comparison Category Rating Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nicholas@337 183 9 Point Hedonic Category Rating Scale & & & \checkmark & & & & \checkmark & \checkmark \\ \hline
nicholas@337 184 ITU-R 5 Continuous Impairment Scale & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 185 Pairwise / AB Test & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 186 Multi-attribute ratings & & & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 187 ABX Test & & \checkmark & \checkmark & & & & & \checkmark \\ \hline
nicholas@337 188 Adaptive psychophysical methods & & & & & & & \checkmark & \\ \hline
nicholas@337 189 Repertory Grid Technique & & & & & & & \checkmark & \\ \hline
b@341 190 Semantic Differential & & & & & & \checkmark & \checkmark &\checkmark \\ \hline
nicholas@337 191 n-Alternative Forced Choice & & & & & & \checkmark & & \\ \hline
n@334 192 \end{tabular}
n@334 193 \end{center}
n@334 194 \label{tab:toolboxes}
nicholas@337 195 \end{table*}
b@316 196 %
nicholas@328 197 %Selling points: remote tests, visualisaton, create your own test in the browser, many interfaces, few/no dependencies, flexibility
b@317 198
nicholas@331 199 %[Talking about what we do in the various sections of this paper. Referring to \cite{waet}. ]
nicholas@342 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 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. 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@341 201
b@336 202 \begin{figure}[tb]
b@336 203 \centering
b@336 204 \includegraphics[width=.5\textwidth]{interface.png}
b@336 205 \caption{A simple example of a multi-stimulus, single attribute, single rating scale test with a reference and comment fields.}
b@336 206 \label{fig:interface}
b@336 207 \end{figure}
b@336 208
nicholas@328 209 \begin{comment}
b@320 210 % MEETING 8 OCTOBER
b@320 211 \subsection{Meeting 8 October}
b@320 212 \begin{itemize}
b@320 213 \item Do we manipulate audio?\\
b@320 214 \begin{itemize}
b@320 215 \item Add loudness equalisation? (test\_create.html) Tag with gains.
b@320 216 \item Add volume slider?
b@320 217 \item Cross-fade (in interface node): default 0, number of seconds
b@320 218 \item Also: we use the playback buffer to present metrics of which portion is listened to
b@320 219 \end{itemize}
b@320 220 \item Logging system information: whichever are possible (justify others)
b@320 221 \item Input streams as audioelements
b@320 222 \item Capture microphone to estimate loudness (especially Macbook)
b@320 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@320 224 \item Record IP address (PHP function, grab and append to XML file)
b@320 225 \item Expand anchor/reference options
b@320 226 \item AB / ABX
b@320 227 \end{itemize}
b@320 228
b@320 229 \subsubsection{Issues}
b@320 230 \begin{itemize}
b@320 231 \item Filters not consistent (Nick to test across browsers)
b@320 232 \item Playback audiobuffers need to be destroyed and rebuilt each time
b@320 233 \item Can't get channel data, hardware input/output...
b@320 234 \end{itemize}
nicholas@328 235 \end{comment}
b@316 236
b@317 237 \section{Architecture} % title? 'back end'? % NICK
n@334 238 \label{sec:architecture}
nicholas@331 239 %A slightly technical overview of the system. Talk about XML, JavaScript, Web Audio API, HTML5.
b@329 240
nicholas@342 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.
nicholas@322 242
nicholas@342 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. This document is the specification document and can be designed either by manually writing the XML (or modifying an existing document or template) or using the included test creator. These standalone HTML pages do not require any server or internet connection and help a build the specification document. The first (test\_create.html) is for simple tests and operates step-by-step to guide the user through a drag and drop, clutter free interface. The advanced version is for more complex tests. 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.
nicholas@322 244
nicholas@342 245 The basic test creator, Figure \ref{fig:test_create}, 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. Therefore the tool performs loudness normalisation without editing any audio files. Equally the gain attribute can be modified in either editor using an HTML5 slider or number box respectively.
nicholas@342 246 \begin{comment}
nicholas@340 247 \begin{figure}[h!]
nicholas@340 248 \centering
nicholas@340 249 \includegraphics[width=.45\textwidth]{test_create_2.png}
nicholas@340 250 \caption{Screen-shot of test creator tool using drag and drop to create specification document}
nicholas@340 251 \label{fig:test_create}
nicholas@340 252 \end{figure}
nicholas@342 253 \end{comment}
nicholas@328 254
nicholas@331 255 %Describe and/or visualise audioholder-audioelement-... structure.
nicholas@342 256 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 \textit{bufferSourceNode}, other specification attributes 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.
nicholas@322 257
nicholas@342 258 The only issue with this model is the \textit{bufferNode} in the Web Audio API, implemented in the standard as a `use once' object. Once this has been played, the node must be discarded as it cannot be instructed to play the same \textit{bufferSourceNode} again. Therefore on each play request the buffer object must be created and then linked with the stored \textit{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.
nicholas@322 259
nicholas@342 260 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. 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. 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 is not indicative of the final volume exiting the speakers and therefore its use should only be considered in a lab environment to ensure proper usage.
nicholas@328 261
nicholas@331 262 %Which type of files? WAV, anything else? Perhaps not exhaustive list, but say something along the lines of 'whatever browser supports'. Compatability?
nicholas@342 263 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. The toolbox will work in any browser which supports the Web Audio API.
nicholas@322 264
nicholas@322 265 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.
nicholas@322 266
b@316 267 \section{Remote tests} % with previous?
b@329 268 \label{sec:remote}
b@317 269
nicholas@335 270 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@317 271 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@317 272
b@315 273 The following features allow easy and effective remote testing:
b@329 274 \begin{description}[noitemsep,nolistsep]
b@329 275 \item[PHP script to collect result XML files] and store on central server.
b@329 276 \item[Randomly pick a specified number of pages] to ensure an equal and randomised spread of the different pages (`audioHolders') across participants.
b@329 277 \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.
nicholas@322 278 % In theory calibration could be applied anywhere??
b@329 279 % \item Functionality to participate multiple times
b@329 280 % \begin{itemize}[noitemsep,nolistsep]
b@329 281 % \item Possible to log in with unique ID (no password)
b@329 282 % \item Pick `new user' (generates new, unique ID) or `already participated' (need already available ID)
b@329 283 % \item Store XML on server with IDs plus which audioholders have already been listened to
b@329 284 % \item Don't show `post-test' survey after first time
b@329 285 % \item Pick `new' audioholders if available
b@329 286 % \item Copy survey information first time to new XMLs
b@329 287 % \end{itemize}
b@329 288 \item[Intermediate saves] for tests which were interrupted or unfinished.
b@329 289 \item[Collect IP address information] for geographic location, through PHP function which grabs address and appends to XML file.
b@329 290 \item[Collect Browser and Display information] to the extent it is available and reliable.
b@329 291 \end{description}
b@315 292
b@308 293
b@316 294 \section{Interfaces} % title? 'Front end'? % Dave
b@329 295 \label{sec:interfaces}
d@321 296
nicholas@335 297 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.
d@321 298
b@323 299 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
d@321 300 \begin{itemize}[noitemsep,nolistsep]
d@321 301 \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
nicholas@342 302 \begin{comment}
nicholas@332 303 \begin{itemize}[noitemsep,nolistsep]
d@321 304 \item Multiple stimuli are presented and rated on a continuous scale, which includes a reference, hidden reference and hidden anchors.
d@321 305 \end{itemize}
nicholas@342 306 \end{comment}
nicholas@342 307 \item Rank Scale~\cite{pascoe1983evaluation}: stimuli ranked on single horizontal scale, where they are ordered in preference order.
nicholas@342 308 \item Likert scale~\cite{likert1932technique}: each stimuli has a five point scale with values: Strongly Agree, Agree, Neutral, Disagree and Strongly Disagree.
nicholas@342 309 \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.
nicholas@342 310 \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.
nicholas@342 311 \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}: Likert but labels are Bad, Poor, Fair, Good, Excellent
nicholas@342 312 \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.
nicholas@342 313 \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.
nicholas@342 314 \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.
nicholas@342 315 \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}: Same as ABC/HR but with a reference.
nicholas@342 316 \item Pairwise Comparison (Better/Worse)~\cite{david1963method}: every stimulus is rated as being either better or worse than the reference.
nicholas@342 317 \item APE style \cite{ape}: Multiple stimuli as points on a 2D plane for inter-sample rating (eg. Valence Arousal)
nicholas@342 318 \item AB Test~\cite{lipshitz1981great}: Two stimuli presented at a time, participant selects a preferred stimulus.
nicholas@342 319 \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.
d@321 320 \end{itemize}
d@321 321
nicholas@335 322 It is possible to include any number of references, anchors, hidden references and hidden anchors into all of these listening test formats.
d@321 323
nicholas@342 324 Because of the design 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. 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.
n@326 325
d@321 326 %%%% \begin{itemize}[noitemsep,nolistsep]
d@321 327 %%%% \item (APE style) \cite{ape}
d@321 328 %%%% \item Multi attribute ratings
d@321 329 %%%% \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
d@321 330 %%%% \item Interval Scale~\cite{zacharov1999round}
d@321 331 %%%% \item Rank Scale~\cite{pascoe1983evaluation}
d@321 332 %%%%
d@321 333 %%%% \item 2D Plane rating - e.g. Valence vs. Arousal~\cite{carroll1969individual}
d@321 334 %%%% \item Likert scale~\cite{likert1932technique}
d@321 335 %%%%
d@321 336 %%%% \item {\bf All the following are the interfaces available in HULTI-GEN~\cite{hultigen} }
d@321 337 %%%% \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116}
d@321 338 %%%% \begin{itemize}
d@321 339 %%%% \item Continuous Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)
d@321 340 %%%% \end{itemize}
d@321 341 %%%% \item -50 to 50 Bipolar with Ref
d@321 342 %%%% \begin{itemize}
d@321 343 %%%% \item Scale -50 to 50 on Mushra with default values as 0 in middle and a comparison ``Reference'' to compare to 0 value
d@321 344 %%%% \end{itemize}
d@321 345 %%%% \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
d@321 346 %%%% \begin{itemize}
d@321 347 %%%% \item 5 point Scale - Bad, Poor, Fair, Good, Excellent (Default fair?)
d@321 348 %%%% \end{itemize}
d@321 349 %%%% \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
d@321 350 %%%% \begin{itemize}
d@321 351 %%%% \item 5 point Scale - Inaudible, Audible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?) - {\it Basically just quantised ABC/HR?}
d@321 352 %%%% \end{itemize}
d@321 353 %%%% \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
d@321 354 %%%% \begin{itemize}
d@321 355 %%%% \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
d@321 356 %%%% \end{itemize}
d@321 357 %%%% \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
d@321 358 %%%% \begin{itemize}
d@321 359 %%%% \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
d@321 360 %%%% \end{itemize}
d@321 361 %%%% \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
d@321 362 %%%% \begin{itemize}
d@321 363 %%%% \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}
d@321 364 %%%% \end{itemize}
d@321 365 %%%% \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
d@321 366 %%%% \begin{itemize}
d@321 367 %%%% \item 2 point Scale - Better or Worse - (not sure how to default this - they default everything to better, which is an interesting choice)
d@321 368 %%%% \end{itemize}
d@321 369 %%%% \end{itemize}
d@321 370
n@326 371 % Build your own test
nicholas@340 372
nicholas@328 373 \begin{comment}
d@321 374 { \bf A screenshot would be nice.
d@321 375
d@321 376 Established tests (see below) included as `presets' in the build-your-own-test page. }
nicholas@328 377 \end{comment}
b@308 378
b@308 379 \section{Analysis and diagnostics}
b@329 380 \label{sec:analysis}
b@317 381 % don't mention Python scripts
b@329 382 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.
n@532 383 \begin{figure}[bh]
b@336 384 \centering
b@336 385 \includegraphics[width=.5\textwidth]{boxplot.png}
b@336 386 %\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@336 387 \caption{Box and whisker plot showing the aggregated numerical ratings of six stimuli by a group of subjects.}
b@336 388 \label{fig:timeline}
b@336 389 \end{figure}
b@329 390 For this reason, we include a proof-of-concept web page with:
b@318 391 \begin{itemize}[noitemsep,nolistsep]
b@329 392 \item All audioholder IDs, file names, subject IDs, audio element IDs, ... in the collected XMLs so far (\texttt{saves/*.xml})
b@329 393 \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@329 394 \item Embedded audio to hear corresponding test samples % (follow path in XML setup file, which is also embedded in the XML result file)
b@336 395 \item Scatter plot, confidence plot and box plot of rating values (see Figure )
n@334 396 \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...)
n@334 397 \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@312 398 \item All `comments' on a specific audioelement
n@334 399 \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
n@334 400 %\item Validation of setup XMLs (easily spot `errors', like duplicate IDs or URLs, missing/dangling tags, ...)
b@312 401 \end{itemize}
b@312 402
n@334 403
nicholas@331 404 %A subset of the above would already be nice for this paper.
b@316 405 \section{Concluding remarks and future work}
b@329 406 \label{sec:conclusion}
b@341 407
nicholas@342 408 We have developed a browser-based tool for the design and deployment of listening tests, essentially requiring no programming experience and third party 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@341 409
nicholas@342 410 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 any 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@308 411
nicholas@332 412 The code and documentation can be pulled or downloaded from our online repository available at \url{code.soundsoftware.ac.uk/projects/webaudioevaluationtool}.
b@317 413 % remote
b@317 414 % language support (not explicitly stated)
b@317 415 % crossfades
n@327 416 % choosing speakers/sound device from within browser? --- NOT POSSIBLE, can only determine channel output counts and its up to the hardware to determine
b@317 417 % collect information about software and sound system
b@317 418 % buttons, scales, ... UI elements
b@317 419 % must be able to load uncompressed PCM
b@317 420
b@308 421 %
b@308 422 % The following two commands are all you need in the
b@308 423 % initial runs of your .tex file to
b@308 424 % produce the bibliography for the citations in your paper.
nicholas@340 425 \bibliographystyle{ieeetr}
nicholas@342 426 \small
b@308 427 \bibliography{WAC2016} % sigproc.bib is the name of the Bibliography in this case
b@308 428 % You must have a proper ".bib" file
b@308 429 % and remember to run:
b@308 430 % latex bibtex latex latex
b@308 431 % to resolve all references
b@308 432 %
b@308 433 % ACM needs 'a single self-contained file'!
b@308 434 %
b@308 435 \end{document}