tencent cloud

文档反馈

第三方播放器 Android 插件

最后更新时间:2022-10-17 11:16:01
    第三方播放器 Android 插件为云点播提供给客户希望使用第三方播放器或自研播放器开发的对接云 PaaS 资源的播放器插件,常用于有自定义播放器功能需求的用户。

    SDK 下载

    第三方播放器 Android 插件和 Demo 项目下载地址 TXCPlayerAdapterSDK_Android

    集成指引

    SDK 集成

    集成 SDK,拷贝 TXCPlayerAdapter-release-1.0.0.aar 到 libs 目录,添加依赖项:
    implementation(name:'TXCPlayerAdapter-release-1.0.0', ext:'aar')
    添加混淆脚本:
    -keep class com.tencent.** { *; }

    使用播放器

    变量声明,播放器主类为 ITXCPlayerAssistor,创建后即可播放视频。
    fileId 一般是在视频上传后,由服务器返回:
    1. 客户端视频发布后,服务器会返回 fileId 到客户端。
    2. 服务端视频上传,在 确认上传 的通知中包含对应的 fileId。
    如果文件已存在腾讯云,则可以进入 媒资管理 ,找到对应的文件。点开后在右侧视频详情中,可以看到相关参数。
    //psign 即播放器签名,签名介绍和生成方式参见链接:https://www.tencentcloud.com/document/product/266/42436?from_cn_redirect=1
    private String mFileId, mPSign;
    ITXCPlayerAssistor mPlayerAssistor = TXCPlayerAdapter.createPlayerAssistor(mFileId, mPSign);
    初始化:
    // 初始化
    TXCPlayerAdapter.init(appId); //appid 在腾讯云点播申请
    TXCPlayerAdapter.setLogEnable(true); //开启log
    
    mSuperPlayerView = findViewById(R.id.sv_videoplayer);
    mPlayerAssistor = TXCPlayerAdapter.createPlayerAssistor(mFileId, mPSign);
    请求视频信息和播放:
    mPlayerAssistor.requestVideoInfo(new ITXCRequestVideoInfoCallback() {
    
    @Override
    public void onError(int errCode, String msg) {
    Log.d(TAG, "onError msg = " + msg);
    runOnUiThread(new Runnable() {
    @Override
    public void run() {
    Toast.makeText(VideoActivity.this, "onError msg = " + msg, Toast.LENGTH_SHORT).show();
    }
    });
    }
    
    @Override
    public void onSuccess() {
    Log.d(TAG, "onSuccess");
    TXCStreamingInfo streamingInfo = mPlayerAssistor.getStreamingInfo();
    Log.d(TAG, "streamingInfo = " + streamingInfo);
    runOnUiThread(new Runnable() {
    @Override
    public void run() {
    if (mPlayerAssistor.getStreamingInfo() != null) {
    //播放视频
    mSuperPlayerView.play(mPlayerAssistor.getStreamingInfo().playUrl);
    } else {
    Toast.makeText(VideoActivity.this, "streamInfo = null", Toast.LENGTH_SHORT).show();
    }
    }
    });
    }
    });
    使用完后销毁 Player。
    TXCPlayerAdapter.destroy();

    SDK 接口说明

    初始化 TXCPlayerAdatper

    初始化 Adapter(每次)。
    接口
    TXCPlayerAdapter.init(String appId);
    参数说明
    appId:填写 appid(如果使用了子应用,则填 subappid)。

    销毁 TXCPlayerAdatper

    销毁 Adapter,当程序退出后调用。
    接口
    TXCPlayerAdapter.destroy();

    创建播放器辅助类

    通过播放器辅助类可以获取播放 fileId 相关信息以及处理 DRM 加密接口等。
    接口
    ITXCPlayerAssistor playerAssistor = TXCPlayerAdapter.createPlayerAssistor(String fileId, String pSign);
    参数说明
    参数名
    类型
    描述
    fileId
    String
    要播放的视频 fileId
    pSign
    String
    播放器签名

    销毁播放器辅助类

    销毁辅助类,在退出播放器或者切换了下一个视频播放的时候调用。
    接口
    TXCPlayerAdapter.destroyPlayerAssistor(ITXCPlayerAssistor assistor);

    请求视频播放信息

    本接口会请求腾讯云点播服务器,获取播放视频的流信息等。
    接口
    playerAssistor.requestVideoInfo(ITXCRequestVideoInfoCallback callback);
    参数说明
    参数名
    类型
    描述
    callback
    ITXCRequestVideoInfoCallback
    异步回调函数

    获取视频的基本信息

    获取视频信息, 必须是在 playerAssistor.requestPlayInfo 回调之后才生效。
    接口
    TXCVideoBasicInfo playerAssistor.getVideoBasicInfo();
    参数说明
    TXCVideoBasicInfo 参数如下:
    参数名
    类型
    描述
    name
    String
    视频名称
    duration
    Float
    视频时长,单位:秒
    description
    String
    视频描述
    coverUrl
    String
    视频封面

    获取视频流信息

    获取视频流信息列表,必须是在 playerAssistor.requestPlayInfo 回调之后才生效。
    接口
    TXCStreamingInfo playerAssistor.getStreamimgInfo();
    参数说明
    TXCStreamingInfo
    参数名
    类型
    描述
    playUrl
    String
    播放 URL
    subStreams
    List
    自适应码流子流信息,类型为 SubStreamInfo
    SubStreamInfo 参数如下:
    参数名
    类型
    描述
    type
    String
    子流的类型,目前可能的取值仅有 video
    width
    Int
    子流视频的宽,单位:px
    height
    Int
    子流视频的高,单位:px
    resolutionName
    String
    子流视频在播放器中展示的规格名

    获取关键帧打点信息

    获取视频关键帧打点信息,必须是在 playerAssistor.requestPlayInfo 回调之后才生效。
    接口
    List<TXCKeyFrameDescInfo> playerAssistor.getKeyFrameDescInfo();
    参数说明
    TXCKeyFrameDescInfo 参数如下:
    参数名
    类型
    描述
    timeOffset
    Float
    1.1
    content
    String
    "片头开始..."

    获取缩略图信息

    获取缩略图信息,必须是在 playerAssistor.requestPlayInfo 回调之后才生效。
    接口
    TXCImageSpriteInfo playerAssistor.getImageSpriteInfo();
    参数说明
    TCXImageSpriteInfo 参数如下:
    参数名
    类型
    描述
    imageUrls
    List
    缩略图下载 URL 数组,类型为 String
    webVttUrl
    String
    缩略图 VTT 文件下载 URL
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持