Thử nghiệm Tidal, upmpdcli và minidlna Server trên dual-pi

tml3nr

Moderator
Ý tưởng & mục đích:

Em vẫn nghĩ lăn tăn về dual-pi. Việc này có các lợi ích sau:

- Giảm process chạy trên renderer.

- Chạy được Rune với Tidal upmpdcli (Do không cài được upmpdcli lên Rune).

- Cắm USB HDD vào pi làm NAS.

- Tận dụng được lợi thế noise thấp của pi2 / pi zero và sức mạnh của pi3 B+.

Mô tả:

- pi #1 server: dùng pi3 B+. Kết nối với NAS hoặc cắm USB SDD chứa nhạc vào. Chạy Tidal-upmpdcli, hoặc Tidal-bubbleupnp server và upnp / DLNA server.

- pi #2 renderer: (dùng pi2 hoặc pi zero) làm upnp renderer. Setup Spotify connect. Ngoài ra không thêm gì khác nữa.

Test lần 1: So sánh play Tidal giữa upmpdcli và bubbleupnp server:

Tidal-upmpdcli:

- pi #1 (dùng pi3 B+) raspbian stretch. Chạy upmpdcli.

- pi #2 (dùng pi2) chạy rune upnp renderer.

Nhận xét:

Cần phải dùng app lumin, hoặc linn kazoo version mới (Để support multiroom. lấy tidal ở upmpdcli, phát sang rune renderer)

Tiếng hay hơn cách 2 khoảng 7/10

Search tốt, không bằng cách 2.

Volume sync với alsa rất tốt.

Âm thanh này có thể nói là gần, hoặc tương đương roon core - roon bridge.

post20180717_dlna_00.jpg


Tidal-bubbleupnp server:

- pi #1 (dùng pi3 B+) raspbian stretch. Chạy bubbleupnp server.

- pi #2 (dùng pi2) chạy rune upnp renderer.

Nhận xét:

Không cần app linn kazoo version mới

Tiếng dở hơn cách 1 khoảng 7/10.

Search tốt hơn cách 1.

Volume sync với alsa hơi chậm.

Test lần 2 - Chạy thử Tidal - upmpdcli và minidlna server:

- pi #1 server:

Chạy raspian stretch, upmpdcli, minidlna.

- pi #2 renderer:

rune chỉ dùng upnp renderer, spotify connect fornoth v003.

pi #1 kết nối vào lan bằng wifi 5Ghz

pi #2 từ trước tới giờ em vẫn dùng AE làm client wifi.

Trước mắt thấy OK lắm ạ. Đỡ tốn 30 chai cho roon và đồng bọn :D Em sẽ nghe vài hôm và tìm cách tinh chỉnh cho nó tốt hơn.

post20180717_dlna_01.jpg


Chọn upmpd-mediaserver để chạy tidal. upmpd-dlna để play nhạc trong NAS:

post20180717_dlna_02.jpg


Play nhạc offline trong NAS:

post20180717_dlna_03_dlna.jpg


Play tidal:

post20180717_dlna_04_tidal.jpg


pi3 B+ khi phát nhạc. Em dán tản nhiệt vào CPU nó giảm được hơn 10 độ C :D

post20180717_dlna_05_pi3_B_plus_1.jpg


post20180717_dlna_06_pi3_B_plus_2.jpg


post20180717_dlna_07_pi3_B_plus_3.jpg


Test lần 3 - So sánh âm thanh:

Trong lúc test, em dùng cục pin sạc Asus. Sau khi tạm ổn em dùng cục adapter của Google Chromecast. Em nghĩ là cơ chế upnp / dlna server không nhạy cảm với nguồn.

Nhưng tiếng của nó dở rõ lắm ạ. Sạn và cứng.

May mắn là em có sẵn ipower 5V. Cắm vào tiếng sạch hơn hẳn. Hay hơn cục pin Asus nhiều.

So sánh âm thanh thì em thấy như sau:

- mpd của rune vs minidlna server: minidlna server hơn. Khoảng 9/10.

- tidal vs mpd vs minidlna server: tidal rất hay. Có thể bằng hoặc hơn minidlna server.

