59

Мой способ слушать музыку на linux

Итак, я снова выхожу на связь со своим красноглазием.

Как нормальный человек слушает музыку? Ну включит bluetooth уши и откроет любой музыкальный стрим-сервис на телефоне.

Это здорово, но вот что делать если у тебя 400гб DSD/Hi-Rez файлов?

Поэтому я решил собрать небольшой сетап для прослушивания, ну и опять же мне бухать немного надоело сидя в изоляции.


нам понадобятся такие ингридиенты:

1.ЦАП (по сути юсб звуковая карта), свою (S.M.S.L IQ) я купил пару лет назад на али, она оказалась весьма годным примером china hi-fi

2.Odroid C2 (ну или RPI 3/4 любой линуксовый пк на арм/х86)

3.проводки, наушники, резиночка, наушники в моем случае Tinaudio T2 с балансным проводом и цап имеет балансный выход.

4.руки и немного мозга


Для проигрывания музыки я буду использовать связку MPD+alsa, задача избежать DoP и прочего транскодинга, т.е. отдать DSD напрямую в устройство

что такое DSD  здесь-

https://www.whathifi.com/us/advice/what-dsd-audio-how-it-wor...


Ок, погнали.

Берем ваш ПК с линуксом (желательно какой то свежий дистрибутив, убунта, армбиан, хотя тут сами выбирайте, оно не настолько принципиально),

все соединяем, и смотрим что бы наш цап виделся в выводе lsusb

в моем случае это вот:

lsusb

===========================

Bus 001 Device 004: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter

Bus 001 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

вот это >>>>> Bus 001 Device 005: ID 152a:85dd Thesycon Systemsoftware & Consulting GmbH

Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

===========================

запоминаем ID 152a:85dd, он нам пригодится.

идем настраивать модуль альсы.


смотрим какие аудиокарты видит альса

aplay -l

==========================

**** List of PLAYBACK Hardware Devices ****

card 0: OdroidC2 [Odroid-C2], device 0: fe.dai-link-0 (*) []

Subdevices: 1/1

Subdevice #0: subdevice #0

card 1: USB20 [SMSL IQ USB2.0], device 0: USB Audio [USB Audio]

Subdevices: 1/1

Subdevice #0: subdevice #0

==========================

нужная идет под номером 1.


ставим перманентный индекс для аудиокарты в модуле

nano /etc/modprobe.d/alsa-base.conf

========================

options snd-usb-audio index=1 vid=0x125a pid=0x85dd

========================

т.е. мы указали ID устройства, для того что бы при переключении в другой разъем номер с точки зрения альсы не менялся.

Если вы успешный и богатый и звуковых карт у вас несколько, то конфиг модуля примерно такой надо

============================

options snd-usb-audio index=1,2 vid=0x25c4,0x21b4 pid=0x0008,0x0083

============================


осталось только подергать модуль (ну или перезагрузится, если не лень)

=============================

sudo modprobe -r snd-usb-audio

sudo modprobe snd-usb-audio

=============================


теперь поставим MPD, можно из оф реп, можно из сорцов

==========

sudo apt-get update

sudo apt-get install mpd

==========


смотрим статус

=============

sudo systemctl status mpd.service

=============

mpd.service - Music Player Daemon

Loaded: loaded (/lib/systemd/system/mpd.service; enabled; vendor preset: enabled)

Active: active (running) since Fri 2019-10-04 00:45:52 MSK; 14s ago

Docs: man:mpd(1)

man:mpd.conf(5)

file:///usr/share/doc/mpd/user-manual.html

Main PID: 11181 (mpd)

Tasks: 3 (limit: 4915)

Memory: 12.6M

CPU: 511ms

CGroup: /system.slice/mpd.service

└─11181 /usr/bin/mpd --no-daemon

Oct 04 00:45:52 nuc systemd[1]: Starting Music Player Daemon...

Oct 04 00:45:52 nuc mpd[11181]: hybrid_dsd: The Hybrid DSD decoder is disabled because it was not explicitly enabled

Oct 04 00:45:52 nuc systemd[1]: Started Music Player Daemon.

============


теперь сконфигурячим mpd

nano /etc/mpd.conf

===============================

# See: /usr/share/doc/mpd/mpdconf.example

pid_file "/run/mpd/mpd.pid"

db_file "/var/lib/mpd/mpd.db"

state_file "/var/lib/mpd/mpdstate"

playlist_directory "/var/lib/mpd/playlists"

music_directory "/mnt/samba-share/+muz/"

database {

plugin "simple"

path "/var/lib/mpd/db"

}

resampler {

plugin "libsamplerate"

type "0"

}

replaygain "off"

input {

plugin "tidal"

enabled "no"

}

input {

plugin "qobuz"

enabled "no"

}

audio_output {

type "alsa"

device "hw:1,0"

name "SMSL IQ"

auto_resample "no"

auto_channels "no"

auto_format "no"

replay_gain_handler "none"

dop "no"

mixer_type "none"

}

===============================

немного про опции конфига:

music_directory - место где лежит музыка (в моем случае примонтированная самба шара, самбу можно напрямую через плагин)

database - нужна для сохранения мета инфы о треках,

resampler - выключаем,он может быть нужен если цап не поддерживает параметры потока

replaygain - тоже отключаем, громкость я буду крутить на самой звуковухе

input plugin - я не использую, но можно цеплять всякие внешние сервисы

audio_output, самый важный кусок, в нем как раз я указываю что играть и в какую звуковую карту (индекс 1, который мы поставили в начале)

опций очень много, у меня так достаточно минимальный конфиг, основные смотрите на офсайте MPD https://www.musicpd.org/doc/html/user.html#configuration


после кручения опций рестаруем мпд

=======

sudo systemctl restart mpd.service

======

Все, если все ок, можно взять телефон и поставить приложение для управления нашей музыкальной шкатулкой(например, M.A.L.P. под андроид) указать ip и порт коробочки и наслаждаться музыкой. В планах сделать управление через bluetooth, но пока не понял, можно или нет.

Вариантов кастомизации много- приделать аккумулятор и перенести на флешку музыку и сделать портативную AP - куда то кататься или например приделать экран для отображения трека и хардверные кнопки для переключения.

Всем спасибо, надеюсь, это скрасит вашу изоляцию.

GNU/Linux

1.2K постов15.6K подписчиков

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества