Re: Broken ALSA surround sound with OpenALSoft 1.12 and newer

Martin Egge <[email protected]> Mon, 27 Feb 2012 11:00:20 +0100
Newsgroups gmane.comp.lib.openal
Message-ID <[email protected]>
Hello Chris,

Am Samstag, 25. Februar 2012, 01:40:52 schrieb Chris Robinson:
> On Friday, February 24, 2012 2:44:10 PM Martin Egge wrote:
> > I've discovered a problem with OpenALSoft 1.12 and newer on my Ubuntu
> > Linux 11.04 Natty. If I configure OpenAL to use the ALSA device
> > surround51 [1] and run my sample application [2] I get the following
> > error:
> > 
> > Using device: ALSA Software
> > AL lib: alsa.c:743: set buffer time near failed: Invalid argument
> > Error: Could not create the audio context!
> > Error: Audio format not supported (more the 2 channels)
> > AL lib: ALc.c:1879: exit(): closing 1 Device
> 
> I really wish I knew why the snd_pcm_hw_params_set_*_near functions can
> fail from an unsupported value. Both the function name and the
> documentation suggest it'll select the value nearest to the request,
> meaning the only reason it could fail is if there's no supported value
> (otherwise there has to be a value nearest to the target, regardless of
> how different it actually is). But I know that's not the case.
> 
> > Everything is fine with OpenALSoft 1.11 and older.

What has changed beetween 1.11 and 1.12 and might have broken the 5.1 output 
here?

> > Has anyone an idea, what to do?
> 
> You can try modifying the 'periods' setting in alsoft.conf. The default is
> 4, but you can try setting it to 2 or 3 to reduce the buffer size.

That didn't change anything.

> Out of curiousity, what audio hardware do you have?

Output of lspci -vv

07:00.0 Multimedia audio controller: Creative Labs CA0106 Soundblaster
        Subsystem: Creative Labs SB0410 SBLive! 24-bit
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- 
Stepping- SERR+ FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
<TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 64 (500ns min, 5000ns max)
        Interrupt: pin A routed to IRQ 10
        Region 0: I/O ports at ec00 [size=32]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: CA0106
        Kernel modules: snd-ca0106


> ALSA's surround51
> device will use hardware access, meaning nothing else will be able to
> access the device unless it supports hardware mixing. If it doesn't
> support hardware mixing, it may be worthwhile to define a dmix device for
> 5.1 output (I can provide examples for this if you need).

Yes, please send me an example.


Greetz,
Martin

_______________________________________________
Openal mailing list
[email protected]
http://opensource.creative.com/mailman/listinfo/openal
signature.asc (application/pgp-signature, 198 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEABECAAYFAk9LVDUACgkQVG/GfU56d2za7ACfScVIRe7C2KqfE8giTl0xGWgo
lmgAnR+tO8fxw3PRjLATD28yvB608fY1
=w10s
-----END PGP SIGNATURE-----