annotate docs/WAC2016/WAC2016.tex @ 735:ac51271a1a77

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