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
|
Sep
|
Oct
|
Nov
|
Dec
|
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 |
From: Peter P. <pet...@fa...> - 2024-05-20 12:55:09
|
* 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? |
From: Peter P. <pet...@fa...> - 2024-05-20 12:53:51
|
* 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! Congrats David! About twenty years ago I was getting the HDSP+Multiface card working under Debian on a PowerPC (Apple G3 Pismo Notenbook) with a PCMCIA card. Your efforts reminded me of these days. best, P |
From: David K. <da...@ke...> - 2024-05-20 10:55:45
|
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! Le 20.05.24 à 10:39, David Kessler a écrit : > > Adding dtoverlay=pcie-32bit-dma too /boot/firmware/config.txt is > helping a lot! The card is recognized in alsa! But yet no controls but > says it wants to update firmware! I can feel I am close! > > Le 20.05.24 à 10:11, David Kessler a écrit : >> >> As of >> >> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/sound/pci/rme9652/hdsp.c?h=v6.8.10 >> >> on line 3768 in >> >> | >> static int snd_hdsp_initialize_memory(struct hdsp *hdsp) >> { >> struct snd_dma_buffer *capture_dma, *playback_dma; >> >> capture_dma = snd_hammerfall_get_buffer(hdsp->pci, HDSP_DMA_AREA_BYTES); >> playback_dma = snd_hammerfall_get_buffer(hdsp->pci, HDSP_DMA_AREA_BYTES); >> if (!capture_dma || !playback_dma) { >> dev_err(hdsp->card->dev, >> "%s: no buffers available\n", hdsp->card_name); >> return -ENOMEM; >> }| >> >> Who is responsible for this? We must have a talk! (: >> >> Le 20.05.24 à 09:07, David Kessler a écrit : >>> From what I can tell comparing to a working system is that I have >>> all needed kernel modules loaded. the oss are indeed no longer >>> needed. Thank's for pointing me out. >>> >>> Here a paste bin with the info I could gather. >>> >>> https://pastebin.com/dAfDDnkM >>> >>> The missing interrupt I wonder about and still the no available >>> buffer error which returns -12 but also the memory address is stated >>> beeing [virtual] on the PI. Is there something wrong with the bus >>> not beeing PCI standard compliant? >>> >>> What my intuition tells me is that the PI is handling the DMA of the >>> PCI bus in a different way than other architecture. I am not sure >>> what to do as to troubleshoot further /: Read code? >>> >>> Thank's >>> >>> Le 19.05.24 à 23:51, Robert M. Riches Jr. a écrit : >>> >>>> Are you sure those are current? "oss" usually refers to the >>>> open-source-sound that predated ALSA around 25 years ago. >>>> >>>> The modinfo description from kernel 5.10.0 for snd-pcm-oss >>>> seems to indicate it's for OSS emulation: "PCM OSS emulation >>>> for ALSA." For kernel 5.10.0-29-amd64 from Devuan Chimaera, >>>> snd-seq-oss is not even listed. >>>> >>>> HTH >>>> >>> >>> >>> _______________________________________________ >>> 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 > > > _______________________________________________ > Alsa-user mailing list > Als...@li... > https://lists.sourceforge.net/lists/listinfo/alsa-user |