تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توضّح هذه الصفحة الأنواع المختلفة من مساحات العرض التي يمكن استخدامها لتشغيل الفيديو باستخدام Media3، وكيفية اختيار النوع المناسب لحالة الاستخدام. لمزيد من المعلومات حول عناصر Surface في Android، يمكنك الاطّلاع على مستندات الرسومات هذه.
اختيار نوع مساحة عرض PlayerView
تتيح لك السمة surface_type الخاصة بالعنصر PlayerView ضبط نوع
السطح المستخدَم لتشغيل الفيديو. القيم المسموح بها هي:
video_decoder_gl_surface_view (VideoDecoderGLSurfaceView): عرض الفيديو باستخدام أدوات العرض الإضافية
none - وهو مخصّص لتشغيل الصوت فقط ويجب استخدامه لتجنُّب الحاجة إلى إنشاء مساحة عرض لأنّ ذلك قد يكون مكلفًا.
إذا كان العرض مخصّصًا لتشغيل الفيديو العادي، يجب استخدام surface_view أو texture_view. تقدّم SurfaceView عددًا من المزايا مقارنةً بـ
TextureView لتشغيل الفيديوهات:
توقيت أكثر دقة للّقطات، ما يؤدي إلى تشغيل الفيديو بسلاسة أكبر
إمكانية إخراج فيديوهات HDR بجودة أعلى على الأجهزة المؤهَّلة
إمكانية إخراج المحتوى المحمي بموجب إدارة الحقوق الرقمية بشكل آمن
إمكانية عرض محتوى الفيديو بدقة العرض الكاملة على أجهزة Android TV التي تزيد من دقة طبقة واجهة المستخدم
لذلك، يجب تفضيل SurfaceView على TextureView كلما أمكن ذلك.
يجب استخدام TextureView فقط إذا لم تستوفِ SurfaceView احتياجاتك. أحد الأمثلة على ذلك هو الحالات التي تتطلّب عرض رسوم متحركة سلسة أو تمرير سطح الفيديو بسلاسة قبل الإصدار 7.0 من نظام التشغيل Android (المستوى 24 من واجهة برمجة التطبيقات)، كما هو موضّح في الملاحظات التالية. في هذه الحالة، من الأفضل استخدام TextureView فقط عندما تكون قيمة SDK_INT أقل من 24 (الإصدار 7.0 من نظام التشغيل Android) واستخدام SurfaceView في الحالات الأخرى.
لا يتوفّر النوع none، لأنّ ذلك يعني عدم تضمين PlayerSurface في شجرة واجهة مستخدم Compose.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-13 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-13 (حسب التوقيت العالمي المتفَّق عليه)"],[],[]]