← Back to HTML Course | Chapter 6: Canvas, SVG & Media | Lesson 3 of 6

HTML Media

कल्पना कीजिए कि आप किसी एंटरटेनमेंट वेबसाइट पर जाते हैं, लेकिन वहाँ न तो कोई वीडियो चलाने के लिए है और न ही सुनने के लिए कोई म्यूज़िक क्लिप—सिर्फ स्टैटिक टेक्स्ट आर्टिकल्स हैं जो बताते हैं कि गाने कैसे सुनाई देते हैं। यह एक बेहद उबाऊ अनुभव होगा। HTML media टैग्स इस समस्या को हल करते हैं। ये नेटिव पोर्टल एलिमेंट्स हैं जो आपको भारी, पुराने plugins लोड किए बिना सीधे अपने वेबपेज पर वीडियो और ऑडियो फाइलें embed करने देते हैं। इन एलिमेंट्स का इस्तेमाल करके, आप इंटरैक्टिव मीडिया प्लेयर्स दे सकते हैं जो फाइलें तेज़ी से लोड करते हैं और किसी भी स्क्रीन साइज़ के हिसाब से पूरी तरह ढल जाते हैं।
Syntax
markup
<video controls>
  <source src="file.mp4" type="video/mp4">
</video>
<audio controls>
  <source src="file.mp3" type="audio/mpeg">
</audio>

वेब Media का विकास

वेब के शुरुआती दिनों में, ब्राउज़र audio या video फाइलें native रूप से चला नहीं पाते थे। डेवलपर्स को Flash Player जैसे भारी-भरकम, असुरक्षित third-party plugins पर निर्भर रहना पड़ता था। मॉडर्न HTML5 ने native video और audio टैग्स लाकर इसे हल किया।

Note: यह सुनिश्चित करने के लिए कि आपके वीडियो तेज़ी से लोड हों और mobile devices पर सुचारू रूप से चलें, native HTML5 media एलिमेंट्स का उपयोग करें।
Warning: स्टैंडर्ड मीडिया फाइलें चलाने के लिए object या embed जैसे legacy, plugin-based टैग्स इस्तेमाल करने से बचें।

उदाहरण: The Evolution of Web Media

markup
<video src="movie.mp4" controls></video>

स्टैण्डर्ड वेब Media फॉर्मेट

वेब परफॉर्मेंस काफी हद तक सही media फॉर्मेट चुनने पर निर्भर करती है। videos के लिए, MP4 (ज़्यादा से ज़्यादा compatibility के लिए) या WebM (हाई-परफॉर्मेंस compression के लिए) का उपयोग करें। audio के लिए, MP3 या OGG फॉर्मेट का उपयोग करें।

Note: WebM और MP4 दोनों source फाइलें उपलब्ध कराएं ताकि ब्राउज़र सबसे कुशल फॉर्मेट अपने आप लोड कर सके।
Warning: भारी, unoptimized raw file formats (जैसे AVI या WAV) इस्तेमाल करने से bandwidth बर्बाद हो सकता है और आपकी साइट की लोड स्पीड धीमी हो सकती है।

उदाहरण: Standard Web Media Formats

markup
<video controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.webm" type="video/webm">
</video>

Media Layout साइज़ कंट्रोल करना

डिफ़ॉल्ट रूप से, video players अपने native फाइल आयामों पर दिखते हैं। आप HTML attributes या CSS properties का उपयोग करके उनकी width और height को आसानी से कंट्रोल करके अपने पेज लेआउट में फिट करा सकते हैं।

Note: रिस्पॉन्सिव video players बनाने के लिए percentage width को max-width सेटिंग के साथ मिलाकर इस्तेमाल करें।
Warning: अपने मीडिया प्लेयर्स पर fixed pixel widths सेट न करें, क्योंकि वे छोटी मोबाइल स्क्रीन्स पर overflow कर जाएंगे।

उदाहरण: Controlling Media Layout Sizes

markup
<video src="movie.mp4" controls style="width: 100%; max-width: 600px;"></video>

Fallback समाधान उपलब्ध कराना

हालांकि native HTML5 media एलिमेंट्स सभी मॉडर्न ब्राउज़र में सपोर्टेड हैं, कुछ legacy डिवाइस उन्हें रेंडर करने में असफल हो सकते हैं। आपको हमेशा उन यूज़र की मदद के लिए अपने media टैग्स के अंदर fallback टेक्स्ट या डाउनलोड लिंक शामिल करने चाहिए।

Note: यूज़र को media फाइल सीधे सेव करने देने के लिए fallback टेक्स्ट के रूप में डाउनलोड लिंक का उपयोग करें।
Warning: अपने मीडिया टैग्स के अंदर हमेशा स्पष्ट, मददगार fallback टेक्स्ट लिखें, क्योंकि पुराने ब्राउज़र्स टैग्स को इग्नोर करके इसके बजाय टेक्स्ट दिखाएंगे।

उदाहरण: Providing Fallback Solutions

markup
<video src="movie.mp4" controls>
  <a href="movie.mp4">Download the video</a>
</video>

Native Playback Attributes

मॉडर्न HTML5 media एलिमेंट्स में बिल्ट-इन attributes (जैसे controls, autoplay, loop, और muted) शामिल हैं जो आपको अपने video और audio players के native व्यवहार को कस्टमाइज़ करने देते हैं।

Note: हमेशा controls attribute शामिल करें ताकि आपके यूज़र media को pause और play कर सकें।
Warning: जब तक आप muted attribute भी शामिल नहीं करते, मॉडर्न ब्राउज़र्स वीडियो और ऑडियो को auto-play होने से रोक देते हैं।

उदाहरण: Native Playback Attributes

markup
<video src="movie.mp4" controls autoplay loop muted></video>
Live Example
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
🔒

Chapter Quiz — Complete all 6 topics to unlock

0/6 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.