用户工具

站点工具


本页面的其他翻译:
摄像头及视频源:hdmi转gmsl

这是本文档旧的修订版!


HDMI转GMSL2转换盒

本装置用于将HDMI信号转化为GMSL2信号用于视频的注入, 以方便算法的测试与验证。

本装置支持YUV422及RGB888两种格式,如需RAW格式回灌注入,请使用支持RAW输出的HDMI转GMSL2模块,如需支持DVP接口CMOS相机,请使用DVP接口GMSL1相机模拟器

揖越科技为满足不同客户不同场景的需求,推出了不同版本的HDMI转GMSL模块,根据供电方式,可以分为:

  • 单独POC供电
  • 单独外部供电(12V)
  • POC供电与外部供电(+5V)自动切换(外部供电优先)

根据串化器的具体型号,可以分为:

  • MAX9295 (默认)
  • MAX96717
  • MAX96717F
  • MAX96701
  • MAX96705
  • MAX96715

根据默认分辨率/帧率,可以分为(注意,默认分辨率即 preferred resolution, 并不是单个转换器同时支持所有以下分辨率):

  • RES_1920X1080_15FPS
  • RES_1920X1080_30FPS
  • RES_1920X1080_20FPS
  • RES_1920X1080_25FPS
  • RES_1920X1280_15FPS
  • RES_1920X1080_60FPS
  • RES_1920X1536_30FPS
  • RES_1920X1536_20FPS
  • RES_1920X1536_15FPS
  • RES_640X512_25FPS
  • RES_1600X1300_30FPS
  • RES_4K_15FPS
  • RES_1920X720_60FPS
  • RES_4K_30FPS
  • RES_1280X720_50FPS
  • RES_1280X800_25FPS
  • RES_1280X800_60FPS
  • RES_800X480_60FPS
  • RES_960X480_60FPS
  • 其它订制分辨率

在确认订制或使用时,请与我司技术人员进行确认。

框图与构成

此模块用于将 HDMI 视频信号转化为 GMSL2 信号。

如上图所示连接电脑(或者其它视频播放设备)以及带解串器的主控制器,正常工作时, - 对于电脑而言,本产品表现为一显示设备,分辨率可设置; - 对于主控制器而言,本产品为一分辨率可设置的摄像头模组(格式 YUV422-8Bit,分辨率即显示设置分辨率)。

适合于替换自带 ISP 的摄像头模组,进行图像注入测试。

下图为主要的信号/电源流示意图(如有修改,不另行通知)

外形(仅供参考,可能与实物有差异):

实物(仅供参考,可能与实物有差异):

使用说明

此模块相当于一视频信号透传模拟,将hdmi信号转化为gmsl2信号,保持输出的分辩率不变。输出模式为YUV422,(输入为yuv420时,输出格式保持不变。)

此模块不需要特别配置。

使用场景

用户案例1:图像loopback测试

用户案例2:前视相机注入测试

用户案例3:环视注入测试

使用方法介绍

基本步骤

  • 连接产品 HDMI 至视频源
  • 使用 GMSL 线缆连接本产器 Fakra 接口至主控制器解串器。
  • GMSL 的 POC 供电 6~16V,供电正常时,设备红色 LED 亮起。
  • 检查视频源是否检测到新的显示设备
  • 在主控端加载驱动,配置串化,解串芯片

设置分辨率

上电后,在主控端使能 GMSL 的 POC 输出 (电源指示红灯亮),连接 HDMI 端子至视频输出设备(以下以电脑为例),设备在电脑上显示为正常的显示器,名称为 XREAL9295。

推荐使用扩展屏幕方式(视频输出时不影响电脑的正常使用)。

首次上电,默认分辨率为 4K(3840×2160),帧率为 30fps。可以修改

注意,点击高级显示设置,进行下述”高级显示设置“ 页面。

  • 在高级显示页面,名称为 XREAL9295 的显示器,有源信号仍为 3840×2160。
  • 点击”XREAL9295“ 下方的 “显示器 x 的显示适配器属性” 链接
  • 在弹出的对话窗口中,选中 “监视器” 页面,设置屏幕刷新率为 60Hz。