Như vậy để dùng tidal. Đối với em hiện tại cách dùng dual-pi / upmpdcli là tối ưu. Hoàn toàn có thể quên được roon core / roon bridge một cách vui vẻ :D

Nếu chỉ dùng dual-pi cho minidlna server thì có thể không đáng. Vì chênh lệch so với mpd không nhiều (Trên boss dac).

Nếu cắm USB HDD vào pi server thế cho NAS luôn thì quá tiện. Chưa rõ âm thanh có ảnh hưởng hay không.

@@@ Lưu ý:

Các anh có thể dùng moode 4.2 làm pi server. Nó support upmpdcli và minidlna rất tốt. Em setup thủ công lên raspbian để dễ kiểm soát và tìm hiểu thêm.

Download IMG:

https://www.fshare.vn/file/AA7XV8AID3YF
 
Chỉnh sửa lần cuối:

tml3nr

Moderator
Các bước setup upmpdcli:

Flash img Raspbian Stretch, trên PC tạo file ssh rỗng để enable SSH.

Mã:
sudo raspi-config
set location
extend patition

sudo nano /etc/apt/sources.list.d/upmpdcli.list
### thêm vào:
deb http://www.lesbonscomptes.com/upmpdcli/downloads/raspbian/ stretch main
deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/raspbian/ stretch main

sudo apt install dirmngr
gpg --keyserver pool.sks-keyservers.net --recv-key F8E3347256922A8AE767605B7808CE96D38B9201
gpg --export '7808CE96D38B9201' | sudo apt-key add -

sudo apt-get update
sudo apt-get install upmpdcli
sudo apt-get install upmpdcli-tidal

sudo nano /etc/apt/sources.list.d/mpd.list
### thêm vào:
deb http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ stretch main
deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ stretch main

sudo apt-get update
sudo apt-get install mpd

sudo nano /etc/upmpdcli.conf
### thêm vào:
tidaluser = [email protected]
tidalpass = xyz
tidalquality = lossless
### Tên hiển thị (Tùy chọn):
ohproductroom = Raspi-mediaserver

sudo systemctl stop upmpdcli
sudo systemctl start upmpdcli
sudo systemctl status upmpdcli

Source tham khảo:

https://www.lesbonscomptes.com/upmpdcli/downloads.html

https://www.lesbonscomptes.com/pages/signatures.html
 
Chỉnh sửa lần cuối:

tml3nr

Moderator
Các bước setup minidlna:

Mã:
sudo apt-get install minidlna

sudo mkdir /mnt/NAS
sudo mkdir /mnt/SDCARD
sudo ln -s /mnt/NAS /var/lib/mpd/music
sudo ln -s /mnt/SDCARD /var/lib/mpd/music
sudo ln -s /media /var/lib/mpd/music/USB

sudo nano /etc/default/minidlna
### edit như sau
USER="minidlna"
GROUP="minidlna"

sudo nano /etc/minidlna.conf
### edit như sau:
media_dir=A,/var/lib/mpd/music
db_dir=/var/cache/minidlna
log_dir=/var/log
log_level=off
port=8200
presentation_url=
friendly_name=Raspi-DLNA
inotify=no
album_art_names=Cover.jpg/cover.jpg
album_art_names=Folder.jpg/folder.jpg
wide_links=yes

sudo systemctl stop minidlna
sudo systemctl start minidlna
sudo systemctl status minidlna

Để force scan library:

sudo /usr/sbin/minidlnad -R

Để fix lỗi max_user_watches:

sudo nano /etc/sysctl.conf
### Thêm vào cuối file:
fs.inotify.max_user_watches = 65536

Để kiểm tra MiniDLNA status:

http://ip_pi_server:8200/

Source tham khảo:

https://melgrubb.com/2016/12/11/rphs-v2-minidlna/
 
Chỉnh sửa lần cuối:

tml3nr

Moderator
- Em giữ chỗ này hóng bác viết tiếp...
Cảm ơn anh đã quan tâm. Em đã viết cái tút hướng dẫn bên trên, và up file IMG làm sẵn luôn cho bà con dùng thử..

