Re: [Alsa-user] Parallel playback on multiple USB cards

2020-08-14 Thread Clemens Ladisch via Alsa-user
Alexandre Bouillot wrote:
> ... Raspberry Pi
>
> I'm able to address each of the 6 cards independently correctly.
> However, when I'm trying to have a second channel - not to mention the third 
> - working in parallel with the first, I face problems.

>From what I've heard, the Pi's USB controller has limited bandwidth, and its
driver is not able to distribute all of it among multiple streams.


Regards,
Clemens


___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] Onboard HDA/ALC898 works only after 60 second delay after booting

2020-08-14 Thread Shapeshifter
Hi,

thanks for your reply.

On 2020-08-14 11:07, Kai Vehmanen wrote:
> Are you using the i915 driver at all? If 
> you load it (even if not using it for displays), that should help with the 
> delay as well.

I'm not using i915, but it is loaded by default. I also tried building
it into the kernel image for early loading, but the problem persisted.

Actually, I just discovered the only functioning work-around is quite
the opposite: blacklisting i915 on the kernel line. When blacklisting
i915 using /etc/modprobe.d, it still gets loaded for some reason, even
though it is not required by any other modules, and my problem persists.

But blacklisting it on the kernel line works, and then the 60s timeout
disappears.

> For a quick workaround, 
> options snd_hda_codec_hdmi enable_acomp=N
I tried this (without applying the workaround above) and this had no
effect for me.

I'm considering to file a bug against the kernel driver, since a
hard-coded 60 second delay seems like very bad style to me in any scenario.

Best regards,
S



___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


[Alsa-user] Parallel playback on multiple USB cards

2020-08-14 Thread Alexandre Bouillot
Hi,

I'm trying to set up a system for audio measurements and I'm trying to have
a 3 channels solution using one single host (currently a Raspberry Pi,
might migrate to x86 later on if needed).

I have the one channel system working with two USB audio cards - one for
emitting the sound and the other to record the audio output.

I'm using shell commands as aplay and arecord.

I'm able to address each of the 6 cards independently correctly.

However, when I'm trying to have a second channel - not to mention the
third - working in parallel with the first, I face problems.

I launch aplay instances in asynchronous mode with an & at the end of the
command line.
As soon as the second instance is running, there is no more sound issued on
any boards.
As soon as there is only one instance left running, the assigned card is
properly emitting the sound.

I'm wondering if it is possible to have parallel instances of aplay, each
controlling one audio card.

Not to spoil anything, the next step will be the same, but with arecord.

Thanks for any pointers you can provide.
Alexandre
___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


Re: [Alsa-user] Onboard HDA/ALC898 works only after 60 second delay after booting

2020-08-14 Thread Kai Vehmanen
Hi,

On Fri, 14 Aug 2020, Shapeshifter wrote:

> some months ago, presumably after a kernel update, my system (archlinux)
> started having the following problem.
> 
> After booting, it takes pretty much exactly 1 minute for the HDA Intel
> PCH / Realtek ALC898 audio card and devices to become available.

the delay comes from snd-hda-intel for the Intel onboard HDA controller, 
trying to hook up with Intel graphics (i915). In your case, HDMI is hooked 
to NVidia, so this will fail and you hit the 60sec timeout. The driver 
does check whether i915 is present, but for some reason in your case 
this does not work as expected. Are you using the i915 driver at all? If 
you load it (even if not using it for displays), that should help with the 
delay as well.

For a quick workaround, 
options snd_hda_codec_hdmi enable_acomp=N

... but this is likely to affect HDMI audio for NVidia as well (all newer 
ones need acomp as well and the above setting affects both).

Br, Kai


___
Alsa-user mailing list
Alsa-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-user


[Alsa-user] Onboard HDA/ALC898 works only after 60 second delay after booting

2020-08-14 Thread Shapeshifter
Hi,

some months ago, presumably after a kernel update, my system (archlinux)
started having the following problem.

After booting, it takes pretty much exactly 1 minute for the HDA Intel
PCH / Realtek ALC898 audio card and devices to become available.

Here's dmesg | grep snd:

###
[3.084363] snd_hda_intel :00:1b.0: enabling device ( -> 0002)
[3.084614] snd_hda_intel :01:00.1: enabling device ( -> 0002)
[3.084660] snd_hda_intel :01:00.1: Disabling MSI
[3.084665] snd_hda_intel :01:00.1: Handle vga_switcheroo audio
client
[   64.559641] snd_hda_intel :00:1b.0: couldn't bind with audio
component
[   64.590246] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC898:
line_outs=3 (0x14/0x15/0x16/0x0/0x0) type:line
[   64.590248] snd_hda_codec_realtek hdaudioC0D0:speaker_outs=0
(0x0/0x0/0x0/0x0/0x0)
[   64.590249] snd_hda_codec_realtek hdaudioC0D0:hp_outs=1
(0x1b/0x0/0x0/0x0/0x0)
[   64.590250] snd_hda_codec_realtek hdaudioC0D0:mono: mono_out=0x0
[   64.590251] snd_hda_codec_realtek hdaudioC0D0:dig-out=0x1e/0x0
[   64.590251] snd_hda_codec_realtek hdaudioC0D0:inputs:
[   64.590252] snd_hda_codec_realtek hdaudioC0D0:  Front Mic=0x19
[   64.590253] snd_hda_codec_realtek hdaudioC0D0:  Rear Mic=0x18
[   64.590254] snd_hda_codec_realtek hdaudioC0D0:  Line=0x1a
###

At the 64 second mark, in this case, sound starts working correctly.

Here's lsmod | grep snd before sound starts working:

###
snd_hda_codec_hdmi 73728  1
snd_hda_intel  53248  0
snd_intel_dspcfg   28672  1 snd_hda_intel
snd_hda_codec 167936  2 snd_hda_codec_hdmi,snd_hda_intel
snd_hda_core  106496  3
snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
snd_hwdep  16384  1 snd_hda_codec
snd_pcm   147456  4
snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
snd_timer  45056  1 snd_pcm
snd   114688  6
snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_pcm
soundcore  16384  1 snd
###

and after:

###
snd_hda_codec_realtek   135168  1
snd_hda_codec_generic98304  1 snd_hda_codec_realtek
ledtrig_audio  16384  2 snd_hda_codec_generic,snd_hda_codec_realtek
snd_hda_codec_hdmi 73728  1
snd_hda_intel  53248  5
snd_intel_dspcfg   28672  1 snd_hda_intel
snd_hda_codec 167936  4
snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core  106496  5
snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep  16384  1 snd_hda_codec
snd_pcm   147456  6
snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
snd_timer  45056  3 snd_pcm
snd   114688  14
snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm
soundcore  16384  1 snd
###

Here's aplay -l before sound starts working:

###
 List of PLAYBACK Hardware Devices 
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 11: HDMI 5 [HDMI 5]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 12: HDMI 6 [HDMI 6]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
###

and after:

###
 List of PLAYBACK Hardware Devices 
card 0: PCH [HDA Intel PCH], device 0: ALC898 Analog [ALC898 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC898 Digital [ALC898 Digital]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 11: HDMI 5 [HDMI 5]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], de