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
- Extrahujte metadata souborů MP3 pomocí REST API v Javě
- Extrakce metadat pomocí shody přesné fráze pomocí Java
- Extrakce metadat regulárním výrazem pomocí Java
- Extrahujte metadata podle názvu vlastnosti pomocí Java
- Extrahujte metadata podle hodnoty vlastnosti pomocí Java
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ů:
- Nahrát soubor MP3 do cloudu
- 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.