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

tml3nr

Moderator
Cuối tuần có món ngon để chiến. Many Thanks bác @tml3nr
Bản này có sẵn upmpdcli ko bác Hải. Em tính dùng thêm Bubble Server để tạo Open Home.
upmpdcli muốn chạy được phải có mpd anh ạ. Khi có nó vào mpd sẽ bị nặng tiếng.

Lúc trước mình dùng upmpdcli vì nó có plugin Tidal. Nhưng mấy tháng nay đã hết chạy được do Tidal đổi api.

Em thấy cái TC này hay hơn bubbleupnp server + upmpdcli nhiều anh ạ. TC nó lấy nhạc trực tiếp từ internet.

Bubbleupnp server cần phải có java. upmpdcli cần có mpd. Nhạc từ Tidal lấy về bubbleupnp server rồi mới đẩy sang upmpdcli.

Em rất thích bộ tam sên TC, aprenderer và minidlna này vì theo em nó có lợi rất nhiều mặt.
 

tinnnnnnn

Member
upmpdcli muốn chạy được phải có mpd anh ạ. Khi có nó vào mpd sẽ bị nặng tiếng.

Lúc trước mình dùng upmpdcli vì nó có plugin Tidal. Nhưng mấy tháng nay đã hết chạy được do Tidal đổi api.

Em thấy cái TC này hay hơn bubbleupnp server + upmpdcli nhiều anh ạ. TC nó lấy nhạc trực tiếp từ internet.

Bubbleupnp server cần phải có java. upmpdcli cần có mpd. Nhạc Tidal lấy về bubbleupnp server rồi đẩy sang upmpdcli.

Em rất thích bộ tam sên TC, aprenderer và minidlna này vì theo em nó có lợi rất nhiều mặt.
Anh coi dùm sao nó không boot được. Cám ơn
 

pana800

Well-Known Member
Mời anh Quạt và cả nhà dùng thử ạ :confused:

http://smpd.local:7779/ | Setup aprenderer

http://smpd.local:8200/ | Xem status minidlna

Lưu ý khi chuyển đổi giữa Tidal và nhạc offline:

- Sau khi play TC. Chỉ cần đổi sang output khác là alsa release (Play aprenderer được).

- Sau khi play aprenderer. Chỉ cần xóa hết nhạc trong playlist (queue) cùa bubbleupnp là alsa release (Play Tidal được).

Để thay đổi âm thanh aprenderer:

- Vào http://smpd.local:7779/ Thẻ System. Thay đổi Process Priority. Nếu set 99 nó sẽ chạy RT.

Để thay đổi âm thanh TC:

Mã:
nano /lib/systemd/system/ifi-streamer-tidal-connect.service

Set 2 em này 99 nó sẽ chạy RT:

Mã:
CPUSchedulingPriority=99
LimitRTPRIO=99

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

