使用HTML5从IPhone录制语音

时间:2014-08-13 13:07:51

标签: javascript html5 google-chrome

我一直致力于移动网络应用程序,仅供我自己享受和研究。对于客户端应用程序来说,一切似乎都在使用HTML5 / CSS和JavaScript工作,虽然看起来我需要第三方技术进行录音。我有一个非常好的解决方案,使用Flash,但在用我的iPhone测试后,我记得他们似乎不支持闪存这是令人失望的,因为我有一个非常好的解决方案。我想在Iphone和android中使用HTML5录制语音。有什么办法吗?

4 个答案:

答案 0 :(得分:23)

您可以尝试HTML Media Capture。 article on dev.opera说:

  

Android OS 3.0是第一个提供HTML Media Capture的平台   支持,通过其默认的Android Webkit浏览器。现在HTML媒体   Capture也受以下支持:

     
      
  • 适用于iOS 6的Safari和Chrome移动版
  •   
  • 适用于Android OS 3的Chrome移动版
  •   
  • 适用于Android OS 3的Firefox手机
  •   
  • 适用于Android OS 3的Opera 16 +
  •   
     

尽管如此,其中一些只是部分实现了规范或   实现旧的W3C规范,使上面的代码   略有不同:

<input type="file" accept="image/*" capture="camera">
<input type="file" accept="video/*" capture="camcorder">
<input type="file" accept="audio/*" capture="microphone">

它链接到您可以在手机上试用的a demo page。我还找到了this example page。在我的快速iOS 7测试中,它只适用于照片和视频。


修改Further reading建议在iOS 6和7上实际上不支持accept="audio/*",仅accept="image/*"accept="video/*"。< / p>


更新:对iOS 8.3的快速测试表明此处未发生任何变化:支持accept="image/*"accept="video/*",但accept="audio/*"不支持。


更新:对iOS 10.0.2的快速测试表明仍然不支持accept="audio/*",尽管您现在可以从iCloud Drive或Dropbox上传音频文件了


更新:尽管它在the Webkit blog post中所说的内容,但我的iPhone 5S上似乎仍然没有支持iOS 10.3中的accept="audio/*"


更新:iOS 11.0.3中的相同故事。我的iPhone 5S似乎仍然不支持accept="audio/*"

答案 1 :(得分:2)

这不适用于网站,但如果您想使用Cordova将您的网络应用程序修改为移动应用程序,则可以使用麦克风输入。掌握网络音频api的一些知识,以便开始工作。

https://github.com/edimuj/cordova-plugin-audioinput

RecorderJS记录其输出:

https://github.com/mattdiamond/Recorderjs

上面有人提到RecorderJS不能在移动设备上运行,但确实如此,它只是麦克风输入不起作用。

目前我还没有任何方法可以在移动浏览器中记录麦克风输入

答案 2 :(得分:-1)

您可以使用HTML5 WebAudio API

音频和视频简介capturing Capture audio & video in HTML5

使用示例Recorder.js

录制音频的好图书馆

答案 3 :(得分:-2)

在iOS中的webkit浏览器ieChrome和Safari中,您可以将get user media api与webkitGetUserMedia一起使用。 详细信息可以在这里找到 : html5rocks