Microsoft.Expression.Encoderで動画のフレーム画像を取得

公開日: : Blog, Microsoft , ,

動画ファイルから指定したフレーム画像を取得する。
Microsoft.Expression.Encoderを使う方法。

Microsoft Expression Encoder 4

Microsoft.Expression.Encoder.AudioVideoFileクラス

AudioVideoFileコンストラクタにファイルパスを渡す。
エンコードはSDK側でやってくれる。(MOVファイルの場合は多分QuickTimeのインストールが必要)

AudioVideoFileインスタンスからはフレームレート、解像度、フレーム数などが取得できる。

AudioVideoFile.GetThumbnailメソッド

GetThumbnailメソッドでBitmapインスタンスを取得する。
ThumbnailGeneratorを通して同じことも出来る。
今回困ってるのは、1フレームの切り出しに0.3秒ほどかかってしまうこと。
もっと高速に出来る方法、SDKなどないかなぁ。

//using Microsoft.Expression.Encoder;
static void Main(string[] args)
{
    var videoFile = new AudioVideoFile(@"C:\Users\xxxx\sample.mov");

    //var frameRate = videoFile.VideoStreams[0].FrameRate;
    //var videoHeight = videoFile.VideoStreams[0].VideoSize.Height;
    //var videoWidth = videoFile.VideoStreams[0].VideoSize.Width;
    //var total = videoFile.Duration.TotalMilliseconds;

    var thumbnail = videoFile.GetThumbnail(
        TimeSpan.FromMilliseconds(1000),
        videoFile.VideoStreams[0].VideoSize);

    thumbnail.Save(@"C:\Users\xxxx\sample.bmp");
}

関連記事

no image

UWPのScrollViewerでスクロール位置の同期を行うメモ

複数のScrollViewerのスクロール位置を同期したい場合、WPFではScrollChanged

記事を読む

Visual Studio から Android SDK Managerが起動できない

Android SDKやエミュレーターイメージのアップデートを行いたい場合にAndroid SDK

記事を読む

no image

Xamarin.Forms で Opacityを設定したGridの表示・非表示を切り替えると、Androidで例外が発生する(Xamarin.Forms 2.3.3.193)

Xamarin 2.3.3.163 あたりから発生するようになったバグ情報があり 実行環境は 2.3

記事を読む

Visual Studio Team Services ダッシュボードを自動更新する

Visual Studio Team Services のダッシュボードでプロジェクトや運用状況のサ

記事を読む

Xamarin.Forms で NavigationPage を PushModalAsync すると例外が発生するときがある

Forms 2.3.4.231 Mapコントロールがあるページで、NavigationPage

記事を読む

no image

UWPとAzure Web AppsでOData

超メモ。走り書き。 Azure上にSQLデータベースコードファーストなAPIをODataで作成する。

記事を読む

no image

Raspberry Pi 3 Model B 各OS、動画プレイヤーでの再生比較

ベンチマークではなく、ただ感想をメモしただけ。 Windows 10 IoT Core C#

記事を読む

no image

Expression Encoder を組み込んだアプリケーションを配布する際のライセンス問題

Windowsアプリケーションにメディア編集機能を実装したい場合に、Expression Encod

記事を読む

no image

【C#, WPF】XMLデータをListViewに表示し、チェック項目のみXML保存させる

前回の続きというか、WPF版。 <Window x:Class="MyWP

記事を読む

【XAML】フォントサイズを自動縮小して全体を表示

Viewboxを親にするだけ。 拡大・縮小方法はStretch, StretchDirec

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