Extrahujte metadata souborů MP3 pomocí REST API v Javě

Programově můžete přidávat, upravovat, odebírat nebo extrahovat různé vlastnosti zvukových souborů uložených ve formě metadat. Vlastnosti metadat, jako je název, interpret a žánr, můžete snadno extrahovat ze zvukových souborů programově v cloudu. V tomto článku se dozvíte, jak extrahovat metadata zvukových souborů MP3 pomocí REST API v Javě.

V tomto článku se diskutuje/pokrývá následující témata:

Extrakce metadat MP3 REST API a Java SDK

K extrahování metadat zvukových souborů MP3 budu používat Java SDK of GroupDocs.Metadata Cloud API. Umožňuje přidávat, upravovat, načítat a odstraňovat vlastnosti metadat z více než 60 typů dokumentů, obrázků a formátů multimediálních souborů. Stačí definovat kritéria vyhledávání a API se postará o zadané operace s metadaty v rámci podporované formáty souborů. API pracuje s nejpozoruhodnějšími standardy metadat, jako jsou vestavěné, XMP, EXIF, IPTC, Image Resource Blocks, ID3 a vlastní vlastnosti metadat. Poskytuje také .NET SDK jako členy rodiny manipulace s metadaty dokumentu pro Cloud API.

GroupDocs.Metadata Cloud můžete snadno používat ve svých Java aplikacích založených na Maven přidáním následující konfigurace pom.xml.

<repository>
    <id>groupdocs-artifact-repository</id>
    <name>GroupDocs Artifact Repository</name>
    <url>http://repository.groupdocs.cloud/repo</url>
</repository>
<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-metadata-cloud</artifactId>
    <version>20.4</version>
    <scope>compile</scope>
</dependency>

Než budete postupovat podle uvedených kroků, získejte prosím své ID klienta a tajný klíč z dashboard. Jakmile budete mít své ID a tajemství, přidejte kód, jak je uvedeno níže:

String clientId = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5";
String clientSecret = "479db2b01dcb93a3d4d20efb16dea971";
String myStorage = "";

Configuration configuration = new Configuration(clientId, clientSecret);

Extrahujte metadata souborů MP3 pomocí REST API v Javě

Metadata zvukových souborů MP3 můžete snadno extrahovat pomocí následujících jednoduchých kroků:

  1. Nahrát soubor MP3 do cloudu
  2. Extrahovat metadata zvukových souborů MP3 pomocí Java

Nahrajte soubor

Nejprve nahrajte zvukový soubor MP3 do cloudu pomocí níže uvedeného příkladu kódu:

// inicializace api
FileApi apiInstance = new FileApi(clientId, clientSecret);

// vložte soubor
File fileStream = new File("C:\\Files\\sample.mp3");

// vytvořit požadavek na nahrání souboru
UploadFileRequest request = new UploadFileRequest("sample.mp3", fileStream, myStorage);

// nahrát soubor
FilesUploadResult response = apiInstance.uploadFile(request);

V důsledku toho bude nahraný soubor MP3 dostupný v sekce souborů vašeho řídicího panelu v cloudu.

Extrahujte metadata zvukových souborů MP3 pomocí Java

Všechny vlastnosti metadat zvukových souborů MP3 můžete extrahovat programově podle následujících kroků.

  • Vytvořte instanci MetadataApi
  • Vytvořte instanci souboru FileInfo
  • Nastavte cestu k souboru MP3
  • Vytvořte instanci ExtractOptions
  • Přiřaďte FileInfo k ExtractOptions
  • Vytvořte ExtractRequest
  • Zavolejte metodu MetadataApi.extract() a získejte výsledky

Následující ukázka kódu ukazuje, jak extrahovat metadata souboru MP3 pomocí REST API.

// inicializovat api
MetadataApi apiInstance = new MetadataApi(configuration);

// definovat možnosti extrahování
ExtractOptions options = new ExtractOptions();
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.mp3");
options.setFileInfo(fileInfo);

