منصوبے کے بارے میں
سِمفونیا ایک خالص Rust آڈیو ڈی کوڈنگ اور میڈیا ڈیمکسنگ لائبریری ہے۔ یہ ان ایپلیکیشنز کے لیے ڈیزائن کی گئی ہے جنہیں عام میڈیا کنٹینر فارمیٹس پڑھنے، میٹا ڈیٹا اور ٹیگز نکالنے، اور C لائبریریوں پر انحصار کیے بغیر آڈیو اسٹریمز کو ڈی کوڈ کرنے کی ضرورت ہوتی ہے۔
معاون کنٹینر فارمیٹس میں AIFF، CAF، ISO/MP4، MKV/WebM، OGG، اور Wave شامل ہیں۔ معاون آڈیو کوڈیکس میں AAC-LC، ADPCM، ALAC، FLAC، MP1، MP2، MP3، PCM، اور Vorbis شامل ہیں۔ کچھ کوڈیکس اور فارمیٹس ابھی زیرِ تکمیل ہیں، جیسے Opus، WavPack، اور HE-AAC کی اقسام۔ یہ پروجیکٹ انفرادی فارمیٹس اور کوڈیکس کے لیے الگ الگ کریٹس استعمال کرتا ہے، اور فیچر فلیگز کنٹرول کرتے ہیں کہ کون سے اجزاء کمپائل کیے جائیں۔ بطور ڈیفالٹ، صرف رائلٹی فری اوپن اسٹینڈرڈ کوڈیکس اور فارمیٹس فعال ہوتے ہیں، لیکن ایک `all` فیچر فلیگ سب کچھ فعال کر سکتا ہے۔
میٹا ڈیٹا اور ٹیگنگ کی حمایت APEv1، APEv2، ID3v1، ID3v2، ISO/MP4، RIFF، اور FLAC اور OGG میں Vorbis کمنٹس کا احاطہ کرتی ہے۔ یہ لائبریری آڈیو ڈیٹا کو مؤثر طریقے سے سنبھالنے کے لیے بنیادی آڈیو پرائمٹوز بھی فراہم کرتی ہے۔
سِمفونیا حفاظت اور درستگی پر زور دیتی ہے۔ یہ 100% محفوظ Rust میں لکھی گئی ہے، ڈینائل-آف-سروس حملوں کو روکنے کا ہدف رکھتی ہے، اور فز-ٹیسٹ کی گئی ہے۔ یہ پروجیکٹ ڈیبگنگ کے لیے اوزار بھی فراہم کرتا ہے: `symphonia-play` میڈیا اسٹریمز کی جانچ، ڈی کوڈنگ، توثیق، اور پلے بیک کے لیے، اور `symphonia-check` ڈی کوڈ شدہ آؤٹ پٹ کو دیگر ڈی کوڈرز کے خلاف توثیق کرنے کے لیے۔
یہ لائبریری ماڈیولر ہے اور تھرڈ پارٹی ڈیمکسرز اور ڈی کوڈرز کی رجسٹریشن کی اجازت دیتی ہے۔ موجودہ تھرڈ پارٹی اڈاپٹرز میں libfdk-aac کے ذریعے AAC اقسام کے لیے `symphonia-adapter-fdk-aac` اور libopus کے ذریعے Opus کے لیے `symphonia-adapter-libopus` شامل ہیں۔
سِمفونیا MPL v2.0 کے تحت لائسنس یافتہ ہے۔ 0.6.x ریلیزز کے لیے کم از کم معاون Rust ورژن 1.85 ہے۔ بنیادی مصنف Philip Deljanov ہیں، اور یہ پروجیکٹ تعاون کا خیرمقدم کرتا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.