CSCW  Project Proposal : Integrated MASH User Interface

 Cynthia Romer
10/28/97

 Problem

Currently, remote participants in collaborative MBONE sessions, such as the CSCW class, must start up individual instances of the MASH tools (vic, vat, mb).  The attention required to manage each instance of each tool individually is likely to distract the user from the session content.  The existence of multiple disparate interfaces may also discourage the user from exploring the available features or configuring individual preferences.

In order to overcome some of the difficulties associated with managing multiple tools and to enable a remote participant to more easily follow the activity within a session, I would like to develop a single integrated user interface to the MASH tools with UI elements tailored for the collaborative nature of the classroom setting.  As a consolidated interface, it can be tuned for this specific application, making it a more effective instrument for navigating a multimedia session(s).

Analysis & Suggested Design

Here are some of the challenges a remote participant may face while managing multiple interfaces to the session(s), along with some possible avenues of improvement to the user interface that may ease these challenges.  The new user interface design should serve to demonstrate the flexibility and reusability of the MASH toolkit components for constructing application-specific multi-media networking programs.
 
Challenge / Current Structure
Potential Solution / Possible Design
1
Too many windows to control, especially if user is participating in multiple sessions simultaneously. 
    Example: trying to follow the MASH group session's mediaboard while trying to participate in the CSCW class. 
Create an association between the tools for a given session, so it becomes easy to switch between the entire set of tools for each session, while also maintaining the ability to view tools from different sessions concurrently. 

Consolidate the options/preferences for all the tools in a central or consistent location.

2
Given that audio quality has highest impact on perceived quality of a session, how to schedule the packets within a single process? 
    Example: integrating audio and video in a single process might cause expensive video decoding operations to delay time-critical audio events.
Currently, the "nice" utility is used to schedule the audio process over the video and mb processes, although this only works in Unix, not in Windows. 

Look into how CMT handles this.  (Ask K. Patel)

3
Screen real-estate absorbed quickly by session tools. 
    Example: having individual windows devoted to sdr, vat, mb for session 1, mb for session 2, multiple vic sources (thumbnails and larger versions), a text editor for taking notes, etc.
Hide elements of the UI that are not critical to the interaction and/or are rarely used. Tile the active windows so as to maximize the use of the available screen real-estate. 
    Example 1: once you select a session of interest and start up the tools, the rsdr and session-info windows shouldn't be left to consume significant portions of the screen.  (Although, as mentioned in #1, it would be desirable to be able to go to a single location to find these options, rather than searching for their distributed iconified windows.) 

    Example 2: for video streams for which the user has opened a larger viewing window, dismissing the associated thumbnail sized image from the main vic window may free up valuable space with little loss in session content. 

    Example 3: eliminate the unused space below the source list in the vat window. 

    Example 4: dismiss images of video streams that have expired.

4
Would like to easily follow and manage the session.  Nice to be aware of subtle changes peripherally. 
    Example: don't want to have to manually scroll down the mediaboard when the text extends below the viewable area of my mb window.
Since users won't spend the time to learn how to use more complex settings or features during a real-time session, it'd be nice to default to some automatic mechanisms for following the activity within a session (example: currently can set mb to "follow active page"). 

Default to automatically raising the windows with activity to the top of the desktop.  Perhaps resize video stream based on this ranking.

5
Vic switching modes are limited in power.  Allow more elaborate settings with respect to which vics are cycled through. 
    Example: could start up 2 vics... 
    one which cycles through camera-view of Colab, 
    other which cycles through the individual remote participants
Offer voice-switched vics that return to cycling through a given list of vics after timeout. 
6
Assessing who are the participants of a session and what are they doing... listening, talking, watching, reading, writing? 
    Example: would like to know that Angie is reading the MASH Group session's mediaboard before I use it to direct a question to her.
Consolidate the source listings for each tool.  Perhaps associate icons with each source to indicate their capabilities or actions. 
    Example 1: give a source "ears" if s/he is listening on vat, a "mouth" if s/he has audio transmission capabilities,  a small cartoon-like bubble while s/he is speaking (by the way, it'd be really cool if we could someday incorporate some voice-recognition software to offer "closed-captioning" in the bubbles), a "capped pen" if s/he is running mb, an "uncapped or moving pen" is s/he is writing on mb (this may become less effective as number of active users grows). 

    Example 2: use a colored camera icon to indicate that the source is operating a particular camera control. 

Continuously reprioritize participant-listings based on how recent and/or how frequent their contributions are.  Offer the option of designating a maximum area to be consumed by the source-listings, and when the number of sources exceeds this area, those that are least active will not appear (although a method of access to this information will still be readily available, maybe in form of a pull-down menu.) 

When a remote-participant without a camera speaks up, associate a still picture from a user's preference, as a replacement for their vic. 

Use a legend to assosciate text color/font with participant or show author's name as cursor scans over a piece of text.  Since run out of colors quickly, choose drastically different default colors for most frequent mb contributors (based on history). 

Highlight or blink the border around the vic of active video source.

7
Use the size or visibility of a particular tool for a particular session to gauge the interest in it.  i.e. Relax the demands on the quality of streams that aren't the focus of attention, particularly if the tools for relaying them to the participant are buried under other tools. Use a participant's actions on the user interface to gather information to offer to Elan's tools.
8
Given that mb input can be placed in any part of active page (i.e. info is not necessarily added left to right, top to bottom), how can we prevent mediaboard actions from going unnoticed? Include some mechanism for author of text to "say it louder".   Perhaps, let author click on it to make it start blinking.  Let a respondent click on it again to answer and stop it from blinking.
9
Assembling the "big picture" of a given session. Offer thumbnail view of all the nonempty mediaboard pages.

 Experiment:

Grading Contract

Get the components of the MASH toolkit up and running in a single process/window.  (B-)
Plus incorporate solutions to issues 1, 3, and 4 (B+)
Plus incorporate solutions to one of the remaining issues (A-)
Plus incorporate solutions to another of the remaining issues (A)
Plus incoporate solutions to any of the remaining 4 issues and run experiment (A+)