// vytvořit žádost o výpis
ExtractRequest request = new ExtractRequest(options);
ExtractResult response = apiInstance.extract(request);

// ukázat výsledky
for (MetadataPackage metaPackage : response.getMetadataTree().getInnerPackages()) {
  for(MetadataProperty entry : metaPackage.getPackageProperties()) {
    System.out.println(entry.getName() + ": " + entry.getValue());
    if (entry.getTags() == null)
      continue;
   for (Tag tagItem : entry.getTags()) {
      System.out.println(
          "Tag for property: name - " + tagItem.getName() + ", category - " + tagItem.getCategory());
    }
  }
}
FileFormat: 21
Tag for property: name - FileFormat, category - Content
MimeType: audio/mpeg
Tag for property: name - FileFormat, category - Content
HeaderPosition: 2402
MpegAudioVersion: 3
Layer: 3
HasCrc: True
Bitrate: 224
Frequency: 32000
PaddingBit: 0
PrivateBit: False
Channel: 0
ModeExtensionBits: 0
Copyright: False
Original: True
Emphasis: 0
Version: ID3v1.1
Genre: 255
Album: YouTube Audio Library
Artist: Kevin MacLeod
Comment: This is sample comment.
Tag for property: name - Comment, category - Content
Title: Impact Moderato
Tag for property: name - Title, category - Content
Year: 2021
Tag for property: name - IntellectualContentCreated, category - Time
TrackNumber: 1
Version: ID3v2.3.0
TagSize: 2402
TALB: null
TPE1: null
TPE2: null
COMM: null
Tag for property: name - Comment, category - Content
TCOM: null
TPOS: null
TCON: null
TIT2: null
Tag for property: name - Title, category - Content
TRCK: null
TYER: null
Tag for property: name - IntellectualContentCreated, category - Time
title: Impact Moderato
Tag for property: name - Title, category - Content
artist: Kevin MacLeod
album: YouTube Audio Library
year: 2021
track: 1
genre: Cinematic
Tag for property: name - Type, category - Content
comment: This is sample comment.
Tag for property: name - Comment, category - Content
albumartist: MacLeod Kevin
composer: Kevin
discnumber: 101 

Extrakce metadat pomocí shody přesné fráze pomocí Java

Vlastnost metadat souborů MP3 odpovídajících přesné frázi můžete extrahovat podle následujících kroků:

  • Vytvořte instanci MetadataApi
  • Vytvořte instanci MatchOptions a nastavte ExactPhrase na true
  • Inicializujte instanci NameOptions
  • Zadejte hodnotu, která se má shodovat, a nastavte MatchOptions
  • Vytvořte instanci SearchCriteria a nastavte NameOptions
  • Vytvořte instanci souboru FileInfo
  • Nastavte cestu k souboru MP3
  • Vytvořte instanci ExtractOptions
  • Přiřaďte definovaná SearchCriteria a FileInfo k ExtractOptions
  • Vytvořte ExtractRequest
  • Zavolejte metodu MetadataApi.extract() a získejte výsledky

Následující ukázka kódu ukazuje, jak extrahovat metadata pomocí shody přesné fráze pomocí REST API.

// inicializovat api
MetadataApi apiInstance = new MetadataApi(configuration);

// vytvořit možnost shody
MatchOptions matchOptions = new MatchOptions();
matchOptions.setExactPhrase(true);

// možnost vytvořit jméno
NameOptions nameOptions = new NameOptions();
nameOptions.setValue("MimeType");
nameOptions.setMatchOptions(matchOptions);

// definovat kritéria vyhledávání
SearchCriteria searchCriteria = new SearchCriteria();
searchCriteria.setNameOptions(nameOptions);

// definovat možnosti extrahování
ExtractOptions options = new ExtractOptions();
options.setSearchCriteria(searchCriteria);

// poskytnout vstupní soubor
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.mp3");
options.setFileInfo(fileInfo);

// vytvořit žádost o výpis
ExtractRequest request = new ExtractRequest(options);
ExtractResult response = apiInstance.extract(request);