(注意,WINDOWS 版本不同,此处界面有所不同,请注意进行相应的修改)

CSIRX 的参考配置参数

主控 CSIRX 接收端配置参考值:

- 4K 3840*2160:

format: YUV422 8BIT
resolution: 3840*2160
mipi lane: 4
mipi rate: 1200 ~ 1350 Mbps 

- 2K 1920*1080:

format: YUV422 8BIT
resolution: 1920*1080
mipi lane: 4
mipi rate: 560-640 Mbps

调试建议

一般的调试步骤:

  1. 不接 gmsl 线缆,观察解串器是否被正常识别,如 i2c 不通,检查解串器的供电,PWDN,晶振,i2c 地址是否正确等。
  2. 连好线,检测本产品供电是否正常,是否被识别为显示器,设置好输出分辨率。
  3. 在主控侧查看,是否检测到串化器 max9295(默认 i2c 地址 0x80,7bit 地址 0x40),如没有检测到 max9295, 检查解串器 gmsl 模式是否正确,link 是否使能。
  4. 配置串化器解串器必要的寄存器 (参考文档)。
  5. 检查解串器侧是否有 video lock
  6. 用示波器检查解串器 mipi 是否有输出,
  7. SOC(ecu)接收图像是否正常。

使用方法

以下对使用过程中常见问题进行说明及解答

分辨率的确定

输出分辨率是由什么决定呢?理论上最终由视频源决定。

但是实际输出的视频,是由视频源与显示设备(如HDMI2GMSL)“协商”而来的。

每一个HDMI显示设备都有一个表明自己信息的存储器,即EDID, 这里记录了显示设备所支持的分辨率/帧率等时序信息。其中一个分辨率为所谓“preferred timing”, 即优先或称为偏好分辨率帧率。如果这时视频源也支持,侧会输出此分辨率。

揖越科技HDMI2GMSL设备会根据客户的需要,配置优先分辨率,当工作于优先分辨率时,不需要额外的设置,即插即用。

当然,显示设备一般会支持多种标准时序,用户可以设置界面进行选择。修改的分辨率设置会被操作系统记忆下来。

除了设置界面下拉菜单中可供选择的分辨率,部分显卡还支持输出自定义分辨率,用户可以根据自己的需要设置所需要的分辨率。 需要注意,自定义分辨率不能超过GMSL的传输带宽。

多路相机连接方法

我们推荐使用多HDMI输出独立显卡,输出多路视频。使用前需要确认单视频输出的最大能力,及同时输出时,各路视频的输出能力。

视频播放自动化

下面给出使用python控制VLC自动播放视频的演示脚本:

# os.environ['PYTHON_VLC_MODULE_PATH'] = "./vlc"
import vlc
 
def play_video(video_file, rotate = 0):
    # init player 
    print("xxx")
    vlc_instance = vlc.Instance("--no-xlib --quiet --video-filter=rotate --rotate-angle=" + str(rotate))
    print("xxx")
    player = vlc_instance.media_player_new(video_file)
    player.set_fullscreen(True)
    # play
    player.play()
    time.sleep(1)
    while player.is_playing():
        time.sleep(0.1)
    player.stop() 

为什么供电模式有POC和外供电

一般的相机,都使用POC供电,CMOS/ISP在上电后,很短的时间可完成初始化,输出特定格式视频信号。

但是,对于HDMI2GMSL设备,需要与视频源协商分辨率/帧率,锁定视频信号等,这个过程需要相对较长的时间。

在原位替代相机的应用中,一般不会修改主机获取图像的驱动,而不少驱动程序,为了节能,仅会在打开相机前给POC供电,并且在上电后一定时间后对GMSL视频锁定状态进行判断,一旦主机检测并判断视频信号不存在,有可能退出,或者重试。 这样逻辑可能影响HDMI2GMSL模块的正常运行。在这种情况下,使用外供电,可以持续建立稳定的视频链路。

相关代码

需要配置MAX9295工作于GMSL2,3G模式,具体的代码可以参考软件修改max9296的模式及速率

摄像头及视频源/hdmi转gmsl.1763550761.txt.gz · 最后更改: chou.wu