0

私は方法以下VideoFileアップロード経由のサムネイルを取得するためにMicrosoft.Expression.Encoder名前空間を使用しています:どのように信頼性の高いMicrosoft.Expression.Encoder.MediaItemですか?

MediaItem video = new MediaItem(file); 
       int Duration = video.FileDuration.Seconds; 
       using (var bitmap = video.MainMediaFile.GetThumbnail 
         (new TimeSpan(0, 0, (int)Duration/2), 
         new System.Drawing.Size(640, 480) 
        )) 
       { 
        bitmap.Save(Path.Combine(_fileDirectory, UniqueId + "_thumb.jpg")); 
       } 

コンストラクタ新しいMediaItem(ファイル).MOVファイル用などのQuickTime Player用のマシンにインストールされているネイティブのソフトウェアを必要と、私はQuickTimePlayerを使用してファイル情報を取得し、同時に各スレッドがQuickTimePlayerを同時に使用できるようになるたびに、毎分500件のビデオが毎分アップロードされるような場合、このシナリオはどれほど信頼できるでしょうか?

+0

これはちょっと奇妙な '新しいTimeSpan(0、0、(int)Duration^2)'ですか? – oleksii

+0

はい、正常に動作しています – Amrit

+0

正常に動作していますか?期間が4秒の場合、サムネイルを6秒目に取得しようとします.4^2 = 6、つまり1000:1000^2 = 1002と同じです。半分の時間に取得しようとしていますか? – oleksii

答えて

1

ほとんどの場合、自分でテストする必要があります。これを1つのスレッドと複数のスレッドで実行してみてください。スレッドを再利用できるので、おそらくスレッドプールを使用することをお勧めします。

ハードウェアがすべて異なっていて、同じアプリケーションが少し違った動作をすることがあるからです。たとえば、1つのビデオカードで2つの負荷を同時に実行できない場合があります。可能である。

PSビデオ処理(またはMicrosoft.Expression.Encoder名前空間)に関する知識はありません。

関連する問題