问题标签 [sox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4432 浏览

audio - 在 SOX 中混合带有偏移量的音轨

在 ASP.Net 中,我使用 FFMPEG 将 Flash 媒体服务器上的 flv 文件转换为需要混合成单个 MP3 文件的 wav。我最初完全使用 FFMPEG 进行了尝试,但最终放弃了混合步骤,因为我不相信可以将仅音频轨道合并到单个结果文件中。我很想错。

我现在使用 FFMPEG 访问 FLV 文件并将音轨提取为 wav,以便SOX可以混合它们。问题是我必须将其中一个音轨偏移几秒钟,以便它们同步。每个文件是学生和老师之间对话的一半。例如,teacher.wav 可能需要在 student.wav 之后 3.3 秒开始。我只能弄清楚如何在两个轨道同时开始的地方将文件与 SOX 混合。

在这一点上我最好的尝试是:

这些工具(FFMEG/SoX)是根据我最好的研究选择的,但不是必需的。任何可行的解决方案都将允许 ASP.Net 服务输入两个 FMS flv,并使用开源或免费工具创建组合 MP3。

编辑: 我能够使用delaySOX 中的开关来抵消文件。

如果有人有比组合 FFMPEG/SOX 解决方案更好的方法,我会留下这个问题。

0 投票
3 回答
3019 浏览

svn - 我可以使用 Git 进行源代码控制并且仍然符合 SOX 标准吗?

我想考虑从 Subversion 迁移到 Git 以进行源代码控制,但我的公司受 SOX 合规性的约束。

是否有人在符合 SOX 的环境中成功实施了 Git,如果是,您能否详细说明任何潜在的陷阱?

谢谢

保罗

0 投票
3 回答
2695 浏览

php - 知道为什么我可以从命令行执行命令但不能从 PHP exec()

好的,

我做了一些创造性的搜索,有点遇到障碍。

我正在尝试使用 linux 程序“sox”。我试图从我的 PHP 脚本中调用它。如果我使用命令行,脚本就可以工作。但是,当我使用 PHP exec 时,它不起作用。

例子:

(“V3”指定详细输出)

在命令行中以“用户 X”或 root 身份执行时,我可以创建新文件。但是,当我执行命令时:

它不会生成新文件。此外,应该返回命令结果的数组是空白的。

我做了一个简单的文字

我得到了根目录的内容。

我使用了 PHP 命令get_current_user(),它返回了作为网站根目录的目录的所有者。

但是,当我使用 linux 命令时whoami,我发现它将当前人视为“apache”。我需要授予 apache 使用该程序的权利吗?

我将继续在网上搜索并反复试验,以找出我做错了什么。任何帮助表示赞赏。

澄清

  • 我没有处于安全模式(我检查了 phpinfo() 页面”)
0 投票
1 回答
627 浏览

php - 是否有连接 MP3 文件、调整采样率以匹配、同时保留原始文件的最佳做法?

有谁知道是否有“最佳实践”来连接 mp3 文件以创建新文件,同时保留原始文件?

我正在命令行中使用 CentOS Linux 机器。我最终会从 PHP 脚本调用命令行。

我一直在做研究,我想出了一个我认为可行的过程。它结合了来自不同论坛、博客和类似来源的一般建议。

所以我来了:

  1. 创建一个临时文件夹
  2. 遍历文件以创建一个新的、转换后的文件副本,并将其转换为“原始”格式(我不知道是哪个。我不知道很久以前存在“原始”文件。我可以使用一些建议这个)
  3. 将临时文件的路径存储在临时文件夹中,然后循环遍历文件以连接它们,然后将新合并的文件放入最终的“处理目录”
  4. 删除临时文件的内容,其中包含临时原始文件。
  5. 将最终文件从“原始”转换为 mp3 并享受完成的结果

我认为这种做法可能是最好的,因为我不一定能控制原始“源”mp3 的质量。

我能想到的唯一其他选择是创建一个脚本,该脚本将在将文件添加到系统时执行类似的过程,只留下具有“正确”格式的文件并删除原始的“错误”文件。

希望您能看到我已经对此进行了一些思考,并且我正在尝试利用该社区的集体知识来选择最佳方向。

也许我可以采取更好的路径?

通过连接,我的意思是按顺序连接在一起以从“连接文件”创建一个新的音频文件。

我目前安装了以下内容: - Sox - FFMpeg

我目前正在使用这样的袜子:

0 投票
3 回答
1419 浏览

php - 转换为 raw 的音频文件是否保留以前的采样率?

好的。我正在尝试了解音频和压缩。我有一个基本问题,我还没有在网上找到答案。

我知道有带有标题信息的自我描述格式。如果我用 sox 将不同的文件转换为“原始”格式,我是否认为给它们提供相同数量的“通道”和“采样率”是错误的?

我想我在想 raw 将是伟大的“中和剂”。不是这样吗?就像您可以将所有文件视为原始格式一样?

维基百科说……

RAW Audio 格式或只是 RAW Audio 是一种计算机格式,用于以原始形式存储未压缩的音频。与 WAV 或 AIFF 的大小相比,RAW 音频文件不包含任何标题信息(采样率、位深度、字节序或通道数)。数据可以用 PCM、IEEE 754 或 ASCII 写入。[需要引用]

http://en.wikipedia.org/wiki/Audio_file_format上也有一些关于文件格式的好信息

澄清 我需要连接可能以不同数量的通道和采样率开始的 mp3 文件。老实说,我不知道我想结束多少频道。我正在尝试将不同的文件与 sox 结合起来。但是,sox 需要文件采用相同的文件格式。因此,我希望以“相同的文件格式”获得它们,这意味着相同数量的通道和采样率。

但是,现在似乎 raw 可能只是这两个项目,但删除了自我描述的标题信息?换句话说,转换为 raw 的 mp3 文件是否保留相同的属性(采样率和通道数)?

0 投票
5 回答
1666 浏览

iphone - 为 iOS 问题构建 libsox

我想为 iphone 设备构建 libsox,但我没有任何运气这样做。我只是想知道是否有可能为 iphone 构建这个库....

0 投票
1 回答
2835 浏览

sox - sox 无法拆分文件

根据手册页(已作为示例列出),以下命令应在 2 秒静音点将输入文件拆分为多个音频文件。取而代之的是,它只创建一个据报道大约 0.2 秒长的文件。

仅使用 trim 的更简单示例给了我相同的结果。

0 投票
1 回答
977 浏览

linux - 用于 Sox/Audacity 的商业 MP3 编码器/解码器

最近几天,我一直在寻找一种在上传到网站时将 MP3 文件混合在一起的方法,该网站托管在 linux 机器上。

到目前为止,感谢社区,我了解到在命令行上使用 SoX 可能是从两个来源实际生成混合文件的最有效方法。我还发现 Audacity 也可以用于此目的。

不幸的是,这两个程序都是免费的——由于专利和许可方面的法律问题,它们不支持 MP3 格式。我知道可以使用 LAME 添加支持,但这仍然是非法的,因为 LAME 也是免费的,并且没有获得专利所有者的许可。

因此,我正在寻找一种将 MP3 编码器/解码器支持添加到 Sox、Audacity 或类似的命令行启用程序的方法,以便它可以在商业网站中合法使用。搜索再次出现空白,请问有人知道解决方案吗?

0 投票
5 回答
11963 浏览

audio - Sox : 用 pad 合并两个音频文件

我正在使用该sox工具,我想合并两个音频文件,比如说long.oggshort.ogg输出一个文件output.ogg。这很容易使用$ sox -m long.ogg short.ogg output.ogg

问题是,我希望在 n 秒后播放(而short.ogg应该从头开始)。为此,我发现了效果。但我不明白只延迟输入文件的语法,而不是那个。long.oggshort.ogglong.ogg

我找到了一种(肮脏的)这样做的方式(n = 6):

我不想创建中间文件。在此先感谢您的帮助。

0 投票
1 回答
2084 浏览

macos - OSX 上的 SOX 录制不起作用?

我遇到了 sox (http://sox.sourceforge.net/) 无法在 OSX 上录制的问题。

我尝试过手动编译以及通过自制软件安装并获得相同的结果。

与在 Ubuntu 上运行相比:

其他人可以确认这个问题吗?任何想法为什么?

Darwin unknown.local 10.7.0 达尔文内核版本 10.7.0:2011 年 1 月 29 日星期六 15:17:16 PST;根:xnu-1504.9.37~1/RELEASE_I386 i386