comparison libao2/ao_oss.c @ 15898:a45af202818f

QUERY_FORMAT support
author alex
date Sun, 03 Jul 2005 11:38:35 +0000
parents 2d919650990a
children 832a93fc5deb
comparison
equal deleted inserted replaced
15897:18e74f0452c7 15898:a45af202818f
158 dsp=(char*)arg; 158 dsp=(char*)arg;
159 return CONTROL_OK; 159 return CONTROL_OK;
160 case AOCONTROL_GET_DEVICE: 160 case AOCONTROL_GET_DEVICE:
161 *(char**)arg=dsp; 161 *(char**)arg=dsp;
162 return CONTROL_OK; 162 return CONTROL_OK;
163 #ifdef SNDCTL_DSP_GETFMTS
163 case AOCONTROL_QUERY_FORMAT: 164 case AOCONTROL_QUERY_FORMAT:
164 return CONTROL_TRUE; 165 {
166 int format;
167 if (!ioctl(audio_fd, SNDCTL_DSP_GETFMTS, &format))
168 if (format & (int)arg)
169 return CONTROL_TRUE;
170 return CONTROL_FALSE;
171 }
172 #endif
165 case AOCONTROL_GET_VOLUME: 173 case AOCONTROL_GET_VOLUME:
166 case AOCONTROL_SET_VOLUME: 174 case AOCONTROL_SET_VOLUME:
167 { 175 {
168 ao_control_vol_t *vol = (ao_control_vol_t *)arg; 176 ao_control_vol_t *vol = (ao_control_vol_t *)arg;
169 int fd, v, devs; 177 int fd, v, devs;