鸿蒙(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}.);
    });
    }

相关推荐
SimonKing1 小时前
一键开启!Spring Boot 的这些「魔法开关」@Enable*,你用对了吗?
java·后端·程序员
程序员潘Sir2 小时前
鸿蒙应用开发从入门到实战(八):ArkTS自定义组件语法
harmonyos·鸿蒙
redreamSo2 小时前
找对象这件事,选择永远比努力重要:建立婚恋权重模型,选择高效渠道,精准识人与主动推进,我不信这还不行?
程序员
AI大模型13 小时前
GitHub 狂飙 72k Star,这本大模型书凭啥能圈粉无数?
程序员·llm·agent
大模型教程17 小时前
小白学大模型:从零搭建LLaMA
程序员·llm·llama
AI大模型18 小时前
一篇文章看懂RAG + 实战,看不懂来揍我
程序员·llm·agent
高心星18 小时前
鸿蒙5.0应用开发——V2装饰器@Provider和@Consumer的使用
harmonyos
ChinaDragon1 天前
HarmonyOS:ArkTS卡片页面刷新
harmonyos
HMSCore1 天前
通知语音播报功能,解锁全新体验
harmonyos