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

相关推荐
JS-s3 小时前
【无标题】
音视频
唐僧洗头爱飘柔95274 小时前
【软考:程序员(01)】如何考得程序员证书?本片知识点:操作系统基本概念、操作系统的分类、进程管理、三态模型、信号量机制、同步与互斥模型
程序员·软考·实时操作系统·信号量机制·批处理操作系统·三态模型·同步与互斥模型
山海青风5 小时前
语音合成 - 用 Python 合成藏语三大方言语音
开发语言·python·音视频
m0_685535087 小时前
光学工程师面试真题
华为·光学·光学设计·光学工程·镜头设计
资料库018 小时前
华为OSPF详解
网络·华为
程序员老刘8 小时前
百度裁员N+3.5,程序员如何建立第二曲线
程序员·客户端·投资
qq 180809519 小时前
无人船的Smith - PID跟踪控制探索
harmonyos
文心快码BaiduComate9 小时前
我用文心快码Spec 模式搓了个“pre作弊器”,妈妈再也不用担心我开会忘词了(附源码)
前端·后端·程序员
嗝o゚9 小时前
Flutter跨平台游戏开发的技术创新
flutter·华为