RIFF (Resource Interchange File Format) is een bestandscontainerformaat voor het opslaan van gegevens als getagde chunks. Het wordt voornamelijk gebruikt om multimedia zoals video en audio op te slaan. Het stuk kan informatie bevatten zoals de artiest, de aanmaakdatum en copyrightinformatie, enz. Dit artikel zal ontwikkelaars begeleiden bij het extraheren van metadata en RIFF INFO uit de WAV-audiobestanden in C#.

In het artikel komen in het kort de volgende onderwerpen aan bod:

.NET API voor het beheren van metadata

In dit artikel zal ik GroupDocs.Metadata for .NET API gebruiken in de C#-voorbeelden voor het extraheren van metadata uit WAV-bestanden. Naast de audio WAV-bestanden ondersteunt de API het toevoegen, verwijderen, bijwerken en extraheren van metadata uit MP3-bestanden en video’s. Bovendien ondersteunt het Microsoft Office- en Open Office-bestandsindelingen, eBooks, afbeeldingen en vele andere documentindelingen.

U kunt de DLL’s of het MSI-installatieprogramma downloaden van de downloadsectie of de API in uw .NET-toepassing installeren via NuGet.

PM> Install-Package GroupDocs.Metadata

Extraheer metadata van WAV-bestanden in C#

Laten we beginnen met het extraheren van de metadata uit de WAV-bestanden. Volg de stappen en het onderstaande codevoorbeeld voor het extraheren van de metadata-eigenschappen van het WAV-pakket van WAV-bestanden in C#.

  • Laad het WAV-audiobestand.
  • Verkrijg de WavRootPackage metadata.
  • Pak het WavPackage uit het hoofdpakket.
  • Nu hebt u toegang tot alle eigenschappen van WAV-audio.
// Extraheer metadata van WAV-bestanden in C#
using (Metadata metadata = new Metadata("audio.wav"))
{
    var root = metadata.GetRootPackage<WavRootPackage>();
    Console.WriteLine("Bits per Sample: "   + root.WavPackage.BitsPerSample); // Bits per Sample
    Console.WriteLine("Block Align: "       + root.WavPackage.BlockAlign); // Block Align
    Console.WriteLine("Byte Rate: "         + root.WavPackage.ByteRate); // Byte Rate
    Console.WriteLine("Number of Channels: " + root.WavPackage.NumberOfChannels); // Number of Channels
    Console.WriteLine("Audio Format: "      + root.WavPackage.AudioFormat); // Audio Format 
    Console.WriteLine("Sample Rate: "       + root.WavPackage.SampleRate); // Sample Rate
}

Hier is de uitvoer van de bovenstaande code:

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

Extract RIFF INFO van WAV-bestanden in C#

RIFF INFO van de WAV-bestanden kan ook op dezelfde manier worden geëxtraheerd als de eerder getoonde extractie van WavPackage-eigenschappen. Met behulp van de volgende stappen kunt u de RIFF INFO van het audiobestand in WAV-bestandsindeling extraheren binnen uw .NET-toepassing.

  • Laad het WAV-audiobestand.
  • Download de WavRootPackage metadata.
  • Pak het RiffInfoPackage uit het hoofdpakket.
  • Ga nu naar de eigenschappen van WAV-audio.

Het volgende codevoorbeeld extraheert de metagegevenseigenschappen van het RIFF INFO-pakket van het WAV-bestand in C#.

// Extraheer RIFF INFO van WAV-bestanden in C#
using (Metadata metadata = new Metadata("audio.wav"))
{
    var root = metadata.GetRootPackage<WavRootPackage>();
    Console.WriteLine("Artist: "      + root.RiffInfoPackage.Artist); // Artist
    Console.WriteLine("Comment: "     + root.RiffInfoPackage.Comment); // Comment
    Console.WriteLine("Copyright: "   + root.RiffInfoPackage.Copyright); // Copyright
    Console.WriteLine("CreationDate: " + root.RiffInfoPackage.CreationDate); // Creation Date
    Console.WriteLine("Software: "    + root.RiffInfoPackage.Software); // Software
    Console.WriteLine("Engineer: "    + root.RiffInfoPackage.Engineer); // Engineer
    Console.WriteLine("Genre: "       + root.RiffInfoPackage.Genre); // Genre
}

Het volgende is de uitvoer van de bovenstaande code:

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

Conclusie

Kortom, het is heel eenvoudig om de metadata en RIFF INFO uit de WAV-bestanden in C# te halen. Denk na het uitproberen van de bovenstaande voorbeelden na over het ontwikkelen van uw eigen metadata-extractor .NET-applicatie zoals GroupDocs.Metadata App.

Er zijn nog veel meer open-source voorbeelden beschikbaar op GitHub Repository. Download de broncode en voer snel de voorbeelden uit met behulp van de handleiding aan de slag. Ga in geval van problemen naar de documentatie of neem op elk gewenst moment contact op met het ondersteuningsteam op het forum.

Zie ook