Open Sound System |
Do you have problems with sound/audio application development? Don't panic! Click here for help! |
The mixer model of OSS is based on concept of group. Each group maps to a subwindow or a container widget (vbox or hbox in GTK+ terminology). The parent
field returned by SNDCTL_MIX_EXTINFO specifies the parent node/group/widget of the group. The actual mixer controls are grouped under some group and they should be located side by side inside their group widget.
See the Mixer GUI layout management section of this manual for more info about the layout policies.
Note that groups may be empty (contain no child controls). Certain OSS drivers may create empty groups and then add new controls to them on-demand. Mixer applications should be prepared to handle empty groups and on-demand addition of controls to them. To make this task easier OSS 4.1 and later will return number of "leaf" controls in the SNDCTL_MIX_EXTINFO.update_counter field (older OSS versions will return 0 for all groups).