Звук в Linux

Обмен опытом по установке Линукс на разные аппаратные конфигурации

Модераторы: Olej, vikos

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 18:10

Настройка звука в Linux - это проблема "ещё та"...
Т.е., если он есть (а это чаще всего), то всё ОК ... но вот если его нет, или он не такой - вот тогда предстоит поуродоваться :-(
Я, как вспоминаю, занимался, время от времени, этой проблемой, и очень обстоятельно, как минимум с 2007 года...

И вот теперь приятелю предстоит настроит то чего у него нет :oops:

P.S. Да ещё, по необходимости, это делается удалённо, по SSH подключившись к его компам...

... тем более, что предстоит это настроить на таком чуде Chromebook как Lenovo ThinkPad Yoga 11e
Изображение
... и для такого экзотического дистрибутива Linux как GalliumOS

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 19:48

Olej писал(а):
14 окт 2023, 18:10
Настройка звука в Linux - это проблема "ещё та"
Хорошая статья А где же звук, или почему дистрибутив Ubuntu может не звучать «из коробки» ... и свежая :lol: :
6 часов назад
И ещё источник знаний - тема здесь в форуме когда я борол звук в ARM одноплатнике звук Orange Pi (One)
И ещё выбор звукового устройства ALSA


И ещё ... из того что приходит на память (в закладки :lol: ):
Работаем с Аудио через Командную Строку на Linux и Windows
23 мая 2022

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 22:39

Olej писал(а):
14 окт 2023, 18:10
предстоит это настроить на таком чуде Chromebook
Но пока (за поздностью времени) к Chromebook нет удалённого доступа - обновлю я свои познания в аудио на своём таком ... довольно хитром самосборе (здесь материнка интерес представляет):

Код: Выделить всё

[olej@xenix ~]$ sudo inxi -MCxxx
[sudo] пароль для olej:
Machine:
  Type: Desktop System: FUJITSU product: ESPRIMO P420 v: N/A
    serial: YLTH128357 Chassis: type: 6 v: C$WH01 serial: YLTH128357
  Mobo: FUJITSU model: D3230-A1 v: S26361-D3230-A1 serial: B246BE82
    BIOS: FUJITSU // American Megatrends v: 4.6.5.4 R1.17.0 for D3230-A1x
    date: 03/06/2014
CPU:
  Info: quad core model: Intel Core i7-4870HQ bits: 64 type: MT MCP
    smt: enabled arch: Haswell rev: 1 cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
  Speed (MHz): avg: 1197 high: 2249 min/max: 800/3700 volts: 1.2 V
    ext-clock: 100 MHz cores: 1: 800 2: 800 3: 798 4: 2249 5: 1971 6: 800
    7: 1360 8: 800 bogomips: 39911
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
И с таким вот дистрибутивом:

Код: Выделить всё

[olej@xenix ~]$ lsb_release -a
LSB Version:   :core-4.1-amd64:core-4.1-noarch
Distributor ID:     Fedora
Description:   Fedora release 38 (Thirty Eight)
Release:  38
Codename: ThirtyEight

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 22:47

Olej писал(а):
14 окт 2023, 22:39
хитром самосборе
Вот на нём характеристики аудио:

Код: Выделить всё

[olej@xenix ~]$ inxi -Axxx
Audio:
  Device-1: Intel Crystal Well HD Audio vendor: Fujitsu Solutions
    driver: snd_hda_intel v: kernel bus-ID: 00:03.0 chip-ID: 8086:0d0c
    class-ID: 0403
  Device-2: Intel 8 Series/C220 Series High Definition Audio
    vendor: Fujitsu Solutions driver: snd_hda_intel v: kernel bus-ID: 00:1b.0
    chip-ID: 8086:8c20 class-ID: 0403
  Device-3: Logitech 960 Headset driver: hid-generic,snd-usb-audio,usbhid
    type: USB rev: 1.1 speed: 12 Mb/s lanes: 1 bus-ID: 2-6:12 chip-ID: 046d:0a45
    class-ID: 0300
  API: ALSA v: k6.5.6-200.fc38.x86_64 status: kernel-api
  Server-1: PipeWire v: 0.3.82 status: active (process) with:
    1: pipewire-pulse status: active 2: wireplumber status: active
    3: pipewire-alsa type: plugin 4: pw-jack type: plugin

Код: Выделить всё

[olej@xenix ~]$ cat /proc/asound/cards
 0 [HDMI           ]: HDA-Intel - HDA Intel HDMI
                      HDA Intel HDMI at 0xf7d14000 irq 33
 1 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xf7d10000 irq 34
 2 [Headset        ]: USB-Audio - Logitech USB Headset
                      Logitech Logitech USB Headset at usb-0000:00:14.0-6, full speed

Код: Выделить всё

[olej@xenix ~]$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC671 Analog [ALC671 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: Headset [Logitech USB Headset], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 22:50

Olej писал(а):
14 окт 2023, 22:47
Вот на нём характеристики аудио:
Первые два аудиоадаптера - это родные встроенные на материнке HDMI и PCH (Device-1 и Device-2 - inxi + card 0 и card 1 - aplay):

Код: Выделить всё

[olej@xenix ~]$ lspci | grep -i Audio
00:03.0 Audio device: Intel Corporation Crystal Well HD Audio Controller (rev 08)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 04)

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 22:59

Olej писал(а):
14 окт 2023, 22:47
Вот на нём характеристики аудио:
А вот 3-й "хитрый" канал - это на USB устройство:

Код: Выделить всё

[olej@xenix ~]$ lsusb
Bus 001 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 002: ID 2101:020f ActionStar 
Bus 002 Device 012: ID 046d:0a45 Logitech, Inc. 960 Headset
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Это самоделка (мне на заказ от моего аппаратного умельца), когда к USB адаптеру аудио Logitech 960 Headset:
Logitech_960_Headset.3.jpg
Logitech_960_Headset.3.jpg (62.27 КБ) 358 просмотров
... вместо дешёвых наушников Logitech приделаны классные дорогие наушники Philips O'Neill cruz sho3300escap:
philips_oneill.jpg
philips_oneill.jpg (16.52 КБ) 358 просмотров
inxi отлично их видит с поддержкой драйверами:

Код: Выделить всё

...
  Device-3: Logitech 960 Headset driver: hid-generic,snd-usb-audio,usbhid
...
И системные меструменты их прекрасно видят и используют:
Снимок экрана от 2023-10-14 22-03-40.png
Снимок экрана от 2023-10-14 22-03-40.png (62.96 КБ) 358 просмотров
(там ещё к блоку управления Logitech 960 Headset, на кабеле, приделан миниатюрный электретный микрофон)
Снимок экрана от 2023-10-14 22-04-46.png
Снимок экрана от 2023-10-14 22-04-46.png (39.07 КБ) 358 просмотров

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 23:19

Olej писал(а):
14 окт 2023, 22:47
Вот на нём характеристики аудио:
Так что там есть на чём разгуляться :!:

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 23:30

Olej писал(а):
14 окт 2023, 23:19
Так что там есть на чём разгуляться
Всё что касается дефаултного ALSA ...
- аудиокарты:

Код: Выделить всё

[olej@xenix ~]$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: PCH [HDA Intel PCH], device 0: ALC671 Analog [ALC671 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: Headset [Logitech USB Headset], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
- аудиовыходы:

Код: Выделить всё

[olej@xenix ~]$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
oss
    Open Sound System
pipewire
    PipeWire Sound Server
default
    Default ALSA Output (currently PipeWire Media Server)
hdmi:CARD=HDMI,DEV=0
    HDA Intel HDMI, HDMI 0
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=1
    HDA Intel HDMI, HDMI 1
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=2
    HDA Intel HDMI, HDMI 2
    HDMI Audio Output
sysdefault:CARD=PCH
    HDA Intel PCH, ALC671 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    Front output / input
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, ALC671 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
sysdefault:CARD=Headset
    Logitech USB Headset, USB Audio
    Default Audio Device
front:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    Front output / input
surround21:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Headset,DEV=0
    Logitech USB Headset, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
По составу пакетов и принадлежности мне проще разбираться по APT дистрибутива Mint 21:

Код: Выделить всё

olej@R420:~$ apt contains aplay | grep "/aplay"
alsa-utils: /usr/bin/aplay
alsa-utils: /usr/bin/aplaymidi
alsa-utils: /usr/share/man/man1/aplay.1.gz
alsa-utils: /usr/share/man/man1/aplaymidi.1.gz

Код: Выделить всё

olej@R420:~$ apt contains speaker-test
alsa-utils: /usr/bin/speaker-test
alsa-utils: /usr/share/alsa/speaker-test
alsa-utils: /usr/share/alsa/speaker-test/sample_map.csv
alsa-utils: /usr/share/man/man1/speaker-test.1.gz
- состав исполнимых приложений:

Код: Выделить всё

olej@R420:~$ apt content alsa-utils | grep bin/
/usr/bin/aconnect
/usr/bin/alsabat
/usr/bin/alsaloop
/usr/bin/alsamixer
/usr/bin/alsatplg
/usr/bin/alsaucm
/usr/bin/amidi
/usr/bin/amixer
/usr/bin/aplay
/usr/bin/aplaymidi
/usr/bin/arecord
/usr/bin/arecordmidi
/usr/bin/aseqdump
/usr/bin/aseqnet
/usr/bin/axfer
/usr/bin/iecset
/usr/bin/speaker-test
/usr/sbin/alsabat-test
/usr/sbin/alsactl
/usr/sbin/alsa-info
- состав эталонных файлов:

Код: Выделить всё

olej@R420:~$ ls -l /usr/share/sounds/alsa/
итого 1212
-rw-r--r-- 1 root root 137134 янв 12  2022 Front_Center.wav
-rw-r--r-- 1 root root 142128 янв 12  2022 Front_Left.wav
-rw-r--r-- 1 root root 146990 янв 12  2022 Front_Right.wav
-rw-r--r-- 1 root root 135202 янв 12  2022 Noise.wav
-rw-r--r-- 1 root root 130096 янв 12  2022 Rear_Center.wav
-rw-r--r-- 1 root root 126064 янв 12  2022 Rear_Left.wav
-rw-r--r-- 1 root root 146480 янв 12  2022 Rear_Right.wav
-rw-r--r-- 1 root root 134868 янв 12  2022 Side_Left.wav
-rw-r--r-- 1 root root 129966 янв 12  2022 Side_Right.wav

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 23:44

Olej писал(а):
14 окт 2023, 23:30
Всё что касается дефаултного ALSA ...
Воспроизведение эталонных файлов...
Команда aplay
... утилита может работать лишь с несжатыми звуковыми файлами, поэтому для ее использования придется либо найти такой файл, либо осуществить декомпрессию сжатого файла.
На устройство, выбранное из вывода команды (тупо копируем полное имя устройства):

Код: Выделить всё

[olej@xenix ~]$ aplay -L
...
Тестовый вывод (проверка работы аудио):

Код: Выделить всё

[olej@xenix ~]$ aplay -D sysdefault:CARD=Headset /usr/share/sounds/alsa/Side_Left.wav
Playing WAVE '/usr/share/sounds/alsa/Side_Left.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Звук в Linux

Непрочитанное сообщение Olej » 14 окт 2023, 23:52

Olej писал(а):
14 окт 2023, 23:30
Всё что касается дефаултного ALSA ...
И всё что касается такого мощного пакета работы с аудио как SOX:

Код: Выделить всё

[olej@xenix ~]$ which sox
/usr/bin/sox

Код: Выделить всё

[olej@xenix ~]$ sox --version
sox:      SoX v14.4.2
Из Mint 21 уточняем исполнимые файлы пакета:

Код: Выделить всё

olej@R420:~$ apt content sox | grep bin/
/usr/bin/play
/usr/bin/rec
/usr/bin/sox
/usr/bin/soxi
Воспроизведение на дефаултное устройство (если повезло):

Код: Выделить всё

[olej@xenix ~]$ play /usr/share/sounds/alsa/Side_Left.wav

/usr/share/sounds/alsa/Side_Left.wav:

 File Size: 135k      Bit Rate: 768k
  Encoding: Signed PCM    
  Channels: 1 @ 16-bit   
Samplerate: 48000Hz      
Replaygain: off         
  Duration: 00:00:01.40  

In:100%  00:00:01.40 [00:00:00.00] Out:67.4k [      |      ]        Clip:0    
Done.
Или на произвольное устройство вывода:

Код: Выделить всё

[olej@xenix ~]$ set AUDIODEV=sysdefault:CARD=Headset; play /usr/share/sounds/alsa/Side_Left.wav

/usr/share/sounds/alsa/Side_Left.wav:

 File Size: 135k      Bit Rate: 768k
  Encoding: Signed PCM    
  Channels: 1 @ 16-bit   
Samplerate: 48000Hz      
Replaygain: off         
  Duration: 00:00:01.40  

In:100%  00:00:01.40 [00:00:00.00] Out:67.4k [      |      ]        Clip:0    
Done.

Ответить

Вернуться в «Железо для Linux»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 12 гостей