ffmpeg编码图象时报错Invalid buffer size, packet size * < expected frame_size *

使用ffmpeg将单个yuv文件编码转为jpg或其他图像格式时,报错:

bash 复制代码
Truncating packet of size 11985408 to 3585
[rawvideo @ 0x1bd5390] Packet corrupt (stream = 0, dts = 1).
image_3264_2448_0.yuv: corrupt input packet in stream 0
[rawvideo @ 0x1bd7c60] Invalid buffer size, packet size 3584 < expected frame_size 11985408
Error while decoding stream #0:0: Invalid argument

这里11985408对应的是我文件的大小:

需要加上参数-vframes 1 或 -frames:v 1(旧版),以单帧方式导出:

注意需要加在输入之后,也就是用于输出文件。

另外,导出为单张图像时,不能加 -c:v libx264 参数,这个是视频流的,如果加上则打不开jpg图像。

相关推荐
沐风_ZTL32 分钟前
Ubuntu 22.04中OpenCode 安装与配置完整指南,及常问题解决办法
linux·ai·opencode
实心儿儿32 分钟前
Linux —— Linux进程信号 - 信号保存 和 信号处理
linux
木 东1 小时前
调试项目上只更换镜头,主要影响哪些效果
图像处理·数码相机·camera·isp
网络与设备以及操作系统学习使用者1 小时前
vi与vim在openEuler中的差异及应用
linux·运维·网络·学习·vim
专注VB编程开发20年1 小时前
python运行提速方案全解
java·linux·服务器
相思难忘成疾1 小时前
Ubuntu 入门:安装、网络、软件一站式教程
linux·网络·ubuntu
luoqice2 小时前
linux下安装rtsp流媒体服务器
linux·音视频
学困昇2 小时前
Linux IPC 详解:匿名管道、命名管道、共享内存与信号量
linux·运维·服务器·c语言·c++·人工智能
汽车搬砖家3 小时前
VM Fusion安装Ubuntu系统
linux
AI小小怪3 小时前
保姆级教程:Ubuntu 22.04 安装 NVIDIA GPU 驱动 + CUDA 12.6(RTX 3080 显卡)
linux·nvidia·cuda