throbber
Voice Communication Across the Internet:
`A Network Voice Terminal
`
`H. Schulsrinne
`
`C5 Technical Report 92-50
`July 1992
`
`RPX Exhibit 1016
`
`RPX Exhibit 1016
`RPX v. DAE
`
`RPX V. DAE
`
`

`
`Voice Communication Across the Internet:
`
`A Network Voice Terminal*
`
`Henning Schnlzrinne
`Department of Electrical and Computer Engineering
`Department of Computer Science
`University of Massachusetts
`Amherst, MA 01003
`hgschulzflcs sumass . odu
`
`July 29, 1992
`
`Abstract
`
`Voice conferencing has attracted interest as a useful and viable first real-time application on
`the Internet. This report describes NEVOT a network voice terminal meant to support multiple
`concurrent both two-party and multi-party conferences on top of a variety of transport protocols
`and using audio encodings offering from vocoder to multi-channel CD quality. As it is to be
`used as an experimental tool, it offers extensive configuration, trace and statistics options. The
`design is kept modular so that additional audio encodings, transport and real-time protocols
`as well as user interfaces can be added readily.
`In the first part, the report describes the X-
`based graphical user interface, the configuration and operation. The second part describes the
`individual components of NEvo'r and compares alternate implementations. An appendix covers
`the installation of NEVOT.
`
`1
`
`Introduction
`
`3
`teleconferencing [1] and simple one-to-one "videote1ephones" [2, 3] are applications that have at-
`tracted a large amount of implementation and research interest.
`Transmitting voice and video across a pacl(et—switched network offers a number of advantages
`other the circuit-switched approach. First, we obtain all the well-known benefits of service inte-
`gration, particularly important in a multi-media setting. Secondly, we may be able to achieve a
`higher bandwidth utilization since voice and video do not always use their peak bandwidth (due to
`silence periods and variable rate coding). Finally, because interleaving several associations tends to
`be easier in a packet-switched network, control (signaling, to use the telephony term) can be more
`sophisticated’.
`Research in transmitting voice across a packet network dates back to the early AR.PAnet days.
`Cohen [4] refers to cross-continental packet voice experiments in 1974. According to [5], low-bit
`.Z__________.__.___:_.._
`‘This work is supported in part by the Office of Naval Research under contract N80014:-90-J-1293. the Defense
`Advanced Research Projects Agency under contract NAG2—578 and a National Science Foundation equipment grant,
`CERDCR 3500332.
`‘Even narrowband ISDN uses the packet-switched D channel for signaling.
`
`

`
`rate voice conferences very carried out in 1976. The early '80s saw experiments of transmitting
`low-bitrate voice across mobile radio [6, 7] and satellite [8] packet channels. The first Internet
`packet voice protocol was specified formally in 1977 [9], and a packet video standard followed in
`1981 [10]. The CCITT standard G.PVNP [11] was published in 1989. Packet audio/video should
`be set apart from the approach to voice/data integration that provides fixed-bandwidth circuits on
`multiple access networks [12, 13].
`Interest in packet audio has increased recently as more and more workstations now come equip-
`ped with built-in toll-quality (Sun SPARCstations, DEC workstations) or CD-quality (NeXt) audio
`hardware support. There exist a fair number of simple programs that utilize the SPARCstation
`audiohardware to communicate between two workstation on a local net, for example vtalk (Miran
`Cuperman, OKI) or PhoneTalk (Patrilc Nises and Joakim Wettby, Royal Institute of Technology,
`Stockholm). Programs designed for multiple-party connections across wide-area networks include
`VT [1] and vat (Van Jacobsen and Steve McCan.ne, LBL). A number of commercial products use
`medium-bitrate packet voice to more efiectively utilize leased private lines, extending the concept
`of the traditional data-only multiplexer [14]. System implementations of packet voice terminals are
`described in [5, 18, 19]- Packet radio experiments are featured in [20]. Surveys on packet voice
`performance are presented in [18].
`Numerous other voice/data integration schemes have been studied, usually combining a circuit-
`switched path for voice and a packet-switched path for data, possibly with bandwidth traded
`between the two. Examples include [21]. Economic studies comparing alternative network strategies
`were performed by Gitman and Frank [22].
`
`2 The Network Voice Terminal (NEVlOT) -— User’s Guide
`
`NEVOT (“NEtwork VOice Terminal”) is a tool to support audio conferences across local and wide
`area networks, including the Internet. It supports multiple simultaneous conferences and a variety
`of standard and experimental network protocols, including ‘ST-II [23], IP multicast [24, 25, 26] [27,
`p. 2811] and TCP. It is meant to serve several purposes:
`
`a as a demonstration tool for Internet audio conferences,
`
`0 as a measurement tool to investigate traflic patterns and losses in packet voice applications
`across wide-area networks,
`
`0 as a demonstrationimplementation ofreal-time services in a distinctly non—real-time operating
`system (Unix)
`
`0 as a trafiic source to validate and evaluate resource allocation protocols and algorithms
`u as a platform for implementing conference control mechanisms
`
`Extensive tracing and parameterization facilities as well as a modular architecture support experi-
`ments in packet voice. The major features are summarized below.
`
`

`
`2.1 Features of Version 0.95
`
`Features anticipated for versions released shortly are also listed, but so indicated. Due to operating
`system or hardware support, a few features are platform-specific. A symbol is used to mark the
`corresponding platform.
`
`0 platforms:
`
`— Sun SPAB.Cstationll
`
`— Silicon Graphics 4D/30 and 4D/35 (Iud.igo)§
`- Personal DECstationl[in preparation]
`
`0 audio protocols:
`
`- NVP-H (network voice protocol) as used by vat (Lawrence Berkeley Laboratory) and
`vt (ISI)
`
`— vat audio packet format
`
`0 transport protocols:
`
`— unicast UDP
`
`—- multicast UDP
`
`- TCP
`
`— sr-nil
`
`0 operation as gateway or end system
`
`a compatible with rat session protocol
`
`a user interfaces:
`
`- XView (OpenLook)-
`— Motif GUI
`
`— curses (for terminals with cursor positioning)
`— dumb terminal
`
`a control:
`
`— initialization file
`
`-— command line argumts
`
`— interactive
`
`0 several independent concurrent conferces, each with different encoding and compression
`u DES-based voice encryption
`
`0 current audio encodings supported:
`
`- 16 bit linear encoding, with all hardware-supported sample ratesg
`— 64 lrb/s G.711 p-law PCM
`
`

`
`— 32 lib/s G.721 ADPCI‘./Ill
`
`— 32 kb/s Intel/DVI ADPCM
`
`— 24 kb/s G123 ADPCMll
`
`— 4.8 kb/5 LPC (1inear—predictive coding) with setable vocoder interval
`
`0 dynamic change in audio encoding, with each site having different encodings (but the same
`sample rate)
`
`0 one or multiple audio channels (i.e., mono or stereo)
`
`a playback and recording of audio files (.au and AIFF/AIFC formats], with encoding translation
`
`0 extensive statistics and tracing facilities
`
`0 arbitrary voice packet length, which may diifer for each site
`
`a lost packet substitution
`
`0 setable audio buffer occupancy
`
`0 configurable adjustment mechanisms for playout delay, VU meter, silence detector and auto-
`matic gain control
`
`: redefinable session identifier string with variable substitution
`
`Most commonly, NEVOT interacts with the user through the Open LookTM or MotifTM graphical
`user interface on X11-capable workstations. Another version with identical functionality, but a more
`limited user interface, requires only cursor-addressable ASCII terminals supported by the curses
`library. A fourth version is meant mostly for remote use and uses only terse sequential terminal
`output to stdio. The command interface used to control the text versions is also available for the
`XView and Motif versions.
`
`
`
`Figure 1: The NEVOT icon
`
`NEVOT may utilize the network services of unicast UDP, multicast UDP, TCP and ST-H [28, 23].
`The source address option allows operation behind a UDP-level packet reflector, e.g., the simple
`version written by the author. The packet reflector is used to allow a site running kernels without
`multicast support to participate in rnulticast audio conferences. The packet reflector is executed
`on a multicast-capable site, declares itself part of the multicast group and simply forwards every
`packet arriving from the multicast group on a unicast UDP socket. The address where the voice
`packet originated from (i.e., the source address) is prepended by the packet reflector as the first four
`user data bytes of the packet. This is necessary for proper operation of the voice terminal, since
`the IP source address of the UDP packet reaching the ‘final destination contains the IP address of
`the packet reflector rather than that of the speaker, while the actual source address is needed to
`distinguish several audio streams coming from the same reflector.
`
`

`
`NEVOT can maintain several concurrent conferences. The user can participate in all conferences
`simultaneously, but the conferences remain separate for the other participants. A conference with
`participation from remote sites could be set-up using the following scenario’. Conference audio
`from the meeting room is distributed via multicast to all sites, who are only listening to that
`conference. Each remote site also maintains a second “call-in” conference which it uses to pose
`questions through a moderator at the conference location. Before a remote participant raises a
`question, he or she listens to the "call-in” channel to reduce conflicts.
`NEVOT can act as an application-level gateway between different conferences. Each conference
`can employ different audio encodings and transport protocols. The audio from all sites within a
`stream is mixed and distributed to streams, except the originating one.3
`NEVOT can play and record sound files in AIFF/AJFC and Sun/DEC .au format. Recording
`may be useful to document speech quality or to take notes of important announcements. The
`usefulness is somewhat limited by the disk space requirement of480,000 bytes per minute. Optional
`voice compression independent of the packet audio compression is planned. It is also planned to
`extend the drag-and-drop mechanism of the windowing system to playing sound files.
`The distribution and reception of audio can be controlled at different levels. Check boxes at
`the top of the base window mute the microphone or speaker, effective for all conferences. Similarly,
`check boxes within each conference control area control talking or listening to the participants of
`that conference only. Finally, the site control area has a button that toggles listening to that site.
`If a site is talking, a one eighth note symbol appears in the listen button, highlighting the current
`speaker. A muted site is indicated by a crossed-out listen button, as shown in the figure. Note
`that the muting can also be controlled by keyboard control (see section 2.5); in particular, the
`microphone mute is toggled by the space bar.
`The long propagation and queueing delays in packet networks combined with the use of loud-
`speakers and omnidirectional microphones may create severe acoustical echo problems. The echo
`suppressor check box enables a simple echo suppression mechanism that mutes the speaker when
`sound is received through the local microphone. While reducing echo effects, echo suppression may
`also cause speech break-ups during local noise peaks.
`
`2.2 Setting up a Conference
`
`To set up a new conference (stream), press the join button. The panel shown in Fig. 3 requests the
`necessary information for the conference: The host field contains a list of hosts and their source
`routing, if necessary, as described in the next paragraph.
`Instead of specifying hosts directly,
`Mile retrieves the information from a text file. Nesting is currently not supported. Hosts can be
`specified in either dotted decimal notation or as a name. Any name that can be resolved through
`the network information services (NIS, aka YP), the resolver (bind), the Ietc!hosts file or other
`locally available means is permissible. Multicast addresses can be added to /etc/hosts file or
`its YP distributed version. Multicast addresses are automatically recognized and thus require no
`further identification. Multicast addresses are currently only supported using UDP transport. To
`wait for connections initiated by other sites, leave the field blank.
`The host field contains a. white-space separated list structured by the (case—sensitive) keywords
`TARGET, STB.IC'I_5‘I' (strict ST source route), LODSE_ST (loose ST source route), S‘I'ltIC'1‘.IP (strict
`source route with IP encapsulation), LDDSEJP (loose source route with IP encapsulation) and PORT.
` m_m
`“This is actually being planned for the Internet engineering task force (IETF) working group sessions.
`"It is planned to allow gateway operation even on machines without audio support so that a superminicomputer
`could serve as a transcoder for high-quality low-bitrate audio conferences, once a mechanism for predictable task
`scheduling on 20 ms intervals can be determined.
`
`

`
`
`
`a i
`0
`
`III Talk
`
`Cl Echosupp.
`52: um...
`
`Nevot: Network Voice Terminal
`
` 3
`
`
`
`
`I:1_ Talk E Listen
`
`El Lixia (PARC)
`Cl yhc@ happyuconcert net
`Usteve Pink. SICS Sweden
`E Ernst Biersack
`13 Ron Broers ma (NOSC, San Diego)
`Cl Michael S. Shappe (Cornell)
`
`
`
`
`
`
`
`III Aydiru Edguer (cwnu)
`Cl Paul Traina (pst@-cisco.com)
`D kph@snace.cisco.com
`[3 Ron Fre derick (PP. RC)
`Dion Crowcroftte UC London
`
`
`
`
`
`
`
`,_ vI1.94(c) 1332 Henning SchuIzrinne,Uni1-ersity of Massachusetts
`
`Figure 2: NEVOT display when connected other sites
`
`TARGET is followed by a single host name, while the routing options are followed by lists of zero
`or more hosts. The current port number, valid until the next occurrence of the PORT specifier, is
`given by a positive integer following PORT. Currently, only the ST-II API understands about source
`routes; other transport protocols simple ignore these specifications. As an example, consider:
`
`TARGET desperado . ecs . unass . edu
`LOBSE__ST spar.-c1 .ecs . umass . edu
`PORT 3458
`
`TARGET despot . ecs . umass . edu
`
`The encryption key is used when encryption mode setting is chosen‘.
`The conference identifier distinguishes several conferences using the same protocol and port.
`The fields labeled audio send port and audio receive port are filled in with the ports for
`sending and receiving audio data. In normal operation, both ports will have the same value, agreed
`upon by all conference participants. However, transmission quality over a link can be tested by
`specifying a send port number of 7, the echo port. The remote host will simply reverse sender and
`receiver address and return the audio packet. Currently, echo facilities are not available for ST-ll.
`The session port is used to send and receive session control messages. The ttl field specifies
`the time-to—]ive of multicast packets. The value currently is interpreted only by multicast UDP
`conferences. The choice menu beneath the time-to-live field determines the protocol to be used,
`namely UDP (or multicast UDP), TC]? or ST-Ii.
`The audio encoding is set by the next choice menu. The supported encodings and their rates are
`listed in Table 1. Note that incoming audio data from different sites within the same conference can
`use different encodings, all outgoing voice data for a. conference, however, uses the same encoding.
`‘The key is limited to 8 characters, where only the least significant 7 bits of each character are used. Control
`characters can be specified using the customary C language notation, i.e., \n for newline, \t for horizontal tab, etc.,
`or \ooo as a three-digit octal number.
`
`

