الخلاصة
- يحدد RFC 9639 كيفية إعادة عينات PCM الصحيحة التي تلقاها مشفّر FLAC، لا كيفية توثيق الأصل التاريخي للتسجيل.
- تحمل CRC للإطار وMD5 في STREAMINFO والبصمة الخارجية والتوقيع الموثوق وملاحظة التشغيل سلطات مختلفة.
- يربط الإيصال المتين عهدة المصدر، والمدخل، والبتات والحاوية، ومقارنة PCM، والقنوات، والبيانات الوصفية، والتنفيذ، وحدود الموارد، والنتيجة.
حمل الملف اسم المؤدي والتاريخ والمكان وصورة الغلاف. وطابق MD5 بعد الفك. بدت الهوية كاملة، مع أن الاختبار لم يسأل قط من كتب تلك الحقول أو من سلّم التسجيل.
هذه هي الفجوة التي ينبغي أن يغلقها التشغيل لا البلاغة. يضع RFC 9639 مواصفة FLAC على مسار المعايير، ويصف الإطارات والبيانات الوصفية والفحوص والمجموعة القابلة للبث. إنه يسمح بإثبات قوي لإعادة العينات، لكنه لا يحوّل الوصف الموجود بجوارها إلى شهادة.
«بلا فقدان» علاقة بين شيئين
يشفّر FLAC بيانات PCM صحيحة. إذا أعاد المفكّك القيم التي دخلت إلى المشفّر، تحقق الادعاء. لكن المدخل قد يكون تسجيلاً آخر، أو نسخة أعيد أخذ عيناتها، أو قنوات مبدلة، أو مادة اقتطعت قبل التشفير. سيحفظ FLAC الخطأ بأمانة.
لذلك يسمي الإيصال معدل أخذ العينات وعمق البت وعدد القنوات وترتيبها وعدد العينات وبصمة مستقلة للمدخل. ويسجل إصدار المشفّر وإعداداته، ثم إصدار المفكّك وطريقة المقارنة. لا تكفي عبارة «تم التحقق» من دون تسمية الشيء المرجعي.
الفحوص لا تندمج في سلطة واحدة
يحمل رأس كل إطار CRC-8 وينتهي الإطار بـ CRC-16. ويمكن لـ STREAMINFO أن يحمل MD5 محسوباً على الصوت غير المشفّر. أما البصمة الخارجية فقد تغطي جميع بايتات الملف أو الحاوية.
نجاح إطار لا يثبت اكتمال السلسلة. وتطابق MD5 للصوت لا يتحقق من الغلاف أو الفهرس أو توقيت الحاوية. وتطابق بصمة الملف لا يجعل اسم المؤدي صحيحاً. كما يسمح STREAMINFO بقيَم مجهولة: صفر لأحجام معينة، وصفر لعدد العينات، وMD5 كله أصفار.
يضع RFC 6151 الحد الأمني: MD5 غير مناسب عندما تكون مقاومة التصادم مطلوبة، بينما ينتمي فحص الخطأ المضمّن إلى غرض آخر. MD5 في FLAC ليس توقيعاً رقمياً ولا يثبت العهدة. توثيق الأصل يحتاج هوية خارجية موثوقة وتوقيعاً واضح النطاق.
البيانات الوصفية تحمل قولاً ولا تثبته
يمكن لتعليقات Vorbis والصور أن تحمل العنوان والمؤدي والتاريخ والرخصة. المواصفة تحفظ الحقول، ولا تتحقق من حقيقتها. يجب ربط كل حقل بمصدره ومراجعه وتاريخ مراجعته وأي تعارض باقٍ.
تظهر المشكلة نفسها في القنوات. يحدد FLAC ترتيبات افتراضية، ويمكن لقناع WAVEFORMATEXTENSIBLE أن يصف توزيعاً آخر. القناع لا يعيد ترتيب العينات بنفسه؛ على الكاتب والقارئ تطبيق المعنى ذاته. والاعتماد على هذا التعليق يخرج الملف من المجموعة القابلة للبث.
يمكن إذن لعينات متطابقة أن تصل إلى مكبرات خاطئة. يحتاج الأرشيف متعدد القنوات إلى سجلات إنتاج أو إشارات اختبار، وإلى ملاحظة فعلية لمسار التشغيل.
الحاوية قد تعطي وقتاً آخر
قد يوجد FLAC أصلياً أو داخل Ogg، وقد يتعامل مع هياكل Matroska أو MP4. تستطيع الحاوية تكرار المدة والتوقيت والمعدل والقنوات. إذا اختلفت القيم، فإن محو أحدها بصمت يمحو دليلاً مهماً.
يحفظ الإيصال القراءتين، ويسمي المحلل وقاعدة الأولوية وسلوك تطبيقات محددة. لا يحكم MD5 للصوت على خط الحاوية الزمني، ولا يثبت فهرس الحاوية تطابق PCM.
كذلك تحسن المجموعة القابلة للبث احتمال التوافق ولا تصدر شهادة لكل مفكّك. يشير RFC 9639 إلى أن مفككات قديمة أو رديئة قد تدعم الوظائف الشائعة فقط. الدليل هو مصفوفة بأسماء المنتجات والإصدارات والميزات والمخرجات ومسارات الفشل.
صحة الفك لا تلغي حدود الموارد
يمكن لإطار حجمه 49 بايتاً أن ينتج أكثر من 2 MiB من PCM، وقد تحتوي البيانات الوصفية على أعداد هائلة من الحقول أو المحارف. لذلك يحتاج الإدخال غير الموثوق إلى حدود للذاكرة والوقت والإخراج، وإلى عزل ومحاسبة. ملف قابل للفك ليس إذناً بموارد بلا سقف.
تبدأ السلسلة بالشيء المستلم وعهدته وبصمة خارجية. تسجل PCM قبل التشفير وأي تحويل، ثم بناء المشفّر وإعداداته. تميّز بين البتات الأصلية وبتات الحاوية، وتعرض الأصفار والمجهولات في STREAMINFO، وتفصل CRC عن MD5 عن مقارنة PCM.
بعد ذلك توفق المعدل والعمق والمدة والقنوات والتوقيت من دون إخفاء الخلاف، وتربط الأوصاف بمصادرها. تشغّل مفككات مسماة تحت حدود معلنة. وإذا كان الادعاء يشمل التشغيل، تضيف دليلاً من تلك المرحلة.
هكذا تحتفظ الطبقات بسلطتها: العهدة تعرّف، والمشفّر يحوّل، والتدفق يحمل، والفحوص ترصد تغيراً محدوداً، والمفكّك يعيد البناء، والبيانات تصف، والحاوية ترتب الزمن، ونظام التشغيل يصنع النتيجة.
المصادر
- Lu Heng — المواصفة الأولية الدنيا
- Lu Heng — أولوية الشيفرة العاملة
- Lu Heng — طبقات الواقع
- تاريخ RFC 9639
- صفحة معلومات RFC 9639
- RFC 9639 — Free Lossless Audio Codec
- نص RFC 9639
- XML الخاص بـ RFC 9639
- تصويبات RFC 9639
- سجل FLAC لدى IANA
- أنواع الوسائط لدى IANA
- RFC 1321 — MD5
- RFC 6151 — أمن MD5
- RFC 3533 — Ogg
- RFC 9559 — Matroska
- RFC 4732 — حجب الخدمة
- RFC 2046 — أنواع الوسائط
- RFC 8126 — إجراءات تسجيل IANA
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات

