Alsa-devel
Threads by month
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
November 2007
- 150 participants
- 140 discussions
Hi,
I've talked with some people workiong on LSB about the possibility to
put libasound as a part of the next LSB (surprisingly, they would like
it more than I). I proposed that we should define the minimal set at
first as the standard instead of taking all existing API functions.
An interesting input was that they did some statistics and counted the
actual used functions/variables in ALSA API over distros. The data
is attached below. I just put the number of apps and functions there
to simplify. (It includes __* functions that are actaully internal
ones, and I'm wondering why their numbers are so high. Anyway, they
shouldn't be a part of standard.)
So, first, just take a look at it. You'll see how many functions are
not actually used at all.
What I'd like to do now are:
- create a list of "standard" functions to be passed to LSB
- clean up and actually drop some non-used functions
- remove some functions from export list (in Versions file)
I'll try to create a list. Basically it'll be almost as same as the
list of functions with count > 0, plus some related ones.
Then, let's discuss and clean up...
BTW, regarding Versions. The versioned symbols for newly added
functions seem not set properly as expected. We have entries
ALSA_0.9 {
global:
__snd_*;
_snd_*;
snd_*;
local:
*;
};
and thus the rest functions after this all belong to ALSA_0.9 in the
end (except for functions explicitly defined with obsolete macros in
pcm.c). It means, we'll need to stick with ALSA_0.9 tag no matter
which version is added. Only if the function API is changed and
double definitions are needed, we'll tag to another version...
Oh well.
Takashi
AppUsage Iname
36 snd_pcm_hw_params_set_format
36 snd_pcm_hw_params_set_access
36 snd_pcm_hw_params_any
36 snd_pcm_open
36 snd_pcm_hw_params
36 snd_pcm_prepare
35 snd_strerror
35 snd_pcm_close
35 snd_pcm_writei
34 snd_pcm_hw_params_set_channels
29 snd_pcm_sw_params_current
28 snd_pcm_sw_params
28 snd_pcm_sw_params_set_start_threshold
27 snd_pcm_readi
25 snd_pcm_drop
24 snd_pcm_avail_update
23 snd_pcm_state
23 snd_pcm_resume
22 snd_ctl_open
22 snd_ctl_close
22 snd_card_next
22 snd_pcm_sw_params_set_avail_min
22 snd_pcm_start
21 snd_ctl_pcm_next_device
21 snd_pcm_hw_params_malloc
20 snd_pcm_hw_params_free
20 snd_pcm_nonblock
19 snd_pcm_pause
19 snd_pcm_info_set_stream
19 snd_ctl_pcm_info
19 snd_pcm_info_get_name
19 snd_pcm_status
19 snd_pcm_info_set_device
18 snd_pcm_hw_params_set_rate_near
18 snd_pcm_sw_params_set_xfer_align
18 snd_pcm_info_set_subdevice
17 snd_ctl_card_info_get_name
17 snd_ctl_card_info
17 snd_pcm_hw_params_sizeof
16 snd_pcm_hw_params_get_format_mask
16 snd_pcm_status_get_avail
16 snd_pcm_hw_params_set_period_size_near
16 snd_pcm_format_physical_width
16 snd_lib_error_set_handler
16 snd_pcm_format_mask_test
15 snd_pcm_sw_params_free
15 snd_pcm_info_free
15 snd_ctl_card_info_get_id
15 snd_pcm_sw_params_malloc
15 snd_pcm_info_malloc
14 snd_pcm_format_mask_malloc
14 snd_pcm_sw_params_sizeof
14 snd_seq_set_client_name
14 snd_seq_open
14 snd_pcm_format_mask_free
13 snd_pcm_format_width
13 snd_pcm_format_big_endian
13 snd_pcm_format_linear
13 snd_pcm_build_linear_format
13 snd_ctl_card_info_free
13 snd_pcm_info_get_id
13 snd_seq_create_simple_port
13 snd_seq_close
13 snd_ctl_card_info_malloc
13 snd_pcm_status_free
13 snd_pcm_format_signed
13 snd_pcm_info_get_subdevices_count
13 snd_pcm_status_malloc
13 __snd_pcm_hw_params_set_tick_time_last
13 __snd_pcm_hw_params_get_period_time
13 __snd_pcm_hw_params_get_periods
13 __snd_pcm_hw_params_set_access_last
13 __snd_pcm_hw_params_set_buffer_size_near
13 __snd_pcm_hw_params_get_periods_max
13 __snd_pcm_hw_params_get_period_size_min
13 __snd_pcm_hw_params_set_format_last
13 __snd_pcm_hw_params_set_period_time_first
13 __snd_pcm_hw_params_set_period_time_last
13 __snd_pcm_hw_params_set_channels_last
13 __snd_pcm_hw_params_get_tick_time_min
13 __snd_pcm_hw_params_set_buffer_size_first
13 __snd_pcm_hw_params_get_period_time_max
13 __snd_pcm_hw_params_get_tick_time_max
13 __snd_pcm_hw_params_get_rate
13 __snd_pcm_hw_params_get_subformat
13 __snd_pcm_hw_params_get_tick_time
13 __snd_pcm_hw_params_get_rate_max
13 __snd_pcm_hw_params_get_period_size
13 __snd_pcm_hw_params_set_periods_first
13 __snd_pcm_hw_params_get_access
13 __snd_pcm_hw_params_set_rate_near
13 __snd_pcm_hw_params_set_buffer_size_last
13 __snd_pcm_hw_params_set_tick_time_first
13 __snd_pcm_hw_params_get_periods_min
13 __snd_pcm_hw_params_get_rate_min
13 __snd_pcm_hw_params_set_channels_first
13 __snd_pcm_hw_params_get_channels_max
13 __snd_pcm_hw_params_get_buffer_time_min
13 __snd_pcm_hw_params_get_period_size_max
13 __snd_pcm_hw_params_get_channels_min
13 __snd_pcm_hw_params_get_buffer_time_max
13 __snd_pcm_hw_params_get_buffer_size_max
13 __snd_pcm_hw_params_get_buffer_size
13 __snd_pcm_hw_params_get_buffer_time
13 __snd_pcm_hw_params_get_period_time_min
13 __snd_pcm_hw_params_set_format_first
13 __snd_pcm_hw_params_set_period_size_first
13 __snd_pcm_hw_params_get_channels
13 __snd_pcm_hw_params_set_rate_last
13 __snd_pcm_hw_params_get_format
13 __snd_pcm_hw_params_set_buffer_time_near
13 __snd_pcm_hw_params_get_buffer_size_min
13 __snd_pcm_hw_params_set_channels_near
13 __snd_pcm_hw_params_set_subformat_last
13 __snd_pcm_hw_params_set_subformat_first
13 __snd_pcm_hw_params_set_rate_first
13 __snd_pcm_hw_params_set_period_size_last
13 __snd_pcm_hw_params_set_period_size_near
13 __snd_pcm_hw_params_set_period_time_near
13 __snd_pcm_hw_params_set_tick_time_near
13 __snd_pcm_hw_params_set_periods_near
13 __snd_pcm_hw_params_set_buffer_time_last
13 __snd_pcm_hw_params_set_periods_last
13 __snd_pcm_hw_params_set_buffer_time_first
11 snd_seq_event_input
11 snd_pcm_drain
11 snd_pcm_hw_params_get_buffer_size
10 snd_mixer_selem_get_playback_volume
10 snd_mixer_selem_register
10 snd_mixer_attach
10 snd_mixer_selem_get_playback_volume_range
10 snd_pcm_hw_params_set_periods_near
10 snd_pcm_hw_params_get_period_size
10 snd_mixer_open
10 snd_mixer_load
10 snd_mixer_close
9 snd_mixer_elem_next
9 snd_mixer_selem_has_playback_volume
9 snd_pcm_delay
9 snd_rawmidi_read
9 snd_seq_client_id
9 snd_rawmidi_close
9 snd_mixer_selem_has_playback_switch
9 snd_midi_event_new
9 snd_mixer_first_elem
9 snd_rawmidi_open
8 snd_pcm_hw_params_get_rate
8 snd_seq_poll_descriptors
8 snd_mixer_selem_set_playback_switch_all
8 snd_mixer_selem_get_name
8 snd_mixer_selem_get_capture_volume
8 snd_rawmidi_write
8 snd_mixer_selem_set_playback_volume
8 snd_seq_port_info_sizeof
8 snd_mixer_selem_has_capture_volume
8 snd_mixer_selem_has_capture_switch
8 snd_midi_event_free
8 snd_mixer_selem_set_capture_switch_all
8 snd_rawmidi_nonblock
7 snd_rawmidi_info_free
7 snd_seq_client_info_sizeof
7 snd_pcm_sw_params_set_silence_size
7 snd_rawmidi_info_malloc
7 snd_ctl_rawmidi_info
7 snd_rawmidi_info_get_name
7 snd_midi_event_encode_byte
7 snd_ctl_rawmidi_next_device
7 snd_rawmidi_info_set_device
7 snd_seq_port_info_set_port
7 snd_rawmidi_info_set_stream
7 snd_pcm_hw_params_set_buffer_size_near
7 snd_rawmidi_info_set_subdevice
7 snd_rawmidi_info_get_id
7 snd_rawmidi_info_get_subdevices_count
7 snd_mixer_selem_get_capture_volume_range
7 snd_mixer_selem_is_playback_mono
7 snd_pcm_sw_params_set_stop_threshold
7 snd_pcm_hw_params_can_pause
6 snd_ctl_card_info_get_mixername
6 snd_seq_free_event
6 snd_pcm_hw_params_set_buffer_time_near
6 snd_pcm_hw_params_get_channels_max
6 snd_seq_poll_descriptors_count
6 snd_mixer_selem_get_capture_switch
6 snd_pcm_sw_params_set_silence_threshold
6 snd_mixer_selem_has_playback_channel
6 snd_pcm_status_sizeof
6 snd_pcm_hw_params_set_period_time_near
6 snd_mixer_selem_set_capture_volume
6 snd_config_search
6 snd_mixer_selem_channel_name
6 snd_seq_query_next_port
6 snd_pcm_info_sizeof
6 snd_pcm_hw_params_get_channels_min
6 snd_pcm_hw_params_set_rate
6 snd_mixer_selem_get_playback_switch
6 snd_mixer_selem_is_capture_mono
6 snd_seq_port_info_set_client
6 snd_mixer_selem_is_active
6 snd_mixer_selem_has_capture_channel
6 snd_pcm_hw_params_test_format
6 snd_config_update
5 snd_seq_port_subscribe_set_sender
5 snd_seq_port_subscribe_set_dest
5 snd_config_iterator_end
5 snd_config_iterator_next
5 snd_seq_port_info_get_name
5 snd_seq_port_info_get_capability
5 snd_config_iterator_first
5 snd_seq_connect_to
5 snd_pcm_hw_params_get_channels
5 snd_pcm_hw_params_get_buffer_size_min
5 snd_seq_subscribe_port
5 snd_pcm_hw_params_get_period_size_min
5 snd_seq_port_info_get_addr
5 snd_seq_event_input_pending
5 snd_seq_query_next_client
5 snd_seq_event_output
5 snd_config_iterator_entry
5 snd_seq_client_info_get_client
5 snd_seq_drain_output
5 snd_seq_client_info_set_client
5 snd_config_get_string
5 snd_seq_port_info_get_port
4 snd_pcm_hw_params_get_buffer_size_max
4 snd_pcm_hw_params_get_rate_min
4 snd_pcm_bytes_to_frames
4 snd_ctl_card_info_sizeof
4 snd_pcm_hw_params_get_rate_max
4 snd_pcm_hw_params_can_resume
4 snd_card_get_name
4 snd_pcm_hw_params_get_period_size_max
4 snd_pcm_frames_to_bytes
4 snd_pcm_status_get_trigger_tstamp
4 snd_pcm_wait
3 snd_pcm_poll_descriptors
3 snd_pcm_hw_params_is_double
3 snd_pcm_hw_params_is_batch
3 snd_pcm_hw_params_get_tick_time
3 snd_pcm_hw_params_can_sync_start
3 snd_pcm_status_get_state
3 snd_seq_port_info_set_name
3 snd_pcm_hw_params_get_periods_max
3 snd_pcm_hw_params_get_period_time
3 snd_async_add_pcm_handler
3 snd_seq_port_subscribe_sizeof
3 snd_pcm_mmap_commit
3 snd_pcm_hw_params_test_rate
3 snd_pcm_hw_params_get_access
3 snd_pcm_hw_params_can_overrange
3 snd_pcm_writen
3 snd_pcm_hw_params_get_format
3 snd_pcm_hw_params_is_half_duplex
3 snd_seq_event_output_direct
3 snd_pcm_hw_params_is_joint_duplex
3 snd_seq_connect_from
3 snd_pcm_hw_params_get_buffer_time
3 snd_config_get_id
3 snd_seq_client_info_get_name
3 snd_pcm_mmap_begin
3 snd_seq_port_info_set_capability
3 snd_pcm_hw_params_can_mmap_sample_resolution
3 snd_pcm_poll_descriptors_count
3 snd_pcm_link
3 snd_config
3 snd_pcm_hw_params_get_periods
3 snd_pcm_hw_params_set_channels_near
3 snd_pcm_hw_params_test_access
3 snd_pcm_hw_params_is_block_transfer
3 snd_pcm_hw_params_set_rate_resample
2 snd_seq_disconnect_from
2 snd_config_get_type
2 snd_mixer_selem_id_sizeof
2 snd_pcm_hw_params_get_period_time_max
2 snd_pcm_poll_descriptors_revents
2 snd_seq_delete_simple_port
2 snd_pcm_access_mask_test
2 snd_ctl_elem_value_clear
2 snd_config_get_integer
2 snd_pcm_access_name
2 snd_seq_port_info_get_client
2 snd_ctl_elem_value_set_integer
2 snd_mixer_selem_id_get_name
2 snd_pcm_mmap_readi
2 snd_ctl_elem_info_is_readable
2 snd_hctl_close
2 snd_ctl_elem_info_malloc
2 snd_pcm_mmap_writei
2 snd_ctl_name
2 snd_hwdep_close
2 snd_hwdep_open
2 snd_hwdep_info
2 snd_pcm_hw_params_get_access_mask
2 snd_pcm_format_set_silence
2 snd_hctl_load
2 snd_hctl_find_elem
2 snd_hctl_free
2 snd_pcm_sw_params_set_tstamp_mode
2 snd_pcm_hw_params_get_periods_min
2 snd_pcm_hw_params_test_channels
2 snd_pcm_sw_params_set_xrun_mode
2 snd_ctl_elem_value_get_integer
2 snd_pcm_hw_params_get_tick_time_max
2 snd_async_handler_get_callback_private
2 snd_hctl_open
2 snd_pcm_hw_params_get_tick_time_min
2 snd_pcm_readn
2 snd_seq_unsubscribe_port
2 snd_hctl_elem_info
2 snd_pcm_access_mask_sizeof
2 snd_seq_disconnect_to
2 snd_pcm_hw_params_dump
2 snd_pcm_hw_params_get_period_time_min
2 snd_pcm_rewind
2 snd_seq_client_info_get_type
2 snd_pcm_hw_params_copy
2 snd_seq_create_port
2 snd_pcm_type
2 snd_hwdep_info_sizeof
2 snd_hctl_elem_write
2 snd_ctl_elem_value_free
2 snd_ctl_elem_info_get_count
2 snd_pcm_hw_params_set_period_size
2 snd_seq_port_info_get_type
2 snd_ctl_elem_id_set_name
2 snd_ctl_elem_id_clear
2 snd_ctl_elem_info_free
2 snd_pcm_hwsync
2 snd_pcm_info
2 snd_seq_port_info_set_type
2 snd_mixer_selem_set_playback_volume_all
2 snd_ctl_elem_info_clear
2 snd_pcm_state_name
2 snd_pcm_sw_params_get_boundary
2 snd_hctl_elem_read
2 snd_ctl_elem_id_malloc
2 snd_ctl_elem_id_set_interface
2 snd_pcm_format_mask_sizeof
2 snd_ctl_elem_id_free
2 snd_rawmidi_poll_descriptors_count
2 snd_rawmidi_poll_descriptors
2 snd_pcm_hw_params_get_buffer_time_max
2 snd_midi_event_decode
2 snd_pcm_format_cpu_endian
2 snd_ctl_elem_value_malloc
2 snd_mixer_selem_set_capture_volume_all
2 snd_ctl_elem_info_get_step
2 snd_seq_port_subscribe_free
2 snd_output_stdio_attach
2 snd_ctl_elem_info_get_min
2 snd_seq_port_subscribe_malloc
2 snd_mixer_selem_id_get_index
2 snd_pcm_status_get_tstamp
2 snd_pcm_hw_params_get_buffer_time_min
2 snd_pcm_format_name
2 snd_ctl_elem_info_get_max
1 snd_seq_port_subscribe_copy
1 snd_pcm_sw_params_set_sleep_min
1 snd_timer_info_get_resolution
1 snd_ctl_hwdep_next_device
1 snd_midi_event_init
1 snd_mixer_selem_get_id
1 snd_pcm_forward
1 snd_pcm_hw_params_test_period_size
1 snd_mixer_find_selem
1 snd_config_add
1 snd_pcm_areas_silence
1 snd_timer_poll_descriptors_count
1 snd_pcm_hw_free
1 snd_timer_params_set_ticks
1 snd_seq_poll_descriptors_revents
1 snd_seq_port_info_free
1 snd_pcm_hw_params_get_sbits
1 snd_seq_query_subscribe_set_root
1 snd_pcm_format_description
1 snd_pcm_status_dump
1 snd_pcm_sw_params_dump
1 snd_seq_get_client_info
1 snd_seq_query_subscribe_get_root
1 snd_timer_params_set_auto_start
1 snd_timer_params
1 snd_timer_open
1 snd_mixer_selem_id_set_name
1 snd_pcm_area_copy
1 snd_rawmidi_poll_descriptors_revents
1 snd_timer_read
1 snd_timer_id_malloc
1 snd_seq_port_subscribe_get_exclusive
1 snd_mixer_selem_has_common_volume
1 snd_timer_params_get_ticks
1 snd_seq_alloc_queue
1 snd_asoundlib_version
1 snd_seq_port_info_set_port_specified
1 snd_timer_close
1 snd_mixer_detach
1 snd_timer_info_malloc
1 snd_seq_client_info_set_name
1 snd_seq_port_subscribe_get_sender
1 snd_seq_query_subscribe_get_addr
1 snd_seq_query_subscribe_get_queue
1 snd_seq_port_subscribe_get_time_real
1 snd_seq_port_subscribe_set_exclusive
1 snd_config_substitute
1 snd_seq_query_subscribe_get_time_real
1 snd_timer_stop
1 snd_timer_info
1 snd_seq_query_subscribe_get_exclusive
1 snd_output_close
1 snd_seq_port_subscribe_get_time_update
1 snd_seq_port_subscribe_set_time_update
1 snd_seq_port_subscribe_get_dest
1 snd_timer_params_malloc
1 snd_seq_port_subscribe_get_queue
1 snd_config_copy
1 snd_seq_query_subscribe_get_index
1 snd_seq_set_client_info
1 snd_seq_port_subscribe_set_queue
1 snd_seq_port_info_malloc
1 snd_config_get_ascii
1 snd_seq_queue_tempo_set_ppq
1 snd_seq_query_subscribe_set_type
1 snd_pcm_hw_params_get_rate_numden
1 snd_midi_event_reset_encode
1 snd_seq_queue_tempo_sizeof
1 snd_pcm_open_lconf
1 snd_ctl_hwdep_info
1 snd_pcm_hw_params_get_subformat
1 snd_pcm_hw_params_set_periods
1 snd_seq_query_subscribe_sizeof
1 snd_mixer_elem_get_type
1 snd_seq_query_subscribe_get_time_update
1 snd_seq_query_subscribe_set_index
1 snd_config_search_alias_hooks
1 snd_card_get_longname
1 snd_config_imake_integer
1 snd_seq_query_port_subscribers
1 snd_seq_queue_tempo_set_tempo
1 snd_config_update_free_global
1 snd_hwdep_info_set_device
1 snd_seq_get_any_client_info
1 snd_pcm_dump
1 snd_seq_set_port_info
1 snd_seq_get_port_info
1 snd_mixer_selem_has_playback_switch_joined
1 snd_hwdep_poll_descriptors
1 snd_pcm_format_size
1 snd_seq_delete_port
1 snd_seq_control_queue
1 snd_seq_event_length
1 snd_config_delete
1 snd_mixer_selem_id_set_index
1 snd_pcm_hw_params_set_periods_min
1 snd_seq_port_info_set_midi_channels
1 snd_mixer_selem_has_playback_volume_joined
1 snd_seq_free_queue
1 snd_hwdep_ioctl
1 snd_pcm_hw_params_set_periods_integer
1 snd_seq_parse_address
1 snd_timer_poll_descriptors
1 snd_async_del_handler
1 snd_pcm_status_get_avail_max
1 snd_seq_get_any_port_info
1 snd_hwdep_info_get_iface
1 snd_mixer_selem_set_playback_switch
1 snd_seq_port_subscribe_set_time_real
1 snd_timer_start
1 snd_hwdep_info_get_name
1 snd_midi_event_encode
1 snd_pcm_status_get_delay
1 snd_hwdep_read
1 snd_seq_set_queue_tempo
0 snd_instr_header_get_id
0 snd_pcm_unlink
0 snd_pcm_hw_params_set_access_first
0 snd_ctl_rawmidi_prefer_subdevice
0 snd_pcm_hw_params_test_buffer_size
0 snd_pcm_info_get_subdevices_avail
0 snd_pcm_sw_params_get_silence_size
0 snd_ctl_elem_list_malloc
0 snd_output_buffer_open
0 snd_pcm_samples_to_bytes
0 snd_pcm_null_open
0 snd_pcm_hook_get_private
0 snd_pcm_status_get_htstamp
0 snd_ctl_elem_value_get_bytes
0 snd_ctl_elem_list_set_offset
0 snd_ctl_elem_value_get_name
0 snd_timer_params_set_early_event
0 snd_pcm_meter_get_rate
0 snd_config_save
0 snd_pcm_meter_get_boundary
0 snd_pcm_meter_get_bufsize
0 snd_seq_remove_events_get_queue
0 snd_pcm_mulaw_open
0 snd_hwdep_info_get_id
0 snd_hctl_elem_prev
0 snd_pcm_info_get_sync
0 snd_config_search_definition
0 snd_pcm_multi_open
0 snd_pcm_meter_search_scope
0 snd_hwdep_dsp_status_get_dsp_loaded
0 snd_ctl_event_elem_get_numid
0 snd_hctl_poll_descriptors
0 snd_pcm_mmap_writen
0 snd_mixer_elem_empty
0 snd_pcm_info_get_device
0 snd_instr_header_get_alias
0 snd_pcm_hw_params_set_period_size_max
0 snd_pcm_hw_params_set_period_size_integer
0 snd_pcm_hw_params_set_period_size_first
0 snd_pcm_hw_params_set_buffer_time_min
0 snd_pcm_hw_params_get_fifo_size
0 snd_mixer_elem_get_callback_private
0 snd_ctl_elem_info_set_id
0 snd_pcm_hw_params_set_format_last
0 snd_seq_port_info_get_timestamp_real
0 snd_pcm_hw_params_set_period_time_min
0 snd_pcm_scope_set_name
0 snd_seq_set_client_pool
0 snd_pcm_hw_params_set_periods_last
0 snd_pcm_hw_params_set_periods_first
0 snd_pcm_hw_params_set_period_time_minmax
0 snd_pcm_hw_params_set_period_time_max
0 snd_pcm_hw_params_set_period_size_minmax
0 snd_pcm_hw_params_set_period_size_min
0 snd_pcm_hw_params_set_period_time_last
0 snd_pcm_hw_params_set_period_time_first
0 snd_pcm_hw_params_set_period_time
0 snd_config_get_integer64
0 snd_pcm_hw_params_set_access_last
0 snd_pcm_meter_get_now
0 snd_pcm_hw_params_set_buffer_size_last
0 snd_pcm_hw_open_fd
0 snd_pcm_hw_params_set_buffer_size
0 snd_seq_reset_pool_input
0 snd_ctl_card_info_get_card
0 snd_pcm_hw_params_get_subformat_mask
0 snd_ctl_elem_remove
0 snd_pcm_scope_s16_get_channel_buffer
0 snd_timer_query_next_device
0 snd_pcm_hw_params_set_channels_first
0 snd_pcm_hw_params_set_buffer_time_minmax
0 snd_pcm_hw_params_set_buffer_time_max
0 snd_pcm_scope_set_ops
0 snd_pcm_hw_params_set_channels_min
0 snd_pcm_hw_params_set_channels_last
0 snd_ctl_elem_info_set_interface
0 snd_pcm_hw_params_set_buffer_size_min
0 snd_pcm_hw_params_set_buffer_size_max
0 snd_hctl_elem_get_index
0 snd_pcm_hw_params_set_buffer_time_first
0 snd_pcm_hw_params_set_buffer_time
0 snd_pcm_hw_params_test_tick_time
0 snd_pcm_hw_params_test_subformat
0 snd_seq_get_input_buffer_size
0 snd_pcm_info_copy
0 snd_dlclose
0 snd_config_get_bool
0 snd_pcm_hw_params_set_buffer_size_first
0 snd_seq_queue_timer_get_type
0 snd_ctl_elem_info_get_device
0 snd_instr_fm_convert_from_stream
0 snd_pcm_hw_open
0 snd_pcm_hw_params_test_period_time
0 snd_ctl_poll_descriptors_revents
0 snd_pcm_hook_get_pcm
0 snd_pcm_info_get_stream
0 snd_pcm_info_get_subdevice
0 snd_ctl_elem_value_set_enumerated
0 snd_pcm_info_get_subclass
0 snd_pcm_info_get_class
0 snd_ctl_elem_value_set_name
0 snd_pcm_hw_params_set_period_size_last
0 snd_pcm_hook_set_private
0 snd_pcm_hooks_open
0 snd_pcm_hw_params_set_format_mask
0 snd_pcm_hw_params_set_subformat_first
0 snd_timer_query_open_lconf
0 snd_pcm_hw_params_set_rate_minmax
0 snd_hctl_elem_get_subdevice
0 snd_instr_header_set_name
0 snd_pcm_hw_params_set_subformat_mask
0 snd_ctl_elem_info_get_index
0 snd_pcm_hw_params_set_periods_minmax
0 snd_ctl_elem_list_get_numid
0 snd_pcm_hw_params_set_rate_max
0 snd_pcm_hw_params_set_rate_last
0 snd_pcm_hw_params_set_rate_first
0 snd_pcm_format_silence_64
0 snd_ctl_elem_info_is_locked
0 snd_input_gets
0 snd_pcm_iec958_open
0 snd_pcm_name
0 snd_pcm_hw_params_test_buffer_time
0 snd_pcm_hw_params_set_tick_time_max
0 snd_ctl_elem_info_is_volatile
0 snd_pcm_hw_params_set_tick_time_first
0 snd_pcm_hw_params_set_tick_time_near
0 snd_seq_client_info_get_event_lost
0 snd_pcm_hw_params_set_tick_time_minmax
0 snd_seq_queue_tempo_set_skew
0 snd_seq_queue_timer_free
0 snd_seq_queue_timer_get_queue
0 snd_ctl_event_clear
0 snd_seq_queue_timer_copy
0 snd_seq_queue_timer_set_id
0 snd_seq_queue_timer_set_resolution
0 snd_seq_queue_timer_get_resolution
0 snd_seq_port_info_copy
0 snd_seq_queue_status_get_status
0 snd_seq_queue_tempo_copy
0 snd_seq_queue_tempo_free
0 snd_seq_queue_status_get_tick_time
0 snd_seq_queue_status_malloc
0 snd_seq_queue_tempo_get_skew_base
0 snd_seq_queue_tempo_get_tempo
0 snd_seq_queue_tempo_get_ppq
0 snd_seq_queue_tempo_get_skew
0 snd_seq_remove_events_get_time
0 snd_seq_remove_events_set_condition
0 snd_seq_remove_events_set_dest
0 snd_seq_remove_events_malloc
0 snd_config_searchva
0 snd_seq_remove_events_set_tag
0 snd_timer_info_get_ticks
0 snd_seq_remove_events_set_event_type
0 snd_seq_type
0 snd_seq_queue_timer_set_type
0 snd_seq_remove_events_free
0 snd_seq_queue_timer_sizeof
0 snd_seq_remove_events
0 snd_hwdep_dsp_status_malloc
0 snd_seq_remove_events_get_event_type
0 snd_seq_remove_events_get_tag
0 snd_seq_remove_events_get_condition
0 snd_ctl_event_elem_get_index
0 snd_pcm_format_mask_copy
0 snd_instr_iwffff_open
0 snd_seq_query_named_queue
0 snd_config_set_string
0 snd_config_test_id
0 snd_seq_query_subscribe_get_port
0 snd_mixer_poll_descriptors_revents
0 snd_seq_query_subscribe_get_client
0 snd_seq_query_subscribe_get_num_subs
0 snd_seq_port_info_get_synth_voices
0 snd_seq_port_info_set_addr
0 snd_seq_port_info_set_midi_voices
0 snd_seq_port_info_get_timestamp_queue
0 snd_seq_port_info_get_timestamping
0 snd_seq_client_pool_get_output_room
0 snd_seq_port_info_set_timestamp_real
0 snd_timer_params_get_queue_size
0 snd_seq_port_info_set_synth_voices
0 snd_seq_queue_info_get_queue
0 snd_pcm_access_mask_empty
0 snd_seq_queue_info_set_owner
0 snd_seq_queue_info_malloc
0 snd_seq_queue_info_set_flags
0 snd_seq_queue_status_free
0 snd_seq_queue_status_get_events
0 snd_seq_queue_info_sizeof
0 snd_instr_fm_convert_to_stream
0 snd_seq_query_subscribe_get_type
0 snd_rawmidi_params_sizeof
0 snd_seq_queue_info_copy
0 snd_seq_extract_output
0 snd_seq_query_subscribe_set_client
0 snd_seq_queue_info_get_name
0 snd_pcm_dsnoop_open
0 snd_seq_queue_info_get_flags
0 snd_seq_queue_info_get_locked
0 snd_timer_open_lconf
0 snd_timer_params_free
0 snd_timer_info_sizeof
0 snd_timer_name
0 snd_timer_params_set_exclusive
0 snd_timer_params_set_queue_size
0 snd_timer_params_get_auto_start
0 snd_timer_params_get_early_event
0 snd_timer_id_set_card
0 snd_timer_id_set_subdevice
0 snd_timer_id_sizeof
0 snd_timer_id_set_class
0 snd_timer_id_set_sclass
0 snd_timer_info_get_card
0 snd_timer_info_get_name
0 snd_instr_simple_convert_to_stream
0 snd_rawmidi_status_get_avail
0 snd_instr_iwffff_load
0 snd_timer_status_get_resolution
0 snd_config_imake_string
0 snd_timer_status_get_overrun
0 snd_timer_status_get_queue
0 snd_timer_type
0 snd_user_file
0 snd_timer_status_malloc
0 snd_timer_status_sizeof
0 snd_timer_params_sizeof
0 snd_timer_query_params
0 snd_timer_query_status
0 snd_timer_poll_descriptors_revents
0 snd_timer_query_close
0 snd_rawmidi_open_lconf
0 snd_timer_status_free
0 snd_seq_port_info_set_timestamp_queue
0 snd_timer_status
0 snd_seq_set_input_buffer_size
0 snd_ctl_elem_value_get_interface
0 snd_seq_system_info
0 snd_seq_set_queue_info
0 snd_timer_id_set_device
0 snd_seq_system_info_get_clients
0 snd_ctl_elem_value_set_device
0 snd_seq_system_info_free
0 snd_seq_system_info_get_channels
0 snd_seq_remove_events_set_time
0 snd_seq_set_bit
0 snd_seq_set_client_event_filter
0 snd_seq_remove_events_sizeof
0 snd_seq_reset_pool_output
0 snd_ctl_elem_value_copy
0 snd_seq_set_client_pool_output_room
0 snd_pcm_hw_params_set_format_first
0 snd_hctl_poll_descriptors_count
0 snd_spcm_init_duplex
0 snd_seq_remove_events_copy
0 snd_pcm_sw_params_get_start_threshold
0 snd_spcm_init_get_params
0 snd_ctl_elem_info_get_step64
0 snd_timer_id_get_device
0 snd_timer_id_get_sclass
0 snd_timer_id_free
0 snd_timer_id_get_class
0 snd_seq_system_info_get_cur_queues
0 snd_pcm_dshare_open
0 snd_seq_system_info_sizeof
0 snd_seq_system_info_get_ports
0 snd_seq_system_info_get_queues
0 snd_seq_port_info_get_port_specified
0 snd_shm_area_share
0 snd_seq_remove_events_set_queue
0 snd_seq_client_pool_set_input_pool
0 snd_ctl_elem_info_set_name
0 snd_pcm_tstamp_mode_name
0 snd_pcm_type_name
0 snd_async_add_ctl_handler
0 snd_timer_query_info
0 snd_rawmidi_drain
0 snd_dlopen
0 snd_ctl_elem_value_set_byte
0 snd_ctl_elem_list_get_id
0 snd_pcm_sw_params_get_avail_min
0 snd_pcm_sw_params_get_sleep_min
0 snd_pcm_sw_params_get_stop_threshold
0 snd_timer_params_copy
0 snd_pcm_sw_params_get_silence_threshold
0 snd_ctl_elem_iface_name
0 snd_config_hook_load_for_all_cards
0 snd_pcm_sw_params_get_tstamp_mode
0 snd_pcm_sw_params_get_xfer_align
0 snd_mixer_get_count
0 snd_rawmidi_name
0 snd_timer_status_copy
0 snd_mixer_get_callback_private
0 _snd_pcm_file_open
0 snd_rawmidi_params_get_avail_min
0 snd_shm_area_create
0 snd_rawmidi_params_copy
0 snd_rawmidi_params_current
0 snd_input_ungetc
0 snd_rawmidi_info_get_card
0 snd_rawmidi_info_get_device
0 snd_rawmidi_info
0 snd_ctl_elem_value_set_numid
0 snd_rawmidi_info_get_subdevice_name
0 snd_rawmidi_info_get_subdevices_avail
0 snd_pcm_status_get_overrange
0 snd_rawmidi_info_get_stream
0 snd_pcm_scope_get_name
0 snd_pcm_scope_s16_open
0 snd_pcm_scope_set_callback_private
0 snd_pcm_scope_malloc
0 snd_seq_client_pool_get_input_free
0 snd_pcm_shm_open
0 snd_ctl_elem_value_get_index
0 snd_pcm_hw_params_set_channels_minmax
0 snd_seq_queue_status_sizeof
0 snd_rawmidi_info_sizeof
0 snd_seq_remove_events_get_channel
0 snd_pcm_reset
0 snd_hctl_set_compare
0 snd_seq_query_subscribe_malloc
0 snd_pcm_route_open
0 snd_pcm_scope_get_callback_private
0 snd_pcm_route_determine_ttable
0 snd_pcm_route_load_ttable
0 snd_pcm_subformat_description
0 snd_pcm_subformat_mask_free
0 snd_timer_status_get_timestamp
0 snd_pcm_subformat_mask_any
0 snd_pcm_subformat_mask_copy
0 snd_pcm_subformat_mask_test
0 snd_pcm_sw_params_copy
0 snd_pcm_subformat_mask_set
0 snd_pcm_area_silence
0 snd_pcm_start_mode_name
0 snd_timer_params_get_exclusive
0 snd_mixer_poll_descriptors_count
0 snd_pcm_status_copy
0 snd_sctl_free
0 snd_pcm_stream
0 snd_ctl_elem_info_get_name
0 snd_pcm_status_get_trigger_htstamp
0 _snd_pcm_hw_open
0 snd_pcm_subformat_mask_none
0 snd_seq_queue_timer_get_id
0 snd_seq_drop_output
0 snd_seq_drop_output_buffer
0 snd_seq_event_types
0 snd_hctl_elem_get_interface
0 snd_seq_event_output_pending
0 snd_seq_event_types
0 snd_seq_client_pool_get_output_pool
0 snd_seq_client_pool_set_output_pool
0 snd_ctl_elem_read
0 snd_hctl_async
0 snd_seq_drop_input_buffer
0 snd_ctl_elem_info_sizeof
0 snd_seq_drop_input
0 snd_seq_client_pool_sizeof
0 snd_instr_header_copy
0 snd_seq_name
0 snd_pcm_subformat_name
0 snd_seq_queue_timer_malloc
0 snd_instr_fm_free
0 snd_seq_query_subscribe_copy
0 snd_seq_port_info_get_midi_voices
0 snd_seq_port_info_get_read_use
0 snd_mixer_elem_detach
0 snd_output_buffer_string
0 snd_seq_set_output_buffer_size
0 snd_seq_get_output_buffer_size
0 snd_seq_get_port_subscription
0 snd_seq_get_bit
0 snd_func_private_card_driver
0 snd_seq_get_queue_timer
0 snd_mixer_elem_remove
0 snd_seq_get_queue_status
0 snd_hwdep_dsp_image_free
0 snd_rawmidi_status_free
0 snd_rawmidi_status_get_xruns
0 snd_rawmidi_status_malloc
0 snd_timer_info_free
0 snd_rawmidi_status_get_tstamp
0 snd_sctl_build
0 snd_sctl_install
0 snd_rawmidi_stream
0 snd_rawmidi_type
0 snd_rawmidi_params_get_buffer_size
0 snd_rawmidi_params_set_buffer_size
0 snd_rawmidi_params_set_no_active_sensing
0 snd_rawmidi_params_get_no_active_sensing
0 snd_rawmidi_params_set_avail_min
0 snd_rawmidi_status
0 snd_rawmidi_status_copy
0 snd_seq_query_subscribe_set_port
0 snd_timer_query_open
0 snd_seq_client_info_set_broadcast_filter
0 snd_timer_status_get_lost
0 snd_seq_client_pool_copy
0 snd_seq_client_info_set_error_bounce
0 snd_seq_client_info_set_event_filter
0 snd_seq_client_pool_get_input_pool
0 snd_seq_client_pool_get_output_free
0 snd_seq_client_pool_free
0 snd_seq_client_pool_get_client
0 snd_sctl_remove
0 snd_seq_queue_info_free
0 snd_seq_client_info_free
0 snd_ctl_elem_id_get_subdevice
0 snd_seq_change_bit
0 snd_rawmidi_info_get_flags
0 snd_ctl_elem_info_is_indirect
0 snd_timer_params_set_filter
0 snd_pcm_format_silence_16
0 snd_ctl_event_copy
0 snd_ctl_event_elem_get_device
0 snd_ctl_elem_value_sizeof
0 snd_ctl_elem_write
0 snd_seq_remove_events_get_dest
0 snd_ctl_event_elem_get_name
0 snd_ctl_event_elem_get_subdevice
0 snd_ctl_event_elem_get_interface
0 snd_ctl_event_elem_get_mask
0 snd_config_imake_real
0 snd_ctl_elem_value_set_iec958
0 snd_seq_system_info_get_cur_clients
0 snd_hctl_nonblock
0 snd_seq_queue_status_get_queue
0 snd_config_expand
0 snd_ctl_elem_value_set_subdevice
0 snd_ctl_elem_value_set_integer64
0 snd_ctl_elem_value_set_interface
0 snd_pcm_hw_params_set_periods_max
0 snd_ctl_wait
0 snd_seq_queue_tempo_malloc
0 snd_pcm_hook_add
0 snd_ctl_set_power_state
0 snd_dlsym
0 snd_func_card_id
0 snd_hwdep_dsp_status_copy
0 snd_pcm_hw_params_set_rate_min
0 snd_ctl_elem_list_get_subdevice
0 snd_ctl_event_sizeof
0 snd_ctl_event_type_name
0 snd_ctl_event_get_type
0 snd_ctl_elem_id_set_subdevice
0 snd_mixer_selem_set_enum_item
0 snd_ctl_pcm_prefer_subdevice
0 snd_ctl_poll_descriptors
0 snd_ctl_get_power_state
0 snd_ctl_open_lconf
0 snd_midi_event_no_status
0 snd_ctl_elem_list_get_index
0 snd_ctl_elem_list_get_interface
0 snd_ctl_elem_list_get_count
0 snd_ctl_elem_list_get_device
0 snd_ctl_elem_list_get_name
0 snd_ctl_elem_list_get_used
0 snd_hctl_get_count
0 snd_func_refer
0 snd_func_card_driver
0 snd_timer_info_get_id
0 snd_ctl_elem_info_set_numid
0 snd_ctl_elem_id_set_index
0 snd_ctl_elem_info_set_index
0 snd_ctl_elem_list_alloc_space
0 snd_pcm_hw_params_set_buffer_time_last
0 snd_ctl_elem_list_free_space
0 snd_ctl_elem_list_clear
0 snd_ctl_elem_list_copy
0 snd_ctl_elem_list_sizeof
0 snd_ctl_elem_value_get_enumerated
0 snd_ctl_elem_value_get_id
0 snd_timer_params_get_filter
0 snd_ctl_elem_value_get_device
0 snd_ctl_elem_value_get_integer64
0 snd_ctl_elem_value_get_subdevice
0 snd_ctl_elem_value_set_boolean
0 snd_seq_client_info_copy
0 snd_ctl_elem_value_get_numid
0 snd_ctl_elem_set_bytes
0 snd_hwdep_poll_descriptors_revents
0 snd_ctl_elem_lock
0 snd_seq_client_pool_set_output_room
0 snd_ctl_elem_type_name
0 snd_seq_set_client_pool_input
0 snd_ctl_event_malloc
0 snd_ctl_elem_unlock
0 snd_seq_queue_status_get_real_time
0 snd_input_stdio_open
0 snd_hwdep_name
0 snd_hwdep_dsp_image_set_length
0 snd_hwdep_info_malloc
0 snd_hwdep_open_lconf
0 snd_pcm_sw_params_get_xrun_mode
0 snd_input_buffer_open
0 snd_mixer_selem_has_capture_switch_exclusive
0 snd_rawmidi_info_copy
0 snd_pcm_mmap_readn
0 snd_hwdep_dsp_status_get_id
0 snd_hwdep_dsp_status_free
0 snd_hwdep_dsp_status_get_chip_ready
0 snd_hwdep_dsp_status_get_num_dsps
0 snd_hwdep_info_free
0 snd_hwdep_info_get_card
0 snd_hwdep_dsp_status_get_version
0 snd_hwdep_dsp_status_sizeof
0 snd_input_close
0 snd_pcm_hw_params_set_subformat
0 snd_instr_header_get_name
0 snd_instr_header_get_follow_alias
0 snd_instr_header_get_format
0 snd_instr_header_get_type
0 snd_instr_header_set_cmd
0 snd_config_make_compound
0 snd_instr_header_set_alias
0 snd_instr_header_set_cluster
0 snd_pcm_hw_params_test_periods
0 snd_seq_queue_status_copy
0 snd_hctl_first_elem
0 snd_input_scanf
0 snd_seq_nonblock
0 snd_pcm_access_mask_malloc
0 snd_instr_header_get_data
0 snd_instr_header_free
0 snd_instr_header_get_cluster
0 snd_func_concat
0 snd_pcm_subformat_mask_empty
0 snd_hctl_elem_next
0 snd_hctl_elem_get_name
0 snd_hctl_elem_get_numid
0 snd_hwdep_dsp_load
0 snd_hctl_handle_events
0 snd_hctl_get_callback_private
0 snd_hctl_elem_set_callback
0 snd_hctl_elem_set_callback_private
0 snd_ctl_elem_id_get_numid
0 snd_hctl_compare_fast
0 snd_func_datadir
0 snd_func_igetenv
0 snd_hctl_ctl
0 snd_mixer_selem_get_enum_item
0 snd_pcm_rate_open
0 snd_hctl_elem_get_hctl
0 snd_hctl_elem_get_id
0 snd_hctl_last_elem
0 snd_hwdep_dsp_image_get_index
0 snd_hwdep_dsp_image_get_length
0 snd_seq_get_queue_tempo
0 snd_hwdep_dsp_image_get_image
0 snd_hwdep_dsp_image_malloc
0 snd_hwdep_dsp_image_set_name
0 snd_hwdep_dsp_image_sizeof
0 snd_hwdep_dsp_image_set_image
0 snd_hwdep_dsp_image_set_index
0 snd_hctl_open_ctl
0 snd_config_make
0 snd_pcm_access_mask_reset
0 snd_hctl_name
0 snd_hctl_poll_descriptors_revents
0 snd_hctl_wait
0 snd_hwdep_dsp_image_copy
0 snd_hctl_set_callback
0 snd_card_get_index
0 _snd_pcm_route_open
0 _snd_pcm_share_open
0 _snd_pcm_mulaw_open
0 _snd_pcm_multi_open
0 _snd_pcm_shm_open
0 snd_pcm_hw_params_set_tick_time
0 snd_seq_set_queue_usage
0 snd_config_set_pointer
0 snd_ctl_elem_info_set_item
0 _snd_pcm_hooks_open
0 snd_hwdep_type
0 snd_seq_system_info_copy
0 _snd_pcm_hook_ctl_elems_install
0 snd_hwdep_nonblock
0 _snd_pcm_linear_open
0 snd_ctl_type
0 _snd_pcm_iec958_open
0 snd_ctl_elem_info_set_device
0 snd_async_handler_get_ctl
0 snd_pcm_info_get_card
0 snd_config_get_ctl_iface
0 snd_config_delete_compound_members
0 snd_config_evaluate
0 snd_config_get_bool_ascii
0 snd_config_get_ireal
0 snd_ctl_card_info_get_longname
0 snd_config_get_ctl_iface_ascii
0 snd_ctl_card_info_clear
0 snd_rawmidi_params_free
0 snd_hctl_set_callback_private
0 snd_async_handler_get_fd
0 snd_async_handler_get_signo
0 snd_seq_queue_info_set_locked
0 snd_output_printf
0 snd_config_make_pointer
0 snd_card_load
0 snd_timer_continue
0 snd_mixer_elem_value
0 snd_ctl_subscribe_events
0 snd_timer_nonblock
0 snd_seq_queue_tempo_get_queue
0 snd_ctl_elem_info_get_subdevice
0 snd_timer_id_get_subdevice
0 snd_instr_header_get_len
0 snd_pcm_info_get_subdevice_name
0 snd_async_handler_get_pcm
0 snd_seq_get_client_pool
0 snd_hwdep_info_copy
0 snd_seq_set_queue_timer
0 snd_config_set_id
0 snd_hctl_elem_get_device
0 snd_pcm_file_open
0 snd_instr_header_malloc
0 snd_seq_open_lconf
0 snd_ctl_elem_id_get_device
0 snd_async_add_handler
0 snd_mixer_selem_has_capture_switch_joined
0 snd_timer_id_get_card
0 snd_seq_sync_output_queue
0 snd_ctl_nonblock
0 snd_hctl_elem_get_callback_private
0 _snd_pcm_alaw_open
0 _snd_pcm_dmix_open
0 _snd_pcm_dshare_open
0 _snd_pcm_asym_open
0 _snd_pcm_copy_open
0 snd_seq_client_info_get_num_ports
0 snd_pcm_hw_params_set_tick_time_min
0 snd_config_searchv
0 snd_seq_event_output_buffer
0 snd_ctl_poll_descriptors_count
0 snd_ctl_elem_value_set_index
0 snd_pcm_meter_add_scope
0 _snd_pcm_null_open
0 snd_mixer_selem_get_enum_items
0 snd_seq_port_info_set_timestamping
0 snd_ctl_elem_id_set_numid
0 snd_seq_alloc_named_queue
0 snd_ctl_elem_id_set_device
0 snd_ctl_elem_value_get_boolean
0 snd_ctl_elem_info
0 snd_seq_port_info_get_write_use
0 snd_pcm_format_float
0 snd_hwdep_write
0 snd_hwdep_info_get_device
0 snd_ctl_read
0 snd_rawmidi_info_get_subdevice
0 snd_ctl_elem_list
0 snd_ctl_elem_id_copy
0 snd_ctl_elem_id_get_name
0 snd_seq_client_pool_malloc
0 snd_ctl_elem_id_get_index
0 snd_ctl_elem_id_get_interface
0 snd_ctl_elem_info_copy
0 snd_ctl_elem_info_get_owner
0 snd_ctl_elem_info_get_type
0 snd_seq_client_info_get_error_bounce
0 snd_ctl_elem_info_get_numid
0 snd_ctl_elem_info_is_inactive
0 snd_ctl_elem_info_is_writable
0 _snd_pcm_ladspa_open
0 snd_ctl_elem_info_is_owner
0 snd_pcm_hw_params_set_tick_time_last
0 snd_ctl_elem_info_get_id
0 snd_ctl_elem_info_get_interface
0 snd_ctl_elem_info_get_dimension
0 snd_ctl_elem_info_get_dimensions
0 snd_ctl_elem_info_get_item_name
0 snd_ctl_elem_info_get_max64
0 snd_ctl_elem_info_get_min64
0 snd_ctl_elem_info_get_items
0 snd_mixer_last_elem
0 snd_config_get_pointer
0 snd_func_getenv
0 snd_instr_header_set_follow_alias
0 snd_config_load
0 snd_config_load_override
0 snd_config_make_integer
0 snd_config_make_string
0 snd_config_remove
0 snd_config_make_integer64
0 snd_instr_iwffff_convert_from_stream
0 snd_config_hook_load
0 snd_pcm_meter_get_channels
0 snd_config_get_real
0 snd_config_get_type_ascii
0 snd_config_imake_integer64
0 snd_pcm_subformat_mask_reset
0 snd_pcm_subformat_mask_malloc
0 snd_config_imake_pointer
0 snd_ctl_elem_value_set_id
0 snd_spcm_init
0 snd_config_top
0 snd_config_update_free
0 snd_config_set_integer64
0 snd_config_set_real
0 snd_seq_set_client_pool_output
0 snd_ctl_card_info_copy
0 snd_ctl_card_info_get_driver
0 snd_config_update_r
0 snd_pcm_hw_params_set_access_mask
0 snd_config_searcha
0 snd_config_searcha_hooks
0 snd_config_search_alias
0 snd_config_search_hooks
0 snd_seq_remove_events_set_channel
0 snd_input_getc
0 snd_config_set_integer
0 snd_config_searchva_hooks
0 snd_pcm_ladspa_open
0 snd_mixer_selem_id_copy
0 snd_pcm_share_open
0 snd_pcm_hw_params_set_subformat_last
0 snd_mixer_elem_prev
0 snd_mixer_selem_id_malloc
0 snd_mixer_selem_id_free
0 snd_ctl_elem_info_set_subdevice
0 snd_seq_client_info_malloc
0 snd_mixer_selem_get_index
0 snd_mixer_selem_has_common_switch
0 snd_mixer_selem_has_capture_volume_joined
0 snd_hwdep_poll_descriptors_count
0 snd_mixer_set_compare
0 snd_mixer_set_callback_private
0 snd_mixer_selem_set_playback_volume_range
0 snd_output_flush
0 snd_seq_port_info_get_midi_channels
0 snd_mixer_wait
0 snd_func_private_string
0 snd_mixer_selem_set_capture_switch
0 snd_mixer_selem_is_enumerated
0 snd_ctl_event_free
0 snd_input_stdio_attach
0 snd_mixer_selem_set_capture_volume_range
0 snd_mixer_selem_get_enum_item_name
0 snd_pcm_format_mask_none
0 snd_mixer_elem_attach
0 snd_mixer_elem_add
0 snd_seq_get_queue_usage
0 snd_seq_client_info_get_event_filter
0 snd_mixer_elem_info
0 snd_seq_queue_tempo_set_skew_base
0 snd_mixer_class_register
0 snd_pcm_dump_sw_setup
0 snd_mixer_class_unregister
0 snd_pcm_hw_params_current
0 snd_pcm_hw_params_set_buffer_size_minmax
0 snd_pcm_sw_params_get_start_mode
0 snd_shm_area_destroy
0 snd_pcm_hw_params_get_min_align
0 snd_ctl_elem_list_free
0 snd_rawmidi_status_sizeof
0 snd_mixer_selem_get_capture_group
0 snd_pcm_linear_open
0 snd_mixer_elem_set_callback_private
0 snd_mixer_elem_set_callback
0 snd_mixer_poll_descriptors
0 snd_mixer_handle_events
0 snd_mixer_free
0 snd_pcm_sw_params_set_start_mode
0 snd_hwdep_dsp_status
0 snd_seq_create_queue
0 snd_pcm_dump_setup
0 snd_ctl_card_info_get_components
0 snd_pcm_hw_params_set_channels_max
0 snd_ctl_elem_value_get_iec958
0 snd_seq_system_info_malloc
0 _snd_pcm_rate_open
0 snd_output_puts
0 snd_pcm_dump_hw_setup
0 snd_seq_queue_info_get_owner
0 snd_seq_get_queue_info
0 snd_pcm_stream_name
0 snd_pcm_format_silence
0 snd_pcm_xrun_mode_name
0 snd_pcm_format_value
0 snd_pcm_format_unsigned
0 snd_pcm_format_silence_32
0 snd_pcm_format_mask_any
0 snd_pcm_format_little_endian
0 snd_ctl_elem_id_sizeof
0 snd_pcm_format_mask_set
0 snd_pcm_format_mask_reset
0 snd_pcm_format_mask_empty
0 snd_timer_id_copy
0 snd_pcm_access_mask_none
0 snd_instr_header_get_cmd
0 snd_pcm_access_mask_free
0 snd_pcm_adpcm_open
0 snd_ctl_event_elem_get_id
0 snd_pcm_access_mask_set
0 snd_output_vprintf
0 snd_rawmidi_drop
0 snd_output_putc
0 snd_seq_queue_info_set_name
0 snd_pcm_access_mask_copy
0 snd_pcm_access_mask_any
0 snd_pcm_copy_open
0 snd_pcm_bytes_to_samples
0 _snd_pcm_adpcm_open
0 snd_seq_client_info_get_broadcast_filter
0 snd_pcm_dmix_open
0 snd_ctl_elem_value_get_byte
0 snd_pcm_alaw_open
0 snd_output_stdio_open
0 snd_rawmidi_params_malloc
0 snd_pcm_areas_copy
0 snd_pcm_subformat_mask_sizeof
0 snd_hwdep_dsp_image_get_name
0 snd_midi_event_reset_decode
0 snd_mixer_set_callback
0 snd_instr_iwffff_close
0 snd_instr_simple_convert_from_stream
0 _snd_pcm_dsnoop_open
0 snd_config_make_real
0 snd_instr_header_set_len
0 snd_instr_header_set_id
0 snd_instr_header_set_format
0 snd_instr_header_sizeof
0 snd_instr_header_set_type
0 snd_midi_event_resize_buffer
0 snd_instr_iwffff_open_rom_file
0 snd_instr_iwffff_open_rom
0 snd_pcm_hook_remove
0 snd_instr_simple_free
0 snd_timer_info_copy
0 snd_lib_error
0 snd_rawmidi_params
0 snd_instr_iwffff_convert_to_stream
0 snd_timer_info_is_slave
0 snd_seq_query_subscribe_free
0 snd_instr_iwffff_free
0 snd_config_set_ascii
0 snd_pcm_direct_shm_discard
0 snd_pcm_direct_check_interleave
0 snd_pcm_plugin_undo_read_generic
0 snd_pcm_direct_server_discard
0 snd_pcm_hw_param_get
0 snd_pcm_plugin_undo_write_generic
0 __snd_pcm_forward
0 snd_rawmidi_hw_ops
0 __snd_pcm_sw_params_get_tstamp_mode
0 snd_pcm_direct_initialize_slave
0 snd_pcm_hw_param_refine_multiple
0 snd_interval_refine_last
0 snd_pcm_direct_hw_refine
0 snd_pcm_direct_poll_revents
0 snd_pcm_direct_server_create
0 _snd_hwdep_hw_open
0 snd_interval_mulkdiv
0 snd_rawmidi_virtual_open
0 snd_pcm_hw_param_set_max
0 snd_pcm_hw_param_set_mask
0 _snd_func_private_card_driver_dlsym_config_evaluate_001
0 __snd_hwdep_hw_open_dlsym_hwdep_001
0 snd_pcm_direct_semaphore_create_or_connect
0 snd_pcm_direct_client_discard
0 snd_rawmidi_virtual_ops
0 _snd_timer_query_hw_open
0 __snd_pcm_multi_open_dlsym_pcm_001
0 __snd_pcm_hooks_open_dlsym_pcm_001
0 snd_pcm_direct_shm_create_or_connect
0 __snd_pcm_hook_ctl_elems_install_dlsym_pcm_001
0 snd_pcm_hw_param_set_last
0 snd_atomic_read_wait
0 snd_pcm_hw_param_set_near
0 snd_pcm_slave_conf
0 _snd_pcm_boundary
0 __snd_pcm_adpcm_open_dlsym_pcm_001
0 snd_pcm_direct_initialize_poll_fd
0 __snd_ctl_shm_open_dlsym_control_001
0 __snd_timer_params_set_filter
0 snd_pcm_open_slave
0 __snd_pcm_asym_open_dlsym_pcm_001
0 _snd_pcm_hw_param_set_max
0 __snd_pcm_alaw_open_dlsym_pcm_001
0 __snd_ctl_hw_open_dlsym_control_001
0 snd_interval_add
0 snd_pcm_hw_param_get_min
0 snd_interval_div
0 snd_hwdep_hw_open
0 snd_timer_query_hw_open
0 snd_pcm_adpcm_decode
0 __snd_pcm_sw_params_get_silence_threshold
0 snd_pcm_new
0 _snd_pcm_mmap_hw_ptr
0 __snd_pcm_copy_open_dlsym_pcm_001
0 snd_pcm_direct_async
0 __snd_pcm_hw_open_dlsym_pcm_001
0 __snd_timer_query_info
0 snd_pcm_plugin_fast_ops
0 snd_pcm_direct_client_connect
0 __snd_pcm_shm_open_dlsym_pcm_001
0 snd_pcm_plug_open
0 snd_pcm_areas_from_buf
0 _snd_pcm_hw_param_set_interval
0 snd_pcm_linear_get_index
0 snd_pcm_areas_from_bufs
0 snd_pcm_async
0 __snd_pcm_dmix_open_dlsym_pcm_001
0 snd_pcm_read_mmap
0 snd_pcm_channel_info_shm
0 _snd_rawmidi_virtual_open
0 _snd_ctl_poll_descriptor
0 __snd_timer_query_status
0 __snd_timer_query_params
0 _snd_ctl_hw_open
0 _snd_config_hook_load_dlsym_config_hook_001
0 snd_pcm_direct_mmap
0 snd_pcm_set_appl_ptr
0 __snd_timer_query_hw_open_dlsym_timer_query_001
0 snd_timer_hw_open
0 _snd_func_private_string_dlsym_config_evaluate_001
0 _snd_func_datadir_dlsym_config_evaluate_001
0 __snd_pcm_mulaw_open_dlsym_pcm_001
0 _snd_func_private_pcm_subdevice_dlsym_config_evaluate_001
0 _snd_func_pcm_id_dlsym_config_evaluate_001
0 __snd_pcm_null_open_dlsym_pcm_001
0 __snd_pcm_plug_open_dlsym_pcm_001
0 snd_shm_area_destructor
0 snd_pcm_linear_get32_index
0 snd_pcm_direct_info
0 __snd_pcm_sw_params_get_silence_size
0 __snd_pcm_sw_params_get_start_threshold
0 __snd_pcm_sw_params_get_sleep_min
0 __snd_pcm_share_open_dlsym_pcm_001
0 __snd_timer_params_get_exclusive
0 __snd_pcm_sw_params_get_avail_min
0 __snd_pcm_status_get_trigger_htstamp
0 __snd_timer_params_set_exclusive
0 __snd_timer_hw_open_dlsym_timer_001
0 snd_pcm_mulaw_encode
0 snd_pcm_alaw_decode
0 snd_pcm_hw_param_always_eq
0 snd_pcm_hw_refine
0 __snd_pcm_sw_params_get_stop_threshold
0 __snd_rawmidi_hw_open_dlsym_rawmidi_001
0 snd_pcm_conf_generic_id
0 snd_pcm_hw_param_never_eq
0 _snd_seq_hw_open
0 snd_pcm_hw_param_get_max
0 snd_pcm_hw_param_name
0 snd_pcm_mmap_appl_forward
0 _snd_pcm_hw_params_refine
0 _snd_pcm_hw_param_refine
0 snd_pcm_hw_param_get_mask
0 _snd_pcm_hw_param_set_minmax
0 snd_pcm_hw_param_set_integer
0 snd_pcm_hw_param_set
0 snd_pcm_set_hw_ptr
0 snd_pcm_hw_param_set_first
0 _snd_rawmidi_hw_open
0 _snd_pcm_plug_open
0 __snd_seq_hw_open_dlsym_seq_001
0 snd_pcm_direct_sw_params
0 _snd_pcm_poll_descriptor
0 __snd_pcm_ladspa_open_dlsym_pcm_001
0 _snd_func_getenv_dlsym_config_evaluate_001
0 __snd_pcm_hw_params_set_access_first
0 snd_pcm_hw_param_dump
0 __snd_pcm_meter_open_dlsym_pcm_001
0 _snd_func_refer_dlsym_config_evaluate_001
0 snd_pcm_read_areas
0 __snd_pcm_route_open_dlsym_pcm_001
0 __snd_pcm_iec958_open_dlsym_pcm_001
0 __snd_pcm_dshare_open_dlsym_pcm_001
0 snd_pcm_adpcm_encode
0 _snd_pcm_hw_params_any
0 _snd_pcm_hw_param_set_min
0 _snd_pcm_hw_param_set_empty
0 _snd_pcm_hw_param_set
0 _snd_pcm_hw_param_set_mask
0 snd_pcm_hw_param_empty
0 snd_pcm_plugin_init
0 _snd_func_igetenv_dlsym_config_evaluate_001
0 snd_is_local
0 _snd_config_hook_load_for_all_cards_dlsym_config_hook_001
0 snd_interval_refine_min
0 snd_pcm_munmap
0 snd_interval_refine_set
0 snd_pcm_hw_param_set_minmax
0 snd_rawmidi_hw_open
0 snd_receive_fd
0 snd_pcm_direct_parse_bindings
0 snd_ctl_hw_ops
0 snd_ctl_hw_open
0 __snd_pcm_rate_open_dlsym_pcm_001
0 __snd_ctl_elem_info_get_dimensions
0 _snd_ctl_shm_open
0 snd_interval_refine_max
0 snd_pcm_meter_open
0 __snd_rawmidi_virtual_open_dlsym_rawmidi_001
0 snd_pcm_hw_param_get_interval
0 snd_pcm_write_areas
0 snd_pcm_direct_hw_params
0 snd_ctl_new
0 _snd_func_card_id_dlsym_config_evaluate_001
0 _snd_func_card_driver_dlsym_config_evaluate_001
0 snd_pcm_link_hw_ptr
0 snd_pcm_unlink_hw_ptr
0 __snd_ctl_elem_info_get_dimension
0 __snd_pcm_sw_params_get_xfer_align
0 snd_pcm_linear_convert_index
0 snd_pcm_direct_hw_free
0 __snd_timer_params_get_filter
0 snd_interval_sub
0 snd_ctl_async
0 _snd_timer_hw_open
0 snd_pcm_linear_getput
0 snd_pcm_unlink_appl_ptr
0 snd_pcm_linear_put_index
0 snd_pcm_direct_channel_info
0 snd_seq_create_event
0 __snd_pcm_status_get_htstamp
0 snd_send_fd
0 snd_pcm_linear_put32_index
0 snd_interval_muldiv
0 snd_pcm_write_mmap
0 snd_pcm_linear_convert
0 snd_pcm_hw_fast_tstamp
0 snd_pcm_hw_refine_soft
0 snd_pcm_hw_param_refine_near
0 snd_pcm_mmap_hw_forward
0 snd_pcm_direct_munmap
0 snd_determine_driver
0 snd_interval_refine
0 snd_pcm_free
0 snd_pcm_link_appl_ptr
0 snd_pcm_hw_params_slave
0 snd_pcm_hw_param_set_min
0 snd_pcm_hw_refine_slave
0 snd_pcm_mmap_hw_backward
0 snd_interval_refine_first
0 snd_interval_mul
0 snd_pcm_hw_param_any
0 snd_pcm_direct_nonblock
0 snd_func_private_pcm_subdevice
0 snd_func_pcm_id
0 __snd_pcm_type_name
0 snd_pcm_mulaw_decode
0 snd_interval_print
0 __snd_pcm_linear_open_dlsym_pcm_001
0 snd_interval_muldivk
0 snd_pcm_alaw_encode
0 __snd_pcm_dsnoop_open_dlsym_pcm_001
0 snd_seq_hw_open
0 _snd_func_concat_dlsym_config_evaluate_001
0 _snd_pcm_meter_open
0 snd_seq_hw_ops
0 snd_ctl_shm_ops
0 snd_pcm_mmap
0 __snd_pcm_file_open_dlsym_pcm_001
0 snd_pcm_mmap_appl_backward
0 snd_ctl_shm_open
0 snd_timer_async
0 snd_pcm_lfloat_open
0 _snd_pcm_lfloat_open
0 snd_pcm_lfloat_convert_integer_float
0 snd_pcm_lfloat_convert_float_integer
0 snd_pcm_lfloat_put_s32_index
0 __snd_pcm_lfloat_open_dlsym_pcm_001
0 snd_pcm_lfloat_get_s32_index
0 snd_ctl_elem_add_integer64
0 snd_pcm_softvol_open
0 _snd_pcm_softvol_open
0 snd_ctl_elem_add_integer
0 snd_ctl_elem_add_iec958
0 snd_ctl_elem_info_is_user
0 snd_ctl_elem_add_boolean
0 __snd_pcm_softvol_open_dlsym_pcm_001
0 snd_timer_ginfo_get_name
0 snd_timer_ginfo_get_resolution
0 snd_pcm_ioplug_set_param_minmax
0 snd_timer_ginfo_get_resolution_max
0 snd_pcm_ioplug_reinit_status
0 snd_async_handler_get_timer
0 snd_async_add_timer_handler
0 snd_pcm_ioplug_set_param_list
0 snd_timer_ginfo_get_card
0 snd_pcm_ioplug_params_reset
0 snd_err_msg
0 snd_timer_ginfo_malloc
0 snd_timer_ginfo_get_tid
0 snd_timer_ginfo_copy
0 snd_timer_ginfo_get_clients
0 snd_pcm_hw_params_set_export_buffer
0 snd_pcm_ioplug_delete
0 snd_pcm_ioplug_mmap_areas
0 snd_timer_ginfo_get_id
0 snd_timer_ginfo_set_tid
0 snd_timer_ginfo_get_flags
0 snd_pcm_ioplug_create
0 snd_pcm_extplug_create
0 snd_pcm_extplug_params_reset
0 snd_timer_ginfo_sizeof
0 snd_pcm_extplug_delete
0 snd_pcm_extplug_set_param_minmax
0 snd_pcm_hw_params_get_rate_resample
0 snd_timer_ginfo_get_resolution_min
0 snd_pcm_extplug_set_slave_param_list
0 snd_names_list
0 snd_pcm_extplug_set_param_list
0 snd_names_list_free
0 snd_timer_ginfo_free
0 snd_pcm_hw_params_get_export_buffer
0 snd_pcm_parse_control_id
0 snd_pcm_extplug_set_slave_param_minmax
0 snd_pcm_generic_rewind
0 snd_pcm_generic_sw_params
0 snd_pcm_generic_start
0 snd_pcm_direct_set_timer_params
0 snd_dlobj_cache_add
0 snd_pcm_generic_link
0 snd_ext_parm_set_minmax
0 snd_pcm_generic_state
0 snd_pcm_generic_writei
0 snd_pcm_generic_mmap
0 snd_pcm_generic_async
0 snd_pcm_generic_info
0 snd_pcm_direct_clear_timer_queue
0 snd_pcm_generic_drain
0 snd_pcm_generic_drop
0 snd_pcm_generic_close
0 snd_pcm_generic_hw_free
0 snd_pcm_generic_nonblock
0 snd_pcm_generic_munmap
0 snd_pcm_generic_hw_refine
0 snd_pcm_generic_hw_params
0 snd_pcm_generic_forward
0 snd_pcm_generic_writen
0 snd_ext_parm_clear
0 snd_pcm_generic_readi
0 snd_ext_parm_mask_refine
0 snd_dlobj_cache_cleanup
0 snd_dlobj_cache_lookup
0 snd_pcm_generic_channel_info
0 snd_pcm_generic_poll_descriptors
0 snd_pcm_generic_hwsync
0 snd_pcm_generic_prepare
0 snd_pcm_generic_avail_update
0 snd_ext_parm_set_list
0 snd_pcm_generic_poll_descriptors_count
0 snd_pcm_generic_status
0 snd_pcm_generic_readn
0 snd_pcm_generic_resume
0 snd_pcm_generic_pause
0 snd_interval_list
0 snd_pcm_generic_delay
0 snd_ext_parm_interval_refine
0 snd_pcm_generic_reset
0 snd_pcm_generic_unlink
0 snd_pcm_generic_poll_revents
0 snd_pcm_generic_mmap_commit
0 snd_pcm_direct_timer_stop
0 snd_pcm_wait_nocheck
0 snd_mixer_sbasic_get_private
0 snd_mixer_class_get_mixer
0 snd_mixer_get_hctl
0 snd_mixer_class_set_private_free
0 snd_mixer_class_copy
0 snd_mixer_elem_free
0 snd_mixer_simple_basic_register
0 snd_mixer_class_get_private
0 snd_mixer_selem_set_playback_dB_all
0 snd_mixer_class_get_event
0 snd_mixer_selem_is_enum_capture
0 snd_mixer_sbasic_set_private
0 snd_mixer_class_free
0 snd_mixer_sbasic_set_private_free
0 snd_mixer_selem_set_playback_dB
0 snd_mixer_elem_get_private
0 snd_mixer_class_sizeof
0 snd_mixer_elem_new
0 snd_mixer_selem_get_capture_dB_range
0 snd_mixer_class_get_compare
0 snd_mixer_selem_get_playback_dB_range
0 snd_mixer_sbasic_info
0 snd_mixer_class_set_event
0 snd_mixer_selem_get_capture_dB
0 snd_mixer_class_set_compare
0 snd_mixer_simple_none_register
0 snd_mixer_selem_set_capture_dB_all
0 snd_mixer_selem_is_enum_playback
0 snd_ctl_ext_delete
0 snd_mixer_selem_set_capture_dB
0 snd_mixer_class_set_private
0 snd_mixer_detach_hctl
0 snd_mixer_attach_hctl
0 snd_mixer_class_malloc
0 snd_mixer_selem_get_playback_dB
0 snd_ctl_ext_create
0 snd_pcm_direct_resume
0 _snd_func_pcm_args_by_class_dlsym_config_evaluate_001
0 snd_func_pcm_args_by_class
0 snd_pcm_direct_open_secondary_client
0 snd_mixer_selem_compare
0 snd_pcm_recover
0 snd_pcm_set_params
0 snd_pcm_get_params
0 snd_pcm_direct_parse_open_conf
0 _snd_seq_open_lconf
0 snd_config_check_hop
0 snd_config_set_hop
0 snd_pcm_generic_link_fd
0 _snd_pcm_link_descriptors
0 snd_pcm_generic_link2
0 snd_pcm_rate_get_default_converter
0 snd_hctl_elem_tlv_read
0 snd_ctl_elem_tlv_write
0 snd_ctl_elem_tlv_command
0 snd_hctl_elem_tlv_write
0 snd_ctl_elem_info_is_tlv_commandable
0 snd_ctl_elem_info_is_tlv_writable
0 snd_ctl_elem_info_is_tlv_readable
0 snd_hctl_elem_tlv_command
0 snd_ctl_elem_tlv_read
0 _snd_pcm_rate_linear_open
0 snd_pcm_direct_initialize_secondary_slave
4
6
[alsa-devel] Some drivers don't create all necessary sysfs symlinks
by Lennart Poettering 30 Nov '07
by Lennart Poettering 30 Nov '07
30 Nov '07
Hi!
Apparently not all ALSA drivers set the "device" symlink
properly. This creates problems with HAL which then is unable to
manage permissions to those files properly. One example of such a
driver is EMU10K1X.
For more information, see:
https://bugzilla.redhat.com/show_bug.cgi?id=370821#c26
Also reported on the ALSA BTS:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3575
Lennart
--
Lennart Poettering Red Hat, Inc.
lennart [at] poettering [dot] net ICQ# 11060553
http://0pointer.net/lennart/ GnuPG 0x1A015CC4
2
3
Hi All:
Im having problems while using mplayer 1.0 to play music based on alsa 1.0.15.
Im using an ARM9 system and montavista linux 2.6.18.
Here's what the problem is and what's modified in the mplayer.conf:
***************************************************************************************************************
/ $ mplayer /tmp/a.wav
MPlayer 1.0rc2-4.2.0 (C) 2000-2007 MPlayer Team
CPU: ARM
115 audio & 237 video codecs
Playing /tmp/a.wav.
Audio file file format detected.
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 44100 Hz, 2 ch, s16le, 1411.2 kbit/100.00% (ratio: 176400->176400)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
[AO_ALSA] alsa-lib: conf.c:2699:(snd_config_hooks_call) Cannot open shared
library (null)
[AO_ALSA] alsa-lib: conf.c:3076:(snd_config_update_r) hooks failed,
removing configuration
[AO_ALSA] Playback open error: No such file or directory
Could not open/initialize audio device -> no sound.
Audio: no sound
Video: no video
Exiting... (End of file)
*****************************************************************************************************************
/etc/mplayer/mplayer.conf
##################
# audio settings #
##################
# Specify default audio driver (see -ao help for a list).
ao=alsa
# Use SDL audio driver with the esd subdriver by default.
#ao = sdl:esd
# Specify the mixer device.
#mixer = /dev/mixer
# Resample the sound to 44100Hz with the lavcresample audio filter.
#af=lavcresample=44100
****************************************************************************************************************
Can anybody tell me what going wrong with this?
Thanks in advance!
semiyd
_________________________________________________________________
Connect to the next generation of MSN MessengerÂ
http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=…
2
1
30 Nov '07
Hello,
as I already reported on another email I'm having problems with my sound:
http://thread.gmane.org/gmane.linux.alsa.devel/49412
My motherboard is PCCHIPS A13G+.
The sound hardware of my Mobo is in the NVIDIA MCP61S Single chipset.
This chipset consists of: GeForce(R) 6100 GPU and MCP nForce(R) 405
Codec: Realtek ALC660-VD
When looking at the soundcard matrix for Nvidia there are 2 options listed:
http://www.alsa-project.org/main/index.php/Matrix:Vendor-Nvidia
AC97 nForce-1 - nForce-4
HDA nForce-430 and later
Since my chipset is nForce 405 should I select the first option
AC97? But everyone seems to advise me to use the HDA option.
When I look at the details for HDA I see only "Intel HDA driver" and
nothing about which particular chipsets are supported.
On the AC97 option there is a list of chips but all are from Intel and
none from Nvidia.
So I'm confused. Which soundcard is the correct one for me? Is my
particular chipset supported at all?
Thanks!
2
4
Hello,
I am using alsa-lib 1.0.15 on an embedded PowerPC board. I can play
audio with aplay, but gstreamer fails, so I built and ran the 'pcm' app
in alsa-lib-1.0.15/test/. pcm gives:
# export LIBASOUND_DEBUG=1
# ./pcm
Playback device is plughw:0,0
Stream parameters are 44100Hz, S16_BE, 1 channels
Sine wave rate is 440.0000Hz
Using transfer method: write
ALSA lib pcm_plug.c:773:(snd_pcm_plug_hw_refine_schange) Unable to find
an usable access for 'plughw:0,0'
ALSA ERROR hw_params: set (FORMAT)
value = S16_BE : Invalid argument
ACCESS: RW_INTERLEAVED
FORMAT: S8 U8 S16_LE S16_BE U16_LE U16_BE S24_LE S24_BE U24_LE U24_BE
S32_LE S32_BE U32_LE U32_BE FLOAT_LE FLOAT_BE
SUBFORMAT: STD
SAMPLE_BITS: [4 64]
FRAME_BITS: [4 640000]
CHANNELS: [1 10000]
RATE: [4000 4294967295)
PERIOD_TIME: [25000 300000]
PERIOD_SIZE: [100 1288490189)
PERIOD_BYTES: [50 4294967295)
PERIODS: (0 12884902)
BUFFER_TIME: [1 4294967295]
BUFFER_SIZE: [100 1288490188]
BUFFER_BYTES: [50 4294967295]
TICK_TIME: 4000
Sample format not available for playback: Invalid argument
Setting of hwparams failed: Invalid argument
Is the driver saying it can do format S16_BE somewhere, but fails when
the format is actually set? How can I dig deeper on this?
Thanks in advance for any ideas!
,
John
1
1
Hi !
With the patches, the sound works - well done!
But I need to make sure the PCM volume is max @ 50% .
If its over 50% sound is clipped and ugly (overload?).
Here's cat /proc/asound/card0/codec#0 when in use (patched kernel with your
patches for v5505)
Codec: Conexant CX20549 (Venice)
Address: 0
Vendor Id: 0x14f15045
Subsystem Id: 0x1734110e
Revision Id: 0x100100
No Modem Function Group found
Default PCM:
rates [0x140]: 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
Node 0x10 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Amp-Out caps: ofs=0x2b, nsteps=0x2b, stepsize=0x05, mute=1
Amp-Out vals: [0x28 0x28]
Pincap 0x0810014: OUT EAPD Detect
Pin Default 0x92170110: [Fixed] Speaker at Int Front
Conn = Analog, Color = Unknown
Pin-ctls: 0x40: OUT
Power: 0x0
Connection: 2
0x19 0x17*
Node 0x11 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Amp-Out caps: ofs=0x2b, nsteps=0x2b, stepsize=0x05, mute=1
Amp-Out vals: [0x28 0x28]
Pincap 0x08113c: IN OUT HP Detect
Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
Conn = 1/8, Color = Green
Pin-ctls: 0xc0: OUT HP
Power: 0x0
Connection: 2
0x19 0x17*
Node 0x12 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Amp-Out caps: ofs=0x2b, nsteps=0x2b, stepsize=0x05, mute=1
Amp-Out vals: [0xab 0xab]
Pincap 0x08113c: IN OUT HP Detect
Pin Default 0x01a19020: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
Pin-ctls: 0x20: IN
Power: 0x0
Connection: 2
0x19* 0x17
Node 0x13 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x214571f0: [Jack] SPDIF Out at Sep Rear
Conn = Optical, Color = Yellow
Pin-ctls: 0x00:
Connection: 1
0x18
Node 0x14 [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081124: IN Detect
Pin Default 0x97a7012e: [Fixed] Mic at Int Riser
Conn = Analog, Color = Unknown
Pin-ctls: 0x24: IN
Node 0x15 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x400001f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Node 0x16 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x07, nsteps=0x07, stepsize=0x0b, mute=1
Amp-Out vals: [0x06]
Node 0x17 [Audio Mixer] wcaps 0x20050b: Stereo Amp-In
Amp-In caps: ofs=0x14, nsteps=0x2b, stepsize=0x05, mute=1
Amp-In vals: [0x14 0x14] [0xab 0xab] [0xa0 0xa0] [0x80 0x80] [0x80 0x80]
Power: 0x0
Connection: 5
0x19 0x14 0x12 0x11 0x15
Node 0x18 [Audio Output] wcaps 0x211: Stereo Digital
PCM:
rates [0x40]: 48000
bits [0x6]: 16 20
formats [0x5]: PCM AC3
Node 0x19 [Audio Output] wcaps 0xc11: Stereo
PCM:
rates [0x540]: 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power: 0x0
Node 0x1a [Audio Input] wcaps 0x100d0b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x17, stepsize=0x05, mute=1
Amp-In vals: [0x17 0x17] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Power: 0x0
Connection: 5
0x17 0x14 0x12* 0x11 0x15
Node 0x1b [Vendor Defined Widget] wcaps 0xf00000: Mono
Best regards
Jan-Simon
2
4
On Wed, 28 Nov 2007 10:30:43 +0100
"Clemens Ladisch" <cladisch(a)fastmail.net> wrote:
...
>> aplay plughw:0 (plughw:0,0) (plughw:0,1) (plughw:0,2) coq.wav
>>
>> this time no coredump, aplay try to play, but no sound on the monitoring
>> of the mbox II, a complete silence.
>>
>> - perhaps the mixer is muted!
>>
>> i cannot adjust the mixer:
>> amixer
>> no elem> found.
> Some USB devices don't have a software-controllable mixer.
> Please show the output of "lsusb -v" for this device.
lsusb -v
...
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0dba
idProduct 0x3000
bcdDevice 1.38
iManufacturer 1 Digidesign
iProduct 2 Mbox 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 646
bNumInterfaces 7
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 254 Application Specific Interface
bInterfaceSubClass 1 Device Firmware Update
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 1 Control Device
bInterfaceProtocol 0
iInterface 2 Mbox 2
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 96
bInCollection 4
baInterfaceNr( 0) 2
baInterfaceNr( 1) 3
baInterfaceNr( 2) 4
baInterfaceNr( 3) 5
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 5
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 6
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bSourceID 5
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 7
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 8
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bSourceID 7
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 2
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 1
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 3
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 4
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 3
iTerminal 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 2
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 131
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 2
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 3
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 131
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 2
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 2
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 132
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 2
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 3
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 132
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 2
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 6
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 8193 IEC1937_AC-3
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 3 (FORMAT_TYPE_III)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 13
Transfer Type Isochronous
Synch Type Synchronous
Usage Type Data
wMaxPacketSize 0x00c0 1x 192 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 13
Transfer Type Isochronous
Synch Type Synchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 4
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 4
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 13
Transfer Type Isochronous
Synch Type Synchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 6
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 0
Device Status: 0x0000
(Bus Powered)
Best Regards,
raoul
rmgls(a)free.Fr
1
0
[alsa-devel] [usb-audio] M-Audio FastTrack Pro giving invalid sample rates
by Lasse Kärkkäinen 29 Nov '07
by Lasse Kärkkäinen 29 Nov '07
29 Nov '07
Resending because nobody reacted the last time. This is still broken
with 2.6.23.1, except for the fact that it doesn't seem to be possible
to adjust bConfigurationValue anymore (this is not exposed under sysfs
at least on my system), so I am stuck with configuration 1.
Original message follows:
This bug has been around for years...
ALSA seems to think that the card supports a wide range of sampling
rates, but it does not manage to set them in practice. I do not know
which is faulty, ALSA rate setting or the USB info sent by the device,
but the problem needs to be fixed.
I did some measurements with the alsarate program, attached to my other
post (subject: ALSA C++ API).
Using bConfigurationValue=1 and measuring the actual rate with alsarate,
I get
>>> Testing playback
Opening ALSA device hw:0,1 at 44100 Hz.
Got 44100 Hz, 2 channels, period 1.02 ms.
96.27 seconds, measured rate 45807 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 44100 Hz.
Got 44100 Hz, 2 channels, period 1.02 ms.
97.29 seconds, measured rate 45330 Hz.
As expected, 44.1 kHz works. The measured rate seems a bit higher than
it should be, but I assume that this is an alsarate inaccuracy rather
than an actual phenomenon.
>>> Testing playback
Opening ALSA device hw:0,1 at 48000 Hz.
Got 44100 Hz, 2 channels, period 1 ms.
96.27 seconds, measured rate 45808 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 48000 Hz.
Got 48000 Hz, 2 channels, period 1 ms.
105.89 seconds, measured rate 45330 Hz.
Using 48 kHz for playback is not possible, the
snd_pcm_hw_params_rate_near returns a new rate of 44.1 kHz. This is all
fine and the measured rate still is around 44.1 kHz as it should.
In the capture part, we see the first problem: rate_near returned 48
kHz, but the measured value hasn't changed. So, the application thinks
that it is recording at 48 kHz, but ALSA only gives it data at 44.1 kHz.
This is a bug in ALSA.
>>> Testing playback
Opening ALSA device hw:0,1 at 8000 Hz.
Got 44100 Hz, 2 channels, period 1.02 ms.
96.27 seconds, measured rate 45808 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 8000 Hz.
Got 8000 Hz, 2 channels, period 2 ms.
17.66 seconds, measured rate 45309 Hz.
Trying to use 8 kHz yields similar results to the 48 kHz test. No
problems with playback, but the capture part reports that it is using 8
kHz, even though it really uses 44.1 kHz.
>>> Testing playback
Opening ALSA device hw:0,1 at 96000 Hz.
Got 44100 Hz, 2 channels, period 1.02 ms.
96.27 seconds, measured rate 45808 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 96000 Hz.
Got 48000 Hz, 2 channels, period 1 ms.
105.89 seconds, measured rate 45330 Hz.
96 kHz makes little difference. Now the capture rate is reported to be
48 kHz, but the actual rates are still always 44.1 kHz.
That was all done using the default configuration. When using the other
configuration, bConfigurationValue=2, the following results are gathered:
>>> Testing playback
Opening ALSA device hw:0,1 at 44100 Hz.
Got 44100 Hz, 2 channels, period 1.02 ms.
96.27 seconds, measured rate 45808 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 44100 Hz.
Got 44100 Hz, 2 channels, period 1.02 ms.
97.29 seconds, measured rate 45330 Hz.
44.1 kHz is identical to that in the other configuration.
>>> Testing playback
Opening ALSA device hw:0,1 at 48000 Hz.
Got 48000 Hz, 2 channels, period 1 ms.
96.29 seconds, measured rate 49849 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 48000 Hz.
Got 48000 Hz, 2 channels, period 1 ms.
97.29 seconds, measured rate 49339 Hz.
48 kHz now works properly for both playback and capture (note: measured
rate over 49 kHz, but the measurements displaying about 1.5 kHz too high
is consistent).
>>> Testing playback
Opening ALSA device hw:0,1 at 8000 Hz.
Got 8000 Hz, 2 channels, period 2 ms.
15.89 seconds, measured rate 50336 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 8000 Hz.
Got 8000 Hz, 2 channels, period 2 ms.
16.22 seconds, measured rate 49313 Hz.
8 kHz still doesn't work. ALSA reports that it does, but in reality
gives 48 kHz (within the bounds of the measurement accuracy).
>>> Testing playback
Opening ALSA device hw:0,1 at 96000 Hz.
Got 48000 Hz, 2 channels, period 1 ms.
96.29 seconds, measured rate 49849 Hz.
>>> Testing capture
Opening ALSA device hw:0,1 at 96000 Hz.
Got 48000 Hz, 2 channels, period 1 ms.
97.29 seconds, measured rate 49339 Hz.
96 kHz works kinda like it should, except for the fact that the hardware
should support that rate as well.
Summa summarum:
Config 1 only uses 44.1 kHz, but claims to support 8-48 kHz on capture.
Config 2 only uses 44.1 and 48 kHz, but claims to support 8-48 kHz on
both capture and playback.
The card in reality, according to specs, supports up to 96 kHz.
According to lspci (attached), it supports everything within the 8-96
kHz range.
Bus 001 Device 010: ID 0763:2012 Midiman
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0763 Midiman
idProduct 0x2012
bcdDevice 1.00
iManufacturer 1 M-Audio
iProduct 2 FastTrack Pro
iSerial 0
bNumConfigurations 2
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 326
bNumInterfaces 5
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
MaxPower 200mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 1 Control Device
bInterfaceProtocol 0
iInterface 2 FastTrack Pro
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 75
bInCollection 4
baInterfaceNr( 0) 2
baInterfaceNr( 1) 3
baInterfaceNr( 2) 4
baInterfaceNr( 3) 1
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 5
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 6
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bSourceID 5
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 7
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 8
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bSourceID 7
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 2
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 1
iTerminal 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 3 MIDI Streaming
bInterfaceProtocol 0
iInterface 2 FastTrack Pro
MIDIStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 65
MIDIStreaming Interface Descriptor:
bLength 6
bDescriptorType 36
bDescriptorSubtype 2 (MIDI_IN_JACK)
bJackType 1 Embedded
bJackID 1
iJack 0
MIDIStreaming Interface Descriptor:
bLength 6
bDescriptorType 36
bDescriptorSubtype 2 (MIDI_IN_JACK)
bJackType 2 External
bJackID 2
iJack 0
MIDIStreaming Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (MIDI_OUT_JACK)
bJackType 1 Embedded
bJackID 3
bNrInputPins 1
baSourceID( 0) 2
BaSourcePin( 0) 1
iJack 0
MIDIStreaming Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (MIDI_OUT_JACK)
bJackType 2 External
bJackID 4
bNrInputPins 1
baSourceID( 0) 1
BaSourcePin( 0) 1
iJack 0
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
MIDIStreaming Endpoint Descriptor:
bLength 5
bDescriptorType 37
bDescriptorSubtype 1 (GENERAL)
bNumEmbMIDIJack 1
baAssocJackID( 0) 1
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
MIDIStreaming Endpoint Descriptor:
bLength 5
bDescriptorType 37
bDescriptorSubtype 1 (GENERAL)
bNumEmbMIDIJack 1
baAssocJackID( 0) 3
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 11
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 1 Discrete
tSamFreq[ 0] 44100
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 11
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 1 Discrete
tSamFreq[ 0] 44100
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 1165
bNumInterfaces 6
bConfigurationValue 2
iConfiguration 0
bmAttributes 0x80
MaxPower 200mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 1 Control Device
bInterfaceProtocol 0
iInterface 2 FastTrack Pro
AudioControl Interface Descriptor:
bLength 13
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 97
bInCollection 5
baInterfaceNr( 0) 2
baInterfaceNr( 1) 3
baInterfaceNr( 2) 4
baInterfaceNr( 3) 5
baInterfaceNr( 4) 1
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 5
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 6
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bSourceID 5
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 7
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 8
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bSourceID 7
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 2
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 1
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 3
wTerminalType 0x0601 Analog Connector
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 4
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 3
iTerminal 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 3 MIDI Streaming
bInterfaceProtocol 0
iInterface 2 FastTrack Pro
MIDIStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 65
MIDIStreaming Interface Descriptor:
bLength 6
bDescriptorType 36
bDescriptorSubtype 2 (MIDI_IN_JACK)
bJackType 1 Embedded
bJackID 1
iJack 0
MIDIStreaming Interface Descriptor:
bLength 6
bDescriptorType 36
bDescriptorSubtype 2 (MIDI_IN_JACK)
bJackType 2 External
bJackID 2
iJack 0
MIDIStreaming Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (MIDI_OUT_JACK)
bJackType 1 Embedded
bJackID 3
bNrInputPins 1
baSourceID( 0) 2
BaSourcePin( 0) 1
iJack 0
MIDIStreaming Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (MIDI_OUT_JACK)
bJackType 2 External
bJackID 4
bNrInputPins 1
baSourceID( 0) 1
BaSourcePin( 0) 1
iJack 0
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
MIDIStreaming Endpoint Descriptor:
bLength 5
bDescriptorType 37
bDescriptorSubtype 1 (GENERAL)
bNumEmbMIDIJack 1
baAssocJackID( 0) 1
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
MIDIStreaming Endpoint Descriptor:
bLength 5
bDescriptorType 37
bDescriptorSubtype 1 (GENERAL)
bNumEmbMIDIJack 1
baAssocJackID( 0) 3
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 2 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 2 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 20
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 4 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
tSamFreq[ 2] 88200
tSamFreq[ 3] 96000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x0248 1x 584 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 4
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 131
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 6
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 131
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 6
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 6
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 5
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 96000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0248 1x 584 bytes
bInterval 1
bRefresh 0
bSynchAddress 131
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 6
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 2 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 2 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 20
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 4 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
tSamFreq[ 2] 88200
tSamFreq[ 3] 96000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x0248 1x 584 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 4
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 132
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 6
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 132
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 6
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 6
bNumEndpoints 2
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 96000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0248 1x 584 bytes
bInterval 1
bRefresh 0
bSynchAddress 132
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0003 1x 3 bytes
bInterval 1
bRefresh 6
bSynchAddress 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 7
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 7
bDelay 1 frames
wFormatTag 8193 IEC1937_AC-3
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 3 (FORMAT_TYPE_III)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 2 Discrete
tSamFreq[ 0] 44100
tSamFreq[ 1] 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 9
Transfer Type Isochronous
Synch Type Adaptive
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 4
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 96000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x85 EP 5 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0248 1x 584 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 4
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x00c8 1x 200 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 4
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0128 1x 296 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 5
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 4
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 14
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 3
bBitResolution 24
bSamFreqType 0 Continuous
tLowerSamFreq 8000
tUpperSamFreq 96000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0248 1x 584 bytes
bInterval 1
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x00
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Bus 001 Device 006: ID 041e:4058 Creative Technology, Ltd
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2 Common Class
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
idVendor 0x041e Creative Technology, Ltd
idProduct 0x4058
bcdDevice 1.00
iManufacturer 1 Creative Labs
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 1073
bNumInterfaces 4
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
MaxPower 500mA
UNRECOGNIZED: 08 0b 00 02 0e 03 00 00
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 1 Video Control
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x000a 1x 10 bytes
bInterval 5
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0080 1x 128 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 2
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 3
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0400 1x 0 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 4
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0b00 2x 768 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 5
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0c00 2x 0 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 6
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x1380 3x 896 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 7
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x1400 3x 0 bytes
bInterval 1
UNRECOGNIZED: 08 0b 02 02 01 02 00 00
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 1 Control Device
bInterfaceProtocol 0
iInterface 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 40
bInCollection 1
baInterfaceNr( 0) 3
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0602 Digital Audio Interface
bAssocTerminal 0
bNrChannels 2
wChannelConfig 0x0003
Left Front (L)
Right Front (R)
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 10
bDescriptorType 36
bDescriptorSubtype 6 (FEATURE_UNIT)
bUnitID 2
bSourceID 1
bControlSize 1
bmaControls( 0) 0x00
bmaControls( 1) 0x43
Mute
Volume
Automatic Gain
bmaControls( 2) 0x43
Mute
Volume
Automatic Gain
iFeature 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 3
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 2
iTerminal 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 3
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 35
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 2
bSubframeSize 2
bBitResolution 16
bSamFreqType 9 Discrete
tSamFreq[ 0] 8000
tSamFreq[ 1] 11025
tSamFreq[ 2] 12000
tSamFreq[ 3] 16000
tSamFreq[ 4] 22050
tSamFreq[ 5] 24000
tSamFreq[ 6] 32000
tSamFreq[ 7] 44100
tSamFreq[ 8] 48000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x00c4 1x 196 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2 Common Class
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
bNumConfigurations 1
Bus 001 Device 004: ID 1532:0101
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x1532
idProduct 0x0101
bcdDevice 21.00
iManufacturer 1 Razer
iProduct 2 Razer Copperhead Laser Mouse
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 59
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
Remote Wakeup
MaxPower 200mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Devices
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 10.01
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 73
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 8
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Devices
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 10.01
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 47
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 8
4
3
Re: [alsa-devel] Pls don't require exclusive Alsa audio device access, use snd_pcm_dmix_open ()
by thomas schorpp 28 Nov '07
by thomas schorpp 28 Nov '07
28 Nov '07
thomas schorpp wrote:
> thomas schorpp wrote:
>> since dmix is enabled by libasound2 by default for cards not
>> supporting h/w mixing.
>>
>> skype can access the audio device using snd_pcm_dmix_open () if other
>> app has already opened it, ekiga throws error msgboxes.
skype 5089 skype mem CHR 116,24 7792 /dev/snd/pcmC0D0c
skype 5089 skype mem CHR 116,16 7784 /dev/snd/pcmC0D0p
kio_file 5422 schorpp 0r CHR 1,3 956 /dev/null
kio_uiser 6025 schorpp 0r CHR 1,3 956 /dev/null
iceape-bi 30161 schorpp mem CHR 116,16 7784 /dev/snd/pcmC0D0p
iceape-bi 30161 schorpp 0r CHR 1,3 956 /dev/null
iceape-bi 30161 schorpp 66r CHR 116,33 7473 /dev/snd/timer
iceape-bi 30161 schorpp 67u CHR 116,16 7784 /dev/snd/pcmC0D0p
>>
>> y
>> tom
>>
>
> hmm. takeback. future removal warning in alsa lib doc. well for
> experiments (in ptlib plugin):
>
> Index: sound_alsa.cxx
> ===================================================================
> --- sound_alsa.cxx (Revision 18763)
> +++ sound_alsa.cxx (Arbeitskopie)
> @@ -344,13 +344,15 @@
> }
> }
>
> - if (snd_pcm_open (&os_handle, real_device_name, stream,
> SND_PCM_NONBLOCK) < 0) {
> + if (snd_pcm_open (&os_handle, real_device_name, stream,
> SND_PCM_NONBLOCK) < 0)
>
> - PTRACE (1, "ALSA\tOpen Failed");
> - return FALSE;
> - }
> - else
> - snd_pcm_nonblock (os_handle, 0);
> + if (_snd_pcm_dmix_open (&os_handle, real_device_name, snd_config_t*
> root, snd_config_t* sconf, stream, SND_PCM_NONBLOCK) < 0) {
> +
> + PTRACE (1, "ALSA\tOpen Failed");
> + return FALSE;
> + }
> + else
> + snd_pcm_nonblock (os_handle, 0);
>
> /* save internal parameters */
> device = real_device_name;
>
> i cant find any sample code for the missing params, google is full of
> alsa user issues ;)
>
> y
> tom
>
@alsa devs
any hints?
4
5
28 Nov '07
The sis7019 driver uses __ffs(), which is available in 2.6 kernels, but
not in most earlier ones. This patches the driver to use a local version
assembly version, as the hardware is SiS 55x only (i486/Pentium-ish).
Signed-off-by: David Dillow <dave(a)thedillows.org>
---
This is against the alsa-driver hg repo. I've not build tested this
version, as the build system currently hates me. However, this is 95%
identical to what I was using against 1.0.13. Only the location of the
__ffs -> sis_ffs change is different.
pci/sis7019.patch | 32 ++++++++++++++++++++++++++++++++
pci/Makefile | 3 ++-
2 files changed, 34 insertions(+), 1 deletion(-)
diff -r ab42d23439ef pci/Makefile
--- a/pci/Makefile Tue Nov 27 16:05:25 2007 +0100
+++ b/pci/Makefile Wed Nov 28 01:39:04 2007 -0500
@@ -10,7 +10,7 @@ include $(SND_TOPDIR)/Makefile.conf
#
clean-files := ad1889.c atiixp.c atiixp_modem.c bt87x.c cmipci.c ens1370.c \
- fm801.c intel8x0.c maestro3.c via82xx.c via82xx_modem.c
+ fm801.c intel8x0.c maestro3.c sis7019.c via82xx.c via82xx_modem.c
obj-$(CONFIG_SND) += pdplus/ asihpi/ oxygen/
@@ -31,5 +31,6 @@ fm801.c: fm801.patch $(SND_TOPDIR)/alsa-
fm801.c: fm801.patch $(SND_TOPDIR)/alsa-kernel/pci/fm801.c
intel8x0.c: intel8x0.patch $(SND_TOPDIR)/alsa-kernel/pci/intel8x0.c
maestro3.c: maestro3.patch $(SND_TOPDIR)/alsa-kernel/pci/maestro3.c
+sis7019.c: sis7019.patch $(SND_TOPDIR)/alsa-kernel/pci/sis7019.c
via82xx.c: via82xx.patch $(SND_TOPDIR)/alsa-kernel/pci/via82xx.c
via82xx_modem.c: via82xx_modem.patch $(SND_TOPDIR)/alsa-kernel/pci/via82xx_modem.c
diff -r ab42d23439ef pci/sis7019.patch
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/pci/sis7019.patch Wed Nov 28 01:39:04 2007 -0500
@@ -0,0 +1,32 @@
+--- ../alsa-kernel/pci/sis7019.c 2007-11-28 01:02:26.000000000 -0500
++++ sis7019.c 2007-11-28 01:36:27.000000000 -0500
+@@ -33,6 +33,14 @@
+ #include <sound/initval.h>
+ #include "sis7019.h"
+
++static inline unsigned long sis_ffs(unsigned long word)
++{
++ __asm__("bsfl %1,%0"
++ :"=r" (word)
++ :"rm" (word));
++ return word;
++}
++
+ MODULE_AUTHOR("David Dillow <dave(a)thedillows.org>");
+ MODULE_DESCRIPTION("SiS 7019");
+ MODULE_LICENSE("GPL");
+@@ -289,7 +297,7 @@
+ int bit;
+
+ while (status) {
+- bit = __ffs(status);
++ bit = sis_ffs(status);
+ status >>= bit + 1;
+ voice += bit;
+ sis_update_voice(voice);
+@@ -1464,3 +1472,5 @@
+
+ module_init(sis7019_init);
+ module_exit(sis7019_exit);
++
++EXPORT_NO_SYMBOLS
2
3