Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用.NET技术录制屏幕视频_C#_.net_Video_Capture_Video Capture - Fatal编程技术网

C# 使用.NET技术录制屏幕视频

C# 使用.NET技术录制屏幕视频,c#,.net,video,capture,video-capture,C#,.net,Video,Capture,Video Capture,是否有一种使用.NET技术记录屏幕(桌面或窗口)的方法 我的目标是自由。我喜欢CPU使用率低、简单的想法,但是如果他们创造了更好的最终产品,会考虑其他选择。 简而言之,我知道如何用C#截图,但如何将屏幕或屏幕区域录制为视频 非常感谢你的想法和时间 有一个dll可以做这件事。我不记得它的名字了,但它是被人用过的。我的一个朋友用那个dll在几分钟内实现了一个屏幕记录器,只是为了测试。查看Jing,您可能会找到他们使用的dll。不需要第三方dll。此简单方法将当前屏幕图像捕获到.NET位图对象中

是否有一种使用.NET技术记录屏幕(桌面或窗口)的方法

我的目标是自由。我喜欢CPU使用率低、简单的想法,但是如果他们创造了更好的最终产品,会考虑其他选择。 简而言之,我知道如何用C#截图,但如何将屏幕或屏幕区域录制为视频


非常感谢你的想法和时间

有一个dll可以做这件事。我不记得它的名字了,但它是被人用过的。我的一个朋友用那个dll在几分钟内实现了一个屏幕记录器,只是为了测试。查看Jing,您可能会找到他们使用的dll。

不需要第三方dll。此简单方法将当前屏幕图像捕获到.NET位图对象中

    private Image CaptureScreen()
    {
        Rectangle screenSize = Screen.PrimaryScreen.Bounds;
        Bitmap target = new Bitmap(screenSize.Width,screenSize.Height);
        using(Graphics g = Graphics.FromImage(target))
        {
            g.CopyFromScreen(0,0,0,0,new Size(screenSize.Width,screenSize.Height));
        }
        return target;
    }

我相信,如果需要的话,您可以找到捕获屏幕较小部分的方法:-)。

您可以使用Windows media Encoder SDK构建一个c#应用程序来记录屏幕。有内置选项可记录整个桌面、特定窗口或屏幕的一部分。

您可以使用Media Encoder SDK,但Windows 7不支持它。

您可以尝试此开源实用程序:ScreenRecord()
它是基于forge.NET的

我正在尝试查看jing项目。我的印象是,jing对你可以录制的时间有限制。也许这个限制就建立在你所说的dll中。此外,它可能不在gpl/lgpl之下,因此严格来说它可能不是“免费的”。在jing许可协议中:组件分离-[…]其组件不可分离使用[…]。我的建议是:安全。试着在谷歌上搜索:c#屏幕截图只是确保每个人都明白目标是录制屏幕的视频,而不是简单的位图屏幕截图。我对该dll的许可协议一无所知。它可能不是开源的,甚至不是免费的。但它确实录下了屏幕上的视频。我用的是Jing,作品很棒。但它只能在.NET4或3上运行。我想把它用于.net 2。谢谢,很抱歉,我没有说清楚,我想录制屏幕的视频。我考虑过这个选项,只是把位图串在一起。我只是“假设”还有更“罐装”的东西。有点像你不应该推出自己的安全API,已经有更好的东西了。为了节省人们的搜索时间,你需要对上面代码的
System.Windows.Forms
System.Drawing
的引用。这个答案不应该被接受。只有链接的答案应该作为注释发布。无论如何,如果某一天链接发生变化,你的答案将无效。至少在回答中提到实用程序的名称,这样即使链接断开,也可以对其进行搜索。