--- a/reqs/Overview.html Sat Aug 04 08:45:54 2012 -0400
+++ b/reqs/Overview.html Fri Aug 10 13:39:36 2012 +0100
@@ -119,7 +119,7 @@
<p>This section will introduce a number of scenarios involving the use of Web Audio processing or synthesis technologies, and discuss implementation and architectural considerations.</p>
<section>
- <h3>Scenario 1: Video Chat Application</h3>
+ <h3>Video Chat Application</h3>
<p>Three people have joined a three-way conversation through a web application. Each of them see the other two participants in split windows, and hear their voice in sync with the video.</p>
<p>The application provides a simple interface to control the incoming audio and video of the other participants: at any time, the user can mute the incoming streams, control the overall sound volume, or mute themselves while continuing to send a live video stream through the application.</p>
@@ -147,7 +147,7 @@
</section>
<section>
- <h3>Scenario 2: 3D game with music and convincing sound effects</h3>
+ <h3>3D game with music and convincing sound effects</h3>
<p>A user is playing a 3D first-person adventure game on their mobile device. The game is built entirely using open web technologies.</p>
<p>As soon as the user starts the game, a musical background starts, loops seamlessly, and transitions smoothly from one music track to another as the player enters a house.</p>
<p>While walking in a corridor, the player can hear the muffled sound of a ticking grandfather's clock. Following the direction of the sound and entering a large hall, the sound of the clock becomes clear, reverberating in the large hall. At any time, the sound of the clock spatialized in real-time based on the position of the player's character in the room (relative to the clock) and the current camera angle.</p>
@@ -172,9 +172,7 @@
<section>
- <h3>Scenario 3: Online music production tool</h3>
- <p>(online audio workstation tool?)
- </p>
+ <h3>Online music production tool</h3>
<p>A user arranges a musical composition using a web-based Digital Audio Workstation (DAW) application.</p>
@@ -208,7 +206,7 @@
</section>
<section>
- <h3>Scenario 4: Online radio broadcast</h3>
+ <h3>Online radio broadcast</h3>
<p>A web-based online radio application supports one-to-many audio broadcasting on various channels. For any one broadcast channel it exposes three separate user interfaces on different pages. One interface is used by the broadcaster controlling a radio show on the channel. A second interface allows invited guests to supply live audio to the show. The third interface is for the live online audience listening to the channel.</p>
@@ -249,7 +247,7 @@
<section>
- <h3>Scenario 5: Music Creation Environment with Sampled Instruments</h3>
+ <h3>Music Creation Environment with Sampled Instruments</h3>
<p>A user is employing a web-based application to create and edit a musical composition. The user interface for composing can take a number of forms ranging from a beat grid or piano-roll display to conventional Western notation. Whatever the visual representation, the key idea of the scenario is that the user is editing a document that is sonically rendered as a series of precisely timed and modulated audio events (notes) that collectively make up a piece of music.</p>
<p>The user occasionally stops editing and wishes to hear playback of some or all of the score they are working on to take stock of their work. At this point the program performs sequenced playback of some portion of the document. Some simple effects such as instrument panning and room reverb are also applied for a more realistic and satisfying effect.</p>
<p>Compositions in this editor employ a set of instrument samples, i.e. a pre-existing library of recorded audio snippets. Any given snippet is a brief audio recording of a note played on an instrument with some specific and known combination of pitch, dynamics and articulation. The combinations in the library are necessarily limited in number to avoid bandwidth and storage overhead. During playback, the editor must simulate the sound of each instrument playing its part in the composition. This is done by transforming the available pre-recorded samples from their original pitch, duration and volume to match the characteristics prescribed by each note in the composed music. These per-note transformations must also be scheduled to be played at the times prescribed by the composition.</p>
@@ -272,7 +270,7 @@
</section>
<section>
- <h3>UC 7: Audio / Music Visualization </h3>
+ <h3>Audio / Music Visualization</h3>
<p>A user is playing back audio or video media from the webpage of their favorite artist or a popular online music streaming service. The visualization responds to the audio in real-time and can be enjoyed by the user(s) in a leisurely setting such as: at home, a bar/restaurant/lobby, or traveling with an HTML5 capable mobile device. The visualization layers can be written using complimentary web technologies such as the WebGL Canvas, where 3D objects are synchronized with the audio and mixed with Video and other web content using JavaScript.
</p><p>The webpage can presents a graphic visualization layers such as:
</p>
@@ -285,31 +283,19 @@
<p><br />
The user can control elements of the visualization using an interface provided by the webpage developer. The user can change the colors, shapes and tweak other visualization settings to their taste. The user may switch to a new visualization modes: changing from a spectrum-analysis view, to an abstract 2D or 3D visual view, a video overlay, or a mash-up of web-content that could include all of the above.
</p>
- <h4>UC7 — Priority </h4>
- <pre> <i>Priority: <b>HIGH</b></i>
- </pre>
- <p>… consensus reached during the teleconference on <a href="http://www.w3.org/2012/02/13-audio-minutes" title="http://www.w3.org/2012/02/13-audio-minutes">13 Feb 2012</a>.
- </p><p>This appears to be the subject of many demos, and a center of interest.
- </p>
</section>
<section>
- <h3>UC 8: UI/DOM Sounds </h3>
+ <h3>UI/DOM Sounds</h3>
<p>A child is visiting a Kids' website where the playful, colorful HTML interface is accompanied by sound effects played as the child hovers or clicks on some of the elements of the page. For example, when filling a form the sound of a typewriter can be heard as the child types in the form field. Some of the sounds are spatialized and have a different volume depending on where and how the child interacts with the page. When an action triggers a download visualised with a progress bar, a rising pitch sound accompanies the download and another sound (ping!) is played when the download is complete.
</p>
- <h4>UC8 — Priority </h4>
- <pre> <i>Priority: <b>LOW</b></i>
- </pre>
- <p>… consensus reached during the teleconference on <a href="http://www.w3.org/2012/02/13-audio-minutes" title="http://www.w3.org/2012/02/13-audio-minutes">13 Feb 2012</a>.
- </p><p>General consensus that while this is an interesting use case, there is no clamor to facilitate it entirely and urgently.
- </p>
</section>
<section>
- <h3>UC-9 : Language learning </h3>
+ <h3>Language learning</h3>
<p>A user is listening to the web-cast of an audio interview available from
the web-page of a radio broadcasting streaming service.
The interview is broad casted in Spanish, unfortunately not the native
@@ -329,19 +315,13 @@
want to allow more time to better understand web-cast as well as audio
books.
</p>
- <h4>UC9 — Priority </h4>
- <pre> <i>Priority: <b>LOW</b></i>
- </pre>
- <p>… consensus reached during the teleconference on <a href="http://www.w3.org/2012/02/13-audio-minutes" title="http://www.w3.org/2012/02/13-audio-minutes">13 Feb 2012</a>.
- </p><p>General consensus that while this is an interesting use case, there is no clamor to facilitate it entirely and urgently.
- </p>
</section>
<section>
- <h3>UC-10 : Podcast on a flight </h3>
+ <h3>Podcast on a flight</h3>
<p>A user is subscribed to a podcast, and has downloaded an audio book on
his device.
The audio files are stored locally on the user's computer or other
@@ -368,19 +348,13 @@
</p><p>This would be valuable features for book listeners who want to save time
by accelerating audio books as well as podcasts.
</p>
- <h4>UC10 — Priority </h4>
- <pre> <i>Priority: <b>LOW</b></i>
- </pre>
- <p>… consensus reached during the teleconference on <a href="http://www.w3.org/2012/02/13-audio-minutes" title="http://www.w3.org/2012/02/13-audio-minutes">13 Feb 2012</a>.
- </p><p>General consensus that while this is an interesting use case, there is no clamor to facilitate it entirely and urgently.
- </p>
</section>
<section>
- <h3>UC-11: DJ music at 125 BPM </h3>
+ <h3>DJ music at 125 BPM</h3>
<p>A disc jockey (DJ) selects and plays recorded music for a discotheque
audience. The DJ uses a radio broadcasting streaming service to play the
music live.
@@ -408,11 +382,11 @@
</p><p>These would be valuable features for DJs who want to beat-sync music on
line, like they are used to do with decks and turntables.
</p>
- <h4>UC11 — Priority </h4>
- <pre> <i>Priority: <b>LOW</b></i>
- </pre>
- <p>… consensus reached during the teleconference on <a href="http://www.w3.org/2012/02/13-audio-minutes" title="http://www.w3.org/2012/02/13-audio-minutes">13 Feb 2012</a>.
- </p><p>General consensus that while this is an interesting use case, there is no clamor to facilitate it entirely and urgently.
+ </section>
+
+ <section>
+ <h3>Soundtrack and sound effects in a video editing tool </h3>
+ <p>A person is using an online video editing tool to modify the soundtrack of a video. The editor extracts the existing recorded vocals from the video stream, modifies the levels and performs other modifications of the audio stream. She also adds several songs, including a orchestral background and pop songs, at different parts of the soundtrack. She also adds several Foley effects (footsteps, doors opening and closing, etc.). While editing, the audio and video playback are synced to allow the editor to insert audio samples at the right time. As the length of one of the songs is slightly different from the video segment she is matching it with, she can synchronize the two by slightly speeding up or slowing down the audio track. The final soundtrack is mixed down into the final soundtrack, added to the video as a replacement for the original audio track, and synced with the video track.
</p>
</section>
@@ -420,29 +394,10 @@
<section>
- <h3>UC-12: Soundtrack and sound effects in a video editing tool </h3>
- <p>A person is using an online video editing tool to modify the soundtrack of a video. The editor extracts the existing recorded vocals from the video stream, modifies the levels and performs other modifications of the audio stream. She also adds several songs, including a orchestral background and pop songs, at different parts of the soundtrack. She also adds several Foley effects (footsteps, doors opening and closing, etc.). While editing, the audio and video playback are synced to allow the editor to insert audio samples at the right time. As the length of one of the songs is slightly different from the video segment she is matching it with, she can synchronize the two by slightly speeding up or slowing down the audio track. The final soundtrack is mixed down into the final soundtrack, added to the video as a replacement for the original audio track, and synced with the video track.
- </p>
- <h4>UC12 — Priority </h4>
- <pre> <i>Priority: <b>LOW</b></i>
- </pre>
- <p>… consensus reached during the teleconference on <a href="http://www.w3.org/2012/02/13-audio-minutes" title="http://www.w3.org/2012/02/13-audio-minutes">13 Feb 2012</a>.
- </p><p>General consensus that while this is an interesting use case, there is no clamor to facilitate it entirely and urgently.
- </p>
-
- </section>
-
- <section>
-
-
- <h3>UC-13: Web-based guitar practice service </h3>
+ <h3>Web-based guitar practice service </h3>
<p>A serious guitar player uses a web-based tool to practice a new tune. Connecting a USB microphone and a pair of headphones to their computer, the guitarist is able to tune an acoustic guitar using a graphical interface, set a metronome to keep the tempo then start recording a practice session.
</p><p>The audio input from the microphone is automatically analysed to detect whether the musician is keeping a regular beat. The music played during the session is recorded and can be saved to a variety of file formats locally or on the online service where others can replay, comment on the performance and annotate any section to help the musician improve technique and delivery.
</p>
- <h4>UC13 — Priority </h4>
- <p><i>Priority: <b>Low</b></i>
- </p><p>The Use case has been created with a Low priority as a default. No objection raised since mid-February 2012.
- </p>
</section>
@@ -450,21 +405,15 @@
- <h3>UC-14: User Control of Audio </h3>
+ <h3>User Control of Audio </h3>
<p>A programmer wants to create a browser extension to allow the user to control the volume of audio on a per-tab basis, or to kill any audio playing completely, in a way that takes care of garbage collection.
</p>
- <h4>UC14 — Priority </h4>
- <p><i>Priority: <b>Low</b></i>
- </p><p>The Use case has been created with a Low priority as a default. No objection raised since mid-February 2012.
- </p><p><br />
- </p>
-
</section>
<section>
- <h3>UC-15: Video commentary </h3>
+ <h3>Video commentary </h3>
<p>The director of a video wants to add audio commentary to explain his creative process, and invites other people involved in the making of the video to do the same. His production team also prepares an audio description of the scenes to make the work more accessible to people with sight disabilities.
</p><p>The video, displayed in a HTML web page, can be played with its original audio track (embedded in the video container) or with any of the audio commentary tracks loaded from a different source and synchronised with the video playback. When there's audio on the commentary track, the main track volume is reduced (ducked) gradually and smoothly brought back to full volume when the commentary / description track is silent. The visitor can switch between audio tracks on the fly, without affecting the video playback. Pausing the video playback also pauses the commentary track, which then remains in sync when playback resumes.
</p><p><br />
@@ -473,10 +422,6 @@
<p>In discussions about this use case, some people in the group expressed a wish that this use case illustrate a need for the audio processing API to work well with the HTML5 <a href="http://dev.w3.org/html5/spec/media-elements.html#mediacontroller" title="http://dev.w3.org/html5/spec/media-elements.html#mediacontroller">MediaController</a> interface. As this is an implementation question, this requirement has been kept out of the use case text itself, but the need to work with the HTML5 interface is duly noted.
</p><p>A <a href="http://people.mozilla.org/~roc/stream-demos/video-with-extra-track-and-effect.html" title="http://people.mozilla.org/~roc/stream-demos/video-with-extra-track-and-effect.html">demo of this particular use case</a> using the MediaStream processing API is available.
</p>
- <h4>UC15 — Priority </h4>
- <p><i>Priority: <b>Low</b></i>
- </p><p>The Use case has been created with a Low priority as a default. To be discussed.
- </p>
</section>
@@ -486,7 +431,7 @@
<h2>Requirements </h2>
<section>
- <h3>Sources of audio </h3>
+ <h3>Sources of audio</h3>
<p>The Audio Processing API can operate on a number of sources of audio: </p>
@@ -656,14 +601,14 @@
<th style="width: 35em">Requirement Family</th>
<th style="width: 55em">Requirement</th>
<th style="width: 20em">Requirement Priority</th>
- <th>UC 1: Video Chat</th>
- <th>UC 2: HTML5 game with audio effects, music</th>
- <th>UC 3: Online music production tool</th>
- <th>UC 4: Online radio broadcast</th>
- <th>UC 5: writing music on the web</th>
- <th>UC 6: wavetable synthesis of a virtual music instrument</th>
- <th>UC 7: Audio / Music Visualization</th>
- <th>UC 8: UI/DOM Sounds</th>
+ <th>Video Chat</th>
+ <th>HTML5 game with audio effects, music</th>
+ <th>Online music production tool</th>
+ <th>Online radio broadcast</th>
+ <th>writing music on the web</th>
+ <th>wavetable synthesis of a virtual music instrument</th>
+ <th>Audio / Music Visualization</th>
+ <th>UI/DOM Sounds</th>
<th>UC-9 : Language learning</th>
<th> UC-10 : Podcast on a flight</th>
<th> UC-11: DJ music at 125 BPM</th>