全志R11_tinav2.5_tplayer播放器介面說明書(SDK)
此文件說明在 tina2.5 平臺,如何使用 TPlayer 的介面來開發播放器應用程式,方便播放器開發人員快速正確地開發。
2. TPlayer 狀態圖及狀態說明
2.1. TPlayer 狀態圖
這張狀態轉換圖清晰地描述了 TPlayer 的各個狀態,也列舉了主要的方法的呼叫時序,每種方法只能在一些特定的狀態下使用,否則會出錯。
另外,只有在 Prepared、Started、Paused、PlaybackCompleted 這四種狀態下可以進行 TPlayerSeekTo()操作,並且 TPlayerSeekTo()之後,狀態不變。
2.2. TPlayer 每個狀態簡要說明
2.2.1. Idle 狀態
Idle 狀態:當呼叫 TPlayerCreate()建立一個 TPlayer 或者呼叫了其 TPlayerReset()方法時,TPlayer 處於idle 狀態。
2.2.2. Initialized 狀態
這個狀態比較簡單,呼叫 TPlayerSetDataSource()方法就進入 Initialized 狀態,表示此時要播放的檔案已經設定好了。
2.2.3. Preparing 狀態
這個狀態比較好理解,主要是和 TPlayerPrepareAsync()配合,如果非同步準備完成,會透過這個TPLAYER_NOTIFY_PREPARED 訊息回撥上來,進而進入 Prepared 狀態
2.2.4. Prepared 狀態
初始化完成之後還需要透過呼叫 TPlayerPrepare()或 TPlayerPrepareAsync()方法,這兩個方法一個是同步的一個是非同步的,只有進入 Prepared 狀態,才表明 TPlayer 到目前為止都沒有錯誤,可以進行檔案播放。
2.2.5. Started 狀態
TPlayer 一旦準備好,就可以呼叫 TPlayerStart()方法,這樣 TPlayer 就處於 Started 狀態,這表明 TPlayer正在播放檔案過程中。可以使用 TPlayerIsPlaying()測試 TPlayer 是否處於了 Started 狀態。如果播放完畢,而又設定了迴圈播放,則 TPlayer 仍然會處於 Started 狀態。
2.2.6. Paused 狀態
Started 狀態下可以呼叫 TPlayerPause()方法暫停 TPlayer,從而進入 Paused 狀態,TPlayer 暫停後再次呼叫 TPlayerStart()則可以繼續 TPlayer 的播放,轉到 Started 狀態。
2.2.7. Stopped 狀態
Started 或者 Paused 狀態下均可呼叫 TPlayerStop()停止 TPlayer,而處於 Stop 狀態的 TPlayer 要想重新播放,需要透過 TPlayerPrepareAsync()和 TPlayerPrepare()回到先前的 Prepared 狀態重新開始才可以
2.2.8. PlaybackCompleted 狀態
文 件 正 常 播 放 完 畢 , 而 又 沒 有 設 置 循 環 播 放 的 話 就 進 入 該 狀 態 , 並 且 會 通 過TPLAYER_NOTIFY_PLAYBACK_COMPLETE 這個訊息回撥給應用。此時可以呼叫 TPlayerStart()方法重新從頭播放檔案,也可以 TPlayerStop()停止 TPlayer,或者也可以 TPlayerSeekTo()來重新定位播放位置。
2.2.9. Error 狀態
由於某種原因TPlayer出現了錯誤,就會進入該狀態,並且會透過TPLAYER_NOTIFY_MEDIA_ERROR這個訊息回撥給應用。如果TPlayer 進入了 Error 狀態,可以透過呼叫 TPlayerReset()來恢復,使得 TPlayer重新返回到 Idle 狀態。
2.2.10. End 狀態
透過 TPlayerDestroy()的方法可以進入 End 狀態,只要 TPlayer 不再被使用,就應當儘快將其 destroy掉。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31529038/viewspace-2646796/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 全志SDK資料,全志H3_dma介面使用說明書
- 全志R11 SDK版本說明書
- H3 DragonBox使用說明書,全志H3 SDK開發包Go
- 全志R16 tina SDK下載說明,全志R16編譯環境編譯
- 人臉識別全志T509工業級Android晶片商湯演算法sdk說明Android晶片演算法
- 專利說明書及其說明書附圖
- MOBIM介面說明
- 全志A40I sys_config.fex使用配置說明,全志A40I軟體開發
- axios使用說明書iOS
- 需求規格說明書
- 專利說明書摘要
- 大牛直播SDK-Windows推送端使用說明Windows
- 全志H3_wifi模組移植說明文件V-SDK軟體資料WiFi
- 患者360系統說明書
- 人狠話不多,細說大牛直播SDK之RTMP播放器和RTSP播放器播放器
- 如何製作Java文件說明書Java
- [流媒體]ijkplayer 播放器,android平臺使用說明播放器Android
- [譯]Prometheus監控NodeJS SDK(prom-client)使用說明PrometheusNodeJSclient
- Java @FunctionInterface函式式介面使用說明JavaFunction函式
- springboot的註解的作用說明(全)Spring Boot
- PDM系統的實施說明書
- 3121002754 劉棟 《需求規格說明書》
- 專案範圍說明書如何編寫?
- 瑞芯微RK3288_Android9.0 SDK版本說明手冊Android
- API介面的要素以及API的作用說明API
- 什麼是API介面?API介面的用途以及詳細示例說明。API
- 產品資料管理(PDM)技術說明書
- 說明
- API關鍵詞介面的應用範圍說明API
- 支付寶呼叫介面openapi CY24螞蟻集團網站新根證書升級說明API網站
- 團隊作業2-需求規格說明書
- 團隊作業2-《需求規格說明書》
- EOCR-3DE電流保護器說明書3D
- Cozmo人工智慧機器人SDK使用筆記(7)-補充說明人工智慧機器人筆記
- 拼多多搜尋詞統計 API介面操作展示說明API
- 使用說明
- Hack 說明
- BA都在忙些啥 - 寫給新人的BA工作說明書