270 likes | 368 Views
Project Proposal for Integrated Control and Connection management. Robby Gurdan and Richard Foss. Presentation Overview. Motivation Protocol Overview Example system. Motivation. Integrate control and connection management with a single protocol Full physical network independence
E N D
Project Proposal for Integrated Control and Connection management Robby Gurdan and Richard Foss
Presentation Overview • Motivation • Protocol Overview • Example system
Motivation • Integrate control and connection management with a single protocol • Full physical network independence • Provide security via subnet access control • Incorporate latency control • A need for a distributed server-less system
Challenges • Many incompatible network standards • A range of devices to control with varying levels of complexity and capability • Timing constraints with real time audio streaming • Synchronization between multiple media stream types • No global security standard for media and control data
Markets • Installation market • Live events • MI / home studio • offices • residential • telecommunication • security related systems
Benefits to the Industry and End User • Full control and streaming interoperability • Consistent user-device interaction • Full system control is possible from small controllers • Extensive parameter control is possible with limited messaging • Full backward and forward compatibility • Parameter learning capability
XFN Protocol • IP-based peer to peer network • Each device will have an IP stack • XFN protocol layer above IP stack • A tree structured parameter hierarchy • Hierarchy reflects structure of device, eg. • Input section of mixing console • Channel strip • Parameter group • Parameter type, eg gain • Parameter value
Parameter Groupings • Groupings are natural to audio engineers • Lowest level nodes • Parameter values and formats • Each parameter - a fixed number of groupings • From parameter level • Up to top-most tree grouping level
Grouping level names • SECBLK • SECTYPE • SECNR • PARAMETER_BLOCK • PAR_BLOCK_INDEX • PAR_TYPE • PAR_INDEX • VALFT/VALUE
Known Group Object ID’s • At each level: • Known group object ID’s • Each unique within the level • Address of a particular parameter • Constituted from seven group object ID’s • Group objects and ID’s published in specification
Gain Parameter in BBox • SECBLK SCT_BLOCK_INPUT ID 01 • SECTYPE SCT_TYPE_ANALOG ID D4 • SECNR STREAMNUMBER ID 100001 • PARAMETER_BLOCK PRM_BLK_DGTL_AMP ID 11 • PAR_BLOCK_INDEX NUMBERENTRY ID 1 • PAR_TYPE GAIN ID 0201 • PAR_INDEX PAR_INDEX ID 1 • VALFT/VALUE 8 bit/0-255 00/0-255
Isoch Channel Number • SECBLK SCT_BLOCK_INPUT ID 01 • SECTYPE SCT_TYPE_1394 ID E1 • SECNR INTERFACENUMBER ID 0 • PARAMETER_BLOCK PRM_BLOCK_MULTICORE ID 11 • PAR_BLOCK_INDEX NUMBERENTRY ID 1 • PAR_TYPE IsochChannelNumber ID 201 • PAR_INDEX Dummy ID • VALFT/VALUE 8 bit/0-255 00/0-255
Tree Structure in each device DEVICE The nodes represent particular objects relevant to the level on which they appear. SECBLK SECTYPE SECNR . . . . . . . . . . . . . . . . . . PARMBLOCK PARMBLKINDEX PARMTYPE PARMINDEX
‘Wild card ID’s’ • Wildcard ID may be used in place of: • An object ID • On a particular level • Selects all objects on next level of tree • Allows for control of: • a large number of parameters • with a single broadcast command
Command Structure • Each command comprises: • An operand (such as SET or GET) • An operand modifier (such as VAL) • A structured address comprising level ID’s • A format indicator and value
Level Commands • To trace through the tree structure: • Use ‘Level’ commands • For any node of a tree: • Return sub-nodes below the node • Allows discovery of parameters • Provide this address • Return these nodes
Parameter Index Values • A device holds a parameter index value • For each parameter it contains • Controller can request index • Via a ‘get index’ command • With an associated structure address • Device provides index to controller • Controller uses index instead of address
Joins • Parameters can be joined into groups • Change one parameter of the group • All other parameters of group change • Joins can be: • Absolute or relative • Unidirectional or bidirectional
Modifiers • Provide the capability to selectively modify one or more settings within a command • Settings are modified at any level of command • Command can be: • Directed at a parameter • Emanating from a parameter
Modifier Example Modifier changes a command from a tactile controller from: channel -> channel 2
Across Bus Transmission? • Currently the IEEE 1394.1 specification • No implementations • Problems: • Devices must be bridge aware • All asynchronous packets are passed • No control mechanisms (security) • No re-bundling of packets
Media Stream Routing • Allows control over • The receipt of isochronous multimedia streams • Via a portal • On same bus as transmitter • The extraction of sequences and re-bundling of sequences • For transmission over co-portal • The configuration of transmitted isochronous streams
IP Routing • Creation of an IP address for each portal of the router • Creation of an IP routing table – each entry: • A subnet (corresponding to a bus) • A subnet mask • A router interface to send to • IP address of gateway if address not on local bus
IP Routing – the mechanism • All IP messages written to router portal • Received by the firmware of the router • Firmware views routing table • Routes accordingly • Routing table is set up: • Via on-device control or • Via IP messages directed at router