我在WindowsFormsHost
元素中,在WPF窗口内托管了VLC.DotNet窗口控件。这样做的原因,而不是使用Vlc.DotNet WPF控件是因为WinForms版本的性能比WPF版本好两倍。
无论如何,一切都很好,除了一个令人讨厌的细节;在 WinForms应用程序中使用WinForms版本时,渲染的视频将完全适合控件;但是,在WindowsFormsHost
元素中使用相同的控件会导致视频以原始大小呈现,而不适合控件。
这里有两件事要注意:
WinForms控件完全相同,所以在我看来,这种行为与它无关。
使用 Spy ++ 我已经设法在WinForms应用程序中查看控件的使用时间,渲染视频的矩形与控件的矩形大小完全相同本身,但是当在WPF应用程序中使用时,视频的重新录制(由VLC呈现并且我无法控制它)与控件的大小不同。相反,它与视频本身的大小相同。
任何人对WPF为什么会出现这种奇怪的行为有什么特别的想法?
任何建议将不胜感激。
非常感谢大家。
答案 0 :(得分:1)
最后,我设法找出导致问题的原因并解决了它!
我应该承认,问题与这些情况下出现的前2000件事情甚至没有太大关系!相反,它与我从未见过的最荒谬的事情有关!好吧,正如他们所说,它总是在你看的最后一个地方!
听起来很奇怪,问题与视频缩放有关!我需要缩放视频,显然,当您在vlc中设置缩放时,视频将不再适合容器。
就是这样!