解决“WinformHost总是把WPF控件挡在后面”
参考:
WPF里面嵌套WinformHost,会一直显示在最上面。winform和wpf绘制机制不一样,无法叠加的。
也就是说,直接在WPF程序传递的Hwnd上绘制的视频是无法叠加控件的。
如果非要在视频上叠加控件,可以使用writeablebitmap绘制图像的方式呈现视频,这里给两个方案:
- 如果能拿到摄像机的视频流的话,用ffmpeg库解码,将图像绘制到writeablebitmap上去。
- 在其它隐藏的进程或窗口中提供hwnd呈现视频,同时将呈现视频后的图像写入到writeablebitmap中去。
方案1是我用过的,基本上就是自己写一个视频播放器了。 但需要拿到摄像机的h264码流,同时使用ffmpeg解码,工作量较大,但它是可控性最好,最灵活的方案了。
方案2只是一个思路,没有试过,但就算可行工作量也不小。
另外还有一个方案,3.如果该摄像头有web播放的方案的话,直接用浏览器播放,然后在WPF程序中嵌入浏览器控件。这个应该是工作量最小的。
强烈统一您的第三种方法,就是通过web播放,然后再WPF程序中潜入浏览器控件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2015-08-06 C#:数据交互