// ukázat výsledky
for (MetadataProperty entry : response.getProperties()) {
  System.out.println(entry.getName() + ": " + entry.getValue());
  if (entry.getTags() == null)
    continue;
 for (Tag tagItem : entry.getTags()) {
    System.out.println(
        "Tag for property: name - " + tagItem.getName() + ", category - " + tagItem.getCategory());
  }
}
MimeType: audio/mpeg
Tag for property: name - FileFormat, category - Content

Extrakce metadat regulárním výrazem pomocí Java

Můžete definovat kritéria vyhledávání pro extrahování metadat souborů MP3 pomocí regulárního výrazu podle následujících kroků:

  • Vytvořte instanci MetadataApi
  • Inicializujte instanci MatchOptions a nastavte IsRegex na true
  • Vytvořte instanci NameOptions
  • Zadejte regulární výraz a nastavte MatchOptions
  • Vytvořte instanci SearchCriteria a nastavte NameOptions
  • Vytvořte instanci souboru FileInfo
  • Nastavte cestu k souboru MP3
  • Vytvořte instanci ExtractOptions
  • Přiřaďte definovaná SearchCriteria a FileInfo k ExtractOptions
  • Vytvořte ExtractRequest
  • Zavolejte metodu MetadataApi.extract() a získejte výsledky

Následující ukázka kódu ukazuje, jak extrahovat hledání metadat podle regulárního výrazu pomocí REST API.

// inicializovat api
MetadataApi apiInstance = new MetadataApi(configuration);

// vytvořit možnost shody
MatchOptions matchOptions = new MatchOptions();
matchOptions.setIsRegex(true);

// možnost vytvořit jméno
NameOptions nameOptions = new NameOptions();
nameOptions.setValue("^Co.*");
nameOptions.setMatchOptions(matchOptions);

// definovat kritéria vyhledávání
SearchCriteria searchCriteria = new SearchCriteria();
searchCriteria.setNameOptions(nameOptions);

// definovat možnosti extrahování
ExtractOptions options = new ExtractOptions();
options.setSearchCriteria(searchCriteria);

// poskytnout vstupní soubor
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.mp3");
options.setFileInfo(fileInfo);

// vytvořit žádost o výpis
ExtractRequest request = new ExtractRequest(options);
ExtractResult response = apiInstance.extract(request);

for (MetadataProperty entry : response.getProperties()) {
  System.out.println(entry.getName() + ": " + entry.getValue());
  if (entry.getTags() == null)
    continue;
 for (Tag tagItem : entry.getTags()) {
    System.out.println(
        "Tag for property: name - " + tagItem.getName() + ", category - " + tagItem.getCategory());
  }
}
Copyright: False
Comment: This is sample comment.
Tag for property: name - Comment, category - Content
COMM: GroupDocs.Metadata.Formats.Audio.ID3V2CommentFrame
Tag for property: name - Comment, category - Content
CommEncoding: 1
CommLanguage: eng
CommShortContentDescription: 
CommText: This is sample comment.
comment: This is sample comment.
Tag for property: name - Comment, category - Content
composer: Kevin 

Extrahujte metadata podle názvu vlastnosti pomocí Java

Kritéria vyhledávání pro extrahování metadat souborů MP3 pro konkrétní vlastnost můžete definovat podle následujících kroků:

  • Vytvořte instanci MetadataApi
  • Inicializujte instanci NameOptions a nastavte hodnotu
  • Vytvořte instanci SearchCriteria a nastavte NameOptions
  • Vytvořte instanci souboru FileInfo
  • Nastavte cestu k souboru MP3
  • Vytvořte instanci ExtractOptions
  • Přiřaďte definovaná SearchCriteria a FileInfo k ExtractOptions
  • Vytvořte ExtractRequest
  • Zavolejte metodu MetadataApi.extract() a získejte výsledky

Následující ukázka kódu ukazuje, jak extrahovat metadata vyhledáním názvu vlastnosti pomocí REST API.

