C# 使用Microsoft Expression Encoder自定义捕获大小

C# 使用Microsoft Expression Encoder自定义捕获大小,c#,video-capture,expression-encoder,screen-recording,expression-encoder-4,C#,Video Capture,Expression Encoder,Screen Recording,Expression Encoder 4,我有几行C#代码,可以用来记录屏幕。 但我找不到一个解决方法来确定自定义视频输出大小。 我的屏幕分辨率是1920x1080,尽管我尝试为记录指定新的大小,但它保持不变。 (库:Microsoft Expression Encoder,包含所有依赖项) 我在按钮单击事件中使用的代码: ScreenCaptureJob _screenCaptureJob = new ScreenCaptureJob(); Rectangle _screenRectangle = Sc

我有几行C#代码,可以用来记录屏幕。 但我找不到一个解决方法来确定自定义视频输出大小。 我的屏幕分辨率是1920x1080,尽管我尝试为记录指定新的大小,但它保持不变。 (库: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();

提前谢谢

您需要做的是将屏幕矩形设置为自定义尺寸:

_screenCaptureJob.CaptureRectangle = new Rectangle(0, 0, 600, 400);
屏幕录制大小可以不指定

您好,
尼古拉

上面的代码只获得屏幕的前600和400像素。它不会将捕获扩展到600x400