Android JetPlayer範例


Android平台包括JET引擎,可以在應用程式中新增JET音訊內容的互動播放。 Android提供JetPlayer類來處理這些東西。

為了使用Jet內容,需要使用JetCreator工具自帶的AndroidSDK。 jetCreator的使用已在範例中進行了討論。以起到由JetCreator建立的內容,則需要通過的Android支援JetPlayer類。 

為了使用JetPlayer,需要範例JetPlayer類的一個物件。它的語法如下:

JetPlayer jetPlayer = JetPlayer.getJetPlayer();

需要做的下一件事就是呼叫loadJetFile方法和傳遞Jet檔案的路徑。之後,必須新增到JetPlayer佇列。它的語法如下:

jetPlayer.loadJetFile("/sdcard/level1.jet");
byte segmentId = 0;
// queue segment 5, repeat once, use General MIDI, transpose by -1 octave
jetPlayer.queueJetSegment(5, -1, 1, -1, 0, segmentId++);

該方法queueJetSegment佇列在JET佇列指定段。最後一件事是呼叫play方法來開始播放音樂。它的語法如下:

jetPlayer.play();

除了這些方法,也有在JetPlayer類中定義的其他方法。它們被定義如下:

Sr.No 方法及說明
1 clearQueue()
清空段佇列,並清除預定播放的所有剪輯
2 closeJetFile()
關閉包含內容JET資源
3 getJetPlayer()
JetPlayer類的工廠方法
4 loadJetFile(String path)
從給定路徑載入.jet檔案
5 pause()
暫停JET段佇列的回放
6 release()
停止當前播放JET,並釋放所有相關的本地資源

例子

下面的例子演示了使用JetCreator工具來建立Jet內容。建立的內容之後可以通過JetPlayer播放

為了試驗這個例子,需要在實際裝置或模擬器執行此程式

Steps 描述
1 使用Android Studio建立Android應用程式,並將其命名為JetPlayer。在建立這個專案,確保目標SDK並編譯在Android SDK的最新版本或使用更高階別的API。
2 從網際網路下載並在計算機上安裝Python和wxPython
3 提示符下執行 jet creator 命令
4 建立Jet內容,然後將其儲存
5 執行應用程式並驗證結果

使用JetCreator

安裝PYTHON

需要使用JetCreator第一步是安裝Python。Python可以從它的官方網站點選這裡或在網際網路上其他的地方下載安裝。

請記住python版本號應該是2.6或2.7。

下載 Python 安裝後,必須設定Python的路徑。開啟命令提示字元然後輸出以下命令。它顯示如下圖所示:

Android Jet Player Tutorial

路徑設定之後,可以通過輸入入python驗證它,並按下確認鍵。它如下所示:

Android Jet Player Tutorial

安裝WXPYTHON

需要做的下一件事就是安裝wxPython,下載完成後安裝它。它會自動安裝在Python目錄。

執行JETCREATOR

需要接下來的事情就是移動到JetCreator存在的路徑。它是在Android的工具,SDK檔案夾。它如下所示:

Android Jet Player Tutorial

在檔案夾中鍵入以下命令並回車。

python JetCreator.py

它顯示如下圖:

Android Jet Player Tutorial

當按下確認鍵,Jet Creator 主視窗將開啟如下所示:

Android Jet Player Tutorial

建立JETCONTENT

在上面Jet 視窗,點選匯入按鈕。並從在Jet檔案夾中的內容的演示檔案夾中的JetFolder選擇JetCreator_demo_1或2。這顯示如下圖:

Android Jet Player Tutorial

輸入的內容後,會看到在JetCreator視窗中的內容。它如下所示:

Android Jet Player Tutorial

現在,可以通過這裡存取JetCreator連結探索JetCreator不同的選擇。最後建立.jet檔案,需要從檔案選單中的內容儲存。

驗證結果

得到jet檔案之後,可以使用 jet 播放器播放。它的主程式碼給出如下:

JetPlayer jetPlayer = JetPlayer.getJetPlayer();
jetPlayer.loadJetFile("/sdcard/level1.jet");
byte segmentId = 0;
// queue segment 5, repeat once, use General MIDI, transpose by -1 octave
jetPlayer.queueJetSegment(5, -1, 1, -1, 0, segmentId++);
jetPlayer.play();