【发布时间】:2011-07-15 09:08:34
【问题描述】:
有人可以指导我完成在我的网站上嵌入录音小部件的过程,人们可以在其中录制短(约 5 秒)的语音片段吗?我完全没有使用 Flash 的经验,但由于 HTML5 还没有,所以它是必要的。
【问题讨论】:
-
如果你想保存这些录音,你还需要一个服务器端组件——flash 只能为你抓取麦克风输入......检查这个:stackoverflow.com/questions/2734139/…
有人可以指导我完成在我的网站上嵌入录音小部件的过程,人们可以在其中录制短(约 5 秒)的语音片段吗?我完全没有使用 Flash 的经验,但由于 HTML5 还没有,所以它是必要的。
【问题讨论】:
@pkyeck 不,您可以在没有服务器的情况下录制音频并将其全部保存在客户端上。查看this guy's blog,我使用了他的代码并对其进行了修改。它记录音频并将 mp3 保存在您的硬盘上。我修改了代码供我个人使用并添加了超时。不幸的是,你需要学习一些 Flash 来修改代码,但它真的很容易上手。
他在博客的第 6 条评论中发布了 the source code。
编辑:要“引导您将音频嵌入到您的网站”,只需将这家伙的源代码加载到 Flash CS5.5 Professional 并发布到 HTML 文件中,然后抓取生成的代码并将其放入您的网站。如果您没有 CS5.5 Professional,那么物有所值,但您也可以从 Adobe 的网站下载免费试用版。
【讨论】:
这取决于您要在哪里录制音频。如果您想将音频记录并保存到访问者的计算机上,那么 Stefan 是对的,但如果您想将音频文件保存在您的服务器上,那么您需要服务器端的 Flash 软件,或者 red5,它是一种开源替代方案。您还可以使用各种可嵌入的插件,让您记录到插件的服务器,然后可以从您的页面访问。 http://cooltoolsforschools.wikispaces.com/Audio+Tools
【讨论】:
在网站中嵌入录音有 3 种方法:
Flash 捕获麦克风声音数据,将其作为 wav 存储在 RAM 中,使用 mp3 转换库将其转换为 mp3,然后使用 POST 和服务器端上传脚本将其上传到网络服务器。
建议短片使用此方法。
Flash 捕获麦克风数据,使用内置音频编解码器(Nellymoser ASAO 和 Speex)对其进行编码,并将其流式传输到媒体服务器(Red5 是免费和开源的,Wowza 等)并保存在 .flv 中文件。
由于数据是流式传输的,因此建议在长时间录制时使用此方法。如果计算机/浏览器崩溃,您不会丢失任何记录的数据。
以上两种方法都可以限制录制时间。
HTML Media Capture 可在移动设备上运行,方法是调出操作系统的本机音频录制应用程序来录制音频,然后将文件上传到 Web 服务器。根据设备,您最终会得到 .3ga 或 .mov 文件。
这是它在 Android 上的外观:
注意:iOS9 及之前版本的 Mobile Safari 在使用 HTML Media Capture 录制音频时会调出原生的照片/视频录制应用。
您可以在桌面上将录制时间限制为 5 秒。不幸的是,在移动设备上这是不可能的。
您可以实际嵌入的录音应用示例:
【讨论】: