You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Chime切换本地音频输出无效 其他参会者仍能听到声音

问题根因

你导入并使用了错误的功能Hook,这是麦克风开关不生效的核心原因。两个Hook命名相似度很高,非常容易混淆:

  • useLocalAudioOutput:控制本地音频输出,也就是你自己的扬声器/耳机是否播放其他参会者的声音,开关只会影响你自己的收听体验,完全不会改动麦克风的采集、推流状态,所以其他参会者始终能听到你的声音。
  • useLocalAudioInput:控制本地音频输入,也就是你自己的麦克风是否开启采集、向会议推流音频,这才是实现“闭麦让别人听不到”功能需要用的Hook。
修复代码

直接替换成正确的Hook即可,修正后的完整代码如下:

import React from 'react';
import {
  MeetingProvider,
  useLocalAudioInput
} from 'amazon-chime-sdk-component-library-react';

const App = () => (
  <MeetingProvider>
    <MyChild />
  </MeetingProvider>
);

const MyChild = () => {
  const { isAudioOn, toggleAudio } = useLocalAudioInput();

  return (
    <div>
      <div>
        {isAudioOn
          ? '麦克风已开启,其他参会者可以听到你的声音'
          : '麦克风已关闭,其他参会者无法听到你的声音'}
      </div>
      <button onClick={toggleAudio}>切换麦克风状态</button>
    </div>
  );
};
自定义扩展说明

如果你需要实现更定制化的麦克风控制逻辑,不依赖组件库封装的Hook,也可以直接调用Chime SDK音频实例的原生方法:

  • 静音本地麦克风:meetingSession.audioVideo.realtimeMuteLocalAudio()
  • 取消麦克风静音:meetingSession.audioVideo.realtimeUnmuteLocalAudio()
  • 查询当前麦克风是否静音:meetingSession.audioVideo.realtimeIsLocalAudioMuted()

内容的提问来源于stack exchange,提问作者montassar attia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 04:36:14