2011-11-25 31 views
4

我想要得到NetStream音频的活动级别,就像你可以用麦克风一样。 在这篇文章中, AS3: Audio activity level of a NetStream NetStreamInfo.audioBytesPerSecond据说是解决方案。 但是,audioBytesPerSecond指示流有多少数据量。 它没有获得流的音量级别。 它与microphone.activityLevel不一样。有没有什么办法可以在Actionscript 3中获得netStream的音量级别?

有什么办法可以获得netStream的音量级别?

回答

0

编辑:看来你正在寻找声谱,而不是音量水平。 SoundMixer这个类叫做computeSpectrum,它用一个时刻的原始声音数据填充ByteArray的实例。 您可以阅读有关SoundMixer更多在这里:http://help.adobe.com/en_US/air/reference/html/flash/media/SoundMixer.html 这里是一个与源代码的例子,可以帮助你实现你的目标:http://www.todaycreate.com/2007/02/18/actionscript-3-spectrum-analyzer

NetStream具有soundTransform财产的SoundTransform对象,反过来又volume属性引用获取和设置音量级别。这是你在找什么?

+0

感谢您的回复。 我想制作这种体积计。 http://www.youtube.com/watch?v=iixBz5JK6s4 我认为SoundTransform.volume是用户设置的输出音量级别。 直到用户更改其设置才会更改。 (如果我将其设置为1,则每次获得音量时都得到1) Microphone.activityLevel将根据其输入而改变。 我想获取流源客户端的麦克风活动级别。 – user872176

+0

我已经编辑了我的答案,请看看。 – package

+0

再次感谢。 SoundMixer类似乎不能用于流媒体等动态声音。 – user872176

相关问题