播放器概述
更新时间:
物联网视频服务,在Android应用端针对视频播放功能,开发了支持RTMP播放协议的直播播放器和设备录像点播播放器。本文介绍RTMP播放器的基本信息。
背景信息
RTMP播放协议类型播放器的基本信息和功能列表,请参见视频播放概述。
播放器类型
RTMP播放协议支持以下两类播放器:
直播播放器
即LivePlayer播放器,用于播放RTMP协议的直播视频源。
设备录像点播播放器
即VodPlayer播放器,用于播放RTMP协议的设备端存储的视频文件。
示例代码
请参考如下示例代码,了解直播播放器和设备录像点播播放器的使用方法。
直播播放器
// 构造播放器实例
LivePlayer player = new LivePlayer(getApplicationContext());
// 设置TextureView
player.setTextureView(textureView);
// 设置必要的状态监听
player.setOnPlayerStateChangedListener(new OnPlayerStateChangedListener() {
@Override
public void onPlayerStateChange(int playerState){
Log.d(TAG, "play state= " + playerState);
switch (playerState) {
case Player.STATE_BUFFERING:
break;
case Player.STATE_IDLE:
break;
case Player.STATE_READY:
break;
case Player.STATE_ENDED:
break;
default:
break;
}
}
});
// 设置错误监听
player.setOnErrorListener(new OnErrorListener() {
@Override
public void onError(PlayerException exception){
makeToast("errorcode: " + exception.getCode() + "\n" + exception.getMessage());
}
});
// 设置RTMP地址
player.setDataSource("rtmp://××.××.××.××:××/livetv/hunantv");
// 设置数据源就绪监听器
player.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(){
// 数据源就绪后开始播放
player.start();
}
});
player.prepare();
...
// 停止播放
player.stop();
...
// 释放播放器资源
player.release();
设备录像点播播放器
// 构造播放器实例
VodPlayer player = new VodPlayer(getApplicationContext());
// 设置TextureView
player.setTextureView(textureView);
// 设置必要的状态监听
player.setOnPlayerStateChangedListener(new OnPlayerStateChangedListener() {
@Override
public void onPlayerStateChange(int playerState){
Log.d(TAG, "play state= " + playerState);
switch (playerState) {
case Player.STATE_BUFFERING:
break;
case Player.STATE_IDLE:
break;
case Player.STATE_READY:
break;
case Player.STATE_ENDED:
break;
default:
break;
}
}
});
// 设置错误监听
player.setOnErrorListener(new OnErrorListener() {
@Override
public void onError(PlayerException exception){
makeToast("errorcode: " + exception.getCode() + "\n" + exception.getMessage());
}
});
// 设置支持点播的RTMP地址
player.setDataSource("rtmp://xxxx");
// 设置数据源就绪监听器
player.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(){
// 数据源就绪后开始播放
player.start();
}
});
player.prepare();
...
// 暂停播放
player.pause();
...
// 恢复播放
player.start();
...
// 停止播放
player.stop();
...
// 释放播放器资源
player.release();
反馈
- 本页导读 (1)
文档反馈