تعديلات الصوت/الفيديو في Chrome 70

فرانسوا بوفورت
فرانسوا بوفورت

مشاهدة الفيديو باستخدام ميزة "نافذة ضمن النافذة"

تتيح ميزة "نافذة ضمن النافذة" للمستخدمين مشاهدة الفيديوهات في نافذة عائمة (دائمًا فوق النوافذ الأخرى) ليتمكّنوا من مراقبة المحتوى الذي يشاهدونه أثناء التفاعل مع المواقع الإلكترونية أو التطبيقات الأخرى. باستخدام واجهة برمجة تطبيقات الويب "نافذة ضمن النافذة" الجديدة، يمكنك بدء تشغيل ميزة "نافذة ضمن النافذة" والتحكم فيها للفيديوهات على موقعك الإلكتروني.

يمكنك قراءة المقالة للاطّلاع على مزيد من المعلومات عن هذا الموضوع.

برنامج فك ترميز AV1

AV1 هو برنامج ترميز من الجيل التالي طوّره Alliance for Open Media. يعمل AV1 على تحسين كفاءة الضغط بنسبة تزيد عن%30 مقارنةً ببرنامج ترميز الفيديو المتطوّر الحالي، VP9. يضيف Chrome 70 برنامج فك ترميز AV1 إلى الإصدارات x86 و64 من أجهزة الكمبيوتر المكتبي من Chrome استنادًا إلى مواصفات مصدر بت البيانات الرسمية. ويقتصر الدعم في الوقت الحالي على الملف الشخصي 0 "الرئيسي" ولا يشمل إمكانات الترميز. الحاوية المتوافقة هي بتنسيق MP4 (ISO-BMFF) (يمكنك الاطّلاع على القسم من الفيديو الأوّلي إلى التوافق مع الويب للحصول على شرح موجز للحاويات).

لتجربة AV1:

  • انتقِل إلى صفحة YouTube TestTube.
  • اختيار "تفضيل AV1 للدقة العادية" أو "تفضيل AV1 دائمًا" للحصول على درجة الدقة AV1 المطلوبة ملاحظة: عند استخدام درجات دقة أعلى، يزيد احتمال أن يواجه AV1 مشاكل في أداء التشغيل على بعض الأجهزة.
  • جرِّب تشغيل مقاطع YouTube من قائمة تشغيل الإصدار التجريبي من AV1.
  • تأكّد من برنامج الترميز av01 في "إحصاءات تقنية".
إحصاءات تقنية تعرض AV1 في YouTube
الشكل 1. إحصاءات تقنية تعرض AV1 في YouTube

إتاحة برنامج الترميز والتبديل بين الحاوية في الخطأ التربيعي المتوسط

يعمل Chrome على إتاحة عمليات النقل المحسَّنة عبر برامج الترميز أو عمليات النقل عبر البايت في تشغيل إضافات مصادر الوسائط باستخدام طريقة changeType() جديدة في SourceBuffer. تسمح هذه السياسة بتغيير نوع وحدات بايت الوسائط الملحقة بـ SourceBuffer بعد ذلك.

يدعم الإصدار الحالي من الخطأ التربيعي المتوسط التشغيل التكيُّفي للوسائط، ومع ذلك، يتطلب التعديل أن يتوافق أي وسائط يتم إلحاقها بـ SourceBuffer مع نوع MIME المقدَّم عند إنشاء SourceBuffer من خلال MediaSource.addSourceBuffer(type). ويجب أن تظل برامج الترميز من هذا النوع وأي شرائح إعداد تم تحليلها سابقًا على حالها طوال الوقت. هذا يعني أنّ الموقع الإلكتروني عليه اتّخاذ خطوات واضحة لتنفيذ عملية التبديل بين برامج الترميز أو نقل البيانات بالبايت (من خلال استخدام عناصر متعددة من الوسائط أو SourceBuffer تتبُّع والتبديل بينها)، ما يزيد من تعقيد التطبيق ووقت الاستجابة المرئي للمستخدمين. (تتطلّب هذه الانتقالات أن يتّخذ تطبيق الويب إجراءً متزامنًا على سلسلة التعليمات الرئيسية الخاصة بالعارض). إنّ وقت استجابة الانتقال هذا يقلل من سلاسة تشغيل الوسائط عبر الانتقالات.

