文档

播放器概述

更新时间:
一键部署

物联网视频服务,在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)
文档反馈