如何在android中使用Mediaprojection库来捕获屏幕并转换成mp4文件?

cha*_*han 6 android android-mediarecorder android-mediaprojection

从Android 5.0开始,他们提供媒体投影库来捕获屏幕内容.但他们提供的示例演示应用程序并不清楚.您可以在此处找到示例应用.在该应用程序中,他们使用virtualdisplay方法投影捕获的屏幕

private void setUpVirtualDisplay() {
    Log.i(TAG, "Setting up a VirtualDisplay: " +
            mSurfaceView.getWidth() + "x" + mSurfaceView.getHeight() +
            " (" + mScreenDensity + ")");
    mVirtualDisplay = mMediaProjection.createVirtualDisplay("ScreenCapture",
            mSurfaceView.getWidth(), mSurfaceView.getHeight(), mScreenDensity,
            DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR,
            mSurface, null, null);
    mButtonToggle.setText(R.string.stop);
}
Run Code Online (Sandbox Code Playgroud)

我想将捕获的屏幕转换为mp4文件,用于我的屏幕录制应用程序.请帮我解决这个问题.

fad*_*den 1

您将 Surface 从 SurfaceView 传递到createVirtualDisplay(). 将其替换为MediaRecorder 中的 Surface