#133: ALSA's SND_PCM_FORMAT_U16_BE (and LE) not supported, Allegro fails to
initialize sound
----------------------------+-----------------------------------------------
  Reporter:  izm            |       Owner:  lennart                           
      Type:  defect         |      Status:  assigned                          
  Priority:  normal         |   Milestone:                                    
 Component:  module-alsa-*  |    Severity:  normal                            
Resolution:                 |    Keywords:  allegro alsa format snd_pcm_format
----------------------------+-----------------------------------------------
Comment (by elias):

 Well, the format is specified to be unsigned, and data are user
 accessible. And it's like that since almost 10 years, so there's no way we
 can change it now - whatever the reasons were back then to choose
 unsigned. (Likely, soundblaster 1.0 or whatever was current then used
 8-bit unsigned, then when 16-bit support was first added, it was kept
 unsigned.)

 Now, the above change does an XOR with 0x8000 on each 16-bit sample right
 before providing data to Alsa. So if that indeed is such a waste of
 resources (myself I'd hope you can hardly notice any performance penalty)
 - then I'll have a hard time arguing for applying the above change, as
 Alsa itself certainly can do a much better job converting the format.

 What really is needed is a simple way when initializing Alsa to query if
 it can support unsigned 16-bit (it which case Allegro will keep providing
 that) or not (in which case we can convert ourselves).. but I wasn't able
 to learn from the Alsa docs how to do that, after a quick glance.

-- 
Ticket URL: <http://www.pulseaudio.org/ticket/133#comment:7>
PulseAudio <http://pulseaudio.org/>
The PulseAudio Sound Server
_______________________________________________
pulseaudio-tickets mailing list
pulseaudio-tickets@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-tickets

Reply via email to