私は Windows 8 ストア アプリを開発しています。この問題があります。ユーザーにファイル ピッカーからビデオを追加してもらいたいのですが、それを管理しました。問題は、スナップ ショットのように、GridView にビデオ イメージを表示することです。特定の位置のビデオ、メディア要素を試してみましたが、画像も機能せず、意味がありません。
3 に答える
少なくともいくつかのビデオで機能するはずの、他の場所で引用した独自のソリューション:
var thumb = await
storageFile.GetThumbnailAsync(
Windows.Storage.FileProperties.ThumbnailMode.PicturesView,
1000,
Windows.Storage.FileProperties.ThumbnailOptions.UseCurrentScale);
この問題に対する純粋な C# ソリューションは存在しない可能性があります。おそらく、SharpDX でそれが可能になるでしょうが、私は試したことがなく、以前に行われたかどうかもわかりません。これらの2つのスレッドを見ると:
TransferVideoFrame
--フレームをビデオ ストリームから DirectX テクスチャにコピーするために使用できる方法があることがわかります。メディア エンジン ネイティブ C++ ビデオ再生サンプルは、ネイティブで使用する方法を示しています。TransferVideoFrame+SharpDX を検索すると、C#でこのメソッドの SharpDX バージョンを使用するこのサンプルが見つかります。そのフレームをテクスチャに転送した後、こちらのようにおよびメソッドを使用して、テクスチャの内容を にコピーできます。hereを使用してファイルに保存するか、DirectX テクスチャから直接 WIC を使用してファイルに保存するか、ここのように SharpDX Toolkit と言うことができます。WriteableBitmap
Map
Unmap
BitmapEncoder
. リストを表示するたびにビデオを処理する必要がないように、おそらくサムネイルのキャッシュを構築することをお勧めします。