الفرق بين المراجعتين لصفحة: «HTML/video»

من موسوعة حسوب
ط استبدال النص - ':(Content sectioning|Edits|Embedded content|Forms|Inline text semantics|Input Types|Interactive elements|Main Root|Metadata|Multimedia|Scripting|Table|Text Content)' ب':HTML $1'
ط تبديل كلمة "مرئي" مكان "صوتي"
 
(5 مراجعات متوسطة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:العنصر <code><video></code>}}</noinclude>
<noinclude>{{DISPLAYTITLE:العنصر <code><video></code>}}</noinclude>
يُستعمَل العنصر <code><video></code> لتضمين المحتوى الصوتي في المستندات، وقد يحتوي على ملف مصدري واحد أو أكثر التي تُمثَّل باستخدام الخاصية <code>src</code> أو عبر العنصر <code><nowiki><source></nowiki></code>، وسيختار المتصفح أنسب صيغة لتشغيلها.
يُستعمَل العنصر <code><video></code> لتضمين المحتوى المرئي في المستندات، وقد يحتوي على ملف مصدري واحد أو أكثر التي تُمثَّل باستخدام الخاصية <code>src</code> أو عبر العنصر <code><nowiki><source></nowiki></code>، وسيختار المتصفح [[HTML/Media Formats|أنسب صيغة لتشغيلها]].
مثال عن استخدام العنصر <code><video></code> لإضافة مقطع فيديو بصيغة WebM (عبر الخاصية <code>[[#src|src]]</code>) يبدأ تلقائيًا (عبر الخاصية <code>[[#autoplay|autoplay]]</code>) وله صورة غلاف تُعرَض إلى أن يبدأ تشغيله (الخاصية <code>[[#poster|poster]]</code>)، وستُعرَض رسالة نصية تنوِّه المستخدم أنَّ متصفحه لا يدعم العنصر <code><video></code>:<syntaxhighlight lang="html">
مثال عن استخدام العنصر <code><video></code> لإضافة مقطع فيديو بصيغة WebM (عبر الخاصية <code>[[#src|src]]</code>) بارتفاع <code>360</code>، مع عرض عناصر التحكم (عبر الخاصية <code>[[#controls|controls]]</code>) وله صورة غلاف تُعرَض إلى أن يبدأ تشغيله (الخاصية <code>[[#poster|poster]]</code>)، وستُعرَض رسالة نصية تنوِّه المستخدم أنَّ متصفحه لا يدعم العنصر <code><video></code>:<syntaxhighlight lang="html">
<video src="videofile.webm" autoplay poster="posterimage.jpg">
<video src="khamsat.webm" controls poster="khamsat-poster.jpg" height="360">
Sorry, your browser doesn't support embedded videos,
  لا يدعم متصفحك العنصر <code>video</code>.
but don't worry, you can <a href="videofile.webm">download it</a>
and watch it with your favorite video player!
</video>
</video>
</syntaxhighlight>هذا المثال عن استخدام العنصر <code><video></code> لإضافة مقطع فيديو بصيغة WebM (عبر الخاصية <code>[[#src|src]]</code>) مع عرض ترجمتين (subtitles) واحدة بالإنكليزية والأخرى بالعربية وذلك عبر العنصر <code>[[HTML/track|<track>]]</code>:<syntaxhighlight lang="html">
</syntaxhighlight>هذا المثال عن استخدام العنصر <code><video></code> لإضافة مقطع فيديو بصيغة [[HTML/Media Formats#WebM|WebM]] (عبر الخاصية <code>[[#src|src]]</code>) مع عناصر تحكم (عبر الخاصية <code>[[#controls|controls]]</code>) ويبدأ تشغيله تلقائيًا (الخاصية <code>[[#autoplay|autoplay]]</code>) مع عرض تفريغ نصي (captions) بالعربية وذلك عبر العنصر <code>[[HTML/track|<track>]]</code>:<syntaxhighlight lang="html">
<video src="videofile.webm">
<video src="khamsat.webm" controls autoplay height="360">
   <track kind="subtitles" src="videofile.en.vtt" srclang="en"
   <track kind="captions" src="khamsat.vtt" srclang="ar" label="عربي" default>
    label="English">
   لا يدعم متصفحك العنصر <code>video</code>.
   <track kind="subtitles" src="videofile.sv.vtt" srclang="ar"
    label="Arabic">
</video>
</video>
</syntaxhighlight>أما هذا المثال فيوفِّر ثلاثة مصادر مختلفة للمقطع، مما يسمح بتشغيله في المتصفح مهما كانت المرمازات (codex) التي يدعمها المتصفح، إذ سيُجرِّب المتصفح صيغة WebM وإن لم يستطع تشغيلها فسيجرب تشغيل MP4، وإن لم يستطع تشغيلها فسيجرب OGG.
</syntaxhighlight>أما هذا المثال فيوفِّر مصدرين مختلفين للمقطع، مما يسمح بتشغيله في المتصفح مهما كانت المرمازات (codex) التي يدعمها المتصفح، إذ سيُجرِّب المتصفح صيغة [[HTML/Media Formats#WebM|WebM]] وإن لم يستطع تشغيلها فسيجرب تشغيل [[HTML/Media Formats#MP4|MP4]].


لاحظ استخدام الخاصية <code>[[#width|width]]</code> لتحديد عرض الفيديو (بالبكسل)، مع استخدام الخاصية <code>[[#controls|controls]]</code> لإضافة عناصر للتحكم بالمقطع، والخاصية <code>[[#poster|poster]]</code> لإضافة غلاف له.<syntaxhighlight lang="html">
لاحظ استخدام الخاصية <code>[[HTML/video#height|height]]</code> لتحديد ارتفاع الفيديو (بالبكسل)، مع استخدام الخاصية <code>[[#controls|controls]]</code> لإضافة عناصر للتحكم بالمقطع، والخاصية <code>[[#poster|poster]]</code> لإضافة غلاف له.<syntaxhighlight lang="html">
<video width="480" controls poster="videofile.gif" >
<video controls poster="khamsat-poster.jpg" height="360">
   <source src="videofile.webm" type="video/webm">
   <source src="khamsat.webm" type="video/webm">
   <source src="videofile.mp4" type="video/mp4">
   <source src="khamsat.mp4" type="video/mp4">
   <source src="videofile.ogv" type="video/ogg">
   لا يدعم متصفحك العنصر <code>video</code>.
  Your browser doesn't support HTML5 video tag.
</video>
</video>
</syntaxhighlight>
</syntaxhighlight>


== بطاقة العنصر ==
{| class="wikitable" style="width: 100%;"
{| class="wikitable" style="width: 100%;"
|-
|-
سطر 109: سطر 105:
== ملاحظات الاستخدام ==
== ملاحظات الاستخدام ==


يمكن أن يحتوي العنصر <code><video></code> على رابط URL لمقطع أو أكثر من مقاطع الفيديو، يمكن استخدام الخاصية <code>src</code> أو العنصر <code>[[HTML/source|<nowiki><source></nowiki>]]</code>، وسيختار المتصفح أكثر مقطع ملائم لتشغيله.
يمكن أن يحتوي العنصر <code><video></code> على رابط URL لمقطع أو أكثر من مقاطع الفيديو، يمكن استخدام الخاصية <code>src</code> أو العنصر <code>[[HTML/source|<nowiki><source></nowiki>]]</code>، وسيختار المتصفح [[HTML/Media Formats|أكثر مقطع ملائم لتشغيله]].


== دعم الخادوم ==
== دعم الخادوم ==
إن كان نوع MIME لنوع مقاطع الفيديو الذي تستعمله ليس مضبوطًا ضبطًا صحيحًا، فقد لا يظهر مقطع الفيديو أو سيُعرَض مستطيلٌ فضيٌ يحتوي على إشارة × (إن كانت JavaScript مفعّلة).
إن كان نوع MIME لنوع مقاطع الفيديو الذي تستعمله ليس مضبوطًا ضبطًا صحيحًا، فقد لا يظهر مقطع الفيديو أو سيُعرَض مستطيلٌ فضيٌ يحتوي على إشارة × (إن كانت JavaScript مفعّلة).


إذا كنتَ تستخدم خادوم أباتشي (Apache) لتخديم مقاطع فيديو Ogg، فيمكنك حلّ هذه المشكلة بإضافة لاحقة ملفات الفيديو إلى نوع MIME باسم <code>"video/ogg"</code>. أشهر امتدادات ملفات فيديو Ogg هي <code>"‎.ogm"</code> و <code>"‎.ogv"</code> و <code>"‎.ogg"</code>.
إذا كنتَ تستخدم خادوم أباتشي (Apache) لتخديم مقاطع فيديو [[HTML/Media Formats#Ogg|Ogg]]، فيمكنك حلّ هذه المشكلة بإضافة لاحقة ملفات الفيديو إلى نوع MIME باسم <code>"video/ogg"</code>. أشهر امتدادات ملفات فيديو Ogg هي <code>"‎.ogm"</code> و <code>"‎.ogv"</code> و <code>"‎.ogg"</code>.


لفعل ذلك عليك تعديل ملف <code>mime.types</code> في مجلد ‎<code>/etc/apache</code> أو استخدم تعليمة الضبط <code>AddType</code> في ملف <code>httpd.conf</code>:<syntaxhighlight lang="apache">
لفعل ذلك عليك تعديل ملف <code>mime.types</code> في مجلد ‎<code>/etc/apache</code> أو استخدم تعليمة الضبط <code>AddType</code> في ملف <code>httpd.conf</code>:<syntaxhighlight lang="apache">
سطر 120: سطر 116:
AddType video/ogg .ogv
AddType video/ogg .ogv
AddType video/ogg .ogg
AddType video/ogg .ogg
</syntaxhighlight>أما إذا كانت صيغة ملفات الفيديو عندك هي WebM، فيمكنك حلّ هذه المشكلة في خادوم أباتشي بإضافة الامتداد الذي تستعمله لمقاطع الفيديو عندك (أشهر امتداد هو <code>"‎.webm"</code>) إلى نوع MIME باسم <code>"video/webm"</code> في ملف <code>mime.types</code> في مجلد ‎<code>/etc/apache</code> أو استخدم تعليمة الضبط <code>AddType</code> في ملف <code>httpd.conf</code>:<syntaxhighlight lang="apache">
</syntaxhighlight>أما إذا كانت صيغة ملفات الفيديو عندك هي [[HTML/Media Formats#WebM|WebM]]، فيمكنك حلّ هذه المشكلة في خادوم أباتشي بإضافة الامتداد الذي تستعمله لمقاطع الفيديو عندك (أشهر امتداد هو <code>"‎.webm"</code>) إلى نوع MIME باسم <code>"video/webm"</code> في ملف <code>mime.types</code> في مجلد ‎<code>/etc/apache</code> أو استخدم تعليمة الضبط <code>AddType</code> في ملف <code>httpd.conf</code>:<syntaxhighlight lang="apache">
AddType video/webm .webm
AddType video/webm .webm
</syntaxhighlight>قد يوفِّر لك موفِّر خدمة الاستضافة واجهةً سهلةً لتعديل ضبط أنواع MIME.
</syntaxhighlight>قد يوفِّر لك موفِّر خدمة الاستضافة واجهةً سهلةً لتعديل ضبط أنواع MIME.
سطر 127: سطر 123:
*معيار [https://html.spec.whatwg.org/multipage/embedded-content.html#the-video-element HTML Living Standard].
*معيار [https://html.spec.whatwg.org/multipage/embedded-content.html#the-video-element HTML Living Standard].
*مواصفة [https://www.w3.org/TR/2014/REC-html5-20141028/embedded-content-0.html#the-video-element HTML5].
*مواصفة [https://www.w3.org/TR/2014/REC-html5-20141028/embedded-content-0.html#the-video-element HTML5].
[[تصنيف:HTML]]
[[تصنيف:HTML|{{SUBPAGENAME}}]]
[[تصنيف:HTML Elements]]
[[تصنيف:HTML Elements|{{SUBPAGENAME}}]]
[[تصنيف:HTML Multimedia]]
[[تصنيف:HTML Multimedia|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 08:51، 4 يناير 2019

يُستعمَل العنصر <video> لتضمين المحتوى المرئي في المستندات، وقد يحتوي على ملف مصدري واحد أو أكثر التي تُمثَّل باستخدام الخاصية src أو عبر العنصر <source>، وسيختار المتصفح أنسب صيغة لتشغيلها.

مثال عن استخدام العنصر <video> لإضافة مقطع فيديو بصيغة WebM (عبر الخاصية src) بارتفاع 360، مع عرض عناصر التحكم (عبر الخاصية controls) وله صورة غلاف تُعرَض إلى أن يبدأ تشغيله (الخاصية poster)، وستُعرَض رسالة نصية تنوِّه المستخدم أنَّ متصفحه لا يدعم العنصر <video>:

<video src="khamsat.webm" controls poster="khamsat-poster.jpg" height="360">
  لا يدعم متصفحك العنصر <code>video</code>.
</video>

هذا المثال عن استخدام العنصر <video> لإضافة مقطع فيديو بصيغة WebM (عبر الخاصية src) مع عناصر تحكم (عبر الخاصية controls) ويبدأ تشغيله تلقائيًا (الخاصية autoplay) مع عرض تفريغ نصي (captions) بالعربية وذلك عبر العنصر <track>:

<video src="khamsat.webm" controls autoplay height="360">
  <track kind="captions" src="khamsat.vtt" srclang="ar" label="عربي" default>
  لا يدعم متصفحك العنصر <code>video</code>.
</video>

أما هذا المثال فيوفِّر مصدرين مختلفين للمقطع، مما يسمح بتشغيله في المتصفح مهما كانت المرمازات (codex) التي يدعمها المتصفح، إذ سيُجرِّب المتصفح صيغة WebM وإن لم يستطع تشغيلها فسيجرب تشغيل MP4. لاحظ استخدام الخاصية height لتحديد ارتفاع الفيديو (بالبكسل)، مع استخدام الخاصية controls لإضافة عناصر للتحكم بالمقطع، والخاصية poster لإضافة غلاف له.

<video controls poster="khamsat-poster.jpg" height="360">
  <source src="khamsat.webm" type="video/webm">
  <source src="khamsat.mp4" type="video/mp4">
  لا يدعم متصفحك العنصر <code>video</code>.
</video>

بطاقة العنصر

تصنيفات المحتوى عنصر تنظيمي أو عنصر عادي أو عنصر يحتوي وسائط مضمّنة أو عنصر تفاعلي.
المحتوى المسموح إذا كان للعنصر الخاصية src فيمكن أن يحتوي على عنصر <track> واحد أو أكثر يتبعه محتوى عادي لا يتضمن العنصرين <audio> و <video>.

أما إذا لم تكن له الخاصية src فيمكن أن يحتوي على عنصر <source> واحد أو أكثر، يتبعه عنصر <track> واحد أو أكثر ويتبعه محتوى عادي لا يتضمن العنصر <audio> و <video>.

الوسم المختصر لا يمكن حذف أيّ من وسمَي البداية أو النهاية.
العناصر الأب أي عنصر يقبل العناصر التضمينية.
واجهة DOM HTMLVideoElement

دعم المتصفحات

Chrome Firefox Edge Safari Opera
مدعوم مدعوم مدعوم مدعوم مدعوم

بعض الخاصيات المُضافة حديثًا في HTML5 لا تعمل في جميع المتصفحات.

الخاصيات

يمكن استخدام الخاصيات العامة في هذا العنصر.

autoplay

هذه الخاصية منطقية (Boolean) وإذا اُستعملت (حتى لو كانت قيمتها "false"!) فسيبدأ تشغيل مقطع الفيديو في أسرع وقت ممكن، دون الانتظار حتى يكتمل تنزيل الملف كله.

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

buffered

خاصية قابلة للقراءة لتحديد ما هي المجالات التي نُزِّلَت من المقطع، إذ تحتوي هذه الخاصية على كائن TimeRanges.

controls

إذا كان هذه الخاصية موجودة، فسيوفر المتصفح عناصر تحكم ليسمح عبرها للمستخدم بالتحكم بتشغيل الفيديو، بما في ذلك مستوى الصوت والانتقال إلى مواضع مختلفة في المقطع والإيقاف المؤقت والتشغيل...

height

ارتفاع منطقة عرض الفيديو بواحدة البكسل (يسمح بالقيم المطلقة فقط، ولا يجوز استخدام القيم النسبية).

width

عرض منطقة عرض الفيديو بواحدة البكسل (يسمح بالقيم المطلقة فقط، ولا يجوز استخدام القيم النسبية).

loop

هذه الخاصية منطقية (Boolean)، فإن كانت موجودةً فسيُعاد تشغيل المقطع من البداية بعد الوصول إلى نهايته.

muted

هذه الخاصية منطقية (Boolean) تُشير إذا ما كان المقطع مكتوم الصوت بادئ الأمر. القيمة الافتراضية هي false.

played

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

preload

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

  • none: يجب ألّا يُحمَّل المقطع مسبقًا.
  • metadata: يجب أن تُحمَّل البيانات الوصفية (مثل طول المقطع) فقط.
  • auto: تُشير إلى أنَّ المقطع يمكن أن يُحمَّل حتى لو كان من المتوقع ألّا يشغله المستخدم.
  • إذا كانت القيمة هي سلسلة نصية فارغة فهي تكافئ القيمة auto.

إذا لم تُضبَط قيمة هذه الخاصية، فستؤخذ القيمة الافتراضية من المتصفح (ولكل متصفح قيمة افتراضية خاصة به)، لكن تنصح المواصفة المتصفحات أن تكون القيمة الافتراضية هي metadata.

لاحظ أنَّ الخاصية autoplay لها أولوية على الخاصية preload، فلو حُدِّدَت الخاصية autoplay فمن المنطقي أن يبدأ المتصفح تنزيل المقطع مباشرةً.

يجدر بالذكر أنَّ المواصفة لم تُجبِر المتصفح على اتباع قيمة هذه الخاصية، فهي مجرد تلميحة عمّا يريده مطوِّر الصفحة.

poster

رابط URL يُشير إلى غلاف للفيديو الذي سيظهر حتى يبدأ المستخدم تشغيل الفيديو. إن لم تُحدَّد قيمة هذه الخاصية فلن يُعرَض شيء حتى يتوافر أوّل إطار من إطارات الفيديو، ثم سيُعرَض أوّل إطار كغلاف للفيديو.

src

تحتوي هذه الخاصية على رابط URL لملف الفيديو الذي سيُحمَّل، وهذه الخاصية اختيارية، ويمكنك استخدام العنصر <source> داخل العنصر <video> لتحديد رابط URL للمقطع (أو المقاطع) التي ترغب في تضمينها.

ملاحظات الاستخدام

يمكن أن يحتوي العنصر <video> على رابط URL لمقطع أو أكثر من مقاطع الفيديو، يمكن استخدام الخاصية src أو العنصر <source>، وسيختار المتصفح أكثر مقطع ملائم لتشغيله.

دعم الخادوم

إن كان نوع MIME لنوع مقاطع الفيديو الذي تستعمله ليس مضبوطًا ضبطًا صحيحًا، فقد لا يظهر مقطع الفيديو أو سيُعرَض مستطيلٌ فضيٌ يحتوي على إشارة × (إن كانت JavaScript مفعّلة).

إذا كنتَ تستخدم خادوم أباتشي (Apache) لتخديم مقاطع فيديو Ogg، فيمكنك حلّ هذه المشكلة بإضافة لاحقة ملفات الفيديو إلى نوع MIME باسم "video/ogg". أشهر امتدادات ملفات فيديو Ogg هي "‎.ogm" و "‎.ogv" و "‎.ogg".

لفعل ذلك عليك تعديل ملف mime.types في مجلد ‎/etc/apache أو استخدم تعليمة الضبط AddType في ملف httpd.conf:

AddType video/ogg .ogm
AddType video/ogg .ogv
AddType video/ogg .ogg

أما إذا كانت صيغة ملفات الفيديو عندك هي WebM، فيمكنك حلّ هذه المشكلة في خادوم أباتشي بإضافة الامتداد الذي تستعمله لمقاطع الفيديو عندك (أشهر امتداد هو "‎.webm") إلى نوع MIME باسم "video/webm" في ملف mime.types في مجلد ‎/etc/apache أو استخدم تعليمة الضبط AddType في ملف httpd.conf:

AddType video/webm .webm

قد يوفِّر لك موفِّر خدمة الاستضافة واجهةً سهلةً لتعديل ضبط أنواع MIME.

مصادر ومواصفات