MediaRecorder для экрана записи с форматом вывода Mpeg2_TS Ошибка сервера мультимедиа - PullRequest
1 голос
/ 31 января 2020

Для захвата экрана я перешел по ссылке ниже

https://www.truiton.com/2015/05/capture-record-android-screen-using-mediaprojection-apis/

Я изменил формат вывода на MPEG_2_TS. При запуске записи выдается следующая ошибка:

W/IMediaDeathNotifier: media server died

Ниже показано, как выглядит мой объект mediaRecorder.

private void initRecorder() {
        try {
            mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
            mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.SURFACE);
            mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_2_TS);

            mMediaRecorder.setOutputFile(getOutputFileName());
            mMediaRecorder.setVideoSize(DISPLAY_WIDTH, DISPLAY_HEIGHT);
            mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
            mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
            mMediaRecorder.setAudioSamplingRate(48000);
            mMediaRecorder.setVideoFrameRate(30); // 30
            mMediaRecorder.setVideoEncodingBitRate(3000000);
            mMediaRecorder.setAudioEncodingBitRate(128000);
            WindowManager window = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
            int rotation = window.getDefaultDisplay().getRotation();
            int orientation = ORIENTATIONS.get(rotation + 90);
            mMediaRecorder.setOrientationHint(orientation);
            mMediaRecorder.prepare();
            mVirtualDisplay = createVirtualDisplay();
            mMediaRecorder.start();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

private VirtualDisplay createVirtualDisplay() {

        return mMediaProjection.createVirtualDisplay("MainActivity", DISPLAY_WIDTH, DISPLAY_HEIGHT, mScreenDensity,
                DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR, mMediaRecorder.getSurface(), null, null);
    }

Любая помощь приветствуется !!

...