##################################################################### # Configuration for ALSA and the uncompressed audio mapping module ##################################################################### ##################################################################### # General 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 = 84:7e:40:2b:63:f4 # stream_uid: The unique stream ID. The talker and listener must # both have this set the same. stream_uid = 2 # dest_addr: When SRP is being used the destination address only needs to # be set in the talker. If SRP is not being used the destination address # needs to be set in both side the talker and listener. # The destination is a multicast address, not a real MAC address, so it # does not match the talker or listener's interface MAC. There are # several pools of those addresses for use by AVTP defined in 1722. # At this time they need to be locally administered and must be in the range # of 91:E0:F0:00:FE:00 - 91:E0:F0:00:FE:FF. # Typically :00 for the first stream, :01 for the second, etc. #dest_addr = 91:e0:f0:00:fe:00 # 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 # 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_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 # Ethernet Interface Name. Only needed on some platforms when stack is built with no endpoint functionality # ifname = eth0 current_sampling_rate = 48000 sampling_rates = 44100,48000,96000 ##################################################################### # 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_aaf_audio.so # map_fn: The name of the initialize function in the mapper. map_fn = openavbMapAVTPAudioInitialize # map_nv_item_count: The number of media queue elements to hold. map_nv_item_count = 32 # map_nv_tx_rate: Transmit rate. # This must be set for the AAF audio mapping module. map_nv_tx_rate = 4000 # map_nv_packing_factor: Multiple of how many packets of audio frames to place in a media queue item. # If sparse timestamping mode is enabled the listener should set here one of the possible # packing factors values to be sure that proper presentation time is put into media queue item. # Possible values are: 1, 2, 4, 8, 16, 24, 32, 40, 48, (+ 8)... map_nv_packing_factor = 32 # map_nv_sparse_mode: if set to 0 presentation time should be # valid in each packet. Set to 1 to use sparse mode - presentation # time should be valid in every 8th packet. map_nv_sparse_mode = 0 ##################################################################### # 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_fn: The name of the initialize function in the interface. intf_lib = ./libopenavb_intf_alsa.so # intf_fn: The name of the initialize function in the interface. intf_fn = openavbIntfAlsaInitialize # intf_nv_ignore_timestamp: If set the listener will ignore the timestamp on media queue items. # intf_nv_ignore_timestamp = 1 # intf_nv_device_name: ALSA device name. Commonly "default" or "plug:dmix" intf_nv_device_name = default # intf_nv_audio_rate: Valid values that are supported by AAF are: # 8000, 16000, 24000, 32000, 44100, 48000, 88200, 96000, 176400 and 192000 intf_nv_audio_rate = 48000 # intf_nv_audio_bit_depth: Valid values that are supported by AAF are: # 16, 24, 32 intf_nv_audio_bit_depth = 32 # intf_nv_audio_channels intf_nv_audio_channels = 2 # intf_nv_allow_resampling: 0 = disable software resampling. 1 = allow software resampling. Default is disable. intf_nv_allow_resampling = 1 # intf_nv_start_threshold_periods: The number of period to wait before starting playback. The larger the value to great # the latency. The small the number the great chance for a buffer underrun. A good range is 1 - 5. intf_nv_start_threshold_periods = 3 # intf_nv_period_time: the number of microseconds which should be set to unify latency between different platforms. # This influence ALSA's period_time and period_size parameters and the result value should be the nearest possible. # Initial playback latency is equal intf_nv_start_threshold_periods * intf_nv_period_time. If not set internal defaults are used. # intf_nv_period_time = 31250 # AAF is defined to be big-endian. intf_nv_audio_endian = big