ITPub博客

首页 > IT职业 > IT生活 > 全志R11_tinav2.5_tplayer播放器接口说明书(SDK)

全志R11_tinav2.5_tplayer播放器接口说明书(SDK)

IT生活 作者:SZX511 时间:2019-06-05 10:11:37 0 删除 编辑

此文档说明在 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 状态

http://bbs.16rd.com/thread-474981-1-1.html这个状态比较好理解,主要是和 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/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
一牛网论坛囊括了MTK、高通、射频、PCB、嵌入式、全志、海思等技术,欢迎大家前来学习、讨论

注册时间:2018-03-29

  • 博文量
    234
  • 访问量
    220421