[討論] 用樹莓派自幹Chromecast替代品
將樹莓派改造為串流裝置,從手機投放的多媒體到樹莓派播放,最好連手機螢幕也能一併鏡射上去。
https://i.imgur.com/t67iDFN.jpg
動機
雖然有買Chromecast,但是不想被單一產品綁住,所以嘗試用樹莓派DIY一個類似
Chromecast的裝置,採取開源方案。
加上我有一個閒置的喇叭,還有一塊雞肋的攜帶式螢幕,預計讓樹莓派搭配以上兩個組成一個接收手機投放的裝置。
樹莓派安裝的作業系統是原廠的Debian Linux,搭配LXDE桌面環境。
在Google TV推出以前,Chromecast最主要的功能就是:
- 將手機的音訊串流到Chromecast裝置,包含串流音樂
- 將離線的影片或音樂串流到Chromecast裝置
- 鏡射手機螢幕到Chromecast裝置,包含串流Youtube影片
- 電子相框,待機時輪播照片
我暫時還沒想要與智慧家電的整合,雖然要的話也是可以。例如搭配HomeAssiatant套件。
重點在於樹莓派要如何成為隨時能讓手機投放的裝置?
這個投影方案應該相容Android與iOS系統,電腦系統為次要支援對象。
投放過程應該要從手機端操作,不需要頻繁去動到樹莓派的設定。也就是主動從手機投放,而非用手機去存取遠端的內容。故Volumio、Jellyfin、Roon之類的方案不在考慮列表。
要講具體一點的場景的話,那就是我只要在手機按一個按鈕,就能選取要投放的對象,將正在看的影片投放到樹莓派 ———— 不論那個影片是Youtube還是Setting的。
解法
用作業系統來分類吧。
iPhone相對單純,只要在樹莓派裝開源的AirPlay接收器「Uxplay」,就能透過AirPlay播放iOS裝置上的影片和音樂,還有投放螢幕。
https://github.com/antimof/UxPlay
用Systemd將UxPlay設定為開機自動啟動服務,樹莓派便能隨時待命等待投放。由於
UxPlay的視窗是疊在X Server上面的,不投放的時候視窗關閉,下面的桌布就會露出來,如是成為相片輪播功能。
用起來就像下圖展示的一樣:
https://i.imgur.com/5xSCI2v.jpg
Android手機情況比較混亂,有很多種解決方案,各家手機廠商甚至有自家的東西,但是我不想依賴特定廠商的解決方案。
投放的協定通常是走Wifi,頻寬比較大。
最常見的是「Chromecast」,背後使用Google Cast協定,大部分Android手機都支援,能將Android的螢幕和音效投影到Chromecast裝置。但Google Cast為專有協定,目前還沒有人破解出來。AirScreen這類投屏軟體應該是私底下破解的。
一般人無法在沒有Google認證的情況下做出Chromecast接收端。目前最接近破解版
Chromecast的應該是這個Shanocast:
https://github.com/rgerganov/shanocast
另一個協定「Miracast」,這個只有部份Android手機支援(Google刻意讓Pixel不支援
Miracast,真的很壞,連帶影響到Sony Xperia),不是裝個APP就能解決的。如果有幸
支援Miracast,再於樹莓派裝Miraclecast接收端,就能夠投影手機螢幕到樹莓派,也可以播放音樂和影片。
https://github.com/albfan/miraclecast
除了Miracast以外,還有更老的「DLNA」技術,僅部份手機支援。樹莓派安裝
gmrender-resurrect作為接收端。
https://github.com/hzeller/gmrender-resurrect
小結,以上的方案都有各種問題。如果真的要不分Android手機廠牌,在樹莓派跑「
Scrcpy」或許是個解法,螢幕和聲音都能傳過去。
https://github.com/Genymobile/scrcpy
但是它的用法比較像是從電腦控制Android手機,而非從手機端投影到電腦。
https://i.imgur.com/eMH8zpH.jpg
Scrcpy要從手機配對很麻煩,或許可以拿KDE Connect作為中介,寫個script,遠端控制樹莓派執行adb pair指令,讓樹莓派能自動與Android手機完成無線配對,再啟動ScrcpyChromecast的應該是這個Shanocast:
https://github.com/rgerganov/shanocast
另一個協定「Miracast」,這個只有部份Android手機支援(Google刻意讓Pixel不支援
Miracast,真的很壞,連帶影響到Sony Xperia),不是裝個APP就能解決的。如果有幸
支援Miracast,再於樹莓派裝Miraclecast接收端,就能夠投影手機螢幕到樹莓派,也可以播放音樂和影片。
https://github.com/albfan/miraclecast
除了Miracast以外,還有更老的「DLNA」技術,僅部份手機支援。樹莓派安裝
gmrender-resurrect作為接收端。
https://github.com/hzeller/gmrender-resurrect
小結,以上的方案都有各種問題。如果真的要不分Android手機廠牌,在樹莓派跑「
Scrcpy」或許是個解法,螢幕和聲音都能傳過去。
https://github.com/Genymobile/scrcpy
但是它的用法比較像是從電腦控制Android手機,而非從手機端投影到電腦。
https://i.imgur.com/eMH8zpH.jpg
Scrcpy要從手機配對很麻煩,或許可以拿KDE Connect作為中介,寫個script,遠端控制樹莓派執行adb pair指令,讓樹莓派能自動與Android手機完成無線配對,再啟動Scrcpy視窗?
以上協定全都不要?
最後再看看主流協定以外的替代方案。
以前有個叫做Raspicast的專案,能將Android手機影片投放到樹莓派。可是技術太舊,
沒法更新了。
NymphCast為一套完整的解決方案,開放原始碼,目前已經能夠投放音樂和影片,尚提供媒體伺服器的功能。
https://github.com/MayaPosch/NymphCast
無須特殊硬體,安裝APP便能投放,作者有寫一個參考實現客戶端,能用來播放音樂,並且支援一對多。播放完畢視窗會自動關閉。
https://i.imgur.com/QyfmWz4.jpg
另一個是FCast,由FUTO組織所研發的協定,已經有接收端程式。配合他們家的GrayJay
APP就能投放影片。GrayJay是將YouTube、Twitch、Oddysey整合在一起的大雜燴,算是異色版NewPipe吧。可惜GrayJay是假開源APP。
https://grayjay.app/
我總覺得好像看到關鍵字www
推技術文。想想好幾年沒用chromecast了
酷
我都用chromecast功能來看LINE TV 的中職比賽
這台不是聽歌的嗎 哈哈 真厲害
投手機的不會有二次編碼問題嗎?
硬體成本太高且要額外的電費成本 沒什麼效益
推 之前買的pi4玩一陣子就冰好久了 找不到合適標的
用
還可以灌v2ray放家裡當跳板用
現在智慧電視這麼普及這需求就不高,用少人用的開
源軟體其實是另一種形式的被綁住,不一定方便,手
機跟電視或螢幕的長寬比例跟解析度也早就不一樣了
單純鏡射效果也不好
是的,這些方案可能只適合特殊用途。螢幕不一樣的問題Android可以用SecondScreen改 推
shinmori : 要便宜原廠認證airplay的話,去買一台roku電視棒11/09 20:12 其實我是幻想樹莓派一台打全部啦,但看來除了Uxplay以外的投放服務都不好用
樹梅的成本太高,不過有其他用途樹梅是很好用
研究精神推推
帥
推diy過程說明!
推 詳細技術解說
scrcpy的客戶端我更推薦用Escrcpy
大推這篇專業文
太貴 有點本末倒置
其實對岸一堆這種開發版,成本更便宜,但是最最便
宜的是掏寶上的xx盒子,只是要會自己動手
對岸那種xx盒子都授權有問題, 遇到更新就會不能用
技術文 推推
授權?都自己刷linux或是android了...啥授權問題?
Chromecast功能要授權吧,即使樹莓派能刷Android TV也沒辦法直接用Chromecast
我的筆電投 miracast 到 Sony Bravia 不是很順暢
推推!!
強!
推
酷 但還是花個2000元買Chromecast for TV更實際
中間有段內容重複了
實驗文必推
推 好文
好文
之前樹莓派缺貨的時候 不少廠商拿電視棒/盒的晶片
來做單板... 但軟體成熟度差很多 就便宜湊和著用
反向操作就沒道理了, 成本問題先不談, 水果和安卓
螢幕投射都是封閉協議 像Airplay2除了有官方授權的
透過逆向工程最多只能得到殘缺的支援
我用不到 但推認真
推認真文
強!推
我是為了adb-sync排程跑adb connect 剛好就能scrcpy
不過adb有幾個坑要踩就是了
當初AirPlay一代協定被部分逆向工程後,現在的開源
軟體跟一狗票市售串流產品大都靠這個,但是正常的
管道還是要跟蘋果談授權,跟谷歌一樣。也是有產品
的AirPlay跟Chromecast都是花錢買授權做的
推
推
推!正好我也想這樣用!
推
14
[心得] Steamlink APP to TV一直在猶豫要不要買硬體版本的Steamlink, 沒想到猶豫到後來根本買不到。 抓了Steamlink APP後雖然可以用手機玩,但是偶爾還是會想在電視上玩玩看。 不知道各位板友都是用甚麼方法讓Steamlink APP投影到電視。 我剛剛因為想留在客廳吹冷氣,後來想到了一個方法試過了發現效果還不錯。 先決條件是家裡要有Chromecast再搭上Android手機。10
[問題] Chromecast 該如何投放 vob 影片檔?因想投放手機中的 vob 檔影片給連接至電視上的 Chromecast, 目前試過幾個投放的 app 都無法順利投放 vob 檔, MX Player 雖然可以投放(時好時壞),但進度條就會變得沒有辦法拉, 而用 Google Home 好像只能鏡射,手機螢幕關閉的話,電視就沒畫面了, 請問這樣的情形,還可以怎麼做呢?9
[問題] pixel6投放顯示找不到裝置今天開始使用google pixel6 準備使用投射功能到電視上, 發現手機畫面顯示「找不到附近的裝置」 家裡非智能電視而且沒有wifi, 上個月是買「rasto rx27 hdmi無線影音電視棒」用手機本身網路接電視hdmi,9
[心得] Google Nest Hub(第二代)中文版今天上午去台南市安南區安和路的 台灣大哥大門市去購買一台來玩玩看, 在開箱之後,使用安卓11的三星平板 的Google Home來設定Nest Hub, 它有之前Nest Mini音箱的語音助理6
[問題] 想把iPhone音樂影片投放到XBOX?想把iPhone音樂影片投放到XBOX 建議用DLNA還是AIR Play? 最近想把iPhone手機裡的音樂影片串流到XBOX用電視播放 查了一下似乎有兩種途徑: 1.透過DLNA2
[問卦] 有沒有什麼app可以投放手機a片到電視好奇問一下 有沒有什麼app可以投放 手機的a片或影片 到家裡的電視上看 我有買google chromecast2
Re: [問題] Google TV無法安裝app 無法投影NETFLIX官方網頁就有解答 設定 Chromecast with Google TV 透過裝置投放 啟動您裝置上的 Netflix App。1
[問題] Youtube投放裝置未知的Youtube on TV機型:iPhone XR 系統版本:14.3 問題描述: 最近使用我的手機YouTube app投放時 連結裝置清單時常多出一個「Youtube on TV」- 作者: faang (昉) 看板: XBOX 標題: [問題] 想把iPhone音樂影片投放到XBOX? 時間: Thu Dec 30 18:51:56 2021 想把iPhone音樂影片投放到XBOX 建議用DLNA還是AIR Play?