gpt4 book ai didi

javascript - 无法让 Web Audio API 与 iOS 11 Safari 一起使用

转载 作者:可可西里 更新时间:2023-11-01 04:23:08 28 4
gpt4 key购买 nike

因此 iOS 11 Safari 应该添加对 Web Audio API 的支持,但它似乎仍然无法使用此 javascript 代码:

//called on page load
get_user_media = get_user_media || navigator.webkitGetUserMedia;
get_user_media = get_user_media || navigator.mozGetUserMedia;
get_user_media.call(navigator, { "audio": true }, use_stream, function () { });
function use_stream(stream){
var audio_context = new AudioContext();
var microphone = audio_context.createMediaStreamSource(stream);
window.source = microphone; // Workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=934512
var script_processor = audio_context.createScriptProcessor(1024, 1, 1);
script_processor.connect(audio_context.destination);
microphone.connect(script_processor);
//do more stuff which involves processing the data from user's microphone...
}

我复制粘贴了大部分代码,所以我对它只有粗略的了解。我知道它应该(并且在其他浏览器上确实如此)捕获用户的麦克风以进行进一步处理。我知道代码在 var audio_context = new AudioContext(); 行中断(如,运行后没有代码),但没有任何错误消息,因为我没有调试 iOS Safari 所需的 mac(苹果已经死了>_<)有人知道发生了什么和/或如何修复它吗?

e: 忘了说我查过它,显然我在 Safari 中使用 Web Audio API 之前需要关键字“webkit”,但是让它成为 var audio_context = new webkitAudioContext(); 没有也不工作

最佳答案

@TomW 走在正确的轨道上 - 基本上 webkitAudioContext 被暂停,除非它是为直接响应用户的点击而创建的(在您获得流之前)。

https://stackoverflow.com/a/46534088/933879 查看我的回答有关更多详细信息和工作示例。

关于javascript - 无法让 Web Audio API 与 iOS 11 Safari 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46249361/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com