2013-07-31 61 views
0

我需要从视频缩略图,MediaElement的渲染不MediaElement的窗户RT工作

为此,我了解那里玩是Windows RenderTargetBitmap 8.1 API

RenderTargetBitmap a = new RenderTargetBitmap(); 
await a.RenderAsync(myMedia); 
thumb.Source = a; 

和第二种方式我的帮助下得到了WinRTXamlToolkit.Composition工具包,它确实与WriteableBitmapRenderExtensions rendring

WriteableBitmap w = await WriteableBitmapRenderExtensions.Render(myMedia); 
thumb.Source = w; 

这两种方法都与所有的UIElement工作,但不与的MediaElement

只有黑色屏幕可见时,源这Image对象。

任何人都可以告诉我为什么吗?我怎样才能从视频中缩略图?

回答

0

看来您提到的方法在这方面可能会受到限制。我仍然会尝试使用RenderTargetBitmap,但在MediaElement上覆盖一些东西。我相信,如果您将任何东西放置在MediaElement的顶部,例如0.01不透明,1x1大小的黑色矩形 - 它将切换到RenderTargetBitmap可能呈现的某种不同渲染模式下运行。否则,我认为有人在这里讨论了从视频流中捕获帧的问题。 IIRC是一个非常相关的过程,涉及使用DirectX或Media Foundation以及相当多的本地代码。

+0

我只需要捕获所需的帧在Windows商店应用,看似简单却做不到尚未:( – Abhishek

+0

菲利普,这是一个辉煌的建议,让我尝试了这一点,就会回来不久! – sumitkm

+0

@Filip没有运气,即使您在媒体元素的顶部组合了具有某种不透明度的画布,仍不会捕获MEdia元素的内容。 – sumitkm