الخلاصة
- يقترح
draft-ietf-mlcodec-opus-extension-06مجالاً تجريبياً للمعرّفات 120 إلى 126 مع بادئة موصى بها للتجربة والإصدار، لكنه لا يضمن غياب التصادم أو تطابق التنفيذ. - يستطيع المستقبل تجاهل الامتداد ومواصلة فك صوت Opus الأساسي، ولذلك لا يثبت نجاح الجلسة أن الطرفين فسّرا المعرّف أو طبّقاه بالطريقة نفسها.
- يجب فصل سلطة السجل، وإصدار التجربة، وتحليل الحدود، وربط الإطار، والقبول المحلي، وأثر الخرج في سجلات مستقلة.
رقم واحد وتجربتان
لنتصور مختبرين اختارا القيمة التجريبية نفسها. أضاف كل منهما بادئة يعتقد أنها تميّز تجربته، لكن أحد المستقبلات بُني على إصدار أقدم والآخر على إصدار أحدث. تصل الحزم، ويظل الصوت الأساسي صالحاً، ولا تنهار المكالمة. ومع ذلك قد يتجاهل أحد الطرفين الامتداد، أو يفسّر حمولته بمعنى لا يطابق قصد المرسل.
لا يحل الرقم هذا الخلاف. إنه موضع في فضاء تنسيق، لا تفويضاً لمعنى قيد التشغيل. ويقترح النص بادئة من بايتين لرقم التجربة والإصدار، ويوصي بتجنب التصادم مع التجارب الجارية. كلمة «يوصي» لا تصنع تنسيقاً مركزياً ولا تثبت أن كل تنفيذ احتفظ بالبادئة أو فهمها.
لماذا يبقى الصوت
يفرض RFC 6716 على المرمّز أن يضع أصفاراً في بايتات الحشو، بينما يفرض على مفكك الترميز قبول أي قيمة فيها. يستغل المشروع هذه الخاصية: يشير الحشو غير الصفري إلى وجود امتدادات. أما المفكك القديم فيرمي الحشو ويتابع قراءة طبقة Opus الأساسية.
وعلى المفكك الموسع أن يتصرف كغير الموسع عندما تغيب الامتدادات. كما لا يجوز للمرمّز تغيير الجزء غير الموسع بطريقة تُضعف جودته بصورة ملحوظة لدى مستقبل قديم. هذه حماية لأرضية التوافق، لا شهادة بأن طبقة اختيارية وصلت إلى أثرها.
يمكن أن يكون الصوت الأساسي واضحاً بينما لم يُفهم الامتداد أصلاً. بل يلزم المفكك تجاهل أي امتداد لا يدعمه، ويجوز له تجاهل امتداد يدعمه تقنياً. وجود الشيفرة لا يساوي تمكينها، والإعلان عن القدرة لا يساوي قبول كل نسخة، واستمرار المكالمة لا يساوي تطبيق الوظيفة.
البت الذي يحدد مدى القراءة
تبدأ كل نسخة امتداد بمعرّف من سبعة بتات وبت L. تحمل المعرّفات القصيرة صفراً أو بايتاً واحداً من البيانات، بينما تسمح الطويلة بطول اعتباطي داخل حدود الحزمة. في الامتداد الطويل يعني L=0 عادة استهلاك بقية الحشو، ولا يمكن استعمال هذه الدلالة أكثر من مرة في الحزمة. ويعني L=1 وجود مؤشر طول صريح، ويمكن للقيمة 255 أن تمده إلى بايت تالٍ ما دامت الحدود محفوظة.
إذا تجاوز الطول نهاية الحزمة، أو تعذر إكمال قراءة الطول نفسه، أو لم تكف البيانات لتكرارات RTE، وجب تجاهل الجزء المخالف. لا يجوز للمفكك أن يقرأ خارج الذاكرة المخصصة أو أن يخترع بايتات ناقصة. وقد تستمر الطبقة الأساسية بعد هذا الرفض.
لهذا يجب أن يحتوي السجل على نتيجتين على الأقل: نجاح فك الأساس، وقرار نسخة الامتداد. دمجهما في كلمة نجاح واحدة يخفي وظيفة الحماية ويخفي أيضاً غياب الميزة.
الإطار الصحيح شرط للمعنى
لا تنتمي الامتدادات إلى الحزمة فقط، بل إلى أطر Opus محددة. المعرّف البنيوي 1 يفصل مجموعات الامتدادات: يمكنه التقدم إطاراً واحداً أو عدداً أكبر تحدده حمولة تالية. لا يجوز أن يساوي المؤشر عدد الأطر أو يتجاوزه، وكل النسخ المرتبطة بمؤشر خارج المجال تُهمل.
أما المعرّف 2، Repeat These Extensions، فيكرر نمطاً على أطر لاحقة مع حمولات جديدة. يوفر ذلك بايتات، لكنه يجعل مجموعة الإطار الواحد غير متجاورة أحياناً. ويظل الترتيب داخل الإطار مهماً، ويمكن لتعريف الامتداد أن يفرض قيوداً إضافية على العدد والموضع. التكافؤ الممنوح لإعادة الترتيب التي تنشأ عن RTE لا يبيح أي ترتيب اعتباطي.
العثور على المعرّف لا يثبت أن الحمولة وصلت إلى إطار موجود أو إلى الموقع الصحيح. يحتاج الإثبات إلى التسلسل قبل توسعة RTE وبعدها، ومؤشر الإطار، والطول المستهلك، وقرار التطبيق.
التفاوض إعلان محدود
يقترح المشروع معامل extensions لمعرّفات المستقبل، وsprop-extensions لمعرّفات المرسل ضمن audio/opus. وتستخدم المعاملات الخاصة الصيغتين extN-* وsprop-extN-*. وعلى كل مستقبل يفهم الآلية أن يدعم المعرّفات البنيوية 0 و1 و2، من دون الحاجة إلى إعلانها في القوائم.
يجب تحديد معاملات SDP صراحة، ولا يجوز نقلها بلا تفكير من offer أو answer آخر. وحتى إذا فشل التفاوض، يجب أن يستطيع المستقبل فك الحزم التي تحمل امتدادات مجهولة أو غير متفاوض عليها، عبر تجاوزها بأمان والحفاظ على الأساس.
استمرار الجلسة نتيجة متوقعة من هذا التصميم، وليس دليلاً على تطابق الإعلان. لإثبات الاستخدام، يجب ربط العرض والجواب والقيم المختارة وإصدار البرنامج وإعداده والحزمة وقرار كل نسخة بالسياق نفسه.
من السجل إلى التنفيذ
يقترح المشروع سجلاً بسبعة بتات. القيم 0 و1 و2 بنيوية. القيم 3 إلى 119 غير مخصصة وتحتاج Standards Action. القيم 120 إلى 126 تجريبية. والقيمة 127 محجوزة لتطوير الآلية في المستقبل، مع دلالة طول معروفة تسمح للمستقبلات بتجاوز ما لا تفهمه.
يساعد السجل على نشر تعريف مشترك، لكنه لا يثبت أن البرنامج الجاري يحمل هذا التعريف أو أن السياسة المحلية سمحت به. ويمكن للتجربة أن تتغير قبل التقييس. لذلك يجب أن يتضمن الدليل مصدر التعريف وإصداره والبناء الفعلي والإعداد وقرار القبول.
يوضح مشروع Opus HD المجاور نوع المستهلك الممكن؛ فهو يقترح دقة إضافية ومحتوى فوق 20 كيلوهرتز ومعالجة 96 كيلوهرتز، ويشير إلى شيفرة وخيار بناء. لا يثبت ذلك أن نقطة نهاية بعينها فعّلته أو أن جلسة تفاوضت عليه أو أن مستمعاً تلقى تحسناً. لا يقيس هذا المقال Opus HD، بل يستخدمه لتوضيح المسافة بين الحاوية والأثر.
الحالة وحدود الادعاء
الإصدار 06 هو Internet-Draft نشط لمجموعة mlcodec، مؤرخ في 23 يوليو 2026، وآخر تحديث في Datatracker بتاريخ 27 أغسطس، وهو في WG Last Call مع حالة مستهدفة Proposed Standard، وينتهي في 24 يناير 2027. ليس RFC، وقد يتغير أو يُستبدل أو لا يُنشر.
لم يُختبر أي مرمّز أو مفكك أو متصفح أو منتج أو مشغل أو جلسة حقيقية. ولا تثبت المصادر حادثة أو هجوماً أو تصادماً مشاهداً أو قياساً للمعالج أو الذاكرة أو معدل البت أو الطيف أو الاستماع. السيناريوهات تحليلية.
إذا استمر الصوت الأساسي، فقد رُصد الأساس. أما الامتداد فله سلسلة إثبات مستقلة.
المصادر
- https://datatracker.ietf.org/doc/draft-ietf-mlcodec-opus-extension/
- https://datatracker.ietf.org/doc/draft-ietf-mlcodec-opus-extension/history/
- https://datatracker.ietf.org/doc/draft-ietf-mlcodec-opus-extension/references/
- https://datatracker.ietf.org/doc/draft-ietf-mlcodec-opus-extension/referencedby/
- https://www.ietf.org/archive/id/draft-ietf-mlcodec-opus-extension-06.html
- https://www.ietf.org/archive/id/draft-ietf-mlcodec-opus-extension-06.txt
- https://www.ietf.org/archive/id/draft-ietf-mlcodec-opus-extension-06.xml
- https://datatracker.ietf.org/wg/mlcodec/about/
- https://www.rfc-editor.org/rfc/rfc6716.html
- https://www.rfc-editor.org/rfc/rfc7587.html
- https://www.rfc-editor.org/rfc/rfc8251.html
- https://www.rfc-editor.org/rfc/rfc8126.html
- https://www.rfc-editor.org/rfc/rfc2119.html
- https://www.rfc-editor.org/rfc/rfc8174.html
- https://www.rfc-editor.org/rfc/rfc5234.html
- https://datatracker.ietf.org/doc/draft-ietf-mlcodec-opus-scalable-quality-extension/
- https://www.ietf.org/archive/id/draft-ietf-mlcodec-opus-scalable-quality-extension-02.html
- https://www.ietf.org/archive/id/draft-ietf-mlcodec-opus-scalable-quality-extension-02.txt
- https://www.ietf.org/archive/id/draft-ietf-mlcodec-opus-scalable-quality-extension-02.xml
- https://www.iana.org/assignments/media-types/media-types.xhtml#audio
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
