summaryrefslogtreecommitdiff
path: root/lib/avtp_pipeline/intf_ctrl/ctrl_mux_listener.ini
blob: 1c01df87a01a2318c2f78163a8ba61865fb76694 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#####################################################################
# Control Listener configuration
#####################################################################
# role: Sets the process as a talker or listener. Valid values are
# talker or listener
role = listener

# initial_state: Specify whether the talker or listener should be
# running or stopped on startup.  Valid values are running or stopped.
# If not specified, the default will depend on how the talker or
# listener is launched.
#initial_state = stopped

# stream_addr: Used on the listener and should be set to the 
# mac address of the talker.
stream_addr = 00:0c:29:f8:3e:c6

# stream_uid: The unique stream ID. The talker and listener must
# both have this set the same.
stream_uid = 1

# dest_addr: see description in talker.ini
#dest_addr = 91:e0:f0:00:fe:00

# max_interval_frames: The maximum number of packets that will be sent during 
# an observation interval. This is only used on the talker.
#max_interval_frames = 1

# sr_class: A talker only setting. Values are either A or B. If not set an internal 
# default is used.
sr_class = B

# sr_rank: A talker only setting. If not set an internal default is used.
#sr_rank = 1

# max_transit_usec: Allows manually specifying a maximum transit time. 
# On the talker this value is added to the PTP walltime to create the AVTP Timestamp.
# On the listener this value is used to validate an expected valid timestamp range.
# Note: For the listener the map_nv_item_count value must be set large enough to 
# allow buffering at least as many AVTP packets that can be transmitted  during this 
# max transit time.
max_transit_usec = 50000

# internal_latency: Allows mannually specifying an internal latency time. This is used
# only on the talker.
#internal_latency = 0

# max_stale: The number of microseconds beyond the presentation time that media queue items will be purged 
# because they are too old (past the presentation time). This is only used on listener end stations.
# Note: needing to purge old media queue items is often a sign of some other problem. For example: a delay at 
# stream startup before incoming packets are ready to be processed by the media sink. If this deficit 
# in processing or purging the old (stale) packets is not handled, syncing multiple listeners will be problematic.
#max_stale = 1000

# raw_tx_buffers: The number of raw socket transmit buffers. Typically 4 - 8 are good values.
# This is only used by the talker. If not set internal defaults are used.
#raw_tx_buffers = 1

# raw_rx_buffers: The number of raw socket receive buffers. Typically 50 - 100 are good values.
# This is only used by the listener. If not set internal defaults are used.
#raw_rx_buffers = 100

# report_seconds: How often to output stats. Defaults to 10 seconds. 0 turns off the stats. 
# report_seconds = 0

# ptp_type: 0 = none, 1 = system clock,  2 = ptp from audioscience (L0.3),  3 = ptp from OPENAVB
# ptp_type = 3

# Ethernet Interface Name. Only needed on some platforms when stack is built with no endpoint functionality
# ifname = eth0

#####################################################################
# Mapping module configuration
#####################################################################
# map_lib: The name of the library file (commonly a .so file) that 
#  implements the Initialize function.  Comment out the map_lib name
#  and link in the .c file to the openavb_tl executable to embed the mapper
#  directly into the executable unit. There is no need to change anything
#  else. The Initialize function will still be dynamically linked in.
map_lib = ./libopenavb_map_ctrl.so

# map_fn: The name of the initialize function in the mapper.
map_fn = openavbMapCtrlInitialize

# map_nv_item_count: The number of media queue elements to hold.
map_nv_item_count = 400

#map_nv_max_payload_size: The maximum payload size of the control commands. 
map_nv_max_payload_size = 200

#####################################################################
# Interface module configuration
#####################################################################
# intf_lib: The name of the library file (commonly a .so file) that 
#  implements the Initialize function.  Comment out the intf_lib name
#  and link in the .c file to the openavb_tl executable to embed the interface
#  directly into the executable unit. There is no need to change anything
#  else. The Initialize function will still be dynamically linked in.
intf_lib = ./libopenavb_intf_ctrl.so

# intf_fn: The name of the initialize function in the interface.
intf_fn = openavbIntfCtrlInitialize

# intf_nv_mux_mode: When enabled with a value of 1 the multipler mode for the control interface is enabled.
# This is used for the dispatch model of control message configuration. For a listener the in mux mode any
# incoming control message is immediatedly placed in the ctrl mux talkers media queue for retransmission.
# When using mux mode, the talker MUST be created prior to listeners and remain running as long as any 
# listeners are running.
intf_nv_mux_mode = 1

# intf_nv_ignore_timestamp: The If set the listener will ignore the timestamp on media queue items.
#intf_nv_ignore_timestamp = 0