Raspberry Pi + Rune Audio ::: Một trải nghiệm nghe nhạc mới

toi511

Well-Known Member
Trước tiên em cảm ơn bác @linh0983 đã chia sẻ link để em download bản SMPD 0.96 về dùng thử.
Tạo thẻ xong gắn vào boot là lên luôn, em cũng loay hoay mãi mà không biết sử dụng nên hiện giờ mới chỉ biết dùng iPhone phát Youtube rồi Airplay để nghe.
Chắc sẽ phải nhờ bác @linh0983 hướng dẫn thêm để biết cách sử dụng. Tại em thấy bác linh0983 dùng cả PC và DT stream nhạc qua SMPD 0.96
Em cũng mới chơi món này nên lọc mọ loay hoay mãi. Em cũng ở ngay gần Khú chế xuất Tân Thuận quận 7 TP HCM nên em xin phép được gia nhập vào hội của các bác. Có dịp nào các bác off thì em tham gia học hỏi thêm kinh nghiệm.
Tks các bác nhiều
Wellcome
 

tml3nr

Moderator
Anh test so sánh trường hợp dùng Wifi AE như hiện tại của anh với trường hợp bỏ Wifi AE và kết nối dây (màu đỏ) như hình dưới xem có khác biệt gì ề âm thanh không ạ? Mobile kết nối wifi vào Time Capsule.

ABSRlIrwJrsKJVczoqE_R7sv6_iF1u3-e8dtBaBiMz9vTpwmqzS7kfN4ij8lZJX8SNMQJh17RByZC9yuUoEgTnUUZfVdkz4x1Zu9AreQaz9WOxr92zKDgvjRlWY14ZP-03TqjXEIeCRy2p3FaVXUCYeI3m0zOQtnHBl1omrzg7pOgeItfcMTokHg9Ihb5-LEf6qUhhQFATGA9AzO013DeO8RYsPatU9-Cxn432iE1fGdDvFBTHBMxyMrjWAGGKrsT0A9ndgTJmYyI_-IJ_5cKMyvHVoxSVeNMX-I0x08lPC_S4avcLP7eEmKERhXB3iwzgoSNE_DXM0O5ZPH147IruLKGG94FqEJzcTZ1AspGb3qMynhIh_8MD6PfOf2a8PHT8nuwnKoIPQQvSDndWzOqgX34OptK0T3lttz57-OiRZdQteZXbC9NvExooF2hdGI4iYIoG4giOStOHPw5LhxKGo1DpA0e0QBzh1kyriL0L-WHnTuQlug0N81UTOi2c2w_yNrgg3RmuyYiu2RzMMGYBbkPJBHGvx0VuujO84-kaNEf1br6dES0DGWyLHK7al9iLdb2tU7Q3a7hpaErBPlJxm3lYnPvXdHr_ndPeFFAdU4rEscJn6uYl7oWBHOdU0VDERLCtUFOio0PrHvL3k9N1tqmTfyycgGHlyxY2kQFvBh8LX2P3fySNc-tZX2a66RtToe21B8s_1Anh-dE-OoNDHEI69_hy2p63TU04Q=w2549-h4663-ft
Để em test lại thử xem sao ạ. Do trước đây khi dùng pi với boss dac, e, cắm dây vào TC tiếng nó sạn hơn wifi nhiều nên em chưa cắm dây cho NP5.
 

tml3nr

Moderator
Hôm nay xem xuất âm của SMPD 0.9.6
Xem qua:
MPD (mpd.conf) xuất âm qua PIPE
Mã:
audio_output {
  dop "yes"
  type "pipe"
  name "pipe"
  command "exec /home/pi/misc/pcminfo.sh"
}

asound.conf
Mã:
pcm.!default{
  type plug
  slave.pcm{
  @func getenv
  vars [ DEFAULT_SAMPLE_FORMAT ]
  default "PIPE"
  }
}

pcm.S16{
  type plug
  slave{
  pcm "PIPE"
  }
}

pcm.S24{
  type plug
  slave{
  pcm "PIPE"
  format S24
  }
}

pcm.S32{
  type plug
  slave{
  pcm "PIPE"
  format S32
  }
}

pcm.PIPE{
  type file
  slave.pcm null
  file "|exec /home/pi/misc/pcminfo.sh %f %r %c DEFAULT"
  format raw
}


Cấu hình cho TC xuất ra PIPE, thay vì xuất thẳng alsa hw.
Mã:
--playback-device "PIPE" \

