[LAU] Ardour session with plain ALSA, without JACK

Ralf Mardorf ralf.mardorf at alice-dsl.net
Fri Feb 19 22:35:25 UTC 2016


On Fri, 19 Feb 2016 22:50:14 +0100, Robin Gareus wrote:
>On 02/19/2016 10:14 PM, Ralf Mardorf wrote:
>> Hi Robin,  
>
>> Errors/Messages:
>> ERROR: AlsaAudioBackend: failed to allocate parameters.
>> ERROR: AlsaAudioBackend: failed to allocate parameters.
>> ERROR: AlsaAudioBackend: failed to allocate parameters.  
>
>Well that explains why it it won't, but not the reason behind it.
>What soundcard and settings did you configure?

I didn't configure anything.

Only one sound card is available and it's initialized by running
hdspmixer:

[rocketmouse at archlinux ~]$ amidi -l;aplay -l;arecord -l
Dir Device    Name
IO  hw:0,0    HDSPMx579bcc MIDI 1
**** List of PLAYBACK Hardware Devices ****
card 0: HDSPMx579bcc [RME AIO_579bcc], device 0: RME AIO [RME AIO]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
**** List of CAPTURE Hardware Devices ****
card 0: HDSPMx579bcc [RME AIO_579bcc], device 0: RME AIO [RME AIO]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
[rocketmouse at archlinux ~]$ hdspmixer 

HDSPMixer 1.11 - Copyright (C) 2003 Thomas Charbonnel <thomas at undata.org>
This program comes with ABSOLUTELY NO WARRANTY
HDSPMixer is free software, see the file COPYING for details

Looking for RME cards:
Card 0: RME AIO S/N 0x579bcc at 0xfdff0000, irq 18
RME AIO found!
1 RME cards card found.
Restoring last presets used

>> [3]
>> ### **** #### **** ### **** #### **** ### **** #### **** ### ****
>> #### **** ### **** ####  
>
>> Card 0 (HDSPMx579bcc):
>>   * Playback Device 0 (RME AIO):
>>     - Subdevice 0 (hw:HDSPMx579bcc,0,0):
>>       used by: jackd (PID 7171)
>>       access: MMAP_NONINTERLEAVED
>>       format: S32_LE
>>       subformat: STD
>>       channels: 16
>>       rate: 44100 (44100/1)
>>       period_size: 1024
>>       buffer_size: 16384  
>
>Wait. what? 16K buffers.
>
>> creating alsa driver ...
>> hw:HDSPMx579bcc,0|hw:HDSPMx579bcc,0|1024|2|44100|0|0|nomon|swmeter|-|32bit
>> configuring for 44100Hz, period = 1024 frames (23.2 ms), buffer = 2
>> periods ALSA: final selected sample format for capture: 32bit
>> integer little-endian ALSA: use 16 periods for capture ALSA: final
>> selected sample format for playback: 32bit integer little-endian
>> ALSA: use 16 periods for playback  
>
>WTH? 16 periods.
>Does jackd start with 2 or 3 periods on that given interface?

2

>Ardour's ALSA backend won't allow 16 periods (in case that's required
>by this particular soundcard/kernel) 2,3 are the only options.

Nothing but Ardour is used, no command line, no QjackCtl etc., the
Ardour GUI claims "Buffer size: 1024 samples/Periods: 2", if I chose
ALSA or JACK.

There are no issues for this card, excepted of xruns and that just 2 of
8 ADAT channels provide a signal by jackd ports (I guess in the past I
have repeated this often enough ;). The card is not broken, it was
tested with FreeBSD and Windows on the same machine.

This is the .jackdrc generated by Ardour:
[rocketmouse at archlinux ~]$ cat .jackdrc 
/usr/bin/jackd -t 200 -p 2048 -R -T -d alsa -n 2 -r 44100 -p 1024 -d hw:HDSPMx579bcc,0 -X raw

This is how it looks if I use command line:
[rocketmouse at archlinux ~]$ jackd -dalsa -dhw:0 -r44100 -p1024 -n2
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio0
creating alsa driver ... hw:0|hw:0|1024|2|44100|0|0|nomon|swmeter|-|32bit
configuring for 44100Hz, period = 1024 frames (23.2 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 16 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: use 16 periods for playback
^CJack main caught signal 2
Released audio card Audio0
audio_reservation_finish

Usually I use 48KHz p256 n2:
[rocketmouse at archlinux ~]$ jackd -dalsa -dhw:0 -r48000 -p256 -n2
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio0
creating alsa driver ... hw:0|hw:0|256|2|48000|0|0|nomon|swmeter|-|32bit
configuring for 48000Hz, period = 256 frames (5.3 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 64 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: use 64 periods for playback
^CJack main caught signal 2
Released audio card Audio0
audio_reservation_finish


More information about the Linux-audio-user mailing list