RIFF (Kaynak Değişim Dosyası Biçimi), verileri etiketli parçalar olarak depolamak için bir dosya kapsayıcı biçimidir. Esas olarak video ve ses gibi multimedya depolamak için kullanılır. Öbek, sanatçı, oluşturma tarihi ve telif hakkı bilgisi gibi bilgileri içerebilir. Bu makale, geliştiricilere C#‘daki WAV ses dosyalarından meta verileri ve RIFF INFO’yu ayıklama konusunda rehberlik edecektir.
Makalede kısaca aşağıdaki konular ele alınacaktır:
- Meta Verileri Yönetmek için .NET API
- WAV Dosyalarının Meta Verilerini C# ile Çıkarın
- C# dilinde WAV Dosyalarının RIFF BİLGİLERİNİ Ayıkla
Meta Verileri Yönetmek için .NET API
Bu yazıda, WAV dosyalarından metadata ayıklamak için C# örneklerinde GroupDocs.Metadata for .NET API’sini kullanacağım. Ses WAV dosyalarına ek olarak API, MP3 dosyalarından ve videolardan meta verilerin eklenmesini, kaldırılmasını, güncellenmesini ve çıkarılmasını destekler. Ayrıca, Microsoft Office ve Open Office dosya biçimlerini, e-Kitapları, resimleri ve diğer birçok belge biçimini destekler.
İndirilenler bölümünden DLL’leri veya MSI yükleyicisini indirebilir veya NuGet aracılığıyla .NET uygulamanıza API’yi yükleyebilirsiniz.
PM> Install-Package GroupDocs.Metadata
WAV Dosyalarının Meta Verilerini C# ile Çıkarın
WAV dosyalarından meta verilerin çıkarılmasıyla başlayalım. C# dilindeki WAV dosyalarının WAV paketi meta veri özelliklerini ayıklamak için adımları ve aşağıda belirtilen kod örneğini izleyin.
- WAV ses dosyasını yükleyin.
- WavRootPackage meta verisini alın.
- WavPackage‘u kök paketten çıkarın.
- Artık WAV audio’nun tüm özelliklerine erişebilirsiniz.
// WAV dosyalarının Meta Verilerini C# ile Çıkarın
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
}
İşte yukarıdaki kodun çıktısı:
Bits per Sample: 16
Block Align: 4
Byte Rate: 176400
Number of Channels: 2
Audio Format: 1
Sample Rate: 44100
C# dilinde WAV Dosyalarının RIFF BİLGİLERİNİ Ayıkla
WAV dosyalarının RIFF BİLGİSİ, daha önce gösterilen WavPackage özelliklerinin çıkarılmasından farklı bir şekilde çıkarılamaz. Aşağıdaki adımları kullanarak, .NET uygulamanızın içindeki WAV dosya biçimindeki ses dosyasının RIFF BİLGİSİNİ ayıklayabilirsiniz.
- WAV ses dosyasını yükleyin.
- WavRootPackage meta verisini alın.
- RiffInfoPackage dosyasını kök paketten çıkarın.
- Şimdi WAV sesinin özelliklerine erişin.
Aşağıdaki kod örneği, C# dilindeki WAV dosyasının RIFF INFO paketi meta veri özelliklerini ayıklar.
// C# dilinde WAV dosyalarının RIFF BİLGİLERİNİ ayıklayın
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
}
Yukarıdaki kodun çıktısı aşağıdadır:
Artist: GroupDocs
Comment: Sample WAV File
Copyright:
CreationDate: 2020-12-03
Software: Sound Forge
Engineer: SGEFFNER
Genre: Mystery
Çözüm
Kısacası, C#‘daki WAV dosyalarından metadata ve RIFF INFO’yu çıkarmak çok kolaydır. Yukarıdaki örnekleri denedikten sonra, GroupDocs.Metadata Uygulaması gibi kendi meta veri çıkarıcı .NET uygulamanızı geliştirmeyi düşünün.
GitHub Repository’te daha birçok açık kaynak örneği mevcuttur. Kaynak kodunu indirin ve başlarken kılavuzunu kullanarak örnekleri hızla çalıştırın. Herhangi bir zorluk durumunda belgeleri ziyaret edin veya istediğiniz zaman forumdan destek ekibine ulaşın.