Voice Applications in Cedar
November 1986


Voice Applications in Cedar



Polle T. Zellweger



with
Daniel C. Swinehart
Douglas B. Terry
Stephen Ades*


Computer Science Laboratory
Xerox Palo Alto Research Center



*Cambridge University
[Artwork node; type 'ArtworkInterpress on' to command tool]
[Artwork node; type 'ArtworkInterpress on' to command tool]
 Insert caption here 
Talk Overview
· Telephone management & uses of recorded voice (videotape)
· Voice annotation
· Voice editing
· Scripted documents
· Future directions
(show videotape here)
Voice Annotation
· Uses
manager dictates to secretary
collaboration tool for joint authoring
"marginal notes" to oneself
· Desired behavior
arbitrary length
lightweight user interface
visual indication, but does not alter layout
· Add voice annotations to Tioga documents
=> multi-media documents
include text, typography, graphics, voice
used throughout Cedar system
documents, programs, electronic mail, display
· Implementation
voice stored on Voice File Server
recording/playing voice sets up conversation between Etherphone and Voice File Server
Voice Annotation Example
[Artwork node; type 'ArtworkInterpress on' to command tool]
To play back:  To record:
select character(s)  select character
button PlayVoice  button AddVoice
   speak
   button STOP
Voice Editing
· Recording studio model: effort pays off
many fine-grain edits
=> voice energy graphs
· Office workstation model: ease of use
few coarse-grain edits
simple cut & paste editing
record new phrases
=> sound-and-silence profiles
Contextual Aids for Voice Editing
· Playback cue
· Temporary markers
· Permanent textual annotations
· Color editing history
Voice Editing Implementation
· Recorded voice stored on Voice File Server
encrypted, immutable
voice shared and manipulated by reference
voice data only copied on playback
· Editing creates voice descriptors
sequence of voice intervals <tune#, start, length>
stored on Voice Control Server
· Editing builds up complex voice descriptors
premise: number of edits is small
Scripted Documents
· script
directed path through document(s)
arbitrary order
can include actions, timing at each location
· sample actions
play back voice annotation
send text to text-to-speech server
animate picture
· formal uses
audio-visual presentations, demonstrations
electronic books
program documentation
· informal uses
communication from reviewers to an author
organizing technique for writers
planning editing sessions
Sample Script
script name: Simple Introduction
entry: 1
filename: ScriptUserManual.tioga
location: 10..50
action: speak("Hello, ", UserCredentials.Get[].name)
time: 10 sec
entry: 2
filename: ScriptUserManual.tioga
location: 235..240
action: play(annotations)
time: *
entry: 3
filename: TiogaDoc.tioga
location: 1172..1210
action: play(RowRowRowYourBoat)
time: 15 sec
entry: 4
filename: ScriptUserManual.tioga
location: 10..21
action: PreView Picture.interpress
time: *
Sample Script: entry #1
[Artwork node; type 'ArtworkInterpress on' to command tool]
script name: Introduction to Gargoyle
entry: 1
filename: GargoyleTutorial.tioga
location: 15..121
action: speak("Hello, ", UserCredentials.Get[].name, ". Get ready to blast off.")
time: 15 sec
Sample Script: entry #2
[Artwork node; type 'ArtworkInterpress on' to command tool]
entry: 2
filename: GargoyleTutorial.tioga
location: 624..683
action: bringover -p -m Gargoyle.df; Gargoyle
time: *
Sample Script: entry #3
[Artwork node; type 'ArtworkInterpress on' to command tool]
entry: 3
filename: GargoyleDoc.tioga
location: 1..17
action: play(annotations)1
time: 10 sec
1 "GargoyleDoc.tioga is a valuable reference manual. It includes some additional material not covered in the tutorial."
Sample Script: entry #4
[Artwork node; type 'ArtworkInterpress on' to command tool]
entry: 4
filename: GargoyleTutorial.tioga
location: 55417..55537
action: PreView RomanLetterB.interpress
time: *
Scriptwriting Tool
· tool for creating and editing sequential scripts
scripts stored in central database
Current Status
· tool for creating and editing sequential scripts
scripts stored in central database
· internal scripts
modify document (store unique id with chars)
editing document does not disturb script
public script of public document(s)
private script of private document(s)
· external scripts
document not modified (use char positions)
refers to unique version of document
private script of public document(s)
Better Scripts
· Improved visualization for script writers
show script sequencing better
· Conditional and interactive scripts
single script tailors to different users
user can influence script direction
· Improved layout control
control highlighting, window placement
capture mouse actions
· Compare scripts with other complex document structures
hypermedia
Future Voice Directions
· Call filtering
· Integrate conversation log with electronic mail
· Novel interactive voice connections
"background" calls
broadcast talks, meetings
conference calls with side-conversations
· Additional media
still & real-time video
· Voice architecture
user programmable
supports interoperability
extensible