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

quatmo

Well-Known Member
Báo cáo cả nhà usb wifi đã về 1 nạm
Tối về em tính ra hết bao nhiêu em post sau nhé
Các bác gởi giúp em địa chỉ giao hàng ah
4843D8D3-3529-485D-B59E-4DF93336AFDF.jpg

Hơn 1 tuần sử dụng USB Wifi này với Pi 2 trên 3 bản SMPD 0.96, SMPD 0.60A và RopiXL. Chạy với cả 3 hoàn hảo, mượt mà. Play Hires 192kHz Online Ok. Thanks @toi511 anh@tml3nr.

Với RopiXL, cần phải xử lý thêm chút, lý do Ropi mặc định mỗi khi boot vào:
Ropi tự động cấu hình lại file /boot/config.txt, /etc/asound.conf...Vì vậy dù chỉnh disable-wifi, disable-bt rồi sau đó vài lần reboot sẽ bị mất.

Để âm thanh/ Usb Wifi mượt mà cần tắt Wifi Internal đi.

- Mod: Tìm và thêm dấu # cho những dòng sau trong file: /opt/RoPieee/sbin/configure
Mã:
#cp /boot/config.txt $tmpdir/config.txt
#sed -i '/^$/d' $tmpdir/config.txt
#cp $tmpdir/config.txt /boot

Sau đó thêm vào /boot/config.txt
Mã:
dtoverlay=disable-wifi
dtoverlay=disable-bt

--------------------------
Tắt tự động auto-feedback, auto updates. Mình không thích kiểu auto này nên mình tắt luôn. - Mod: Thêm dấu # cho tất cả script trong 3 file:
Mã:
/opt/RoPieee/sbin/auto-feedback
/opt/RoPieee/sbin/download-updates
/opt/RoPieee/lib/check_for_updates

Mã:
systemctl disable ropieee-download-updates.service
systemctl disable ropieee-update.service
systemctl disable ropieee-checkupdate.service

Trong mấy file service trên khóa với # luôn mấy dòng ExecStart, Exec... cho chắc ăn.
Thay thế bằng
Mã:
ExecStart=/bin/sleep 1
-----------------------------
Tắt luôn RoonBridge nếu không xài.
Mã:
systemctl disable roonbridge.service
----------------------------
Bác nào dùng AP trên Ropi: Sau khi setting card xong cần làm thêm một bước. Copy tất cả thông số trong file /etc/asound.conf vào /opt/RoPieee/resources/asound.conf
----------------------------

Bác nào dùng Ropi addon test thử âm thanh MiniDLNA vs Asset phát sang AP vs RopiXL (upmpdcli). Mình đoán Ropie có cơ chế xử lý balance CPU cho âm thanh (/opt/RoPieee/sbin/balance_irqs).

Cùng nguồn nhạc Pi Gdrive + Asset phát AP. Nhiệt độ CPU của Ropi trong tầm 40 - 42 độ, CPU SMPD lên 42 tăng dần 45 - 47 độ.
 
Chỉnh sửa lần cuối:

binna

Well-Known Member

DiemPhD

New Member
Em cũng đã bung thử thì thấy app tidal trên iPhone nhìn thấy HiTie RasPi Streamer, nhưng bật lên thì không thấy chạy. Không biết có phải setup thêm gì không các bác?
 

rndce

Well-Known Member
Theo hướng dẫn của bác
B6: # correct permissions
Mã:
sudo chmod +x /usr/ifi/ifi-tidal-release/play
sudo chmod +x /usr/ifi/ifi-tidal-release/bin/tidal_connect_application
sudo chmod +x /usr/ifi/ifi-tidal-release/pa_devs/run.sh
B7: #change output device here
Chạy lệnh:
Mã:
aplay -l
, để kiểm tra Output dive, của mình nó ra
Mã:
card 0: BossDAC [BossDAC], device 0: Boss DAC HiFi [Master] pcm512x-hifi-0 [ ]
Nên mình sẽ sửa nội dung trong file devices như sau
Mã:
sudo nano /usr/ifi/ifi-tidal-release/pa_devs/devices
paste doan nay vao, luu lai
Mã:
device#0=BossDAC: Boss DAC HiFi [Master] pcm512x-hifi-0 (hw:0,0)
#device#0=rockchip-spdif: - (hw:0,0)
#device#1=iFi Pro iDSD: USB Audio (hw:1,0)
#device#2=sysdefault
#device#3=default
#device#4=dmix
Number of devices = 1
B8: Sua file ifi-streamer-tidal-connect.service
Mã:
sudo nano /usr/ifi/ifi-tidal-release/ifi-streamer-tidal-connect.service
Chèn thêm "--playback-device ........" dưới "--enable-mqa-passthrough false \" như sau:
Mã:
--playback-device "BossDAC: Boss DAC HiFi [Master] pcm512x-hifi-0 (hw:0,0)" \
Như file service của mình sau khi chèn nó sẽ như sau:
Mã:
[Unit]
Description=RasPi Streamer Tidal Connect Service
[Service]
Restart=on-failure
ExecStart=/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" \
                --codec-mpegh true \
                --codec-mqa false \
                --model-name "HiTide RasPi Streamer" \
                --disable-app-security false \
                --disable-web-security false \
                --enable-mqa-passthrough false \
                --playback-device "BossDAC: Boss DAC HiFi [Master] pcm512x-hifi-0 (hw:0,0)" \
                --log-level 3 \
                --enable-websocket-log "0"

