问题标签 [webkitaudiocontext]
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.
javascript - iOS Safari 上的 webkitAudioContext createMediaElementSource 不起作用
我想在 iPhone 上进行现场声音分析。因此我使用 webkitAudioContext Analyser。
这在 Mac 上的 Chrome 中运行良好。它也适用于 Safari,将网站添加到主屏幕时,使用
如果不将站点添加到主屏幕,它将无法在 Safari 上运行。使用嵌入 iOS wkwebview 的站点时,它不起作用。这就是我想要达到的目标。不工作时,frequencyData 数组全为零。
有人遇到过这种问题吗?
提前致谢
javascript - 音量不适用于 Javascript Web Audio API 播放列表示例
我正在使用用 JavaScript 编写的交叉淡入淡出播放列表。它依赖于 Web 音频 API。该代码使用一个名为 shared.js 的共享类来建立网络音频上下文。
我的问题是我的 VOLUME 功能仅在 ONE SONG 在播放列表缓冲区中时才有效。如果我添加两首或更多歌曲,音量功能没有响应。
为什么会这样?请查看我的代码。谢谢!!
javascript - 如何将声音输入从 HTML 发送到服务器
我需要将声音输入发送到服务器。我可以将它作为变量发送吗?我应该在函数start_microphone()
中做什么,我应该使用什么方法AudioContext()
?
ios - 在 ios 上使用 typescript/web 音频 api
我正在开发一个使用 Web Audio API 播放音频文件的网站。我在 Visual Studio Code 中使用 typescript 和 Angular 2。我可以让所有东西在 ios 以外的平台上运行良好;但是在例如 iPad 上,我遇到了一些莫名其妙的错误。
第一个问题是如何获得适用于 ios 和非 ios 平台的 AudioContext。我知道它可以用普通的 javascript 来完成,例如http://gopherwoodstudios.com/wa/mp3/test.htm。需要按下按钮很烦人,但我可以忍受。所以我认为我遇到的问题与打字稿有关。(我是打字稿新手,所以我可能在这里误解了一些基础知识。)
在 ios 上,你在运行时得到的仍然是 webkitAudioContext,而不是 AudioContext。我使用的打字稿定义似乎不明白如何处理。要么,要么我不知道如何告诉它它需要知道什么。最初我有一个 AudioContext 类型的成员变量,在非 ios 平台上一切正常。为了适应 ios,我尝试将变量的类型更改为 any,这样我就可以放入 webkitAudioContext(如果存在而 AudioContext 不存在);该代码看起来像这样(这都是原型代码,因此错误处理非常临时):
这仍然适用于非 ios 平台;在 ios 上,它设法返回一个 webkitAudioContext,并带有预期的方法和属性。(Object.create(...) 是我能找到的让这么多工作的唯一方法。)后来,当我在这个对象上调用 decodeAudioData 时,我得到一个错误,上面写着
由于它试图调用 decodeAudioData 方法的变量被键入为“any”而不是“AudioContext”,我不知道它从哪里得到它必须是 AudioContext 的想法。但无论如何,这都不是解决问题的正确方法。我在任何地方都没有关于 webkitAudioContext 的类型信息,只有关于 AudioContext 的信息。必要的类型信息是否存在于某处而我只是没有找到它?如果它不存在,创建它会很困难吗?或者,有没有办法完全绕过这组类的类型检查(不是我的首选选项,但如果这是我们现在能做的最好的选择,我会接受它)?还是有一些我不知道的完全不同的方法来解决这个问题?
safari - Safari 中的 OfflineAudioContext 和 FFT
我正在使用 OfflineAudioContext 在后台进行波形分析。
在 Chrome、Firefox 和 Opera 中一切正常,但在 Safari 中我得到了一个非常狡猾的行为。波形应该由许多样本(329)组成,但在 Safari 中,样本只有 ~38。
请参阅Codepen。
webkitaudiocontext - OfflineAudioContext - 为多个通道添加增益
我正在尝试操纵 OfflineAudioText 中各个缓冲区的增益。
交流和数据加载后预先确定
错误:无法在“AudioNode”上执行“连接”:输出索引 (1) 超过输出数 (1)
typescript - Safari 上的 AudioContext 问题
我正在尝试在我的打字稿文件中为 Angular 5 应用程序使用 AudioContext。它在 Chrome 上运行良好,在 Safari 上不起作用。我通过谷歌搜索看到的所有内容都说要使用window.webkitAudioContext
,但是当打字稿编译器运行时说它在 Window 类型上不存在时会立即爆炸。
html - AudioContext 中没有 outputLatency
我正在尝试访问 Chrome 64 中的 outputLatency 功能,但该属性未定义。
根据文档,它应该只适用于 Chrome https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/outputLatency
我知道该功能处于实验状态,但有没有办法访问它?喜欢在 Chrome 中更改标志以激活此功能?
safari - React 360:Safari 找不到变量:AudioContext
在 Safari 中使用 react 360 启动反应实例时,我收到 AudioContext 错误。
我这样实例化:
window.React360 = {初始化};
捆绑包中的错误堆栈是这样的:
1.
n = new r.ReactInstance(e, t, babelHelpers.extends({ fullScreen: !0 }, o));
2.
this.runtime = new U.default(this.scene, (0, o.default)(t), l), this.vrState = new p.default, this.vrState.onDisplayChange(function(e) { e ? a .overlay.setVRButtonState(!0, "View in VR", a.enterVR) : a.overlay.setVRButtonState(!1, "No Headset", null) }), this.controls.addCameraController(new g.default(this ._eventLayer)), this.controls.addCameraController(new v.default(this._eventLayer)), this.controls.addCameraController(new b.default(this._eventLayer)), this.controls.addEventChannel(new L.default( this._eventLayer)), this.controls.addEventChannel(new V.default(this._eventLayer)), this.controls.addEventChannel(new P.default), this.controls.addEventChannel(new H.default), this.controls .addRaycaster(new z.default), this.controls.addRaycaster(new A.default(this._eventLayer)),this.controls.addRaycaster(new Q.default(this._eventLayer)) }
3.
“函数” == 类型 a ?this.context.registerModule(a(this.context)) : this.context.registerModule(a)
4.
nativeModules: [new B.default(this.compositor.getEnvironment()), function(e) { var t = new T.default(e); 返回 a._audioModule = t, t }, function(e) {
5.
return a._audioCtx = new AudioContext, a._audioData = {}, a._handles = {}, a._loaders = {}, a._rnctx = e, a /////////---> >>找不到变量:AudioContext
如何正确使用 React 360 for Safari?有什么办法可以关闭音频模块?