Anh có thể dùng moode 4.2 để chạy upmpdcli và minidlna cho tiện. Em setup trên raspbian để tìm hiểu thêm chứ thật ra moode làm cái này đã rất tốt.

pi #1 làm server: Chạy moode. Add account tidal vào mục upnp. Bật dlna.

pi #2 làm renderer: Chạy rune / moode / volumio. Chỉ cần bật upnp renderer.

Dùng app lumin. Hoặc linn kazoo trên windows 10. Chọn music library là pi #1. Phát sang pi #2 renderer.
 
Chỉnh sửa lần cuối:

rndce

Well-Known Member
@tml3nr
1- Bản Moode 6.5 mới có upmpdcli và minidlna nữa ko ah
2 - Nếu mình cài dual Pi cùng dùng Moode hết thì Pi#1 dùng làm media server Pí#2 làm upnp Renderer được ko ah
3 - Mình có thể cài Minimserver lên Pi#1 đã cài Moode ko ah (nếu cài OS Raspbian Stretch, thì cài minimserver được pk ah)
4 - Có sẵn nhạc trong Nas, add nhạc vào Pi#1 (media server) để cho Minimserver quản lý thì có được ko ah
Nghĩa là minimserver có thể scan nhạc từ thư mục share cảu Nas trong mạng nội bộ pk ah?
Cảm ơn bác.
 

tml3nr

Moderator
@tml3nr
1- Bản Moode 6.5 mới có upmpdcli và minidlna nữa ko ah
2 - Nếu mình cài dual Pi cùng dùng Moode hết thì Pi#1 dùng làm media server Pí#2 làm upnp Renderer được ko ah
3 - Mình có thể cài Minimserver lên Pi#1 đã cài Moode ko ah (nếu cài OS Raspbian Stretch, thì cài minimserver được pk ah)
4 - Có sẵn nhạc trong Nas, add nhạc vào Pi#1 (media server) để cho Minimserver quản lý thì có được ko ah
Nghĩa là minimserver có thể scan nhạc từ thư mục share cảu Nas trong mạng nội bộ pk ah?
Cảm ơn bác.
Q1- Bản Moode 6.5 mới có upmpdcli và minidlna nữa ko ah

A1: Lâu rồi em không test moode. Theo như trước đây nó có đủ upmpdcli và minidlna.

Q2 - Nếu mình cài dual Pi cùng dùng Moode hết thì Pi#1 dùng làm media server Pí#2 làm upnp Renderer được ko ah

A2: Được ạ. Trong test của thread này em có thử chạy bằng 2 moode. 1 cái làm upnp server, cái kia làm renderer.

Q3 - Mình có thể cài Minimserver lên Pi#1 đã cài Moode ko ah (nếu cài OS Raspbian Stretch, thì cài minimserver được pk ah)

A3: Nếu như moode không có minimserver thì mình cài vào em nghĩ là được.

Raspbian Stretch cài minimserver OK.

Q4 - Có sẵn nhạc trong Nas, add nhạc vào Pi#1 (media server) để cho Minimserver quản lý thì có được ko ah
Nghĩa là minimserver có thể scan nhạc từ thư mục share cảu Nas trong mạng nội bộ pk ah?


A4: minimserver scan tốt nhạc trong nas ạ.
 

rndce

Well-Known Member
Q1- Bản Moode 6.5 mới có upmpdcli và minidlna nữa ko ah

A1: Lâu rồi em không test moode. Theo như trước đây nó có đủ upmpdcli và minidlna.

Q2 - Nếu mình cài dual Pi cùng dùng Moode hết thì Pi#1 dùng làm media server Pí#2 làm upnp Renderer được ko ah

A2: Được ạ. Trong test của thread này em có thử chạy bằng 2 moode. 1 cái làm upnp server, cái kia làm renderer.

Q3 - Mình có thể cài Minimserver lên Pi#1 đã cài Moode ko ah (nếu cài OS Raspbian Stretch, thì cài minimserver được pk ah)

A3: Nếu như moode không có minimserver thì mình cài vào em nghĩ là được.

Raspbian Stretch cài minimserver OK.