Kết quả: TC đi qua Pipe OK. Các bác cấu hình test thử nhé.

Tidal Connect trên SMPD 0.96 của mình khi set -- playbackdevice "BossDAC: Boss DAC HiFi [Master] pcm512x-hifi-0 (hw:0,0)", khi kiểm tra file bằng lệnh : sudo systemctl status ifi-streamer-tidal-connect, thì nó báo là:
May 06 21:52:38 smpd tidal_connect_application[370]: Could not find device: 'BossDAC: Boss DAC HiFi [Master] pcm512x-hifi-0 (hw:0,0)'. Fallback to default device
May 06 21:52:38 smpd tidal_connect_application[370]: Valid devices are: 'S16' 'S24' 'S32' 'PIPE' 'default'
- > Nhưng Tidal Connect vẫn hót trên smpd 0.96.


Mã:
pi@smpd:~ $ sudo systemctl status ifi-streamer-tidal-connect
● ifi-streamer-tidal-connect.service - RasPi Streamer Tidal Connect Service
   Loaded: loaded (/lib/systemd/system/ifi-streamer-tidal-connect.service; enabled)
   Active: active (running) since Thu 2021-05-06 21:52:33 JST; 7min ago
Main PID: 370 (tidal_connect_a)
   CGroup: /system.slice/ifi-streamer-tidal-connect.service
           └─370 /usr/ifi/ifi-tidal-release/bin/tidal_connect_application --tc-certificate-path /usr/ifi/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat -f HiTide RasPi Streamer ...

May 06 21:52:38 smpd tidal_connect_application[370]: ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
May 06 21:52:38 smpd tidal_connect_application[370]: ALSA lib pcm_dmix.c:1052:(snd_pcm_dmix_open) unable to open slave
May 06 21:52:38 smpd tidal_connect_application[370]: Cannot connect to server socket err = No such file or directory
May 06 21:52:38 smpd tidal_connect_application[370]: Cannot connect to server request channel
May 06 21:52:38 smpd tidal_connect_application[370]: jack server is not running or cannot be started
May 06 21:52:38 smpd tidal_connect_application[370]: JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
May 06 21:52:38 smpd tidal_connect_application[370]: JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
May 06 21:52:38 smpd tidal_connect_application[370]: Could not find device: 'BossDAC: Boss DAC HiFi [Master] pcm512x-hifi-0 (hw:0,0)'. Fallback to default device
May 06 21:52:38 smpd tidal_connect_application[370]: Valid devices are: 'S16' 'S24' 'S32' 'PIPE' 'default'
May 06 21:52:38 smpd tidal_connect_application[370]: STARTED TidalConnect services.
pi@smpd:~ $ sudo nano /lib/systemd/system/ifi-streamer-tidal-connect.service

Chiều nay về mình set lại: --playback-device "PIPE", thì chạy lại sudo systemctl status ifi-streamer-tidal-connect, thì 2 dòng thông báo trên ko còn nữa, và Tidal Connect cũng đã hót trên smpd 0.96.
Và mình thấy điều thuận tiện hơn so với cách trước đây là dễ dàng chuyển đổi qua lại giữa nghe nhạc Tidal và offline (NAS):
- Pause trên Tidal và Play trên webUI là nghe nhạc offline, và ngược lại muốn nghe Tidal thì Pause trên WebUI và bầm play Tidal app trên phone
- (Truóc đây muốn nghe Offline thì stop trên Tidal App và chọn phát trên phone thì nó mới nhã ALSA, ngược lại muốn nghe Tidal thì phải dừng và xóa list nhạc trên WebUI)
Mã:
pi@smpd:~ $ sudo systemctl stop ifi-streamer-tidal-connect

Warning: Unit file of ifi-streamer-tidal-connect.service changed on disk, 'systemctl daemon-reload' recommended.
pi@smpd:~ $ sudo systemctl daemon-reload
pi@smpd:~ $ sudo systemctl restart ifi-streamer-tidal-connect
pi@smpd:~ $ sudo systemctl status ifi-streamer-tidal-connect
● ifi-streamer-tidal-connect.service - RasPi Streamer Tidal Connect Service
   Loaded: loaded (/lib/systemd/system/ifi-streamer-tidal-connect.service; enabled)
   Active: active (running) since Thu 2021-05-06 22:05:01 JST; 10s ago
