[28433] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
| 2 | <!DOCTYPE videocollection [
|
---|
| 3 | <!ENTITY ndash "–">
|
---|
| 4 | <!ENTITY mdash "—">
|
---|
| 5 | ]>
|
---|
| 6 | <xsl:stylesheet version="1.0"
|
---|
| 7 | xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
---|
| 8 | xmlns:java="http://xml.apache.org/xslt/java"
|
---|
| 9 | xmlns:util="xalan://org.greenstone.gsdl3.util.XSLTUtil"
|
---|
| 10 | xmlns:gslib="http://www.greenstone.org/skinning"
|
---|
| 11 | extension-element-prefixes="java util"
|
---|
| 12 | exclude-result-prefixes="java util">
|
---|
| 13 |
|
---|
| 14 | <!-- use the 'main' layout -->
|
---|
| 15 | <xsl:include href="layouts/main.xsl"/>
|
---|
| 16 |
|
---|
| 17 | <!-- set page title -->
|
---|
| 18 | <xsl:template name="pageTitle"><gslib:collectionName/></xsl:template>
|
---|
| 19 |
|
---|
| 20 | <!-- set page breadcrumbs -->
|
---|
| 21 | <xsl:template name="breadcrumbs"><gslib:siteLink/><gslib:rightArrow/></xsl:template>
|
---|
| 22 |
|
---|
| 23 | <!-- the page content -->
|
---|
| 24 | <xsl:template match="/page">
|
---|
| 25 |
|
---|
| 26 | <!--Display the description text of the current collection,
|
---|
| 27 | and if some services are available then create a list
|
---|
| 28 | of links for each service within a <ul id="servicelist"> element.-->
|
---|
| 29 |
|
---|
| 30 | <xsl:variable name="httpPath">
|
---|
| 31 | <xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='httpPath']" />
|
---|
| 32 | </xsl:variable>
|
---|
| 33 |
|
---|
| 34 |
|
---|
| 35 | <style>
|
---|
| 36 | p.about { text-align: justify; }
|
---|
| 37 | h2 { /* line-height: 135%; */ }
|
---|
| 38 | h3 { margin-top: 4pt; margin-bottom: 7pt; line-height: 135%; }
|
---|
| 39 |
|
---|
| 40 | a.mashup {text-decoration: none; }
|
---|
| 41 | a.mashup:link {color:#000080;} /* unvisited link */
|
---|
| 42 | a.mashup:visited {color:#303080;} /* visited link */
|
---|
| 43 | a.mashup:hover {color:#000040;} /* mouse over link */
|
---|
| 44 | a.mashup:active {color:#0000a0;}
|
---|
| 45 |
|
---|
| 46 | </style>
|
---|
| 47 |
|
---|
| 48 |
|
---|
[28747] | 49 | <script src="{$httpPath}/script2/browser-detect.js" type="text/javascript">
|
---|
[28433] | 50 | /* space filler needed */
|
---|
| 51 | </script>
|
---|
| 52 |
|
---|
| 53 |
|
---|
| 54 | <div style="width: 800px; margin-left: auto; margin-right: auto;">
|
---|
| 55 |
|
---|
| 56 |
|
---|
[28747] | 57 | <h2>Structured Audio in a Music Digital Library</h2>
|
---|
[28433] | 58 |
|
---|
[28747] | 59 | <!--
|
---|
[28433] | 60 | <div style="background-color: #DD3611; color: white; padding: 4pt; margin-bottom: 6pt;">
|
---|
| 61 | <table>
|
---|
| 62 |
|
---|
| 63 | <tr>
|
---|
| 64 | <td>
|
---|
| 65 | <img src="{$httpPath}/images/firefox-128.png" />
|
---|
| 66 | </td>
|
---|
| 67 | <td>
|
---|
| 68 | <p class="about">
|
---|
| 69 | <i><font size="+2">
|
---|
| 70 | An experiment with Firefox's Advanced
|
---|
| 71 | Audio Processing Extension ...
|
---|
| 72 | </font></i>
|
---|
| 73 | </p>
|
---|
| 74 |
|
---|
| 75 | <p class="about">
|
---|
| 76 | <i><font size="+2">
|
---|
| 77 | ... featuring a mash-up of
|
---|
| 78 | <a class="mashup" href="http://www.greenstone.org" target="_blank">Greenstone</a>,
|
---|
| 79 | <a class="mashup" href="http://www.omras2.org/audioDB" target="_blank">AudioDB</a>, and
|
---|
| 80 | <a class="mashup" href="http://seasr.org/meandre/" target="_blank">Meandre</a>.
|
---|
| 81 | </font></i>
|
---|
| 82 | </p>
|
---|
| 83 |
|
---|
| 84 |
|
---|
| 85 | <div id="bd-version" style="display:none;" class="about">
|
---|
| 86 | <p>
|
---|
| 87 | <img src="{$httpPath}/images/warning-icon.png" />
|
---|
| 88 | Version of Firefox detected:
|
---|
| 89 | <script type="text/javascript">
|
---|
| 90 | document.write(BrowserDetect.version);
|
---|
| 91 | </script>
|
---|
| 92 | </p>
|
---|
| 93 | <p>
|
---|
| 94 | You need to upgrade to a more recent version of Firefox
|
---|
| 95 | (v4.0 or greater) to access all the audio features of
|
---|
| 96 | this demonstration.
|
---|
| 97 | </p>
|
---|
| 98 | </div>
|
---|
| 99 |
|
---|
| 100 | <div id="bd-browser" style="display:none;" class="about">
|
---|
| 101 |
|
---|
| 102 | <p>
|
---|
| 103 | <img src="{$httpPath}/images/warning-icon.png" />
|
---|
| 104 | Browser detected:
|
---|
| 105 | <script type="text/javascript">
|
---|
| 106 | document.write(BrowserDetect.browser);
|
---|
| 107 | </script>
|
---|
| 108 | </p>
|
---|
| 109 | <p>You need to access this web-site using Firefox
|
---|
| 110 | (v4.0 or greater) to access all the audio features provided.
|
---|
| 111 | </p>
|
---|
| 112 | </div>
|
---|
| 113 |
|
---|
| 114 |
|
---|
| 115 |
|
---|
| 116 |
|
---|
| 117 | <script>
|
---|
| 118 | <xsl:text disable-output-escaping="yes">
|
---|
| 119 |
|
---|
| 120 | if (BrowserDetect.browser == "Firefox") {
|
---|
| 121 | if (BrowserDetect.version < 4) {
|
---|
| 122 | document.getElementById("bd-version").style.display="block";
|
---|
| 123 |
|
---|
| 124 | }
|
---|
| 125 | }
|
---|
| 126 | else {
|
---|
| 127 | document.getElementById("bd-browser").style.display="block";
|
---|
| 128 |
|
---|
| 129 | }
|
---|
| 130 | </xsl:text>
|
---|
| 131 | </script>
|
---|
| 132 |
|
---|
| 133 |
|
---|
| 134 |
|
---|
| 135 |
|
---|
| 136 | </td>
|
---|
| 137 | </tr>
|
---|
| 138 | </table>
|
---|
| 139 | </div>
|
---|
[28747] | 140 | -->
|
---|
[28433] | 141 |
|
---|
[28747] | 142 | <p class="about">
|
---|
| 143 | This digital library collection is derived from the American workset,
|
---|
| 144 | from the <a href="http://salami.lis.illinois.edu">SALAMI</a> project.
|
---|
[28433] | 145 |
|
---|
[28747] | 146 | </p>
|
---|
| 147 |
|
---|
| 148 | <p class="about">This music DL embodies the following:
|
---|
| 149 |
|
---|
[28433] | 150 | <style>
|
---|
| 151 | li { padding-bottom: 10px; }
|
---|
| 152 |
|
---|
| 153 | </style>
|
---|
| 154 |
|
---|
| 155 |
|
---|
| 156 | <ol>
|
---|
| 157 | <li>
|
---|
| 158 | <i>Starting point:</i> Manual (command-line) aggregation of disparate
|
---|
| 159 | resources prior to building the DL. A set of bespoke Greenstone
|
---|
| 160 | document processing plugins corrals the heterogeneous gathered
|
---|
| 161 | data into a unified (homogeneous) canonical form that the DL can
|
---|
| 162 | access and display. Everything presented in the DL is
|
---|
| 163 | either pre-computed (such as the self-similarity heat-maps) or else
|
---|
| 164 | computed at build-time.
|
---|
| 165 | </li>
|
---|
| 166 |
|
---|
| 167 | <li>
|
---|
| 168 | <i>Audio-fingerprinting:</i> as before, but now metadata about the audio
|
---|
| 169 | songs is now enriched through a set of audio-fingerprinting web
|
---|
| 170 | services. Everything presented in the DL is still pre-computed
|
---|
| 171 | or else computed at build-timeâhowever, the inclusion in the document
|
---|
| 172 | view of a "Discovery" block allows a user to begin to
|
---|
| 173 | access and explore through linked-data, information related to
|
---|
| 174 | the song.
|
---|
| 175 | </li>
|
---|
| 176 |
|
---|
| 177 | <li>
|
---|
| 178 | <i>Client-side audio processing (and visualization):</i> the
|
---|
| 179 | Pre-computed self-similarity heat-maps are dropped from the
|
---|
| 180 | collection building process in preference for the same information
|
---|
| 181 | being computed through Javascript running in the user's web
|
---|
| 182 | browser.
|
---|
| 183 | </li>
|
---|
| 184 |
|
---|
| 185 | <li>
|
---|
| 186 | <i>Embedded Meandre workflows:</i> the Meandre Workbench is
|
---|
| 187 | integrated into Greenstone. Audio documents in the Greenstone
|
---|
| 188 | digital library can now be dispatched and be processed by the
|
---|
| 189 | selected Meandre, and output from the workflow returned to the
|
---|
| 190 | Greenstone document viewâfor example, playing audio that has been
|
---|
| 191 | processed and output from the workflow.
|
---|
| 192 | </li>
|
---|
| 193 |
|
---|
| 194 | <li>
|
---|
| 195 | <i>Client-side workflows:</i> the client-side Javascript
|
---|
| 196 | processing code is refactored to follow the same methodology as
|
---|
| 197 | Meandre components.
|
---|
| 198 | </li>
|
---|
| 199 |
|
---|
| 200 | <li>
|
---|
| 201 | <i>Client/Server hybrid workflows:</i> the Greenstone/Meandre
|
---|
| 202 | integration is extended to support the dynamic
|
---|
| 203 | transmission of <tt>executeCallBack()</tt> methods written
|
---|
| 204 | in the user's browser in Javascript to be run on the
|
---|
| 205 | Meandre server as part of the active workflow.
|
---|
| 206 | </li>
|
---|
| 207 |
|
---|
| 208 | <li>
|
---|
| 209 | <i>Forging ahead:</i> the next area to be worked on is upgrading
|
---|
| 210 | the level of Greenstone/Meandre integration so that data produced
|
---|
| 211 | by the workflows can be incorporated back into the underlying
|
---|
| 212 | digital library itself, rather than being (as it currently stands)
|
---|
| 213 | transitory data that only lives for the duration of the web page
|
---|
| 214 | being viewed. This will form an implementation stepping-stone to
|
---|
| 215 | a more generalized ability to have data retrieved from other
|
---|
| 216 | external resources (located through the Discovery block
|
---|
| 217 | linked-data portion of the document view) ingested in to the DL
|
---|
| 218 | collection.
|
---|
| 219 | </li>
|
---|
| 220 |
|
---|
| 221 |
|
---|
| 222 | </ol>
|
---|
| 223 |
|
---|
| 224 | </p>
|
---|
| 225 |
|
---|
| 226 |
|
---|
| 227 |
|
---|
| 228 | <!--
|
---|
| 229 |
|
---|
| 230 | <p class="about">This digital library collection demonstrates the
|
---|
| 231 | integration of a variety of sources of structural metadata from both
|
---|
| 232 | automatically derived content analysis and manually labelled
|
---|
| 233 | ground-truth data to form a rich interactive web application suitable
|
---|
| 234 | for musicologists (as the target end-users) to explore a collated set
|
---|
| 235 | of music files.</p>
|
---|
| 236 |
|
---|
| 237 | <p class="about">While the base digital library system, <a
|
---|
| 238 | href="http://www.greenstone.org" target="_blank">Greenstone</a>, is
|
---|
| 239 | designed to operate with any web browser, the audio features this
|
---|
| 240 | particular DL collection demonstrates relies on audio processing
|
---|
| 241 | features currently only available in Firefox. Using one of the other
|
---|
| 242 | web browsers you will be able to access most features of the digital
|
---|
| 243 | library collection, but when you access a particular song you may find
|
---|
| 244 | playing the audioâin particular the panned audio
|
---|
| 245 | effectâdoes not work.</p>
|
---|
| 246 | -->
|
---|
| 247 |
|
---|
| 248 |
|
---|
| 249 | <!--
|
---|
| 250 | <p class="about">The developed system combines the open source capabilities of
|
---|
| 251 | Greenstone, \cite{Greenstone}, NEMA \cite{Nema}, Salami \cite{Salami},
|
---|
| 252 | and AudioDB \cite{AudioDB}.
|
---|
| 253 |
|
---|
| 254 | %%
|
---|
| 255 | NEMA and Salami have been previously described in this article, and contribute
|
---|
| 256 | manual and audio content based metadata.
|
---|
| 257 | %%
|
---|
| 258 | AudioDB is a raw-audio content based searching algorithm based on Local-Sensitivity Hashing \cite{LSH}.
|
---|
| 259 | %%
|
---|
| 260 | Greenstone is a versatile digital library architecture with an
|
---|
| 261 | extensible service-based architecture that. In
|
---|
| 262 | addition to the text-based searching and browsing capability to
|
---|
| 263 | organize content, Greenstone provides the framework in which to harness the
|
---|
| 264 | structural metadata from NEMA and Salami, and the audio-content based
|
---|
| 265 | search functionality of audioDB.
|
---|
| 266 |
|
---|
| 267 | -->
|
---|
| 268 |
|
---|
| 269 |
|
---|
| 270 |
|
---|
| 271 | <h3>A Walkthrough</h3>
|
---|
| 272 |
|
---|
| 273 |
|
---|
| 274 | <p class="about">The following walkthrough is for the initial incarnation of the DL collection, where all
|
---|
| 275 | the information presented is either precomputed or computed at build time.</p>
|
---|
| 276 |
|
---|
| 277 | <p class="about">Taking as a starting point a set of music files identified as worthy
|
---|
| 278 | of study, the <a href="#browse">figure below</a> shows the result of browsing
|
---|
| 279 | the formed digital library collection <a href="dev?a=b&rt=s&s=ClassifierBrowse&c=salami-audioDB&cl=CL1" target="_blank">by title</a> from a web browser.
|
---|
| 280 | The figure is a useful snapshot in which to orientate ourselves with
|
---|
| 281 | the main structure and features to the digital library. Functionality that
|
---|
| 282 | persistently reoccurs is accessible through the header to the page.</p>
|
---|
| 283 |
|
---|
| 284 | <p class="about">This includes:
|
---|
| 285 | <ul>
|
---|
| 286 |
|
---|
| 287 | <li>help and preferences (top-right);</li>
|
---|
| 288 | <li>a quick-search option (located just
|
---|
| 289 | below) with links to more sophisticated searching options; and</li>
|
---|
| 290 | <li>pin-pointing where within the site a user is currently located
|
---|
| 291 | (top-left).</li>
|
---|
| 292 | </ul>
|
---|
| 293 |
|
---|
| 294 |
|
---|
| 295 | <a name="browse" />
|
---|
| 296 | <table style="width: 700px; margin-left: auto; margin-right: auto; margin-bottom: 6pt;">
|
---|
| 297 | <tr>
|
---|
| 298 | <td style="border: solid 1px;">
|
---|
| 299 | <img style="width: 700px" src="{$httpPath}/images/figs/cropped/salami-browse.png" />
|
---|
| 300 | </td>
|
---|
| 301 | </tr>
|
---|
| 302 | <tr style="background-color: #bbeebb">
|
---|
| 303 | <td>
|
---|
| 304 | <i>Browsing in the digital library
|
---|
| 305 | <a href="dev?a=b&rt=s&s=ClassifierBrowse&c=salami-audioDB&cl=CL1" target="_blank">by titles</a>.</i>
|
---|
| 306 | </td>
|
---|
| 307 | </tr>
|
---|
| 308 | </table>
|
---|
| 309 |
|
---|
| 310 |
|
---|
| 311 | The specific content to this location within the site (in this case
|
---|
| 312 | browsing by title) is shown beneath the main banner. Various
|
---|
| 313 | groupings of title can be accessed by clicking on the bookshelf icons
|
---|
| 314 | vertically aligned as the main part of the page: currently <a
|
---|
| 315 | href="dev?a=b&rt=s&s=ClassifierBrowse&c=salami-audioDB&cl=CL1#CL1.2">CâD</a>
|
---|
| 316 | is open, with the remaining letters to the alphabet below this,
|
---|
| 317 | accessed through scrolling.</p>
|
---|
| 318 |
|
---|
| 319 |
|
---|
| 320 |
|
---|
| 321 |
|
---|
| 322 | <p class="about">Interested in the song <i>Candela</i> our curious musicologist clicks
|
---|
| 323 | on <a href="dev?a=d&ed=1&book=off&c=salami-audioDB&d=D145&dt=simple&sib=1&p.a=b&p.sa=&p.s=ClassifierBrowse" target="_blank">the link for this</a>. This brings up the document view to this song:</p>
|
---|
| 324 |
|
---|
| 325 | <a name="self-similarity" />
|
---|
| 326 | <table style="width: 700px; margin-left: auto; margin-right: auto; margin-bottom: 6pt;">
|
---|
| 327 | <tr>
|
---|
| 328 | <td style="border: solid 1px;">
|
---|
| 329 | <img style="width: 700px" src="{$httpPath}/images/figs/cropped/salami-self-similarity2.png" />
|
---|
| 330 | </td>
|
---|
| 331 | </tr>
|
---|
| 332 | <tr style="background-color: #bbeebb">
|
---|
| 333 | <td>
|
---|
| 334 | <i>The <a href="dev?a=d&ed=1&book=off&c=salami-audioDB&d=D145&dt=simple&sib=1&p.a=b&p.sa=&p.s=ClassifierBrowse" target="_blank">musicologically enriched document view</a> for</i> Candela.
|
---|
| 335 | </td>
|
---|
| 336 | </tr>
|
---|
| 337 | </table>
|
---|
| 338 |
|
---|
| 339 | <p class="about">Normally in a digital
|
---|
| 340 | library the document view brings up a page that is strongly derived
|
---|
| 341 | from textual metadata. If the document viewed was a text-document,
|
---|
| 342 | some summary information such as title and author is typically
|
---|
| 343 | presented, say in tabular form, before the main text is presented.
|
---|
| 344 | Even in the case of multimedia digital libraries, the view presented
|
---|
| 345 | is still strongly derived from textual metadata: this time including
|
---|
| 346 | details such as the length of the video, the TV company that produced
|
---|
| 347 | it, whether captions are available, and so forth, accompanied with an
|
---|
| 348 | embedded video player for viewing the contentâessentially more
|
---|
| 349 | textual metadata (in this case the URL to the video content) which in
|
---|
| 350 | terms of the user-interface is largely divorced from the other
|
---|
| 351 | elements displayed on the page.</p>
|
---|
| 352 |
|
---|
| 353 | <p class="about">This contrasts sharply with the document view developed in this
|
---|
| 354 | digital library.
|
---|
| 355 | Naturally it allows the song to be played (akin to the embedded video player),
|
---|
| 356 | however this is largely of secondary importance to the
|
---|
| 357 | other functionality available this is much more closely
|
---|
| 358 | integrated.</p>
|
---|
| 359 |
|
---|
| 360 | <p class="about">The most striking visual component to the document view is a
|
---|
| 361 | self-similarity "heat map" where the duration of the song forms both
|
---|
| 362 | the <i>x</i>- and <i>y</i>-axis, and a red pixel located at a given <i>(x,y)</i>
|
---|
| 363 | co-ordinate in the map represents a location where two parts of the
|
---|
| 364 | song are strongly similar, proportionally shifting to blue to
|
---|
| 365 | represent dissimilar. Given this configuration, the leading diagonal
|
---|
| 366 | to the matrix (<i>x=y</i>) is always coloured red as this represents the
|
---|
| 367 | comparison of one part of the song with itself.</p>
|
---|
| 368 |
|
---|
| 369 | <p class="about">When the user moves the mouse cursor around the self-similarity map
|
---|
| 370 | a highlighting circle is shown to emphasize the area the user is over,
|
---|
| 371 | with a black dot at the centre (visible in in
|
---|
| 372 | the <a href="#self-similarity">above figure</a>); annotated vertically
|
---|
| 373 | and horizontally are the two time-offsets in seconds that that point
|
---|
| 374 | in the map corresponds to. Clicking the cursor at this point results
|
---|
| 375 | in the audio being played <i>simultaneously</i> from these two points.
|
---|
| 376 | To aid the musicologist in listening to the two parts of the song, one
|
---|
| 377 | part is panned to the left speaker, and the other to the right (this
|
---|
| 378 | was implemented using the extended audio API provided by Firefox, and
|
---|
| 379 | so this particular feature only work when viewing the collection with
|
---|
| 380 | this browserâsee implementation details below). In our figure,
|
---|
| 381 | the musicologist has zeroed in the location <i>x=33</i>, <i>y=97</i>
|
---|
| 382 | which corresponds to the start of a strong red diagonal that occurs
|
---|
| 383 | some distance off the leading diagonal. Listening to the two sounds
|
---|
| 384 | played (most reliably done with headphones on), they hear that these
|
---|
| 385 | two sections of the song are indeed repeating sections of the guitar
|
---|
| 386 | piece <i>Candela</i> with a minor variation in the latter section
|
---|
| 387 | where a recorder is also playing in the arrangement.</p>
|
---|
| 388 |
|
---|
| 389 | <p class="about">The structured audio time-lines (labelled A, B, ..., and 6, 5, 2,
|
---|
| 390 | ... in the figure) located above the self-similarity map are another
|
---|
| 391 | area of enriched musical content in the digital library. The upper
|
---|
| 392 | line shows the ground-truth data for this song generated by
|
---|
| 393 | the <a href="http://www.music-ir.org/?q=node/14" target="_blank">Salami project</a>;
|
---|
| 394 | the lower line is generated by an algorithmically based content
|
---|
| 395 | analysis algorithm.</p>
|
---|
| 396 |
|
---|
| 397 | <p class="about">While there is some agreement between these two lines, there are
|
---|
| 398 | also significant differences. The play and search buttons within the
|
---|
| 399 | structured time-lines (the latter represented by a magnifying glass)
|
---|
| 400 | allow the user to investigate further these structures. We shall
|
---|
| 401 | return to the search functionality shortly (which is content based,
|
---|
| 402 | using <a href="http://omras2.doc.gold.ac.uk/software/audiodb/" target="_blank">AudioDB</a>),
|
---|
| 403 | but in the meantime note that with the time-lines positioned above the
|
---|
| 404 | self-similarity map, there is further opportunity to study the
|
---|
| 405 | differences between the two structured time-line. It is certainly the
|
---|
| 406 | case that there are strong visual cues in the map that line up with
|
---|
| 407 | the algorithmic time-line, even though they do not align with a
|
---|
| 408 | boundary in the ground-truth data, and the user can click on these
|
---|
| 409 | parts of the similarity map to hear what is occurring at these
|
---|
| 410 | points.</p>
|
---|
| 411 |
|
---|
| 412 |
|
---|
| 413 |
|
---|
| 414 | <a name="resultspage" />
|
---|
| 415 | <table style="width: 700px; margin-left: auto; margin-right: auto; margin-bottom: 6pt;">
|
---|
| 416 | <tr>
|
---|
| 417 | <td style="border: solid 1px;">
|
---|
| 418 | <img style="width: 350px" src="{$httpPath}/images/figs/cropped/salami-audiodb-search-resultspage-halfcut.png" />
|
---|
| 419 | </td>
|
---|
| 420 | <td style="border: solid 1px;">
|
---|
| 421 | <img style="width: 350px" src="{$httpPath}/images/figs/cropped/salami-structured-search-resultspage-halfcut.png" />
|
---|
| 422 | </td>
|
---|
| 423 | </tr>
|
---|
| 424 | <tr style="background-color: #bbeebb">
|
---|
| 425 | <td colspan="2">
|
---|
| 426 | <i>Audio content based search results: left) the
|
---|
| 427 | <a href="dev?a=q&sa=&rt=rd&s=AudioQuery&c=salami-audioDB&startPage=1&s1.maxDocs=100&s1.hitsPerPage=20&q=D206.dir&s1.query=D206.dir&s1.offset=263&s1.length=24&mysongWindowDuration=6" target="_blank">result list</a> from
|
---|
| 428 | an audio content based query taken from an extract of </i>
|
---|
| 429 | Michelle; <i>and right)
|
---|
| 430 | the <a href="dev?a=q&sa=&rt=rd&s=TextQuery&c=salami-audioDB&startPage=1&s1.query=%22b+b+c+b+c%22&s1.index=JS" target="_blank">result of a structured music search</a> for
|
---|
| 431 | content containing "b b c b a" as a sequence.</i>
|
---|
| 432 | </td>
|
---|
| 433 | </tr>
|
---|
| 434 | </table>
|
---|
| 435 |
|
---|
| 436 | <p class="about">Returning to the search capability provided by the structured
|
---|
| 437 | time-lines, the <a href="#resultspage">above figure (left)</a> show the result of
|
---|
| 438 | using this feature while study the song <i>Michelle</i> by The
|
---|
| 439 | Beatles. In this case the user selected the section of the
|
---|
| 440 | ground-truth time-line corresponding to section starting "I want you
|
---|
| 441 | ...", but could have equally used the algorithmically calculated
|
---|
| 442 | time-line, or in fact paused the song playing at any point, and
|
---|
| 443 | started a match from there.</p>
|
---|
| 444 |
|
---|
| 445 |
|
---|
| 446 | <p class="about">Not surprisingly <i>Michelle</i> is returned as the top hit (at
|
---|
| 447 | 92.1%)âwe shall see shortly that this is because the system found
|
---|
| 448 | several sections of the song that matched thisâthe next hit being
|
---|
| 449 | <i>Bigger Than JC</i> at 74.4%, and so on down, where only one hit
|
---|
| 450 | per song occurs. Clicking on the top hit,
|
---|
| 451 | the <a href="#audiodb">figure below</a> shows the document view that is
|
---|
| 452 | displayed, focusing in on the key area to this screen. This time the
|
---|
| 453 | time-line area has an additional bar: the points within the song that
|
---|
| 454 | AudioDB found to be similar. Like the other time-lines, a play button
|
---|
| 455 | is present on these segments so the user can play the matching points
|
---|
| 456 | directly. In this case
|
---|
| 457 | clicking on them reveals the matching sections found correspond to
|
---|
| 458 | melodically repeating sections of the song, only with different lyrics
|
---|
| 459 | ("I love you ..." and "I need you ...").</p>
|
---|
| 460 |
|
---|
| 461 |
|
---|
| 462 | <p class="about">A further form of musical content-based searching is available through
|
---|
| 463 | the main header to the digital library. Instead of searching by title
|
---|
| 464 | or artist (which are also available) the user can click on this
|
---|
| 465 | "search by" menu next to the quick-search text box and select
|
---|
| 466 | "ground-truth structure" instead.
|
---|
| 467 | The <a href="#resultspage">figure above</a> (right) shows the result of using this
|
---|
| 468 | option, where the user has entered "b b c b c" as the query, in
|
---|
| 469 | other words searching for songs that have two sections in a row the
|
---|
| 470 | same, then a new section, then returning to the original section,
|
---|
| 471 | before progressing to a recurrence of the second distinct section. In
|
---|
| 472 | pop and rock music this is a popular sequence corresponding to verse,
|
---|
| 473 | verse, chorus, verse, chorus. A more intriguing framing of a query
|
---|
| 474 | along these linesâequally possible in the digital libraryâwould be
|
---|
| 475 | to go to the fielded search page (accessible through the <i>advanced
|
---|
| 476 | search</i> link below the quick-search box, and entered the same
|
---|
| 477 | music structure query, but this time combine it with other fielded
|
---|
| 478 | query terms (Genre=Blues OR Jazz, Year<1950). Results from this
|
---|
| 479 | query would let the musicologist explore potential evidence of this
|
---|
| 480 | pattern of sections being used in two of the key musical genres that
|
---|
| 481 | influenced the development of Rock and Roll music.</p>
|
---|
| 482 |
|
---|
| 483 |
|
---|
| 484 | <a name="audiodb" />
|
---|
| 485 | <table style="width: 700px; margin-left: auto; margin-right: auto; margin-bottom: 6pt;">
|
---|
| 486 | <tr>
|
---|
| 487 | <td style="border: solid 1px;">
|
---|
| 488 | <img style="width: 700px" src="{$httpPath}/images/figs/cropped/salami-audiodb-search2.png" />
|
---|
| 489 | </td>
|
---|
| 490 | </tr>
|
---|
| 491 | <tr style="background-color: #bbeebb">
|
---|
| 492 | <td>
|
---|
| 493 | <i>The document view for</i> Michelle <i><a href="dev?a=d&c=salami-audioDB&d=D206&dt=simple&p.frameOffset=133,393,264,262,392&p.frameLength=24&p.a=q&p.s=AudioQuery&hl=on&ed=1#D206" target="_blank">augmented with the locations of the matches</a> of the audio query.</i>
|
---|
| 494 | </td>
|
---|
| 495 | </tr>
|
---|
| 496 | </table>
|
---|
| 497 |
|
---|
| 498 |
|
---|
| 499 |
|
---|
| 500 |
|
---|
| 501 | <h3>Implementation details</h3>
|
---|
| 502 |
|
---|
| 503 | <p class="about">The core part of the interactive elements in the document view were
|
---|
| 504 | implemented using SVG combined with Javascript. The left- and
|
---|
| 505 | right-panning interactively available from the self-similarity map was
|
---|
| 506 | implemented by processing the raw audio stream, made accessible by the
|
---|
| 507 | Firefox Audio extension
|
---|
| 508 | <a href="https://wiki.mozilla.org/Audio_Data_API" target="_blank">API</a>.</p>
|
---|
| 509 |
|
---|
| 510 | <p class="about">AudioDB content based searching was integrated into Greenstone through
|
---|
| 511 | two components of the digital library software architecture: its
|
---|
| 512 | build-time document processing plugin system, and its runtime
|
---|
| 513 | message-passing service-base framework. The developed plugin accepts
|
---|
| 514 | a wide range of audio formats (including OGG and MP3), and converts
|
---|
| 515 | them to WAV, the format needed by AudioDB for processing. The new
|
---|
| 516 | search service took the form of a proxy, accepting messages in the
|
---|
| 517 | XML syntax used by Greenstone, turning them into the necessary calls
|
---|
| 518 | to the AudioDB command-line interface, and then converting the output
|
---|
| 519 | from AudioDB back into the XML syntax expected by the digital library
|
---|
| 520 | architecture. Finally, the two parts were packaged to operate as a
|
---|
| 521 | Greenstone extension; the software is available at:
|
---|
| 522 | <a href="http://trac.greenstone.org/gs3-extensions/audioDB/trunk/src" target="_blank">http://trac.greenstone.org/gs3-extensions/audioDB/trunk/src</a>.</p>
|
---|
| 523 |
|
---|
| 524 | </div>
|
---|
| 525 |
|
---|
| 526 |
|
---|
| 527 | </xsl:template>
|
---|
| 528 |
|
---|
| 529 |
|
---|
| 530 | </xsl:stylesheet>
|
---|
| 531 |
|
---|