Media Control Policy - PowerPoint PPT Presentation

About This Presentation
Title:

Media Control Policy

Description:

Roles one can assume. Streams one can source or sink. Controls one has ... CPCP used to define permissions, actually assume roles, announce role changes, etc. ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 15
Provided by: brian231
Learn more at: https://www.ietf.org
Category:

less

Transcript and Presenter's Notes

Title: Media Control Policy


1
Media Control Policy
  • Chris Boulton, Umesh Chandra, Roni Even, Cullen
    Jennings, Alan Johnston, Brian Rosen, Mark Trayer

2
We started with two approaches
  • Rohans Flow Graphs approach
  • Cullen and Brians Template approach
  • We decided to do both
  • All conference servers will support templates,
    which are predefined
  • Some may support flow graphs, as a way of
    essentially dynamically creating a template

3
Team fleshed out the template idea
  • New draft includes the template language and
    worked out concepts for roles, streams, controls,
    etc.
  • Includes a starter set of template definitions
  • This will be excerpted into a separate draft in
    the next revision

4
Templates
  • A template is a description of the
  • Roles one can assume
  • Streams one can source or sink
  • Controls one has over the streams
  • Parameters specializing a template for use
  • The template describes how one builds a user
    interface to control a conference using that
    template
  • Media Policy Control Protocol primarily is
    concerned with manipulating the controls defined
    by the template
  • A conference is defined with the template to be
    used, which must be supported by the conference
    server, and the values of the parameters of that
    template
  • Clients can be built to implement a set of
    templates which would have good user interfaces
  • The template language is defined such that a
    client could render a reasonable UI for a
    template it did not directly implement.
  • Open Issue Can templates be derived from another
    template.

5
Use of templates
  • Conference server offers a list of templates it
    supports
  • Convener selects one template and specifies
    parameter values
  • Participants learn the template in use which
    determines the UI they offer
  • Participants and conference server exchange XML
    subsets of the template to manipulate controls
  • Open Issue Transport (assume XCAP)

6
Templates
  • Defined in an XML form in a public document
  • Have an IANA registered name the template is
    known by
  • Have Parameters, which are variables used to
    define some flexibility in the templates
  • Parameter values are fixed before the conference
    is instantiated
  • Fundamentally used to limit the number of
    templates required to describe a range of similar
    conference capabilities
  • Define Roles, Streams, Controls, and Lists

7
Roles
  • Template defines the allowed roles
  • CPCP used to define permissions, actually assume
    roles, announce role changes, etc.
  • Roles can define streams (source or sink) and
    controls that are only available to participants
    currently in the role
  • Implies that the streams and controls you have
    can change dynamically as your role changes
  • Roles can be defined hierarchically (nested)
  • Roles defined within a role inherit all the
    streams and controls that are defined in the
    enclosing role
  • Note Current examples dont show this

8
Streams
  • Define the streams a participant sources or sinks
    to the mixer
  • Defined with a name, a type (audio, video, text)
    and a direction (in, out)
  • Conference package maps SDP (or whatever) to
    stream names

9
Controls
  • UI manipulations of the mixer
  • Defined with name, label, type (integer, real,
    Boolean, enumeration,), value, enable, etc.
  • Rendered by the client UI with widgets of some
    kind, or automatically calculated.
  • Template can include a default (initial) value
  • Clients can change the value while the conference
    is in progress
  • Clients get notified if the value of a control
    they have changes
  • Server can change the value if necessary

10
Floor Control
  • Template defines which floors it has support for,
    which might be controlled by parameters
  • Templates describe (in English) how the mix
    changes as a result of floor holder changes
  • Streams and controls may be restricted to only
    being available to holders of a particular floor
  • Open Issues Have not synced up with floor
    control team

11
Open Issues
  • The flow graph work is not yet defined
  • Will be a separate draft
  • The complete set of templates has not yet been
    designed, but this work is started.
  • How the CPCP mechanisms work with templates (e.g.
    how do controls work)

12
Proposal
  • Let the design team do one more round

13
Basic Audio Template
lttemplate name"basic-audio"gt ltrole
name"Participant"gt ltparameter
type"integer" name"max-streams" min"1"
max"128"/gt ltstream type"audio"
name"AudioIn" dir"in"gt ltcontrol
name"mute" default"false" enable"true"/gt
lt/streamgt ltstream type"audio"
name"AudioOut" dir"out"gt ltcontrol
name"mix-type" type"enumeration",
enable"false" default"1"gt ltitem
label"MixMinus" value"1"gt ltitem
label"Active-Speaker" value"2"gt
lt/controlgt ltcontrol name"mute"
type"boolean" enable"false" default"false/gt
ltcontrolArray name"sourceSelector"
label"source" type"enumeration" enable"false"
default"false"gt ltitem
label"participant 1" value"1"/gt ltitem
label"participant 2" value"2"/gt ltitem
label"participant 3" value"3"/gt
.... .... ltitem label"participant n"
value"n"/gt lt/controlArraygt lt/streamgt
lt/rolegt
14
Changing the value of a control
ltconference template BasicAudiogt ltrole
nameParticipantgt ltstream nameAudioIngt
ltcontrol namemute valuetrue/gt lt/streamgt
lt/rolegtlt/conferencegt
Write a Comment
User Comments (0)
About PowerShow.com