alsa-user Mailing List for Advanced Linux Sound Architecture
Brought to you by:
perex
You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(204) |
Jun
(332) |
Jul
(443) |
Aug
(448) |
Sep
(353) |
Oct
(355) |
Nov
(421) |
Dec
(496) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(421) |
Feb
(430) |
Mar
(430) |
Apr
(529) |
May
(364) |
Jun
(338) |
Jul
(299) |
Aug
(377) |
Sep
(330) |
Oct
(483) |
Nov
(454) |
Dec
(301) |
| 2003 |
Jan
(536) |
Feb
(547) |
Mar
(557) |
Apr
(467) |
May
(343) |
Jun
(524) |
Jul
(490) |
Aug
(339) |
Sep
(466) |
Oct
(585) |
Nov
(496) |
Dec
(495) |
| 2004 |
Jan
(775) |
Feb
(668) |
Mar
(574) |
Apr
(463) |
May
(371) |
Jun
(363) |
Jul
(301) |
Aug
(527) |
Sep
(319) |
Oct
(396) |
Nov
(336) |
Dec
(554) |
| 2005 |
Jan
(423) |
Feb
(589) |
Mar
(634) |
Apr
(366) |
May
(436) |
Jun
(467) |
Jul
(346) |
Aug
(464) |
Sep
(345) |
Oct
(442) |
Nov
(420) |
Dec
(431) |
| 2006 |
Jan
(662) |
Feb
(424) |
Mar
(454) |
Apr
(387) |
May
(302) |
Jun
(452) |
Jul
(353) |
Aug
(329) |
Sep
(319) |
Oct
(344) |
Nov
(306) |
Dec
(231) |
| 2007 |
Jan
(313) |
Feb
(316) |
Mar
(203) |
Apr
(211) |
May
(213) |
Jun
(214) |
Jul
(183) |
Aug
(287) |
Sep
(240) |
Oct
(227) |
Nov
(321) |
Dec
(218) |
| 2008 |
Jan
(303) |
Feb
(194) |
Mar
(289) |
Apr
(193) |
May
(208) |
Jun
(247) |
Jul
(284) |
Aug
(217) |
Sep
(150) |
Oct
(148) |
Nov
(171) |
Dec
(254) |
| 2009 |
Jan
(258) |
Feb
(144) |
Mar
(123) |
Apr
(239) |
May
(181) |
Jun
(182) |
Jul
(123) |
Aug
(100) |
Sep
(127) |
Oct
(137) |
Nov
(169) |
Dec
(111) |
| 2010 |
Jan
(162) |
Feb
(112) |
Mar
(145) |
Apr
(96) |
May
(110) |
Jun
(67) |
Jul
(86) |
Aug
(112) |
Sep
(87) |
Oct
(126) |
Nov
(83) |
Dec
(37) |
| 2011 |
Jan
(102) |
Feb
(147) |
Mar
(71) |
Apr
(68) |
May
(67) |
Jun
(97) |
Jul
(56) |
Aug
(73) |
Sep
(78) |
Oct
(37) |
Nov
(75) |
Dec
(54) |
| 2012 |
Jan
(137) |
Feb
(103) |
Mar
(70) |
Apr
(67) |
May
(37) |
Jun
(104) |
Jul
(94) |
Aug
(100) |
Sep
(79) |
Oct
(80) |
Nov
(98) |
Dec
(38) |
| 2013 |
Jan
(84) |
Feb
(137) |
Mar
(107) |
Apr
(106) |
May
(117) |
Jun
(53) |
Jul
(61) |
Aug
(48) |
Sep
(39) |
Oct
(69) |
Nov
(99) |
Dec
(86) |
| 2014 |
Jan
(125) |
Feb
(87) |
Mar
(49) |
Apr
(105) |
May
(86) |
Jun
(34) |
Jul
(45) |
Aug
(65) |
Sep
(59) |
Oct
(69) |
Nov
(71) |
Dec
(58) |
| 2015 |
Jan
(26) |
Feb
(73) |
Mar
(49) |
Apr
(38) |
May
(78) |
Jun
(30) |
Jul
(12) |
Aug
(48) |
Sep
(56) |
Oct
(47) |
Nov
(13) |
Dec
(25) |
| 2016 |
Jan
(48) |
Feb
(49) |
Mar
(41) |
Apr
(46) |
May
(44) |
Jun
(29) |
Jul
(30) |
Aug
(37) |
Sep
(50) |
Oct
(31) |
Nov
(52) |
Dec
(37) |
| 2017 |
Jan
(8) |
Feb
(29) |
Mar
(35) |
Apr
(19) |
May
(39) |
Jun
(24) |
Jul
(46) |
Aug
(19) |
Sep
(15) |
Oct
(31) |
Nov
(22) |
Dec
(12) |
| 2018 |
Jan
(42) |
Feb
(17) |
Mar
(7) |
Apr
(31) |
May
(9) |
Jun
(34) |
Jul
(32) |
Aug
(24) |
Sep
(15) |
Oct
(13) |
Nov
(6) |
Dec
(14) |
| 2019 |
Jan
(10) |
Feb
(6) |
Mar
(7) |
Apr
(9) |
May
(6) |
Jun
(21) |
Jul
(9) |
Aug
(2) |
Sep
(6) |
Oct
(8) |
Nov
(17) |
Dec
(39) |
| 2020 |
Jan
(26) |
Feb
(12) |
Mar
(14) |
Apr
(15) |
May
(45) |
Jun
(28) |
Jul
(46) |
Aug
(32) |
Sep
(24) |
Oct
(24) |
Nov
(27) |
Dec
(22) |
| 2021 |
Jan
(10) |
Feb
(16) |
Mar
(22) |
Apr
(22) |
May
(12) |
Jun
(15) |
Jul
(13) |
Aug
(4) |
Sep
(6) |
Oct
(5) |
Nov
(19) |
Dec
(15) |
| 2022 |
Jan
(9) |
Feb
(9) |
Mar
(3) |
Apr
(5) |
May
(4) |
Jun
(10) |
Jul
(7) |
Aug
(1) |
Sep
(3) |
Oct
(20) |
Nov
(2) |
Dec
(3) |
| 2023 |
Jan
(9) |
Feb
(4) |
Mar
(5) |
Apr
(2) |
May
|
Jun
|
Jul
(4) |
Aug
(3) |
Sep
(1) |
Oct
(6) |
Nov
(5) |
Dec
(2) |
| 2024 |
Jan
(1) |
Feb
(18) |
Mar
(1) |
Apr
(4) |
May
(25) |
Jun
(1) |
Jul
(4) |
Aug
|
Sep
(1) |
Oct
(6) |
Nov
(2) |
Dec
|
| 2025 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2026 |
Jan
|
Feb
(8) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Masaru N. <no...@la...> - 2026-02-21 01:06:10
|
Hello,
In the Message;
Subject : [Alsa-user] snd-usb-audio is having trouble recognizing the Marantz HD-AMP1
Message-ID : <87v...@la...>
Date & Time: Thu, 12 Feb 2026 14:30:22 +0900
[MN] == Masaru Nomiya <no...@la...> has written:
[...]
MN> $ inxi -A
MN> Audio:
MN> Device-1: NVIDIA AD106M High Definition Audio driver: N/A
MN> Device-2: Advanced Micro Devices [AMD/ATI] Radeon High Definition Audio
MN> [Rembrandt/Strix] driver: N/A
MN> Device-3: Advanced Micro Devices [AMD] Family 17h/19h/1ah HD Audio
MN> driver: N/A
MN> Device-4: Generic USB Audio driver: hid-generic,snd-usb-audio,usbhid
MN> type: USB
MN> Device-5: D&M Holdings (Denon/Marantz) HD-AMP1 driver: snd-usb-audio
MN> type: USB
MN> API: ALSA v: k6.18.9-1-default status: kernel-api
MN> Server-1: PipeWire v: 1.5.85 status: active (process)
The root cause is this.
In short, pipewire prioritizes Device-4: Generic USB Audio over
Device-5: D&M Holdings (Denon/Marantz) HD-AMP1.
That is;
I cahnged /etc/modprobe.d/50-sound.conf as folows;
options snd slots=snd-usb-audio,snd-usb-audio index=1
# fHJ1.nUBBZmosli0:USB Audio
alias snd-card-0 snd-usb-audio
# wn1q.DDMX92BGFe0:HD-AMP1
options snd-usb-audio index=0
alias snd-card-1 snd-usb-audio
and, made the file 10-default_sink.conf in
~/.config/pipewire/pipewire.conf.d;
"context.objects": [
{ "factory": "metadata",
"args": {
"metadata.name": "my-metadata",
"metadata.values": [
{ "key": "default.audio.sink", "value": { "name": "HD-AMP1" } }
]
}
}
]
then, after logging in, the following always occurs;
0 [HDAMP1 ]: USB-Audio - HD-AMP1
D&M Holdings Inc. HD-AMP1 at usb-0000:08:00.0-7, high speed
1 [U0x26ce0xa08 ]: USB-Audio - USB Device 0x26ce:0xa08
Generic USB Device 0x26ce:0xa08 at usb-0000:08:00.0-10, high speed
However, unless I run `$ systemctl --user stop pipewire.service
pipewire.socket`, snd-usb-audio driver will continue to hold onto the
Generic USB Device.
Therefore, after adding
`systemctl --user stop pipewire.service pipewire.socket`
and
`systemctl --user start pipewire
to my .bash_profile, pipewire now connects to the HD-AMP1 upon login.
There might be a more elegant way, though.
What remains unclear is why, with identical hardware, Linux kernel
6.18.6 and earlier required no action, while this change occurred.....
Best Regards.
--
┏━━┓彡 Masaru Nomiya mail-to: nomiya @ lake.dti.ne.jp
┃\/彡
┗━━┛ "The AI model is not your therapist and the company behind
it can't necessarily keep it secret. Sam Altman thinks
that's 'very screwed up.'"
-- Even OpenAI's CEO Says Be Careful What You Share With ChatGPT, Jon Reed --
|
|
From: Masaru N. <no...@la...> - 2026-02-19 23:49:42
|
Hello, In the Message; Subject : Re: [Alsa-user] snd-usb-audio is having trouble recognizing the Marantz HD-AMP1 Message-ID : <87t...@su...> Date & Time: Thu, 19 Feb 2026 11:32:45 +0100 [TI] == Takashi Iwai <ti...@su...> has written: TI> On Thu, 19 Feb 2026 11:10:16 +0100, TI> Masaru Nomiya wrote: [...] MN> > Today, there was an upgrade to kernel 6.19.2, so I installed TI> > it. MN> > The workaround has changed, but fundamentally, the symptoms remain MN> > unchanged. TI> OK, then please open a bugzilla entry. Thanks. Yesterday, following the kernel update, I had a lot of trouble getting the USB-DAC recognized while installing the NVIDIA driver. This morning, however, the USB-DAC was recognized without any issues. I'll monitor it for a while. Best Regards. -- ┏━━┓彡 Masaru Nomiya mail-to: nomiya @ lake.dti.ne.jp ┃\/彡 ┗━━┛ "Japan was the future but it's stuck in the past" -- Rupert Wingfield-Hayes (BBC) -- |
|
From: Masaru N. <no...@la...> - 2026-02-19 11:19:16
|
Hello,
Sorry, I missed.
In the Message;
Subject : Re: [Alsa-user] snd-usb-audio is having trouble recognizing the Marantz HD-AMP1
Message-ID : <d3c...@al...>
Date & Time: Thu, 12 Feb 2026 10:57:04 +0100
[RM] == Ralf Mardorf <ral...@al...> has written:
RM> Hi,
RM> I used to use jackd on-demand with the Alsa backend, but now I only use
RM> ALSA without a sound server. I can't say anything about pulseaudio or,
RM> in your case, pipewire, except that I can give you some tips on the ALSA
RM> backend.
RM> It is possible, with some limitations, to predefine how the sound
RM> devices should be integrated.
RM> • rocketmouse@archlinux ~
RM> $ cat /etc/modprobe.d/alsa-base.conf
RM> # ALSA module ordering
RM> options snd slots=snd_hdspm,snd_ice1712,snd_ice1712
[...]
Thanks.
I've been using USB DACs for quite some time now, and the Marantz
HD-AMP1 is my fourth one.
RM> However, if you always have a second USB audio device plugged in
RM> alongside the HD-AMP1, I don't know how you can specify the order in
RM> which the two USB devices are connected, as this probably won't work via
RM> /etc/modprobe.d/alsa-base.conf.
Here's how it is with Tumbleweed;
$ cat /etc/modprobe.d/50-sound.conf
options snd slots=snd-usb-audio,snd-usb-audio
# wn1q.DDMX92BGFe0:HD-AMP1
alias snd-card-0 snd-usb-audio
# fHJ1.nUBBZmosli0:USB Audio
alias snd-card-1 snd-usb-audio
RM> I used to be deeply rooted in Linux pro audio, but switched to a
RM> proprietary solution for audio a long time ago.
RM> There may be mechanisms, especially in connection with pipewire, that
RM> allow you to reliably define the HD-AMP1 as the default audio device
RM> even when multiple audio devices are using snd-usb-audio.
The combination described above enables digital playback.
$ pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 757
Tile Size: 65472
User Name: masaru
Host Name: localhost.localdomain
Server Name: PulseAudio (on PipeWire 1.5.85)
Server Version: 15.0.0
Default Sample Specification: float32le 16ch 384000Hz
Default Channel Map: aux0,aux1,aux2,aux3,aux4,aux5,aux6,aux7,aux8,aux9,aux10,
aux11,aux12,aux13,aux14,aux15
Default Sink: alsa_output.usb-D_M_Holdings_Inc._HD-AMP1-00.iec958-stereo
Default Source: alsa_output.usb-D_M_Holdings_Inc._HD-AMP1-00.iec958-stereo.monitor
Cookie: 3995:4808
RM> It might be advisable to consult an openSUSE user mailing list with more
RM> traffic than this list or to check out
RM> https://lists.linuxaudio.org/postorius/lists/linux-audio-user.lists.linuxaudio.org/.
Takashi is also one of the primary maintainers of openSUSE.
Best Regards.
--
┏━━┓彡 Masaru Nomiya mail-to: nomiya @ lake.dti.ne.jp
┃\/彡
┗━━┛ "Even among humans, the Pirahã, a small tribe living deep
in the Amazon rainforest, have no words to express the past
or future, and live entirely in the present moment."
-- "Keizaikihyou" Toyotaka Sakai (in JP) --
|
|
From: Takashi I. <ti...@su...> - 2026-02-19 10:32:53
|
On Thu, 19 Feb 2026 11:10:16 +0100, Masaru Nomiya wrote: > > Hello, > > In the Message; > > Subject : Re: [Alsa-user] snd-usb-audio is having trouble recognizing the Marantz HD-AMP1 > Message-ID : <878...@su...> > Date & Time: Thu, 12 Feb 2026 11:48:50 +0100 > > [TI] == Takashi Iwai <ti...@su...> has written: > > TI> On Thu, 12 Feb 2026 06:30:22 +0100, > TI> Masaru Nomiya wrote: > > MN> > Hello, > > MN> > On openSUSE Tumbleweed, recognizing the Marantz HD-AMP1 became > MN> > difficult starting with kernel 6.18.7, and the difficulty > MN> > significantly increased with kernel 6.18.9. > > TI> Try 6.19 kernel. I guess you're hitting a known regression in the > TI> buggy USB-audio OOB check that was fixed recently. > > Today, there was an upgrade to kernel 6.19.2, so I installed > it. > > The workaround has changed, but fundamentally, the symptoms remain > unchanged. OK, then please open a bugzilla entry. thanks, Takashi |
|
From: Masaru N. <no...@la...> - 2026-02-19 10:10:26
|
Hello, In the Message; Subject : Re: [Alsa-user] snd-usb-audio is having trouble recognizing the Marantz HD-AMP1 Message-ID : <878...@su...> Date & Time: Thu, 12 Feb 2026 11:48:50 +0100 [TI] == Takashi Iwai <ti...@su...> has written: TI> On Thu, 12 Feb 2026 06:30:22 +0100, TI> Masaru Nomiya wrote: MN> > Hello, MN> > On openSUSE Tumbleweed, recognizing the Marantz HD-AMP1 became MN> > difficult starting with kernel 6.18.7, and the difficulty MN> > significantly increased with kernel 6.18.9. TI> Try 6.19 kernel. I guess you're hitting a known regression in the TI> buggy USB-audio OOB check that was fixed recently. Today, there was an upgrade to kernel 6.19.2, so I installed it. The workaround has changed, but fundamentally, the symptoms remain unchanged. Best Regards. -- ┏━━┓彡 Masaru Nomiya mail-to: nomiya @ lake.dti.ne.jp ┃\/彡 ┗━━┛ "It was a sin to be delicious. -- Abstinence preached by Christianity." -- "The History of the mind in French Cuisine" Chikako Hashimoto (in JP) -- |
|
From: Takashi I. <ti...@su...> - 2026-02-12 10:49:03
|
On Thu, 12 Feb 2026 06:30:22 +0100, Masaru Nomiya wrote: > > Hello, > > On openSUSE Tumbleweed, recognizing the Marantz HD-AMP1 became > difficult starting with kernel 6.18.7, and the difficulty > significantly increased with kernel 6.18.9. Try 6.19 kernel. I guess you're hitting a known regression in the buggy USB-audio OOB check that was fixed recently. Takashi |
|
From: Ralf M. <ral...@al...> - 2026-02-12 10:32:48
|
Hi,
I used to use jackd on-demand with the Alsa backend, but now I only use
ALSA without a sound server. I can't say anything about pulseaudio or,
in your case, pipewire, except that I can give you some tips on the ALSA
backend.
It is possible, with some limitations, to predefine how the sound
devices should be integrated.
• rocketmouse@archlinux ~
$ cat /etc/modprobe.d/alsa-base.conf
# ALSA module ordering
options snd slots=snd_hdspm,snd_ice1712,snd_ice1712
In my case, /etc/modprobe.d/alsa-base.conf reserves card 0 for an hdspm
card, car1 and card 2 for an ice1712 card each. An activated onboard
device would thus become card 3, and if I were to plug in a USB audio
device after booting, it would become card 4.
There is already a problem here: if two ice1712 cards were plugged in,
it would not necessarily be clear which of the two cards would become
card 1 or card 2.
To get information about the current status of the ALSA cards, I
recommend using the aplay command.
• rocketmouse@archlinux ~
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HDSPMx579bcc [RME AIO_579bcc], device 0: RME AIO [RME AIO]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: PCH [HDA Intel PCH], device 0: ALC897 Analog [ALC897 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: PCH [HDA Intel PCH], device 1: ALC897 Digital [ALC897 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: PCH [HDA Intel PCH], device 3: HDMI 0 [EV2450]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 4: USB [Scarlett 18i20 USB], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
There are no ice1712 cards inserted, and since the slots are reserved, I
don't have card 1 or card 2. The Intel HDMI device becomes card3 because
the USB audio device is never connected. I only connected it now for
demonstration purposes.
What I want is for audio signals to be output via the speakers of my
EV2450 LCD display, so I have created the following file in $HOME:
• rocketmouse@archlinux ~
$ cat .asoundrc
defaults.pcm.card 3
defaults.pcm.device 3
In the past, when I also used jackd, I didn't have .asoundrc.
Without this .asoundrc, I was able to instruct the jackd sound server to
use the hdspm card, for example, by telling it to do so using the
corresponding option in the form of
hw:0,0
or
hw:HDSPMx579bcc,0
However, if you always have a second USB audio device plugged in
alongside the HD-AMP1, I don't know how you can specify the order in
which the two USB devices are connected, as this probably won't work via
/etc/modprobe.d/alsa-base.conf.
I used to be deeply rooted in Linux pro audio, but switched to a
proprietary solution for audio a long time ago.
There may be mechanisms, especially in connection with pipewire, that
allow you to reliably define the HD-AMP1 as the default audio device
even when multiple audio devices are using snd-usb-audio.
It might be advisable to consult an openSUSE user mailing list with more
traffic than this list or to check out
https://lists.linuxaudio.org/postorius/lists/linux-audio-user.lists.linuxaudio.org/.
Regards,
Ralf
|
|
From: Masaru N. <no...@la...> - 2026-02-12 05:53:26
|
Hello,
On openSUSE Tumbleweed, recognizing the Marantz HD-AMP1 became
difficult starting with kernel 6.18.7, and the difficulty
significantly increased with kernel 6.18.9.
$ inxi -A
Audio:
Device-1: NVIDIA AD106M High Definition Audio driver: N/A
Device-2: Advanced Micro Devices [AMD/ATI] Radeon High Definition Audio
[Rembrandt/Strix] driver: N/A
Device-3: Advanced Micro Devices [AMD] Family 17h/19h/1ah HD Audio
driver: N/A
Device-4: Generic USB Audio driver: hid-generic,snd-usb-audio,usbhid
type: USB
Device-5: D&M Holdings (Denon/Marantz) HD-AMP1 driver: snd-usb-audio
type: USB
API: ALSA v: k6.18.9-1-default status: kernel-api
Server-1: PipeWire v: 1.5.85 status: active (process)
$ cat /proc/asound/cards
0 [HDAMP1 ]: USB-Audio - HD-AMP1
D&M Holdings Inc. HD-AMP1 at usb-0000:08:00.0-8, high speed
1 [Audio ]: USB-Audio - USB Audio
Generic USB Audio at usb-0000:08:00.0-10, high speed
However, since it doesn't recognize the HD-AMP1, I keep repeating this
process;
$ sudo systemctl restart systemd-udev-trigger.service
Here is the info about HD-AMP1;
HD-AMP1
Manufacturer: D&M Holdings Inc.
Speed: 480Mb/s (high)
Bus: 1
Address: 13
USB Version: 2.00
Device Class: ef
Device Subclass: 02
Device Protocol: 01
Maximum Default Endpoint Size: 64
Number of Configurations: 2
Vendor Id: 154e
Product Id: 3007
Revision Number: 00.06
Config Number: 1
Number of Interfaces: 3
Attributes: c0
MaxPower Needed: 10mA
Interface Number: 0
Name: snd-usb-audio
Alternate Number: 0
Class: 01
Sub Class: 01
Protocol: 20
Number of Endpoints: 0
Interface Number: 1
Name: snd-usb-audio
Alternate Number: 1
Class: 01
Sub Class: 02
Protocol: 20
Number of Endpoints: 2
Endpoint Address: 01
Direction: out
Attribute: 5
Type: Isoc
Max Packet Size: 776
Interval: 125us
Endpoint Address: 81
Direction: in
Attribute: 17
Type: Isoc
Max Packet Size: 4
Interval: 1ms
Interface Number: 2
Name: (none)
Alternate Number: 0
Class: fe
Sub Class: 01
Protocol: 01
Number of Endpoints: 0
Best Regards.
--
┏━━┓彡 Masaru Nomiya mail-to: nomiya @ lake.dti.ne.jp
┃\/彡
┗━━┛ "Even among humans, the Pirahã, a small tribe living deep
in the Amazon rainforest, have no words to express the past
or future, and live entirely in the present moment."
-- "Keizaikihyou" Toyotaka Sakai (in JP) --
|
|
From: Takashi S. <o-t...@sa...> - 2025-08-10 00:44:27
|
On Sat, Aug 09, 2025 at 01:51:34PM +0200, Dmitry Sushkov wrote: > On 09. 08. 25 13:06, Takashi Sakamoto wrote: > > For this kind of topic, I've always suggested to use 'jack_in' and 'jack_out' > > in jack-example-tools[1]. However, it is not what you want, I guess. > It does some resampling, so will add some latency compared to first device. > And probably cause some phase issues of multiple mics connected. But If I > set latency compensation in DAW it could work. > > In my opinion, your M-Audio ProFire 2626 has standalone mode, so once > > configured IEEE 1394 connection is needless in your case. > > > > I guess the center of your issue is that configuration store operation > > does not work or is not provided by any software, right? > I need all 3 devices connected to IEEE1394 bus. I have wrote a small > websockets server forwarding controls from ffado-mixer to javascript app in > a mobile phone. And set up an IEM mixer. It works just fine until I want to > record something and start streaming. Or if I stream backing track from > laptop to devices through IEEE1394 bus. So for now two Focusrite Saffire PRO > 40 interfaces only working without streaming to/from laptop, synced through > ADAT and working just fine. I use third USB multichannel card to stream > backing track and click. Bud I have bought a third firewire and want to set > it up to play all together. Streaming through firewire bus is unstable when > I connect more then one device. Using FFADO it stops streaming occasionally > without any xruns or logs reported. Using ALSA I only see first 10 channels > of choosen device, or 16 channels if I choose HW 0.1 card. Ah, you need packet streaming from your system. > > I have never mentioned this before, as it is the technical detail > > inconvenient to users and not widely recognized. However, all TC Applied > > Technologies DICE ASICs - as well as other device solutions like BridgeCo's > > BeBoB - do not synchronize timestamps between streams of isochronous packets. > Even within one device? Or does it apply to daisy chained devices? Or > digital ADAT/SPDIF inputs? > > > > This means that audio data frames in one packet stream have different > > presentation times compared to those in another stream, even when the > > device supports multiple streams, such as your ProFire 2626, or when > > some devices are wired for synchronization aim. > > > > For example, when observing two isochronous packet streams transferred by > > your ProFire 2626 over an extended period (e.g. 1 hour), these two streams > > end up transmitting slightly different numbers of audio data frames -- > > even if they are connected via optical interface for ADAT data > > synchronization. Upon further inspection of each packet's content, it > > becomes clear that the presentation times for audio frames, as computed > > from the timestamps within the packets, differ for each stream -- even > > when the paired packets are transferred in the same isochronous cycle. > Again, does it applies for one device alone? Even for 2 main monitor left > and right streams? What a shame.... > > What users perceive as aggregated audio data frames may inadvertently > > combine audio data frames captured at different times into the same > > frame. This expains why the ALSA firewire stack does not implement such > > kind of function. > Will adaptive resampling of alsa_in with latency compensation in DAW solve > the issue? All of endpoints for incoming/outgoing packet streaming in the relevant devices have no function to synchronize, even if: - these endpoints are on the same device - these endpoints are on the different devices connected to the same IEEE 1394 bus - these endpoints are on the different devices connected to the same IEEE 1394 bus and connected to any digital audio interface such like ADAT (optical), Word clock (BNC), S/PDIF (either optical or coaxial). > > The 90 msec delay is what expected, as the equivalent of packets queued > > initially. > > Thats weird. Theres a discussion today at PipeWire tracker about 90ms > latency. Main argument is that when jack is started with ALSA backend it > just works with 10 ms latency without any xruns reported for hours. And when > pipewire is using same ALSA driver its only working with 100ms latency > whatever settings used. And now you confirm that 90ms addition is what > expected? For SNDRV_PCM_STREAM_PLAYBACK substream, the time of delay is determined by the number of packets queued initially. The size is computed by the size of PCM buffer configured by ALSA PCM application. In this point, the difference between pipewire and jackd processes just comes from the size of PCM buffer, in my opinion. Additionally, the way to use ALSA PCM substream differs between these processes; the former applies the modern SNDRV_PCM_HW_PARAMS_NO_PERIOD_WAKEUP, while the latter applied the old-fashioned way to rely on periodical process wakeup scheduled by interrupt service routine. They have the slight difference reflecting their application, I guess. Regards Takashi Sakamoto |
|
From: Takashi S. <o-t...@sa...> - 2025-08-09 11:06:43
|
Hi, On Fri, Aug 08, 2025 at 03:51:51PM +0200, Dmitry Sushkov wrote: > Hello. > > Is there a way to open jackd with all 26 ins and 26 outs on M-AUDIO ProFire > 2626 with alsa backend? aplay see 2 devices, but I can use either one or > another at a time. One have 10 inputs and 10 outputs, another have 16 inputs > 16 outputs. So the driver knows about all I/O. Can they be used at same > time? > > I have tried to specify io channels counts but jack wont start. For this kind of topic, I've always suggested to use 'jack_in' and 'jack_out' in jack-example-tools[1]. However, it is not what you want, I guess. > Main problem for me is to use 3 snd-dice devices together interconnected via > ADAT but actually record and playback only one of them. I still need them > connected to firewire bus to control internal mixers for direct monitoring. In my opinion, your M-Audio ProFire 2626 has standalone mode, so once configured IEEE 1394 connection is needless in your case. I guess the center of your issue is that configuration store operation does not work or is not provided by any software, right? > FFADO is always opening devices in daisy-chain mode showing all ports. This > is causing sync issues and unstable playback. I have never mentioned this before, as it is the technical detail inconvenient to users and not widely recognized. However, all TC Applied Technologies DICE ASICs - as well as other device solutions like BridgeCo's BeBoB - do not synchronize timestamps between streams of isochronous packets. This means that audio data frames in one packet stream have different presentation times compared to those in another stream, even when the device supports multiple streams, such as your ProFire 2626, or when some devices are wired for synchronization aim. For example, when observing two isochronous packet streams transferred by your ProFire 2626 over an extended period (e.g. 1 hour), these two streams end up transmitting slightly different numbers of audio data frames -- even if they are connected via optical interface for ADAT data synchronization. Upon further inspection of each packet's content, it becomes clear that the presentation times for audio frames, as computed from the timestamps within the packets, differ for each stream -- even when the paired packets are transferred in the same isochronous cycle. What users perceive as aggregated audio data frames may inadvertently combine audio data frames captured at different times into the same frame. This expains why the ALSA firewire stack does not implement such kind of function. > PipeWire show all devices, but as separate nodes and its adding a huge > 90ms delay with ALSA backend. And I believe it performs some adaptive > resampling on the fly. So for now the only option I have is a second > laptop with ffado driver, it's working just fine when connected alone. > But it's a bit inconvenient. The 90 msec delay is what expected, as the equivalent of packets queued initially. [1] https://github.com/jackaudio/jack-example-tools [2] https://lore.kernel.org/alsa-devel/202...@wo.../ Regards Takashi Sakamoto |
|
From: Dmitry S. <sus...@gm...> - 2025-08-08 13:52:05
|
Hello. Is there a way to open jackd with all 26 ins and 26 outs on M-AUDIO ProFire 2626 with alsa backend? aplay see 2 devices, but I can use either one or another at a time. One have 10 inputs and 10 outputs, another have 16 inputs 16 outputs. So the driver knows about all I/O. Can they be used at same time? I have tried to specify io channels counts but jack wont start. Main problem for me is to use 3 snd-dice devices together interconnected via ADAT but actually record and playback only one of them. I still need them connected to firewire bus to control internal mixers for direct monitoring. FFADO is always opening devices in daisy-chain mode showing all ports. This is causing sync issues and unstable playback. PipeWire show all devices, but as separate nodes and its adding a huge 90ms delay with ALSA backend. And I believe it performs some adaptive resampling on the fly. So for now the only option I have is a second laptop with ffado driver, it's working just fine when connected alone. But it's a bit inconvenient. Regadrs Dmitry |
|
From: Joshua L. <jo...@dr...> - 2025-04-28 03:40:00
|
Hello all,
I am attempting to write some ALSA use case configuration for a device
using a TAS6424 audio amplifier.
The Linux driver for this amplifier exposes a dual-channel PCM sink.
There are four physical output channels - two for each input channel.
Each output channel's volume can be set with a dedicated ALSA mixer control:
- TAS6424 Speaker Driver CH1 Playback Volume
- TAS6424 Speaker Driver CH2 Playback Volume
- TAS6424 Speaker Driver CH3 Playback Volume
- TAS6424 Speaker Driver CH4 Playback Volume
How can I tell ALSA UCM to set all of these channels when changing the
volume? As far as I can tell, I can only set a single PlaybackVolume
channel.
At a minimum, I need to set all the channel volumes together.
If I can also set each individually by describing which logical stereo
channels map to which output channels, that would be a nice bonus.
This is what I have so far, acting on CH2 alone:
SectionDevice."Speaker" {
Comment "Speakers"
Value {
PlaybackPCM "hw:''${CardId},0"
PlaybackRate 48000
PlaybackChannels 2
PlaybackVolume "TAS6424 Speaker Driver CH2 Playback Volume"
}
}
Thanks,
Josh
|
|
From: Andrew P. <and...@gm...> - 2025-04-09 19:37:23
|
Hi ALSA peeps
I need to increase the buffer size ALSA is using, in order to work around a
problem with my USB audio device, which appears to be caused by something
on my Raspberry Pi. I get occasional pauses in the sound output, which I'm
hoping are just buffer underruns. They sort themselves out once the audio
has been playing for something like 20 seconds.
All my attempts so far to use various conbinations of 'periods'
'period_size' and 'buffer_size' have failed. I'm starting with the
following base asound.conf, which does work:
pcm.ufo202 {
type hw
card 1
}
ctl.ufo202 {
type hw
card 1
}
How can I get a nice big audio buffer for this device?
Thanks
Andrew.
|
|
From: Vampire F. <vam...@va...> - 2025-03-01 01:15:33
|
Howdy! I am trying to get a livestreaming setup where I can hear my microphone and line in at the output (zero latency monitoring) and also record the stereo mix (record what I hear). I have achieved this on Windows, so I know the hardware can do it, and now I'm trying to achieve this on linux. When I configure it on windows, the stereo mix appears as an extra input. I've managed to get the monitoring to work, but can't manage to record the stereo mix. I've tried various combinations of flags in the hint file, sometimes I can see Stereo Mix as the source for the two DACs, and sometimes not. When I select it, there is no signal coming in, even though I'm playing some sounds. I am not sure what to try next. I don't understand what pins are, I've tried hda-analyzer and it's not clear to me what flags I need to set. Maybe I can take the config from windows and copy it to linux somehow? Is there a driver flag that creates the stereo mix as an extra input? I don't want to use software options like using the pulseaudio monitor source, because that wouldn't have the mic mixed in, and I want to monitor the mic volume relative to the desktop volume, essentially to record what I hear exactly as I hear it. Thanks in advance! /etc/modprobe.d/hda.conf: options snd-hda-intel power_save=0 patch=,hda-hint.fw /lib/firmware/hda-hint.fw: [codec] 0x10ec0892 0x14629b86 0 [hint] #add_hp_mic = yes add_jack_modes = yes add_stereo_mix_input = yes #mixer_nid = 0 #auto_mic = no auto_mute = no #hp_mic_detect = no indep_hp = yes jack_detect = no line_in_auto_switch = no power_save_node = D0 #multi_cap_vol = yes |
|
From: Andrea V. <and...@un...> - 2025-02-20 16:33:13
|
Hi, (I am new to the list, not native English speaker and not an expert, so I apologize for any error or misunderstanding; if this is not the correct list for my problem thank you for pointing me to the right support list, or so) With my ASUS Expertbook laptop, I need to record sound in a very loud room, so I need to turn down the mic volume, and I do that by the command amixer -D default set Capture N% which works fine when N is >=8, but it seems 8% is a threshold because if I set it at 7% or below, nothing (absolutely nothing) is recorded. Is there any explanation for that, or any way to troubleshoot the problem? Unfortunately, 8% is still too high for my use case. Many thanks in advance for your help! Best regards Andrea [Fedora 40, output of alsa-info.sh at http://alsa-project.org/db/?f=4d84d2703dc05beb70c93513cf074b7da9310341] |
|
From: Rainer D. <ml...@bo...> - 2024-11-09 21:47:53
|
Hello,
I am running alsa 1.2.8 in Debian stable with a recent kernel from backports
root@mo:~# uname -a
Linux mo 6.10.6+bpo-armmp #1 SMP Debian 6.10.6-1~bpo12+1 (2024-08-26) armv7l
GNU/Linux
root@mo:~#
on a Hummingboard (with an NXP iMX.6 SoC with ARM processor cores)
aplay throws a "Channels count non available" message when using the dmix
device, with the hw device everything works.
Can anybody tell what I am doing wrong?
Here are the aplay outputs:
root@mo:~# aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
lavrate
Rate Converter Plugin Using Libav/FFmpeg Library
samplerate
Rate Converter Plugin Using Samplerate Library
speexrate
Rate Converter Plugin Using Speex Resampler
jack
JACK Audio Connection Kit
oss
Open Sound System
pulse
PulseAudio Sound Server
speex
Plugin using Speex DSP (resample, agc, denoise, echo, dereverb)
upmix
Plugin for channel upmix (4,6,8)
vdownmix
Plugin for channel downmix (stereo) with a simple spacialization
hw:CARD=Codec,DEV=0
On-board Codec, 2028000.ssi-sgtl5000 sgtl5000-0
Direct hardware device without any conversions
plughw:CARD=Codec,DEV=0
On-board Codec, 2028000.ssi-sgtl5000 sgtl5000-0
Hardware device with all software conversions
default:CARD=Codec
On-board Codec, 2028000.ssi-sgtl5000 sgtl5000-0
Default Audio Device
sysdefault:CARD=Codec
On-board Codec, 2028000.ssi-sgtl5000 sgtl5000-0
Default Audio Device
dmix:CARD=Codec,DEV=0
On-board Codec, 2028000.ssi-sgtl5000 sgtl5000-0
Direct sample mixing device
usbstream:CARD=Codec
On-board Codec
USB Stream Output
hw:CARD=SPDIF,DEV=0
On-board SPDIF, S/PDIF PCM snd-soc-dummy-dai-0
Direct hardware device without any conversions
plughw:CARD=SPDIF,DEV=0
On-board SPDIF, S/PDIF PCM snd-soc-dummy-dai-0
Hardware device with all software conversions
default:CARD=SPDIF
On-board SPDIF, S/PDIF PCM snd-soc-dummy-dai-0
Default Audio Device
sysdefault:CARD=SPDIF
On-board SPDIF, S/PDIF PCM snd-soc-dummy-dai-0
Default Audio Device
dmix:CARD=SPDIF,DEV=0
On-board SPDIF, S/PDIF PCM snd-soc-dummy-dai-0
Direct sample mixing device
usbstream:CARD=SPDIF
On-board SPDIF
USB Stream Output
hw:CARD=DWHDMI,DEV=0
DW-HDMI, dw-hdmi-ahb-audio
Direct hardware device without any conversions
plughw:CARD=DWHDMI,DEV=0
DW-HDMI, dw-hdmi-ahb-audio
Hardware device with all software conversions
default:CARD=DWHDMI
DW-HDMI, dw-hdmi-ahb-audio
Default Audio Device
sysdefault:CARD=DWHDMI
DW-HDMI, dw-hdmi-ahb-audio
Default Audio Device
dmix:CARD=DWHDMI,DEV=0
DW-HDMI, dw-hdmi-ahb-audio
Direct sample mixing device
usbstream:CARD=DWHDMI
DW-HDMI
USB Stream Output
root@mo:~# aplay --device="dmix:CARD=Codec,DEV=0" /usr/share/sounds/alsa/
Noise.wav
Playing WAVE '/usr/share/sounds/alsa/Noise.wav' : Signed 16 bit Little Endian,
Rate 48000 Hz, Mono
aplay: set_params:1358: Channels count non available
root@mo:~# aplay --device="hw:CARD=Codec,DEV=0" /usr/share/sounds/alsa/
Noise.wav
Playing WAVE '/usr/share/sounds/alsa/Noise.wav' : Signed 16 bit Little Endian,
Rate 48000 Hz, Mono
root@mo:~#
Any hint or idea is welcome.
Many thanks
Rainer
--
Rainer Dorsch
http://bokomoko.de/
|
|
From: target <si...@16...> - 2024-11-05 07:23:23
|
I am using `alsa-lib-1.2.9` in my embedded Linux system, and now I want to play multiple audio from different threads, so I googled internet (I am NOT familiar with ALSA) and found I can use `dmix`.
Here is the main part of my `/etc/asound.conf` in the board.
```
pcm.!default
{
type asym
playback.pcm "play_softvol"
capture.pcm "cap_chn0"
}
pcm.play_softvol {
type softvol
slave {
pcm play_chn0
}
control {
name "Speaker Volume"
}
min_dB -60.0
max_dB -10.0
resolution 50
}
pcm.play_chn0 {
type plug
slave {
pcm dmixer
}
}
pcm.dmixer {
type dmix
ipc_key 77235
ipc_key_add_uid true
slave {
pcm "hw:0,0"
period_time 0
period_size 320
buffer_size 2560
rate 32000
}
}
ctl.dmixer {
type hw
card 0
}
pcm.cap_chn0 {
type plug
slave {
pcm dsnooper
}
}
pcm.tloop_cap {
type plug
slave.pcm "hw:Loopback,0,0"
}
pcm.dsnooper {
type dsnoop
ipc_key 77236
ipc_key_add_uid true
slave {
pcm "hw:0,0"
channels 4
rate 16000
}
bindings {
0 0
1 1
2 2
3 3
}
}
ctl.dsnooper {
type hw
card 0
}
```
I think the `default` device is using `play_softvol`->`play_chn0`->`dmix`.
So I tried to play 2 PCM files as follows,
```
#include <stdio.h>
#include <stdlib.h>
#include <alsa/asoundlib.h>
#include <pthread.h>
pthread_t tid, tid2;
static snd_pcm_t *playback_handle;
static int size;
static snd_pcm_uframes_t frames;
void *play_func(void *arg)
{
char *buffer;
int ret;
FILE *fp = fopen(arg, "rb");
if(fp == NULL)
return 0;
buffer = (char *) malloc(size);
fprintf(stderr, "size = %d ", size);
while (1)
{
ret = fread(buffer, 1, size, fp);
if(ret == 0)
{
fprintf(stderr, "end of file on input ");
break;
}
while(ret = snd_pcm_writei(playback_handle, buffer, frames)<0)
{
usleep(2000);
if (ret == -EPIPE)
{
/* EPIPE means underrun */
fprintf(stderr, "underrun occurred ");
snd_pcm_prepare(playback_handle);
}
else if (ret < 0)
{
fprintf(stderr, "error from writei: %s ", snd_strerror(ret));
}
}
}
free(buffer);
return NULL;
}
void *play_func2(void *arg)
{
char *buffer;
int ret;
FILE *fp = fopen(arg, "rb");
if(fp == NULL)
return 0;
buffer = (char *) malloc(size);
fprintf(stderr, "size = %d ", size);
while (1)
{
ret = fread(buffer, 1, size, fp);
if(ret == 0)
{
fprintf(stderr, "end of file on input ");
break;
}
while(ret = snd_pcm_writei(playback_handle, buffer, frames)<0)
{
usleep(2000);
if (ret == -EPIPE)
{
/* EPIPE means underrun */
fprintf(stderr, "underrun occurred ");
snd_pcm_prepare(playback_handle);
}
else if (ret < 0)
{
fprintf(stderr, "error from writei: %s ", snd_strerror(ret));
}
}
}
free(buffer);
return NULL;
}
int main(int argc, char *argv[])
{
int ret;
int dir=0;
snd_pcm_uframes_t periodsize;
snd_pcm_hw_params_t *hw_params;
if (argc < 2) {
printf("error: alsa_play_test [music name] [2nd name] ");
exit(1);
}
//1.
ret = snd_pcm_open(&playback_handle, "default", SND_PCM_STREAM_PLAYBACK, 0);
if (ret < 0) {
perror("snd_pcm_open");
exit(1);
}
.......
ret = pthread_create(&tid, NULL, play_func, argv[1]);
if (argc > 2)
ret = pthread_create(&tid2, NULL, play_func2, argv[2]);
pthread_join(tid, NULL);
if (argc > 2)
pthread_join(tid2, NULL);
snd_pcm_close(playback_handle);
return 0;
}
```
```
asound_threads 1.pcm 2.pcm
play song 1.pcm and 2.pcm
size = 320
size = 320
```
But it sounds messy, the two PCMs are played in an interleaved way, but the speed is wrong and flittered.
So in my case, how can I play multiple audios (audio mixing) in multithreading?
thanks,
-Tao
|
|
From: Seamus de M. <se...@se...> - 2024-10-31 05:48:35
|
Thanks for the thoughtful reply Ralf. I'll try to "digest" this, and follow up later. On 10/27/24 7:41 PM, Ralf Mardorf wrote: > On Sun, 2024-10-27 at 18:29 -0500, Seamus de Mora via Alsa-user wrote: >> What role does 'alsa' play on my systems? > Hi, > > in simple terms, it can be said that ALSA is responsible for the > hardware level and provides the kernel modules/drivers. Pipewire is a > soundserver that works on top of ALSA. I can't comment on pipewire, but > some soundservers provide features, such as resampling or at least one > other soundserver provides kind of a virtual patch bay for real-time > audio applications, but it doesn't provide resampling. > > I can't comment much on the audio players mpg123 and cmus, but seemingly > you can use cmus without the need to install a soundserver such as > pipewire. Some GUI applications, at least audacity need mpg123. > > $ pacman -Si cmus | grep Optional > Optional Deps : alsa-lib: for ALSA output plugin support > > You seemingly can use cmos by directly connecting to ALSA. > > Simplified summary > > 1. To use the Hardware you need the thing that handles the hardware > level. It's ALSA. > > 2. A soundserver such as pipewire does provide "features" that aren't > necessarily needed. > > 3. Apps not necessarily need a soundserver, some can use plain ALSA. > > IOW you need an audio app and ALSA, but not necessarily a soundserver. > > Some distros don't install apps such as audio players or web browsers at > all. > > That one of your installs does default to cmus and another to mpg123 is > comparable to distros that install different web browsers by default. > Firefox, Chromium, Vivaldi, Falkon ... > > Some apps are based on other apps or at shared libraries. There are > countless of possible combinations, but ALSA is the base that is quasi > always needed. > > Regards, > Ralf > > > _______________________________________________ > Alsa-user mailing list > Als...@li... > https://lists.sourceforge.net/lists/listinfo/alsa-user |
|
From: Ralf M. <ral...@al...> - 2024-10-28 01:01:46
|
On Sun, 2024-10-27 at 18:29 -0500, Seamus de Mora via Alsa-user wrote: > What role does 'alsa' play on my systems? Hi, in simple terms, it can be said that ALSA is responsible for the hardware level and provides the kernel modules/drivers. Pipewire is a soundserver that works on top of ALSA. I can't comment on pipewire, but some soundservers provide features, such as resampling or at least one other soundserver provides kind of a virtual patch bay for real-time audio applications, but it doesn't provide resampling. I can't comment much on the audio players mpg123 and cmus, but seemingly you can use cmus without the need to install a soundserver such as pipewire. Some GUI applications, at least audacity need mpg123. $ pacman -Si cmus | grep Optional Optional Deps : alsa-lib: for ALSA output plugin support You seemingly can use cmos by directly connecting to ALSA. Simplified summary 1. To use the Hardware you need the thing that handles the hardware level. It's ALSA. 2. A soundserver such as pipewire does provide "features" that aren't necessarily needed. 3. Apps not necessarily need a soundserver, some can use plain ALSA. IOW you need an audio app and ALSA, but not necessarily a soundserver. Some distros don't install apps such as audio players or web browsers at all. That one of your installs does default to cmus and another to mpg123 is comparable to distros that install different web browsers by default. Firefox, Chromium, Vivaldi, Falkon ... Some apps are based on other apps or at shared libraries. There are countless of possible combinations, but ALSA is the base that is quasi always needed. Regards, Ralf |
|
From: chris h. <clh...@gm...> - 2024-10-28 00:15:45
|
Seamus and list, On Sun, Oct 27, 2024 at 4:51 PM Seamus de Mora via Alsa-user < als...@li...> wrote: > I'm a bit confused about where & how 'alsa' fits in the "sound system" > on my Linux computers. > Why not have a read of this Wikipedia article? https://en.wikipedia.org/wiki/Advanced_Linux_Sound_Architecture > > I struggled for a long time to get sound working on my computers. I > finally heard of 'pipewire', and finally I can now play music on my > systems. > Once you've read the ALSA article above, you might follow the link in it to the Wikipedia pipewire article. ALSA is the lowest level component of the Linux sound system, a part of the kernel. Things like pipewire are sound servers that sit on top of ALSA and provide a greater range of functionality. I'm now been using 'cmus' for a few months, and very much enjoying that! > However, I've been comparing the configuration between two of my Linux > systems (one has 'cmus' installed, the other uses 'mpg123'), and the > differences are absolutely baffling to me. > Those are different music players. In general music players use some kind of lower level sound capability; could be ALSA or pipewire or others. You don't specify which configuration files you're reviewing that baffle you, so it's hard to help clear things up. > > Both systems are Debian-based, using the 'bookworm' release. One is a > "Raspberry Pi Zero 2W", the other a "Raspberry Pi 3A+". I opted for the > "Lite" version (aka headless) of the OS as these are lightweight > computers. The "sound system" consists of a single Bluetooth speaker for > each system. > > Initial questions are these: > > 1. What role does 'alsa' play on my systems? > > 2. Is alsa's role determined at all by the installation of 'pipewire'? > > 3. Why would two identically-installed OS (on the Pi Zero & Pi 3A+; both > with 'pipewire') have such different sound configurations? > > 4. Is there any intelligible documentation that discusses these questions? > The answers to the above questions should be more clear after reading the suggested articles. I also generally like the Arch Linux Wiki for the breadth of information provided. This could be useful: https://wiki.archlinux.org/title/Sound_system You might also find these useful https://wiki.linuxaudio.org/wiki/start https://www.alsa-project.org/wiki/Main_Page -- Chris Hermansen · clhermansen "at" gmail "dot" com C'est ma façon de parler. |
|
From: Seamus de M. <se...@se...> - 2024-10-27 23:49:38
|
I'm a bit confused about where & how 'alsa' fits in the "sound system" on my Linux computers. I struggled for a long time to get sound working on my computers. I finally heard of 'pipewire', and finally I can now play music on my systems. I'm now been using 'cmus' for a few months, and very much enjoying that! However, I've been comparing the configuration between two of my Linux systems (one has 'cmus' installed, the other uses 'mpg123'), and the differences are absolutely baffling to me. Both systems are Debian-based, using the 'bookworm' release. One is a "Raspberry Pi Zero 2W", the other a "Raspberry Pi 3A+". I opted for the "Lite" version (aka headless) of the OS as these are lightweight computers. The "sound system" consists of a single Bluetooth speaker for each system. Initial questions are these: 1. What role does 'alsa' play on my systems? 2. Is alsa's role determined at all by the installation of 'pipewire'? 3. Why would two identically-installed OS (on the Pi Zero & Pi 3A+; both with 'pipewire') have such different sound configurations? 4. Is there any intelligible documentation that discusses these questions? Thanks! ~S |
|
From: Seamus de M. <se...@se...> - 2024-10-27 22:16:41
|
|
From: Aleksandr K. <kuz...@gm...> - 2024-10-14 13:05:35
|
Problem - alsamixer can't control volume.
OS - Yocto based distributive. Problem appear after updating distro. On
early version sound works (thus HW is OK)
!!################################
!!ALSA Information Script v 0.5.3
!!################################
!!Script ran on: Mon Oct 14 12:57:42 UTC 2024
!!Linux Distribution
!!------------------
!!DMI Information
!!---------------
Manufacturer:
Product Name:
Product Version:
Firmware Version:
System SKU:
Board Vendor:
Board Name:
!!ACPI Device Status Information
!!---------------
!!ACPI SoundWire Device Status Information
!!---------------
!!Kernel Information
!!------------------
Kernel release: #1 SMP PREEMPT_RT Mon Oct 14 10:03:35 UTC 2024
Operating System: GNU/Linux
Architecture: aarch64
Processor: unknown
SMP Enabled: Yes
!!ALSA Version
!!------------
Driver version: k6.6.56-rt44-v7l-g8f7f4dd0a2ee-dirty
Library version:
Utilities version: 1.2.11
!!Loaded ALSA modules
!!-------------------
!!Sound Servers on this system
!!----------------------------
No sound servers found.
!!Soundcards recognised by ALSA
!!-----------------------------
0 [MAX98357A ]: simple-card - MAX98357A
MAX98357A
!!PCI Soundcards installed in the system
!!--------------------------------------
!!Modprobe options (Sound related)
!!--------------------------------
snd_bcm2835: enable_headphones=0
snd_bcm2835: enable_hdmi=0
!!Loaded sound module options
!!---------------------------
!!Sysfs card info
!!---------------
!!Card: /sys/class/sound/card0
Driver: /sys/bus/platform/drivers/asoc-simple-card
Tree:
!!ALSA Device nodes
!!-----------------
crw-rw---- 1 root audio 116, 0 Oct 14 12:42 /dev/snd/controlC0
crw-rw---- 1 root audio 116, 16 Oct 14 12:42 /dev/snd/pcmC0D0p
crw-rw---- 1 root audio 116, 33 Oct 14 12:42 /dev/snd/timer
/dev/snd/by-path:
total 0
drwxr-xr-x 2 root root 60 Oct 14 12:42 .
drwxr-xr-x 3 root root 120 Oct 14 12:42 ..
lrwxrwxrwx 1 root root 12 Oct 14 12:42 platform-soc:sound
-> ../controlC0
!!ALSA configuration files
!!------------------------
!!System wide config file (/etc/asound.conf)
pcm.speakerbonnet {
type hw card 0
}
pcm.dmixer {
type dmix
ipc_key 1024
ipc_perm 0666
slave {
pcm "speakerbonnet"
period_time 0
period_size 1024
buffer_size 8192
rate 44100
channels 2
}
}
ctl.dmixer {
type hw card 0
}
pcm.softvol {
type softvol
slave.pcm "dmixer"
control.name "PCM"
control.card 0
}
ctl.softvol {
type hw card 0
}
pcm.!default {
type plug
slave.pcm "softvol"
}
!!Aplay/Arecord output
!!--------------------
APLAY
**** List of PLAYBACK Hardware Devices ****
card 0: MAX98357A [MAX98357A], device 0: fe203000.i2s-HiFi HiFi-0
[fe203000.i2s-HiFi HiFi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
ARECORD
**** List of CAPTURE Hardware Devices ****
!!Amixer output
!!-------------
!!-------Mixer controls for card MAX98357A
Card sysdefault:0 'MAX98357A'/'MAX98357A'
Mixer name : ''
Components : ''
Controls : 0
Simple ctrls : 0
!!Alsactl output
!!--------------
--startcollapse--
state.MAX98357A {
control {
}
}
--endcollapse--
!!All Loaded Modules
!!------------------
af_alg
algif_hash
algif_skcipher
bluetooth
bnep
brcmfmac
brcmfmac_wcc
brcmutil
btbcm
btintel
btqca
btrtl
btsdio
cfg80211
cmac
ecc
ecdh_generic
hci_uart
ipv6
nfnetlink
overlay
phy_generic
rfkill
sch_fq_codel
uio_pdrv_genirq
!!ALSA/HDA dmesg
!!--------------
[ 0.000000] alternatives: applying boot alternatives
[ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1
snd_bcm2835.enable_headphones=0 snd_bcm2835.enable_hdmi=0
smsc95xx.macaddr=E4:5F:01:4E:13:37 vc_mem.mem_base=0x3ec00000
vc_mem.mem_size=0x40000000 dwc_otg.lpm_enable=0 console=ttyAMA3,115200
root=/dev/mmcblk0p2 rootfstype=ext4 rootwait fbcon=map:10
fbcon=font:SUN12x22 video=DSI-1:1200x1920M@60,rotate=90
[ 0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152
bytes, linear)
--
[ 0.362339] vc4-drm gpu: bound fe400000.hvs (ops vc4_hvs_ops)
[ 0.363065] vc4_hdmi fef00700.hdmi: 'dmas' DT property is missing or
empty, no HDMI audio
[ 0.363080] vc4-drm gpu: bound fef00700.hdmi (ops vc4_hdmi_ops)
[ 0.363722] vc4_hdmi fef05700.hdmi: 'dmas' DT property is missing or
empty, no HDMI audio
[ 0.363732] vc4-drm gpu: bound fef05700.hdmi (ops vc4_hdmi_ops)
--
[ 2.131441] clk: Disabling unused clocks
[ 2.131826] ALSA device list:
[ 2.131830] #0: MAX98357A
|
|
From: Marco A. <mar...@po...> - 2024-09-25 09:06:06
|
Hello, I spent some hours trying to find a solution but apparently there is none. Some mini PC models from Beelink (for sure model SER6 and SER7, possibly others) have extremely low signal output from the Realtek ACL897 sound card with standard intel-hda driver, making the audio outputs unusable on Linux. This is also true on a fresh Windows install, unless a driver is installed from the Beelink website. I would like to understand if this is a common issue affecting all ACL897 cards or if this is related to the specific implementation on these PCs. In case this is instead a problem specific to Beelink units, is there any hope to reverse engineer a fix without support from the manufacturer (which indeed doesn't seem much concerned by the issue) or should I just give up? Thanks for your feedback, Marco Asa |
|
From: Takashi I. <ti...@su...> - 2024-07-19 13:53:03
|
On Wed, 17 Jul 2024 14:31:04 +0200,
Sergei Steshenko wrote:
>
> For that matter, which ALSA source files do the parsing ? From my
> old/distant memories, ALSA is silent about mistakes made by user when
> the user provides various configuration files. So, there must be a way
> to resolve the issue of silent ignoring of user mistakes.
The parsing of a config is performed at each PCM plugin code. In
particular case for chmap, pcm_hw.c, pcm_null.c and pcm_route.c call
_snd_pcm_parse_config_chmaps() helper and deal with the parsed data.
And, in most cases, alsa-lib rather complains (even verbosely) if
something goes wrong in the config file. But the interpretation of
each config leaf is done in each PCM plugin code, and some might just
ignore the errors. But that's not a general case.
> A possible temporary solution would be to "trace" (e.g. by inserting
> diagnostic print statements) parsing of provided by user configuration
> files, and to implement this one has to know where to insert the
> diagnostic print statements, and that's why I'm asking the question.
I understand that debugging the config stuff is sometimes messy,
yeah. Some more verbose debug output would be helpful, indeed.
Takashi
>
> --Sergei.
>
> On 7/16/24 18:57, Takashi Iwai wrote:
> > On Tue, 16 Jul 2024 08:09:21 +0200,
> > Xinhui Zhou wrote:
> >> Dear all,
> >>
> >> I am having a question regarding how to specify 'champ' for a
> >> plugin. I do not see any examples of this. I tried many ways to
> >> specify but failed.
> >>
> >> As indicated by the link below, I can specify the MAP as a string
> >> array. Can someone provide one example on how exactly this [chmap
> >> MAP] can be specified?
> >>
> >> "
> >> pcm.name {
> >> type cras
> >> [chmap MAP] # Provide channel maps; MAP is a string array
> >> }
> >> "
> >> https://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html
> >>
> >>
> >> I can something like these, but none of these work for me.
> >>
> >> chmap LFE
> >> chmap "LFE"
> >> chmap FR,FL,LFE
> >> champ "FR,FL,LFE"
> > You need to define a composite array, e.g. pass like
> > chmap [ "FL,FR" ]
> > instead.
> >
> > For multiple configurations, you can put more items such as
> > chmap [ "FC" "FL,FR" "FL,FR,FC,LFE" ]
> >
> >
> > HTH,
> >
> > Takashi
> >
> >
> > _______________________________________________
> > Alsa-user mailing list
> > Als...@li...
> > https://lists.sourceforge.net/lists/listinfo/alsa-user
|