cht電腦資訊Linux
adm Find login register

播放遠端音樂的方式

coolcd
1 播放遠端音樂的方式
Promote 0 Bookmark 12008-09-01quote  

最近把家裡一大堆 CD 轉到桌上型電腦去,想用無線網路分享給筆電,目前實驗過、有成功的,有三種方式:

第一種,使用 daap protocol。Server 端,如果是 Windows,可使用 iTunes (體積太龐大,沒試)、 tangerine (測試 ok) 或 Firefly Media Server (測試 ok) 分享音樂;如果是 Linux,可以用 Firefly Media Server (測試 ok)、 Rhythmbox (有 daap plugin,但我測不成功) 、 或 Amarok (測試 ok) 分享。Client 端,在 Windows 下可用 iTunes 、Firefly Client (對 Firefly Server 測試 ok) 或 Winamp (winamp 有 daap plugin,但我一直沒試成功)、Crossfire (Webbased Firefly client);在 Linux 下可用 Rhythmbox 、 Amarok、Firefly Client 、或 Crossfire。

第二種,使用 Http Server 來做 streaming 。我試了 subsonic,感覺蠻不錯的。播放器如 foobar2000, winamp, 或 mplayer 都支援  http streaming media 的播放。

第三種,使用 vlc 。Windows / Unix-like 的系統都可以用。教學 google 一下 就找得到。

目前比較喜歡第二種方式, 因為支援的格式多、且我習慣的播放軟體 foobar2000、mplayer 恰好都有支援 http streaming。

 有人有這方面的經驗嗎?能不能說來參考一下?

edited: 1
zerng07
2
Promote 0 Bookmark 02008-09-03quote  

在下是沒什麼經驗啦!可是聽說 XMMS2 很好用,說不定您可以試試看。

本人已不在此站活動
3
Promote 0 Bookmark 12008-09-04quote  

架個 media server 不知道可行不行得通?

※ 本文轉錄自 [qrtt1] 看板

作者: qrtt1 (foolish) 站內: qrtt1
標題: [tool] GNUMP3d - The GNU Streaming MP3 / Media Server
時間: Thu Sep  4 09:12:17 2008                             

http://www.linux.com/articles/61154

http://www.gnu.org/software/gnump3d/

<%
GNUMP3d is a streaming server for MP3s, OGG vorbis files, movies and other
media formats.                                                            

It is designed to be:

    * Small, stable, portable, self-contained, and secure.
    * Simple to install, configure, and use.              
    * Portable across different varieties of Unix,
      the GNU Operating System, and Microsoft Windows platforms.

%>

--
我所追求的純粹只是任性,完全的任性。                -- 挪威的森林
--
 ※ Origin: SayYA 資訊站 <bbs.sayya.org>
◆ From: ce13088.ce.ntu.edu.tw
◆ Modified: 08/09/04  9:12:36 <ce13088.ce.ntu.edu.tw>
◆ Modified: 08/09/04  9:12:50 <ce13088.ce.ntu.edu.tw>
◆ Modified: 08/09/04  9:13:57 <ce13088.ce.ntu.edu.tw>

coolcd
4
Promote 0 Bookmark 02008-09-04quote  
LGJ

架個 media server 不知道可行不行得通?

我現在就是這麼做的 (之前提過的第二種方式),採用這個方式的理由是:架 http media server 在 server/client 的選擇比較有彈性,支援的格式也多 (有些 server 可能不支援某些格式的 streaming,沒關係,這類 server 多可以將某格式即時轉成 mp3 來 streaming,我用 subsonic 測過,delay 程度尚可接受)。

xmms2 的架構看起來很不錯,但目前試過的 clients 都太簡單 (gxmms2, esperanza),而且 documentation 實在太缺,例如:原本看到 xmms2 有 daap plugin 很高興,可是卻不會用,也找不到教學。對於我這種不會寫程式的一般使用者,可能還需要多一點時間等它成熟。

