首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解码音频/音频播放(AS3)

解码音频/音频播放(AS3)
EN

Stack Overflow用户
提问于 2010-07-03 09:01:05
回答 2查看 1.4K关注 0票数 1

我对学习如何在Sound 3中解码和播放音频很感兴趣,我知道如何使用SAMPLE_DATA事件将字节写入ActionScript对象,所以这并不是什么问题。我想了解的是如何在Flash Player中实现替代音频格式以进行本机回放。

我想我要问的是:如何获取X格式的内容并将其“转换/解码”为WAV格式,并将字节写入Sound对象,从而回放音频?我有兴趣为FLAC音频和可能的OGG音频编写一个解码器,因为这些似乎是一些最广泛使用的开源音频格式。

有人能在这方面给我一些建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-03 09:14:34

如果你想写一个解码器,你首先要看的就是你想解码的格式的规范。

ogg/vorbis规范可以在这里找到:http://xiph.org/vorbis/doc/Vorbis_I_spec.html

另外,在Java:http://www.jcraft.com/jorbis/ (我不知道这个库,我只是在谷歌上搜索"ogg vorbis open source“)中,看看(或者移植)一些其他已经做了这项工作的开源库(我不知道有没有用Actionscript写的)可能会有所帮助。

无论如何,你需要做一些工作才能让它工作,我的意思不是让你泄气,但我不确定Actionscript是否足够快来进行实时音频解码。

票数 2
EN

Stack Overflow用户

发布于 2010-07-03 09:13:55

你可以试一试,但你不会有太多的抱怨去做其他事情。在Flash10之前,我写了一篇详细介绍hack to feed PCM data into sound output in Flash的文章。有人联系上是因为他们写了一个AS3 Ogg解码器,但是...即使在完全优化了代码之后,也发现AVM2真的不能胜任这项工作。基本上,它相当慢,解码OGG是相当处理器密集的。我看不出在那之后的几年里,事情会有那么大的变化,因为CPU变得“更宽”了,而且速度也不是很快。ActionScript是单线程的,所以你不能把负载转移到另一个内核上。

也许值得看看this..。也许性能已经提高了。

编辑:如上所述,正如Juan所说,不要因为这个答案而灰心丧气。我怀疑FLAC解码的计算需求可能比OGG少得多,如果DSP让你兴奋,花时间弄清楚所有这些东西是100%值得的,即使Flash路由(可能)会导致失望。就我个人而言,我认为Silverlight的MediaStreamSource看起来真的很有前途,但还没有真正涉足太多。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3169888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档