python - Python pydub AudioSegment MemoryError
问题描述
我对 Python 很陌生,在尝试从 44 MB .mp3 音频文件创建 AUdioSegment 对象时遇到了 MemoryError 问题。在处理我拥有的大多数音频文件时,我没有任何问题,但除了这个之外,它们都小于 1 MB。这就是我现在要做的所有事情:
audio = AudioSegment.from_file(filepath, format="mp3")
这是错误的完整输出:
Exception in thread Thread-3:
Traceback (most recent call last):
File "C:\Users\Owner\AppData\Local\Programs\Python\Python38-32\lib\threading.py", line 932, in _bootstrap_inner
self.run()
File "C:\Users\Owner\AppData\Local\Programs\Python\Python38-32\lib\threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\Owner\AppData\Local\Programs\Python\Python38-32\lib\subprocess.py", line 1366, in _readerthread
buffer.append(fh.read())
MemoryError
我不认为 44 MB 的文件会导致 MemoryError,但显然我弄错了,或者在我不知道的背景中发生了其他事情。我尝试在使用 AudioSegment 时查找与内存相关的问题,它们似乎都在处理更大的文件。任何帮助,将不胜感激。谢谢!
解决方案
一个 50mb 的文件有这个确切的问题。通过安装 64 位 Python 修复它。出于某种原因,我有 32 位版本,它会耗尽内存。64 位版本修复了所有问题,我可以处理更大的文件。
推荐阅读
- android - 在 Codenameone 中编辑文本字段时,BorderLayout.SOUTH 组件始终显示在 Android 上
- excel - 更新时向下移动的 Excel VBA 图形范围始终显示 2 个月的数据
- go - 从 go.mod 手动获取依赖项?
- json - 在 JSON.stringify() 处将循环结构转换为 JSON
- c# - 成功提交创建或编辑表单后,外键列显示空白单元格
- arrays - 确定是否存在长度> 1且整数均值的连续子数组
- c# - 使用 EF.Functions.Like 时,内存数据库不理解字符范围
- c# - GeckoFX 在保持滚动条的同时禁用表单输入
- unicode - grep 用于 Linux 中的表情符号
- node.js - 如何将 Nest.js 微服务拆分为单独的项目?