Пользовательский размер захвата с помощью Microsoft Expression Encoder

У меня есть строки кода C#, с помощью которых я могу записать экран. Но я не могу найти обходной путь для определения размера выходного видео. У меня разрешение экрана 1920х1080, хотя я пытаюсь назначить новый размер для записи. Оно остается неизменным. (Библиотека: Microsoft Expression Encoder, все зависимости включены)

Код, который я использовал в событии нажатия кнопки:

        ScreenCaptureJob _screenCaptureJob = new ScreenCaptureJob();
        Rectangle _screenRectangle = Screen.PrimaryScreen.Bounds;

        _screenCaptureJob.CaptureRectangle = _screenRectangle;
        _screenCaptureJob.ScreenCaptureVideoProfile.Size = new Size(600, 400); //By doing this Is it supposed to resize original size to 600x400 pixels?
        _screenCaptureJob.ScreenCaptureVideoProfile.AutoFit = true;
        _screenCaptureJob.ShowFlashingBoundary = false;
        _screenCaptureJob.ScreenCaptureVideoProfile.FrameRate = 20;
        _screenCaptureJob.CaptureMouseCursor = true;
        _screenCaptureJob.ScreenCaptureVideoProfile.SmoothStreaming = true;
        _screenCaptureJob.ScreenCaptureVideoProfile.Quality = 20;
        _screenCaptureJob.OutputScreenCaptureFileName = string.Format(@"C:\test.wmv");

        if (File.Exists(_screenCaptureJob.OutputScreenCaptureFileName))
        {
            File.Delete(_screenCaptureJob.OutputScreenCaptureFileName);
        }

        _screenCaptureJob.Start();

Заранее спасибо!

1 ответ

Что вам нужно сделать, это установить _screenRectangle для ваших пользовательских размеров:

_screenCaptureJob.CaptureRectangle = new Rectangle(0, 0, 600, 400);

Размер записи экрана можно оставить не назначенным.

Привет, Николай

Другие вопросы по тегам