edited: 3
本人已不在此站活動
5
Promote 0 Bookmark 02008-09-04quote  

啊,不好意思,老眼昏花。

其實我是來幫  GNUMP3d 打廣告的。逃…… 吐舌頭

coolcd
6
Promote 0 Bookmark 02008-09-04quote  

 我還蠻歡迎廣告的。 ☺

 我是封面控,所以比較偏好能顯示唱片封面、按封面聽音樂的 server。

本人已不在此站活動
7
Promote 0 Bookmark 02008-09-04quote  

GNUMP3d 已經有人在 eeepc 架起來用了,這個有空間考量的場合最適用。:)

但據說在 Windows 會有問題,架不起來。
 

coolcd
8
Promote 1 Bookmark 12008-09-05quote  

 試出 xmms2 怎麼用 daap 了。

 $ xmms2 radd daap://ServerIP: port

 就可以把 daap server 分享的音樂通通加入目前 active 的 playlist 與 media library

 但很可惜的是,目前似乎不支援有加密碼的 daap sharing。

coolcd
9
Promote 0 Bookmark 02011-10-17quote  

最近接收一台家人淘汰的筆電,拿來裝 linux,又開始思考音樂分享的問題

daap 經過幾年發展,似乎支援軟體仍然不多,不只 daap servers 不多,連 daap clients 都不多,而且根據 Wikipedia 的 daap 介紹,Apple 在 iTunes 7.0 的 daap 封包檔頭加入 Client-DAAP-Validation,導致所有 Third Party 的 daap client 都無法正常讀取 7.0 版以後的 iTunes 分享的 daap 資源,讓我感覺不太好,加上 daap servers/clients 對 Tag、檔案格式支援度也有限,讓我覺得應該找其他較通用的方式比較好。

http server 用來分享還不錯,之前提過的 subsonic,現在還活得好好的,作者一直有在維護,只可惜,爛爛的 flash media player 好像沒什麼進步,讓我有點不太喜歡。

所以最後是在 Win7 桌機透過「共用」分享音樂檔案,然後在 linux 筆電的 /etc/fstab 設定掛載點

例如:

192.168.1.1:/music    /media/music/    cifs    rw,user,noauto    0    0

有需要時直接下 mount /media/music,再輸入密碼即可。這種方式,我可以用自己喜歡的 player 來播放音樂。

也許有人會說,KDE Dolphin 與 Gnome Nautilus 不是都可以直接取用 Win7 共用的資源嗎?有試過,但實際上播放時,非常不穩定,常常爆音,遇到較大的檔案,似乎會拷貝到本機,以致於常常 player 無反應(audacious),而且有些 player (audacious) 對跨 smb 的 cue 檔支援不佳,改用 mount 的方式就不會有這些問題。

caleb
10
Promote 0 Bookmark 02011-10-17quote  

coolcd
而且有些 player (audacious) 對跨 smb 的 cue 檔支援不佳,改用 mount 的方式就不會有這些問題。

不知道 fusesmb 會不會有 smb 的問題?

對 client 來說應該會當成 local filesystem 來用。fuse 的好處是不用 root 。

coolcd
11
Promote 0 Bookmark 02011-10-17quote  

caleb
不知道 fusesmb 會不會有 smb 的問題?

對 client 來說應該會當成 local filesystem 來用。fuse 的好處是不用 root 。

我在 fstab 有加 user 這個選項,所以一般使用者就可以 mount

這樣看來 rw 好像不好

之前沒想到 XD

edited: 1
ychao
12
Promote 0 Bookmark 02011-10-17quote  

有試過DLNA嗎?似乎因為是類似http開放式架構,支援的軟硬體都不少?

coolcd
13
Promote 0 Bookmark 02011-10-18quote  

試了 fusesmb,蠻好用的,可以方便地 mount 所有 windows 的共用資源,但好不容易設好了,測試也 ok,但卻常常過一下子就出現:

