代码之家  ›  专栏  ›  技术社区  ›  Jay Stramel

语音回音问题

  •  5
  • Jay Stramel  · 技术社区  · 15 年前

    Red5 用于视频和音频流的服务器。

    任何帮助都将不胜感激。

    8 回复  |  直到 15 年前
        1
  •  7
  •   Community Michael Schmitz    7 年前

    这是Adobe软件中的一个已知问题,目前尚无解决方案。

    现在你只能解决这个问题。

    你应该实施一个 在您的应用程序中设置模式,使用户在遇到音质问题时可以轻松切换到按键通话。

    按键通话

    允许用户请求扬声器令牌可能是一个有趣的想法。

    使用基于 suggestion of tst 可以让应用程序检查哪些人在讲话,然后自动授予演讲者令牌,而不是让用户手动请求。显然,必须进行可用性测试,以确保这在实践中很好地工作。

    有关更多详细信息,请参阅以下Adobe bug报告:

    错误描述如下:

        2
  •  4
  •   Dana the Sane    15 年前

    您需要实施一些过滤,以确保从麦克风输入中消除扬声器的所有输出(或尽可能接近)。我不知道有什么具体的工具可以做到这一点,但基本的想法是,对输入和输出进行并行时间切片,然后

        3
  •  3
  •   tst    15 年前

    我的网络会议系统也有同样的问题,我在网上找不到任何解决方案。据我所知,“使用回波抑制”将只取消回环产生的回波。但我提出了一个简单的解决方案——虽然不完美,但总比没有好:

    every 50ms check Microphone.activityLevel
    
    if during last 1500ms activityLevel was greater than 20
    then Microphone.gain *= 0.8
    
        4
  •  1
  •   vitaly.v.ch    15 年前

    此外,您还可以通过低通滤波器来减少回声

        5
  •  1
  •   Mark Bessey    15 年前

    另一个部分解决方案是在输入电平低于某个阈值时停止发送。这样,一旦有人停止说话,回声就会消失。

        6
  •  1
  •   Qwertie    15 年前

    您可以尝试使用卷积滤波器,该滤波器将尝试将麦克风输入与最近发送给扬声器的输出相关联。当您检测到麦克风输入与最近的输出类似时,只需将麦克风静音,直到相关性消失。(但IANAX,我不是专家)

        7
  •  0
  •   Liran Orevi    15 年前

    1) 你应该定义这个问题-

    2) 请注意,与大多数软件问题不同的是,在这个领域中,没有一个解决方案是100%有效的,而是由几种方法组成的,并且通常效果很好,但并非始终有效。

    因此,你应该实施上面的一些想法,将我的想法添加到这个受人尊敬的列表中:

    a) 从调整录制、增益等的级别开始。。。

    b) 尝试插入从录制样本到播放样本的延迟时间。 为了计算延迟,使用了试错法。

    c) 你有均衡器吗?

    如果您的努力没有奏效,那么问题就更严重了,您需要在Flex中找到,或者实现某种“回声消除”,这可以简单地完成,也可以智能地完成,我相信在某些地方会有开源。

        8
  •  0
  •   John Ellinwood    15 年前
    推荐文章