Presentation is loading. Please wait.

Presentation is loading. Please wait.

Presentation AES X-170 at IEEE Face to Face

Similar presentations


Presentation on theme: "Presentation AES X-170 at IEEE Face to Face"— Presentation transcript:

1 Presentation AES X-170 at IEEE 1722.1 Face to Face
Robby Gurdan and Richard Foss 5th April 2010

2 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

3 XFN Message Structure1 IP header including source and destination IP address UDP header including source and destination port XFN header and XFN address block AES X-170 Presentation

4 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 4 AES X-170 Presentation

5 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 5 AES X-170 Presentation

6 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 6 AES X-170 Presentation

7 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 7 AES X-170 Presentation

8 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 8 AES X-170 Presentation

9 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 9 AES X-170 Presentation

10 Target IP Address (32 bit)
XFN Message Structure 2 Target IP Address (32 bit) Target XFN Node ID (8 bit) Sender IP Address (32 bit) Sender IP address (continued) Sender XFN Node ID Sender Parameter ID User Level Message Type Sequence ID (32 bit) Command Executive Command Qualifier Address Block (104 bit) Address Block (continued) Page 10 AES X-170 Presentation

11 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

12 The Origins of the Address Block
2. Input matrix 3/4. Input channels 5/6. Bus matrix 7. Output channels 1. Digital/ Analogue input 9. Digital/ Analogue output 8. Output Matrix AES X-170 Presentation

13 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

14 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

15 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

16 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

17 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

18 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

19 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

20 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

21 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
Section Block Section Type Section Number (24 bit) Parameter Block Parameter Block Index Parameter Type (16 bit) (continued) Parameter Index Value Format AES X-170 Presentation

22 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier
SCT_BLOCK_INPUT ID – 0x01 SCT_TYPE_AUDIO ID – 0xD1 CHANNEL_NUMBER ID – 0x100001 PRM_BLK_DIG_AMP ID – 0x11 PRM_BLK_INDEX ID – 0x00001 GAIN ID – 0x201 (continued) PRM_INDEX ID – 0x0001 8 bit integer ID – 0x00 AES X-170 Presentation

23 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 Page 23 AES X-170 Presentation

24 Creating a parameter on a device
X170 Device Applicat ion X170 Stack Callback Hierarchic al tree Parameter entry structures Level structures . Create level and parameter structures 2. Add to tree Points to Page 24 AES X-170 Presentation

25 Parameter Access X170 Device Callback Applicat ion X170 Stack .
Stored Parameter Values Callback Hierarchical tree Applicat ion . Parameter entry structures 3 – call callback 2 - Traverse tree 1 – X170 message 4 – Access parameter Page 25 AES X-170 Presentation

26 X-170 Connection Management Concepts
Ethernet AVB -Multiple channels of audio in ‘streams’ X view as being clustered into multicore cables, or ‘multicores’ Audio device Network cable Multicore Audio channel Out socket In socket Page 26 AES X-170 Presentation

27 The User view of the multicore concept
Devices View This is where you choose the 2 devices that you want to connect with a multicore Multicore View This is where you choose the transmitting devices output multicore socket and the receiving device’s input multicore socket Transmitter View This is where you indicate how audio inputs to the transmitting device are routed to multicore audio channels Receiver View This is where you indicate how multicore channels coming into the receiving device are routed to audio outputs from the device Control and Monitoring This is where manufacturer-specific desk items can be displayed 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. Page 27 AES X-170 Presentation

28 GUI Display of X170 Connection Management
Devices Multicores Talker Listener Deskitem User 1 2 5 3 4 6 Page 28 AES X-170 Presentation

29 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

30 ‘Talker’ parameters SECBLK XFN_SCT_BLOCK_OUTPUT SECTYPE XFN_SCT_TYPE_STREAM SECNR Interface No PBLK XFN_PRM_BLOCK_AVB_MULTICORE PBLIX Multicore number PARTP XFN_PTYPE_STREAM_ID PARIX 1 Multicore number – X-170 identifier for a particular stream ‘Wildcard’ this level to determine no of talker streams Page 30 AES X-170 Presentation

31 Stream ID parameter SECBLK XFN_SCT_BLOCK_OUTPUT SECTYPE XFN_SCT_TYPE_STREAM SECNR Interface No PBLK XFN_PRM_BLOCK_AVB_MULTICORE PBLIX Multicore number PARTP XFN_PTYPE_STREAM_ID PARIX 1 Each Talker Stream has a 64-bit Stream ID associated with it. Page 31 AES X-170 Presentation

