すべての単一フレームを必要としないため、mp4ファイルをリアルタイムより高速に抽出および分析しようとしています。UWPでのmp4ファイルからの高速フレーム抽出
私は、次の試してみました:任意の処理の前に1fpsについて私に与えた
composition.GetThumbnailAsync(TimeSpan.FromSeconds(i),160,90,VideoFramePrecision.NearestKeyFrame);
。
mediaPlayer.PlaybackSession.PlaybackRate = x;
ここで、xは動画ごとに異なっています。 x = 2までスムーズに60fpsの再生を再生する場合もあれば、1fpsになる場合もあります。それぞれが実際に(そう良くも悪くもファイルに依存)に行われた後、すべての次のフレームが到着したが、それはまだ無駄にされていることを確認しますmediaPlayer_VideoFrameAvailable
にmediaPlayer.StepForwardOneFrame();
とmediaPlayer.IsVideoFrameServerEnabled = true;
を設定
最良の結果は MediaPlayerのと一緒にいました私は各フレームを取得しているので、リソースは> 5フレームごとに必要です。
私はそれがすべてキーフレームまたは "I"フレームに関連していると思いますが、それらを取得する方法はないと思います。
一度にnフレームをスキップしながらフレームを高速化する方法はありますか?