完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在尝试通过多通道 DMA 缓冲区直播 1080p60 视频,但是我们遇到了一个问题,即在向 FX3 写入一定数量的缓冲区之后,我们看到当前线程 WATERMARK 和 READY 标志保持不变。 这会导致视频数据在 FPGA 端备份(因为缓冲区报告已满,因此无法写入),然后系统中断。 在直播 480p60、720p60 或 1080p30 时不存在此问题。 我尝试将 MultiChannel DMA 中的缓冲区数量从 4 增加到 8,以尝试增加可用缓冲区的数量,但我看不到任何区别。 如果我切换到单通道 DMA,视频可以按预期发出,但是我不确定它是否真的是 1080p60,因为文档说我需要使用多通道 DMA 来获得输出 1080p60 所需的 FX3 数据带宽。
在随附的照片中,你可以看到多次写入,然后突然间 WATERMARK 和 READY 同时断言。 有没有办法通过FX3固件检查缓冲区是卡住了还是已满? 发生这种情况时,我能否附上一张 UART 调试打印? |
|
相关推荐
1个回答
|
|
是的,您可以检查 DMA 缓冲区的状态。 要检查缓冲区状态,您可以在 DMA 通道配置结构中注册生产者和消费者事件,使用全局变量跟踪生产者和消费者事件,并在 for 循环中打印值。
这样我们就可以先尝试找出缓冲区是否真的被填满了或者还有其他问题。 如果缓冲区实际上已被填满,则可以尝试增加 DMA 缓冲区的大小。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
7 浏览 0 评论
26 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
13 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
644 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
1000 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11770 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 10:20 , Processed in 0.628336 second(s), Total 42, Slave 35 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号