新聞速報

        

2018年6月29日 星期五

Google Cast 大致工作原理


Google Cast 大致工作原理:
發送端 app(sender app)使用 SDK,將需要播放的媒體的信息發送到 Google 的服務器,服務器再通知接收端播放(所以發送端和接收端必須都可以訪問 Google 的服務器才行)。 接收端運行的是一個瀏覽器,它會根據發送端的app ID和媒體信息,去載入對應的一個網頁,這個網頁(receiver app)也是由發送端 app 的開發者提供的,的將會負責播放相應的媒體內容。即使接收端是 Chromecast Audio 之類只能播放音頻的硬件,這個網頁也是會載入並渲染的。
Google Cast 和 DLNA 或者蘋果的 AirPlay 不同之處,一是依賴 Google 的服務器,也就是說必須連接到 Internet 才可以用,如果只有一個局域網是不行的。 二是前兩個的接收端播放器接收端本身提供的,開發者只需要提供要播放的內容就可以,但是 Google Cast 則是需要提供自己的receiver app,這樣的好處是開發者可以高度定製(比如可以定製UI,或者加入彈幕、歌詞滾動、音樂可視化之類複雜功能),雖然接收端往往運行的並不是 Android這樣的開放操作系統,但是因為receiver app的本質是網頁,所以開發難度並不高。

ChromeCast和Google Cast
從Google Cast的官網(https://developers.google.com/cast/) 說明我們可以看到Google Cast的作用在於把小屏幕(諸如手機、平板、筆記本)的內容通過無線(WIFI)方式發送到大屏設備(google TV、chromeCast)進行播放,概括一下也即提供小屏設備到大屏設備的多屏互動功能。Google Cast所做的便在於基於不同的平台提供提供為應用開支這種功能的SDK,這些平台即有發送端的也有接收端的,發送端的有IOS、android、 chrome瀏覽器,接收端的有google TV, chromeCast等,可以說這一套解決方案是比較大而全的(就其涵蓋的平台)。
而chromeCast其實是對Google Cast這套機制的具體實現,這種實現的特點是接收端的chromeCast dongle是google自己提供的,開發者的負擔只侷限與發送端平台的應用開發,當然這種發送端的靈活性也是侷限於google所提供的Google Cast API的。
總結一下Google Cast 和 Chrome Cast的關係,其實就是Google Cast提供了一套進行設備之間互聯互通的API,而chromeCast技術則是對這一套API的具體實現,這種實現的優點在於為應用開發者提供了使用Google Cast API進行開發的靈活性(當然這也可以認為是該技術不能支持所有app的侷限性)。

沒有留言:

張貼留言