在windows media foundation中可以使用Video capture捕获桌面屏幕。
阅读Windows开发人员指南后,它似乎用于从设备(如相机或其他外部设备)捕捉视频。
如果是,它是硬件加速API还是软件基础?可以在用于屏幕捕获的Windows媒体基础中捕获视频吗?
0
A
回答
1
对于桌面屏幕截图,您应该查看通过IDXGIOutputDuplication实现的输出重复功能。你所要做的就是获得你需要的视频适配器的DXGI对象,枚举输出以找到需要的输出(或者全部如果你从多个屏幕同时捕获)并通过调用IDXGIOutput1::DuplicateOutput复制它。通过复制功能,您可以访问可以映射到CPU可读内存的GPU视频表面 - 因此,它可以加速。
Here是Microsoft在此问题上的完整示例。
0
我看到你需要解决非常具体的任务,我认为有一个解决方案非常接近你的需求。现场“CodeProject”中有文章“CaptureManager SDK”。它包括由Media Foundation提供的流式桌面屏幕和输出扬声器缓冲区的有趣示例代码。它可以通过MP4格式流式传输到网页浏览器。我认为你可以发现它很有趣。
相关问题
- 1. Iphone屏幕视频捕获
- 2. windows屏幕捕获
- 3. 在windows窗体中捕获openCV视频
- 4. 3GS的iPhone视频屏幕捕获
- 5. 捕获视频在Windows Phone 8中的屏幕活动
- 6. Java实时视频捕获/流媒体
- 7. Windows媒体基础:拔下音频捕获设备返回错误事件
- 8. 如何在HTML 5中捕获屏幕(以视频格式)?
- 9. 以编程方式在iOS中捕获屏幕视频
- 10. 捕获屏幕
- 11. 捕获屏幕
- 12. 可以在XCode中捕获300dpi的屏幕吗?
- 13. 推荐用于演示屏幕视频捕获
- 14. 使用DirectX捕获Windows上的屏幕
- 15. 屏幕捕获在IOS中
- 16. 在Go中捕获屏幕?
- 17. 使用ffmpeg捕获Windows屏幕
- 18. 在Android的屏幕捕获
- 19. HTML5捕获屏幕
- 20. 捕获android屏幕
- 21. 屏幕捕获API
- 22. PowerShell屏幕捕获
- 23. 登录屏幕中的屏幕捕获
- 24. Java:用于屏幕捕获的API
- 25. 用于屏幕捕获的Rails gem
- 26. 使用英特尔媒体SDK将屏幕捕获至h.264
- 27. 捕获屏幕图像而不捕获屏幕捕获垃圾邮件
- 28. 捕获android屏幕并以编程方式创建视频
- 29. 在Windows XP中的后台进程中捕获屏幕视频C#.NET
- 30. 从Windows服务的屏幕捕获
谢谢@Rudolfs,是的,我知道DXGI。 DXGI是否使用媒体基础的[视频捕捉](https://msdn.microsoft.com/en-us/library/windows/desktop/dd940439(v = vs.85).aspx)?或者这个类如何与DXGI相关?并且DXGI在Windows 7中不受支持。 – anurudh
@anurudh - 这与视频捕获无关。 DXGI通过Direct3D而不是Media Foundation工作。是的,它不支持Windows 7 - 你必须使用Windows 7的旧方法。 –
好的。我还在等待答案,视频采集可以用于屏幕捕获吗? – anurudh