1

WMPLib に WindowsMediaPlayer が見つかりましたが、TimeCode は見つかりませんでした。

その方法を知っている人はいますか?

4

2 に答える 2

1

あなたの質問に対する答えは、ファイル内のストリームごとにIWMReaderTimecode::GetTimecodeRangeCountを呼び出す必要があるということだと思います。次に、各ストリームの各範囲に対してIWMReaderTimecode :: GetTimecodeRangeBoundsを呼び出して、各範囲のstartTimecodeとendTimecodeを取得します。

于 2012-12-05T17:12:06.293 に答える
0

これらの2つの記事を見て、C#でWMA / WMVメタ情報を取得し、C#でWindows Media Playerクラスを使用して現在のタイムコードを取得すると、次のことを試すことができます。

using WMPLib; // this file is called Interop.WMPLib.dll 

WindowsMediaPlayerClass wmp = new WindowsMediaPlayerClass(); 
IWMPMedia mediaInfo = wmp.newMedia("myfile.wmv"); 

Console.WriteLine("Duration = " + mediaInfo.duration); 

for (int i=0; i<mediaInfo.attributeCount; i++) { 
    Console.WriteLine(mediaInfo.getAttributeName(i) + " = " + 
    mediaInfo.getItemInfo(mediaInfo.getAttributeName(i)) ); 
} 

または、Controls.CurrentPositionStringプロパティを使用して現在の時刻を取得します。

Console.WriteLine(wmp.controls.currentPositionString);
于 2012-12-05T17:26:07.047 に答える