550 likes | 722 Views
5 th April 2010. Presentation AES X-170 at IEEE 1722.1 Face to Face Robby Gurdan and Richard Foss rg@umannet.com r.foss@umannet.com. XFN Overview. IP-based peer to peer protocol Addressing of parameters is hierarchical Hierarchy reflects structure of device
E N D
5th April 2010 Presentation AES X-170atIEEE 1722.1 Face to Face Robby Gurdan and Richard Fossrg@umannet.comr.foss@umannet.com
XFN Overview IP-based peer to peer protocol Addressing of parameters is hierarchical Hierarchy reflects structure of device Levels in hierarchy are fixed Parameters can also be addressed by ID’s Parameters can be joined into groups ‘Modifiers’ can modify addresses/ values Desk Items – graphic display info in device AES X-170 Presentation
XFN Message Structure1 AES X-170 Presentation
XFN Message Structure 2 AES X-170 Presentation Page 4
XFN Message Structure 2 AES X-170 Presentation Page 5
XFN Message Structure 2 AES X-170 Presentation Page 6
XFN Message Structure 2 AES X-170 Presentation Page 7
XFN Message Structure 2 AES X-170 Presentation Page 8
XFN Message Structure 2 AES X-170 Presentation Page 9
XFN Message Structure 2 AES X-170 Presentation Page 10
Command Executive, Command Qualifier Command Executive – indicates fundamental nature of command • Examples – GET, SET, ACT, JOIN/UNJOIN, CREATE Command Qualifier – refines the command executive • Examples – VAL, VTBL, FLAG, SEC, PUSH, DATA_BLOCK, PTP, MSTSLV, USG Example commands: • SET VAL <address of parameter> <Value> • GET FLAG <address of parameter> - gets the flag field of a parameter • JOIN PTP <address of parameter1> <Value-address of parameter 2,abs/rel> • CREATE USG <address of parameter> <Value - address1, address2, …> AES X-170 Presentation
The Origins of the Address Block 7. Output channels 5/6. Bus matrix 2. Input matrix 3/4. Input channels 1. Digital/ Analogue input 9. Digital/ Analogue output 8. Output Matrix AES X-170 Presentation
The 7 levels of the Address Block Most parameters conform to similar functional groupings: • 1; Section Block – eg. Input section, Output section • 2 ; Section Type – eg. Mic input, Line Input, ADAT input • 3 ; Section Number – eg. Channel number • 4 ; Parameter Block – eg. Equalizer block • 5; Parameter Block Index – eg. Equalization sub-grouping (Q, freq) • 6; Parameter Type – eg. Low frequency, gain, threshold • 7; Parameter Index – eg. To identify gain parameter number AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
XFN Message Structure 3 AES X-170 Presentation
Motivations for fixed 7 level structure • Can control any device without discovery Example – • Small controller in large network of complex pro-audio devices • Address of gain parameter is known for: Channel 1 On any device Wildcard (all 1’s) can be inserted at any level Provides single message control over many parameters Allows for partial discovery AES X-170 Presentation Page 23
X170 Device Application Callback Hierarchical tree X170 Stack Level structures Parameter entry structures Creating a parameter on a device • . Create level and parameter structures 2. Add to tree Points to AES X-170 Presentation Page 24
X170 Device Callback Application Hierarchical tree X170 Stack 0x0002 Parameter entry structures 0xD101 0x100007 . . Stored Parameter Values Parameter Access 3 – call callback 2 - Traverse tree 1 – X170 message 4 – Access parameter Page 25 AES X-170 Presentation
Network cable Multicore Out socket Multicore In socket Audio device Audio device Audio channel Multicore X-170 Connection Management Concepts Ethernet AVB -Multiple channels of audio in ‘streams’ X-170 - view as being clustered into multicore cables, or ‘multicores’ Page 26 AES X-170 Presentation
Control and Monitoring This is where manufacturer-specific desk items can be displayed Multicore View This is where you choose the transmitting devices output multicore socket and the receiving device’s input multicore socket Devices View This is where you choose the 2 devices that you want to connect with a multicore User-tailored Control and Monitoring This is where the user can construct a tailored control and monitoring surface using controls from more than one device. Receiver View This is where you indicate how multicore channels coming into the receiving device are routed to audio outputs from the device Transmitter View This is where you indicate how audio inputs to the transmitting device are routed to multicore audio channels The User view of the multicore concept Page 27 AES X-170 Presentation
GUI Display of X170 Connection Management Devices Multicores Talker Listener Deskitem User 5 1 2 3 4 6 Page 28 AES X-170 Presentation
X-170 parameters for AVB connection management Each Ethernet AVB device will have: • Talker Streams • Listener Streams These Streams can be viewed as multicores via XFN, it is possible to determine: • types of Streams an Ethernet AVB device has • properties associated with each stream Page 29 AES X-170 Presentation
‘Talker’ parameters Multicore number – X-170 identifier for a particular stream ‘Wildcard’ this level to determine no of talker streams Page 30 AES X-170 Presentation
Stream ID parameter Each Talker Stream has a 64-bit Stream ID associated with it. Page 31 AES X-170 Presentation
Talker Advertise parameter When doing an XFN GET VALUE on this parameter: 0: The Stream has not been advertised to the Ethernet AVB network 1: The Stream has been advertised to the Ethernet AVB network When doing an XFN SET VALUE on this parameter: 0: If the associated Stream is being advertised, the Talker Advertise will be withdrawn. This will also have the effect of stopping this Stream, if it is currently streaming. 1: If the associated Stream is not being advertised, this will have the effect of advertising the Stream to the network. Page 32 AES X-170 Presentation
‘Listener’ parameters Multicore number – X-170 identifier for a particular stream ‘Wildcard’ this level to determine no of listener streams Page 33 AES X-170 Presentation
Listener ‘Listen’ parameter When doing an XFN GET VALUE request on this parameter: 0: The associated Listener Stream is not receiving stream data from any Talker 1: The associated Listener Stream has requested that a Talker stream data towards it When doing an XFN SET VALUE on this parameter: 0: If the associated Listener Stream has requested attachment to a Talker Stream, the request will be withdrawn. If the Talker has no other Listeners receiving the Stream, it will stop sending out its Stream 1: If there is not currently a request to receive a Stream, a Listener Ready request will be sent out onto the AVB network. The Listener Ready request will contain the Stream ID that is associated with the Listener Stream. Page 34 AES X-170 Presentation
Internal Routings Encapsulation – some of the outputs will be channels within multicores Page 35 AES X-170 Presentation
Establishing and Tearing Down Streams To establish a Stream connection between an AVB Talker and Listener device, the XFN device making the connection needs to: Obtain the Stream ID of the required Stream associated with the AVB Talker device • XFN GET VALUE request on the Stream ID parameter of the Talker’s Stream. Set the Stream ID of the required Stream that is associated with the AVB Listener device. • XFN SET VALUE request on the Stream ID parameter of the Listener’s Stream. Set the appropriate Talker’s XFN Advertise parameter to a value of 1. Set the appropriate Listener’s XFN Listen parameter to a value of 1. To tear-down a stream between an AVB Talker and an AVB Listener device, the device tearing down the stream needs to: Set the appropriate Listener’s XFN Listen parameter to a value of 0. Page 36 AES X-170 Presentation
A typical AVB test configuration AES X-170 Presentation Page 37
The concept of ‘Pushing’ Often not efficient to GET values: • Multiple meter displays for target device • Repeated updates, short intervals ‘PUSH’ mechanism created: • Control application sends SET PUSH to target • Gives full address of parameter to push to Target adds control app parameter to its metering parameter Push list Target continuously: • Scans Push list of parameter • Sends meter block to each member of Push list Page 38 AES X-170 Presentation
Target Device Control application XFN Stack Push List Parameter Entry 1 Entry 2 Periodic Process Entry n Data to be pushed Pushing a Data block 4.SET DATABLOCK 3.Send data 2.Read 1.Read AES X-170 Presentation Page 39
Grouping Parameters Alter one parameter -> alter other parameters 2 types of groups: • Master/Slave - Change master, slaves change – change slave, no change of master • Peer to peer – change any group member, others also change 2 types of relationship: • Absolute - take on same value • Relative – offset is maintained Page 40 AES X-170 Presentation
A 12 A 12 B 5 B 5 C 17 C 17 A 14 A 12 B 7 B 1 C 19 C 17 Grouping examples Master/Slave, relative, A is master: Page 41 AES X-170 Presentation
A 12 A 12 B 5 B 5 C 17 C 17 A 14 A 8 B 7 B 1 C 19 C 13 Grouping examples Peer to Peer relative: Page 42 AES X-170 Presentation
Grouping Mechanisms Each parameter will contain 3 lists: A list of peer parameters A list of parameters that are its master A list of parameters that are its slaves Master/Slave: - make parameter A the master of parameter B JOIN MSTSLV <address: XFN address of parameter A> <XFN address of parameter B> <abs/rel> Peer to peer: - join parameter A parameter B as peers: JOIN PTP <address: XFN address of parameter A> <XFN address of parameter B> <abs/rel> Page 43 AES X-170 Presentation
The Modifier Concept Can create ‘Modifier Blocks’ with variables Variables modify value or level addresses • Input Value Parameter (IVP) • Output Value Parameter (OVP) • Value script variable parameter (VVP) • Address block level 1 script variable parameter (L1VP) • Address block level 2 script variable parameter (L2VP) • Address block level 3 script variable parameter (L3VP) • Address block level 4 script variable parameter (L4VP) • Address block level 5 script variable parameter (L5VP) • Address block level 6 script variable parameter (L6VP) • Address block level 7 script variable parameter (L7VP) Page 44 AES X-170 Presentation
Output Value Parameter Input Value Parameter Value Change Script Modifier Parameter Block Fader Parameter Fader Parameter Joining to and from Modifier parameters XFN msg XFN msg Join Join Page 45 AES X-170 Presentation
Desk Items • Graphical control items on desk top, examples: • slider, • pan pot. • Information about desk items is in device: • Nature of desk item • Position of desk item • Graphical images for desk item • Associated device parameter • Information allows a controller to: • Extract desk item information from device • Display in desired layout • Allow for user control of device parameter Page 46 AES X-170 Presentation
Device A Device display Desk item info Device B Control device Desk item info Device C Desk item info The Desk Item mechanism Desk item info request Page 47 AES X-170 Presentation