1. 概述
MS1825 SDK 支持以下 Macrosilicon 芯片,按照芯片功能组合的不同, SDK 中相关 API 和类型的定义有所
不同,请在该文档 API 和类型说明时特别关注:
MS1825 SDK 的作用是帮助用户建立基于 MS1825 的视频输入输出的 C 代码集合,同时支持 FONT 型 OSD
( MS1825 、 MS1826 和 MS1827 )应用。 SDK 正式 Release 中包含以下文件:
- ms1825.h
- ms1825_comm.h
- ms1825_gui.h
- ms1825_timing_table.h
- ms1825_typedef.h
-
SDK 库文件
库文件命名及适用编译环境说明 :
ms1825_sdklib_gcc_Revx.x.x_xxxxxx.zip – GCC 通用 tool chain ;
libMS1825_hi3531d_hisiv500linux_ Revx.x.x_xxxxxx.zip – 海思 3531 , hisiv500linux tool chain;
libMS1825_ndk_armeabi_Rev1.0.0_20200730.zip – NDK, armeabi tool chain;
ms1825_sdklib_iar_vx.x.x_201xxxxx.a – 适用于 IAR STM8 ;
ms1825_sdklib_keil_xx.x.x_xxxxxxxx.lib – 适用于 Keil C51 ;
ms1825_sdklib_stm32_mdk_vx.x.x_201xxxxx.lib – 适用于 Keil MDK , STM32 系列 MCU, 分别有支持
cortex M0\M3\M4 类型处理器
2. 接口分类
初始化和参数设置
- 初始化:检查 i2c 地址和芯片通讯连接是否正常,初始化 SDRAM
- 切换访问芯片的 i2c 地址
- 芯片软复位操作
视频端口配置
- 配置芯片输入端口
- 配置芯片输出时序及端口
音视频播放方式配置
- 配置视频播放模式
- 配置视频输入输出比例
- 设置显示窗口
- 配置音频输入输出通路
- 视频显示效果生效触发
音视频播放效果配置
- 配置播放的亮度色度对比度饱和度
- 配置 alpha 比例
- 输出音视频静默及关闭静默
- 特殊图片显示和隐藏
信息获取
- 获取 SDK 版本
- 获取输入 HDMI 端口配置及时序信息
- 获取数字输入时序信息
- 获取 HDMI 输出端信息
3. 结构体类型说明
MS1825ID_E
typedef enum __MS1825_ID__
{
MS1825ID_B6 = 0xb6,
MS1825ID_BE = 0xbe,
MS1825ID_BOTH = 0xbf,
MS1825ID_NONE = 0xff
} MS1825ID_E;
该枚举类型用来表示 MS1825 芯片在同一 i2c 总线地址的四种可能性,依次表示地址是 B6H,BEH,B6H 和 BEH
都存在,以及不存在的情况。
MS1825ERR_E
typedef enum __MS1825_ERRCODE__
{
MS1825ERR_OK = 0,
MS1825ERR_PARA = 1,
MS1825ERR_MEMI = 2,
MS1825ERR_NEXIST = 3
}MS1825ERR_E;
该枚举类型用来表示 API 函数返回的错误类型,依次为:
- 没有错误;
- 参数错误;
- sdram 初始化错误;
- 芯片不存在。
MS1825AV_PORT_E
typedef enum __MS1825_PORT__
{
MS1825VP_HDMI1 = 1,
MS1825VP_HDMI2 = 2,
MS1825VP_HDMI3 = 4,
MS1825VP_HDMI4 = 8,
MS1825VP_DV = 16,
MS1825VP_NONE = 0
} MS1825AV_PORT_E;
该枚举类型用来表示芯片视频的输入输出端口,DV 以及 HDMIx 和 PIN 定义关系:
MS1825RX_STATUS_E
typedef enum __MS1825_RXSTATUS__
{
MS1825RX_NOSRC = 0xf0,
MS1825RX_SRCCNT = 0xf1,
MS1825RX_CLKCHG = 0xf2,
MS1825RX_CLKINV = 0xf3,
MS1825RX_MDTCHG = 0xf4,
MS1825RX_MDTINV = 0xf5,
MS1825RX_PKTCHG = 0xf6,
MS1825RX_AVMUTE = 0xf8,
MS1825RX_AVUNMUTE = 0xf9,
MS1825RX_STABLE = 0xfa
} MS1825RX_STATUS_E;
MS1825RX_NOSRC 代表没有输入源 , 5v 没有检测到;
MS1825RX_SRCCNT 代表输入连接上了, 5v 检测到;
MS1825RX_CLKCHG 代表输入时钟发生变化;
MS1825RX_CLKINV 代表输入时钟无效;
MS1825RX_MDTCHG 代表输入模式发生变化;
MS1825RX_MDTINV 代表输入模式无效;
MS1825RX_PKTCHG 代表输入 infoframe 发生变化;
MS1825RX_AVMUTE 代表 RX gcp avmute;
MS1825RX_AVMUTE 代表 RX gcp av unmute;
MS1825RX_STABLE 代表输入是稳定的。