باستخدام طريقة changeType() الجديدة، يمكن لـ SourceBuffer التخزين المؤقت ودعم التشغيل عبر مختلف تنسيقات بثّ البيانات البايت وبرامج ترميزها. تحتفظ هذه الطريقة الجديدة بالوسائط التي سبق تخزينها مؤقتًا، وإزالة الإطارات المشفرة المستقبلية باستخدام الخطأ التربيعي المتوسط، والاستفادة من منطق الربط والتخزين المؤقت في خوارزمية معالجة الإطارات المشفرّة الحالية ضمن الخطأ التربيعي المتوسط.

في ما يلي كيفية استخدام طريقة changeType():

    const sourceBuffer = myMediaSource.addSourceBuffer('video/webm; codecs="opus, vp09.00.10.08"');
    sourceBuffer.appendBuffer(someWebmOpusVP9Data);

    // Later on...
    if ('changeType' in sourceBuffer) {
      // Change source buffer type and append new data.
      sourceBuffer.changeType('video/mp4; codecs="mp4a.40.5, avc1.4d001e"');
      sourceBuffer.appendBuffer(someMp4AacAvcData);
    }

وكما هو متوقّع، إذا كان النوع الذي تم تمريره غير متوافق مع المتصفِّح، تضع هذه الطريقة استثناء NotSupportedError.

اطّلِع على العيّنة لتشغيل عنصر صوتي وتشغيل عنصر صوتي مع برامج ترميز متبادلة وترميزات متبادلة وعمليات تخزين البيانات.

نية الشحن | Chromestatus Tracker | خطأ في Chromium

Opus بتنسيق MP4 للخطأ التربيعي المتوسط

يتوفّر برنامج ترميز الصوت Opus المفتوح والمتعدّد الاستخدامات في العنصرَين <audio> و<video> منذ استخدام Chrome 33. وتمت إضافة Opus في ISO-BMFF بعد ذلك (المعروف أيضًا باسم Opus في MP4). والآن أصبح Opus بتنسيق MP4 متاحًا في Chrome 70 لإضافات مصادر الوسائط.

إليك كيفية اكتشاف ما إذا كان تنسيق Opus بتنسيق MP4 متاحًا للخطأ التربيعي المتوسط:

if (MediaSource.isTypeSupported('audio/mp4; codecs="opus"')) {
  // TODO: Fetch data and feed it to a media source.
}

للاطّلاع على مثال كامل، يمكنك مراجعة النموذج الرسمي.

بسبب عدم توفُّر أدوات لمزج Opus بتنسيق MP4 مع القطع الصحيح للنهاية وتخطّي القيم المسبقة، إذا كان هذا الدقة مهمًا بالنسبة إليك، عليك استخدام SourceBuffer.appendWindow{Start,End} وSourceBuffer.timestampOffset في Chrome للحصول على عيّنة من المحتوى بدقة لتشغيلها.

نية الشحن | Chromestatus Tracker | خطأ في Chromium

السماح بتشغيل المحتوى المحمي تلقائيًا على Android

في الإصدار 70 من متصفّح Chrome لنظام التشغيل Android، تتغير القيمة التلقائية لإعداد موقع "المحتوى المحمي" من "السؤال أولاً" إلى "مسموح به"، ما يقلل من الصعوبات المرتبطة بتشغيل مثل هذه الوسائط. من الممكن حدوث هذا التغيير، ويرجع ذلك جزئيًا إلى الخطوات الإضافية التي تم اتخاذها لمحو تراخيص الوسائط إلى جانب ملفات تعريف الارتباط وبيانات الموقع الإلكتروني، ما يضمن عدم استخدام المواقع الإلكترونية لتراخيص الوسائط لتتبُّع المستخدمين الذين محووا بيانات التصفُّح.

إعداد المحتوى المحمي في Android.
الشكل 2. إعداد المحتوى المحمي في Android.