2014-05-22 23 views
2

通過採取一看樣品,庫,源代碼等從谷歌演員,我可以說,整個演員SDK相對複雜,有一點抽象,開發。使用CastCompanionLibrary僅投射音頻?

我想這就是爲什麼谷歌創建的CastCompanionLibrary ...

然而,通過閱讀.PDF,源代碼和樣本,它仍然不是很清楚,我什麼是正確的方法來鑄造僅音頻。

在光譜的另一端是還未Android的工作室更新「democastplayer」。

我已經轉換這個應用程序到Android Studio和它與我自己的App ID的工作原理,但我仍然有兩個基本問題:

1)什麼是演員SDK模式和MediaRouter模式之間的區別? (甚至在查看源代碼時,我還沒有找到相互之間的差異或優勢,或者更具體地說,何時使用它們以及爲什麼?)

2)如果您已有服務您可以使用標準MediaPlayer完成所有需要的功能(因爲您已經有一個可以播放音樂的應用程序),您已經緩衝(異步!)並在播放器準備好時播放,您也可以在欄中發出通知,換句話說,您有媒體播放器應用程序...您如何處理添加Chromecast支持?

CastCompanionLibrary似乎與不必要的功能(玩家活動/我不需要,因爲我已經有一個片段),通知支持,我已經在我的應用程序相對臃腫......等

我應該只是方法它以某種方式在我的應用中存在「第二」播放器/服務,這是Chromecast專有的,因此會處理所有通知,RemoteMediaPlayer(與我的常規MediaPlayer相反)等。

將播放結束時該球員給我的回調?暫停? (所以我可以更新我的UI,讓我的API調用等)

我是新來的谷歌演員,所以提前道歉,如果任何事情是很容易看到,請點我到正確的資源(我閱讀樣本和代碼,但沒有遇到這些簡單的答案)。我根本不感興趣的視頻。

我的音樂來自於一個API(我有權要求一個賽道,我會得到一個URL媒體-MP3或similar-)。我也必須知道賽道何時達到某一點。我還沒有看到任何與RemoteMediaPlayer中的真實MediaPlayer類似的東西,這些回調對我來說似乎不完整。

我在這裏錯過了什麼? :)

謝謝。

回答

1

你有不同的選擇:

  • 您可以使用CastCompanionLibrary和子DataCastManager添加你想要的作品。這(和下面的下一個選項)將處理連接問題等
  • 您可以使用CastCompanionLibrary和使用VideoCastManager。如果你不需要通知,你不必使用它;除非啓用該功能,否則該功能不會在那裏。我沒有使用過這個課程,但我看不到任何重大問題。它的優點是它可以給你一組回調信息,告訴你音樂播放的狀態以及許多API可以輕鬆完成其他事情。
  • 您可以從頭開始編寫自己的代碼;您可以註冊媒體狀態更新回調,並在音樂停止,緩衝區等情況下獲得通知。這不是一項困難的任務,並且查看樣本會告訴您需要做什麼;實際上,就SDK而言,在處理視頻或音樂之間幾乎沒有什麼區別。
+0

感謝您的及時回覆。讓我看看我能否找到更具體的問題。你知道Cast SDK模式和MediaRouter模式有什麼不同嗎? –

+0

Cast SDK模式使用CastSDK,但MediaRouter模式根本不使用Cast SDK,完全依賴於媒體路由器。兩者都使用相同的發現機制(基於媒體路由器),但控制命令完全不同。 –

相關問題