如何输入音频?

2024-04-25 15:23:47 发布

您现在位置:Python中文网/ 问答频道 /正文

TL;DR: I have combined 1,000 mp3 files into one large mp3 file, but am unable to pass this file through the Torch framework.

我已经能够使用火炬成功地从莎士比亚的样本生成独特的输出。现在,我想更进一步,输入一个音频文件而不是文本文件。你知道吗

bash$ audio.load(/path/to/fullyMerged.mp3)
-bash: syntax error near unexpected token `/path/to/fullyMerged.mp3'

我试过用音频加载(path)正如torch文档here中建议的那样,但是我得到了一个意外的令牌错误。你知道吗

Edit: Here are some things I have tried, but failed

  • 尝试直接输入mp3,但是mp3是无效的输入:python scripts/preprocess.py --input_mp3 data/fullyMerged.mp3 --output_h5 data/fullyMerged.h5 --output_json data/fullyMerged.json

  • 尝试将.mp3扩展名重命名为.txt并将其馈送到Torch中,但返回UnicodeDecodeError,因为音频不能表示为文本

  • 尝试将我的.mp3文件转换为.raw格式、.wav格式和许多其他格式,但是,Torch无法处理任何音频格式。

  • 还尝试将这些转换的.raw.wav文件的扩展名重命名为.txt,但这仍然给了我一个UnicodeDecodeError

我花了无数个小时试图让火炬处理音频,但无法做到这一点!任何反馈都将不胜感激。你知道吗


Tags: topathbashoutputdatahave格式torch
2条回答

你应该给audio.load一个字符串,而不是给/Users/.../fullyMerged.mp3

你应该替换

audio.load(/Users/.../fullyMerged.mp3)

audio.load('/Users/.../fullyMerged.mp3')

audio.load不是有效的Bash命令。错误消息有点混乱,因为括号也是无效的;甚至在Bash尝试执行任何操作之前就触发了解析错误。你知道吗

要启动交互式Python会话,请在Bash提示符下键入python。在Python接受audio.load作为函数名之前,仍然需要import一些东西。你知道吗

在尝试将Python用于非平凡的新开发工作之前,也许您应该花一些时间熟悉一下Python。你知道吗

。。。只是看起来您链接到的库是Lua库,而不是Python库。我对Lua不熟悉,但这个答案的其余部分仍然有效。可能从the Lua-Audio project's ^{}末尾的用法示例开始,将其复制/粘贴到文本文件中,然后找出如何使用Lua运行该示例。你知道吗

相关问题 更多 >