Xu_PY 2023-07-21 09:55 采纳率: 50%
浏览 43
已结题

FX3 UVC 1080p 60fps

FX3 UVC固件相关。
我们要使用CYUSB3014芯片传输1080p(1920*1080)60fps的视频信号,YUV422每像素16bit。
所以要使用GPIF的32并口一个时钟周期传两个像素。
要对官方AN75779的固件例程怎么修改,才能实现我们这样的分辨率帧率要求?

  • 写回答

7条回答 默认 最新

  • Seal^_^ 云原生领域优质创作者 2023-07-22 03:06
    关注
    获得1.50元问题酬金

    找官方技术文档吧,应该会有关于FX3 UVC固件修改的信息

    评论
  • yy64ll826 2023-07-25 08:38
    关注
    获得1.20元问题酬金
    评论
  • 阳光宅男xxb 2023-07-28 03:12
    关注
    获得2.10元问题酬金

    打开官方提供的AN75779固件源代码。知道代码中与分辨率和帧率相关的的地方,修改代码以支持你要的分辨率和帧率。
    根据修改后的参数重新生成固件二进制文件。将新的固件二进制文件烧录到CYUSB3014芯片中

    评论
  • GIS工具开发 2023-07-28 03:31
    关注
    获得1.50元问题酬金

    找到处理视频帧的代码,将宽度和高度设置为1920x1080像素

    评论
  • 会跑的小鹿 2023-07-28 09:11
    关注
    获得0.90元问题酬金

    在源代码中修改分辨率,然后重新编译

    评论
  • 头发乱了_257 2023-07-21 10:23
    关注

    要对 CYUSB3014 芯片使用 GPIF 的 32 并口传输 YUV422 格式的视频信号,需要对官方的 AN75779 固件例程进行修改。下面是一些可能需要进行的修改:

    修改 GPIF 配置:在 GPIF Designer 工具中打开工程文件,将 GPIF 状态机配置为适合 YUV422 格式的输入和输出。根据每个时钟周期传输两个像素的要求,可以设置阈值和计数器等参数,以确保正确的数据传输。

    修改 DMA 配置:在固件代码中,需要修改 DMA 配置以匹配新的 GPIF 配置。具体来说,需要设置正确的周边设备地址、数据宽度和传输模式等参数。

    修改 UVC 控制:在 UVC 控制命令中,需要添加支持新分辨率和帧率的选项,并更新相关参数。例如,需要修改 Probe 和 Commit 控制命令,以支持 1080p60 分辨率和 YUV422 格式。

    调整固件缓存大小:由于使用了更高分辨率和帧率的视频信号,因此可能需要增加固件缓存的大小,以确保数据的稳定传输。可以通过修改固件代码中的缓存大小常量来实现。

    这些修改可能需要针对具体情况进行调整。在进行任何修改前,请先详细阅读 AN75779 文档,并参考其他类似项目的经验。建议进行充分测试和验证,以确保新的固件能够正常运行并满足要求。

    评论
  • 情以西风暖 2023-07-22 02:41
    关注

    要实现1080p 60fps的视频传输,并且每像素为16位的YUV422格式,您需要对FX3 UVC固件进行一些修改以满足您的需求。以下是修改官方AN75779固件例程的步骤:

    1,修改GPIF配置:

    打开AN75779固件例程的工程,找到配置GPIF的部分。
    确保您的GPIF配置允许在一个时钟周期内传输两个16位像素数据。通常情况下,在FX3的GPIF配置中,数据总线的宽度决定了在一个时钟周期内传输多少数据。您需要将数据总线宽度设置为32位,以便在一个时钟周期内传输两个16位像素数据。

    2,修改帧率设置:

    在UVC应用程序中,可以通过修改帧间隔来实现所需的帧率。在uvc.c或类似的文件中找到关于帧率的设置。
    在UVC_VIDEO_STREAMING_INTERFACE的描述符中,找到与帧率相关的字段。帧率以帧间隔的形式表示,单位为100ns。要实现60fps的帧率,帧间隔应该是166666(1秒钟约有10000000个100ns,所以1秒钟60帧约等于166666个100ns)。
    3,修改分辨率设置:

    在UVC应用程序中,找到与分辨率设置相关的部分,一般在uvc.c或类似的文件中。
    根据您的要求,将分辨率设置为1920x1080。同时,确保UVC视频帧的数据格式是YUV422,并且每像素为16位。
    4,确保带宽足够:

    1080p 60fps的视频传输需要较高的带宽。确保您的USB 3.0连接能够提供足够的带宽支持这种数据传输。
    5,编译和烧录:

    完成修改后,编译修改后的固件并将其烧录到FX3开发板中。
    以上步骤提供了大致的修改方向,但实际修改过程可能因为具体固件版本和文件结构的差异而有所不同。在进行修改时,务必仔细阅读官方文档和代码注释,以确保正确地修改UVC固件以满足您的需求。

    另外,请注意,实现1080p 60fps的视频传输需要优化固件和硬件设计。确保您的系统能够在此高带宽条件下稳定工作,以及正确处理和传输高速的视频数据流。

    评论
    qq_41684050 2023-08-04 11:15

    请问如果希望使用rgb32视频流,fpga端使用基础的vga协议,数据32位可以吗

    回复
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 7月28日
  • 创建了问题 7月21日

悬赏问题

  • ¥100 二维码被拦截如何处理
  • ¥15 怎么解决LogIn.vue中多出来的div
  • ¥15 优博讯dt50巴枪怎么提取镜像
  • ¥30 在CodBlock上用c++语言运行
  • ¥15 求C6748 IIC EEPROM程序固化烧写算法
  • ¥50 关于#php#的问题,请各位专家解答!
  • ¥15 python 3.8.0版本,安装官方库ibm_db遇到问题,提示找不到ibm_db模块。如何解决?
  • ¥15 TMUXHS4412如何防止静电,
  • ¥30 Metashape软件中如何将建模后的图像中的植被与庄稼点云删除
  • ¥20 机械振动学课后习题求解答
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部