【问题标题】:Python - audiodiff can't find file that existsPython - audiodiff 找不到存在的文件
【发布时间】:2015-06-16 21:56:43
【问题描述】:

我正在比较 wav 文件,在我切换到 LMDE Betsy 之前,这个脚本运行良好。给我错误的函数是:

def already_valid (arg_wav):
    for w in wavs:
         size_arg = getsize(arg_wav.src_path)
         size_w = getsize(w.src_path)
         if 0 < size_w == size_arg and w.src_path != arg_wav.src_path:
             print arg_wav.src_path, "::", w.src_path
             if audiodiff.audio_equal(arg_wav.src_path, w.src_path):
                 return True
    return False

我的第一个想法是它试图打开同一个文件两次,但w.src_path != arg_wav.src_path 应该考虑到这一点。我得到这个输出:

来自我的功能:

/home/will/Desktop/soundfiles/TITAN Recordings/6648/hold1_por.wav :: /home/will/Desktop/soundfiles/TITAN Recordings/6677/hold1_por.wav

追溯:

Traceback (most recent call last):
  File "call_diff.py", line 145, in <module>
    verified += handle_wav(p)
  File "call_diff.py", line 73, in handle_wav
    if already_valid(curr_wav):
  File "call_diff.py", line 96, in already_valid
    if audiodiff.audio_equal(arg_wav.src_path, w.src_path):
  File "/usr/local/lib/python2.7/dist-packages/audiodiff/__init__.py", line 51, in audio_equal
    return checksum(name1, ffmpeg_bin) == checksum(name2, ffmpeg_bin)
  File "/usr/local/lib/python2.7/dist-packages/audiodiff/__init__.py", line 86, in checksum
    stderr=subprocess.PIPE)
  File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1335, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

奇怪的是它昨天在 Linux Mint 17.1 在 Windows 7 上运行。这是我不知道的一些奇怪的 Debian 约定吗?是的,我仔细检查了两个文件都存在于所描述的路径中。

【问题讨论】:

  • 它有可能无法找到 ffmpeg,而不是您的文件。 ffmpeg 在你的 PATH 中吗?
  • 我当然忘了在我的新造币厂安装 ffmpeg!谢谢,它现在可以运行了,有没有办法从回溯中判断它意味着它找不到 ffmpeg_bin 而不是我的一个文件?
  • 从那里,不是真的。我猜是因为我看到了ffmpeg_bin。不过,您可以打开 audiodiff __init__.py 并检查第 86 行,看看它在那里实际做了什么。

标签: python debian filenotfoundexception linux-mint audio-fingerprinting


【解决方案1】:

如果您查看 audiodiff 的源代码,您会发现您需要安装 ffmpeg,并且可能需要将 ffmpeg 二进制文件的路径设置为 FFMPEG_BIN 环境变量。

https://github.com/clee704/audiodiff/blob/master/audiodiff/init.py

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-13
    • 2015-12-15
    • 2012-12-15
    • 2020-10-07
    • 2018-01-06
    • 2016-01-05
    • 1970-01-01
    • 2020-08-17
    相关资源
    最近更新 更多