[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 "smpd" \
         --codec-mpegh true \
         --codec-mqa false \
         --model-name "HiTide RasPi Streamer" \
         --disable-app-security false \
         --disable-web-security false \
         --enable-mqa-passthrough false \
         --log-level 3 \
         --enable-websocket-log "0"

CPUSchedulingPolicy=fifo
CPUSchedulingPriority=81
LimitRTPRIO=81
LimitMEMLOCK=infinity

User=root
Group=root
RestartSec=1
KillMode=control-group

[Install]
WantedBy=multi-user.target

Sau đó:

Mã:
sudo systemctl daemon-reload
sudo systemctl restart ifi-streamer-tidal-connect

hoặc:

Mã:
sudo systemctl daemon-reload
sudo systemctl restart soundset

Ghi chú thêm:

- Em dùng soundset.service để start TC và aprenderer cho dễ kiểm soát trình tự startup.

- Không cần edit "ifi-streamer-tidal-connect.service" khi set dac.

- Lệnh set dac cho TC đã chạy được:

+ Bật dac

+ Chạy lệnh:

Mã:
cd /usr/ifi
sudo ifi-tidal-release/pa_devs/run.sh

- File "/usr/ifi/ifi-tidal-release/pa_devs/devices" nếu edit như sau em nghĩ là sẽ play được các dac từ hw:0 cho đến hw:2:

Mã:
device#0=dac_1: - (hw:0,0)
device#1=dac_2: - (hw:1,0)
device#2=dac_3: - (hw:2,0)
device#3=sysdefault
device#4=default
device#5=dmix
Number of devices = 6

https://www.mediafire.com/?lbimh4z18pxtikj

smpd-096-1.png


smpd-096-2.png


smpd-096-6.jpg


smpd-096-4.png


smpd-096-5.png
Cám ơn bạn đã tốn công sức cho anh em. Cuối tuần vui vẻ nhé.
 

tml3nr

Moderator
Đây là nội dung /boot/config.txt stock của smpd 0.9.6

Các anh cắm thẻ vào PC, rồi đối chiếu dùm em để xem cần edit chổ nào cho phù hợp với pi đang dùng:

Mã:
# I2S DAC
dtoverlay=rpi-dac

# over clock
force_turbo=1
arm_freq=1152
core_freq=576
sdram_freq=576
sdram_freq_min=576

over_voltage=5
over_voltage_min=5
over_voltage_sdram_p=7
over_voltage_sdram_i=0
over_voltage_sdram_c=0
sdram_schmoo=0x02000020

#total_mem=256

# under clock
gpu_freq=62
gpu_freq_min=62

# UART
enable_uart=0  #if you use serial port , comment out this line
init_uart_clock=230400 #if you use serial port , comment out this line
dtparam=uart0=off
dtparam=uart1=off
dtoverlay=pi3-miniuart-bt

# disable wifi/bluetooth
dtoverlay=pi3-disable-wifi
dtoverlay=pi3-disable-bt

# Overclock the microSD reader with sdhost
#dtoverlay=sdhost,overclock_50=60

# misc.
startup_sound=on
temp_limit=70
boot_delay_ms=200
disable_splash=1
gpu_mem=16
hdmi_drive=2
disable_pvt=1
avoid_pwm_pll=1
dtparam=i2s=on
dtparam=i2c_arm=on
dtparam=i2c_vc=off
dtparam=spi=off
dtparam=audio=off
 

tml3nr

Moderator
Mình mới Flash vào SD Card xong, cũng đồng cảnh ngộ, ko boot được ah.
Có khi nào bác set IP cố định luôn ko, đèn cổng LAN trên Pi mình ko sáng. Mình dùng Pi3 ver 1.2.
Bác Hải bảng smpd này bác đang chạy trên Pi nào ah.
Em để default là nhận IP động anh ạ.
 

pana800

Well-Known Member
Mời anh Quạt và cả nhà dùng thử ạ :confused:

http://smpd.local:7779/ | Setup aprenderer

http://smpd.local:8200/ | Xem status minidlna

Lưu ý khi chuyển đổi giữa Tidal và nhạc offline:

- Sau khi play TC. Chỉ cần đổi sang output khác là alsa release (Play aprenderer được).

- Sau khi play aprenderer. Chỉ cần xóa hết nhạc trong playlist (queue) cùa bubbleupnp là alsa release (Play Tidal được).

Để thay đổi âm thanh aprenderer:

- Vào http://smpd.local:7779/ Thẻ System. Thay đổi Process Priority. Nếu set 99 nó sẽ chạy RT.

Để thay đổi âm thanh TC:

Mã:
nano /lib/systemd/system/ifi-streamer-tidal-connect.service

Set 2 em này 99 nó sẽ chạy RT:

Mã:
CPUSchedulingPriority=99
LimitRTPRIO=99

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

[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 "smpd" \
         --codec-mpegh true \
         --codec-mqa false \
         --model-name "HiTide RasPi Streamer" \
         --disable-app-security false \
         --disable-web-security false \
         --enable-mqa-passthrough false \
         --log-level 3 \
         --enable-websocket-log "0"

CPUSchedulingPolicy=fifo
CPUSchedulingPriority=81
LimitRTPRIO=81
LimitMEMLOCK=infinity

User=root
Group=root
RestartSec=1
KillMode=control-group

[Install]
WantedBy=multi-user.target

Sau đó:

Mã:
sudo systemctl daemon-reload
sudo systemctl restart ifi-streamer-tidal-connect

hoặc:

Mã:
sudo systemctl daemon-reload
sudo systemctl restart soundset

Ghi chú thêm:

- Em dùng soundset.service để start TC và aprenderer cho dễ kiểm soát trình tự startup.

- Không cần edit "ifi-streamer-tidal-connect.service" khi set dac.

- Lệnh set dac cho TC đã chạy được:

+ Bật dac

+ Chạy lệnh:

Mã:
cd /usr/ifi
sudo ifi-tidal-release/pa_devs/run.sh

- File "/usr/ifi/ifi-tidal-release/pa_devs/devices" nếu edit như sau em nghĩ là sẽ play được các dac từ hw:0 cho đến hw:2:

Mã:
device#0=dac_1: - (hw:0,0)
device#1=dac_2: - (hw:1,0)
device#2=dac_3: - (hw:2,0)
device#3=sysdefault
device#4=default
device#5=dmix
Number of devices = 6

Mình gắn Pi 2 thì boot được liền, nhưng aprender không lên. Allo Boss không nhận được bạn à. Có phải cần thêm Dac vào config.txt?
 

pana800

Well-Known Member
Các anh làm thử theo cách này xem có boot được không ạ?


smpd-096-7.png

<symphony-mpd có dt-blob.bin trong thư mục khởi động. Đây là một tệp để thêm một chức năng tạo PLL (Phase Locked Loop) được tối ưu hóa để phát lại nhạc cho raspberry pi. Có sự khác biệt trong giá trị PLL được tối ưu hóa giữa chế độ chính và chế độ phụ. Tuy nhiên, dt-blob.bin không có chức năng chuyển đổi giữa chế độ chính và chế độ phụ, vì vậy cần phải chuyển đổi tệp dt-blob.bin theo cách thủ công. Vì mục đích đó, ba loại dt-blob.bin, cụ thể là dt-blob.bin, dt-blob.bin.master và dt-blob.bin.slave được sắp xếp. Dt-blob.bin mặc định dành cho chế độ slave.
Do đó, không cần thiết phải thay thế dt-blob.bin khi sử dụng thẻ I2S HAT cho chế slave.>
Trên đây là nguyên văn hướng dẫn cài đặt của smpd.
Trong lần test trước mình đã bỏ (đổi tên) file dt-blob.bin và pi 3 khởi động được.
 

tml3nr

Moderator

toi511

Well-Known Member
mình cài P2, quét ip thấy vào Wincp được nhưng gõ ip trên trình duyệt không vào được
 
Bên trên