RIFF (فرمت فایل تبادل منابع) یک فرمت محفظه فایل برای ذخیره داده ها به عنوان تکه های برچسب گذاری شده است. این عمدتا برای ذخیره سازی چند رسانه ای مانند ویدئو و صدا استفاده می شود. این قطعه ممکن است شامل اطلاعاتی مانند هنرمند، تاریخ ایجاد، و اطلاعات حق چاپ و غیره باشد. این مقاله توسعه دهندگان را راهنمایی می کند تا متادیتا و اطلاعات RIFF را از فایل های صوتی WAV در C# استخراج کنند.
موضوعات زیر به طور خلاصه در مقاله پوشش داده خواهد شد:
- NET API برای مدیریت فراداده
- استخراج فراداده فایل های WAV در سی شارپ
- استخراج اطلاعات RIFF فایل های WAV در سی شارپ
NET API برای مدیریت فراداده
در این مقاله، من از GroupDocs.Matadata for .NET API در مثالهای C# برای استخراج ابرداده از فایلهای WAV استفاده خواهم کرد. علاوه بر فایلهای WAV صوتی، API از افزودن، حذف، بهروزرسانی و استخراج ابرداده از فایلها و ویدیوهای MP3 پشتیبانی میکند. علاوه بر این، از فرمت های فایل Microsoft Office و Open Office، کتاب های الکترونیکی، تصاویر و بسیاری از فرمت های سند دیگر پشتیبانی می کند.
می توانید نصب کننده DLL یا MSI را از بخش دانلودها دانلود کنید یا از طریق NuGet API را در برنامه .NET خود نصب کنید.
PM> Install-Package GroupDocs.Metadata
استخراج فراداده فایل های WAV در C#
بیایید با استخراج ابرداده از فایل های WAV شروع کنیم. مراحل و مثال کد زیر را برای استخراج ویژگی های فراداده بسته WAV فایل های WAV در C# دنبال کنید.
- فایل صوتی WAV را بارگیری کنید.
- WavRootPackage ابرداده را دریافت کنید.
- WavPackage را از بسته اصلی استخراج کنید.
- اکنون می توانید به تمام ویژگی های صدای WAV دسترسی داشته باشید.
// استخراج فراداده فایل های WAV در سی شارپ
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
}
این هم خروجی کد بالا:
Bits per Sample: 16
Block Align: 4
Byte Rate: 176400
Number of Channels: 2
Audio Format: 1
Sample Rate: 44100
استخراج اطلاعات RIFF فایل های WAV در C#
RIFF INFO فایلهای WAV را نیز میتوان به روشی متفاوت از استخراج ویژگیهای WavPackage که قبلا نشان داده شد استخراج کرد. با استفاده از مراحل زیر می توانید RIFF INFO فایل صوتی با فرمت فایل WAV را در برنامه .NET خود استخراج کنید.
- فایل صوتی WAV را بارگیری کنید.
- WavRootPackage ابرداده را دریافت کنید.
- RiffInfoPackage را از بسته ریشه استخراج کنید.
- اکنون به ویژگی های صدای WAV دسترسی پیدا کنید.
مثال کد زیر ویژگیهای فراداده بسته RIFF INFO فایل WAV در C# را استخراج میکند.
// استخراج اطلاعات RIFF فایل های WAV در سی شارپ
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
}
خروجی کد بالا به صورت زیر است:
Artist: GroupDocs
Comment: Sample WAV File
Copyright:
CreationDate: 2020-12-03
Software: Sound Forge
Engineer: SGEFFNER
Genre: Mystery
نتیجه
به طور خلاصه، خارج کردن ابرداده و RIFF INFO از فایل های WAV در C# بسیار آسان است. پس از امتحان کردن مثالهای بالا، به توسعه برنامه .NET استخراجکننده ابرداده خود مانند GroupDocs.Metadata App فکر کنید.
نمونههای منبع باز بسیار بیشتری در مخزن GitHub موجود است. کد منبع را دانلود کنید و با استفاده از راهنمای 14 به سرعت نمونه ها را اجرا کنید. در صورت بروز هرگونه مشکل، از اسناد بازدید کنید یا هر زمان که بخواهید در [فروم16 با تیم پشتیبانی تماس بگیرید.