Main PID: 6119 (tidal_connect_a)
   CGroup: /system.slice/ifi-streamer-tidal-connect.service
           └─6119 /usr/ifi/ifi-tidal-release/bin/tidal_connect_application --tc-certificate-path /usr/ifi/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat -f HiTide RasPi Streamer...

May 06 22:05:01 smpd tidal_connect_application[6119]: ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
May 06 22:05:01 smpd tidal_connect_application[6119]: ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
May 06 22:05:01 smpd tidal_connect_application[6119]: ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
May 06 22:05:01 smpd tidal_connect_application[6119]: ALSA lib pcm_dmix.c:1052:(snd_pcm_dmix_open) unable to open slave
May 06 22:05:01 smpd tidal_connect_application[6119]: Cannot connect to server socket err = No such file or directory
May 06 22:05:01 smpd tidal_connect_application[6119]: Cannot connect to server request channel
May 06 22:05:01 smpd tidal_connect_application[6119]: jack server is not running or cannot be started
May 06 22:05:01 smpd tidal_connect_application[6119]: JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
May 06 22:05:01 smpd tidal_connect_application[6119]: JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
May 06 22:05:01 smpd tidal_connect_application[6119]: STARTED TidalConnect services.

Dùng giao thức DIAL
Quá hay các anh ạ :eek::eek::eek:
 

toi511

Well-Known Member
Hôm nay xem xuất âm của SMPD 0.9.6
Xem qua:
MPD (mpd.conf) xuất âm qua PIPE
Mã:
audio_output {
    dop "yes"
    type "pipe"
    name "pipe"
    command "exec /home/pi/misc/pcminfo.sh"
}

asound.conf
Mã:
pcm.!default{
  type plug
  slave.pcm{
    @func getenv
    vars [ DEFAULT_SAMPLE_FORMAT ]
    default "PIPE"
  }
}

pcm.S16{
  type plug
  slave{
    pcm "PIPE"
  }
}

pcm.S24{
  type plug
  slave{
    pcm "PIPE"
    format S24
  }
}

pcm.S32{
  type plug
  slave{
    pcm "PIPE"
    format S32
  }
}

pcm.PIPE{
  type file
  slave.pcm null
  file "|exec /home/pi/misc/pcminfo.sh %f %r %c DEFAULT"
  format raw
}


Cấu hình cho TC xuất ra PIPE, thay vì xuất thẳng alsa hw.
Mã:
--playback-device "PIPE" \

Kết quả: TC đi qua Pipe OK. Các bác cấu hình test thử nhé.
Đỉnh quá anh ơi
 

htklinh74

Member
Bộ RPi3 + Digione Clone của mình tối qua tự nhiên rọt rẹt bên loa trái 1 lúc rồi không hát nữa. Mình vào phần MPD của Rune thì nó không nhận Digione nữa. Mình dùng thẻ SMPD 0.96 gắn vào phát cũng không ra tiếng. Quay ra dùng CD phát thì hệ thống bình thường. Như vậy là bộ RPi3 có vấn đề. Chẳng nhẽ mới cắm rút thẻ có vài ngày mà hư sao :(

Bác @linh0983 có thể giúp mình kiểm tra bộ này xem nó bị gì không. Mình sẽ cầm đem qua nhà cho bác.

Tks bác @linh0983 trước :)
 

do_long_khach

Well-Known Member
Bộ RPi3 + Digione Clone của mình tối qua tự nhiên rọt rẹt bên loa trái 1 lúc rồi không hát nữa. Mình vào phần MPD của Rune thì nó không nhận Digione nữa. Mình dùng thẻ SMPD 0.96 gắn vào phát cũng không ra tiếng. Quay ra dùng CD phát thì hệ thống bình thường. Như vậy là bộ RPi3 có vấn đề. Chẳng nhẽ mới cắm rút thẻ có vài ngày mà hư sao :(

Bác @linh0983 có thể giúp mình kiểm tra bộ này xem nó bị gì không. Mình sẽ cầm đem qua nhà cho bác.

Tks bác @linh0983 trước :)
Với mọi lỗi lầm của Pi trước hết cứ flash lại thẻ xem sao đã bác ạ.
 

quatmo

