Flex/Actionscript通过分析audioBytesPerSecond判断NetStream是不是有音频

Posted

技术标签:

【中文标题】Flex/Actionscript通过分析audioBytesPerSecond判断NetStream是不是有音频【英文标题】:Flex/Actionscript determine if NetStream has audio by analysing audioBytesPerSecondFlex/Actionscript通过分析audioBytesPerSecond判断NetStream是否有音频 【发布时间】:2012-08-30 12:58:19 【问题描述】:

我需要“查看” NetStream 并确定我是否正在接收音频。根据我的调查,我可能会使用来自 NetStreamInfo 的属性 audioBytesPerSecond:

"(audioBytesPerSecond) 指定 NetStream 音频的速率 缓冲区以每秒字节数填充。该值计算为 最后一秒接收到的音频数据的平滑平均。"

我还了解到 NetStream 可能包含来自网络的一些开销字节,那么这是确定 NetStream 是否正在播放音频(而不仅仅是噪音)的最小合理 audioBytesPerSecond 值? 可以这样分析吗?

提前致谢!

【问题讨论】:

【参考方案1】:

是的,你可以这样做。然而,这是相当主观的。

尝试找到适合您的阈值。我们过去使用 5 千比特/秒。如果数据量低于此值,他们可能不会发送任何音频。请注意,我们使用的是 stream.info.byteCount 属性(如果您使用的是 auiodBytesPerSecond,则可能需要稍低的值)。

如果您对着麦克风讲话并定期检查 audioBytesPerSecond 或其他可用的计数器/统计信息,这很容易观察到。

【讨论】:

您好苏尼尔,感谢您的回复。就您而言,只是一个问题,在使用 byteCount 时,您测试了哪个最小值?无论如何,在针对 5KB 进行测试时,在这里使用 bytesPerSecond 似乎没问题:) 我们使用了 5 千比特/秒。所以我们将 byteCount 转换为位。 PS:如果您使用字节数,它是发送的总字节数,因此您必须做额外的工作来计算速率。 AudioBytesPerSecond 为您完成所有工作:)

以上是关于Flex/Actionscript通过分析audioBytesPerSecond判断NetStream是不是有音频的主要内容,如果未能解决你的问题,请参考以下文章

GET请求Flex / Actionscript 3

Flex / Actionscript 中的文本动画库? [关闭]

使用 Flex/ActionScript 获取服务器结果

需要帮助使用 Flex/ActionScript 3 创建平滑的翻转或 FishEye 效果

在 Flex/Actionscript 中捕获视频缩略图

调整 Sprite Flex/ActionScript 的大小