热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在ios11上没有调用onaudioprocess

如何解决《在ios11上没有调用onaudioprocess》经验,为你挑选了1个好方法。

在最近添加支持后,我试图通过iOS11上的Safari上的麦克风进行音频捕获

但是,onaudioprocess永远不会调用回调.这是一个示例页面:

    
        
        

在大多数平台上,当onaudioprocess调用回调时,您将看到要添加到消息列表中的项目.但是,在iOS上,永远不会调用此回调.

我还应该做些什么来尝试在iOS 11上使用Safari调用它?



1> Nathan Fried..:

有两个问题.主要的一点是,iOS 11上的Safari似乎会自动挂起AudioContext不是为响应点击而创建的新游戏.你可以resume(),但只是为了回应.

(更新:Chrome移动设备也可以执行此操作,Chrome桌面将从版本70/2018年12月开始具有相同的限制.)

因此,您必须在获得之前创建它MediaStream,或者让用户稍后再次点击.

您的代码的另一个问题AudioContextwebkitAudioContext在Safari中加上前缀.

这是一个工作版本:






(您可以onaudioprocess更快地设置回调,但在用户批准麦克风访问之前,您将获得空缓冲区.)

哦,还有另外一个需要注意的iOS漏洞:iPod touch上的Safari(从iOS 12.1.1开始)报告说它没有麦克风(确实如此).所以,Error: Invalid constraint如果你在那里要求音频,getUserMedia会拒绝.

仅供参考:我在npm上维护麦克风流包,为您完成此操作,并以Node.js风格的ReadableStream提供音频.我刚刚使用此修复程序更新了它,如果您或其他任何人更愿意使用原始代码.


即使作为对用户操作的响应,我将audioContext置于挂起状态,并且必须在创建后立即添加audioContext.resume(),即11.0.3
推荐阅读
  • C#设计模式(8)——桥接模式(Bridge Pattern)
    原文地址:http:www.cnblogs.comzhilipBridgePattern.html原文作者:Learninghard原文出处:博客园一、引言 ... [详细]
  • 开发笔记:Xunit测试使用个人小结
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Xunit测试使用个人小结相关的知识,希望对你有一定的参考价值。因工作中用到xunit测试,故总结下用法,以供个人参考使 ... [详细]
  • ajax 跨域webapi 最简单的demo(只介绍Get)
    这几天遇到一个nodejs的项目,使用VSCode开发,需要连接数据库的,但是用nodejs连接数据库比较繁琐,需要安装很多 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了将JSON数组反序列化为强类型的.NET对象相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 在ROS系统中,参数读写一般通过xml或者yaml格式的文件,其中yaml用得比较多。这是一种可读性高,轻量级的标记语言,简单好用。对于yaml文件,ros中用的较早版本的yaml- ... [详细]
  • #includestdafx.h#includeiostream#includesstream#includemap#includestring ... [详细]
  • Step1:启动服务器首先启动zookeeperbinzookeeper-server-start.shconfigzookeeper.properties接着启动kafka服务 ... [详细]
  • 缓存的重要性就不用再强调了,@OutputCache给我们提供了一种声明的方式(对应的还有编程的方式)来控制页面和用户控件的缓存策略,这是一种最简单直接的网站优化方式。还是先来过一遍@ ... [详细]
  • 在实际开发中,现在安卓端和后台之间的数据交互,一般都是用JSON来传递数据信息。JSON大家一般都比较熟悉。我这边就以实际项目中的后台传过来的情况和大家分析下及如何处理。比如后台返 ... [详细]
  • Windows Phone 8 文件操作
    在WindowsPhone8中,操作文件的方式限制很大,对独立存储中的文件访问,可以采取两种形式:1、IsolatedSto ... [详细]
  • 这篇文章将为大家详细讲解有关C#开发技巧有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。C#开发技 ... [详细]
  • PIMPL 是 C++ 中的一个编程技巧,意思为指向实现的指针。具体操作是把类的实现细节放到一个单独的类中,并用一个指针进行访问 ... [详细]
  • MyBatis模糊查询和多条件查询一、ISmbmsUserDao层根据姓名模糊查询publicListgetUser();多条件查询publicList ... [详细]
  • C#的Type对象的简单应用
    通过Type对象可以获取类中所有的公有成员直接贴代码:classMyClass{privatestringname;privateintid;publicstringcity;pu ... [详细]
  • 文本生成图像简要回顾 text to image synthesis
    摘要       文本生成图像作为近几年的热门研究领域,其解决的问题是从一句描述性文本生成与之对应的图片。近一周来,我通过阅读了近几年发表于顶会的近10篇论文,做出本文中对该方向的 ... [详细]
author-avatar
兄弟连教育
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有