【问题标题】:How to completly mute unbuffered live NetStream in Flash AS3/haxe?如何在 Flash AS3/haxe 中完全静音无缓冲的实时 NetStream?
【发布时间】:2014-05-07 09:08:50
【问题描述】:

我创建并使用了一个实时 NetStream,如下所示:

m_stream = new NetStream(m_connection);
m_stream.bufferTime = 0;

// mutes most of the sounds in exchange of clicking noise
m_stream.soundTransform = new SoundTransform(0); 
m_stream.receiveAudio(false); // seems to have no effect at all on rtmp streams

m_video.attachNetStream(m_stream);
m_stream.play(m_chan,-1,-1,true);

问题在于,尽管应用了零音量级别的 SoundTransform,但当静音流上发生实际声音时,我有时仍会听到“咔哒”声。缓冲流没有这样的问题,只有无缓冲(m_stream.bufferTime = 0);但我不想增加缓冲时间,因为 1)我希望尽可能少的延迟和 2)即使是非常短的缓冲区(比如 1.0 秒)最终也会延迟视频超过 10-20 秒。

有没有办法完全静音所有声音?我一直在尝试做类似的事情

SoundMixer.stopAll();
SoundMixer.soundTransform = new SoundTransform(0);

但这并没有让我免于点击声音。

【问题讨论】:

  • 您好,您当时解决了点击问题吗?我有同样的问题,但使用 appendbytes(如果 ns.bufferLength 跟踪达到“0”,那么微妙的点击开始)......欢迎任何提示。

标签: actionscript-3 flash haxe


【解决方案1】:

你做错了什么。我以前做过,并且 receiveAudio(false) 按预期工作。此外,您听到的声音可能是互联网连接不良造成的。

【讨论】:

  • 我的意思是,再试一次并确保这是它运行的实际代码,因为似乎m_stream.receiveAudio(false); 没有执行。另外,将完整的代码与事件周期一起发布。
猜你喜欢
  • 2011-01-19
  • 2014-12-29
  • 2011-06-28
  • 1970-01-01
  • 1970-01-01
  • 2011-12-07
  • 1970-01-01
  • 1970-01-01
  • 2011-06-24
相关资源
最近更新 更多