annotate docs/WAC2016/WAC2016.tex @ 739:ca436620c887

Josh' comments except table
author Nicholas Jillings <nicholas.jillings@eecs.qmul.ac.uk>
date Thu, 15 Oct 2015 19:09:00 +0100
parents eacef48baf3c
children 5cf7a8199a4f
rev   line source
BrechtDeMan@719 1 \documentclass{sig-alternate}
BrechtDeMan@727 2 \usepackage{hyperref} % make links (like references, links to Sections, ...) clickable
BrechtDeMan@727 3 \usepackage{enumitem} % tighten itemize etc by appending '[noitemsep,nolistsep]'
djmoffat@729 4 \usepackage{cleveref}
BrechtDeMan@719 5
BrechtDeMan@716 6 \graphicspath{{img/}} % put the images in this folder
BrechtDeMan@716 7
BrechtDeMan@719 8 \begin{document}
BrechtDeMan@719 9
BrechtDeMan@719 10 % Copyright
BrechtDeMan@719 11 \setcopyright{waclicense}
BrechtDeMan@719 12
BrechtDeMan@719 13
BrechtDeMan@719 14 %% DOI
BrechtDeMan@719 15 %\doi{10.475/123_4}
BrechtDeMan@719 16 %
BrechtDeMan@719 17 %% ISBN
BrechtDeMan@719 18 %\isbn{123-4567-24-567/08/06}
BrechtDeMan@719 19 %
BrechtDeMan@719 20 %%Conference
BrechtDeMan@719 21 %\conferenceinfo{PLDI '13}{June 16--19, 2013, Seattle, WA, USA}
BrechtDeMan@719 22 %
BrechtDeMan@719 23 %\acmPrice{\$15.00}
BrechtDeMan@719 24
BrechtDeMan@719 25 %
BrechtDeMan@719 26 % --- Author Metadata here ---
BrechtDeMan@719 27 \conferenceinfo{Web Audio Conference WAC-2016,}{April 4--6, 2016, Atlanta, USA}
BrechtDeMan@719 28 \CopyrightYear{2016} % Allows default copyright year (20XX) to be over-ridden - IF NEED BE.
BrechtDeMan@719 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.
BrechtDeMan@719 30 % --- End of Author Metadata ---
BrechtDeMan@719 31
BrechtDeMan@728 32 \title{Web Audio Evaluation Tool: A framework for subjective assessment of audio}
BrechtDeMan@719 33 %\subtitle{[Extended Abstract]
BrechtDeMan@719 34 %\titlenote{A full version of this paper is available as
BrechtDeMan@719 35 %\textit{Author's Guide to Preparing ACM SIG Proceedings Using
BrechtDeMan@719 36 %\LaTeX$2_\epsilon$\ and BibTeX} at
BrechtDeMan@719 37 %\texttt{www.acm.org/eaddress.htm}}}
BrechtDeMan@719 38 %
BrechtDeMan@719 39 % You need the command \numberofauthors to handle the 'placement
BrechtDeMan@719 40 % and alignment' of the authors beneath the title.
BrechtDeMan@719 41 %
BrechtDeMan@719 42 % For aesthetic reasons, we recommend 'three authors at a time'
BrechtDeMan@719 43 % i.e. three 'name/affiliation blocks' be placed beneath the title.
BrechtDeMan@719 44 %
BrechtDeMan@719 45 % NOTE: You are NOT restricted in how many 'rows' of
BrechtDeMan@719 46 % "name/affiliations" may appear. We just ask that you restrict
BrechtDeMan@719 47 % the number of 'columns' to three.
BrechtDeMan@719 48 %
BrechtDeMan@719 49 % Because of the available 'opening page real-estate'
BrechtDeMan@719 50 % we ask you to refrain from putting more than six authors
BrechtDeMan@719 51 % (two rows with three columns) beneath the article title.
BrechtDeMan@719 52 % More than six makes the first-page appear very cluttered indeed.
BrechtDeMan@719 53 %
BrechtDeMan@719 54 % Use the \alignauthor commands to handle the names
BrechtDeMan@719 55 % and affiliations for an 'aesthetic maximum' of six authors.
BrechtDeMan@719 56 % Add names, affiliations, addresses for
BrechtDeMan@719 57 % the seventh etc. author(s) as the argument for the
BrechtDeMan@719 58 % \additionalauthors command.
BrechtDeMan@719 59 % These 'additional authors' will be output/set for you
BrechtDeMan@719 60 % without further effort on your part as the last section in
BrechtDeMan@719 61 % the body of your article BEFORE References or any Appendices.
BrechtDeMan@719 62
BrechtDeMan@725 63 % FIVE authors instead of four, to leave space between first two authors.
djmoffat@721 64 \numberofauthors{5} % in this sample file, there are a *total*
BrechtDeMan@719 65 % of EIGHT authors. SIX appear on the 'first-page' (for formatting
BrechtDeMan@719 66 % reasons) and the remaining two appear in the \additionalauthors section.
BrechtDeMan@719 67 %
BrechtDeMan@719 68 \author{
BrechtDeMan@719 69 % You can go ahead and credit any number of authors here,
BrechtDeMan@719 70 % e.g. one 'row of three' or two rows (consisting of one row of three
BrechtDeMan@719 71 % and a second row of one, two or three).
BrechtDeMan@719 72 %
BrechtDeMan@719 73 % The command \alignauthor (no curly braces needed) should
BrechtDeMan@719 74 % precede each author name, affiliation/snail-mail address and
BrechtDeMan@719 75 % e-mail address. Additionally, tag each line of
BrechtDeMan@719 76 % affiliation/address with \affaddr, and tag the
BrechtDeMan@719 77 % e-mail address with \email.
BrechtDeMan@719 78 %
BrechtDeMan@719 79 % 1st. author
BrechtDeMan@719 80 \alignauthor Nicholas Jillings\\
BrechtDeMan@719 81 \email{n.g.r.jillings@se14.qmul.ac.uk}
BrechtDeMan@725 82 % dummy author for nicer spacing
BrechtDeMan@725 83 \alignauthor
BrechtDeMan@719 84 % 2nd. author
BrechtDeMan@719 85 \alignauthor Brecht De Man\\
BrechtDeMan@719 86 \email{b.deman@qmul.ac.uk}
BrechtDeMan@719 87 \and % use '\and' if you need 'another row' of author names
BrechtDeMan@719 88 % 3rd. author
BrechtDeMan@719 89 \alignauthor David Moffat\\
BrechtDeMan@719 90 \email{d.j.moffat@qmul.ac.uk}
BrechtDeMan@719 91 % 4th. author
BrechtDeMan@719 92 \alignauthor Joshua D. Reiss\\
BrechtDeMan@719 93 \email{joshua.reiss@qmul.ac.uk}
BrechtDeMan@725 94 \and % new line for address
nicholas@739 95 \affaddr{Centre for Digital Music, School of Electronic Engineering and Computer Science}\\
BrechtDeMan@719 96 \affaddr{Queen Mary University of London}\\
BrechtDeMan@719 97 \affaddr{Mile End Road,}
BrechtDeMan@719 98 \affaddr{London E1 4NS}\\
BrechtDeMan@719 99 \affaddr{United Kingdom}\\
BrechtDeMan@719 100 }
BrechtDeMan@719 101 %Centre for Digital Music, School of Electronic Engineering and Computer Science, Queen Mary University of London
BrechtDeMan@719 102 %% 5th. author
BrechtDeMan@719 103 %\alignauthor Sean Fogarty\\
BrechtDeMan@719 104 % \affaddr{NASA Ames Research Center}\\
BrechtDeMan@719 105 % \affaddr{Moffett Field}\\
BrechtDeMan@719 106 % \email{fogartys@amesres.org}
BrechtDeMan@719 107 %% 6th. author
BrechtDeMan@719 108 %\alignauthor Charles Palmer\\
BrechtDeMan@719 109 % \affaddr{Palmer Research Laboratories}\\
BrechtDeMan@719 110 % \affaddr{8600 Datapoint Drive}\\
BrechtDeMan@719 111 % \email{cpalmer@prl.com}
BrechtDeMan@719 112 %}
BrechtDeMan@719 113 % There's nothing stopping you putting the seventh, eighth, etc.
BrechtDeMan@719 114 % author on the opening page (as the 'third row') but we ask,
BrechtDeMan@719 115 % for aesthetic reasons that you place these 'additional authors'
BrechtDeMan@719 116 % in the \additional authors block, viz.
BrechtDeMan@719 117 %\additionalauthors{Additional authors: John Smith (The Th{\o}rv{\"a}ld Group,
BrechtDeMan@719 118 %email: {\texttt{jsmith@affiliation.org}}) and Julius P.~Kumquat
BrechtDeMan@719 119 %(The Kumquat Consortium, email: {\texttt{jpkumquat@consortium.net}}).}
BrechtDeMan@719 120 \date{1 October 2015}
BrechtDeMan@719 121 % Just remember to make sure that the TOTAL number of authors
BrechtDeMan@719 122 % is the number that will appear on the first page PLUS the
BrechtDeMan@719 123 % number that will appear in the \additionalauthors section.
BrechtDeMan@719 124
BrechtDeMan@719 125 \maketitle
BrechtDeMan@719 126 \begin{abstract}
BrechtDeMan@719 127 Here comes the abstract.
BrechtDeMan@719 128 \end{abstract}
BrechtDeMan@719 129
BrechtDeMan@719 130
BrechtDeMan@719 131 \section{Introduction}
BrechtDeMan@726 132
BrechtDeMan@726 133 % Listening tests/perceptual audio evaluation: what are they, why are they important
BrechtDeMan@726 134 % 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@739 135 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.
BrechtDeMan@716 136 In less technical areas, the framework of a listening test can be used to measure emotional response to music or test cognitive abilities.
BrechtDeMan@716 137 % maybe some references? If there's space.
BrechtDeMan@726 138
BrechtDeMan@727 139 % check out http://link.springer.com/article/10.1007/s10055-015-0270-8 - only paper that cited WAC15 paper
BrechtDeMan@727 140
nicholas@734 141 % Why difficult? Challenges? What constitutes a good interface?
nicholas@734 142 % Technical, interfaces, user friendliness, reliability
nicholas@739 143 Several applications for performing perceptual listening tests currently exist, as can be seen in Table \ref{tab:toolboxes}. A review of existing listening test frameworks was undertaken and presented in~\Cref{tab:toolboxes}. HULTI-GEN~\cite{hultigen} is a single toolbox that presents the user with a large number of different test interfaces and allows for customisation of each test interface. The Web Audio Evaluation Toolbox (WAET) stands out as it does not require proprietary software or a specific platform. It also provides a wide range of interface and test types in one user friendly environment. Furthermore, it does not require any progamming experience as any test based on the default test types can be configured in the browser as well. Note that the design of an effective listening test further poses many challenges unrelated to interface design, which are beyond the scope of this paper \cite{bech}.
BrechtDeMan@726 144
BrechtDeMan@726 145 % Why in the browser?
nicholas@739 146 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 allows leveraging the flexible object oriented JavaScript language and native support for web documents, such as the extensible markup language (XML) which is used for configuration and test result files. Using the web also reduces deployment requirements to a basic web server with advanced functionality such as test collection and automatic processing using PHP. As recruiting participants can be very time-consuming, and as for some tests a large number of participants is needed, browser-based tests \cite{schoeffler2015mushra} can enable participants in multiple locations to perform the test. However, to our knowledge, no tool currently exists that allows the creation of a remotely accessible listening test.
BrechtDeMan@716 147
nicholas@739 148 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?...
BrechtDeMan@725 149
BrechtDeMan@725 150 % only browser-based?
djmoffat@729 151 \begin{table*}[ht]
n@738 152 \caption{Table with existing listening test platforms and their features}
n@738 153 \begin{center}
n@738 154 \begin{tabular}{|*{6}{l|}}
n@738 155 \hline
n@738 156 \textbf{Name} & \textbf{Ref.} & \textbf{Language} & \textbf{Interfaces} & \textbf{Remote} & \textbf{All UI} \\
n@738 157 \hline
n@738 158 APE & \cite{ape} & MATLAB & multi-stimulus, 1 axis per attribute & & \\
n@738 159 BeaqleJS & \cite{beaqlejs} & JavaScript & ABX, MUSHRA & (not natively supported) & \\
n@738 160 HULTI-GEN & \cite{hultigen} & MAX & See Table \ref{tab:toolbox_interfaces}& & \checkmark \\
n@738 161 mushraJS & & JavaScript & MUSHRA & \checkmark & \\
n@738 162 MUSHRAM & \cite{mushram} & MATLAB & MUSHRA & & \\
n@738 163 Scale & \cite{scale} & MATLAB & See Table \ref{tab:toolbox_interfaces} & & \\
n@738 164 WhisPER & \cite{whisper} & MATLAB & See Table \ref{tab:toolbox_interfaces} & & \checkmark \\
n@738 165 \textbf{WAET} & \cite{waet} & JavaScript & \textbf{All of the above} & \checkmark & \checkmark \\
n@738 166 \hline
n@738 167 \end{tabular}
n@738 168 \end{center}
n@738 169 \label{tab:toolboxes}
n@738 170 \end{table*}%
n@738 171
n@738 172 \begin{table*}[ht]
n@738 173 \caption{Table with interfaces and which toolboxes support them}
n@738 174 \begin{center}
n@738 175 \begin{tabular}{|*{5}{l|}}
n@738 176 \hline
n@738 177 \textbf{Interface} & \textbf{HULTI-GEN} & \textbf{Scale} & \textbf{WhisPER} & \textbf{WAET} \\
n@738 178 \hline
n@738 179 MUSHRA (ITU-R BS. 1534) & \checkmark & & & \checkmark \\
n@738 180 Rank scale & \checkmark & & & \checkmark \\
n@738 181 Likert scale & \checkmark & & \checkmark & \checkmark \\
n@738 182 ABC/HR (ITU-R BS. 1116) & \checkmark & & & \checkmark \\
n@738 183 -50 to 50 Bipolar with Ref & \checkmark & & & \checkmark \\
n@738 184 Absolute Category Rating (ACR) Scale & \checkmark & & & \checkmark \\
n@738 185 Degredation Category Rating (DCR) Scale & \checkmark & & & \checkmark \\
n@738 186 Comparison Category Rating (CCR) Scale & \checkmark & & \checkmark & \checkmark \\
n@738 187 9 Point Hedonic Category Rating Scale & \checkmark & & \checkmark & \checkmark \\
n@738 188 ITU-R 5 Point Continuous Impairment Scale & \checkmark & & & \checkmark \\
n@738 189 Pairwise Comparison / AB test & \checkmark & & & \checkmark \\
n@738 190 Multi-attribute ratings & \checkmark & & & \checkmark \\
n@738 191 ABX Test & \checkmark & & & \checkmark \\
n@738 192 Adaptive psychophysical methods & & & \checkmark & \\
n@738 193 Repertory Grid Technique (RGT) & & & \checkmark & \\
n@738 194 Semantic differential & & \checkmark & \checkmark & \\
n@738 195 n-Alternative Forced choice & & \checkmark & & \\
n@738 196
n@738 197 \hline
n@738 198 \end{tabular}
n@738 199 \end{center}
n@738 200 \label{tab:toolbox_interfaces}
n@738 201 \end{table*}%
BrechtDeMan@725 202
BrechtDeMan@725 203 %
nicholas@734 204 %Selling points: remote tests, visualisaton, create your own test in the browser, many interfaces, few/no dependencies, flexibility
BrechtDeMan@726 205
nicholas@735 206 %[Talking about what we do in the various sections of this paper. Referring to \cite{waet}. ]
n@737 207 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}.
nicholas@735 208
nicholas@734 209 \begin{comment}
BrechtDeMan@728 210 % MEETING 8 OCTOBER
BrechtDeMan@728 211 \subsection{Meeting 8 October}
BrechtDeMan@728 212 \begin{itemize}
BrechtDeMan@728 213 \item Do we manipulate audio?\\
BrechtDeMan@728 214 \begin{itemize}
BrechtDeMan@728 215 \item Add loudness equalisation? (test\_create.html) Tag with gains.
BrechtDeMan@728 216 \item Add volume slider?
BrechtDeMan@728 217 \item Cross-fade (in interface node): default 0, number of seconds
BrechtDeMan@728 218 \item Also: we use the playback buffer to present metrics of which portion is listened to
BrechtDeMan@728 219 \end{itemize}
BrechtDeMan@728 220 \item Logging system information: whichever are possible (justify others)
BrechtDeMan@728 221 \item Input streams as audioelements
BrechtDeMan@728 222 \item Capture microphone to estimate loudness (especially Macbook)
BrechtDeMan@728 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!
BrechtDeMan@728 224 \item Record IP address (PHP function, grab and append to XML file)
BrechtDeMan@728 225 \item Expand anchor/reference options
BrechtDeMan@728 226 \item AB / ABX
BrechtDeMan@728 227 \end{itemize}
BrechtDeMan@728 228
BrechtDeMan@728 229 \subsubsection{Issues}
BrechtDeMan@728 230 \begin{itemize}
BrechtDeMan@728 231 \item Filters not consistent (Nick to test across browsers)
BrechtDeMan@728 232 \item Playback audiobuffers need to be destroyed and rebuilt each time
BrechtDeMan@728 233 \item Can't get channel data, hardware input/output...
BrechtDeMan@728 234 \end{itemize}
nicholas@734 235 \end{comment}
BrechtDeMan@725 236
BrechtDeMan@726 237 \section{Architecture} % title? 'back end'? % NICK
n@738 238 \label{sec:architecture}
nicholas@735 239 %A slightly technical overview of the system. Talk about XML, JavaScript, Web Audio API, HTML5.
BrechtDeMan@716 240
nicholas@739 241 Although WAET uses a sparse subset of the Web Audio API functionality, its performance comes directly from using it. Listening tests can convey large amounts of information other than obtaining the perceptual relationship between the audio fragments. With WAET it is possible to obtain which parts of the audio fragments were listened to and when, at what point in the audio stream the participant switched to a different fragment, and how a fragment's rating was adjusted over time within a session, to name a few. Not only does this allow evaluation of a wealth of perceptual aspects, but it helps detect poor participants whose results are potentially not representative.
nicholas@730 242
nicholas@739 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 called the specification document and can be designed either by manually writing the XML (or modifying an existing document or template) or using our included test creator. These are standalone HTML pages which do not require any server or internet connection and help a build the test specification document. The first (test\_create.html) is for simpler tests and operates step-by-step to guide the user. It supports media through drag and drop and a clutter free interface. The advanced version is for more advanced tests where raw XML manipulation is not wanted but the same freedom is required (whilst keeping a safety net). Both models support automatic verification to ensure the XML file is valid and will highlight areas which are either incorrect and would cause an error, or options which should be removed as they are blank.
BrechtDeMan@716 244
nicholas@739 245 The basic test creator utilises the Web Audio API to perform quick playback checks and also allows for loudness normalisation techniques inspired from \cite{ape}. These are calculated offline by accessing the raw audio samples exposed from the buffer before being applied to the audio element as a gain attribute. This is used in the test to perform loudness normalisation without needing to edit any audio files. Equally the gain can be modified in either editor using an HTML5 slider or number box.
nicholas@730 246
nicholas@735 247 %Describe and/or visualise audioholder-audioelement-... structure.
nicholas@739 248 The specification document contains the URL of the audio fragments for each test page. These fragments are downloaded asynchronously in the test and decoded offline by the Web Audio offline decoder. The resulting buffers are assigned to a custom Audio Objects node which tracks the fragment buffer, the playback bufferSourceNode, the XML information including its unique test ID, the interface object(s) associated with the fragment and any metric or data collection objects. The Audio Object is controlled by an over-arching custom Audio Context node (not to be confused with the Web Audio Context). This parent JS Node allows for session wide control of the Audio Objects including starting and stopping playback of specific nodes.
nicholas@730 249
nicholas@739 250 The only issue with this model is the bufferNode in the Web Audio API, which is implemented in the standard as a `use once' object. Once the bufferNode has been played, the bufferNode must be discarded as it cannot be instructed to play the same bufferSourceNode again. Therefore on each start request the buffer object must be created and then linked with the stored bufferSourceNode. This is an odd behaviour for such a simple object which has no alternative except to use the HTML5 audio element. However they do not have the ability to synchronously start on a given time and therefore not suited.
BrechtDeMan@716 251
nicholas@739 252 In the test, each buffer node is connected to a gain node which will operate at the level determined by the specification document. Therefore it is possible to perform a 'Method of Adjustment' test where an interface could directly manipulate these gain nodes. There is also an optional 'Master Volume' slider which can be shown on the test GUI. This slider modifies a gain node before the destination node. This slider can also be monitored and therefore its data tracked providing extra validation. This slider is not indicative of the final volume exiting the speakers and therefore its use should only be considered in a lab condition environment to ensure proper behaviour. Finally the gain nodes allow for cross-fading between samples when operating in synchronous playback. Cross-fading can either be fade-out fade-in or a true cross-fade.
nicholas@730 253
nicholas@735 254 %Which type of files? WAV, anything else? Perhaps not exhaustive list, but say something along the lines of 'whatever browser supports'. Compatability?
nicholas@739 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. The most widely supported media file is the wave (.WAV) format which is accpeted by every browser supporting the Web Audio API. The toolbox will work in any browser which supports the Web Audio API.
nicholas@730 256
nicholas@730 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@730 258
BrechtDeMan@725 259 \section{Remote tests} % with previous?
BrechtDeMan@716 260 \label{sec:remote}
BrechtDeMan@726 261
nicholas@739 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 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.
BrechtDeMan@726 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.
BrechtDeMan@726 264
BrechtDeMan@724 265 The following features allow easy and effective remote testing:
BrechtDeMan@716 266 \begin{description}[noitemsep,nolistsep]
BrechtDeMan@716 267 \item[PHP script to collect result XML files] and store on central server.
BrechtDeMan@716 268 \item[Randomly pick a specified number of pages] to ensure an equal and randomised spread of the different pages (`audioHolders') across participants.
BrechtDeMan@716 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@730 270 % In theory calibration could be applied anywhere??
BrechtDeMan@716 271 % \item Functionality to participate multiple times
BrechtDeMan@716 272 % \begin{itemize}[noitemsep,nolistsep]
BrechtDeMan@716 273 % \item Possible to log in with unique ID (no password)
BrechtDeMan@716 274 % \item Pick `new user' (generates new, unique ID) or `already participated' (need already available ID)
BrechtDeMan@716 275 % \item Store XML on server with IDs plus which audioholders have already been listened to
BrechtDeMan@716 276 % \item Don't show `post-test' survey after first time
BrechtDeMan@716 277 % \item Pick `new' audioholders if available
BrechtDeMan@716 278 % \item Copy survey information first time to new XMLs
BrechtDeMan@716 279 % \end{itemize}
BrechtDeMan@716 280 \item[Intermediate saves] for tests which were interrupted or unfinished.
BrechtDeMan@716 281 \item[Collect IP address information] for geographic location, through PHP function which grabs address and appends to XML file.
BrechtDeMan@716 282 \item[Collect Browser and Display information] to the extent it is available and reliable.
BrechtDeMan@716 283 \end{description}
BrechtDeMan@724 284
BrechtDeMan@719 285
BrechtDeMan@725 286 \section{Interfaces} % title? 'Front end'? % Dave
BrechtDeMan@716 287 \label{sec:interfaces}
djmoffat@729 288
nicholas@739 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.
djmoffat@729 290
BrechtDeMan@731 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
djmoffat@729 292 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 293 \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
nicholas@736 294 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 295 \item Multiple stimuli are presented and rated on a continuous scale, which includes a reference, hidden reference and hidden anchors.
djmoffat@729 296 \end{itemize}
djmoffat@729 297 \item Rank Scale~\cite{pascoe1983evaluation}
nicholas@736 298 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 299 \item Stimuli ranked on single horizontal scale, where they are ordered in preference order.
djmoffat@729 300 \end{itemize}
djmoffat@729 301 \item Likert scale~\cite{likert1932technique}
nicholas@736 302 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 303 \item Each stimuli has a five point scale with values: Strongly Agree, Agree, Neutral, Disagree and Strongly Disagree.
djmoffat@729 304 \end{itemize}
djmoffat@729 305 \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116} (Mean Opinion Score: MOS)
nicholas@736 306 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 307 \item Each stimulus has a continuous scale (5-1), labeled as Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying.
djmoffat@729 308 \end{itemize}
djmoffat@729 309 \item -50 to 50 Bipolar with Ref
nicholas@736 310 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 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}
djmoffat@729 312 \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
nicholas@736 313 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 314 \item Each stimuli has a five point scale with values: Bad, Poor, Fair, Good, Excellent
djmoffat@729 315 \end{itemize}
djmoffat@729 316 \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
nicholas@736 317 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 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.
djmoffat@729 319 \end{itemize}
djmoffat@729 320 \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
nicholas@736 321 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 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.
djmoffat@729 323 \end{itemize}
djmoffat@729 324 \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
nicholas@736 325 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 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.
djmoffat@729 327 \end{itemize}
djmoffat@729 328 \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
nicholas@736 329 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 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.
djmoffat@729 331 \end{itemize}
djmoffat@729 332 \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
nicholas@736 333 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 334 \item A reference is provided and ever stimulus is rated as being either better or worse than the reference.
djmoffat@729 335 \end{itemize}
djmoffat@729 336 \item APE style \cite{ape}
nicholas@736 337 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 338 \item Multiple stimuli on a single horizontal slider for inter-sample rating.
djmoffat@729 339 \end{itemize}
djmoffat@729 340 \item Multi attribute ratings
nicholas@736 341 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 342 \item Multiple stimuli as points on a 2D plane for inter-sample rating (eg. Valence Arousal)
djmoffat@729 343 \end{itemize}
djmoffat@729 344 \item AB Test~\cite{lipshitz1981great}
nicholas@736 345 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 346 \item Two stimuli are presented at a time and the participant has to select a preferred stimulus.
djmoffat@729 347 \end{itemize}
djmoffat@729 348 \item ABX Test~\cite{clark1982high}
nicholas@736 349 \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 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.
djmoffat@729 351 \end{itemize}
djmoffat@729 352 \end{itemize}
djmoffat@729 353
nicholas@739 354 It is possible to include any number of references, anchors, hidden references and hidden anchors into all of these listening test formats.
djmoffat@729 355
nicholas@739 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 object prototypes for creating the on-page comment boxes (including those with radio or checkbox responses), start and stop buttons with function handles pre-attached and the playhead / transport bars.
n@732 357
djmoffat@729 358 %%%% \begin{itemize}[noitemsep,nolistsep]
djmoffat@729 359 %%%% \item (APE style) \cite{ape}
djmoffat@729 360 %%%% \item Multi attribute ratings
djmoffat@729 361 %%%% \item MUSHRA (ITU-R BS. 1534)~\cite{recommendation20031534}
djmoffat@729 362 %%%% \item Interval Scale~\cite{zacharov1999round}
djmoffat@729 363 %%%% \item Rank Scale~\cite{pascoe1983evaluation}
djmoffat@729 364 %%%%
djmoffat@729 365 %%%% \item 2D Plane rating - e.g. Valence vs. Arousal~\cite{carroll1969individual}
djmoffat@729 366 %%%% \item Likert scale~\cite{likert1932technique}
djmoffat@729 367 %%%%
djmoffat@729 368 %%%% \item {\bf All the following are the interfaces available in HULTI-GEN~\cite{hultigen} }
djmoffat@729 369 %%%% \item ABC/HR (ITU-R BS. 1116)~\cite{recommendation19971116}
djmoffat@729 370 %%%% \begin{itemize}
djmoffat@729 371 %%%% \item Continuous Scale (5-1) Imperceptible, Perceptible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?)
djmoffat@729 372 %%%% \end{itemize}
djmoffat@729 373 %%%% \item -50 to 50 Bipolar with Ref
djmoffat@729 374 %%%% \begin{itemize}
djmoffat@729 375 %%%% \item Scale -50 to 50 on Mushra with default values as 0 in middle and a comparison ``Reference'' to compare to 0 value
djmoffat@729 376 %%%% \end{itemize}
djmoffat@729 377 %%%% \item Absolute Category Rating (ACR) Scale~\cite{rec1996p}
djmoffat@729 378 %%%% \begin{itemize}
djmoffat@729 379 %%%% \item 5 point Scale - Bad, Poor, Fair, Good, Excellent (Default fair?)
djmoffat@729 380 %%%% \end{itemize}
djmoffat@729 381 %%%% \item Degredation Category Rating (DCR) Scale~\cite{rec1996p}
djmoffat@729 382 %%%% \begin{itemize}
djmoffat@729 383 %%%% \item 5 point Scale - Inaudible, Audible but not annoying, slightly annoying, annoying, very annoying. (default Inaudible?) - {\it Basically just quantised ABC/HR?}
djmoffat@729 384 %%%% \end{itemize}
djmoffat@729 385 %%%% \item Comparison Category Rating (CCR) Scale~\cite{rec1996p}
djmoffat@729 386 %%%% \begin{itemize}
djmoffat@729 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
djmoffat@729 388 %%%% \end{itemize}
djmoffat@729 389 %%%% \item 9 Point Hedonic Category Rating Scale~\cite{peryam1952advanced}
djmoffat@729 390 %%%% \begin{itemize}
djmoffat@729 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
djmoffat@729 392 %%%% \end{itemize}
djmoffat@729 393 %%%% \item ITU-R 5 Point Continuous Impairment Scale~\cite{rec1997bs}
djmoffat@729 394 %%%% \begin{itemize}
djmoffat@729 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}
djmoffat@729 396 %%%% \end{itemize}
djmoffat@729 397 %%%% \item Pairwise Comparison (Better/Worse)~\cite{david1963method}
djmoffat@729 398 %%%% \begin{itemize}
djmoffat@729 399 %%%% \item 2 point Scale - Better or Worse - (not sure how to default this - they default everything to better, which is an interesting choice)
djmoffat@729 400 %%%% \end{itemize}
djmoffat@729 401 %%%% \end{itemize}
djmoffat@729 402
n@732 403 % Build your own test
nicholas@734 404 \begin{comment}
djmoffat@729 405 { \bf A screenshot would be nice.
djmoffat@729 406
djmoffat@729 407 Established tests (see below) included as `presets' in the build-your-own-test page. }
nicholas@734 408 \end{comment}
BrechtDeMan@719 409
BrechtDeMan@719 410 \section{Analysis and diagnostics}
BrechtDeMan@716 411 \label{sec:analysis}
BrechtDeMan@726 412 % don't mention Python scripts
BrechtDeMan@716 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.
BrechtDeMan@716 414 % \begin{figure*}[bhf]
BrechtDeMan@716 415 % \centering
BrechtDeMan@716 416 % \includegraphics[width=.7\textwidth]{timeline.pdf}
BrechtDeMan@716 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. }
BrechtDeMan@716 418 % \label{fig:timeline}
BrechtDeMan@716 419 % \end{figure*}
BrechtDeMan@716 420 For this reason, we include a proof-of-concept web page with:
BrechtDeMan@727 421 \begin{itemize}[noitemsep,nolistsep]
BrechtDeMan@716 422 \item All audioholder IDs, file names, subject IDs, audio element IDs, ... in the collected XMLs so far (\texttt{saves/*.xml})
BrechtDeMan@716 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)
BrechtDeMan@716 424 \item Embedded audio to hear corresponding test samples % (follow path in XML setup file, which is also embedded in the XML result file)
BrechtDeMan@716 425 \item Box plot, confidence plot, and scatter plot of rating values
n@738 426 \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@738 427 \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)
BrechtDeMan@716 428 \item All `comments' on a specific audioelement
n@738 429 \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@738 430 %\item Validation of setup XMLs (easily spot `errors', like duplicate IDs or URLs, missing/dangling tags, ...)
BrechtDeMan@722 431 \end{itemize}
BrechtDeMan@722 432
n@738 433
nicholas@735 434 %A subset of the above would already be nice for this paper.
nicholas@736 435 [Some pictures here please.]
BrechtDeMan@716 436 \section{Concluding remarks and future work}
BrechtDeMan@716 437 \label{sec:conclusion}
BrechtDeMan@722 438
nicholas@736 439 The code and documentation can be pulled or downloaded from our online repository available at \url{code.soundsoftware.ac.uk/projects/webaudioevaluationtool}.
BrechtDeMan@719 440
BrechtDeMan@726 441 [Talking a little bit about what else might happen. Unless we really want to wrap this up. ]
nicholas@734 442
BrechtDeMan@716 443 \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.
BrechtDeMan@726 444 % remote
BrechtDeMan@726 445 % language support (not explicitly stated)
BrechtDeMan@726 446 % crossfades
n@733 447 % choosing speakers/sound device from within browser? --- NOT POSSIBLE, can only determine channel output counts and its up to the hardware to determine
BrechtDeMan@726 448 % collect information about software and sound system
BrechtDeMan@726 449 % buttons, scales, ... UI elements
BrechtDeMan@726 450 % must be able to load uncompressed PCM
BrechtDeMan@726 451
BrechtDeMan@726 452 [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.]
BrechtDeMan@719 453
BrechtDeMan@719 454 %
BrechtDeMan@719 455 % The following two commands are all you need in the
BrechtDeMan@719 456 % initial runs of your .tex file to
BrechtDeMan@719 457 % produce the bibliography for the citations in your paper.
BrechtDeMan@719 458 \bibliographystyle{abbrv}
BrechtDeMan@719 459 \bibliography{WAC2016} % sigproc.bib is the name of the Bibliography in this case
BrechtDeMan@719 460 % You must have a proper ".bib" file
BrechtDeMan@719 461 % and remember to run:
BrechtDeMan@719 462 % latex bibtex latex latex
BrechtDeMan@719 463 % to resolve all references
BrechtDeMan@719 464 %
BrechtDeMan@719 465 % ACM needs 'a single self-contained file'!
BrechtDeMan@719 466 %
BrechtDeMan@719 467 \end{document}