User=root
Group=root
RestartSec=1
KillMode=control-group
[Install]
WantedBy=multi-user.target
Lưu ý, nội dung của --play-back device trong file service phải trùng với nội dung sau "device#0=" trong file devices (/usr/ifi/ifi-tidal-release/pa_devs/devices)
B9: # deploy files
Mã:
# deploy files
sudo ./ifi-tidal-release/file-deploy.sh
B10: # start service and check on status
Mã:
sudo systemctl daemon-reload
sudo systemctl enable ifi-streamer-tidal-connect.service
sudo systemctl start ifi-streamer-tidal-connect.service
sudo systemctl status ifi-streamer-tidal-connect.service
Nếu ifi-streamer-tidal-connect.service active xanh lè thì tận hường Tidal Connect trước đã,
Phần alsa release khi sau khi play nhạc từ app Tidal tren điện thoại để nghe nhạc offline trên NAS, nhờ bác Hải @tml3nr hướng dẫn thêm.
Ngoài ra nếu muốn thay đổi oupt device thì quay lại từ B7, sau đó thì chạy lại mấy lệnh sau:
Mã:
#after changing  output device again
sudo systemctl daemon-reload
sudo systemctl restart ifi-streamer-tidal-connect.service
Bác xem laị từ bước 6, để chọn DAC phù hợp đang chạy trên máy của bác
Hoặc xem bài này để chỉnh lại device DAC cho phù hợp với hệ thống cùa bác
Tidal Connect on Raspberry Pi - Page 2 - Computer based HiFi - HiFi WigWam
 
Chỉnh sửa lần cuối:

quatmo

Well-Known Member
Em cũng đã bung thử thì thấy app tidal trên iPhone nhìn thấy HiTie RasPi Streamer, nhưng bật lên thì không thấy chạy. Không biết có phải setup thêm gì không các bác?
Mình bung ra setting HAT DAC (HifiBerry) chạy Ok.

em bung ra, chạy moode ngon lành, Tidal trên Ipad & Android, đều thấy TC streamer, bấm thì chạy ngon lành, có đều nó không hot ( em dùng USB DAC, ko có HAT DAC để thử )
vậy có phải là do USB DAC không bác @linh0983

1. Các bác gõ aplay -l xem card number USB/HAT số mấy.
2. Chỉnh file /lib/systemd/system/ifi-streamer-tidal-connect.service
USB DAC chắc số 5, add thêm dòng này vào
Mã:
--playback-device "(hw:5,0)" \
Lưu ý: Trên dòng này --enable-websocket-log "0"
Save / Reboot
--------------------

Update: Nghe một mạch 8 bài kết nối ổn định không bị đứt đoạn. Mai test Moode nghe lâu hơn xem sao.

-------------------
Các bác add reatime nghe thử xem

Mã:
[Unit]
Description=Tidal Connect Service
After=network.target

[Service]
LimitRTPRIO=99
LimitMEMLOCK=infinity
CPUSchedulingPolicy=other
CPUSchedulingPriority=44
Nice=-10

ExecStart=/opt/tidal/bin/tidal_connect \
......
 
Chỉnh sửa lần cuối:

rndce

Well-Known Member
Bác nào dùng Ropi addon test thử âm thanh MiniDLNA vs Asset phát sang AP vs RopiXL (upmpdcli). Mình đoán Ropie có cơ chế xử lý balance CPU cho âm thanh (/opt/RoPieee/sbin/balance_irqs).

