RIFF 文件容器格式,用于存储音频和视频多媒体。存储在块中的这些数据可以包括许多信息,例如创建日期、版权信息、艺术家、评论等。您可以以编程方式操作元数据以及 RIFF INFO。本文指导开发人员以编程方式从 Java 中的 WAV 音频文件中提取元数据和 RIFF INFO

本文简要介绍了以下主题:

用于管理元数据和 RIFF INFO 的 Java API

GroupDocs.Metadata for Java 是用于各种文档和图像文件格式的元数据自动化和操作 API。我将使用这个 API 从 WAV 文件中提取元数据和 RIFF INFO。除了音频 WAV 文件外,该 API 还支持从 MP3 文件videos 添加、删除、更新和提取元数据。此外,它还支持Microsoft OfficeOpen Office 文件格式、eBooksimages 和许多其他文档格式。

下载并配置

从下载中获取库 或在基于 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 INFO

如果您想提取 WAV 文件的 RIFF INFO,您可以使用这些步骤在您的 Java 应用程序中获取它。这类似于我们提取上面显示的元数据的方式。

以下代码示例提取 Java 中 WAV 文件的 RIFF INFO 包元数据属性。

// 在 Java 中提取 WAV 文件的 RIFF INFO
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 音频文件中提取元数据和 RIFF INFO。我希望你觉得它很简单。现在,您可以使用 GroupDocs.Metadata for Java 构建您自己的元数据提取器 Java 应用程序。

有关 API 的更多信息

让我们清除任何疑问@ 免费支持论坛。

也可以看看