HDR功能接入

智能视频SDK VideoCreatingSDK

  • 智能视频SDK开发者个人信息保护合规指引
  • 智能视频SDK隐私政策
  • 功能发布记录
  • 播放器SDK
    • SDK&Demo下载
    • 产品简介与下载
    • ios播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 功能列表
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Unity播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • uniapp播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 快速进阶
    • HarmonyOS NEXT
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • Andriod播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Web 播放器
      • license指引
      • 简介
      • 使用指南
      • 版本更新记录
      • 开发指南
      • 接口速查
        • 事件响应接口
        • 控制接口
  • 图片加载SDK
    • SDK&Demo下载
    • SDK集成
    • 快速开始
    • 版本更新记录
    • 接口速查
    • 产品简介
    • 快速进阶
  • 短视频SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • 能力限制
      • DEMO体验
      • SDK下载
    • 使用指南
      • License申请
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 录制
        • 编辑
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • IOS版本开发接入文档
      • 视频指导
        • 视频指南
      • Android开发说明
        • 录制
        • Android版本开发接入文档
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • 概述
  • 移动直播SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • demo体验
      • SDK下载
    • 使用指南
      • 接入教程
      • License申请
      • License续费
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 互动直播
        • 特效直播
        • 拉流
        • IOS接入概述
        • 超低延迟直播
        • 直播推流
      • Android开发说明
        • 超低延时直播
        • 互动直播
        • 普通直播
        • 特效直播
        • 拉流
        • Android接入概述
        • 推流参数配置
所有文档
menu
没有找到结果,请重新输入

智能视频SDK VideoCreatingSDK

  • 智能视频SDK开发者个人信息保护合规指引
  • 智能视频SDK隐私政策
  • 功能发布记录
  • 播放器SDK
    • SDK&Demo下载
    • 产品简介与下载
    • ios播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 功能列表
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Unity播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • uniapp播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 快速进阶
    • HarmonyOS NEXT
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
    • Andriod播放器
      • SDK集成
      • 快速开始
      • 简介
      • 版本更新记录
      • 接口速查
      • 快速进阶
      • 高级版功能接入
        • 端上超分功能接入
        • VR功能接入
        • 绿幕抠图功能接入
        • 投屏功能接入
        • 全景声功能接入
        • HDR功能接入
        • 超低延时直播功能接入
    • Web 播放器
      • license指引
      • 简介
      • 使用指南
      • 版本更新记录
      • 开发指南
      • 接口速查
        • 事件响应接口
        • 控制接口
  • 图片加载SDK
    • SDK&Demo下载
    • SDK集成
    • 快速开始
    • 版本更新记录
    • 接口速查
    • 产品简介
    • 快速进阶
  • 短视频SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • 能力限制
      • DEMO体验
      • SDK下载
    • 使用指南
      • License申请
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 录制
        • 编辑
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • IOS版本开发接入文档
      • 视频指导
        • 视频指南
      • Android开发说明
        • 录制
        • Android版本开发接入文档
        • 字幕
        • 转场
        • 合成
        • 快速接入
        • 概述
  • 移动直播SDK
    • 产品描述
      • 名词解释
      • 功能说明
      • 产品简介
      • 核心优势
    • SDK体验
      • demo体验
      • SDK下载
    • 使用指南
      • 接入教程
      • License申请
      • License续费
    • 常见问题
      • 内容制作类问题
      • 开发类问题
      • 常见问题总览
      • 常见错误码
    • 购买指南
      • 欠费说明
      • 如何购买
      • 产品定价
    • 开发指南
      • IOS开发说明
        • 互动直播
        • 特效直播
        • 拉流
        • IOS接入概述
        • 超低延迟直播
        • 直播推流
      • Android开发说明
        • 超低延时直播
        • 互动直播
        • 普通直播
        • 特效直播
        • 拉流
        • Android接入概述
        • 推流参数配置
  • 文档中心
  • arrow
  • 智能视频SDKVideoCreatingSDK
  • arrow
  • 播放器SDK
  • arrow
  • Andriod播放器
  • arrow
  • 高级版功能接入
  • arrow
  • HDR功能接入
本页目录
  • 接入准备
  • 功能介绍
  • Demo体验
  • 快速开始
  • 接口说明
  • HDRKit类

HDR功能接入

更新时间:2025-08-22

接入准备

接入HDR功能,需要使用播放器SDK高级版,并申请高级版License。

功能介绍

在高级版SDK中,提供了HDR视频的解码和渲染能力,能够让HDR视频在高低端机型上都得到正确的色彩呈现。其中解码能力由播放内核原生支持,渲染能力由HDRKit组件和VideoProcessor组件提供,请确保该组件已集成到你的APP中。

SDK当前支持的HDR标准有:HDR10、HLG、HDR Vivid。

Demo体验

hdrdemo.gif

快速开始

  1. 初始化设备HDR能力信息和HDRKit组件
Java
1// 查询设备HDR能力信息
2HdrInfo.initHDRDeviceInfo(mAppContext);
3mHdrKit = new HdrKit();
4// 需要传入您申请的高级版证书LicenseID,ID可以在百度智能云控制台(https://console.bce.baidu.com/bvc/#/bvc/player-license/list)查看
5mHdrKit.init(mAppContext, "your-license-id");
  1. 设置输出surface和输入surface,典型场景是在onSurfaceCreated回调中进行设置
