【发布时间】:2010-11-25 09:49:41
【问题描述】:
是否可以通过麦克风记录最终用户?
我可以用录音做什么?
我可以实时获取例如声音的音量(分贝)吗?
我可以将记录保存在文件中吗?
谢谢。
【问题讨论】:
-
谢谢大家。我找到了更多信息:getmicrophone.comgotoandlearn.com/play?id=62
标签: flash actionscript-3 audio
是否可以通过麦克风记录最终用户?
我可以用录音做什么?
我可以实时获取例如声音的音量(分贝)吗?
我可以将记录保存在文件中吗?
谢谢。
【问题讨论】:
标签: flash actionscript-3 audio
是的,Flash 允许(在用户许可的情况下)通过麦克风进行录音。
这就是无数像 Stickam 这样的网站提供视频会议功能的方式。
您无法获取以 dB 为单位的实际(准确)声压读数 - 这是声压的绝对测量值,取决于您在用户机器(麦克风)上无法控制的一百个因素类型、位置、定位、微调、频率响应、A/D 转换、硬件压缩等)。但是,您可以对输入信号的相对幅度进行采样。
【讨论】:
据我所知,您无法访问其波形或音量...有一个 activityLevel 属性,其中包含有关活动级别的某种信息,但您无法访问原始频谱或任何类似内容。 要录制音频文件,您可以通过 FMS 将其发送到服务器,最终您可以在那里对其进行处理,但这将取决于连接延迟等,因此很难向用户提供准确的响应.. . 看到这个: http://theflashblog.com/?p=829
【讨论】:
microphone.addEventListener(SampleDataEvent.SAMPLE_DATA, onMicrophoneData);
客户端有一个设置可以打开对网络摄像头和麦克风的访问,但您无法在应用程序本身中控制它。用户必须选择启用此功能。如果你必须做这样的事情,你最好实现某种形式的 Active X 控件,用户可能会在不知不觉中接受对这个函数的访问。
【讨论】:
http://vimeo.com/8203323 语音控制的绝佳示例
【讨论】:
是的,您可以使用 flash.media.Microphone 类录制音频。
不,您不能从 Flash 保存到文件,因为 Flash 不允许您写入磁盘。好吧,您可以保存到 LSO,但默认情况下限制为 100 KB,并且无论如何都不是纯文件。您可能可以使用 AIR 来做到这一点。我在 Microphone 类的文档中看到,您可以将音频流式传输回 Flash Media Server(或兼容的,如下面评论中所述),但这并不完全是“保存到文件”。
至于处理音频,从技术上讲,是的,您可以按照您的建议进行操作,但这可能不切实际。 ActionScript 是一种解释性语言,没有特别强大的数值处理能力。在 Flash 中执行此操作可能比在本机代码中慢 10-50 倍。接受这种速度冲击就像将自己送回 10 到 15 年,并且必须使用当时的技术来做到这一点。所以,无论你想做什么,你都必须问问自己他们是否在 90 年代中后期实时进行。如果没有,Flash 可能会太慢。例如,与说话人无关的大词汇量语音识别可能不实用。
当您仅使用 ActionScript 将调用脚本写入以本机代码编写的 Flash Player 时,它的效果最佳。在 Flash 获得语音识别(或您希望拥有的任何音频功能)之前,我会放弃这个项目。
【讨论】: