Presentation is loading. Please wait.

Presentation is loading. Please wait.

Presentation AES X-170 at IEEE 1722.1 Face to Face Robby Gurdan and Richard Foss 08.02.2014.

Similar presentations


Presentation on theme: "Presentation AES X-170 at IEEE 1722.1 Face to Face Robby Gurdan and Richard Foss 08.02.2014."— Presentation transcript:

1 Presentation AES X-170 at IEEE 1722.1 Face to Face Robby Gurdan and Richard Foss rg@umannet.com r.foss@umannet.com rg@umannet.comr.foss@umannet.com 08.02.2014 5 th 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 IDs Parameters can be joined into groups Modifiers can modify addresses/ values Desk Items – graphic display info in device Page 208.02.2014AES 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 Page 308.02.2014AES X-170 Presentation

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

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

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

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

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

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

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

11 Page 1108.02.2014AES X-170 Presentation 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 GET FLAG - gets the flag field of a parameter JOIN PTP CREATE USG

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

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 numbe r Page 1308.02.2014AES X-170 Presentation

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

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

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

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

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

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

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

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

22 XFN Message Structure 3 Command Executive (8 bit) Command Qualifier (8 bit) 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 GAIN (continued) PRM_INDEX ID – 0x0001 8 bit integer ID – 0x00 Page 2208.02.2014AES 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 1s) can be inserted at any level Provides single message control over many parameters Allows for partial discovery 08.02.2014AES X-170 Presentation Page 23

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

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

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

27 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 devices 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. The User view of the multicore concept Page 2708.02.2014AES X-170 Presentation

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

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

30 SECBLKXFN_SCT_BLOCK_OUTPUT SECBLKXFN_SCT_BLOCK_OUTPUT SECTYPEXFN_SCT_TYPE_STREAM SECNRInterface No PBLKXFN_PRM_BLOCK_AVB_MULTICORE PBLIXMulticore number PARTPXFN_PTYPE_STREAM_ID PARIX1 Talker parameters Multicore number – X-170 identifier for a particular stream Wildcard this level to determine no of talker streams Page 3008.02.2014AES X-170 Presentation

31 SECBLKXFN_SCT_BLOCK_OUTPUT SECTYPEXFN_SCT_TYPE_STREAM SECNRInterface No PBLKXFN_PRM_BLOCK_AVB_MULTICORE PBLIXMulticore number PARTPXFN_PTYPE_STREAM_ID PARIX1 Stream ID parameter Each Talker Stream has a 64-bit Stream ID associated with it. Page 3108.02.2014AES X-170 Presentation

32 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. PBLIXMulticore number PARTPXFN_PTYPE_ADVERTISE PARIX1 Page 3208.02.2014AES X-170 Presentation

33 Listener parameters Multicore number – X-170 identifier for a particular stream Wildcard this level to determine no of listener streams SECBLKXFN_SCT_BLOCK_INPUT SECTYPEXFN_SCT_TYPE_STREAM SECNRInterface No PBLKXFN_PRM_BLOCK_AVB_MULTICORE PBLIXMulticore number PARTPSpecific parameter type value PARIXSpecific parameter type index Page 3308.02.2014AES X-170 Presentation

34 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. Listener Listen parameter PBLIXMulticore number PARPXFN_PTYPE_LISTEN PARIX1 Page 3408.02.2014AES X-170 Presentation

35 Internal Routings Level NameAudio input to audio output cross point enable Section BlockXFN_SCT_BLK_INPUT Section TypeXFN_SCT_TYPE_AUDIO Section NumberInteger – audio in number Parameter BlockXFN_PRM_BLOCK_OUTPUT Param Block IndexInteger – audio out number Parameter TypeXFN_CROSSPOINT_ENABLE Parameter Index1 Page 3508.02.2014AES X-170 Presentation Encapsulation – some of the outputs will be channels within multicores

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 Talkers 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 Listeners Stream. Set the appropriate Talkers XFN Advertise parameter to a value of 1. Set the appropriate Listeners 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 Listeners XFN Listen parameter to a value of 0. Page 3608.02.2014AES X-170 Presentation

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

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

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

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

41 Master/Slave, relative, A is master: Grouping examples Page 4108.02.2014AES X-170 Presentation A 12 B5B5 C 17 A 14 B7B7 C 19 A 12 B5B5 C 17 A 12 B1B1 C 17

42 Peer to Peer relative: Grouping examples Page 4208.02.2014AES X-170 Presentation A 12 B5B5 C 17 A 14 B7B7 C 19 A 12 B5B5 C 17 A8A8 B1B1 C 13

43 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 Peer to peer: - join parameter A parameter B as peers: JOIN PTP Grouping Mechanisms Page 4308.02.2014AES 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 4408.02.2014AES X-170 Presentation

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

46 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 Desk Items Page 4608.02.2014AES X-170 Presentation

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

48 A Desk Item Editor

49 The Desk Item Displayed

50 A different desk item

51 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 –Controller directs the following message to each device: Get USG List –Device provides parameter IDs and values for these addresses ListData Two other contexts for using this: –Retrieval of parameter values from a device for later restoration (snapshots) Set USG –Regular bulk parameter updates from device to controller (eg for metering) Device Discovery Page 5108.02.2014AES X-170 Presentation

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

53 A possible scenario: Multiple devices on network, all able to generate and receive 1722 streams Devices implement varying connection management and control protocols Devices cant 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 Zeroconf and protocol Interoperability Page 5308.02.2014AES X-170 Presentation

54 - 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) X170 and OSC Interoperability Page 5408.02.2014AES X-170 Presentation

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


Download ppt "Presentation AES X-170 at IEEE 1722.1 Face to Face Robby Gurdan and Richard Foss 08.02.2014."

Similar presentations


Ads by Google