// inicializovat api
MetadataApi apiInstance = new MetadataApi(configuration);

// možnost vytvořit jméno
NameOptions nameOptions = new NameOptions();
nameOptions.setValue("Artist");

// definovat kritéria vyhledávání
SearchCriteria searchCriteria = new SearchCriteria();
searchCriteria.setNameOptions(nameOptions);

// poskytnout vstupní soubor
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.mp3");

// definovat možnosti extrahování
ExtractOptions options = new ExtractOptions();
options.setSearchCriteria(searchCriteria);
options.setFileInfo(fileInfo);

// vytvořit žádost o výpis
ExtractRequest request = new ExtractRequest(options);
ExtractResult response = apiInstance.extract(request);

for (MetadataProperty entry : response.getProperties()) {
  System.out.println(entry.getName() + ": " + entry.getValue());
  if (entry.getTags() == null)
    continue;
 for (Tag tagItem : entry.getTags()) {
    System.out.println(
        "Tag for property: name - " + tagItem.getName() + ", category - " + tagItem.getCategory());
  }
}
Artist: Kevin MacLeod
artist: Kevin MacLeod
albumartist: MacLeod Kevin

Extrahujte metadata podle hodnoty vlastnosti pomocí Java

Můžete definovat kritéria vyhledávání pro extrahování metadat souborů MP3 odpovídajících hodnotě vlastnosti podle následujících kroků:

  • Vytvořte instanci MetadataApi
  • Vytvořte instanci ValueOptions
  • Zadejte hodnotu pro vyhledávání a její typ
  • Vytvořte instanci SearchCriteria a nastavte ValueOptions
  • Vytvořte instanci souboru FileInfo
  • Nastavte cestu k souboru MP3
  • Vytvořte instanci ExtractOptions
  • Přiřaďte definovaná SearchCriteria a FileInfo k ExtractOptions
  • Vytvořte ExtractRequest
  • Zavolejte metodu MetadataApi.extract() a získejte výsledky

Následující fragment kódu ukazuje, jak extrahovat metadata vyhledáním hodnoty vlastnosti pomocí REST API.

// inicializovat api
MetadataApi apiInstance = new MetadataApi(configuration);

// vytvářet hodnotové možnosti
ValueOptions valueOptions = new ValueOptions();
valueOptions.setValue("Impact Moderato");
valueOptions.setType("string");

// definovat kritéria vyhledávání
SearchCriteria searchCriteria = new SearchCriteria();
searchCriteria.setValueOptions(valueOptions);

// poskytnout vstupní soubor
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.mp3");

// definovat možnosti extrahování
ExtractOptions options = new ExtractOptions();
options.setSearchCriteria(searchCriteria);
options.setFileInfo(fileInfo);

// vytvořit žádost o výpis
ExtractRequest request = new ExtractRequest(options);
ExtractResult response = apiInstance.extract(request);

for (MetadataProperty entry : response.getProperties()) {
  System.out.println(entry.getName() + ": " + entry.getValue());
  if (entry.getTags() == null)
    continue;
 for (Tag tagItem : entry.getTags()) {
    System.out.println(
        "Tag for property: name - " + tagItem.getName() + ", category - " + tagItem.getCategory());
  }
}
Title: Impact Moderato
Tag for property: name - Title, category - Content
TextValue: Impact Moderato

Vyzkoušejte online

Vyzkoušejte prosím následující bezplatný online nástroj pro extrakci metadat MP3, který je vyvinut pomocí výše uvedeného API. https://products.groupdocs.app/metadata/total

Závěr

V tomto článku jste se naučili, jak extrahovat metadata zvukových souborů MP3 v cloudu. Také jste se naučili, jak extrahovat metadata definováním vyhledávacích kritérií, jako je shoda přesných frází, použití regulárního výrazu a podle názvu nebo hodnoty vlastnosti. Tento článek také vysvětluje, jak programově nahrát zvukový soubor MP3 do cloudu. Můžete se dozvědět ještě více o GroupDocs.Extrakce metadat Cloud API pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.

Viz také