2

我的任务是处理大量的音频文件。每个文件必须分四步处理:

  1. 从 .wav 转换为原始 pcm,
  2. 重采样,
  3. 量化
  4. 使用三个语音编解码器之一进行编码。

每个步骤对应一个程序,将文件作为输入并返回文件作为输出。逐个文件处理似乎需要很长时间。如何优化程序?例如并行编程之类的?我试图利用 ramdisk 来减少文件读取/写入所花费的时间,但它并没有改善。(为什么?)我在 Ubuntu Linux 下用 Python 编写。提前致谢。

4

1 回答 1

0

读写磁盘非常慢。如果每个程序结果都被写入磁盘,那么最好阻止这种情况发生。插座对我来说似乎很合适。在这里阅读更多:http: //docs.python.org/library/ipc.html

并行程序很好......需要更多信息才能在这个话题上说更多。我记得前段时间读过关于 python 处理线程的效率不高的文章,所以这可能不是最好的选择。据我记得,它只是通过在任务之间切换来模拟并行处理,这真是太快了。所以这无济于事。自从我使用线程以来,这可能已经改变了……另一方面,额外的进程听起来是个好主意。

如果您需要一个不那么模糊的答案,请在您的问题中提供具体信息。

编辑

我不久前读到的关于线程的内容如下所示:http ://docs.python.org/2/glossary.html#term-global-interpreter-lock

于 2012-10-22T21:08:21.577 回答