VB.NET DirectShowで早送りとコマ送り
前回の「DirectShowで動画再生」の続き
もちろん、DirectShowの.NET用ライブラリ「DirectShowLib」を使用。
早送りもコマ送りもライブラリを使用することで簡単にできる。
Private Sub 早送り_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
‘IMediaSeekingインターフェースを使用
Dim mediaSeeking As IMediaSeeking
mediaSeeking = DirectCast(fg, IMediaSeeking)
mediaSeeking.SetRate(2.0) ’2倍速
End Sub
Private Sub コマ送り_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
‘IVideoFrameStepインターフェースを使用
Dim videoFrameStep As IVideoFrameStep
videoFrameStep = DirectCast(fg, IVideoFrameStep)
videoFrameStep.Step(1, Nothing) ’1コマ
End Sub
ライブラリ様様。
メモ:DirectShow リファレンス
MSDN – IVideoFrameStep インターフェイス
MSDN – IMediaSeeking インターフェイス