鸿蒙(API 12 Beta2版)媒体开发【管理麦克风】

因为在录制过程中需要使用麦克风录制相关音频数据,所以建议开发者在调用录制接口前查询麦克风状态,并在录制过程中监听麦克风的状态变化,避免影响录制效果。

在音频录制过程中,用户可以将麦克风静音,此时录音过程正常进行,录制生成的数据文件的大小随录制时长递增,但写入文件的数据均为0,即无声数据(空白数据)。

开发步骤及注意事项

在AudioVolumeGroupManager中提供了管理麦克风状态的方法,接口的详细说明请参考API文档。

  1. 创建audioVolumeGroupManager对象。

    import { audio } from '@kit.AudioKit';

    let audioVolumeGroupManager: audio.AudioVolumeGroupManager;
    async function loadVolumeGroupManager() { //创建audioVolumeGroupManager对象
    const groupid = audio.DEFAULT_VOLUME_GROUP_ID;
    audioVolumeGroupManager = await audio.getAudioManager().getVolumeManager().getVolumeGroupManager(groupid);
    console.info('audioVolumeGroupManager create success.');
    }

  2. 调用isMicrophoneMute查询麦克风当前静音状态,返回true为静音,false为非静音。

    async function isMicrophoneMute() { //查询麦克风是否静音
    await audioVolumeGroupManager.isMicrophoneMute().then((value: boolean) => {
    console.info(isMicrophoneMute is: ${value}.);
    });
    }

相关推荐
爱敲代码的小黄5 小时前
神经网络入门指南:从 CNN、RNN 到 Attention
人工智能·面试·程序员
一条破秋裤7 小时前
【V4L2采集视频】
音视频
陈随易8 小时前
纯 Go 写的 JS 引擎,跑分超过了 C 语言的 QuickJS
前端·后端·程序员
陈随易11 小时前
专注飞机 FocusFlight,两个人把番茄钟做成了一趟航班
前端·后端·程序员
爱勇宝13 小时前
忙不是勋章,身体才是职场人唯一的长期资产
程序员
kyriewen15 小时前
我扫了 422 个仓库,近一半 CI 在裸装依赖
前端·javascript·程序员
致力于划水第一线16 小时前
现在矿石每天签到只送一个了吗
程序员
KevinChaos17 小时前
阳台小花园开发手记 01|HarmonyOS 7.0 互动卡片:小花园为何要两套界面
华为·harmonyos
Thneonl17 小时前
桌宠穿透不是一行 SetWindowLong
windows·程序员
Ranger092917 小时前
下一代鸿蒙打包工具链:arkdown
harmonyos