问题标签 [avaudiofile]

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 投票
0 回答
110 浏览

ios - 更改编码器格式版本

在过去的一周里,我一直在尝试从麦克风(在 iOS 上)获取音频,对其进行采样并将其写入“.aac”文件。

我终于指出了它几乎可以工作的地方

问题是,生成的文件必须是MPEG ADTS, AAC, v4 LC, 8 kHz, monaural格式的,但上面的代码只生成MPEG ADTS, AAC, v2 LC, 8 kHz, monaural

也就是说,它必须是v4,不是v2(我别无选择)

(此结果是通过file {name}在命令行上使用转储其属性生成的。我还使用MediaInfo提供附加信息)

我一直在试图弄清楚是否有某种方式可以提供AVAudioFile将 LC(低复杂度)版本从 2 更改为 4 的提示或设置?

我一直在浏览文档和示例,但似乎找不到任何建议

0 投票
0 回答
44 浏览

swift - 实例化 AVAudioPlayerNode 时是否可以使用流 url 而不是将媒体下载到磁盘?

我们正在使用 Amazon Cloudfront 将音频流式传输到 iOS 应用程序。我们需要仅在 AVAudioEngine 上可用的特定功能,这就是我们尝试实例化 AVAudioPlayerNode 的原因。问题是似乎需要在设备上下载媒体才能使 AVAudioPlayerNode 按预期工作。这是 AVAudioPlayerNode 本身的限制,还是有办法从远程位置流式传输音频文件?

目前,我们正在进行的实施是将媒体下载到驱动器,然后在完成后将其删除,这显然有一些限制,尤其是在下载时间方面。

0 投票
1 回答
939 浏览

ios - 读取 AVAudioFile 缓冲区时崩溃 Create Waves Swift

我一直在 AVAudioPlayer 工作并画了一个波浪。我正在使用AudioArmada Github pod 在AudioArmada Pods. 但是某些情况下 AVAudioFile 在读取缓冲时间时崩溃。

下面的代码:

以下案例:

  1. 运行案例:

    /li>

波形截图:

运行案例屏幕截图

  1. 崩溃案例:

    /li>

错误: 致命错误:“试试!” 表达式意外引发错误:Foundation._GenericObjCError.nilError: file /Users/apple/Desktop/AudioArmada-90f214d3d9483e817cdb1396e08f8f626a7be821/AudioArmada/Classes/WaveformZoomable.swift,第 63 行

问题:如何解决这个问题,为什么有时会崩溃?

任何帮助将不胜感激。

提前致谢。

0 投票
3 回答
2209 浏览

python - 如何在 Python 的 SpeechRecognition 中使用音频文件作为音频源?

speech_recognition.AudioFile在 Python 3.6 中使用过,但是提示了这个错误:

这是我的代码:

另外我正在使用speech_recognition 3.1.3.

0 投票
1 回答
477 浏览

ios - 如何在 WKWebview 中添加观察者以播放和暂停音频文件的操作?

我想在 wkwebview 中为音频文件的播放和暂停操作添加通知,图像显示了音频文件在 WKWebview 中的情况

0 投票
1 回答
292 浏览

ios - 从 AVAudioEngine 总线抽头生成的文件中的音频与在设备输出上播放的音频具有不同的速度

我正在使用AVAudioEngine. 然后我mainMixerNode在引擎的输出上安装一个水龙头,它提供一个AVAudioPCMBuffer然后写入 MPEG4ACC AVAudioFile。我遇到的问题是,在生成的 .m4a 文件上播放的音频速度比您在设备输出本身(扬声器、耳机)上可以听到的速度慢。这是我正在实现的代码:

0 投票
1 回答
235 浏览

swift - 如何在 CloudKit 中存储和检索音频文件?

我正在尝试录制语音消息并将它们作为 CKAssets 存储在 CloudKit 上。我将它们转换为 AVAudioFile 并将它们作为 Post 记录上的几个属性之一保存到 CloudKit。

尽管通过 CloudKit 仪表板访问文件时无法播放音频,但该过程的这一部分似乎有效。(双击它会打开 iTunes,但它不会播放)

我创建了一个 fetchPosts 函数,该函数成功地关闭了与记录相关的图像,但是当我尝试播放音频时,它给了我以下错误:

ExtAudioFile.cpp:192:Open: 即将抛出 -43: 打开音频文件

我相信这与我无法将资产正确转换为 AVAudioFile 有关。它似乎不像转换图像资产那样干净利落。

谁能告诉我哪里出错了?

0 投票
0 回答
142 浏览

rtp - 如何在 Linux 下使用 Python 从 RTP PAYLOAD 以多通道模式写入 AMR-WB 文件

根据这个问题中的答案,我已经成功地将 RTP-payload 写入了一个 amr 文件,并且工作正常。

现在我尝试根据文档 RFC 4867 根据第 5.2 章编写多通道文件,但我失败了。没有解码器接受该文件。我有 2 个频道(立体声)。

我已经检查了文件中语音数据的正确性。他们似乎是正确的。首先,我根据第 5.2 章放置标题:

我检查的幻数是正确的。然后我添加了chan-desc-field,据我了解应该是:

在音频文件中,我读取了相同的值。这个对吗?音频数据根据 5.3(第 1 段)保存:

现在单击 amr 文件(或 awb),解码器说,发生了错误。相反,当我只在文件中写入一个通道时,根据第 5.1 和 5.3 章,一切正常。它可以与 windows VLC-MEDIA PLAYER 和 Linux Ubuntu 的视频一起播放。

我的错误在哪里?

谢谢并恭祝安康

更新:RFC4867 的第 3.5 章第二段说,通常,编解码器不支持将多通道音频内容编码为单个比特流,它们可用于单独编码和解码每个单独的通道。

那么我该怎么做才能产生带有 2 个声道的立体声呢?

0 投票
0 回答
144 浏览

ios - 如何使用 AudioKit 5.0.b1 导出文件样本?

我正在尝试更新我的应用程序,以便它可以使用 Xcode 12.0 beta 3 (12A8169g) 和 AudioKit 5.0.b1 运行。以前我有这段代码可以将我的导出AKAudioFile为所需的格式并定义了开始和结束位置:

目前看来我必须使用AKConverter来完成这项任务,但似乎我无法指定fromSample以及toSample何时转换文件。所以可能有一种方法可以先剪切文件的一部分,然后将其转换为所需的格式,但我没有找到如何有效地做到这一点。那么如何转换我的代码以使其适用于 v.5.0.b1?

0 投票
0 回答
84 浏览

ios - AVAudioFile (Mac/iOS) : 将音频编码为恒定比特率 AAC

我想使用 AVAudioFile 将音频缓冲区编码为 M4A/AAC 文件。它的工作原理是输出文件始终是具有可变比特率的 AAC,即使我使用特定的恒定比特率标志配置 AVAudioFile 也是如此。

这是 AVAudioFile 初始化的代码:

AVAudioFile 是否支持恒定比特率 AAC?文档对此并不清楚。