【问题标题】:RuntimeError: No MovieWriters available in Matplotlib animationRuntimeError:Matplotlib 动画中没有可用的 MovieWriters
【发布时间】:2018-05-24 00:05:39
【问题描述】:

我遇到的问题与此示例类似: https://matplotlib.org/examples/animation/basic_example_writer.html

错误:

RuntimeError: No MovieWriters available 发生在上面示例中的Writer = animation.writers['ffmpeg']

我使用的是 mac,我已经使用 brew 安装了 ffmpeg,甚至使用 conda 安装了它,即使我没有为这个特定的代码使用 anaconda。

我很肯定它已安装 - 我已在终端中使用它来更改文件,但它在程序中不起作用。

谢谢!

【问题讨论】:

    标签: python matplotlib ffmpeg


    【解决方案1】:

    尝试手动指定ffpmeg程序的路径

    import matplotlib.pyplot as plt
    plt.rcParams['animation.ffmpeg_path'] = '/usr/local/bin/ffmpeg'
    

    您必须将这些代码行放在脚本的开头,然后使用动画Writer

    【讨论】:

    • 指定程序的路径是指我应该指定 ffmpeg 文件夹或 unix 可执行文件的路径吗?我都试过了,都没有成功
    • Bin 表示可执行
    • 哦,非常感谢!!现在可以了,问题是我需要将plt.rcParams 直接放在import matplotlib.pyplot 下——我不知道为什么会这样,你介意向我解释一下吗?
    • RcParams 是设置;您必须在使用 matplotlib 之前指定选项
    【解决方案2】:

    不知道为什么,但在我的情况下,这是一个有效的(在我的情况下是在 Windows 上)。

    初始化写入器:

    import matplotlib.pyplot as plt
    import matplotlib.animation as animation
    Writer = animation.FFMpegWriter(fps=30, codec='libx264') # Or 
    Writer = animation.FFMpegWriter(fps=20, metadata=dict(artist='Me'), bitrate=1800) ==> This is WORKED FINE ^_^
    

    Writer = animation.writers['ffmpeg'] ==> GIVES ERROR ""RuntimeError: Requested MovieWriter (ffmpeg) not available""

    【讨论】:

      【解决方案3】:

      我发现我的计算机中不存在“/usr/local/bin/ffmpeg”。所以我试试这个:

      import matplotlib.pyplot as plt
      import matplotlib.animation as animation
      Writer = animation.writers['pillow']
      writer = Writer(fps=15, metadata=dict(artist='Me'), bitrate=1800)
      

      它对我有用

      【讨论】:

        猜你喜欢
        • 2012-10-30
        • 2013-01-26
        • 2013-09-30
        • 1970-01-01
        • 1970-01-01
        • 2017-05-24
        • 2021-07-03
        • 1970-01-01
        • 2011-04-02
        相关资源
        最近更新 更多