![SoX 中可以合并的最大文件数是多少?](https://linux22.com/image/1485278/SoX%20%E4%B8%AD%E5%8F%AF%E4%BB%A5%E5%90%88%E5%B9%B6%E7%9A%84%E6%9C%80%E5%A4%A7%E6%96%87%E4%BB%B6%E6%95%B0%E6%98%AF%E5%A4%9A%E5%B0%91%EF%BC%9F.png)
对于任何有经验的人来说sox 音频工具,您尝试合并的最大文件数量是多少(以 MB 为单位)?
到目前为止,我已经合并了高达 925MB 的 wav 文件,并没有遇到问题,但是对于超过 3GB 的文件,我收到一条错误消息,提示“打开的文件太多”,并且无法进行合并。
答案1
如果我没记错的话,你会在收到该错误时一次将一堆文件交给 sox 进行合并。你应该检查用户的最大打开文件设置,并且值得尝试增加它。在这里你可以看到,现在我的是 1024(请注意 -n,它将用于设置特定的系统资源设置):
$ ulimit -a | grep "open files"
open files (-n) 1024
但我只是将其加倍:
$ ulimit -n 2048
$ ulimit -a | grep "open files"
open files (-n) 2048
现在,如果我遇到了打开文件过多的错误,我有机会继续。但是,如果此错误不是通过 sox 从操作系统传递的,而是由于某种原因它有自己的限制,那么这不是解决方案。
重要提示:使用 ulimit 指定的资源设置仅在给定会话及其子会话中有效,在并行 shell 中原始限制将存在。