GroupDocs.Metadata を使用した Java のビデオメタデータ抽出
モダンなメディアリッチアプリケーションにおいて、extract video metadata java はインデックス作成、検証、動画資産の動的処理に不可欠な要件です。カタログサービス、ビデオ編集スイート、デジタルアセット管理(DAM)システムを構築する場合でも、AVI ヘッダー情報を迅速に読み取ることで手作業の時間を大幅に削減し、実行時エラーを防止できます。このチュートリアルでは、AVI ファイルを読み込み、幅と高さを取得し、GroupDocs.Metadata for Java を使用して追加のヘッダー項目にアクセスする方法を解説します。
クイック回答
- ビデオメタデータ抽出で何が可能になるか? デコードせずに解像度、フレーム数、コーデック、再生時間などのプロパティを取得できます。
- AVI の取り扱いを簡素化するライブラリはどれか? GroupDocs.Metadata for Java は 50 以上のビデオおよびドキュメント形式をサポートする統一された純粋 Java API を提供します。
- 試用にライセンスは必要か? はい – 開発・テスト用に無料トライアルまたは一時ライセンスが利用できます。
- Maven でライブラリを追加できるか? もちろんです。Maven の座標は下記に示しています。
- ビデオの寸法を抽出できるか? はい – ファイルを開いた後に
getHeader().getWidth()とgetHeader().getHeight()を呼び出します。
AVI ファイルから Java でビデオメタデータを抽出する方法
AVI ファイルをロードし、ヘッダーを読み取り、数行のコードで幅と高さの値を取得します。この直接的な回答段落では、Metadata クラスをファイルパスでインスタンス化し、getHeader() で AviHeader オブジェクトを取得し、getWidth() と getHeight() プロパティを読む手順を示します。API はヘッダー部分のみを触れるため、マルチギガバイトの動画でも高速かつメモリ効率が高いです。
ビデオメタデータ抽出とは?
ビデオメタデータ抽出は、動画コンテナのヘッダーに格納されたコーデック、解像度、フレームレート、再生時間などの記述情報をプログラム的に取得することです。このデータはメディア全体をストリーミングせずに即座に利用でき、インデックス作成、検証、条件付き処理を Java アプリケーションで迅速に行えます。
なぜ GroupDocs.Metadata for Java を使用するのか?
GroupDocs.Metadata は 純粋 Java、依存関係なし のソリューションで、デスクトップユーティリティからクラウドマイクロサービスまであらゆる JVM 上で動作します。50 以上の入力・出力形式(AVI、MP4、MOV、WMV、FLV、画像シーケンスなど)をサポートし、10 GB を超えるファイルでも全体をメモリにロードせずにヘッダーセクションを読み取れます。さらに、トライアル、臨時、永続ライセンスといった柔軟なライセンス形態も提供しています。
前提条件
- GroupDocs.Metadata for Java(バージョン 24.12 以降)
- JDK 8 以上(JDK 11 推奨)
- Maven 3.6+ または 手動で JAR をダウンロード
- Java I/O と例外処理の基本的な知識
GroupDocs.Metadata for Java の設定
Maven を使用する場合
pom.xml に以下の依存関係を追加してください。このスニペットは Maven Central から最新の安定版を取得します。
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/metadata/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-metadata</artifactId>
<version>24.12</version>
</dependency>
</dependencies>
直接ダウンロード
手動で設定したい場合は、公式リリースページから JAR をダウンロードします。
GroupDocs.Metadata for Java releases
ライセンス取得手順
- 無料トライアル: トライアルライセンスをダウンロードして実験を開始します。
- 一時ライセンス: 購入せずに拡張テストを行うための一時キーをリクエストします。
- フルライセンス: GroupDocs から正式ライセンスを購入します: GroupDocs
基本的な初期化と設定
Metadata クラスはすべてのファイルレベル操作のエントリーポイントです。ファイルを開き、形式を検証し、AviHeader などの形式固有オブジェクトを公開します。
import com.groupdocs.metadata.Metadata;
// Initialize Metadata object with the path to your AVI file.
try (Metadata metadata = new Metadata("path/to/your/file.avi")) {
// Your code for handling metadata goes here.
}
ビデオメタデータ抽出: AVI ヘッダー属性の読み取り
概要
このセクションでは、AVI ファイルからビデオの寸法やその他の主要プロパティを読み取る方法を示します。ヘッダーのみを対象とするため、大規模バッチジョブに適しています。
手順 1: 必要なクラスをインポート
Metadata と AviHeader がコアクラスです。ファイル操作の前にインポートしてください。
import com.groupdocs.metadata.Metadata;
import com.groupdocs.metadata.core.AviRootPackage;
手順 2: AVI ファイルを開く
AVI ファイルへのパスを指定して Metadata をインスタンス化します。コンストラクタがファイルを検証し、ヘッダーオブジェクトの読み取り準備を行います。
try (Metadata metadata = new Metadata("YOUR_DOCUMENT_DIRECTORY/InputAvi.avi")) {
// Code to access AVI properties.
}
手順 3: AVI ヘッダー属性にアクセス
getHeader() は AviHeader インスタンスを返します。ここから getWidth()、getHeight()、getFrameRate() などの getter を呼び出して数値メタデータを取得できます。
AviRootPackage root = metadata.getRootPackageGeneric();
String aviHeaderFlags = root.getHeader().getAviHeaderFlags();
int height = root.getHeader().getHeight();
int width = root.getHeader().getWidth();
long totalFrames = root.getHeader().getTotalFrames();
手順 4: 属性を表示
取得した値を System.out.println で出力するか、任意の downstream ワークフローに組み込んでください。
System.out.println("AVI Header Flags: " + aviHeaderFlags);
System.out.println("Width: " + width + ", Height: " + height);
System.out.println("Total Frames: " + totalFrames);
ビデオ幅(java)取得方法
幅は aviHeader.getWidth() で取得でき、横方向のピクセル数が返されます。幅を把握することで、アップスケール、ダウンスケール、または解像度要件に合わない動画の除外判断が可能です。
ビデオ高さ(java)取得方法
高さは aviHeader.getHeight() で取得します。この値を使ってアスペクト比を計算したり、正しいサイズのサムネイルを生成したり、公開プラットフォームの最低高さ基準を適用したりできます。
特定フォーマット向けメタデータ管理
概要
AVI 以外にも、GroupDocs.Metadata は汎用的な Metadata API を提供し、数十のフォーマットに対応しています。フォーマット固有のコードを書かずにメタデータの読み取り、編集、削除が可能です。
手順 1: メタデータ管理クラスを準備
対象ファイル用に Metadata インスタンスを作成し、ファイルタイプに応じて getAviHeader()、getMp4Header() などの適切なメソッドを呼び出します。
import com.groupdocs.metadata.Metadata;
public class MetadataManagement {
public static void run(String documentPath) {
try (Metadata metadata = new Metadata(documentPath)) {
// Obtain root package for specific file format.
// Example for image files:
// ImageRootPackage imageRootPackage = metadata.getRootPackageGeneric();
// Perform operations such as reading or updating metadata.
}
}
}
実用例
- メディアアーカイブ: AVI の寸法を自動抽出して検索可能なカタログを構築し、解像度で資産を迅速に取得できるようにします。
- ビデオ編集ソフトウェア: ソース動画の幅・高さ・フレームレートに基づいてタイムライン、オーバーレイ、エフェクトを動的に調整します。
- デジタルアセット管理(DAM): 正確なビデオプロパティで資産レコードを強化し、たとえば「幅が 1920 px 以上の動画」などの高度なフィルタリングを実現します。
パフォーマンス考慮事項
- 対象 I/O: ヘッダー バイトのみを読み取るため、マルチギガバイトファイルでも数キロバイト程度のディスクアクセスに抑えられます。
- メモリ使用量: API は Java の try‑with‑resources パターンを使用してストリームを自動的に閉じ、リークを防止します。
- バッチ処理: 数千本の動画を処理する際は、スレッドごとに単一の
Metadataインスタンスを再利用し、並列処理で CPU 利用率を最大化します。
よくある問題と解決策
- ファイルパスが正しくない:
new Metadata(...)に渡すパスが実在する AVI ファイルを指しているか確認してください。存在しない場合はFileNotFoundExceptionがスローされます。 - サポート外コーデック: 稀な AVI コーデックはすべてのヘッダー項目を公開しないことがあります。その場合ライブラリはデフォルト値(例: 0)を返します。
- ライセンスエラー: ライセンス例外が発生したら、トライアルまたは一時ライセンスファイルがプロジェクトルートに配置され、
License.setLicense("license_path")で参照されているか確認してください。
FAQ
Q: GroupDocs.Metadata for Java とは何ですか?
A: 50 以上のファイル形式(AVI、MP4 などのビデオコンテナを含む)に対して、メタデータの読み取り、編集、削除を可能にする純粋 Java ライブラリです。
Q: ライセンスを購入せずに GroupDocs.Metadata を使用できますか?
A: はい – 無料トライアルまたは一時ライセンスで開発・テスト時にフル API が利用可能です。本番環境では永続ライセンスが必要です。
Q: ライブラリ追加は Maven のみですか?
A: いいえ。リリースページから JAR をダウンロードし、クラスパスに手動で追加することもできます。
Q: どのビデオ形式がメタデータ抽出に対応していますか?
A: AVI、MP4、MOV、WMV、FLV、MKV など多数。完全な一覧は公式ドキュメントをご参照ください。
Q: 非常に大きなビデオファイルを効率的に扱うには?
A: ヘッダー情報のみを読むストリーミング API を使用し、必ず try‑with‑resources でリソースを閉じてメモリ使用量を抑えてください。
結論
このガイドを通じて、GroupDocs.Metadata を使用した extract video metadata java の完全な実装方法を習得しました。幅や高さといったヘッダー属性を読み取ることで、インテリジェントなメディアワークフローを実現し、品質基準を強制し、堅牢なカタログシステムを構築できます。同じ API を MP4、MOV など他の形式でも活用し、Java マルチメディアツールキットを拡張してください。
リソース
- ドキュメント: GroupDocs Metadata Documentation
- API リファレンス: GroupDocs API Reference
- ダウンロード: Latest Releases
- GitHub リポジトリ: GroupDocs.Metadata GitHub
- 無料サポートフォーラム: GroupDocs Free Support
- 一時ライセンス取得: Obtain Temporary License
最終更新日: 2026-10-06
テスト環境: GroupDocs.Metadata 24.12 for Java
作者: GroupDocs