从 opengl 录制视频
我正在使用Tao框架,并且有一个简单的opengl控件。
如何从此控件录制视频并将其保存到文件中?
I am using Tao framework and I have a simple opengl control.
How can I record a video from this control and save it to a file?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
请参阅此处 的链接提到了 C# 中的位图屏幕捕获并开始描述 AVI 转换。
有关第一个链接中用于从位图图像集合创建 avi 文件的库的更多信息,请参阅 此处。
请参阅此处查看使用媒体播放器编码器来录制屏幕的示例。
更复杂和直接的方法是使用视频捕获卡或编写一个模拟视频捕获卡的软件设备,并使用 DirectShow.Net 或直接 Pinvoking 其他 DirectShow 库将该源提供给 DirectShow 过滤器。
See here for a link that mentions both Bitmap screen capture in C# and starts to describe the AVI conversion.
For further information about the library used to in the first link to make an avi file from a collection of bitmap images see here.
See here for an example that uses the Media Player Encoder in order record the screen.
The more complicated and direct way would be to either use a video capture card or write a software device that emulates one and feed that source to DirectShow filter using DirectShow.Net or Pinvoking other DirectShow libaries directly.
使用 glReadPixels 获取像素数据。将像素数据输入视频编码器(例如 DirectShow 过滤器图,或通过 ffmpeg/libavcodec 或将图像汇总到文件中,然后将其编码为视频)。
Use glReadPixels to get the pixel data. Feed the pixel data into a video encoder (e.g. a DirectShow filter graph, or through ffmpeg/libavcodec or sump the images into files and encode them to video later).