निराशाजनक रूप से, कोई सार्वभौमिक रूप से बजाने योग्य प्रकार नहीं है। डब्ल्यूएवी निकटतम आता है, लेकिन यह काफी बड़ा है और आईई 9 में समर्थित नहीं है। आपको कई प्रकार के उपलब्ध होने की आवश्यकता होगी और एक प्रकार का ब्राउज़र चुन सकता है।
ऐसा करने के लिए, सुविधा का पता लगाने का उपयोग करें, ब्राउज़र पहचान नहीं। प्रत्येक ब्राउज़र का समर्थन करने वाले मीडिया प्रकार समय के साथ बदल जाएंगे, इसलिए आपका कोड जो फ़ायरफ़ॉक्स मानता है वह एमपी 3 नहीं चला सकता है, शायद कुछ साल से पुराना हो जाएगा, जब मोज़िला इसे गोद लेता है (पेटेंट समाप्त होने के बाद)। canPlayType का उपयोग करें, जो अगर किसी दिए गए प्रारूप समर्थित है इंगित करता है:
var audio = new Audio();
if(audio.canPlayType("audio/mpeg") == "probably") {
playSound("myMedia.mp3");
} else if(audio.canPlayType("audio/webm") == "probably") {
playSound("myMedia.webm");
}
// do checks for other types...
इसके अलावा, अगर आप HTML के रूप में ऑडियो टैग लिख रहे हैं, तो आप कई <source>
टैग का उपयोग कर सकते हैं, और ब्राउज़र पहले एक यह कर सकते हैं खेलेंगे:
<audio controls="controls">
<source src="mymedia.ogg" type="audio/ogg" />
<source src="mymedia.mp3" type="audio/mpeg" />
Update your browser! This sentence is fallback content for browsers that do not support the audio element at all.
</audio>
यदि आप ओग ऑडियो समर्थन के लिए परीक्षण करना चाहते हैं, तो आप शायद ओग वोरबिस के लिए विशेष रूप से परीक्षण करना चाहते हैं। ओग एक "कंटेनर" प्रारूप है जो hypothetically use other codecs के अलावा वोर्बीस और थियोरा (उदाहरण के लिए, Opus format) के अलावा।तुम इतनी तरह Ogg Vorbis के लिए परीक्षण कर सकते हैं:
audio.canPlayType('audio/ogg; codecs="vorbis"') == "probably";
ध्यान दें कि canPlayType
तीन संभावित वापसी मान हैं:
- "शायद" - मीडिया प्रकार लगभग निश्चित रूप से
- खेला जा सकता है " शायद " - मीडिया प्रकार बजाने योग्य हो सकता है। जब आप ब्राउज़र में सामान्य ओग समर्थन के बारे में पूछते हैं तो यह वापस किया जाता है जब विशिष्ट कोडेक्स (यानी वोर्बिस और थियोरा) के लिए ओग समर्थन होता है। एक ओग फ़ाइल एक कोडेक का उपयोग करें जो ब्राउज़र द्वारा समर्थित नहीं है, इसलिए यदि आप कोडेक निर्दिष्ट नहीं करते हैं, तो ब्राउज़र केवल अनुमान लगा सकता है कि इसे चलाने में सक्षम हो सकता है।
- ""(रिक्त स्ट्रिंग) - मीडिया प्रकार निश्चित रूप से चलाए जाने योग्य नहीं
है क्या तुम सच में के लिए परीक्षण ogg समर्थन के लिए परीक्षण करने के लिए है, तो के बजाय चाहते हैं तो "शायद", आप (यानी, या तो "शायद" या "शायद" के लिए परीक्षण), तो जैसे एक गैर खाली स्ट्रिंग के लिए परीक्षण कर सकते हैं:
// test for *any* Ogg codecs
if(audio.canPlayType("audio/ogg") != "") {
playSound("myMedia.ogg");
}
आप जो कुछ विशिष्ट कोडेक अपने मीडिया फ़ाइल का उपयोग करता है, उदाहरण के लिए परीक्षण करना चाहिए,साथ Vorbis के लिए। सामान्य ओग समर्थन के लिए परीक्षण उपयोगी होने की संभावना नहीं है।
wav। चूंकि यह ज्यादातर कच्चे पीसीएम प्लस एक बहुत ही सरल हेडर है, इसलिए मैंने एक मंच नहीं देखा है जहां इसे डिफ़ॉल्ट रूप से नहीं खेला जा सकता है, हालांकि मैं गलत हो सकता हूं। –
फ़ायरफ़ॉक्स, आईई, सफारी और ओपेरा के लिए क्रोम, फ़ायरफ़ॉक्स और ओपेरा + wav के लिए वेब का उपयोग करें। –
सुविधा का पता लगाने, ब्राउज़र का पता लगाने का उपयोग करें! प्रत्येक ब्राउज़र का समर्थन किस प्रकार के साथ बदल जाएगा; 'canplayType' का उपयोग करें: https://developer.mozilla.org/en-US/docs/DOM/HTMLMediaElement#Methods – apsillers