`
`Figure 3: The conference set-up panel
`
`
`
`

`
`The third column in the table indicates the increment in the packetization interval so that all
`packets have the same integer number of bytes. The LPC codec can be configured to compute the
`filter coefiicients over different intervals, given by the vocoder parameter. Also, if the vocoder
`period is a submultiple of the packetization interval, several predictor sets are packed into a single
`network packet, arnortizing the header overhead over a larger number of audio bytes. The vet
`LP C1 codec is equivalent to setting the vocoder period and pacltetization interval to 22.5 ms, while
`the LPC4 codec uses a packetization interval of 90 ms and a vocoder interval of 22.5 ms. If the
`vocoder intervals differ between sender and receiver, speech will appear to be pitch-shifted and
`slowed down or speeded up. Vocoder intervals above 25 ms degrade voice performance below the
`already barely acceptable communication quality achieved by LPC. The LPC codec allows to run
`packet voice over a 9.6 kbps SLIP (modem) connection.
`
`name
`(3.711
`G.721
`DVI
`G323
`LPC
`
`kb/s
`64
`32
`32
`24
`4.8
`
`packetization increment (ms)
`voice coding method
`0.125
`8-bit pt-law PCM
`4-bit CCITT G.721 ADPCM 0.25
`4-bit Intel/DVI ADPCM
`0.25
`3-bit CCITT G123 ADPCM 0.33333
`LPC codec
`vocoder
`
`Table 1: Voice encoding
`
`The check boxes determine the characteristics of the conference. Checking oil‘ the encrypt box
`enables DES voice data encryption, with the key entered above. The listen only box disables the
`automatic creation of reciprocal ST-II connections.
`If the identify when listening box is checked,
`NEvo'I' sends out periodic messages containing the user and host name in a format compatible
`with vat even if we have muted our site. The feature may be useful to turn off that feature for
`large conferences with mostly passive audiences where it is undesirable to flood the network and
`the displays of participants with the names of all listeners. Conversely, the show listeners option
`indicates that sites that have not sent audio data are to be displayed. Ifnot checked, only those sites
`that have talked recently are shown. The source address field was discussed earlier and is only used
`in conjunction with the packet refiector. Reverse name looknp, i.e., the mapping from Internet
`addresses to host names, can be enabled by checking reverse name Iookup. Since name lookup
`may take an indeterminate amount of time, during which NEVOT is otherwise blocked and since
`most sites transmit site identification strings, the use of this option is generally not recommended.
`Checking the exclusive option ensures that if talking for this conference is enabled, talking to all
`other conferences is automatically disabled. This is useful for side chats, making it a bit less likely
`that what was considered a confidential remark gets distributed to the conference at large. — The
`join button establishes the conference.
`To leave a conference, press the leave button in the conference control panel. To add a new site
`to the conference, pressing the add button adds popup panel, where the site name can be filled in.
`Sites that send audio or control information are automatically added. Adding sites is unnecessary
`for rnulticast UDP conferences and thus the button is inactive and shown dimmed. The properties
`of an existing conference can he modified by modifying the conference set—up pop up, which is
`invoked by pressing the mouse menu button‘ while the pointer is within the conference control
`panel.
`
`‘typically, the right-most button
`
`

`
`Each conference site has its own control panel. On the right, it displays the site identifier, which
`may be an Internet number (if the Internet number could not be translated into a host name), a
`host name or, if the other site is sending its identifier, the rote user name and host name. Note
`that it is very easy to spoof this identifier, so it should not be relied upon for authentication.
`If there are a large number of sites in a conference, the site panels will overlap. The number
`of rows displayed per conference is given by the max_height configuration parameter. During a
`conference, you can resist: the NEVOT window to allow more or less space for each site entry.
`Clicking with the right (menu) mouse button on a site panel brings up the status display for
`that site (Fig. 4). It shows site statistics and features a button to drop the site and a check mark
`that enables talking to this site. Talking is by default enabled for multicast UDP, but must be
`enabled explicitly for ST-H and unicast UDP, establishing a connection in the outgoing direction.
`The status pop-up panel is dismissed by selecting the “d.ismiss" button or unpegging the pushpin.
`
`o-{F0
`
`Henning SchuIzrinne(i_ldemo8
`
`Internet number: 128.119.40.212
`
`Gateway: 0.0.0.0
`
`Audio encoding: G.?‘l1
`
`Sample rate: 8000 H2
`
`Channels:
`1
`Received:'10.1X10.1
`
`Pia-gout delay:
`
`1
`
`ms
`
`Lat-e=s:_.:::.:> 030*
`
`Lost=.<;.:.::> 030*
`
`Duplicates: £ 050%
`
`57:2: 0*”
`
`Figure 4: The site status pop-up
`
`A single site can be dropped from the conference by selecting the Drop bntton in the site
`status panel. Sites that have been inactive for long periods of time are dropped automatically (see
`description of time outs in the properties menu).
`
`9
`
`

`
`Clicking on a site with the middle mouse button provides a. simplified way to start a second
`conference. A join panel as in Fig. 3 is displayed, with the current conference characteristics
`such as encoding, port numbers, etc. The conference identifier is incremented by one and the
`exclusive option is checked. Naturally, any of the parameters can be changed just as when creating
`a conference using the Join button. However, either the port number, protocol or conference
`identifier must diifer from all other conferences.
`
`2.3 _ Recording, Playback and Volume Adjustment
`
`NBVOT can play back audio files. The play button invokes a file pop-up menu (see Fig. 55). Pressing
`play within the pop-up starts the playback. For standard Sun audio files (extension .au or .snd),
`the description is shown in the base window footer. The normal conference and site talk controls
`also apply while playing audio files. Naturally, the microphone is disabled during playback, but
`reception is unafiected. Putting a check mark in the looping check box plays the same sound file
`again and again. Vllhile playing, the play button becomes a stop play button. Selecting the stop
`or pause cancels or pauses playback. Playing resumes when selecting the resume button.
`‘While
`playing sound, the descriptive header information and length is displayed in the footer of the base
`window.
`
`Figure 5: The play file pop-up menu
`
`Recording audio works in a similar fashion. In addition to directory and file name, the descrip-
`‘The second item in the list shows another possibility for this feature.
`
`10
`
`

`
`functionality, in addition to side tone adjustment and switching between speaker and headphone
`jack output.
`
`automatic gain control, VU to the voice volume gauge, SD to the silence detector and DEL to the
`delay adjustment. The abbreviations VE denotes voice energy, ranging from zero to 127. String
`values can be enclosed in quotation marks; strings containing white space must be enclosed in
`quotation marks. Bits within flags are specified by concatenating the listed symbols, separated by
`vertical bars, I. White space is not allovved. A flag is negated by prefixing it with an exclamation
`mark or tilde. Example:
`
`3 mode dell isd
`
`sets the “deI" bit and resets the “sd" bit in the “mode” flag. An example of an initialization file is
`shown below:
`
`s tracs_1ength 5000
`s trace_eveuts !audio_inl!audio,outlitrnnsmitllreceivel!packet_1oas|!ei1encel!AGCl!de1ay_ndj
`s agc_tc 1024
`5 agc_hyst 20
`5 agc_nom 4294967295
`5 agc_interva1 0.5
`s vu_tc 100
`5 vu_hyst 2
`s vu_nom 0
`s vu_:i.ntarvaJ. 0.1
`s sd_tc 0
`s sd_hyst B
`s sd_nom 50
`s sd_intervnl O
`
`s davg_tc 1000
`s davg_hyst 2
`s dnvg_non 4
`s davg_interve1 2.5
`3 dvar_tc 1000
`s dvar_hyst 2
`s dvar_non 4
`a dva:,interval 2.5
`a host "224.2.0.1"
`s st_racv_port 3456
`s st_sand_port 3456
`s st_session_port 345?
`
`11
`
`

`
`51:_t'l'.1 127
`st_proto UDP
`s'l:_con.feranc.e_:i.d O
`
`5t_node !encrypt|!aource_addI!1isten_on1y|id_1iaten_om1ylahow_1i5tenera|Ereaolvellaxclusivo
`voico_coding G.711
`p1ay_dir "/us:/demo/SOUND/sounds"
`p1ay_fi1e (null)
`p1ay_1oop O
`p1ay_gain -1
`rac_gain -1
`mon_gain 0
`p1ay_pnrt jack
`reo_port default
`p1ay_channe1s 1
`rec_channe1s 1
`
`p1ay,5amp1e_rate 8000
`roc_sanp1e_rate B000
`rec,1oaater 22.5
`p1ay_1owate: 22.5
`play_hiIater 90
`rec_h:i.nater 90
`packetization 22.5
`vocoder 22.5
`ao£t_to 1
`ha:d_to 10
`check_interva1 6
`IIII
`repeat_th 40
`echo_th 30
`batore_spurt 40
`aiter_apu:t 100
`si1ence,aub 0
`echo_supp O
`verbosity 2
`
`WMMUNMMMUOMMWMNUUUWMMMMMlkflfiflifllflflfl!Uiflfllflflflfllfil
`
`node !niko_1oop|!a1_1oopI!a£_only|sdI!agc|vu|de1
`user "finlzh"
`protocol vat
`role end_node
`nax_heighx 2
`The properties pop-up menu is invoked by pressing the mouse menu button while in the global
`control panel (i.e., the panel at the top, not associated with a. conference or site).
`The parameters have the following meaning:
`
`Silence, lost packet: Determines what happens if a packet is lost or there is silence (i.e., no packet
`to be played out). NEVOT either repeats the last packet or inserts actual silce. Repeating
`the last packet reducing the push-to-tall: effect where the speaker background noise of the
`speaker is cut off abruptly during silence periods.
`
`Audio before/after tallcspurtz Determines the time (in milliseconds) of “silence” sent before
`and after a tall: spurt, reducing front and end clipping.
`
`Audio low/high water mark: To compensate for non-periodic scheduling, the operating syst
`buffers a number of bytes before playout. This number determines the range of acceptable
`buffering. Too low a value will lead to clicks, particularly if the system is busy. A high value
`incurs additional play out delay.
`
`12
`
`

`
`agc_1-.c
`agc_hys1:
`agc_nom
`agc...'i.n1:e:rval
`davg_1:c
`davgjiyst
`davg_nom
`davg_'i.nterva1
`dvar_tc
`dvar.hys1:
`dvar_nom
`dvar_:i.nterva.'I.
`vu.tc
`v-u.hyst
`vu_nom
`vu..i.nterva.1
`ed_tc
`sruiyst
`ed.nom
`sd.interval
`
`AGC: time constant (ms)
`AGC: hysteresis (VE)
`AGC: set point; desired energy level
`AGC: adjustment interval
`delay average: time constant (ms)
`delay average: hysteresis (VE]
`delay average: variance multiplier
`delay average: adjustment interval
`delay variation: time constant
`delay variation: hysteresis (VE)
`delay variation: variance multiplier
`delay variation: adjustment interval
`VU meter: time constant (ms)
`VU meter: hysteresis (VE)
`VU meter: currently not used
`VU meter: update interval (sec)
`silence detection: time constant (ms)
`silence detection: hysteresis (VE)
`silence detection: max. threshold
`silence detection: update interval for minimum (sec)
`
`Table 2: Filter parameters
`
`play_:Ei1e
`p1ay.d:i.r
`p1ay.1oop
`1-ec..ga:Ln
`play.ga:Ln
`mon_gain
`rec_port
`play_port
`rec..channele
`
`p1ay_channels
`1-ec_samp1e_rate
`p1ay_s aInp1e_rat.e
`bef ore_spu.rt
`at tenspurt
`play_1owat or
`play .111 was or
`rec.loua1:er
`reciiiuater
`
`packet izat ion
`vocoder
`s i1ence._sub
`
`default playback file name
`default directory for sound files
`play same audio file again and again
`audio recording gain; --1: leave as is
`audio playback gain; -1: leave as is
`audio monitor gain; -1: leave as is
`audio input port: default, line, mic or digital
`audio output port: default, speaker or jack
`audio record channels
`audio output channels
`audio input sample rate
`audio output sample rate
`packets before talk spurt
`packets after talk spurt
`the minimum occupancy of the audio output buffer buffer [ms]
`the maximuni occupancy of the audio output bufier buffer (ms)
`the minimum occupancy of the audio input bufier buffer (ms)
`the maximum occupancy of the audio input buffer buffer (ms)
`packetisation interval (ins)
`vocoder interval (ins)
`silence substitution algorithm
`echo suppressor flag
`don’t repeat it" packet energy is above this threshold
`threshold below which microphone audio is treated as echo
`voic e_c oding
`audio encod.ing°
`__—..j_j.:..:___j:j
`
`echo _supp
`repeat _th
`echo .tl:L
`
`“G.711,G.T21,G.723,CELP.LPC,DVI.linear B,1inear 16
`
`Table 3: Audio and audio file parameters
`
`13
`
`

`
`
`
`
`
`
`
`
`
`
`Low water mark: 22.5
`High water rnarlc 90
`
`
`22.5
`90
`
`ms
`ms
`
`
`
`Channels:
`
`1
`
`EE]
`
`l__....
`
` '
`Nevot: Properties
`-
`
`Audio Input
`
`Audio Output
`
`
`
`
` Audio before talkspurt: 40
`_.j_—
`aftertall-cspurt: 100
`ms
`
`Silence, lost packet:
`play last packet
`
`
`
`Sampling rate:
`
`8.000
`
`H2
`
`
`
`
`
`Soft timeout:
`voice packet size:
`Check interval:
`
`1
`OTIU
`
`[J U1
`
`
`
`
`Hard timeout: 10
`
`min
`
`WIS
`sec
`
`l~l'UF'
`
`vat
`
`
`
`
`
`
`Echo threshold:
`sound directory:
`
`UJ
`Repeat threshold: 40
`EIQ
`0
`
`
`;'usr!demo/SOUND,-‘sounds
`-
`
`E2]
`
`User name: %n@%h
`
`
`
`
`
` De lay
`VU
`avg.
`var.
`
`
`
`1
`sec
`0.1
`1
`
`2
`
`0
`
`0.1
`
`
`4
`4
`
`
`2.5
`
`sec
`
`
`
`
`
`
`
`
`Silence Mic
`Time constant: 0
`1.024
`Hysteresis: 8
`20
`
`Nominal: 50
`80
`
`Interval: 0
`0.5
`
`Enable: E
`
`
`
`I]
`
`M
`
`ET
`
`El
`
`
`
`verbosity: 2
`
`Max. number of trace events: 5000
`
`
`
`
`
`Packetloss
`I] Microphone loopbacl:
`Cancel
`
`
`
`Traceevents
`
`Delavadi
`I] Audiofileloopback E]
`iiudiofileonly
`
`Figure 5: The properties pop-up
`
`14
`
`
`
`
`
`
`
`
`
`
`
`

`
`trace.1ength
`trac-.e.events
`
`number of trace events
`events to be traced“
`
`et..3end.port
`st.recv.port
`st._.session_port
`st._tt1
`st_proto
`st_con.ference_-i.d
`st_mode
`
`default audio send port
`default audio receive port
`default session control port
`time-to-live for multicast packets
`default protocol: UDP, TCP, ST-II
`default conference identifier
`stream model’
`
`soft time-out
`soft.to
`hard time-out
`ha.rd_to
`interval to send identifier and check time-out (sec)
`check_:‘..nterval'
`0: no output; 1: niinimal messages on stdout
`verbosity
`flags: mike._'loop, a:E_1oop, sd, agc, vu, del
`mode
`user name format, as described on p. 15
`user
`audio packet format: vat or nvp
`protocol
`role: end.node or gateway
`role
`maxirnum number of rows per conference
`maxjieight
`_j....:_j_.j_j.__j
`
`°aud.:‘.o_i.n, aud:i.o.out, transmit, receive, packetloss. silence. AGC, de1ay.adj
`“values: encrypt, sour-ce.acld.r, 1:i.sten.on1y. :i.d_1.:i.sten.on1y, shou.1 ieteners
`
`Table 4: Network parameters
`
`Softfhard time out: The waiting time, in minutes, after the last audio/control packet is received
`before a site is timed out.
`
`Voice packet size: The voice packetization interval, in milliseconds. Sites within a conference
`may use diiferent packetization intervals. The voice packetization interval must yield a integer
`packet size after encoding. See the voice encoding table above for acceptable increments. The
`standard paclzetization interval that ensures interoperability with vat is 22.5 ms.
`
`NVP /vat: The audio packet format, either NV? or the vat private header format. All conferences
`must use the same format; thus, you can switch between the two only prior to opening the
`first conference.
`
`Check interval: The check interval is the time after which the program sends out an identifying
`message to all other conference participants. This is also the granularity with which time-outs
`are checked.
`
`Echo threshold: If voice packets with average energy below this threshold are encountered while
`other users are talking, it is assumed that the microphone is picking up the audio of these
`other users. This mechanism is enabled only when the echo suppressor box is checked.
`Repeat threshold: Packets with energy above this threshold are not repeated during silence
`periods.
`
`Sound directory: The default directory for sound files.
`
`User name: The message to be send with the session protocol. The string may contain format
`characters which are replaced by the current value :
`
`15
`
`

`
`‘tie
`lih
`' i
`7.11
`‘(Lo
`‘rip
`'/.r
`‘flu
`ll?!
`
`telephone extension (e.g., x3179)
`host name (e.g., gaia.cs.umass .edu)
`host Internet number (e.g., 128. 119.40. 186)
`real user name (e.g., Banning Schulzrinne)
`office room number (e.g., £203)
`home phone number (e.g., 555-1212)
`terminal device name (e.g., /dev/1:r.y01)
`the user login name (e.g., hgschulz)
`the percent sign itself
`
`I typically, user name and host, but can be anything. This can be used for a crude messaging
`protocol.
`
`Silence: This column determines the parameters for the silence detector. Currently, the time
`constant is not used. The hysteresis determines the amount by which the energy of a packet
`must exceed the current minimum average. The maximum silence threshold is given by the
`sum of the nominal value and the hysteresis. The interval determines how long the silence
`detector waits during a tall: spurt before raising the minimum average.
`
`AGC: This column contains the parameters for the automatic gain control, namely time constant,
`hysteresis (i.e., the band around the nominal energy value where no gain adjustment is made),
`the desired average energy value and the adjustment interval.
`Vlil: This column contains the parameters for the VU meter, both for incoming and outgoing
`audio. The VU display is updated with a period given by the interval entry. The nominal
`value is ign

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket