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
|
|
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
|
|
From: Sergei S. <ste...@li...> - 2024-07-17 13:17:09
|
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.
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.
--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
|
|
From: Takashi I. <ti...@su...> - 2024-07-16 15:56:46
|
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
|
|
From: Xinhui Z. <zxi...@gm...> - 2024-07-16 06:12:01
|
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"
Thanks!
Xinhui,
|
|
From: Martin H. <mo...@bo...> - 2024-06-17 13:05:58
|
Hi,
I have a thinkpad T470 where I need the pc speaker beeps to be
functional. If I blacklist the snd-hda-intel module everything works
correctly. I'm able to beep via the beep command with the legacy IOCTL
interface, and with both the pcspkr and snd-pcsp modules loaded via
/dev/input/by-path/platform-pcspkr-event-spkr
However, I've been unable to get the system to beep at all if the
snd-hda-intel module is loaded. I don't see anything that looks
like a beep volume slider in alsamixer.
I've tried beep_mode=1, power_save=0 and various model= options:
#options snd-hda-intel model=thinkpad
#options snd-hda-intel model=tpt460
#options snd-hda-intel model=lenovo-eapd
#options snd-hda-intel model=tpt470-dock
#options snd-hda-intel model=dual-codecs
#options snd-hda-intel model=tpt470-dock-fix
#options snd-hda-intel model=auto
#options snd-hda-intel model=tpt440
but I haven't found anything that helps.
Any pointers? alsa-info.txt below.
Thanks,
mh
--
Martin Hicks | mo...@bo...
Bork Consulting Inc. | +1 (613) 266-2296
upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.5.3
!!################################
!!Script ran on: Mon Jun 17 12:36:33 UTC 2024
!!Linux Distribution
!!------------------
ID_LIKE="rhel centos fedora" LOGO="fedora-logo-icon" REDHAT_SUPPORT_PRODUCT="Rocky Linux" REDHAT_SUPPORT_PRODUCT_VERSION="9.4"
!!DMI Information
!!---------------
Manufacturer: LENOVO
Product Name: 20JM000CUS
Product Version: ThinkPad T470 W10DG
Firmware Version: N1QET94W (1.69 )
System SKU: LENOVO_MT_20JM_BU_Think_FM_ThinkPad T470 W10DG
Board Vendor: LENOVO
Board Name: 20JM000CUS
!!ACPI Device Status Information
!!---------------
/sys/bus/acpi/devices/ACPI0003:00/status 15
/sys/bus/acpi/devices/ACPI000C:00/status 15
/sys/bus/acpi/devices/INT3F0D:00/status 15
/sys/bus/acpi/devices/LEN0268:00/status 15
/sys/bus/acpi/devices/LNXPOWER:00/status 1
/sys/bus/acpi/devices/LNXPOWER:01/status 1
/sys/bus/acpi/devices/LNXPOWER:02/status 1
/sys/bus/acpi/devices/PNP0103:00/status 15
/sys/bus/acpi/devices/PNP0C02:00/status 3
/sys/bus/acpi/devices/PNP0C02:01/status 3
/sys/bus/acpi/devices/PNP0C02:06/status 3
/sys/bus/acpi/devices/PNP0C0A:00/status 31
/sys/bus/acpi/devices/PNP0C0A:01/status 31
/sys/bus/acpi/devices/PNP0C0F:00/status 9
/sys/bus/acpi/devices/PNP0C0F:01/status 9
/sys/bus/acpi/devices/PNP0C0F:02/status 9
/sys/bus/acpi/devices/PNP0C0F:03/status 9
/sys/bus/acpi/devices/PNP0C0F:04/status 9
/sys/bus/acpi/devices/PNP0C0F:05/status 9
/sys/bus/acpi/devices/PNP0C0F:06/status 9
/sys/bus/acpi/devices/PNP0C0F:07/status 9
/sys/bus/acpi/devices/USBC000:00/status 15
/sys/bus/acpi/devices/device:24/status 15
/sys/bus/acpi/devices/device:28/status 15
/sys/bus/acpi/devices/device:33/status 15
/sys/bus/acpi/devices/device:79/status 15
/sys/bus/acpi/devices/device:7a/status 11
!!Kernel Information
!!------------------
Kernel release: #1 SMP PREEMPT_DYNAMIC Wed Jun 12 13:53:47 EDT 2024
Operating System: GNU/Linux
Architecture: x86_64
Processor: x86_64
SMP Enabled: Yes
!!ALSA Version
!!------------
Driver version: k6.9.4-1.el9.elrepo.x86_64
Library version:
Utilities version: 1.2.10
!!Loaded ALSA modules
!!-------------------
snd_hda_intel (card 0)
!!Sound Servers on this system
!!----------------------------
No sound servers found.
!!Soundcards recognised by ALSA
!!-----------------------------
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xec140000 irq 128
!!PCI Soundcards installed in the system
!!--------------------------------------
00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d70] (rev 21)
Subsystem: Lenovo Device [17aa:2245]
!!Loaded sound module options
!!---------------------------
!!Module: snd_hda_intel
align_buffer_size : -1
bdl_pos_adj : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
beep_mode : N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
ctl_dev_id : N
dmic_detect : Y
enable : Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
enable_msi : -1
id : (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
index : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
jackpoll_ms : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
model : (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
patch : (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
pm_blacklist : Y
position_fix : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
power_save : 1
power_save_controller : Y
probe_mask : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
probe_only : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
single_cmd : -1
snoop : -1
!!Sysfs card info
!!---------------
!!Card: /sys/class/sound/card0
Driver: /sys/bus/pci/drivers/snd_hda_intel
Tree:
/sys/class/sound/card0
|-- controlC0
| |-- dev
| |-- device -> ../../card0
| |-- led-mic -> ../../../../../virtual/sound/ctl-led/mic/card0
| |-- led-speaker -> ../../../../../virtual/sound/ctl-led/speaker/card0
| |-- power
| |-- subsystem -> ../../../../../../class/sound
| `-- uevent
|-- device -> ../../../0000:00:1f.3
|-- hwC0D0
| |-- afg
| |-- chip_name
| |-- clear
| |-- dev
| |-- device -> ../../card0
| |-- driver_pin_configs
| |-- hints
| |-- init_pin_configs
| |-- init_verbs
| |-- mfg
| |-- modelname
| |-- power
| |-- power_off_acct
| |-- power_on_acct
| |-- reconfig
| |-- revision_id
| |-- subsystem -> ../../../../../../class/sound
| |-- subsystem_id
| |-- uevent
| |-- user_pin_configs
| |-- vendor_id
| `-- vendor_name
|-- hwC0D2
| |-- afg
| |-- chip_name
| |-- clear
| |-- dev
| |-- device -> ../../card0
| |-- driver_pin_configs
| |-- hints
| |-- init_pin_configs
| |-- init_verbs
| |-- mfg
| |-- modelname
| |-- power
| |-- power_off_acct
| |-- power_on_acct
| |-- reconfig
| |-- revision_id
| |-- subsystem -> ../../../../../../class/sound
| |-- subsystem_id
| |-- uevent
| |-- user_pin_configs
| |-- vendor_id
| `-- vendor_name
|-- id
|-- input10
| |-- capabilities
| |-- device -> ../../card0
| |-- event9
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- input11
| |-- capabilities
| |-- device -> ../../card0
| |-- event10
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- input12
| |-- capabilities
| |-- device -> ../../card0
| |-- event11
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- input13
| |-- capabilities
| |-- device -> ../../card0
| |-- event12
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- input14
| |-- capabilities
| |-- device -> ../../card0
| |-- event13
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- input15
| |-- capabilities
| |-- device -> ../../card0
| |-- event14
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- input16
| |-- capabilities
| |-- device -> ../../card0
| |-- event15
| |-- id
| |-- inhibited
| |-- modalias
| |-- name
| |-- phys
| |-- power
| |-- properties
| |-- subsystem -> ../../../../../../class/input
| |-- uevent
| `-- uniq
|-- number
|-- pcmC0D0c
| |-- dev
| |-- device -> ../../card0
| |-- pcm_class
| |-- power
| |-- subsystem -> ../../../../../../class/sound
| `-- uevent
|-- pcmC0D0p
| |-- dev
| |-- device -> ../../card0
| |-- pcm_class
| |-- power
| |-- subsystem -> ../../../../../../class/sound
| `-- uevent
|-- pcmC0D3p
| |-- dev
| |-- device -> ../../card0
| |-- pcm_class
| |-- power
| |-- subsystem -> ../../../../../../class/sound
| `-- uevent
|-- pcmC0D7p
| |-- dev
| |-- device -> ../../card0
| |-- pcm_class
| |-- power
| |-- subsystem -> ../../../../../../class/sound
| `-- uevent
|-- pcmC0D8p
| |-- dev
| |-- device -> ../../card0
| |-- pcm_class
| |-- power
| |-- subsystem -> ../../../../../../class/sound
| `-- uevent
|-- power
| |-- autosuspend_delay_ms
| |-- control
| |-- runtime_active_time
| |-- runtime_status
| `-- runtime_suspended_time
|-- subsystem -> ../../../../../class/sound
`-- uevent
!!Sysfs ctl-led info
!!---------------
!!CTL-LED: /sys/class/sound/ctl-led/mic/card0
List: 8
!!CTL-LED: /sys/class/sound/ctl-led/speaker/card0
List: 13
!!HDA-Intel Codec information
!!---------------------------
--startcollapse--
Codec: Realtek ALC298
Address: 0
AFG Function Id: 0x1 (unsol 1)
Vendor Id: 0x10ec0298
Subsystem Id: 0x17aa2245
Revision Id: 0x100103
No Modem Function Group found
Default PCM:
rates [0x60]: 44100 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
State of AFG node 0x01:
Power states: D0 D1 D2 D3 D3cold CLKSTOP EPSS
Power: setting=D0, actual=D0
GPIO: io=8, o=0, i=0, unsolicited=1, wake=0
IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
Node 0x02 [Audio Output] wcaps 0x41d: Stereo Amp-Out
Control: name="Headphone Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x01, mute=0
Amp-Out vals: [0x00 0x00]
Converter: stream=0, channel=0
PCM:
rates [0x60]: 44100 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x03 [Audio Output] wcaps 0x41d: Stereo Amp-Out
Control: name="Speaker Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Device: name="ALC298 Analog", type="Audio", device=0
Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x01, mute=0
Amp-Out vals: [0x57 0x57]
Converter: stream=0, channel=0
PCM:
rates [0x60]: 44100 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x06 [Audio Output] wcaps 0x411: Stereo
Converter: stream=0, channel=0
PCM:
rates [0x40]: 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x08 [Audio Input] wcaps 0x10051b: Stereo Amp-In
Amp-In caps: ofs=0x43, nsteps=0x7f, stepsize=0x01, mute=1
Amp-In vals: [0xc3 0xc3]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x60]: 44100 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x23
Node 0x09 [Audio Input] wcaps 0x10051b: Stereo Amp-In
Control: name="Capture Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Control: name="Capture Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Device: name="ALC298 Analog", type="Audio", device=0
Amp-In caps: ofs=0x43, nsteps=0x7f, stepsize=0x01, mute=1
Amp-In vals: [0x7f 0x7f]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x60]: 44100 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x22
Node 0x0a [Audio Input] wcaps 0x100511: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x40]: 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x25
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x09 0x09]
Connection: 4
0x18 0x19 0x1a 0x1d
Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x80 0x80]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00]
Connection: 1
0x03
Node 0x0e [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x11 [Audio Input] wcaps 0x10051b: Stereo Amp-In
Amp-In caps: ofs=0x43, nsteps=0x7f, stepsize=0x01, mute=1
Amp-In vals: [0xc3 0xc3]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x60]: 44100 48000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x24
Node 0x12 [Pin Complex] wcaps 0x40040b: Stereo Amp-In
Control: name="Internal Mic Boost Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x03 0x03]
Pincap 0x00000020: IN
Pin Default 0x90a60140: [Fixed] Mic at Int N/A
Conn = Digital, Color = Unknown
DefAssociation = 0x4, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x13 [Pin Complex] wcaps 0x40040b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Pincap 0x00000020: IN
Pin Default 0x40000000: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0x0, Sequence = 0x0
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x14 [Pin Complex] wcaps 0x40050d: Stereo Amp-Out
Control: name="Speaker Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x00010010: OUT EAPD
EAPD 0x2: EAPD
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 2
0x0c 0x0d*
Node 0x15 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x16 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x17 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Headphone Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0001001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x001111f0: [Jack] Speaker at Ext N/A
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=01, enabled=1
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 3
0x0c* 0x0d 0x06
Node 0x18 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
Control: name="Mic Boost Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Pincap 0x00003724: IN Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x03a11030: [Jack] Mic at Ext Left
Conn = 1/8, Color = Black
DefAssociation = 0x3, Sequence = 0x0
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=04, enabled=1
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x19 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
Control: name="Dock Mic Boost Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Pincap 0x00003724: IN Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x001111f0: [Jack] Speaker at Ext N/A
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=03, enabled=1
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x1a [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x0001373c: IN OUT HP EAPD Detect
Vref caps: HIZ 50 GRD 80 100
EAPD 0x2: EAPD
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00: VREF_HIZ
Unsolicited: tag=00, enabled=0
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 2
0x0c* 0x0d
Node 0x1b [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x1d [Pin Complex] wcaps 0x400400: Mono
Pincap 0x00000020: IN
Pin Default 0x40648605: [N/A] Modem Line at Ext N/A
Conn = RCA, Color = Purple
DefAssociation = 0x0, Sequence = 0x5
Pin-ctls: 0x20: IN
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x1e [Pin Complex] wcaps 0x400501: Stereo
Pincap 0x00000014: OUT Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x06
Node 0x1f [Pin Complex] wcaps 0x400401: Stereo
Pincap 0x00000024: IN Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Processing caps: benign=0, ncoeff=150
Node 0x21 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Headphone Playback Switch", index=1, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0000001c: OUT HP Detect
Pin Default 0x03211020: [Jack] HP Out at Ext Left
Conn = 1/8, Color = Black
DefAssociation = 0x2, Sequence = 0x0
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=02, enabled=1
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 2
0x0c* 0x0d
Node 0x22 [Audio Selector] wcaps 0x300101: Stereo
Connection: 6
0x18 0x19 0x1a 0x1d 0x0b 0x12*
Node 0x23 [Audio Selector] wcaps 0x300101: Stereo
Connection: 6
0x18 0x19 0x1a* 0x1d 0x0b 0x13
Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
Connection: 2
0x12* 0x13
Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
Connection: 1
0x1f
Codec: Intel Skylake HDMI
Address: 2
AFG Function Id: 0x1 (unsol 0)
Vendor Id: 0x80862809
Subsystem Id: 0x80860101
Revision Id: 0x100000
No Modem Function Group found
Default PCM:
rates [0x0]:
bits [0x0]:
formats [0x0]:
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
State of AFG node 0x01:
Power states: D0 D3 CLKSTOP EPSS
Power: setting=D0, actual=D0, Clock-stop-OK
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x02 [Audio Output] wcaps 0x6611: 8-Channels Digital
Converter: stream=0, channel=0
Digital: Enabled KAE
Digital category: 0x0
IEC Coding Type: 0x0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1a]: 16 24 32
formats [0x5]: PCM AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Node 0x03 [Audio Output] wcaps 0x6611: 8-Channels Digital
Converter: stream=0, channel=0
Digital: Enabled KAE
Digital category: 0x0
IEC Coding Type: 0x0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1a]: 16 24 32
formats [0x5]: PCM AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Node 0x04 [Audio Output] wcaps 0x6611: 8-Channels Digital
Converter: stream=0, channel=0
Digital: Enabled KAE
Digital category: 0x0
IEC Coding Type: 0x0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1a]: 16 24 32
formats [0x5]: PCM AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Node 0x05 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0b000094: OUT Detect HBR HDMI DP
Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Devices: 0
Connection: 0
Node 0x06 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0b000094: OUT Detect HBR HDMI DP
Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Devices: 0
Connection: 0
Node 0x07 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0b000094: OUT Detect HBR HDMI DP
Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Devices: 0
Connection: 0
Node 0x08 [Vendor Defined Widget] wcaps 0xf00000: Mono
--endcollapse--
!!ALSA Device nodes
!!-----------------
crw-rw----. 1 root audio 116, 9 Jun 17 08:35 /dev/snd/controlC0
crw-rw----. 1 root audio 116, 7 Jun 17 08:35 /dev/snd/hwC0D0
crw-rw----. 1 root audio 116, 8 Jun 17 08:35 /dev/snd/hwC0D2
crw-rw----. 1 root audio 116, 3 Jun 17 08:35 /dev/snd/pcmC0D0c
crw-rw----. 1 root audio 116, 2 Jun 17 08:35 /dev/snd/pcmC0D0p
crw-rw----. 1 root audio 116, 4 Jun 17 08:35 /dev/snd/pcmC0D3p
crw-rw----. 1 root audio 116, 5 Jun 17 08:35 /dev/snd/pcmC0D7p
crw-rw----. 1 root audio 116, 6 Jun 17 08:35 /dev/snd/pcmC0D8p
crw-rw----. 1 root audio 116, 1 Jun 17 08:35 /dev/snd/seq
crw-rw----. 1 root audio 116, 33 Jun 17 08:35 /dev/snd/timer
/dev/snd/by-path:
total 0
drwxr-xr-x. 2 root root 60 Jun 17 08:35 .
drwxr-xr-x. 3 root root 260 Jun 17 08:35 ..
lrwxrwxrwx. 1 root root 12 Jun 17 08:35 pci-0000:00:1f.3 -> ../controlC0
!!ALSA configuration files
!!------------------------
!!System wide config file (/etc/asound.conf)
#
# Place your global alsa-lib configuration here...
#
!!Aplay/Arecord output
!!--------------------
APLAY
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC298 Analog [ALC298 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
ARECORD
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC298 Analog [ALC298 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
!!Amixer output
!!-------------
!!-------Mixer controls for card PCH
Card sysdefault:0 'PCH'/'HDA Intel PCH at 0xec140000 irq 128'
Mixer name : 'Realtek ALC298'
Components : 'HDA:10ec0298,17aa2245,00100103 HDA:80862809,80860101,00100000'
Controls : 43
Simple ctrls : 13
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
Playback channels: Mono
Limits: Playback 0 - 127
Mono: Playback 87 [69%] [-20.00dB] [on]
Simple mixer control 'Headphone',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 0 [0%] [-63.50dB] [on]
Front Right: Playback 0 [0%] [-63.50dB] [on]
Simple mixer control 'Headphone',1
Capabilities: pswitch
Playback channels: Front Left - Front Right
Mono:
Front Left: Playback [on]
Front Right: Playback [on]
Simple mixer control 'Speaker',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 127 [100%] [0.00dB] [on]
Front Right: Playback 127 [100%] [0.00dB] [on]
Simple mixer control 'PCM',0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 255
Mono:
Front Left: Playback 255 [100%] [0.00dB]
Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 0 [0%] [0.00dB]
Front Right: 0 [0%] [0.00dB]
Simple mixer control 'IEC958',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958',1
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958',2
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 127
Front Left: Capture 127 [100%] [30.00dB] [on]
Front Right: Capture 127 [100%] [30.00dB] [on]
Simple mixer control 'Auto-Mute Mode',0
Capabilities: enum
Items: 'Disabled' 'Enabled'
Item0: 'Disabled'
Simple mixer control 'Dock Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 0 [0%] [0.00dB]
Front Right: 0 [0%] [0.00dB]
Simple mixer control 'Internal Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 3 [100%] [30.00dB]
Front Right: 3 [100%] [30.00dB]
!!Alsactl output
!!--------------
--startcollapse--
state.PCH {
control.1 {
iface MIXER
name 'Speaker Playback Volume'
value.0 127
value.1 127
comment {
access 'read write'
type INTEGER
count 2
range '0 - 127'
dbmin -6350
dbmax 0
dbvalue.0 0
dbvalue.1 0
}
}
control.2 {
iface MIXER
name 'Speaker Playback Switch'
value.0 true
value.1 true
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.3 {
iface MIXER
name 'Headphone Playback Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 127'
dbmin -6350
dbmax 0
dbvalue.0 -6350
dbvalue.1 -6350
}
}
control.4 {
iface MIXER
name 'Headphone Playback Switch'
value.0 true
value.1 true
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.5 {
iface MIXER
name 'Headphone Playback Switch'
index 1
value.0 true
value.1 true
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.6 {
iface MIXER
name 'Auto-Mute Mode'
value Disabled
comment {
access 'read write'
type ENUMERATED
count 1
item.0 Disabled
item.1 Enabled
}
}
control.7 {
iface MIXER
name 'Capture Volume'
value.0 127
value.1 127
comment {
access 'read write'
type INTEGER
count 2
range '0 - 127'
dbmin -3350
dbmax 3000
dbvalue.0 3000
dbvalue.1 3000
}
}
control.8 {
iface MIXER
name 'Capture Switch'
value.0 true
value.1 true
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.9 {
iface MIXER
name 'Mic Boost Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 3'
dbmin 0
dbmax 3000
dbvalue.0 0
dbvalue.1 0
}
}
control.10 {
iface MIXER
name 'Dock Mic Boost Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 3'
dbmin 0
dbmax 3000
dbvalue.0 0
dbvalue.1 0
}
}
control.11 {
iface MIXER
name 'Internal Mic Boost Volume'
value.0 3
value.1 3
comment {
access 'read write'
type INTEGER
count 2
range '0 - 3'
dbmin 0
dbmax 3000
dbvalue.0 3000
dbvalue.1 3000
}
}
control.12 {
iface MIXER
name 'Master Playback Volume'
value 87
comment {
access 'read write'
type INTEGER
count 1
range '0 - 127'
dbmin -6350
dbmax 0
dbvalue.0 -2000
}
}
control.13 {
iface MIXER
name 'Master Playback Switch'
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.14 {
iface CARD
name 'Mic Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.15 {
iface CARD
name 'Dock Mic Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.16 {
iface CARD
name 'Internal Mic Phantom Jack'
value true
comment {
access read
type BOOLEAN
count 1
}
}
control.17 {
iface CARD
name 'Speaker Phantom Jack'
value true
comment {
access read
type BOOLEAN
count 1
}
}
control.18 {
iface CARD
name 'Dock Headphone Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.19 {
iface CARD
name 'Headphone Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.20 {
iface PCM
name 'Playback Channel Map'
value.0 0
value.1 0
value.2 0
value.3 0
comment {
access read
type INTEGER
count 4
range '0 - 36'
}
}
control.21 {
iface PCM
name 'Capture Channel Map'
value.0 0
value.1 0
comment {
access read
type INTEGER
count 2
range '0 - 36'
}
}
control.22 {
iface CARD
name 'HDMI/DP,pcm=3 Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.23 {
iface MIXER
name 'IEC958 Playback Con Mask'
value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.24 {
iface MIXER
name 'IEC958 Playback Pro Mask'
value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.25 {
iface MIXER
name 'IEC958 Playback Default'
value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read write'
type IEC958
count 1
}
}
control.26 {
iface MIXER
name 'IEC958 Playback Switch'
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.27 {
iface PCM
device 3
name ELD
value ''
comment {
access 'read volatile'
type BYTES
count 0
}
}
control.28 {
iface CARD
name 'HDMI/DP,pcm=7 Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.29 {
iface MIXER
name 'IEC958 Playback Con Mask'
index 1
value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.30 {
iface MIXER
name 'IEC958 Playback Pro Mask'
index 1
value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.31 {
iface MIXER
name 'IEC958 Playback Default'
index 1
value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read write'
type IEC958
count 1
}
}
control.32 {
iface MIXER
name 'IEC958 Playback Switch'
index 1
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.33 {
iface PCM
device 7
name ELD
value ''
comment {
access 'read volatile'
type BYTES
count 0
}
}
control.34 {
iface CARD
name 'HDMI/DP,pcm=8 Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.35 {
iface MIXER
name 'IEC958 Playback Con Mask'
index 2
value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.36 {
iface MIXER
name 'IEC958 Playback Pro Mask'
index 2
value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.37 {
iface MIXER
name 'IEC958 Playback Default'
index 2
value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read write'
type IEC958
count 1
}
}
control.38 {
iface MIXER
name 'IEC958 Playback Switch'
index 2
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.39 {
iface PCM
device 8
name ELD
value ''
comment {
access 'read volatile'
type BYTES
count 0
}
}
control.40 {
iface PCM
device 3
name 'Playback Channel Map'
value.0 0
value.1 0
value.2 0
value.3 0
value.4 0
value.5 0
value.6 0
value.7 0
comment {
access 'read write'
type INTEGER
count 8
range '0 - 36'
}
}
control.41 {
iface PCM
device 7
name 'Playback Channel Map'
value.0 0
value.1 0
value.2 0
value.3 0
value.4 0
value.5 0
value.6 0
value.7 0
comment {
access 'read write'
type INTEGER
count 8
range '0 - 36'
}
}
control.42 {
iface PCM
device 8
name 'Playback Channel Map'
value.0 0
value.1 0
value.2 0
value.3 0
value.4 0
value.5 0
value.6 0
value.7 0
comment {
access 'read write'
type INTEGER
count 8
range '0 - 36'
}
}
control.43 {
iface MIXER
name 'PCM Playback Volume'
value.0 255
value.1 255
comment {
access 'read write user'
type INTEGER
count 2
range '0 - 255'
tlv '0000000100000008ffffec1400000014'
dbmin -5100
dbmax 0
dbvalue.0 0
dbvalue.1 0
}
}
}
--endcollapse--
!!All Loaded Modules
!!------------------
ac97_bus
acpi_cpufreq
acpi_pad
ahci
bluetooth
bnep
btbcm
btintel
btmtk
btrtl
btusb
cec
cfg80211
coretemp
crc32_pclmul
crc32c_intel
crct10dif_pclmul
drm
drm_buddy
drm_display_helper
drm_kms_helper
e1000e
ee1004
fat
firmware_attributes_class
fuse
ghash_clmulni_intel
i2c_algo_bit
i2c_i801
i2c_smbus
i915
iTCO_vendor_support
iTCO_wdt
intel_cstate
intel_gtt
intel_pch_thermal
intel_pmc_bxt
intel_pmc_core
intel_pmc_core_pltdrv
intel_powerclamp
intel_rapl_common
intel_rapl_msr
intel_tcc_cooling
intel_uncore
intel_vsec
intel_wmi_thunderbolt
intel_xhci_usb_role_switch
iwlmvm
iwlwifi
joydev
ledtrig_audio
libahci
libarc4
libata
libcrc32c
mac80211
mc
mei
mei_me
pcspkr
platform_profile
pmt_class
pmt_telemetry
polyval_clmulni
polyval_generic
rapl
rfkill
sd_mod
serio_raw
sg
snd
snd_compress
snd_ctl_led
snd_hda_codec
snd_hda_codec_generic
snd_hda_codec_hdmi
snd_hda_codec_realtek
snd_hda_core
snd_hda_ext_core
snd_hda_intel
snd_hda_scodec_component
snd_hwdep
snd_intel_dspcfg
snd_intel_sdw_acpi
snd_pcm
snd_pcm_dmaengine
snd_seq
snd_seq_device
snd_soc_acpi
snd_soc_acpi_intel_match
snd_soc_avs
snd_soc_core
snd_soc_hda_codec
snd_soc_hdac_hda
snd_soc_skl
snd_soc_sst_dsp
snd_soc_sst_ipc
snd_sof
snd_sof_intel_hda
snd_sof_intel_hda_common
snd_sof_intel_hda_mlink
snd_sof_pci
snd_sof_pci_intel_skl
snd_sof_utils
snd_sof_xtensa_dsp
snd_timer
soundcore
soundwire_bus
soundwire_cadence
soundwire_generic_allocation
soundwire_intel
t10_pi
think_lmi
thinkpad_acpi
ttm
uas
usb_storage
uvc
uvcvideo
vfat
video
videobuf2_common
videobuf2_memops
videobuf2_v4l2
videobuf2_vmalloc
videodev
wmi
wmi_bmof
x86_pkg_temp_thermal
xfs
!!Sysfs Files
!!-----------
/sys/class/sound/hwC0D0/init_pin_configs:
0x12 0x90a60140
0x13 0x40000000
0x14 0x90170110
0x17 0x411111f0
0x18 0x03a11030
0x19 0x411111f0
0x1a 0x411111f0
0x1d 0x40648605
0x1e 0x411111f0
0x1f 0x411111f0
0x21 0x03211020
/sys/class/sound/hwC0D0/driver_pin_configs:
0x17 0x21211010
0x19 0x21a11010
/sys/class/sound/hwC0D0/user_pin_configs:
/sys/class/sound/hwC0D0/init_verbs:
/sys/class/sound/hwC0D0/hints:
/sys/class/sound/hwC0D2/init_pin_configs:
0x05 0x18560010
0x06 0x18560010
0x07 0x18560010
/sys/class/sound/hwC0D2/driver_pin_configs:
/sys/class/sound/hwC0D2/user_pin_configs:
/sys/class/sound/hwC0D2/init_verbs:
/sys/class/sound/hwC0D2/hints:
!!ALSA/HDA dmesg
!!--------------
[ 14.174929] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
[ 14.187013] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 14.188296] usbcore: registered new interface driver uvcvideo
--
[ 14.189413] cfg80211: failed to load regulatory.db
[ 14.275195] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC298: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[ 14.275202] snd_hda_codec_realtek hdaudioC0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 14.275205] snd_hda_codec_realtek hdaudioC0D0: hp_outs=2 (0x17/0x21/0x0/0x0/0x0)
[ 14.275207] snd_hda_codec_realtek hdaudioC0D0: mono: mono_out=0x0
[ 14.275209] snd_hda_codec_realtek hdaudioC0D0: inputs:
[ 14.275210] snd_hda_codec_realtek hdaudioC0D0: Mic=0x18
[ 14.275212] snd_hda_codec_realtek hdaudioC0D0: Dock Mic=0x19
[ 14.275214] snd_hda_codec_realtek hdaudioC0D0: Internal Mic=0x12
[ 14.365622] input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input10
[ 14.365700] input: HDA Intel PCH Dock Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input11
[ 14.365767] input: HDA Intel PCH Dock Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input12
[ 14.365826] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input13
[ 14.365882] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14
[ 14.365938] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15
[ 14.365994] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input16
[ 14.406528] Intel(R) Wireless WiFi driver for Linux
!!Packages installed
!!--------------------
alsa-lib-1.2.10-2.el9.x86_64
alsa-utils-1.2.10-1.el9.x86_64
|
|
From: Peter P. <pet...@fa...> - 2024-05-23 19:04:46
|
David, afaik the disconnect option never got implemented on linux. You might want to get a confirmation from the list though (CCed). Peter * David Kessler <da...@ke...> [2024-05-23 20:55]: > Sure I did check hdspconf but unlike windows or mac there is no "disconnect" > option to check. Not sure why. > > Le 23.05.24 à 09:53, Peter P. a écrit : > > * David Kessler <da...@ke...> [2024-05-23 04:21]: > > > But what I am really wondering is how to set buffers in alsa config and how > > > to have access to the "disconnect" option and leave the unit in standalone > > > mode. Any ideas? > > Without checking myself, did you look at the hdspconf tool perhaps? > > > > best, P > > > > > > _______________________________________________ > > Alsa-user mailing list > > Als...@li... > > https://lists.sourceforge.net/lists/listinfo/alsa-user |
|
From: Peter P. <pet...@fa...> - 2024-05-23 07:53:41
|
* David Kessler <da...@ke...> [2024-05-23 04:21]: > But what I am really wondering is how to set buffers in alsa config and how > to have access to the "disconnect" option and leave the unit in standalone > mode. Any ideas? Without checking myself, did you look at the hdspconf tool perhaps? best, P |
|
From: David K. <da...@ke...> - 2024-05-23 02:19:57
|
But what I am really wondering is how to set buffers in alsa config and how to have access to the "disconnect" option and leave the unit in standalone mode. Any ideas? Le 23.05.24 à 02:04, David Kessler a écrit : > > Hey there! > > Ok so interface is composed of 52pi PCIe slot and a PCIe to PCI riser. > When connected a digiface the unit is powered from the PI. For now > there is no converters plugged-in. > > With a multiface I've run into power supply issues even with external > supply. Tried both powering the unit itself or through the PCI riser. > > Steps to reproduce on RPI5 bookworm: > > 1. Compile kernel with PCI soundcard support. > 2. install alsa-utils, alsa-tools, alsa-tools-gui and > alsa-firmware-loaders > 3. Download and copy firmwares from hdsploader to > /lib/firmware/hdsploader/ (create directory). Not sure why they > were missing. Maybe optional to update the firmware. > 4. add dtparam=pciex1 dtparam=pciex1_gen=2 (maybe not necessary) and > dtoverlay=pcie-32bit-dma to /boot/firmware > /config.txt > 5. Check output of hdsploader and let me know if something's missing! > 6. Have fun! > > https://www.ebay.ch/itm/325621887809?mkevt=1&mkpid=0&emsid=e11050.m43.l1123&mkcid=7&ch=osgood&euid=834d2908877649ae99fbc773787109b5&bu=45040954043&osub=-1%7E1&crd=20231029100454&segname=11050 > > https://52pi.com/products/p02-pcie-slot-for-rpi5 > > https://www.alsa-project.org/wiki/Matrix:Module-hdsp > > https://www.kernelconfig.io/config_snd_hdsp > > Le 20.05.24 à 14:54, Peter P. a écrit : >> * David Kessler<da...@ke...> [2024-05-20 12:56]: >>> Ok everything works well after adding the right firmware to >>> /lib/firmware/hdsploader! I'am very happy and thank's to the folks pointing >>> me in the right direction! >>> >>> Cheers! >> Oh by the way, what type and model of PCI extender are you using for the Pi5? >> >> >> _______________________________________________ >> Alsa-user mailing list >> Als...@li... >> https://lists.sourceforge.net/lists/listinfo/alsa-user > > > _______________________________________________ > Alsa-user mailing list > Als...@li... > https://lists.sourceforge.net/lists/listinfo/alsa-user |
|
From: David K. <da...@ke...> - 2024-05-23 00:20:56
|
Hey there!
Ok so interface is composed of 52pi PCIe slot and a PCIe to PCI riser.
When connected a digiface the unit is powered from the PI. For now there
is no converters plugged-in.
With a multiface I've run into power supply issues even with external
supply. Tried both powering the unit itself or through the PCI riser.
Steps to reproduce on RPI5 bookworm:
1. Compile kernel with PCI soundcard support.
2. install alsa-utils, alsa-tools, alsa-tools-gui and alsa-firmware-loaders
3. Download and copy firmwares from hdsploader to
/lib/firmware/hdsploader/ (create directory). Not sure why they were
missing. Maybe optional to update the firmware.
4. add dtparam=pciex1 dtparam=pciex1_gen=2 (maybe not necessary) and
dtoverlay=pcie-32bit-dma to /boot/firmware
/config.txt
5. Check output of hdsploader and let me know if something's missing!
6. Have fun!
https://www.ebay.ch/itm/325621887809?mkevt=1&mkpid=0&emsid=e11050.m43.l1123&mkcid=7&ch=osgood&euid=834d2908877649ae99fbc773787109b5&bu=45040954043&osub=-1%7E1&crd=20231029100454&segname=11050
https://52pi.com/products/p02-pcie-slot-for-rpi5
https://www.alsa-project.org/wiki/Matrix:Module-hdsp
https://www.kernelconfig.io/config_snd_hdsp
Le 20.05.24 à 14:54, Peter P. a écrit :
> * David Kessler<da...@ke...> [2024-05-20 12:56]:
>> Ok everything works well after adding the right firmware to
>> /lib/firmware/hdsploader! I'am very happy and thank's to the folks pointing
>> me in the right direction!
>>
>> Cheers!
> Oh by the way, what type and model of PCI extender are you using for the Pi5?
>
>
> _______________________________________________
> Alsa-user mailing list
> Als...@li...
> https://lists.sourceforge.net/lists/listinfo/alsa-user |