32 Talker Advertise parameter
PBLIX Multicore number PARTP XFN_PTYPE_ADVERTISE PARIX 1 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

33 ‘Listener’ parameters
SECBLK XFN_SCT_BLOCK_INPUT SECTYPE XFN_SCT_TYPE_STREAM SECNR Interface No PBLK XFN_PRM_BLOCK_AVB_MULTICORE PBLIX Multicore number PARTP Specific parameter type value PARIX Specific parameter type index Multicore number – X-170 identifier for a particular stream ‘Wildcard’ this level to determine no of listener streams Page 33 AES X-170 Presentation

34 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. PBLIX Multicore number PARP XFN_PTYPE_LISTEN PARIX 1 Page 34 AES X-170 Presentation

35 Internal Routings Level Name
Encapsulation – some of the outputs will be channels within multicores Level Name Audio input to audio output cross point enable Section Block XFN_SCT_BLK_INPUT Section Type XFN_SCT_TYPE_AUDIO Section Number Integer – audio in number Parameter Block XFN_PRM_BLOCK_OUTPUT Param Block Index Integer – audio out number Parameter Type XFN_CROSSPOINT_ENABLE Parameter Index 1 Page 35 AES X-170 Presentation

36 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

37 A typical AVB test configuration
Page 37 AES X-170 Presentation

38 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

39 Pushing a Data block Target Device Control application XFN Stack
Parameter Entry 1 Entry 2 Entry n Push List Periodic Process Data to be pushed Target Device 4.SET DATABLOCK 3.Send data 2.Read 1.Read Page 39 AES X-170 Presentation

40 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

41 Grouping examples Master/Slave, relative, A is master: 27.03.2017
12 B 5 C 17 14 7 19 A 12 B 5 C 17 1 Page 41 AES X-170 Presentation

42 Grouping examples Peer to Peer relative: 27.03.2017 Page 42
12 B 5 C 17 14 7 19 A 12 B 5 C 17 8 1 13 Page 42 AES X-170 Presentation

43 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> Page 43 AES X-170 Presentation

44 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

45 Joining to and from Modifier parameters
Fader Parameter Input Value Modifier Block Output Value Value Change Script XFN msg XFN msg Join Join Page 45 AES X-170 Presentation

46 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

47 The Desk Item mechanism
Desk item info Device A Device B Device C Device display Control device Desk item info request Page 47 AES X-170 Presentation

48 A Desk Item Editor

49 The Desk Item Displayed

50 A different desk item

51 Device Discovery Enables fast discovery of a defined group of parameters Controller indicates a defined set of parameters (IP address, name, etc) Broadcasts the following: Create USG <fragment size><no of address entries> <full address1, full address2, … fulladdressN> Controller directs the following message to each device: Get USG List <List N> Device provides parameter ID’s and values for these addresses ListData<full address1, xfnID1, Value format1, Value1, full address1, xfnID2, Value2, … full addressN, xfnIDN, Value formatN, ValueN> Two other contexts for using this: Retrieval of parameter values from a device for later restoration (snapshots) Set USG<No of entries> <xfnID1, Value format1, Value1, xfnID2, Value format2, Value2, … xfnIDN, Value formatN, ValueN> Regular bulk parameter updates from device to controller (eg for metering) Page 51 AES X-170 Presentation

52 Display of discovered devices
Page 52 AES X-170 Presentation

53 Zeroconf and protocol Interoperability
A possible scenario: Multiple devices on network, all able to generate and receive 1722 streams Devices implement varying connection management and control protocols Devices can’t stream to each other Possible solutions Controller that can speak multiple protocols A proxy that can translate protocol messages Either way Determine the protocol spoken by devices Use Zeroconf to do this Page 53 AES X-170 Presentation

54 X170 and OSC Interoperability
Created OSC device on Linux PC Creates OSC address space with stream parameters Create _osc._udp service type - Register the service to be published using avahi to: Create an entry group Add service to entry group (specify name, service type, port n0, DNS TXT rec) Commit the entry group - A proxy then: Browses for the _osc._udp service (callback called when service is available) Resolves the service within callback (obtains IP address, port number) Page 54 AES X-170 Presentation

55 April 2010 Thank You! Page 55 AES X-170 Presentation


Download ppt "Presentation AES X-170 at IEEE Face to Face"

Similar presentations


Ads by Google