230 likes | 340 Vues
This presentation explores innovative solutions to improve user experience in Access Grids (AGs), specifically targeting the challenges of identifying current speakers and mitigating background noise. The proposed prototypes include a positional audio system that leverages window positions to determine audio location in a stereo field, and window highlighting that visually marks the active speaker's window to minimize confusion. The implementation of these features is discussed, considering their integration with existing systems like VIC and RAT, alongside potential challenges to maintain a clutter-free interface for users.
E N D
Positional Audio and Window Highlighting for the Access Grid Robert Putnam (putnam@bu.edu) Boston University Scientific Computing and Visualization
Agenda • The problem • Prototype positional audio • Prototype window highlighting • Distribution/installation • Discussion Boston University Scientific Computing and Visualization Group
Who's talking now? • In some AG contexts, it is not always clear which video window contains the current speaker. The problem is exacerbated by: • Multiple, concurrent speakers • Users unfamiliar with the AG • Users unfamiliar with each other • Remedy: look for familiar face or moving lips. Boston University Scientific Computing and Visualization Group
What’s that noise? • In some AG contexts, it is not always clear who is transmitting echo or noise. • Remedies: • Broadcast appeal • Operator mutes RAT streams one at a time until offender is found. Boston University Scientific Computing and Visualization Group
Solution #1: Positional audio • Use location of site's video window(s) to determine its audio position in stereo field. Boston University Scientific Computing and Visualization Group
Solution #1: Positional audio • Preliminary system design • Components • (Minimally modified) vic and RAT • “Agent” which communicates with vic and RAT • Sequence of events • Operator moves window • Agent gets report of window movement from vic • Agent sends audio panning command to RAT • Need: communications & audio localization layers. vic agent ? RAT ? ? Boston University Scientific Computing and Visualization Group
Positional audio • RAT has built-in support for “3D audio”* • RAT’s localization methods: • Interaural Intensity Difference (IID) • Difference in sound intensity between near and far ear. • Interaural Time Difference (ITD) • Difference in time of arrival between near and far ear • Head Related Transfer Function (HRTF) • 3D-location-specific filtering effect of ears, head, and torso. • *Actually “1D,” since there’s only a single degree of freedom. Boston University Scientific Computing and Visualization Group
Positional audio • Revised system design: • What about communications? Next slide… vic agent ? RAT 3D audio ? Boston University Scientific Computing and Visualization Group
Message Bus • RAT’s control, user interface and engine already communicate via the Message Bus (“mbus*”): • So… rat-ui rat-engine mbus rat-control *see www.mbus.org Boston University Scientific Computing and Visualization Group
Positional audio • Revised system design: • Next: what mbus message is used to enable 3D audio? vic agent RAT 3D audio mbus mbus Boston University Scientific Computing and Visualization Group
3D audio mbus message • 3D audio mode is enabled for a given RAT source via an audio.3d.user.settings message: audio.3d.user.settings rat-ui rat-engine tcl mbus Boston University Scientific Computing and Visualization Group *see www.mbus.org
Talking to RAT • So, agent sends audio.3d.user.settings message to rat-engine: • ssrc = “Synchronization source” = RTCP stream id • azimuth = horizontal angular distance of listener from sound source. (90 = panned left; -90 = panned right; 0 = panned center) audio.3d.user.settings ssrc azimuth vic ? agent rat-engine mbus mbus Boston University Scientific Computing and Visualization Group
Listening to vic • Next, create new mbus message • window.xy • Normalized xpos (0 – 1.0) • Normalized ypos (0 – 1.0) • Name of video window (e.g., “LANL(Video)”) • Whenever video window is moved, resized, or renamed, send window.xy message to agent. vic window.xy agent audio.3d.user.settings rat-engine mbus mbus Boston University Scientific Computing and Visualization Group
Associating vic and RAT streams • Agent responsible for determining which video windows correspond to which RAT streams (ssrc’s): • As of AGtk 2.4, it is assumed that vic and RAT streams have the same name • I.e., RAT “LANL” corresponds to vic “LANL(Video)” vic window.xy agent rtp.source.name rat-engine “LANL(Video)” 04b6910a “LANL” Boston University Scientific Computing and Visualization Group
Solution #2: Window highlighting • System shown at May 2003 AG retreat • Feature request: visual indication of current speaker • But, danger of distraction/fatigue (i.e. too much visual clutter or “flashing”). Boston University Scientific Computing and Visualization Group
Window highlighting • Change border color of site’s video windows when its audio rises above a threshold. • Two new mbus messages: • RAT: rat.source.amplitude(source_id amplitude) • Report each stream’s peak amplitude 2-3X / second • vic: highlight.window(window_id on_off) window.xy audio.3d.user.settings vic agent rat-engine highlight.window rat.source.amplitude Boston University Scientific Computing and Visualization Group
Window highlighting Boston University Scientific Computing and Visualization Group
Window highlighting • Window stays highlighted during brief pauses in audio unless another site begins transmitting. • Each site’s local video windows also highlight when RAT transmitting (“On Air” alert). • Window border highlight color and width is configurable in AG service. Boston University Scientific Computing and Visualization Group
Setting up the system • Install stereo speakers/amplifiers • Install stereo wiring to and from echo canceller (aka “the Gentner”): RAT pc line out l r Gentner amplifier l r l r l r Boston University Scientific Computing and Visualization Group
Setting up the system • Create left+right echo cancellation reference: Boston University Scientific Computing and Visualization Group
Setting up the system • Remove or disable original video consumer and audio services and add two new ones: • HighlightVideoConsumerService.zip • PositionalAudioService.zip Boston University Scientific Computing and Visualization Group
Setting up the system • Configure HighlightVideoConsumerService: Venue Client Windows Desktop Boston University Scientific Computing and Visualization Group
What next? • Ready for beta testers! Get it here: • http://scv.bu.edu/~putnam/ag-audio/services-2.4.zip • Zip file contains services for Windows / Linux, PIG / multi-computer configurations. • Request features / report bugs here: • putnam@bu.edu Boston University Scientific Computing and Visualization Group