video - DE-10 FFMPEG Raw YCbCr 4:2:2 Frame to PNG or Video 导致不良结果
问题描述
所以我试图在 DE10 标准板的端口中从模拟视频录制模拟视频。
原始帧是 4:2:2 720x480 因此帧大小应该是 720*480 * 2 = 691200bytes,但是我在帧的开头得到了 2 个字节,十六进制值为 0两个前导字节。
ffmpeg 抱怨缓冲区大小错误,所以我删除了它们。
使用ffmpeg -y -s 720x480 -pix_fmt yuv422p -i input_frame.yuv output_image.png
结果很遥远。
馈入电路板的模拟视频具有静止图像(通过电话从电视拍摄的照片)参考图片。ffmpeg 的结果是FFMPEG 输出。
我使用 HxD 编辑器并多次镜像该单帧以创建一个更大的文件,然后使用以下命令将其编码为 MP4 文件,得到相同的结果。
ffmpeg -y -s 720x480 -pix_fmt yuv422p -i dump_video.yuv output_video.mp4
.
我希望有人可以帮助解决问题或指出正确的方向,因为我不知道问题是来自硬件还是来自 ffmpeg 命令。谢谢。
解决方案
您的输入不会是平面像素格式yuv422p
。它将被打包,如yuyv422
、yvyu422
或uyvy422
。
推荐阅读
- visual-studio - 在 Visual Studio 中使用 VMWare 进行虚拟调试?
- react-native-reanimated - 将复活的 1 转换为 2
- ios - 如何将“2021-05-23T12:09:18Z”转换为日期格式为 6 月 23 日下午 12:09
- javascript - 禁用现场滚动并使用滚动调整图像大小
- javascript - 如何让 IPFS 在继续之前添加等待等待?
- puppet - 在 puppet 中循环内容文件
- python - 是否有查看在 POST 请求中发送的请求有效负载的功能?
- vue.js - 带有 SystemJS / Vuetify 的 Vuejs 微前端
- python - XLRD、.xls 文件、python
- flutter - Flutter:OutlineInputBorder 输入边框文字颜色