オーディオおよびビデオマルチメディアの保存に使用されるRIFFファイルコンテナ形式。チャンクに保存されたこのデータには、作成日、著作権情報、アーティスト、コメントなどの多くの情報を含めることができます。メタデータとRIFFINFOをプログラムで操作できます。この記事では、開発者がJavaのWAVオーディオファイルからメタデータとRIFFINFOをプログラムで抽出する方法について説明します。

この記事では、次のトピックについて簡単に説明しています。

メタデータとRIFFINFOを管理するためのJavaAPI

GroupDocs.Metadata for Javaは、さまざまなドキュメントおよび画像ファイル形式のメタデータ自動化および操作APIです。このAPIを使用して、WAVファイルからメタデータとRIFFINFOを抽出します。 APIは、オーディオWAVファイルに加えて、MP3ファイルおよびビデオからのメタデータの追加、削除、更新、および抽出をサポートしています。さらに、** MicrosoftOfficeおよびOpenOffice ファイル形式、 eBooks images **、およびその他の多くのドキュメント形式もサポートしています。

ダウンロードして構成する

ダウンロードからライブラリを取得するか、MavenベースのJavaアプリケーションに次のpom.xml構成を追加して、以下の例を試してください。詳細については、APIリファレンスをご覧ください。

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-metadata</artifactId>
        <version>21.2</version> 
</dependency>

JavaでWAVファイルのメタデータを抽出する

次の手順と以下のJavaコード例は、WAVファイルのメタデータを抽出します。

  • WAVオーディオファイルをロードします。
  • メタデータのWavRootPackageを取得します。
  • getWavPackage メソッドを使用してWavPackageを抽出します。
  • これで、WAVオーディオのすべてのプロパティにアクセスできます。
// JavaでWAVファイルのメタデータを抽出する
try (Metadata metadata = new Metadata("audio.wav"))
{
    WavRootPackage root = metadata.getRootPackageGeneric();
    System.out.println(root.getWavPackage().getBitsPerSample()); // Bits per Sample
    System.out.println(root.getWavPackage().getBlockAlign()); // Block Align
    System.out.println(root.getWavPackage().getByteRate()); // Byte Rate
    System.out.println(root.getWavPackage().getNumberOfChannels()); // No. of Channels
    System.out.println(root.getWavPackage().getAudioFormat()); // Audio Format
    System.out.println(root.getWavPackage().getSampleRate()); // Sample Rate
}

上記のコードは、提供されたwavファイルで次の出力を生成します。

Bits per Sample: 16
Block Align: 4
Byte Rate: 176400
Number of Channels: 2
Audio Format: 1
Sample Rate: 44100

JavaでWAVファイルのRIFF情報を抽出する

WAVファイルのRIFFINFOを抽出する場合は、次の手順を使用してJavaアプリケーション内で取得できます。これは、上記のメタデータを抽出した方法と似ています。

  • WAVファイルをロードします。
  • メタデータのWavRootPackageを取得します。
  • ルートパッケージからRiffInfoPackageを抽出します。
  • WAVオーディオのプロパティにアクセスできるようになりました。

次のコード例は、JavaのWAVファイルのRIFFINFOパッケージメタデータプロパティを抽出します。

// JavaでWAVファイルのRIFFINFOを抽出します
try (Metadata metadata = new Metadata("audio.wav"))
{
    WavRootPackage root = metadata.getRootPackageGeneric();
    System.out.println(root.getRiffInfoPackage().getArtist()); // Artist
    System.out.println(root.getRiffInfoPackage().getComment()); // Comment
    System.out.println(root.getRiffInfoPackage().getCopyright()); // Copyright
    System.out.println(root.getRiffInfoPackage().getCreationDate()); // Creation Date
    System.out.println(root.getRiffInfoPackage().getSoftware()); // Software
    System.out.println(root.getRiffInfoPackage().getEngineer()); // Engineer
    System.out.println(root.getRiffInfoPackage().getGenre()); // Genre
} 

上記のコードの出力は次のとおりです。

Artist: GroupDocs 
Comment: Sample WAV File
Copyright: 
CreationDate: 2020-12-03
Software: Sound Forge
Engineer: SGEFFNER
Genre: Mystery

結論

この記事では、JavaのWAVオーディオファイルからメタデータとRIFFINFOをプログラムで抽出する方法について説明しました。とてもシンプルだと思います。これで、GroupDocs.Metadata for Javaを使用して、独自のメタデータエクストラクタJavaアプリケーションを構築できます。

APIの詳細

疑問を解消しましょう@ 無料サポートフォーラム

関連項目