腾讯云云点播第三方播放器 Android 插件_音视频解决方案_同尘科技

云点播 2年前 (2023-08-29) 浏览 78

插件信息

插件名称 第三方播放器 Android 插件
版本号 V1.4.0
插件介绍 云点播提供给客户希望使用第三方播放器或自研播放器开发的对接云 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://cloud.tencent.com/document/product/266/42436private 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();

使用图片解密

当图片 URL 中的 QueryString 的 content_encrypt 参数被设置为 on 时,点播 CDN 会对内容进行 AES-128 加密,经过加密的图片需要经过解密后才能正常使用。1. 创建图片解密辅助类。

ITXCPlayerAssistor assistor = TXCPlayerAdapter.createPlayerAssistor();

2. 调用 getImageLocalUrl 方法获取本地代理访问 Url。

String imageLocalUrl = assistor.getImageLocalUrl(imgUrl);

3. 获取到图片的 localUrl 后,可以直接传给 Glide 等图片加载器加载图片。

// 使用Glide加载图片Glide.with(context).load(imageLocalUrl).into(imageView);

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 播放器签名。

创建图片解密辅助类

创建图片解密辅助类可以获取本地代理访问 Url,通过本地代理访问即可实现图片解密。接口

TXCPlayerAdapter.createPlayerAssistor();

销毁播放器辅助类

销毁辅助类,在退出播放器或者切换了下一个视频播放的时候调用。接口

TXCPlayerAdapter.destroyPlayerAssistor(ITXCPlayerAssistor assistor);

请求视频播放信息

本接口会请求腾讯云点播服务器,获取播放视频的流信息等。接口

playerAssistor.requestVideoInfo(ITXCRequestVideoInfoCallback callback);

参数说明

参数名 类型 描述
callback ITXCRequestVideoInfoCallback 异步回调函数。

获取加密图片的本地代理解密 Url

接口

String getImageLocalUrl(String imgUrl);

参数说明

参数名 类型 描述
imgUrl String 图片网络 Url

获取视频的基本信息

获取视频信息, 必须是在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 playerAssistor.getKeyFrameDescInfo();

参数说明TXCKeyFrameDescInfo 参数如下:

参数名 类型 描述
timeOffset Float 1.1
content String “片头开始…”

获取缩略图信息

获取缩略图信息,必须是在playerAssistor.requestPlayInfo回调之后才生效。接口

TXCImageSpriteInfo playerAssistor.getImageSpriteInfo();

参数说明TCXImageSpriteInfo 参数如下:

参数名 类型 描述
imageUrls List 缩略图下载 URL 数组,类型为 String。
webVttUrl String 缩略图 VTT 文件下载 URL。



对音视频的解决方案有疑惑?想了解解决方案收费? 联系解决方案专家

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠

阿里云解决方案也看看?: 点击对比阿里云的解决方案

- 0人点赞 -

发表点评 (0条)

not found

暂无评论,你要说点什么吗?