2008-11-18 10 views
7

मैं एक एम्बेडेड विंडोज मीडिया प्लेयर को नियंत्रित करने के लिए जावास्क्रिप्ट का उपयोग करना चाहता हूं, साथ ही खिलाड़ी द्वारा प्रदर्शित किसी भी गुण को एक्सेस करना चाहता हूं। मुझे ऑनलाइन कुछ हैकी उदाहरण मिल गए हैं, लेकिन कुछ भी ठोस नहीं है।क्या विंडोज मीडिया प्लेयर के लिए कोई दस्तावेज जावास्क्रिप्ट एपीआई है?

मुझे वास्तव में खेलने, रोकने, रोकने, तलाशने, पूर्णस्क्रीन इत्यादि तक पहुंच की आवश्यकता है। मैं किसी भी घटनाओं तक पहुंच प्राप्त करना चाहता हूं जो खिलाड़ी प्रसारण के लिए होता है।

सहायता अद्भुत होगी (मेरे पास पहले से ही एक फ्लैश इक्विव है, बस आपको पता है), धन्यवाद!

उत्तर

6

माइक्रोसॉफ्ट के डेवलपर सेंटर में एक एपीआई है, लेकिन यह केवल तभी काम करेगा जब आप सक्रिय-एक्स का उपयोग कर विंडोज मीडिया प्लेयर एम्बेड करते हैं।

, एपीआई के बारे में अधिक "सीख" करने के लिए MSDN की जाँच: http://msdn.microsoft.com/en-us/library/dd564034(VS.85).aspx

+1

यह लिंक माइक्रोसॉफ्ट विंडोज सीई में मीडिया प्लेयर के लिए है .NET 4.2 मुझे नहीं लगता कि वह ऑपरेटिंग सिस्टम है जिसकी आप वास्तव में परवाह करते हैं –

4

विंडोज मीडिया प्लेयर को सक्रिय नियंत्रण के रूप में उजागर किया गया है कि विंडोज स्क्रिप्ट होस्ट में चल रही किसी भी स्क्रिप्टिंग भाषा को एक्सेस करने में सक्षम होना चाहिए। आप इसे नियंत्रित करने के लिए जेएसक्रिप्ट का उपयोग करने में सक्षम होना चाहिए। जेस्क्रिप्ट जावा स्क्रिप्ट का माइक्रोस्कोफ्ट प्रत्यारोपण है। जानकारी क्या पर वस्तुओं और विधियों उपलब्ध विंडोज मीडिया प्लेयर के लिए jscript उपयोग कर रहे हैं के लिए SE this link.

0

कोई खुला JavaScript लाइब्रेरी जहाँ तक मैं एक WMP खिलाड़ी के crossbrowser clientside से निपटने के लिए पता है नहीं है। हालांकि, this link आपको अपनी छोटी पुस्तकालय शुरू करने के लिए काफी आसान बनाना चाहिए। कोड को आधुनिक ब्राउज़र संस्करणों में कुछ अद्यतन और परीक्षण की आवश्यकता हो सकती है लेकिन आपके पास मूल बातें हैं।

एक गूगल कोड परियोजना के लिए एक बहुत अच्छा विचार हो सकता है के लिए पुस्तकालय अपने खोज, मुझे लगता है कि जब हर कोई आज sistr आदि के साथ sIFR/swfobject या Microsoft Silverligt साथ एडोब फ्लैश उपयोग कर रहा है, वहाँ ज्यादा ब्याज clientside स्क्रिप्ट लिखने के लिए नहीं कर रहे हैं डब्ल्यूएमपी के लिए नियंत्रण।

+0

दुर्भाग्य से मैं एक बड़ी वर्ष कॉर्पोरेट ग्राहक जिसका आईटी विभाग सोचता है के साथ सौदा है कि ओएस के लिए Flash या Silverlight जोड़ने छवि विवाद पैदा कर सकती है। ग्राहक काम के लिए हुरेय ... हालांकि लिंक के लिए धन्यवाद, यह सहायक लग रहा है। – ironkeith

11

एपीआई इंटरनेट एक्सप्लोरर के लिए ActiveX कनेक्टिविटी देशी की आवश्यकता है, या एक plugin for Firefox उपयोग कर सकते हैं।

यहां एक नमूना पृष्ठ है जो आपको प्रारंभ कर सकता है।

<html> 
<head> 
    <title>so-wmp</title> 
    <script> 

    onload=function() { 
     player = document.getElementById("wmp"); 
     player.URL = "test.mp3"; 
    }; 

    function add(text) { 
     document.body 
     .appendChild(document.createElement("div")) 
     .appendChild(document.createTextNode(text)); 
    }; 

    function handler(type) { 
     var a = arguments; 
     add(type +" = "+ PlayStates[a[1]]); 
    }; 

    // http://msdn.microsoft.com/en-us/library/bb249361(VS.85).aspx 
    var PlayStates = { 
     0: "Undefined", // Windows Media Player is in an undefined state. 
     1: "Stopped", // Playback of the current media item is stopped. 
     2: "Paused", // Playback of the current media item is paused. When a media item is paused, resuming playback begins from the same location. 
     3: "Playing", // The current media item is playing. 
     4: "ScanForward", // The current media item is fast forwarding. 
     5: "ScanReverse", // The current media item is fast rewinding. 
     6: "Buffering", // The current media item is getting additional data from the server. 
     7: "Waiting", // Connection is established, but the server is not sending data. Waiting for session to begin. 
     8: "MediaEnded", // Media item has completed playback. 
     9: "Transitioning", // Preparing new media item. 
     10: "Ready", // Ready to begin playing. 
     11: "Reconnecting" // Reconnecting to stream. 
    }; 

    </script> 
    <script for="wmp" event="PlayStateChange(newState)"> 
    // http://msdn.microsoft.com/en-us/library/bb249362(VS.85).aspx 
    handler.call(this, "playstatechange", newState); 
    </script> 
</head> 
<body> 
    <div id="page"> 
    <object id="wmp" 
     classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" 
      type="application/x-oleobject"> 
    </object> 
    </div> 
</body> 
</html> 
0

अगली WMP वस्तु का उपयोग करना चाहिए (क्रोम, एफएफ, सफारी में काम करता है)

objPlayer = document.getElementById("wmp");   
    objPlayer.controls.stop(); 
    objPlayer.URL = this.url; 
    objPlayer.controls.play(); 

<EMBED id="wmp" TYPE="application/x-mplayer2" name="MediaPlayer" width="0" height="0" ShowControls="0" ShowStatusBar="0" ShowDisplay="0" autostart="0"></EMBED> 
संबंधित मुद्दे