当前位置: 首页 > 知识库问答 >
问题:

如何以编程方式在android中创建视频

毕胡非
2023-03-14

我想创建一个应用程序,它可以将屏幕行为记录为视频,并以编程方式保存在设备上。有人能帮我吗?

共有2个答案

佟云
2023-03-14

对于有根的设备,您可以使用FFMPEG或JavaCV拍摄屏幕截图并根据这些屏幕截图制作视频。

实际上,这个话题已经讨论过好几次了。

下面是一个如何获得root访问权限并获得你的截图的例子。

if (Environment.MEDIA_MOUNTED.equals(Environment
        .getExternalStorageState())) {

    // we check if external storage is\ available, otherwise
    // display an error message to the user using Toast Message
    File sdCard = Environment.getExternalStorageDirectory();
    File directory = new File(sdCard.getAbsolutePath() + "/ScreenShots");
    directory.mkdirs();

    String filename = "screenshot_jpeg_" + i + ".png";
    File yourFile = new File(directory, filename);



    try {
        Process sh = Runtime.getRuntime().exec("su", null, null);
        OutputStream os = sh.getOutputStream();
        os.write(("/system/bin/screencap -p " + "/sdcard/ScreenShots/" + filename).getBytes("ASCII"));


        os.flush();
        os.close();
        sh.waitFor();
        i++;
    } catch (Exception e) {
        e.printStackTrace();
    }
}

您可以查看以下主题的其他解决方案,并在此处查看FFMPEG

郑星辰
2023-03-14

幸运的是,这是不可能的,除非在root设备上,出于明显的隐私和安全原因。应用无法记录其他应用在屏幕上显示的内容。

 类似资料:
  • 问题内容: 是否有免费的库可根据图像序列创建MPEG(或任何其他简单的视频格式)? 它也必须在Linux上运行,并且最好具有Python绑定。 问题答案: 我知道有一个mencoder(是mplayer项目的一部分)和ffmpeg,它们都可以做到这一点。

  • 我有一个充满自定义视图的应用程序。当我尝试以编程方式创建FAB时,它会抛出一个错误 原因:java.lang.IllegalArgumentException:您需要在设计库中使用theme.AppCompat主题(或后代)。

  • 问题内容: 我正在尝试以编程方式创建UIImage视图,我有一个新视图,并且尝试这样做 这行不通,因为我不知道 您 在第二行中应该看到的是什么。 问题: 如何通过编码而不是在情节提要中使UIImageView出现在屏幕上 问题答案: 首先,您从图片文件中创建一个,然后从中创建一个: 最后,您需要给出一个框架并将其添加到视图中以使其可见:

  • 我想以编程方式创建3x3网格视图以显示图像。我想通过获取屏幕尺寸来设置每个项目的高度和宽度。像: 然后每个项目 请有人帮助我或一些参考链接。

  • 我正尝试使用以下命令以编程方式创建:

  • 在Android/Java中,是否有任何代码示例以编程方式捕获具有每秒良好帧的计算机的屏幕截图并创建视频? 我想要一个教程或完整的源代码来做到这一点。我希望该程序可以使用设备,而无需“植根”设备。 播放商店中有一个名为”的应用程序可以执行此操作。但是您需要ROOT设备才能使其正常工作,因此我知道这是可以做到的。 在无root设备上捕获Android屏幕截图并以编程方式创建视频的最佳方法是什么?