本文包含 Debug 工具的介绍和接入说明等内容。
为提升接入和调试效率,点播 SDK 提供 Debug 工具,方便您在接入点播 SDK 的过程中更为直观地查看 SDK 相关信息。如下图所示,Debug 工具包含播放日志、视频信息、初始化信息 3 个不同的页签。具体信息介绍请见附录。
您已接入点播 SDK,且版本 >= 1.32.1.5。点播 SDK 版本号详见发布历史。
ttvideoengine-debugtool
库依赖。/data/user/0/包名/files/engine_debug_info/debug_info.log
文件中。使用 Debug 工具进行调试时,需要添加依赖,实现的代码示例如下所示。
dependencies { ... debugImplementation "com.bytedanceapi:ttvideoengine-debugtool:0.3.0.1" }
设置显示布局,需要在调用 engine 播放之前。
上述实现设置显示布局的代码示例如下所示。
FrameLayout debugLayer = findViewById(R.id.fl_debugtool); DebugTool.setContainerView(debugLayer);
完成 Debug 工具使用时,您可调用 release() 方法释放资源。实现的代码示例如下所示。
DebugTool.release();
public class DebugTool { // 添加展示 debug 信息的布局,debug 信息页面撑满 containerView // 需要在调用 Engine 播放之前设置, // 设置布局后,Debug 工具会监听哪个 Engine 实例调用了 play,并将相关信息显示到布局。 public static void setContainerView(ViewGroup containerView); // 完成 Debug 工具使用时,您可调用release()方法释放资源 public static void release(); // 通常情况下 Debug 工具会自动监听哪个 Engine 实例调用了 play,显示该 Engine 的信息; // 多个 Engine 实例同时存在时,您可主动设置 Engine 实例选择显示哪个 Engine 实例的信息。 public static void setTTVideoEngine(TTVideoEngineInterface engine); }
一级 | 二级 | Value/说明 |
---|---|---|
播放状态 | 播放状态 | 展示视频的播放状态。仅播放失败时,才显示该字段。不同的播放状态如下所示。
|
Error 信息 | 若视频播放失败,展示详细的错误信息,可根据该字段排查播放失败原因。 | |
Engine 配置 | Texturerender | 用于判断 Texturerender 的开启情况。例如:true/false。仅 Android 端支持该参数。 |
Sdk 日志 | 用于判断 Sdk 日志的开启情况。例如:true/false | |
Player 日志 | 用于判断 Player 日志的开启情况。例如:true/false | |
硬解异步初始化 | 用于判断是否开启硬解异步初始化。例如:true/false。仅 Android 端支持该参数。 | |
Socket 复用 | 用于判断是否开启 Socket 复用。例如:true/false | |
渲染方式 | 用于判断当前使用的渲染方式,例如:
| |
首帧信息 | 首帧时长 | 展示当前正在播放的视频的首帧时长,下方几个字段可以详细分析例如:82ms |
开始播放 | 开始播放的时间戳。例如:2022-08-02 17:47:55 827 | |
收到视频首帧 | 收到视频首帧的时间戳。例如:2022-08-02 17:47:55 827 | |
视频首帧解码 | 视频首帧解码的时间戳。例如:2022-08-02 17:47:55 827 | |
收到音频首帧 | 收到音频首帧的时间戳。例如:2022-08-02 17:47:55 827 | |
音频首帧解码 | 音频首帧解码的时间戳。例如:2022-08-02 17:47:55 827 | |
首帧展示 | 首帧真正展示的时间戳。例如:2022-08-02 17:47:55 827。 仅 Android 端支持该参数。 | |
其他 | 命中缓存 | 当前播放的视频是否命中缓存。例如:true/false |
缓存 key | 缓存 Key 值,用于标识唯一资源。 | |
缓存大小 | 当前播放的视频命中的缓存大小。例如:50KB | |
设备支持 H.265 硬解 | 当前播放视频的设备是否支持 H.265 硬解。例如:true/false | |
视频硬解 | 当前播放视频是否是通过硬解播放。例如:true/false | |
网络类型 | 当前播放视频的设备的网络类型。例如:3G/4G/WIFI | |
Client IP | 当前的 IP 地址。例如:10.78.142.123 |
一级 | 二级 | Value/说明 |
---|---|---|
视频基础信息 | 播放源 | 当前播放的视频源信息。 |
是否转码流 | 当前正在播放的视频是否是火山引擎转码后的视频流。仅 iOS 端支持该参数。 | |
视频格式 | 当前播放的视频格式。例如:mp4 | |
编码格式 | 当前播放的视频编码格式。例如:H.265 | |
视频宽高 | 当前播放的视频尺寸。例如:720x1080 | |
视频时长 | 当前播放的视频时长。例如:60.1s | |
文件大小 | 当前播放的文件大小。例如:344KB | |
加密类型 | 当前播放的视频是否加密。例如:true/false | |
FPS | 当前播放的 FPS。例如:15 |
一级 | 二级 | Value/说明 |
---|---|---|
SDK 版本 | TTSDK 版本 | 集成的 TTSDK 版本。例如:1.32.2.1 |
Engine 版本 | 集成的 Engine 版本。例如:1.10.92.101-premium | |
Player 版本 | 集成的 Player 版本。例如:2.10.92.101-lls-share- vc2 | |
MDL 版本 | 集成的 MDL 版本。例如:1.1.92.11 | |
AppLog 版本 | 集成的 AppLog 版本。例如:6.10.1 | |
License 信息 | 校验结果 | 展示当前使用的 License 的校验结果。例如:成功/失败/过期 |
License id | 展示当前使用的 License id | |
版本 | 展示当前使用的 License 版本。例如:premium_editon(高级版) | |
类型 | 展示当前使用的 License 类型。例如:正式版/测试版 注意 测试版的 License 在线上版本不能使用。 | |
增值服务 | 展示当前使用的 License 所关联的增值服务。例如:H.265 | |
截止日期 | 展示当前使用的 License 的截止日期。例如:2022/10/20 12:44 | |
MDL 信息 | 初始化 | 用于判断初始化数据缓存模块是否成功。例如:成功/失败 |
缓存路径 | 当前设置的数据缓存的路径。 | |
缓存大小限制 | 当前设置的数据缓存大小。例如:100MB | |
AppLog 信息 | 是否集成 | 用于判断是否集成 AppLog。例如:true/false |
App id | 展示当前设置的 App id,用于校验数据正确性。需要从控制台>点播 SDK获取,如果不一致,需要修正。 | |
Device id | 展示当前设备的 Device id,唯一设备标识。 | |
渠道 | 展示当前设置的渠道标识。 | |
设备信息 | 展示当前播放视频的设备信息。 |