You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

matplotlib FFMpegWriter保存动画报rawvideo未知输入格式错误

LinuxMint环境PyCharm保存matplotlib动画报Unknown input format: 'rawvideo'解决

问题现象

使用matplotlib.animation.FuncAnimation生成动画后,调用FFMpegWriter导出mp4文件时触发报错:

MovieWriter stderr: Unknown input format: 'rawvideo'

后续依次抛出BrokenPipeError,最终触发subprocess.CalledProcessError,提示ffmpeg调用命令返回非0退出状态1,报错栈涉及matplotlib的animation、figure、backend_agg模块。

复现方式

该问题与动画承载的业务数据无关,使用最简正弦波测试代码可稳定复现:

import numpy as np
from matplotlib import pyplot as plt
from matplotlib import animation
# plt.rcParams['animation.ffmpeg_path'] = '/usr/bin/ffmpeg'

fig = plt.figure()
ax = plt.axes(xlim=(0, 2), ylim=(-2, 2))
line, = ax.plot([], [], lw=2)


def init():
    line.set_data([], [])
    return line,


def animate(i):
    x = np.linspace(0, 2, 1000)
    y = np.sin(2 * np.pi * (x - 0.01 * i))
    line.set_data(x, y)
    return line,


anim = animation.FuncAnimation(fig, animate, init_func=init,
                           frames=200, interval=20, blit=True)

FFwriter = animation.FFMpegWriter()
anim.save('basic_animation.mp4', writer=FFwriter)

已排除的错误方向

  • 系统原生安装的FFmpeg版本为4.2.4,系统终端执行ffmpeg -formats可查询到rawvideo格式支持,排除FFmpeg本身缺失rawvideo支持的问题
  • 手动配置plt.rcParams['animation.ffmpeg_path'] = '/usr/bin/ffmpeg'指定系统FFmpeg路径,问题未解决
  • 分别搭建venv、anaconda虚拟环境测试,报错完全一致,排除虚拟环境依赖冲突问题
  • 相同代码在原生Ubuntu系统、同配置的其他Ubuntu设备上可正常运行,本地使用的fish shell与该问题无关联

根因定位

在PyCharm内置终端执行ffmpeg -formats,可发现当前PyCharm环境下调用的是4.3.4版本的裁剪编译版FFmpeg,其编译参数未启用rawvideo解封装支持,格式列表中无rawvideo项。
核心原因:通过Flatpak安装的PyCharm默认运行在沙箱隔离环境中,沙箱内优先调用Flatpak runtime内置的裁剪版FFmpeg,功能不全无法识别rawvideo格式;受沙箱权限隔离限制,手动配置的系统FFmpeg路径无法被正常映射调用,因此指定系统路径的方案无效。

解决方案

  • 推荐方案:卸载Flatpak/Snap版本的PyCharm,通过官方二进制压缩包、系统原生包管理器或JetBrains Toolbox安装非沙箱版PyCharm,可直接调用系统原生完整功能FFmpeg,从根源规避沙箱隔离带来的依赖、路径调用异常
  • 临时方案:在代码中手动将plt.rcParams['animation.ffmpeg_path']配置为虚拟环境内安装的完整功能FFmpeg的绝对路径(例如conda环境下路径为/home/j/.conda/envs/venvtest/bin/ffmpeg),配置后动画可正常导出。

内容的提问来源于stack exchange,提问作者John Klint

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 05:09:25