【问题标题】:How to capture video in android with audio muted via default INTENT如何通过默认意图在android中捕获音频静音的视频
【发布时间】:2015-06-23 12:22:57
【问题描述】:

我想通过简单地打开默认录像机来捕获视频,但在捕获时必须禁用声音。 提前致谢。

 Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
 intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
 startActivityForResult(intent, RESULT_VIDEO_CAP);

【问题讨论】:

    标签: android android-intent video-capture


    【解决方案1】:

    ACTION_VIDEO_CAPTURE 协议中没有任何影响音频的内容。欢迎您使用AudioManager 自行更改音频设置,但也欢迎您启动的第三方应用更改音频设置,您无能为力。

    确保音频设置符合您的要求的唯一方法是使用MediaRecorder 自己录制视频。

    【讨论】:

    • 如果我跳过初始化mMediaRecorder.setAudioSource 应用程序崩溃,我如何在使用MediaRecoder 捕获视频期间将音频静音。
    • @Ryderz:“如何在视频捕获期间静音”- 使用 AudioManager 并更改音量。如果“静音”是指“阻止录音拾取音频”,我不知道这是可能的,但您应该能够对视频进行后处理以删除音轨。
    • thnxs 回复 .. 有没有我可以做到这一点的图书馆?我搜索了很多,但没有结果。
    • @Ryderz:“有没有我可以做到这一点的图书馆?” ——我不确定“那个”是什么。如果“那个”是从视频中删除音轨,如果您要将视频上传到服务器,我会在那里完成工作,因为您拥有更多的权力和灵活性。否则,请查看 Android 的 ffmpeg 端口之一是否可以做到。
    【解决方案2】:

    我完全同意 CommonsWare 的回答,这完全取决于第三方应用程序来接受参数,目前还没有第三方应用程序支持这个标签。

    据我所知,没有第三方视频录制应用程序支持该静音音频标签。您可以覆盖音频管理器服务和静音录制音量并开始视频录制意图,但不能保证第三方应用程序不会取消静音。另一种方法是使用 Surface 视图实现您自己的视频录制界面或捕获视频并使用任何库来静音其中的音频。

    【讨论】:

    • 我尝试通过-((AudioManager)context.getSystemService(Context.AUDIO_SERVICE)).setStreamMute(AudioManager.STREAM_SYSTEM,true); 将系统音量静音,但在从服务器访问视频时,我可以看到声音
    • 我们正在讨论如果第三方应用程序取消麦克风音量而不是在这种情况下您无法执行任何操作,请尝试实现自己的 Surface 视图来录制视频或从捕获的视频中提取和删除音频一次它在您的应用程序中收到 onActivityResult
    • 你能分享任何我可以通过的链接吗extract and remove audio from captured video once it received in your application onActivityResult
    • 我不确定,但这个帖子看起来很有用stackoverflow.com/questions/598771/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-11
    • 2016-03-31
    • 1970-01-01
    相关资源
    最近更新 更多