annotate docs/WAC2016/WAC2016.tex @ 331:3a43f9e4cecf WAC2016

Updates to all sections.
author Nicholas Jillings <nicholas.jillings@eecs.qmul.ac.uk>
date Wed, 14 Oct 2015 20:15:31 +0100
parents 132418abdc27
children 8207063052bf
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@308 6 \begin{document}
b@308 7
b@308 8 % Copyright
b@308 9 \setcopyright{waclicense}
b@308 10
b@308 11
b@308 12 %% DOI
b@308 13 %\doi{10.475/123_4}
b@308 14 %
b@308 15 %% ISBN
b@308 16 %\isbn{123-4567-24-567/08/06}
b@308 17 %
b@308 18 %%Conference
b@308 19 %\conferenceinfo{PLDI '13}{June 16--19, 2013, Seattle, WA, USA}
b@308 20 %
b@308 21 %\acmPrice{\$15.00}
b@308 22
b@308 23 %
b@308 24 % --- Author Metadata here ---
b@308 25 \conferenceinfo{Web Audio Conference WAC-2016,}{April 4--6, 2016, Atlanta, USA}
b@308 26 \CopyrightYear{2016} % Allows default copyright year (20XX) to be over-ridden - IF NEED BE.
b@308 27 %\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 28 % --- End of Author Metadata ---
b@308 29
b@320 30 \title{Web Audio Evaluation Tool: A framework for subjective assessment of audio}
b@308 31 %\subtitle{[Extended Abstract]
b@308 32 %\titlenote{A full version of this paper is available as
b@308 33 %\textit{Author's Guide to Preparing ACM SIG Proceedings Using
b@308 34 %\LaTeX$2_\epsilon$\ and BibTeX} at
b@308 35 %\texttt{www.acm.org/eaddress.htm}}}
b@308 36 %
b@308 37 % You need the command \numberofauthors to handle the 'placement
b@308 38 % and alignment' of the authors beneath the title.
b@308 39 %
b@308 40 % For aesthetic reasons, we recommend 'three authors at a time'
b@308 41 % i.e. three 'name/affiliation blocks' be placed beneath the title.
b@308 42 %
b@308 43 % NOTE: You are NOT restricted in how many 'rows' of
b@308 44 % "name/affiliations" may appear. We just ask that you restrict
b@308 45 % the number of 'columns' to three.
b@308 46 %
b@308 47 % Because of the available 'opening page real-estate'
b@308 48 % we ask you to refrain from putting more than six authors
b@308 49 % (two rows with three columns) beneath the article title.
b@308 50 % More than six makes the first-page appear very cluttered indeed.
b@308 51 %
b@308 52 % Use the \alignauthor commands to handle the names
b@308 53 % and affiliations for an 'aesthetic maximum' of six authors.
b@308 54 % Add names, affiliations, addresses for
b@308 55 % the seventh etc. author(s) as the argument for the
b@308 56 % \additionalauthors command.
b@308 57 % These 'additional authors' will be output/set for you
b@308 58 % without further effort on your part as the last section in
b@308 59 % the body of your article BEFORE References or any Appendices.
b@308 60
b@316 61 % FIVE authors instead of four, to leave space between first two authors.
d@310 62 \numberofauthors{5} % in this sample file, there are a *total*
b@308 63 % of EIGHT authors. SIX appear on the 'first-page' (for formatting
b@308 64 % reasons) and the remaining two appear in the \additionalauthors section.
b@308 65 %
b@308 66 \author{
b@308 67 % You can go ahead and credit any number of authors here,
b@308 68 % e.g. one 'row of three' or two rows (consisting of one row of three
b@308 69 % and a second row of one, two or three).
b@308 70 %
b@308 71 % The command \alignauthor (no curly braces needed) should
b@308 72 % precede each author name, affiliation/snail-mail address and
b@308 73 % e-mail address. Additionally, tag each line of
b@308 74 % affiliation/address with \affaddr, and tag the
b@308 75 % e-mail address with \email.
b@308 76 %
b@308 77 % 1st. author
b@308 78 \alignauthor Nicholas Jillings\\
b@308 79 \email{n.g.r.jillings@se14.qmul.ac.uk}
b@316 80 % dummy author for nicer spacing
b@316 81 \alignauthor
b@308 82 % 2nd. author
b@308 83 \alignauthor Brecht De Man\\
b@308 84 \email{b.deman@qmul.ac.uk}
b@308 85 \and % use '\and' if you need 'another row' of author names
b@308 86 % 3rd. author
b@308 87 \alignauthor David Moffat\\
b@308 88 \email{d.j.moffat@qmul.ac.uk}
b@308 89 % 4th. author
b@308 90 \alignauthor Joshua D. Reiss\\
b@308 91 \email{joshua.reiss@qmul.ac.uk}
b@316 92 \and % new line for address
b@308 93 \affaddr{Centre for Digital Music}\\
b@308 94 \affaddr{School of Electronic Engineering and Computer Science}\\
b@308 95 \affaddr{Queen Mary University of London}\\
b@308 96 \affaddr{Mile End Road,}
b@308 97 \affaddr{London E1 4NS}\\
b@308 98 \affaddr{United Kingdom}\\
b@308 99 }
b@308 100 %Centre for Digital Music, School of Electronic Engineering and Computer Science, Queen Mary University of London
b@308 101 %% 5th. author
b@308 102 %\alignauthor Sean Fogarty\\
b@308 103 % \affaddr{NASA Ames Research Center}\\
b@308 104 % \affaddr{Moffett Field}\\
b@308 105 % \email{fogartys@amesres.org}
b@308 106 %% 6th. author
b@308 107 %\alignauthor Charles Palmer\\
b@308 108 % \affaddr{Palmer Research Laboratories}\\
b@308 109 % \affaddr{8600 Datapoint Drive}\\
b@308 110 % \email{cpalmer@prl.com}
b@308 111 %}
b@308 112 % There's nothing stopping you putting the seventh, eighth, etc.
b@308 113 % author on the opening page (as the 'third row') but we ask,
b@308 114 % for aesthetic reasons that you place these 'additional authors'
b@308 115 % in the \additional authors block, viz.
b@308 116 %\additionalauthors{Additional authors: John Smith (The Th{\o}rv{\"a}ld Group,
b@308 117 %email: {\texttt{jsmith@affiliation.org}}) and Julius P.~Kumquat
b@308 118 %(The Kumquat Consortium, email: {\texttt{jpkumquat@consortium.net}}).}
b@308 119 \date{1 October 2015}
b@308 120 % Just remember to make sure that the TOTAL number of authors
b@308 121 % is the number that will appear on the first page PLUS the
b@308 122 % number that will appear in the \additionalauthors section.
b@308 123
b@308 124 \maketitle
b@308 125 \begin{abstract}
b@308 126 Here comes the abstract.
b@308 127 \end{abstract}
b@308 128
b@308 129
b@308 130 \section{Introduction}
b@317 131
b@317 132 % Listening tests/perceptual audio evaluation: what are they, why are they important
b@317 133 % 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 134 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@317 135 In less technical areas, the framework of a listening test can be used to measure emotional response to music or test cognitive abilities. % maybe some references? If there's space.
b@317 136
b@318 137 % check out http://link.springer.com/article/10.1007/s10055-015-0270-8 - only paper that cited WAC15 paper
b@318 138
nicholas@328 139 % Why difficult? Challenges? What constitutes a good interface?
nicholas@328 140 % Technical, interfaces, user friendliness, reliability
nicholas@328 141 There are multiple programs for performing perceptual listening tests, as can be seen in Table \ref{tab:toolboxes}. Some are designed to have only one interface type or only work using proprietary software. The Web Audio Evaluation Toolbox is different as it does not require proprietary software and provides many interface and test types in one, common environment. 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 142
b@317 143 % Why in the browser?
nicholas@328 144 Web Audio API has important features for performing perceptual tests including sample level manipulation of audio streams \cite{schoeffler2015mushra}, synchronous playback 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 results. Using the web also simplifies test deployment to requiring 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}. However, to our knowledge, no tool currently exists that allows the creation of a remotely accessible listening test. BeaqleJS \cite{beaqlejs} also operates in the browser, however BeaqleJS does not make use of the Web Audio API.%requires programming knowledge?...
b@316 145
b@316 146 % only browser-based?
d@321 147 \begin{table*}[ht]
b@323 148 \caption{Table with existing listening test platforms and their features}
b@323 149 \begin{center}
b@323 150 \begin{tabular}{|*{6}{l|}}
b@323 151 \hline
b@323 152 \textbf{Name} & \textbf{Ref.} & \textbf{Language} & \textbf{Interfaces} & \textbf{Remote} & \textbf{All UI} \\
b@323 153 \hline
b@323 154 APE & \cite{ape} & MATLAB & multi-stimulus, 1 axis per attribute & & \\
b@323 155 BeaqleJS & \cite{beaqlejs} & JavaScript & ABX, MUSHRA & (not natively supported) & \\
nicholas@331 156 HULTI-GEN & \cite{hultigen} & MAX & See Table \ref{tab:toolbox_interfaces} & & \checkmark \\
b@323 157 mushraJS & \footnote{https://github.com/akaroice/mushraJS} & JavaScript & MUSHRA & \checkmark & \\
b@323 158 MUSHRAM & \cite{mushram} & MATLAB & MUSHRA & & \\
nicholas@331 159 Scale & \cite{scale} & MATLAB & See Table \ref{tab:toolbox_interfaces} & & \\
nicholas@331 160 WhisPER & \cite{whisper} & MATLAB & See Table \ref{tab:toolbox_interfaces} & & \checkmark \\
nicholas@331 161 \textbf{WAET} & \cite{waet} & JavaScript & \textbf{all of the above, see Table \ref{tab:toolbox_interfaces}} & \checkmark & \checkmark \\
b@323 162 \hline
b@323 163 \end{tabular}
b@323 164 \end{center}
b@323 165 \label{tab:toolboxes}
b@323 166 \end{table*}%
b@323 167
b@323 168 \begin{table*}[ht]
b@323 169 \caption{Table with interfaces and which toolboxes support them}
b@323 170 \begin{center}
b@323 171 \begin{tabular}{|*{5}{l|}}
b@323 172 \hline
b@323 173 \textbf{Interface} & \textbf{HULTI-GEN} & \textbf{Scale} & \textbf{WhisPER} & \textbf{WAET} \\
b@323 174 \hline
b@323 175 MUSHRA (ITU-R BS. 1534) & \checkmark & & & \checkmark \\
b@323 176 Rank scale & \checkmark & & & \checkmark \\
b@323 177 Likert scale & \checkmark & & \checkmark & \checkmark \\
b@323 178 ABC/HR (ITU-R BS. 1116) & \checkmark & & & \checkmark \\
b@323 179 -50 to 50 Bipolar with Ref & \checkmark & & & \checkmark \\
b@323 180 Absolute Category Rating (ACR) Scale & \checkmark & & & \checkmark \\
b@323 181 Degredation Category Rating (DCR) Scale & \checkmark & & & \checkmark \\
b@323 182 Comparison Category Rating (CCR) Scale & \checkmark & & \checkmark & \checkmark \\
b@323 183 9 Point Hedonic Category Rating Scale & \checkmark & & \checkmark & \checkmark \\
b@323 184 ITU-R 5 Point Continuous Impairment Scale & \checkmark & & & \checkmark \\
b@323 185 Pairwise Comparison (Better/Worse) & \checkmark & & & \checkmark \\
b@323 186 APE style & & & & \checkmark \\
b@323 187 Multi attribute ratings & \checkmark & & & \checkmark \\
b@323 188 AB Test & \checkmark & & & \checkmark \\
b@323 189 ABX Test & \checkmark & & & \checkmark \\
b@323 190 ``Adaptive psychophysical methods'' & & & \checkmark & \\
b@323 191 Repertory Grid Technique (RGT) & & & \checkmark & \\
nicholas@331 192 (Semantic differential) & & \checkmark & (\checkmark) & \\ % same as a few of the above
b@323 193 \hline
b@323 194 \end{tabular}
b@323 195 \end{center}
nicholas@328 196 \label{tab:toolbox_interfaces}
b@323 197 \end{table*}%
b@316 198
b@316 199 %
nicholas@328 200 %Selling points: remote tests, visualisaton, create your own test in the browser, many interfaces, few/no dependencies, flexibility
b@317 201
nicholas@331 202 %[Talking about what we do in the various sections of this paper. Referring to \cite{waet}. ]
nicholas@331 203 This paper is divided into five sections. The Architecture section aims to introduce the toolbox by expanding on \cite{waet}, how the Web Audio Evaluation Tool uses the Web Audio API and the relationship of the various modules for configuration, operation and collection. The Remote Tests section aims to briefly highlight the performance of the server-side implementations enabling for powerful remote testing for seemless deployment to many locations. The Interfaces section outlines the various interfaces currently supported by the toolbox along with a brief description of each interface. Analysis and Diagnosis shows the online analysis tools available for processing the gathered data before concluding this paper and highlighting out future work.
nicholas@331 204
nicholas@328 205 \begin{comment}
b@320 206 % MEETING 8 OCTOBER
b@320 207 \subsection{Meeting 8 October}
b@320 208 \begin{itemize}
b@320 209 \item Do we manipulate audio?\\
b@320 210 \begin{itemize}
b@320 211 \item Add loudness equalisation? (test\_create.html) Tag with gains.
b@320 212 \item Add volume slider?
b@320 213 \item Cross-fade (in interface node): default 0, number of seconds
b@320 214 \item Also: we use the playback buffer to present metrics of which portion is listened to
b@320 215 \end{itemize}
b@320 216 \item Logging system information: whichever are possible (justify others)
b@320 217 \item Input streams as audioelements
b@320 218 \item Capture microphone to estimate loudness (especially Macbook)
b@320 219 \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 220 \item Record IP address (PHP function, grab and append to XML file)
b@320 221 \item Expand anchor/reference options
b@320 222 \item AB / ABX
b@320 223 \end{itemize}
b@320 224
b@320 225 \subsubsection{Issues}
b@320 226 \begin{itemize}
b@320 227 \item Filters not consistent (Nick to test across browsers)
b@320 228 \item Playback audiobuffers need to be destroyed and rebuilt each time
b@320 229 \item Can't get channel data, hardware input/output...
b@320 230 \end{itemize}
nicholas@328 231 \end{comment}
b@316 232
b@317 233 \section{Architecture} % title? 'back end'? % NICK
nicholas@331 234 %A slightly technical overview of the system. Talk about XML, JavaScript, Web Audio API, HTML5.
nicholas@322 235 WAET utilises the Web Audio API for audio playback and uses a sparse subset of the Web Audio API functionality, however the performance of WAET comes directly from the Web Audio API. Listening tests can convey large amounts of information other than obtaining the perceptual relationship between the audio fragments. WAET specifically can obtain which parts of the audio fragments were listened to and when, at what point in the audio stream did the participant switch to a different fragment and what new rating did they give a fragment. Therefore it is possible to not only evaluate the perceptual research question but also evaluate if the participant performed the test well and therefore if their results are representative or should be discarded as an outlier.
nicholas@322 236
nicholas@322 237 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 document is loaded up automatically by the web page and the JavaScript code parses and loads any extra resources required to create the test.
nicholas@322 238
nicholas@331 239 %Describe and/or visualise audioholder-audioelement-... structure.
nicholas@322 240 The specification document also contains the URL of the audio fragments for each test page. These fragments are downloaded asynchronously 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 241
nicholas@322 242 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 243
nicholas@331 244 %Which type of files? WAV, anything else? Perhaps not exhaustive list, but say something along the lines of 'whatever browser supports'. Compatability?
nicholas@322 245 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.
nicholas@322 246
nicholas@322 247 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 248
b@316 249 \section{Remote tests} % with previous?
b@317 250
nicholas@331 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 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 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@317 253
b@315 254 The following features allow easy and effective remote testing:
b@318 255 \begin{itemize}[noitemsep,nolistsep]
b@315 256 \item PHP script to collect result XML files
b@315 257 \item Randomly pick specified number of audioholders
b@317 258 \item Calibration
nicholas@322 259 % In theory calibration could be applied anywhere??
b@315 260 \item Functionality to participate multiple times
b@318 261 \begin{itemize}[noitemsep,nolistsep]
b@315 262 \item Possible to log in with unique ID (no password)
n@327 263 \item Pick `new user' (generates new, unique ID) or `already participated' (need already available ID)
b@315 264 \item Store XML on server with IDs plus which audioholders have already been listened to
b@315 265 \item Don't show `post-test' survey after first time
b@315 266 \item Pick `new' audioholders if available
b@315 267 \item Copy survey information first time to new XMLs
b@315 268 \end{itemize}
b@315 269 \item Intermediate saves
n@327 270 \item Collect Public IP address information for geographic location (by country).
nicholas@322 271 \item Collect Browser and Display information
b@315 272 \end{itemize}
b@315 273
b@308 274
b@316 275 \section{Interfaces} % title? 'Front end'? % Dave
d@321 276
d@321 277 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 278
b@323 279 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 280 \begin{itemize}[noitemsep,nolistsep]
d@321 281 \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
d@321 282 \begin{itemize}
d@321 283 \item Multiple stimuli are presented and rated on a continuous scale, which includes a reference, hidden reference and hidden anchors.
d@321 284 \end{itemize}
d@321 285 \item Rank Scale~\cite{pascoe1983evaluation}
d@321 286 \begin{itemize}
d@321 287 \item Stimuli ranked on single horizontal scale, where they are ordered in preference order.
d@321 288 \end{itemize}
d@321 289 \item Likert scale~\cite{likert1932technique}
d@321 290 \begin{itemize}
d@321 291 \item Each stimuli has a five point scale with values: Strongly Agree, Agree, Neutral, Disagree and Strongly Disagree.
d@321 292 \end{itemize}
d@321 293 \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116} (Mean Opinion Score: MOS)
d@321 294 \begin{itemize}
d@321 295 \item Each stimulus has a continuous scale (5-1), labeled as Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying.
d@321 296 \end{itemize}
d@321 297 \item -50 to 50 Bipolar with Ref
d@321 298 \begin{itemize}
d@321 299 \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 300 \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
d@321 301 \begin{itemize}
d@321 302 \item Each stimuli has a five point scale with values: Bad, Poor, Fair, Good, Excellent
d@321 303 \end{itemize}
d@321 304 \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
d@321 305 \begin{itemize}
d@321 306 \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 307 \end{itemize}
d@321 308 \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
d@321 309 \begin{itemize}
d@321 310 \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 311 \end{itemize}
d@321 312 \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
d@321 313 \begin{itemize}
d@321 314 \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 315 \end{itemize}
d@321 316 \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
d@321 317 \begin{itemize}
d@321 318 \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 319 \end{itemize}
d@321 320 \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
d@321 321 \begin{itemize}
d@321 322 \item A reference is provided and ever stimulus is rated as being either better or worse than the reference.
d@321 323 \end{itemize}
d@321 324 \item APE style \cite{ape}
d@321 325 \begin{itemize}
d@321 326 \item Multiple stimuli on a single horizontal slider for inter-sample rating.
d@321 327 \end{itemize}
d@321 328 \item Multi attribute ratings
d@321 329 \begin{itemize}
d@321 330 \item Multiple stimuli as points on a 2D plane for inter-sample rating (eg. Valence Arousal)
d@321 331 \end{itemize}
d@321 332 \item AB Test~\cite{lipshitz1981great}
d@321 333 \begin{itemize}
d@321 334 \item Two stimuli are presented at a time and the participant has to select a preferred stimulus.
d@321 335 \end{itemize}
d@321 336 \item ABX Test~\cite{clark1982high}
d@321 337 \begin{itemize}
d@321 338 \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 339 \end{itemize}
d@321 340 \end{itemize}
d@321 341
d@321 342 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 343
n@326 344 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 345
d@321 346 %%%% \begin{itemize}[noitemsep,nolistsep]
d@321 347 %%%% \item (APE style) \cite{ape}
d@321 348 %%%% \item Multi attribute ratings
d@321 349 %%%% \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
d@321 350 %%%% \item Interval Scale~\cite{zacharov1999round}
d@321 351 %%%% \item Rank Scale~\cite{pascoe1983evaluation}
d@321 352 %%%%
d@321 353 %%%% \item 2D Plane rating - e.g. Valence vs. Arousal~\cite{carroll1969individual}
d@321 354 %%%% \item Likert scale~\cite{likert1932technique}
d@321 355 %%%%
d@321 356 %%%% \item {\bf All the following are the interfaces available in HULTI-GEN~\cite{hultigen} }
d@321 357 %%%% \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116}
d@321 358 %%%% \begin{itemize}
d@321 359 %%%% \item Continuous Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)
d@321 360 %%%% \end{itemize}
d@321 361 %%%% \item -50 to 50 Bipolar with Ref
d@321 362 %%%% \begin{itemize}
d@321 363 %%%% \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 364 %%%% \end{itemize}
d@321 365 %%%% \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
d@321 366 %%%% \begin{itemize}
d@321 367 %%%% \item 5 point Scale - Bad, Poor, Fair, Good, Excellent (Default fair?)
d@321 368 %%%% \end{itemize}
d@321 369 %%%% \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
d@321 370 %%%% \begin{itemize}
d@321 371 %%%% \item 5 point Scale - Inaudible, Audible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?) - {\it Basically just quantised ABC/HR?}
d@321 372 %%%% \end{itemize}
d@321 373 %%%% \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
d@321 374 %%%% \begin{itemize}
d@321 375 %%%% \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 376 %%%% \end{itemize}
d@321 377 %%%% \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
d@321 378 %%%% \begin{itemize}
d@321 379 %%%% \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 380 %%%% \end{itemize}
d@321 381 %%%% \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
d@321 382 %%%% \begin{itemize}
d@321 383 %%%% \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 384 %%%% \end{itemize}
d@321 385 %%%% \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
d@321 386 %%%% \begin{itemize}
d@321 387 %%%% \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 388 %%%% \end{itemize}
d@321 389 %%%% \end{itemize}
d@321 390
n@326 391 % Build your own test
nicholas@328 392 \begin{comment}
d@321 393 { \bf A screenshot would be nice.
d@321 394
d@321 395 Established tests (see below) included as `presets' in the build-your-own-test page. }
nicholas@328 396 \end{comment}
b@308 397
b@308 398 \section{Analysis and diagnostics}
b@317 399 % don't mention Python scripts
nicholas@331 400 It would be great to have easy-to-use analysis tools to visualise the collected data and even do science with it. Even better would be to have all this in the browser. Complete perfection would be achieved if and when only limited setup, installation time, and expertise are required for the average non-CS researcher to use this. Tools such as \cite{scale} include analysis features inside their packages as well.
nicholas@331 401 One advantage to web based tests is the ability to process data as it becomes available using server-side programming. Since entire test sessions are uploaded the results can be immediately parsed and the current test results updated, meaning the researcher simply needs to browse to the web page to collect the current test results in a friendly interface rather than downloading the XML files.
b@308 402
nicholas@331 403 The following functionality is available:
b@312 404
b@318 405 \begin{itemize}[noitemsep,nolistsep]
b@312 406 \item Web page showing all audioholder IDs, file names, subject IDs, audio element IDs, ... in the collected XMLs so far (\texttt{saves/*.xml})
b@312 407 \item Check/uncheck each of the above for analysis (e.g. zoom in on a certain song, or exclude a subset of subjects)
b@312 408 \item Click a mix to hear it (follow path in XML setup file, which is also embedded in the XML result file)
b@312 409 \item Box plot, confidence plot, scatter plot of values (for a given audioholder)
nicholas@331 410 \item Timeline for a specific subject / 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@331 411 \item Distribution plots of any radio button and number questions %(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)
nicholas@331 412 \item All `comments' on a specific audioelement and export to CSV / XML
nicholas@331 413 \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 414 %\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 415 \end{itemize}
b@312 416
nicholas@331 417 %A subset of the above would already be nice for this paper.
b@312 418
nicholas@331 419 [Some pictures here please.]
b@308 420
b@316 421 \section{Concluding remarks and future work}
b@308 422
b@317 423 The code and documentation can be pulled or downloaded from \url{code.soundsoftware.ac.uk/projects/webaudioevaluationtool}.
b@308 424
b@317 425 [Talking a little bit about what else might happen. Unless we really want to wrap this up. ]
nicholas@328 426
nicholas@328 427 \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 428 % remote
b@317 429 % language support (not explicitly stated)
b@317 430 % crossfades
n@327 431 % 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 432 % collect information about software and sound system
b@317 433 % buttons, scales, ... UI elements
b@317 434 % must be able to load uncompressed PCM
b@317 435
b@317 436 [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 437
b@308 438 %
b@308 439 % The following two commands are all you need in the
b@308 440 % initial runs of your .tex file to
b@308 441 % produce the bibliography for the citations in your paper.
b@308 442 \bibliographystyle{abbrv}
b@308 443 \bibliography{WAC2016} % sigproc.bib is the name of the Bibliography in this case
b@308 444 % You must have a proper ".bib" file
b@308 445 % and remember to run:
b@308 446 % latex bibtex latex latex
b@308 447 % to resolve all references
b@308 448 %
b@308 449 % ACM needs 'a single self-contained file'!
b@308 450 %
b@308 451 \end{document}