抖音开放平台Logo
开发者文档
控制台
  • API 概览
  • 开放能力
  • 基础
  • 渲染
  • 设备
  • 文件
  • 位置
  • 媒体
  • 图片
  • 音频
  • 录屏
  • 麦克风
  • tt.requestMicrophone
  • tt.pauseMicrophone
  • tt.resumeMicrophone
  • 相机
  • 录音
  • 视频
  • 人脸检测
  • 手势识别
  • 网络
  • 游戏转发分享
  • 实时语音
  • 数据缓存
  • 系统
  • 广告
  • 界面
  • 支付
  • Worker
  • tt.requestMicrophone
    收藏
    我的收藏

    基础库 1.23.0 开始支持本方法,这是一个同步方法。

    向端上发出麦克风请求,调起麦克风功能。

    前提条件
    业务背景
    使用限制
    注意事项
    • 对于一些声音类游戏,比如声控游戏,需要在录屏分享时带上麦克风声音,请参考 AudioContext.createMediaStreamSource 方法使用
    • 本 API 在游戏整个生命周期过程中,应当只被调用一次,如果需要暂停恢复,请配合 tt.pauseMicroPhone 和 tt.resumeMicrophone 使用
    相关教程

    语法

    tt.requestMicrophone()

    参数说明

    返回值

    类型说明最低支持版本
    Promise

    Promise<number> 对象,其中数字是一个 stream ID

    1.23.0

    扫码体验

    请使用字节宿主APP扫码

    代码示例

    开发者工具中预览

    async function main() { const streamID = await tt.requestMicrophone(); const context = tt.getAudioContext(); const sourceNode = context.createMediaStreamSource(streamID); // sourceNode.connect(context.destination); /** * 检测音量以确认麦克风确实起效了 */ const volumeDetectionNode = context.createVolumeDetection(); sourceNode.connect(volumeDetectionNode); // volumeDetectionNode.connect(context.destination); setInterval(() => { const { size, data } = volumeDetectionNode.getVolumeDetectionData(); const averageVolume = data.reduce((prev, volume) => prev + volume, 0) / size; console.log(`[API: microphone] average volumn: ${averageVolume}`); }, 2000); } main();