我的客户需要让用户从浏览器录制消息,然后将消息导出为音频文件(例如WAV)。
这是如何最好地完成的? Flash,Java,HTML5?最好的,我的意思是直接实施并得到广泛支持。
人们使用HTML5的经历是什么?
谢谢!
答案 0 :(得分:4)
Flash是一种选择,但您需要一个媒体流服务器(Adobe Media Server,Wowza,Red5)。无法在Flash上本地捕获和存储音频到文件。
如果您愿意使用Java applet,那么有多种解决方案。所有这些都需要访问本地文件系统,并会要求用户提供其他权限。例如,请尝试http://www.javasonics.com/或Google“applet record audio”。
更新,因为Flash 10.0可以选择将Microphone与SampleDataEvent.SAMPLE_DATA一起使用。这样可以从麦克风访问原始音频数据。请参阅此项目以实施:http://code.google.com/p/micrecorder/
答案 1 :(得分:1)
我怀疑HTML5的这种功能非常不标准,浏览器支持会有很大不同(许多浏览器不包括任何浏览器)。
Java并不像flash那么受欢迎,而且很多人根本没有JRE。
总而言之,在这种情况下我会选择Flash解决方案。对于某些有限的案例,可能会有HTML5后备,资源允许。
答案 2 :(得分:0)
假设您的意思是“导出”到服务器,这里是一个不需要闪存介质服务器的开源Flash解决方案:
https://code.google.com/p/wami-recorder/
录制内容通过HTTP post传输到您选择的服务器端技术。在最简单的情况下,您可以使用4行PHP代码捕获和保存音频:
<?
$content = file_get_contents('php://input');
$fh = fopen('output.wav', 'w') or die("can't open file");
fwrite($fh, $content);
fclose($fh);
?>
对于HTML5支持,请关注getUserMedia()