Cùng nguồn nhạc Pi Gdrive + Asset phát AP. Nhiệt độ CPU của Ropi trong tầm 40 - 42 độ, CPU SMPD lên 42 tăng dần 45 - 47 độ.
Mình Linz Kazoo phát nhạc từ MiniDLNA qua AP (ver 2.08) nghe thấy chi tiết hơn nghe bằng upmpdcli của RopiXL. Pi4 4g ver1.2 Hifiberry DAC+
 
Chỉnh sửa lần cuối:

quatmo

Well-Known Member
Em xin báo cáo tình hình dùng smpd 0.9.6 + Asset upnp làm upnp server. Với setup hiện tại em cực kỳ ưng ý. Tiếng hay nhất từ trước tới giờ các anh ạ. Trong trẻo và dynamic cực tốt.

Vì OS này chỉ chạy asset upnp. Nên em cho script soundset chạy chung với assetupnp.service luôn (Dùng ExecStartPost).

Mình chỉ nên renice các main process của asset upnp. Phải kiểm tra kỹ vì nếu chạy renice sớm quá nó sẽ renice toàn bộ process, tiếng sẽ bị bó.

Với setup này hiện tại. Em không bị lag khi chạy với mọi bản asset upnp.

Âm thanh này em nghĩ chắc là không thua minidlna. Em thích dùng asset upnp hơn minidlna vì nó quản lý tag và search tốt hơn.

File assetupnp.service:

Mã:
[Unit]
Description=Launch AssetUPnP
After=network.target

[Service]
User=root
Type=simple
ExecStart=/root/bin/AssetUPnP/AssetUPnP
ExecStartPost=/usr/bin/soundset
Restart=always
RestartSec=1min

[Install]
WantedBy=multi-user.target

Script soundset chứa nội dung sau:

Mã:
#!/bin/bash

/usr/bin/tvservice --off

/bin/sleep 5

if [ -e /mnt/NAS/ ]; then
renice 14 $(pidof cifsd)
fi

/bin/sleep 15

renice 20 $(pidof AssetUPnP)

exit 0

smpd-096-renice.png

Cách renice này hay quá anh!
Hiệu quả rất tốt trên RopiXL, hiệu quả hơn default trên Moode.
 

binna

Well-Known Member
Mình bung ra setting HAT DAC (HifiBerry) chạy Ok.



1. Các bác gõ aplay -l xem card number USB/HAT số mấy.
2. Chỉnh file /lib/systemd/system/ifi-streamer-tidal-connect.service
USB DAC chắc số 5, add thêm dòng này vào
Mã:
--playback-device "(hw:5,0)" \
Lưu ý: Trên dòng này --enable-websocket-log "0"
Save / Reboot
--------------------

Update: Nghe một mạch 8 bài kết nối ổn định không bị đứt đoạn. Mai test Moode nghe lâu hơn xem sao.

-------------------
Các bác add reatime nghe thử xem

Mã:
[Unit]
Description=Tidal Connect Service
After=network.target

[Service]
LimitRTPRIO=99
LimitMEMLOCK=infinity
CPUSchedulingPolicy=other
CPUSchedulingPriority=44
Nice=-10

ExecStart=/opt/tidal/bin/tidal_connect \
......
em chạy lệnh aplay nó ra như thế này
Mã:
[Unit]
pi@moode:~ $ aplay -l

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

card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]

  Subdevices: 3/4

  Subdevice #0: subdevice #0

  Subdevice #1: subdevice #1

  Subdevice #2: subdevice #2

  Subdevice #3: subdevice #3

card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]

  Subdevices: 4/4

  Subdevice #0: subdevice #0

  Subdevice #1: subdevice #1

  Subdevice #2: subdevice #2

  Subdevice #3: subdevice #3

card 2: Digital [Pre Box S2 Digital], device 0: USB Audio [USB Audio]

  Subdevices: 1/1

  Subdevice #0: subdevice #0
vậy giờ mình chọn số bao nhiêu vậy bác @quatmo
 

quatmo

Well-Known Member
em chạy lệnh aplay nó ra như thế này
Mã:
[Unit]
pi@moode:~ $ aplay -l

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

card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]

  Subdevices: 3/4

  Subdevice #0: subdevice #0

  Subdevice #1: subdevice #1

  Subdevice #2: subdevice #2

  Subdevice #3: subdevice #3

