أخبار المنتجات

إصدار Media3 1.10 متوفّر الآن

مدّة القراءة: دقيقتان
عرض الملف الشخصي لـ "أندرو لويس"
Andrew Lewis مهندس برمجيات

يتضمّن الإصدار 1.10 من Media3 ميزات جديدة وإصلاحات للأخطاء وتحسينات على الميزات، بما في ذلك تطبيقات مصغّرة للتشغيل مستندة إلى Material3، ودعم تنسيقات موسّعة في ExoPlayer، وتحسين تعديل السرعة عند تصدير الوسائط باستخدام Transformer. يمكنك مواصلة القراءة لمعرفة المزيد من المعلومات، والاطّلاع على ملاحظات الإصدار الكاملة للحصول على قائمة شاملة بالتغييرات.

واجهة مستخدم التشغيل وCompose

نواصل توسيع نطاق وحدة media3-ui-compose-material3  لمساعدتك في إنشاء واجهات مستخدم في Compose لتشغيل الوسائط.

لقد أضفنا دالة مركّبة جديدة للمشغّل تجمع بين ContentFrame وعناصر تحكّم في التشغيل قابلة للتخصيص، ما يمنحك تطبيقًا مصغّرًا جاهزًا للمشغّل مع واجهة مستخدم حديثة.

يضيف هذا الإصدار أيضًا دالة مركّبة باسم ProgressSlider لعرض مستوى تقدّم اللاعب وإجراء عمليات البحث باستخدام إيماءات السحب والنقر. لإدارة سرعة التشغيل، يتوفّر عنصر PlaybackSpeedControl جديد في وحدة media3-ui-compose الأساسية، بالإضافة إلى زر PlaybackSpeedToggleButton منسَّق في وحدة Material 3.

سنواصل العمل على إضافات جديدة، مثل أدوات اختيار المقاطع الصوتية وإتاحة الترجمة والمزيد من خيارات التخصيص في إصدارات Media3 القادمة. نتطلّع إلى معرفة ملاحظاتك، لذا يُرجى مشاركة آرائك حول المشروع في Issue Tracker.

large_media31.102.jpeg
 دالة مركّبة للمشغّل في تطبيق Media3 Compose التجريبي

تحسينات على ميزات التشغيل

يتضمّن الإصدار 1.10 من Media3 مجموعة متنوعة من الإضافات والتحسينات في جميع وحدات التشغيل:

  • التنسيقات المتوافقة: يتيح ExoPlayer الآن استخراج مقاطع Dolby Vision Profile 10 وVersatile Video Coding (VVC) في حاويات MP4، وقد قدّمنا دعمًا لمدير واجهة مستخدم MPEG-H في decoder_mpeghextension. تتيح إضافة IAMF الآن إخراج الصوت بكلتا الأذنين بسلاسة، إما من خلال برنامج فك الترميز عبر iamf_tools أو من خلال ميزة "الصوت المكاني" في نظام التشغيل Android، مع منطق جديد يتطابق مع تنسيق إخراج مكبرات الصوت.
  • تشغيل الإعلانات: تم إجراء تحسينات على الموثوقية، وتحسين دعم "الإعلانات البينية" في HLS لـ X-PLAYOUT-LIMIT وX-SNAP، وباستخدام أحدث تبعية لحزمة IMA SDK، يمكنك التحكّم في ما إذا كانت عناوين URL للنقرة على الإعلان تُفتح في علامات تبويب مخصّصة باستخدام setEnableCustomTabs.

‫HLS: يتيح ExoPlayer الآن استخدام الموقع الجغرافي الاحتياطي عند مواجهة أخطاء في التحميل إذا كانت هناك مصادر بيانات متكررة من مواقع جغرافية مختلفة.

  • الجلسة: يوسّع MediaSessionService الآن نطاق LifecycleService، ما يتيح للتطبيقات الوصول إلى نطاق دورة حياة الخدمة.

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

تعديل الوسائط وTransformer

بالنسبة إلى المطوّرين الذين ينشئون تجارب تعديل الوسائط، أجرينا تعديلات على السرعة لتصبح أكثر فعالية. يمكن الآن ضبط الحد الأقصى لعدد اللقطات في الثانية للفيديو من خلال EditedMediaItem.Builder.setFrameRate(). ويكون ذلك مفيدًا بشكل خاص للتحكّم في حجم الناتج والحفاظ على الأداء عند زيادة سرعة الوسائط باستخدام setSpeed().

وحدات جديدة لاستخراج الإطارات وتطبيق تأثيرات Lottie

في هذا الإصدار، قسّمنا بعض الوظائف إلى وحدات جديدة لتقليل نطاق بعض التبعيات:

 

  • تمت إزالة FrameExtractor من وحدة media3-inspector الرئيسية، لذا يُرجى نقل الرمز البرمجي لاستخدام وحدة media3-inspector-framemodule الجديدة وتعديل عمليات الاستيراد إلى androidx.media3.inspector.frame.FrameExtractor.
  • نقلنا أيضًا تأثير LottieOverlay إلى وحدة media3-effect-lottie منفصلة. نذكّرك بأنّ هذه الميزة تتيح لك تطبيق صور متحركة بتنسيق Lottie مستندة إلى المتجهات مباشرةً على إطارات الفيديو بطريقة سهلة.

يُرجى التواصل معنا من خلال أداة تتبُّع المشاكل إذا واجهت أي أخطاء أو إذا كانت لديك أسئلة أو طلبات ميزات. نتطلّع إلى تلقّي ردّك.

من كتابة:
متابعة القراءة