Q4 - Có sẵn nhạc trong Nas, add nhạc vào Pi#1 (media server) để cho Minimserver quản lý thì có được ko ah
Nghĩa là minimserver có thể scan nhạc từ thư mục share cảu Nas trong mạng nội bộ pk ah?


A4: minimserver scan tốt nhạc trong nas ạ.
Loay hoay cả đêm mình cài SMPD 0.96 lên Pi 3, add nhạc từ NAS vào SMPD ok, play nhạc thấy tiếng trong veo.
Mình cài thêm minimserver vào SMPD, mà không biết cách nào để nó hiện lên và chạy (cài java thành công trên Pi, cài minimser bản "MinimServer-0.8.5.2-linux-armhf.tar" theo như hướng dẫn của @trung224, cài Minimwatch trên win10 để khiển mà nó không hiện Minimserver đã cài trên SMPD, Mình không biết cách bác cài minimserver trên Raspbian Strech như thế nào có áp dụng cho SMPD 0.96 được ko?
Mình đang dùng NAS Buffalo LS WVL mà không biết cách nào để cài Minimserver lên nó, SSH vào NAS được rồi, mà không thể nào cài java theo hướng dẫn trên web của Minimserver, bác @tml3nr có kinh nghiệm thì chi giúp mình với.
Chân thành cảm ơn bác.
 

rndce

Well-Known Member
Mình dùng SMPD làm renderer nhưng Lumin không thấy, Kinsky (cài trên máy tính PC) ko thấy, Chỉ có Linm Kazoo trên iphone thấy. Không biết cách nào để Lumin và Kinsky thấy SMPD renderer ko ah? Mình cài bản SMPD upnp Pi của bác @quatmo shared đã cài upmpdcli.
 

ko853

Well-Known Member
Spotify connect trường hợp này tương đương với roonbridge hả bác? Spotify connect chỉ truyền dc 320k hay dc cả high res?
 

tml3nr

Moderator
Loay hoay cả đêm mình cài SMPD 0.96 lên Pi 3, add nhạc từ NAS vào SMPD ok, play nhạc thấy tiếng trong veo.
Mình cài thêm minimserver vào SMPD, mà không biết cách nào để nó hiện lên và chạy (cài java thành công trên Pi, cài minimser bản "MinimServer-0.8.5.2-linux-armhf.tar" theo như hướng dẫn của @trung224, cài Minimwatch trên win10 để khiển mà nó không hiện Minimserver đã cài trên SMPD, Mình không biết cách bác cài minimserver trên Raspbian Strech như thế nào có áp dụng cho SMPD 0.96 được ko?
Mình đang dùng NAS Buffalo LS WVL mà không biết cách nào để cài Minimserver lên nó, SSH vào NAS được rồi, mà không thể nào cài java theo hướng dẫn trên web của Minimserver, bác @tml3nr có kinh nghiệm thì chi giúp mình với.
Chân thành cảm ơn bác.
Em chưa thử cài minimserver lên smpd 0.96 anh ạ.

Nhưng nếu cài asset upnp thì cực ngon luôn. Anh nên test qua. Chắc là sẽ ghiền nó :D

http://www.dbpoweramp.com/asset-upnp-dlna.htm
 

tml3nr

Moderator
Mình dùng SMPD làm renderer nhưng Lumin không thấy, Kinsky (cài trên máy tính PC) ko thấy, Chỉ có Linm Kazoo trên iphone thấy. Không biết cách nào để Lumin và Kinsky thấy SMPD renderer ko ah? Mình cài bản SMPD upnp Pi của bác @quatmo shared đã cài upmpdcli.
openhome / upmpdcli có các đặc điểm sau anh ạ. Nó dễ làm cho mình rối:

- Thực chất là có 2 loại renderer: upnp truyền thống và openhome (là upnp cải tiến)

- Cho dù là openhome. Nhưng phải có plugin tidal thì mới play tidal được.

- Một số app chỉ thấy openhome (Như Lumin). Một số khác chỉ thấy upnp (Như các app upnp đời cũ).

- App Bubbleupnp và mconnect thấy được cả 2 upnp và openhome.
 

tml3nr

Moderator
Spotify connect trường hợp này tương đương với roonbridge hả bác? Spotify connect chỉ truyền dc 320k hay dc cả high res?
Spotify connect / openhome + plugin tidal / chromecast lấy nhạc trực tiếp từ internet.

roonbridge lấy nhạc từ media server.

Vậy cách hoạt động của roonbridge giống với upnp renderer / squeezelite hơn.

SC hiện tại chỉ chạy với ogg / vorbis 320kbps ạ.
 

ko853

Well-Known Member
Spotify connect / openhome + plugin tidal / chromecast lấy nhạc trực tiếp từ internet.

roonbridge lấy nhạc từ media server.

Vậy cách hoạt động của roonbridge giống với upnp renderer / squeezelite hơn.

SC hiện tại chỉ chạy với ogg / vorbis 320kbps ạ.
Vậy dùng SC cho tidal thì hơi thọt bác nhỉ vì AE xài tidal chủ yếu vì MQA của nó. EM vẫn thích Spotify hơn Tidal nhưng vì nó là 320k nên thui.
 

tml3nr

Moderator
Vậy dùng SC cho tidal thì hơi thọt bác nhỉ vì AE xài tidal chủ yếu vì MQA của nó. EM vẫn thích Spotify hơn Tidal nhưng vì nó là 320k nên thui.
SC chỉ chạy với spotify anh ạ.

Tidal nếu muốn renderer lấy nhạc trực tiếp từ internet chỉ có cách là dùng chromecast hoặc openhome.

Đó là lý do em mua cái Prisma NP5 để chạy tidal với chromecast. Và đang tìm cách chạy được openhome chính hãng trên pi, cùng với asset upnp server luôn.

Anh xem thêm bài này:

http://www.hdvietnam.com/posts/10369969/

PS: Em chỉ nghe 16/44.1. Hi-res em chưa nghĩ tới o_O
 

rndce

Well-Known Member
Em chưa thử cài minimserver lên smpd 0.96 anh ạ.

Nhưng nếu cài asset upnp thì cực ngon luôn. Anh nên test qua. Chắc là sẽ ghiền nó :D

http://www.dbpoweramp.com/asset-upnp-dlna.htm
Có phải cài Asset theo hướng dẫn của bác @quatmo ở post này không ah
http://www.hdvietnam.com/threads/ra...-nghe-nhac-moi.1174389/page-911#post-10367321
Mình cài theo http://www.dbpoweramp.com/asset-upnp-dlna.htm, thì hiện lên ip để dùng Asser rồi (nghĩa là thành công), nhưng dùng lệnh
crontab -e (Để set Asset khởi động theo Pi thì không được)
Để mình về thử lại theo cách của @quatmo xem sao.
 

tml3nr

Moderator
Có phải cài Asset theo hướng dẫn của bác @quatmo ở post này không ah
http://www.hdvietnam.com/threads/ra...-nghe-nhac-moi.1174389/page-911#post-10367321
Mình cài theo http://www.dbpoweramp.com/asset-upnp-dlna.htm, thì hiện lên ip để dùng Asser rồi (nghĩa là thành công), nhưng dùng lệnh
crontab -e (Để set Asset khởi động theo Pi thì không được)
Để mình về thử lại theo cách của @quatmo xem sao.
Hai cách cũng là 1 anh ạ. Cơ bản các bước như sau:

- Down về / giải nén / gán 775 cho file install / chạy file install.

- Sau đó test bằng cách chạy /home/pi/bin/AssetUPnP

- Dùng crontab để set cho nó chạy mỗi khi startup:

crontab -e

Thêm vào:

@reboot /home/pi/bin/AssetUPnP

Ngoài ra mình cũng có thể tạo file service như sau:

nano usr/lib/systemd/system/assetupnp.service

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

[Service]
Type=simple
ExecStart=/home/pi/bin/AssetUPnP/AssetUPnP
Restart=always
RestartSec=1min

[Install]
WantedBy=multi-user.target

sudo systenctl enable assetupnp

sudo systenctl start assetupnp

Vậy là xong ạ.
 
Bên trên