前提・実現したいこと
WPF/C# にて映像再生ソフトウェアを開発中です。
映像を再生する際 MediaElementを使用して映像の表示を行っています。
2つ以上の映像を再生させ、1つのSliderでタイムラインを制御する場合
全てのメディアを同時に再生させ一時停止し再度再生等をできるように考えています。
発生している問題
しかし、複数のメディアを同時再生させると再生時(一時停止後の再生も含む)に最大約50ms程度のずれがランダムに発生してしまいます。
現在は1つのMediaElementのTickを基準にほかのMediaElementを制御していますが、
再生時に使用する、
cs
1MediaElement.Play();
を実行すると読み込みに多少のラグが発生することを確認しており、これが主要な原因かと考えています。
→複数の異なるソースの映像を延滞無く同時に再生(一時停止後の再生も含む)させるためにはどのようにすればよいでしょうか?※音声は無し
補足情報
Sliderの最大値は基準のMediaElementの総Tick数に設定してあり、
スライダーが動かし終わるとすべてのメディアの再生位置をSliderの現在の値に置き換えるという処理を行っています。↓
cs
1MediaElement.Position = TimeSpan.FromTicks((long)slider.Value);
開発環境はVisualStudio2019 C# WPF です。
回答1件
あなたの回答
tips
プレビュー