Java
1// 设置目标surface,HDR处理后的内容将渲染到此surface上
2mHdrKit.prepareWithTargetSurface(mSurfaceholder.getSurface());
3// 获取输入surface, 将原始画面渲染到此surface上
4mMediaPlayer.setSurface(mHdrKit.getInputSurface());
  1. 渲染参数设置
Java
1// 设置输入画面宽高
2mHdrKit.setInputSize(mSurfaceWidth, mSurfaceHeight);
3// 设置渲染输出宽高
4mHdrKit.setOutputSize(mSurfaceWidth, mSurfaceHeight);
5// 设置输入视频的HDR标准,默认为HDR10
6mHdrKit.setInputVideoContentType(HdrKit.ContentType.VIVID);
7// 设置是否自动调节屏幕亮度,默认开启。
8mHdrKit.setEnableBrightAdjust(true);
  1. HDR元数据设置
Java
1播放器提供了HDR10/HLG静态元数据和HDR Vivid动态元数据的回调
2// 静态元数据回调
3public boolean onHdrStaticMetadata(IMediaPlayer mp, int metadataType, byte[] metadata) 
4// 动态元数据回调
5public boolean onVividMetadata(IMediaPlayer mp, byte[] metadata)
6在这两个回调中,可以相应地将元数据设置给HDRKit组件
7// 设置静态元数据
8mHdrKit.setHdrStaticMetadata(metadataType, metadata);
9// 设置动态元数据
10mHdrKit.setVividMetadata(metadata);
  1. 开始渲染,典型场景是随播放器的start调用
Java
1// 开始渲染到目标surface
2mHdrKit.startRenderFromSurface();
  1. 释放,典型场景是随播放器的release调用
Java
1// 销毁,如果要重新使用,则需要重新init
2mHdrKit.release();
  1. 高级用法

HDRKit组件除了可以用surface作为输入输出之外,还可以用纹理id作为输入输出,使用纹理ID时需使用如下的接口

Java
1// 设置输入纹理id, 该id对应的是未处理的视频,HDR处理后的内容将渲染到指定的输出纹理id或屏幕上
2mHdrKit.prepareWithInputTexId(texid);
3// 设置输出纹理id,如果不调用,则直接渲染到屏幕
4mHdrKit.setOutputTexId(outputTexId)
5// 开始基于输入纹理id的渲染,调用一次,渲染一帧。典型场景是在GLSurfaceView的onDrawFrame中调用
6mHdrKit.drawFrameFromTexId()

在播放器SDK Demo中的BDCloudVideoView类对上述流程有详细的展示,可以参考。

接口说明

HDRKit类

枚举成员 描述
ContentType.HDR10 HDR10标准视频
ContentType.HLG HLG标准视频
ContentType.VIVID HDR Vivid标准视频
ContentType.SDR SDR视频

接口名 描述
void init(Context context, String appID) 初始化,鉴权失败时会抛出异常
void release() 销毁。如果要重新使用,则需要重新调用init
int getState() 获取HDRKit当前状态
void setInputVideoContentType(ContentType contentType) 输入视频的hdr类型,默认为HDR10
void setInputSize(int inputWidth, int inputHeight) 输入画面宽高。
必须在prepareWithTargetSurface或prepareWithInputTexId之后调用,否则抛出异常。
void setOutputSize(int outputWidth, int outputHeight) 渲染输出宽高。
必须在prepareWithTargetSurface或prepareWithInputTexId之后调用,否则抛出异常。
void setHdrStaticMetadata(int metadataType, byte[] metadata) 传入HDR静态元数据。
metadataType 为SEI_MASTERING_DISPLAY_COLOUR_VOLUME(137)或SEI_CONTENT_LIGHT_LEVEL(144)
void setVividMetadata(byte[] metadata) 传入HDR Vivid动态元数据
void setEnableBrightAdjust(boolean enable) 是否开启自动亮度调节
boolean getEnableBrightAdjust() 查询是否开启了自动亮度调节
void prepareWithTargetSurface(Surface surface) 设置目标surface,HDR处理后的内容将渲染到此surface上。必须在init之后调用,否则抛出异常。
Surface getInputSurface() 获取输入surface, 将原始画面渲染到此surface上。
必须在prepareWithTargetSurface之后调用,否则抛出异常。
void startRenderFromSurface() 开始渲染到目标surface。
必须在prepareWithTargetSurface之后调用,否则抛出异常。
void prepareWithInputTexId(int texid) 设置输入纹理id, 该id对应的是未处理的视频,HDR处理后的内容将渲染到指定的输出纹理id或屏幕上。
必须在init之后调用,否则抛出异常。
void setOutputTexId(int outputTexId) 设置输出纹理id,如果不调用,则直接渲染到屏幕。
必须在prepareWithInputTexId之后调用,否则抛出异常。
void drawFrameFromTexId() 开始基于输入纹理id的渲染,调用一次,渲染一帧。
必须在prepareWithInputTexId之后调用,否则抛出异常。

上一篇
全景声功能接入
下一篇
超低延时直播功能接入