【发布时间】:2012-07-13 18:52:59
【问题描述】:
我正在尝试使用 openCVSharp 播放位图图像流以从 YUV 生成位图。但我无法将其显示为视频。
我发现了一些关于将其用作 AVI 包装器 here 的链接以及一些保存在硬盘上的链接,例如 here 和 FFMPEG 可能在 LINUX 上运行良好,但在 Windows 中不太好。
我什至尝试使用以下代码。但它只显示序列中的最后一帧,而且我没有使用 MediaElement 的 URI,因为位图是由我的程序生成的。
image.source = ToBitmapSource(bitmapImage);
在哪里
public static BitmapSource ToBitmapSource(System.Drawing.Bitmap bitmap){
IntPtr ip = bitmap.GetHbitmap();
BitmapSource bs = null;
bs = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(ip,
IntPtr.Zero, System.Windows.Int32Rect.Empty,
System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());
return bs;
}
我正在尝试播放视频(类似于流式传输)而不将其保存在计算机上。直接展示是必须的吗?我非常需要你的帮助,我的截止日期快到了!
【问题讨论】:
-
为什么,您不能使用 XNA 或 SlimDX 在屏幕上简单地显示它们吗?
-
我从未与他们中的任何一个合作过,您有任何相关链接吗?
-
我发现SlimDX和XNA都是高端游戏用的图形工具,不需要这么高的处理,只希望能把位图显示成视频就可以了跨度>
-
生成这些帧的速率是多少?
-
那么 - 如果您的 UI 已经可以渲染它,那么您想要做什么(为什么要将其转换为视频)?它已经显示出来了,对吗?