annotate docs/WAC2016/WAC2016.tex @ 333:045825a3b2ba WAC2016

stash.
author Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk>
date Thu, 15 Oct 2015 10:24:25 +0100
parents 8207063052bf
children 4d663ce6b6d0
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
b@308 13
b@308 14 %% DOI
b@308 15 %\doi{10.475/123_4}
b@308 16 %
b@308 17 %% ISBN
b@308 18 %\isbn{123-4567-24-567/08/06}
b@308 19 %
b@308 20 %%Conference
b@308 21 %\conferenceinfo{PLDI '13}{June 16--19, 2013, Seattle, WA, USA}
b@308 22 %
b@308 23 %\acmPrice{\$15.00}
b@308 24
b@308 25 %
b@308 26 % --- Author Metadata here ---
b@308 27 \conferenceinfo{Web Audio Conference WAC-2016,}{April 4--6, 2016, Atlanta, USA}
b@308 28 \CopyrightYear{2016} % Allows default copyright year (20XX) to be over-ridden - IF NEED BE.
b@308 29 %\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 30 % --- End of Author Metadata ---
b@308 31
b@320 32 \title{Web Audio Evaluation Tool: A framework for subjective assessment of audio}
b@308 33 %\subtitle{[Extended Abstract]
b@308 34 %\titlenote{A full version of this paper is available as
b@308 35 %\textit{Author's Guide to Preparing ACM SIG Proceedings Using
b@308 36 %\LaTeX$2_\epsilon$\ and BibTeX} at
b@308 37 %\texttt{www.acm.org/eaddress.htm}}}
b@308 38 %
b@308 39 % You need the command \numberofauthors to handle the 'placement
b@308 40 % and alignment' of the authors beneath the title.
b@308 41 %
b@308 42 % For aesthetic reasons, we recommend 'three authors at a time'
b@308 43 % i.e. three 'name/affiliation blocks' be placed beneath the title.
b@308 44 %
b@308 45 % NOTE: You are NOT restricted in how many 'rows' of
b@308 46 % "name/affiliations" may appear. We just ask that you restrict
b@308 47 % the number of 'columns' to three.
b@308 48 %
b@308 49 % Because of the available 'opening page real-estate'
b@308 50 % we ask you to refrain from putting more than six authors
b@308 51 % (two rows with three columns) beneath the article title.
b@308 52 % More than six makes the first-page appear very cluttered indeed.
b@308 53 %
b@308 54 % Use the \alignauthor commands to handle the names
b@308 55 % and affiliations for an 'aesthetic maximum' of six authors.
b@308 56 % Add names, affiliations, addresses for
b@308 57 % the seventh etc. author(s) as the argument for the
b@308 58 % \additionalauthors command.
b@308 59 % These 'additional authors' will be output/set for you
b@308 60 % without further effort on your part as the last section in
b@308 61 % the body of your article BEFORE References or any Appendices.
b@308 62
b@316 63 % FIVE authors instead of four, to leave space between first two authors.
d@310 64 \numberofauthors{5} % in this sample file, there are a *total*
b@308 65 % of EIGHT authors. SIX appear on the 'first-page' (for formatting
b@308 66 % reasons) and the remaining two appear in the \additionalauthors section.
b@308 67 %
b@308 68 \author{
b@308 69 % You can go ahead and credit any number of authors here,
b@308 70 % e.g. one 'row of three' or two rows (consisting of one row of three
b@308 71 % and a second row of one, two or three).
b@308 72 %
b@308 73 % The command \alignauthor (no curly braces needed) should
b@308 74 % precede each author name, affiliation/snail-mail address and
b@308 75 % e-mail address. Additionally, tag each line of
b@308 76 % affiliation/address with \affaddr, and tag the
b@308 77 % e-mail address with \email.
b@308 78 %
b@308 79 % 1st. author
b@308 80 \alignauthor Nicholas Jillings\\
b@308 81 \email{n.g.r.jillings@se14.qmul.ac.uk}
b@316 82 % dummy author for nicer spacing
b@316 83 \alignauthor
b@308 84 % 2nd. author
b@308 85 \alignauthor Brecht De Man\\
b@308 86 \email{b.deman@qmul.ac.uk}
b@308 87 \and % use '\and' if you need 'another row' of author names
b@308 88 % 3rd. author
b@308 89 \alignauthor David Moffat\\
b@308 90 \email{d.j.moffat@qmul.ac.uk}
b@308 91 % 4th. author
b@308 92 \alignauthor Joshua D. Reiss\\
b@308 93 \email{joshua.reiss@qmul.ac.uk}
b@316 94 \and % new line for address
b@308 95 \affaddr{Centre for Digital Music}\\
b@308 96 \affaddr{School of Electronic Engineering and Computer Science}\\
b@308 97 \affaddr{Queen Mary University of London}\\
b@308 98 \affaddr{Mile End Road,}
b@308 99 \affaddr{London E1 4NS}\\
b@308 100 \affaddr{United Kingdom}\\
b@308 101 }
b@308 102 %Centre for Digital Music, School of Electronic Engineering and Computer Science, Queen Mary University of London
b@308 103 %% 5th. author
b@308 104 %\alignauthor Sean Fogarty\\
b@308 105 % \affaddr{NASA Ames Research Center}\\
b@308 106 % \affaddr{Moffett Field}\\
b@308 107 % \email{fogartys@amesres.org}
b@308 108 %% 6th. author
b@308 109 %\alignauthor Charles Palmer\\
b@308 110 % \affaddr{Palmer Research Laboratories}\\
b@308 111 % \affaddr{8600 Datapoint Drive}\\
b@308 112 % \email{cpalmer@prl.com}
b@308 113 %}
b@308 114 % There's nothing stopping you putting the seventh, eighth, etc.
b@308 115 % author on the opening page (as the 'third row') but we ask,
b@308 116 % for aesthetic reasons that you place these 'additional authors'
b@308 117 % in the \additional authors block, viz.
b@308 118 %\additionalauthors{Additional authors: John Smith (The Th{\o}rv{\"a}ld Group,
b@308 119 %email: {\texttt{jsmith@affiliation.org}}) and Julius P.~Kumquat
b@308 120 %(The Kumquat Consortium, email: {\texttt{jpkumquat@consortium.net}}).}
b@308 121 \date{1 October 2015}
b@308 122 % Just remember to make sure that the TOTAL number of authors
b@308 123 % is the number that will appear on the first page PLUS the
b@308 124 % number that will appear in the \additionalauthors section.
b@308 125
b@308 126 \maketitle
b@308 127 \begin{abstract}
b@308 128 Here comes the abstract.
b@308 129 \end{abstract}
b@308 130
b@308 131
b@308 132 \section{Introduction}
b@317 133
b@317 134 % Listening tests/perceptual audio evaluation: what are they, why are they important
b@317 135 % 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@328 136 Perceptual evaluation of audio, in the form of listening tests, is a powerful way to assess anything from audio codec quality over realism of sound synthesis to the performance of source separation, automated music production and other auditory evaluations.
b@329 137 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 138 % maybe some references? If there's space.
b@317 139
b@318 140 % check out http://link.springer.com/article/10.1007/s10055-015-0270-8 - only paper that cited WAC15 paper
b@318 141
nicholas@328 142 % Why difficult? Challenges? What constitutes a good interface?
nicholas@328 143 % Technical, interfaces, user friendliness, reliability
n@333 144 Several applications for performing perceptual listening tests currently exist, as can be seen in Table \ref{tab:toolboxes}. The Web Audio Evaluation Toolbox 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@317 145
b@317 146 % Why in the browser?
nicholas@332 147 Web Audio API has 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 also allows leveraging the flexible object oriented JavaScript format 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 resolve these problems by enabling 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@329 148
b@329 149 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 150
b@316 151 % only browser-based?
d@321 152 \begin{table*}[ht]
b@323 153 \caption{Table with existing listening test platforms and their features}
b@323 154 \begin{center}
b@323 155 \begin{tabular}{|*{6}{l|}}
b@323 156 \hline
b@323 157 \textbf{Name} & \textbf{Ref.} & \textbf{Language} & \textbf{Interfaces} & \textbf{Remote} & \textbf{All UI} \\
b@323 158 \hline
b@323 159 APE & \cite{ape} & MATLAB & multi-stimulus, 1 axis per attribute & & \\
b@323 160 BeaqleJS & \cite{beaqlejs} & JavaScript & ABX, MUSHRA & (not natively supported) & \\
b@330 161 HULTI-GEN & \cite{hultigen} & MAX & See Table \ref{tab:toolbox_interfaces}& & \checkmark \\
b@329 162 mushraJS & & JavaScript & MUSHRA & \checkmark & \\
b@323 163 MUSHRAM & \cite{mushram} & MATLAB & MUSHRA & & \\
b@330 164 Scale & \cite{scale} & MATLAB & See Table \ref{tab:toolbox_interfaces} & & \\
b@329 165 WhisPER & \cite{whisper} & MATLAB & See Table \ref{tab:toolbox_interfaces} & & \checkmark \\
nicholas@331 166 \textbf{WAET} & \cite{waet} & JavaScript & \textbf{all of the above, see Table \ref{tab:toolbox_interfaces}} & \checkmark & \checkmark \\
b@323 167 \hline
b@323 168 \end{tabular}
b@323 169 \end{center}
b@323 170 \label{tab:toolboxes}
b@323 171 \end{table*}%
b@323 172
b@323 173 \begin{table*}[ht]
b@323 174 \caption{Table with interfaces and which toolboxes support them}
b@323 175 \begin{center}
b@323 176 \begin{tabular}{|*{5}{l|}}
b@323 177 \hline
b@323 178 \textbf{Interface} & \textbf{HULTI-GEN} & \textbf{Scale} & \textbf{WhisPER} & \textbf{WAET} \\
b@323 179 \hline
b@323 180 MUSHRA (ITU-R BS. 1534) & \checkmark & & & \checkmark \\
b@323 181 Rank scale & \checkmark & & & \checkmark \\
b@323 182 Likert scale & \checkmark & & \checkmark & \checkmark \\
b@323 183 ABC/HR (ITU-R BS. 1116) & \checkmark & & & \checkmark \\
b@323 184 -50 to 50 Bipolar with Ref & \checkmark & & & \checkmark \\
b@323 185 Absolute Category Rating (ACR) Scale & \checkmark & & & \checkmark \\
b@323 186 Degredation Category Rating (DCR) Scale & \checkmark & & & \checkmark \\
b@323 187 Comparison Category Rating (CCR) Scale & \checkmark & & \checkmark & \checkmark \\
b@323 188 9 Point Hedonic Category Rating Scale & \checkmark & & \checkmark & \checkmark \\
b@323 189 ITU-R 5 Point Continuous Impairment Scale & \checkmark & & & \checkmark \\
b@329 190 Pairwise Comparison / AB test & \checkmark & & & \checkmark \\
b@329 191 Multi-attribute ratings & \checkmark & & & \checkmark \\
b@323 192 ABX Test & \checkmark & & & \checkmark \\
b@329 193 Adaptive psychophysical methods & & & \checkmark & \\
b@323 194 Repertory Grid Technique (RGT) & & & \checkmark & \\
nicholas@332 195 (Semantic differential) & & & (\checkmark) & \\ % same as a few of the above
b@329 196 n-Alternative Forced choice & & \checkmark & & \\
b@329 197
b@323 198 \hline
b@323 199 \end{tabular}
b@323 200 \end{center}
nicholas@328 201 \label{tab:toolbox_interfaces}
b@323 202 \end{table*}%
b@316 203
b@316 204 %
nicholas@328 205 %Selling points: remote tests, visualisaton, create your own test in the browser, many interfaces, few/no dependencies, flexibility
b@317 206
nicholas@331 207 %[Talking about what we do in the various sections of this paper. Referring to \cite{waet}. ]
n@333 208 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}.
b@329 209
nicholas@328 210 \begin{comment}
b@320 211 % MEETING 8 OCTOBER
b@320 212 \subsection{Meeting 8 October}
b@320 213 \begin{itemize}
b@320 214 \item Do we manipulate audio?\\
b@320 215 \begin{itemize}
b@320 216 \item Add loudness equalisation? (test\_create.html) Tag with gains.
b@320 217 \item Add volume slider?
b@320 218 \item Cross-fade (in interface node): default 0, number of seconds
b@320 219 \item Also: we use the playback buffer to present metrics of which portion is listened to
b@320 220 \end{itemize}
b@320 221 \item Logging system information: whichever are possible (justify others)
b@320 222 \item Input streams as audioelements
b@320 223 \item Capture microphone to estimate loudness (especially Macbook)
b@320 224 \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 225 \item Record IP address (PHP function, grab and append to XML file)
b@320 226 \item Expand anchor/reference options
b@320 227 \item AB / ABX
b@320 228 \end{itemize}
b@320 229
b@320 230 \subsubsection{Issues}
b@320 231 \begin{itemize}
b@320 232 \item Filters not consistent (Nick to test across browsers)
b@320 233 \item Playback audiobuffers need to be destroyed and rebuilt each time
b@320 234 \item Can't get channel data, hardware input/output...
b@320 235 \end{itemize}
nicholas@328 236 \end{comment}
b@316 237
b@317 238 \section{Architecture} % title? 'back end'? % NICK
nicholas@331 239 %A slightly technical overview of the system. Talk about XML, JavaScript, Web Audio API, HTML5.
b@329 240
nicholas@332 241 While WAET uses a sparse subset of the Web Audio API functionality, its performance comes directly from using the Web Audio API for audio playback. Listening tests can convey large amounts of information other than obtaining the perceptual relationship between the audio fragments. Specifically, with WAET one can 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 to evaluate a wealth of perceptual aspects, but it helps detect poor participants whose results are potentially not representative.
nicholas@322 242
nicholas@332 243 One of the key initial design parameters for WAET is to make the tool as open as possible to non-programmers and to this end the tool has been designed in such a way that all of the user modifiable options are included in a single XML document. This XML 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 your test specification document. The first (test\_create.html) is for simpler tests and operates step-by-step using in-page popups to guide the user. It supports media through drag and drop and 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 XML 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@332 245 The basic test create utilises some web audio of its own. It utilises the API to perform quick playback checks, but also allow 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.
nicholas@328 246
nicholas@331 247 %Describe and/or visualise audioholder-audioelement-... structure.
nicholas@332 248 The specification document also 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.
nicholas@322 249
b@329 250 The only issue with this model is the bufferNode in the Web Audio API, which is implemented as a `use once' object which, once the buffer has been played, the buffer must be discarded as it cannot be instructed to play the buffer 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.
nicholas@322 251
nicholas@332 252 In the test the each buffer node is connected to a gain node which will operate at the level determined by the specification document. Therefore it is technically possible to perform a 'Method of Adjustment' test where an interface could directly manipulate these gain nodes. Equally there is 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. Of course 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.
nicholas@328 253
nicholas@331 254 %Which type of files? WAV, anything else? Perhaps not exhaustive list, but say something along the lines of 'whatever browser supports'. Compatability?
nicholas@332 255 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. Therefore the most widely supported media file is the wave (.WAV) format which can be accpeted by every browser supporting the Web Audio API. The next best supported audio only formats are MP3 and AAC (in MP4) which are supported by all major browsers, Firefox relies on OS decoders and therefore its support is predicated by the OS support. The toolbox will work in any browser which supports the Web Audio API, which at point of writing are the major desktop browsers except Microsoft's Internet Explorer, however its newer Edge browser should be supported\footnote{\url{https://msdn.microsoft.com/en-us/library/dn985708.aspx}}.
nicholas@322 256
nicholas@322 257 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 258
b@316 259 \section{Remote tests} % with previous?
b@329 260 \label{sec:remote}
b@317 261
nicholas@331 262 If the experimenter is willing to trade some degree of control for a higher number of participants, the test can be hosted on a 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. Note also that 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 263 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 264
b@315 265 The following features allow easy and effective remote testing:
b@329 266 \begin{description}[noitemsep,nolistsep]
b@329 267 \item[PHP script to collect result XML files] and store on central server.
b@329 268 \item[Randomly pick a specified number of pages] to ensure an equal and randomised spread of the different pages (`audioHolders') across participants.
b@329 269 \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 270 % In theory calibration could be applied anywhere??
b@329 271 % \item Functionality to participate multiple times
b@329 272 % \begin{itemize}[noitemsep,nolistsep]
b@329 273 % \item Possible to log in with unique ID (no password)
b@329 274 % \item Pick `new user' (generates new, unique ID) or `already participated' (need already available ID)
b@329 275 % \item Store XML on server with IDs plus which audioholders have already been listened to
b@329 276 % \item Don't show `post-test' survey after first time
b@329 277 % \item Pick `new' audioholders if available
b@329 278 % \item Copy survey information first time to new XMLs
b@329 279 % \end{itemize}
b@329 280 \item[Intermediate saves] for tests which were interrupted or unfinished.
b@329 281 \item[Collect IP address information] for geographic location, through PHP function which grabs address and appends to XML file.
b@329 282 \item[Collect Browser and Display information] to the extent it is available and reliable.
b@329 283 \end{description}
b@315 284
b@308 285
b@316 286 \section{Interfaces} % title? 'Front end'? % Dave
b@329 287 \label{sec:interfaces}
d@321 288
d@321 289 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. A review of existing listening test frameworks was undertaken and presented in~\Cref{tab:toolboxes}. HULTI-GEN~\cite{hultigen} is a single toolbox that presents the user with a large number of different test interfaces and allows for customisation of each test interface.
d@321 290
b@323 291 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 292 \begin{itemize}[noitemsep,nolistsep]
d@321 293 \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
nicholas@332 294 \begin{itemize}[noitemsep,nolistsep]
d@321 295 \item Multiple stimuli are presented and rated on a continuous scale, which includes a reference, hidden reference and hidden anchors.
d@321 296 \end{itemize}
d@321 297 \item Rank Scale~\cite{pascoe1983evaluation}
nicholas@332 298 \begin{itemize}[noitemsep,nolistsep]
d@321 299 \item Stimuli ranked on single horizontal scale, where they are ordered in preference order.
d@321 300 \end{itemize}
d@321 301 \item Likert scale~\cite{likert1932technique}
nicholas@332 302 \begin{itemize}[noitemsep,nolistsep]
d@321 303 \item Each stimuli has a five point scale with values: Strongly Agree, Agree, Neutral, Disagree and Strongly Disagree.
d@321 304 \end{itemize}
d@321 305 \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116} (Mean Opinion Score: MOS)
nicholas@332 306 \begin{itemize}[noitemsep,nolistsep]
d@321 307 \item Each stimulus has a continuous scale (5-1), labeled as Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying.
d@321 308 \end{itemize}
d@321 309 \item -50 to 50 Bipolar with Ref
nicholas@332 310 \begin{itemize}[noitemsep,nolistsep]
d@321 311 \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}
d@321 312 \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
nicholas@332 313 \begin{itemize}[noitemsep,nolistsep]
d@321 314 \item Each stimuli has a five point scale with values: Bad, Poor, Fair, Good, Excellent
d@321 315 \end{itemize}
d@321 316 \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
nicholas@332 317 \begin{itemize}[noitemsep,nolistsep]
d@321 318 \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.
d@321 319 \end{itemize}
d@321 320 \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
nicholas@332 321 \begin{itemize}[noitemsep,nolistsep]
d@321 322 \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.
d@321 323 \end{itemize}
d@321 324 \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
nicholas@332 325 \begin{itemize}[noitemsep,nolistsep]
d@321 326 \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.
d@321 327 \end{itemize}
d@321 328 \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
nicholas@332 329 \begin{itemize}[noitemsep,nolistsep]
d@321 330 \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.
d@321 331 \end{itemize}
d@321 332 \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
nicholas@332 333 \begin{itemize}[noitemsep,nolistsep]
d@321 334 \item A reference is provided and ever stimulus is rated as being either better or worse than the reference.
d@321 335 \end{itemize}
d@321 336 \item APE style \cite{ape}
nicholas@332 337 \begin{itemize}[noitemsep,nolistsep]
d@321 338 \item Multiple stimuli on a single horizontal slider for inter-sample rating.
d@321 339 \end{itemize}
d@321 340 \item Multi attribute ratings
nicholas@332 341 \begin{itemize}[noitemsep,nolistsep]
d@321 342 \item Multiple stimuli as points on a 2D plane for inter-sample rating (eg. Valence Arousal)
d@321 343 \end{itemize}
d@321 344 \item AB Test~\cite{lipshitz1981great}
nicholas@332 345 \begin{itemize}[noitemsep,nolistsep]
d@321 346 \item Two stimuli are presented at a time and the participant has to select a preferred stimulus.
d@321 347 \end{itemize}
d@321 348 \item ABX Test~\cite{clark1982high}
nicholas@332 349 \begin{itemize}[noitemsep,nolistsep]
d@321 350 \item 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 351 \end{itemize}
d@321 352 \end{itemize}
d@321 353
d@321 354 While implementing all of these interfaces, it is possible to include any number of references, anchors, hidden references and hidden anchors into all of these listening test formats.
d@321 355
b@329 356 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 functions 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.
n@326 357
d@321 358 %%%% \begin{itemize}[noitemsep,nolistsep]
d@321 359 %%%% \item (APE style) \cite{ape}
d@321 360 %%%% \item Multi attribute ratings
d@321 361 %%%% \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
d@321 362 %%%% \item Interval Scale~\cite{zacharov1999round}
d@321 363 %%%% \item Rank Scale~\cite{pascoe1983evaluation}
d@321 364 %%%%
d@321 365 %%%% \item 2D Plane rating - e.g. Valence vs. Arousal~\cite{carroll1969individual}
d@321 366 %%%% \item Likert scale~\cite{likert1932technique}
d@321 367 %%%%
d@321 368 %%%% \item {\bf All the following are the interfaces available in HULTI-GEN~\cite{hultigen} }
d@321 369 %%%% \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116}
d@321 370 %%%% \begin{itemize}
d@321 371 %%%% \item Continuous Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)
d@321 372 %%%% \end{itemize}
d@321 373 %%%% \item -50 to 50 Bipolar with Ref
d@321 374 %%%% \begin{itemize}
d@321 375 %%%% \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 376 %%%% \end{itemize}
d@321 377 %%%% \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
d@321 378 %%%% \begin{itemize}
d@321 379 %%%% \item 5 point Scale - Bad, Poor, Fair, Good, Excellent (Default fair?)
d@321 380 %%%% \end{itemize}
d@321 381 %%%% \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
d@321 382 %%%% \begin{itemize}
d@321 383 %%%% \item 5 point Scale - Inaudible, Audible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?) - {\it Basically just quantised ABC/HR?}
d@321 384 %%%% \end{itemize}
d@321 385 %%%% \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
d@321 386 %%%% \begin{itemize}
d@321 387 %%%% \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 388 %%%% \end{itemize}
d@321 389 %%%% \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
d@321 390 %%%% \begin{itemize}
d@321 391 %%%% \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 392 %%%% \end{itemize}
d@321 393 %%%% \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
d@321 394 %%%% \begin{itemize}
d@321 395 %%%% \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 396 %%%% \end{itemize}
d@321 397 %%%% \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
d@321 398 %%%% \begin{itemize}
d@321 399 %%%% \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 400 %%%% \end{itemize}
d@321 401 %%%% \end{itemize}
d@321 402
n@326 403 % Build your own test
nicholas@328 404 \begin{comment}
d@321 405 { \bf A screenshot would be nice.
d@321 406
d@321 407 Established tests (see below) included as `presets' in the build-your-own-test page. }
nicholas@328 408 \end{comment}
b@308 409
b@308 410 \section{Analysis and diagnostics}
b@329 411 \label{sec:analysis}
b@317 412 % don't mention Python scripts
b@329 413 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@329 414 % \begin{figure*}[bhf]
b@329 415 % \centering
b@329 416 % \includegraphics[width=.7\textwidth]{timeline.pdf}
b@329 417 % \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@329 418 % \label{fig:timeline}
b@329 419 % \end{figure*}
b@329 420 For this reason, we include a proof-of-concept web page with:
b@318 421 \begin{itemize}[noitemsep,nolistsep]
b@329 422 \item All audioholder IDs, file names, subject IDs, audio element IDs, ... in the collected XMLs so far (\texttt{saves/*.xml})
b@329 423 \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 424 \item Embedded audio to hear corresponding test samples % (follow path in XML setup file, which is also embedded in the XML result file)
b@329 425 \item Box plot, confidence plot, and scatter plot of rating values
nicholas@332 426 \item Timeline for a specific subject or song %(see Python scripts), perhaps re-playing the experiment in X times realtime. (If actual realtime, you could replay the audio...) ---> A LOT of work, not sure I can guarantee this one
nicholas@332 427 \item Distribution plots of any radio button and number questions. Also pie charts and histograms when over a range of participants %(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 428 \item All `comments' on a specific audioelement
nicholas@331 429 \item A `download' button for a nice CSV of various things (values, survey responses, comments) %people might want to use for analysis, e.g. when XML scares them
nicholas@331 430 %\item Validation of setup XMLs (easily spot `errors', like duplicate IDs or URLs, missing/dangling tags, ...) --> Took this out as a feature as the test_create will already do this as will the test console.
b@312 431 \end{itemize}
b@312 432
nicholas@331 433 %A subset of the above would already be nice for this paper.
nicholas@332 434 [Some pictures here please.]
b@316 435 \section{Concluding remarks and future work}
b@329 436 \label{sec:conclusion}
b@308 437
nicholas@332 438 The code and documentation can be pulled or downloaded from our online repository available at \url{code.soundsoftware.ac.uk/projects/webaudioevaluationtool}.
b@308 439
b@317 440 [Talking a little bit about what else might happen. Unless we really want to wrap this up. ]
nicholas@328 441
b@329 442 \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@317 443 % remote
b@317 444 % language support (not explicitly stated)
b@317 445 % crossfades
n@327 446 % 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 447 % collect information about software and sound system
b@317 448 % buttons, scales, ... UI elements
b@317 449 % must be able to load uncompressed PCM
b@317 450
b@317 451 [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@308 452
b@308 453 %
b@308 454 % The following two commands are all you need in the
b@308 455 % initial runs of your .tex file to
b@308 456 % produce the bibliography for the citations in your paper.
b@308 457 \bibliographystyle{abbrv}
b@308 458 \bibliography{WAC2016} % sigproc.bib is the name of the Bibliography in this case
b@308 459 % You must have a proper ".bib" file
b@308 460 % and remember to run:
b@308 461 % latex bibtex latex latex
b@308 462 % to resolve all references
b@308 463 %
b@308 464 % ACM needs 'a single self-contained file'!
b@308 465 %
b@308 466 \end{document}