card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]

  Subdevices: 4/4

  Subdevice #0: subdevice #0

  Subdevice #1: subdevice #1

  Subdevice #2: subdevice #2

  Subdevice #3: subdevice #3

card 2: Digital [Pre Box S2 Digital], device 0: USB Audio [USB Audio]

  Subdevices: 1/1

  Subdevice #0: subdevice #0
vậy giờ mình chọn số bao nhiêu vậy bác @quatmo

card 2: Digital [Pre Box S2 Digital] => số 2
Bác ghi: (hw:2,0)
 

quatmo

Well-Known Member
Hơn 1 tuần sử dụng USB Wifi này với Pi 2 trên 3 bản SMPD 0.96, SMPD 0.60A và RopiXL. Chạy với cả 3 hoàn hảo, mượt mà. Play Hires 192kHz Online Ok. Thanks @toi511 anh@tml3nr.

Với RopiXL, cần phải xử lý thêm chút, lý do Ropi mặc định mỗi khi boot vào:
Ropi tự động cấu hình lại file /boot/config.txt, /etc/asound.conf...Vì vậy dù chỉnh disable-wifi, disable-bt rồi sau đó vài lần reboot sẽ bị mất.

Để âm thanh/ Usb Wifi mượt mà cần tắt Wifi Internal đi.

- Mod: Tìm và thêm dấu # cho những dòng sau trong file: /opt/RoPieee/sbin/configure
Mã:
#cp /boot/config.txt $tmpdir/config.txt
#sed -i '/^$/d' $tmpdir/config.txt
#cp $tmpdir/config.txt /boot

Sau đó thêm vào /boot/config.txt
Mã:
dtoverlay=disable-wifi
dtoverlay=disable-bt

--------------------------
Tắt tự động auto-feedback, auto updates. Mình không thích kiểu auto này nên mình tắt luôn. - Mod: Thêm dấu # cho tất cả script trong 3 file:
Mã:
/opt/RoPieee/sbin/auto-feedback
/opt/RoPieee/sbin/download-updates
/opt/RoPieee/lib/check_for_updates

Mã:
systemctl disable ropieee-download-updates.service
systemctl disable ropieee-update.service
systemctl disable ropieee-checkupdate.service
systemctl disable ropieee-analytics.service

Trong mấy file service trên khóa với # luôn mấy dòng ExecStart, Exec... cho chắc ăn.
Thay thế bằng
Mã:
ExecStart=/bin/sleep 1
-----------------------------
Tắt luôn RoonBridge nếu không xài.
Mã:
systemctl disable roonbridge.service
----------------------------
Bác nào dùng AP trên Ropi: Sau khi setting card xong cần làm thêm một bước. Copy tất cả thông số trong file /etc/asound.conf vào /opt/RoPieee/resources/asound.conf
----------------------------

Bác nào dùng Ropi addon test thử âm thanh MiniDLNA vs Asset phát sang AP vs RopiXL (upmpdcli). Mình đoán Ropie có cơ chế xử lý balance CPU cho âm thanh (/opt/RoPieee/sbin/balance_irqs).

Cùng nguồn nhạc Pi Gdrive + Asset phát AP. Nhiệt độ CPU của Ropi trong tầm 40 - 42 độ, CPU SMPD lên 42 tăng dần 45 - 47 độ.

RopiXL dùng USB Wifi không cho setting static IP. Mod lại một chút là Ok.

#1./ Mở file /etc/systemd/network/ropieee-wireless.network
Thay thế nội dung:
[Network]
DHCP=yes
Thành:
Mã:
[Network]
#DHCP=yes
Address=192.168.1.222/24
Gateway=192.168.1.1
DNS=192.168.1.1

#2./ Mở file /opt/RoPieee/config.d/31-ropieee_network_wireless
[Network]
DHCP=yes
Thành:
Mã:
[Network]
#DHCP=yes
Address=192.168.1.222/24
Gateway=192.168.1.1
DNS=192.168.1.1

Reboot lại là xong.

PS: dãy IP tùy mỗi nhà.

Mình đang nghiên cứu tích hợp thêm Youtube Audio Cast vào Ropi (chạy NodeJs khá tiện để mod).
Nếu mod thành công nhạc số RopiXL sẽ có bộ tam: TC, SC, YTC.
 
Chỉnh sửa lần cuối:
Bên trên