---------------------------------------------------------------------- Const VideoGUID As String = "{73646976-0000-0010-8000-00AA00389B71}"
MediaDet.Filename="*****.mpg"
For i As Integer = 0 To MediaDet.OutputStreams - 1 MediaDet.CurrentStream = i StreamType = MediaDet.StreamTypeB If StrComp(StreamType, VideoGUID, vbTextCompare) = 0 Then Exit For Else Return End If Next
分類:[.NET]
VB.NETを利用して,動画ファイルからポスターフレーム(サムネイル)の取得を
考えています。
現在以下の方法でwmv,aviについてはうまくポスターフレームが取得できるので
すが,mpeg,mpeg2をファイルに指定するとうまくうごきません。
----------------------------------------------------------------------
Const VideoGUID As String = "{73646976-0000-0010-8000-00AA00389B71}"
MediaDet.Filename="*****.mpg"
For i As Integer = 0 To MediaDet.OutputStreams - 1
MediaDet.CurrentStream = i
StreamType = MediaDet.StreamTypeB
If StrComp(StreamType, VideoGUID, vbTextCompare) = 0 Then
Exit For
Else
Return
End If
Next
MediaDet.WriteBitmapBits(Position, Width,Height, OutputFile)
-----------------------------------------------------------------------
ストリーム数の判定で,wmv,aviについてはビデオとオーディオをあわせて「2」
という数値が取得できるのですが,mpegファイルについてはオーディオのみで
「1」としかなりません。ビデオストリームが無いと判断されているようです。
この辺りが原因のような気がしますが,どのような工夫をすればよいでしょうか。
ちなみにmpeg2のデコーダーはインストールされています。