[pulseaudio-discuss] S24_3LE not support in try_auto of set_format
Raymond Yau
superquad.vortex2 at gmail.com
Sun Jun 21 02:19:44 PDT 2015
>
>> Do you mean you still cannot force pulseaudio to use 24 bits for your
creative usb audio ?
>>
>> Seem try auto format did not include 24bits
>
> I have 24bit explicitly in pulseaudio config currently:
>>>
>>> default-sample-format = s24le
>
> But it still uses 16bit, didn't managed how to force it to use 24bit
static const pa_sample_format_t try_order[] = {
PA_SAMPLE_FLOAT32NE,
PA_SAMPLE_FLOAT32RE,
PA_SAMPLE_S32NE,
PA_SAMPLE_S32RE,
PA_SAMPLE_S24_32NE,
PA_SAMPLE_S24_32RE,
PA_SAMPLE_S24NE,
PA_SAMPLE_S24RE,
+ PA_SAMPLE_S24LE,
PA_SAMPLE_S16NE,
PA_SAMPLE_S16RE,
PA_SAMPLE_ALAW,
PA_SAMPLE_ULAW,
PA_SAMPLE_U8
};
Seem missing PA_SAMPLE_S24LE in try_order, not sure any assembley code need
to be changed
You need to call snd_pcm_hw_params_test_format first, if format is
supported call snd_pcm_hw_params_set_format
There are three calls in set_format
- if ((ret = snd_pcm_hw_params_set_format(pcm_handle, hwparams,
format_trans[*f])) >= 0)
- return ret;
+ if (snd_pcm_hw_params_test_format(pcm_handle, hwparams,
format_trans[*f]) == 0)
+ return snd_pcm_hw_params_set_format(pcm_handle, hwparams,
format_trans[*f]);
+else
- pa_log_debug("snd_pcm_hw_params_set_format(%s) failed: %s",
snd_pcm_format_description(format_trans[*f]),
pa_alsa_strerror(ret));
pa_log_debug("format (%s) not supported",
snd_pcm_format_description(format_trans[*f]));
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20150621/11f1b21a/attachment.html>
More information about the pulseaudio-discuss
mailing list