Well-Known Member
Trước tiên em cảm ơn bác @linh0983 đã chia sẻ link để em download bản SMPD 0.96 về dùng thử.
Tạo thẻ xong gắn vào boot là lên luôn, em cũng loay hoay mãi mà không biết sử dụng nên hiện giờ mới chỉ biết dùng iPhone phát Youtube rồi Airplay để nghe.
Chắc sẽ phải nhờ bác @linh0983 hướng dẫn thêm để biết cách sử dụng. Tại em thấy bác linh0983 dùng cả PC và DT stream nhạc qua SMPD 0.96
Em cũng mới chơi món này nên lọc mọ loay hoay mãi. Em cũng ở ngay gần Khú chế xuất Tân Thuận quận 7 TP HCM nên em xin phép được gia nhập vào hội của các bác. Có dịp nào các bác off thì em tham gia học hỏi thêm kinh nghiệm.
Tks các bác nhiều
Bác cần chọn lựa/ trang bị cho nhu cầu nhạc số.

Option #1 Dùng 1 Pi
- Trang bị 1 Nas dùng chứa nhạc share ra hoặc dùng PC/Laptop share thư mục (SMB) ra.
- Cách 1: Dùng SMPD (bản gốc) add Nas/SMB vào nghe qua MPD mặc định.
- Cách 2: Cài UPNP server vào Nas, truyền sang PI DAC chạy SMPD (mod: UpMPD/AP)

Option #2 Dùng 2 Pi: AoE
- Trang bị thêm 1 Pi 4 thay thế vào vị trí Pi 3 hiện tại.

Option #3 cũng như Option #2.
- Dùng thêm 1 Pi 3/4 kết nối USB HDD cài Asset hoặc MiniDLNA truyền sang PI DAC

Option #4 Dùng 1 Pi (nghe từ NAS, USB hoặc PC share SMB).
Chạy OS all-in-one: MoodeAudio 7.2, Volumio Buster. Cả 2 chạy Linux mới tối ưu hiệu suất phần cứng, âm thanh tốt hơn những phiên bản trước. Hoặc lựa chọn tốt khác DAstereo dimas hoặc piCorePlayer (phiên bản mod Xenomai).

Option #5 đơn giản nhất, chơi online: Tidal connect/Spotify connect sang PI DAC chạy SMPD (mod), RopieeeXL...

Phone đóng vai trò là cái remote.
 
Chỉnh sửa lần cuối:

htklinh74

Member
Cám ơn hướng dẫn của các bác. Em sẽ từng bước thực hiện theo hướng dẫn này. Do mới chơi nên còn bỡ ngỡ, Dữ liệu của trang này thì quá mênh mông nên em cũng rối trí.

Bộ RPi3 + Digione Clone của em chắc là có vấn đề nên em cũng thử flash thẻ lại. Boot vào Moode 7,1, khai báo Allo-Digione rồi khởi động lại. Chạy SSH lệnh aplay -l nó báo không có thiết bị.

Bộ này là mod nguồn 3x cho Rpi và Digione nên em chịu không cắm rút thay thế để test như bộ rời được. :(

Mong sự hỗ trợ kiểm tra giúp của bác Phước @linh0983 thôi.
 

quatmo

Well-Known Member
Mình nghĩ là có. Bác xem lại ruột cùa 2 file:
pipe.service:
Mã:
[Unit]
Description=symphonic-mpd pipe service
Wants=network-online.target
After=sound.target
After=network.target network-online.target

[Service]
EnvironmentFile=/etc/environment
Type=simple
CPUAffinity=1
CPUSchedulingPolicy=fifo
CPUSchedulingPriority=99
LimitRTPRIO=99
LimitMEMLOCK=infinity
StartLimitBurst=0
User=root
Group=root

# none, realtime, best-effort, idle
IOSchedulingClass=realtime

# 0(highest) - 7(lowest)
IOSchedulingPriority=0

ExecStart=/home/pi/configs/pipe.sh exec

Restart=always
StartLimitInterval=5

[Install]
WantedBy=multi-user.target
và file pipe.sh:
Mã:
#!/bin/bash

device="hw:0,0"
pcminfo=/run/pcminfo

opt_aplay="--device=${device} -i ${pcminfo}"

case "$1" in
  exec)
  if [ ! -e $pcminfo ]; then
  touch $pcminfo
  chmod 666 $pcminfo
  echo "$DEFAULT_SAMPLE_FORMAT 44100 2 DEFAULT" > $pcminfo
  fi

  read format rate ch < $pcminfo
  gravity='$GRAVITY_'$rate
  eval echo "$gravity" > /proc/xenomai/clock/coreclk
  exec /usr/local/bin/aplay-rt $opt_aplay
  ;;
