【静音录制视频后播放问题】

静音录制视频使用相册播放提示错误,但仍可正常播放

现象

录制视频时,选择静音录制,录制完成后使用谷歌相册播放视频,提示视频无法播放,但是视频可以正常播放。

分析

在选择静音录制时没有设置音源,所以录制时无音轨。播放时如果没有对无音轨视频做处理,播放时会有错误提示。

解决方案

在选择静音时,同选择MIC录音设置音源,并通过AudioManager设置MIC静音,以此实现静音录制视频。
设置setMicrophoneMute需要在清单文件注册权限,否则无法修改

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

静音MIC实现:

/**
 * Mute the microphone
 */
private void setMicMute() {
    Log.i(TAG, "setMicMute");
    mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
    if (mAudioManager != null) {
        mIsMicMuted = mAudioManager.isMicrophoneMute();
        Log.i(TAG, "mIsMicMuted = " + mIsMicMuted);
        mAudioManager.setMicrophoneMute(true);
    }
}

/**
 * restore MIC state
 */
private void restoreMic() {
    Log.i(TAG, "restoreMic");
    if (mAudioManager != null) {
        mAudioManager.setMicrophoneMute(mIsMicMuted);
        mAudioManager = null;
    }
}

在MediaRecorder.start()后调用setMicMute;在MediaRecorder.stop()后恢复MIC之前的状态。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值