カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

動画ファイル(.avi)の長さ(総時間)を取得する

この記事は最終更新日から1年以上経過しています。

Windowsエクスプローラーにてファイルのプロパティの概要タブで確認できる内容を取得する。
AVIやMP3には付加情報(ID3タグ情報)が格納されている。

※この方法は簡易的なものでID3.orgで規定されているフォーマットに沿って読み出すのとは異なり、主要な項目のみ取得するものである。

まず、このプログラムにはShell32.dllを使用します。
1.[参照設定の追加]より、[COM]タブの「Microsoft Shell Controls And Automation」を追加する。
2.usingディレクティブにShell32を記述。

プログラムソース

using Shell32;

// ShellClassクラスのインスタンス生成
ShellClass shell = new ShellClass();
// Folderインターフェイス
Folder f;
// FolderItemインターフェイス
FolderItem item;

FileInfo fInfo;

fInfo = new FileInfo([ファイルのフルパス]);

f = shell.NameSpace(fInfo.DirectoryName);
item = f.ParseName(fInfo.Name);

Console.WriteLine(f.GetDetailsOf(item, 21)); // 長さが格納されたインデックス

Application.DoEvents();

上記の「f.GetDetailsOf(item, 21)」にて長さを取得することができます。

※Exif情報の取得とはまた異なります。

この記事がお役に立ちましたらシェアお願いします
10,617 views

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です