esac


Chính xác là TC xuất âm ra PIPE ra aplay-rt Ok các bác.

Mình làm một bài test đơn giản.
A. Khi đanng play nhạc TC
sudo systemctl restart pipe hay sudo systemctl stop pipe = không được

B. sudo systemctl stop pipe rồi bật nhạc TC, nhạc không play được.

TC cùng chơi với Pipe.

2021-05-07-07_02_38-pismpd_-.png
 

linh0983

Well-Known Member
Cám ơn hướng dẫn của các bác. Em sẽ từng bước thực hiện theo hướng dẫn này. Do mới chơi nên còn bỡ ngỡ, Dữ liệu của trang này thì quá mênh mông nên em cũng rối trí.

Bộ RPi3 + Digione Clone của em chắc là có vấn đề nên em cũng thử flash thẻ lại. Boot vào Moode 7,1, khai báo Allo-Digione rồi khởi động lại. Chạy SSH lệnh aplay -l nó báo không có thiết bị.

Bộ này là mod nguồn 3x cho Rpi và Digione nên em chịu không cắm rút thay thế để test như bộ rời được. :(

Mong sự hỗ trợ kiểm tra giúp của bác Phước @linh0983 thôi.
Của bác hót chưa ? Nếu chưa đem qua cho mình ạ . :(
 

rndce

Well-Known Member
Chính xác là TC xuất âm ra PIPE ra aplay-rt Ok các bác.

Mình làm một bài test đơn giản.
A. Khi đanng play nhạc TC
sudo systemctl restart pipe hay sudo systemctl stop pipe = không được

B. sudo systemctl stop pipe rồi bật nhạc TC, nhạc không play được.

TC cùng chơi với Pipe.

2021-05-07-07_02_38-pismpd_-.png
Bác @quatmo, bác @tml3nr có thử stream nhạc MQA (24-96) từ Tidal app trên phone qua Smpd 0.96 chưa ah. Mình stream nhạc MQA qua Smpd 0.96 TC dùng (--playback-device "PIPE") thì nó im re.
Nếu dùng (--playback-device "BossDAC: - (hw:0,0)"), thì smdp 0.96 nó hót.
Mình dùng album này để test:
https://tidal.com/browse/album/162871809
 

htklinh74

Member
Bác cần chọn lựa/ trang bị cho nhu cầu nhạc số.

Option #1 Dùng 1 Pi
- Trang bị 1 Nas dùng chứa nhạc share ra hoặc dùng PC/Laptop share thư mục (SMB) ra.
- Cách 1: Dùng SMPD (bản gốc) add Nas/SMB vào nghe qua MPD mặc định.
- Cách 2: Cài UPNP server vào Nas, truyền sang PI DAC chạy SMPD (mod: UpMPD/AP)

Option #2 Dùng 2 Pi: AoE
- Trang bị thêm 1 Pi 4 thay thế vào vị trí Pi 3 hiện tại.

Option #3 cũng như Option #2.
- Dùng thêm 1 Pi 3/4 kết nối USB HDD cài Asset hoặc MiniDLNA truyền sang PI DAC

Option #4 Dùng 1 Pi (nghe từ NAS, USB hoặc PC share SMB).
Chạy OS all-in-one: MoodeAudio 7.2, Volumio Buster. Cả 2 chạy Linux mới tối ưu hiệu suất phần cứng, âm thanh tốt hơn những phiên bản trước. Hoặc lựa chọn tốt khác DAstereo dimas hoặc piCorePlayer (phiên bản mod Xenomai).

Option #5 đơn giản nhất, chơi online: Tidal connect/Spotify connect sang PI DAC chạy SMPD (mod), RopieeeXL...

Phone đóng vai trò là cái remote.
Trong các Option mà bác Quạt đã hướng dẫn thì em thấy Option 1 & 5 là phù hợp nhất với thiết bị hiện cò của em. Sau khi gởi bác Phước kiểm tra xử lý xong em sẽ nhờ bác Phước hỗ trợ cài giúp SMPD để dùng cho 02 Option này.

Rồi từ từ em sẽ mày mò cài thêm Dastereo, MoodAudio ... để tìm hiểu và cũng thay đổi chất âm xem nó ntn. Nếu có gì vướng mắc em sẽ nhờ sự trợ giúp của các bác trên đây

Cảm ơn sự nhiệt tình của các bác :)
 
Bên trên