درآمدی راستہ
درآمد فائلوں کے پوشے کو اجرا کے مطابق فہرست اندراج میں بدلتی ہے، فائلوں کا ایک بائٹ بھی بدلے بغیر۔ یہ صفحہ استعمالی رہنما میں بیان کیے گئے بہاؤ کے پیچھے راستہ ہے۔
اسکین
اس حصے کا ربطنگرانی والے پوشے پلیٹ فارم کے فائل نظام واقعات سے دیکھے جاتے ہیں، تھمائے جاتے ہیں، اور تبدیلی پر دوبارہ اسکین ہوتے ہیں؛ اسکین موجودہ امیدوار فہرست سے ملاتے ہیں، شروع سے نہیں چلتے۔ اسکینر پوشے کو ایک اجرا کے طور پر پہچانتا ہے (آواز براہ راست اندر، یا CD1/CD2 جیسے ڈسک نما ذیلی پوشے)، یا مجموعہ سمجھ کر اس کے اندر اترتا ہے۔ فائلیں پسوند کے لحاظ سے آواز، تصاویر، اور دستاویزات میں بٹتی ہیں، پھر آواز دیکھی جاتی ہے: اہم codec وہ ہے جو FFmpeg بائٹس میں پاتا ہے، فائل پسوند نہیں۔ جزوی ڈاؤن لوڈ نشانوں والے پوشے ڈاؤن لوڈ مکمل ہونے تک خارج رہتے ہیں۔
CUE sheet ایک صوتی نقش کو ٹریک فہرست میں بدلتا ہے۔ پارسر pregaps اور postgaps، ہر ٹریک کے performers اور ISRCs، اور ایک فائل والی نقوش اور ہر ٹریک کے لیے ایک فائل والے CUE خاکے دونوں سنبھالتا ہے۔ ٹریک کی حدیں CUE frames (سیکنڈ کا 1/75th) سے عین نمونہ مقامات میں بدلتی ہیں، جو بعد میں پلے بیک کی بائٹ اور نمونہ کھڑکیاں بنتی ہیں۔
شہادت، tags نہیں
اس حصے کا ربطشناخت ایک ہی pass میں پوشے سے تین طرح کی شہادت پڑھتی ہے:
- disc ID، CD کی عین ٹریک ترتیب کا MusicBrainz fingerprint، نقل نوشتہ یا CUE sheet سے نکالا ہوا؛
- barcodes، تصویر اسکین سے پلیٹ فارم کے بصری framework کے ذریعے کھولے ہوئے اور CUE فہرست خانوں سے پڑھے ہوئے؛
- text: تصاویر OCR، پوشہ اور فائل نام، اور نقل کی متن فائلوں سے فہرست اعداد اور آزاد متن۔
آواز میں جڑے tags جان بوجھ کر شہادت نہیں ہیں: وہ بتاتے ہیں tag لگانے والے نے کیا سمجھا، نہ کہ pressing کیا ہے۔ (جب صارف اجرا کو نامعلوم کے طور پر درآمد کرتا ہے تو وہ fallback میٹا معلومات کو بھرنے کی ابتدا کرتے ہیں۔)
Disc ID اور barcode ساتھ ساتھ دیکھے جاتے ہیں، disc ID MusicBrainz کے مقابل، barcode MusicBrainz اور Discogs دونوں کے مقابل، اور نتائج کا باہمی ملان ہوتا ہے: اجرا گروہ پر متفق نتائج مل جاتے ہیں، فہرست عدد کے ملان pressing فہرست محدود کرتے ہیں، اور اشاروں کا اختلاف خاموش اندازے کے بجائے صارف کے لیے صاف اختلاف بنتا ہے۔ ہر نتیجہ اپنی اصل رکھتا ہے (disc ID سے ملا، barcode سے، فہرست ملان) تاکہ UI بتا سکے کہ کوئی قطار کیوں پیش ہو رہی ہے۔
ذرائع
اس حصے کا ربطMusicBrainz سے سخت ایک درخواست فی سیکنڈ رفتار کے ساتھ بے نامی سے پوچھا جاتا ہے۔ Discogs صارف کے ذاتی token سے تصدیق کرتا ہے جو کلید خانہ میں ہے، اپنی شرح حدوں کے اندر رفتار پاتا اور دوبارہ کوشش کرتا ہے، اور رد token ویسے ہی رپورٹ ہوتا ہے تاکہ UI اسے نشان زد کرے، تلاشیں خاموشی سے ناکام نہ ہوں۔ جوابات ہر نشست میں کیش کیے جاتے ہیں، اور جیتنے والے ماخذ کا خام JSON آئندہ دوبارہ تعبیر کے لیے database میں محفوظ ہوتا ہے۔
محفوظی
اس حصے کا ربطدرآمد confirm کرنے سے، ترتیب میں، یہ چلتا ہے:
- Decode verification: ہر ٹریک سرے سے سرے تک کھولا جاتا ہے؛ جو نقل مکمل نہ کھلے درآمد کسی بھی لکھائی سے پہلے ناکام ہوتی ہے (config flag اسے بند کر سکتا ہے)۔
- Loudness analysis: اسی کھولنے کے دور میں ہر ٹریک اور ہر البم کے لیے مجموعی آواز کی بلندی اور حقیقی چوٹی ناپی جاتی ہے، replay gain کے استعمال کے لیے محفوظ۔
- Cover selection: چنا ہوا فن (دور، پوشہ نقش، یا جڑا ہوا) نمایشی thumbnail میں دوبارہ بنایا جاتا ہے؛ اصل اجرا کی فائلوں میں رہتا ہے اگر وہ پوشہ سے آیا تھا۔
- جوہری لکھائی: اجرا، ٹریک، credits، شناختیں، شکلیں، segments، فائلیں، اور غلاف ایک لین دین میں محفوظ ہوتے ہیں۔ آدھی درآمد شدہ حالت نہیں ہے۔
اجرا صارف کی فائلوں کو اپنی جگہ حوالہ دیتے ہوئے آتا ہے۔ اگر صارف نے کلاؤڈ کے زیر انتظام چنا، اپ لوڈ محفوظی کے بعد ذخیرہ تبدیلی کے طور پر ہوتا ہے، اور فائلوں کے اصل بائٹس پورے وقت اصل ماخذ رہتے ہیں؛ صارف نے bae کو جو کچھ دیا وہ کبھی حذف یا بدلا نہیں جاتا۔
نقلیں پہچاننا
اس حصے کا ربطہر اجرا اپنی درآمد شدہ پوشہ ساخت (نسبتی راستے اور sizes، مقام سے آزاد) پر مواد hash ریکارڈ کرتا ہے۔ دوبارہ اسکین اسے پوشے کو پہلے ہی لائبریری میں نشان زد کرنے کے لیے استعمال کرتے ہیں، اور اسی نقل کی دوبارہ درآمدات نقل بنانے کے بجائے اپنا پچھلا اجرا ڈھونڈ کر بدلتی ہیں۔