Transport endpoint is not connected

看來不夠可靠

DLNA 還沒用過,有空再來研究

目前暫時用 mount.cifs

192.168.1.1:/music    /media/music/    cifs    user,user=YourWinName,rw,noauto,uid=1000,gid=115,file_mode=0740,dir_mode=0750    0    0

預期結果為:

  • 任何使用者都可以 mount;
  • uid=1000 的使用者擁有所有權限 rwx;
  • gid=115 (sambashare) 的使用者對 folder 有 r-x 的權限,對檔案有 r-- 的權限;
  • others 則無法進入資料夾。

實測結果:

  • (O)任何使用者都可 mount 共用的資料夾(重點是:必需在選項加入 user=YourWinName,或者,credentials=/path/to/.credentials,.credentials 內有兩行,username=OO 與 password=XX,路徑無法用 ~ 或 $HOME);(補充:mount 資料夾的人,才能 umount 該資料夾)
  • (O)uid=1000 的使用者可以進入、使用、修改共用資源;
  • (X)我另外設定了一個測試用的 user (uid=1001, gid=1001, 並已加入 gid=115 ),無法進入共用的資料夾;
  • (O)測試用 user (uid=1001) 尚未加入 group uid=115 前也有測試,一樣無法進入共用資料夾。

gid=115 的使用者對該資料夾的權限明明是 r-x (ls -l 的完整權限是 750),但卻無法進入共用資料夾,這與我預期結果不同。

後來發現 mount.cifs 的 manpage 裡有提到有個 cifsacl 選項可以讓 CIFS/NTFS 的 ACLs 與 Linux 系統中的 Permissions 相對應(把 Windwos 的 SID 與 Linux 的 GID/UID,讀取並設定 Security Descriptors),加上這個選項後,發現 ls -l 時顯示的共用資料夾權限變成 700。

於是我想可能是 Windows 端的問題,雖然設定共用時,已開放 YourWinName 權限為 Read/Write,但在 Cygwin 環境下看到的權限是 700,於是我到 Windows 機器在 Cygwin 環境把 Windows 的共用資料夾權限改成 750,可是測試用的 user (uid=1001,gid=1001,並已加入 gid=115) 還是無法進入共用資料夾。

最後想到,該不會是 Linux 端的 group gid=115 與 Windows 端的 group 無法對應吧?我在 Cygwin 環境下看到的 User/Group 是 YourWinName/None,猜想可能是 None 與 Linux 的 group 無法對應,於是把 Windows 共用資料夾權限改成 755,才達到我的預期結果。

原本想用 gid=115 來管制可以取用共用資料夾的使用者,但現在看來其實是沒用的,因為透過 CIFS 的使用者,根本是被當成 others,如果想用 group 來管制,可能要更進一步整合 Windows/Linux 帳號群組才行,太專業了我不會。 XDD

file_mode=0740 與 dir_mode=0750 經測試,在使用 cifsacl 時沒用,沒使用 cifsacl 時也只會在 ls -l 騙人,所以後來刪掉了

192.168.1.1:/music    /media/music/    cifs    user,user=YourWinName,rw,noauto,uid=1000,gid=115,cifsacl    0    0

edited: 4
coolcd
14
Promote 0 Bookmark 02011-11-08quote  

gnome 在 2.22 引入 gvfs的功能,xmms2 有支援 gvfs。

之前用 mount.cifs 將遠端電腦的音樂 mount 到 linux 本機時,xmms2 無法將這些來自遠端的檔案匯入medialib,但如果透過 gvfs-mount 掛載到 ~/.gvfs,再將自己想 mount 的位置弄成 symlink 指向 ~/.gvfs/GVFS-MOUNT-POINT,就可以將檔案加入 xmms2 的 medialib。

edited: 1

cht電腦資訊Linux
adm Find login register
views:44178