作者:
rexx0520 (喵嗚☆雷克斯)
2016-07-09 17:06:01原文吃光光~~~
這裡分享我的心得
原先是使用iPod Touch 4(iOS 6)當Receiver
去Cydia可以找到不少插件是支援Airplay Receive的
在這裡提醒一下 iOS 7前跟後的Airplay協定不相容
別搞混了:)
要使用<7的協定可以用AirPlayServer(不支援鎖屏播放)
>7的則可以用AirSpeaker(支援鎖屏播放)
PC->Airplay:
iOS <7的協定可以用Airparrot,不過個人實測不穩定..
iOS >7的協定可以用Tuneblade,非常穩定,好用!
Android->Airplay(需root,HTC不用)
iOS <7的協定個人沒用過ˊˇˋ
iOS >7的協定可以用AllStream
不過Android用Airplay協定傳輸有時候會瞬斷,用的很不爽
iOS ->Airplay我就不說啦XD
不過後來不爽 iOS 6沒有DLNA Renderer((7以上才有
而Android用Airplay傳輸又會瞬斷
於是用Nexus 7 2013來當Renderer
一開始是使用AirPlay/DLNA Receiver這款App
Airplay沒問題
但是他的DLNA相當不穩定
於是後來把上面App的DLNA關掉 用BubbleUPNP的DLNA Renderer,相當穩定!
至此 Airplay/DLNA 接收於一體 完成!
在這裡普及一下DLNA跟Airplay的知識
DLNA是UPnP的子集
他傳輸音樂是類似開網路芳鄰那樣,把音樂檔與網路共享
((例如 http://192.168.1.101:5555/test.mp3 )這樣
然後再用UPnP協定廣播 192.168.1.101:5555是一台DLNA Server
而Receiver跟Renderer的差別在 Receiver不能接收控制命令
而Renderer可以
舉個例子
今天我在PC上面廣播一首test.mp3 並且命令Receiver A跟Renderer B播放
這個時候 B就會馬上放出音樂 噹噹噹~~~
而A不會 你要操控A連上PC 點選test.mp3 他才會播放
因為B接收到了PC的 播放命令 而A沒有
這就是Receiver跟Renderer的差別
而實時串流((就是你播甚麼他馬上播甚麼 而不是把已經存在的音檔丟過去播放
其實就是建立一個空的檔案 然後即時寫入讓Renderer即時讀取
算是空殼跳板那樣 所以比較少app支援
而Airplay也很類似。
所以原po的問題 為甚麼用HTC Connect連接DLNA沒辦法播出系統音訊
因為HTC Connect連接DLNA之後 其實他是把音樂app用DLNA連接到喇叭上
並不是監聽整個系統的音訊(廣播的不是空殼檔案)
連接之後 如果你用音樂app播音樂 喇叭是可以收到的
我習慣用網易雲音樂聽音樂 他有內建DLNA功能
我用他的DLNA功能連接上之後 在網易雲音樂播音樂 喇叭可以收到
但其他app的就不行(廣播的不是空殼檔案)
同時 你可以在receiver上看到你在播的音樂資訊(歌名、歌手...)
即時串流就沒有(因為是空殼檔案)
而HTC Connect的Airplay是監聽系統音訊,即時串流。
所以你去看Renderer 他是沒有歌曲資訊的唷。
另外 原po說的AirPlay/DLNA Receiver會一直跳Error
有兩種可能性
A.輸入端格式不對
例如我下面介紹的SWYH請選成MP3輸出
B.解碼方式不對
軟體解碼會跳Error,你有選過硬體解碼嘛(###
設備播放器不能用,你有試過外部播放器嘛(#
外部播放器推薦MX Player,支援的控制指令最多
其次VLC 也是不錯
選擇外部播放器之後,第一次Render會跳App選擇視窗
請把MX或VLC設成"一律採用" 避免下一次再跳
回歸正傳 DLNA方法~
PC->DLNA
除了WMP(只支援檔案)之外可用Stream What You Hear((使用WASAPI來監聽音訊,
還不錯,不過請記得輸出要改成MP3
除非你要Stream到Xbox才用PCM,不然Android端會不穩定
Android->DLNA
不少音樂App有支援DLNA,可以直接使用
要把整個系統的聲音丟過去請用AllStream.
iOS
就直接用Airplay就好了啊www