【问题标题】:Including ffmpeg in Django project在 Django 项目中包含 ffmpeg
【发布时间】:2020-07-04 16:45:34
【问题描述】:

我正在制作一个非常简单的 Django 应用程序(这是对非 Django 课程的测试),我需要在其中分析一个 mp3 文件,所以我尝试将其转换为 wav:

 sound = AudioSegment.from_mp3('upload/' + filename)
 sound.export('upload/wavfile', format="wav")
 rate, data = wav.read('upload/wavfile')

我已经在 venv 终端中通过pip install ffmpeg 安装了 ffmpeg,因为我希望我的代码不仅可以在我的机器上运行。 ffmpegffprobe 文件夹已出现在 /venv/lib/python3.7/site-packages/ 但是当我运行我的服务器时,我收到警告:

RuntimeWarning: 找不到 ffmpeg 或 avconv - 默认为 ffmpeg, 但可能不起作用 warn("找不到 ffmpeg 或 avconv - 默认为 ffmpeg,但可能无法正常工作", RuntimeWarning)

当我在网页中加载文件时,它会抛出

[Errno 2] 没有这样的文件或目录: 'ffprobe': 'ffprobe'

在上面代码的第一行。

对于如何在我的应用程序中使用 ffmpeg 或以其他方式处理我的 mp3 文件的任何帮助,我将不胜感激。

【问题讨论】:

  • 除了 Python ffmpeg 绑定之外,您还安装了ffmpeg(实际程序)吗?
  • 啊,是的,谢谢,现在我注意到我没有在我的系统中安装实际的应用程序,现在我安装了并且它工作正常。但是这意味着它不会在别人的机器上运行,这是我关心的问题

标签: python django ffmpeg


【解决方案1】:

您必须为 ffmpeg 可执行文件添加路径

import sys
sys.path.append('/path/to/ffmpeg')

or 

import ffmpy

ff = ffmpy.FFmpeg(executable='C:\\ffmpeg\\bin\\ffmpeg.exe', inputs={path+'/Stage1Rap.wav': None}, outputs={path+'/FinalRap.mp3': ["-filter:a", "atempo=0.5"]})
ff.run()

【讨论】:

    猜你喜欢
    • 2013-06-27
    • 1970-01-01
    • 2013-02-19
    • 1970-01-01
    • 1970-01-01
    • 2013-06-11
    • 1970-01-01
    • 2010-09-30
    • 1970-01-01
    相关资源
    最近更新 更多