html5 कस्टम एचटीएमएल 5 नियंत्रण के साथ एयरप्ले




safari html5-video (3)

क्या किसी को पता है कि क्या एयरप्ले को HTML5 वीडियो पर काम करने का कोई तरीका है जो कस्टम नियंत्रण का उपयोग कर रहा है? यह महत्वपूर्ण हिस्सा है, मुझे एहसास है कि अगर आप html5 नियंत्रणों का उपयोग कर रहे हैं तो आप तत्व को एक्स-वेबकिट-एयरप्ले = "अनुमति" विशेषता जोड़ सकते हैं लेकिन मेरा वीडियो प्लेयर कस्टम निर्मित नियंत्रण का उपयोग करता है।

ऐसा प्रतीत होता है कि सफ़ारी ने HTML5 में बनाए गए एयरप्ले बटन को बनाए रखा है, लेकिन क्या ऐसा करने का एक तरीका है यदि मैं नियंत्रण में बिल्ट इन का उपयोग नहीं कर रहा हूं? यहाँ मैंने लिखा है html5 खिलाड़ी के लिए एक कड़ी है। ध्यान दें कि निचले हिस्से पर नियंत्रण मेरे ही हैं:

http://pluralsight.com/training/Player?author=keith-brown&name=aspdotnet-security&mode=live&clip=0&course=aspdotnet-security

धन्यवाद!


अफसोस की बात है कि ऐप्पल ने एयरप्ले जावास्क्रिप्ट इवेंट कॉल्स को लागू नहीं किया है, यह अधिकतर कारण है क्योंकि जब आप अपने नेटालुअल क्विकटाइम नियंत्रण में एयरप्ले का उपयोग करते हैं, एयरप्ले उपयोगकर्ता को एयरप्ले डिवाइसेस के नज़दीक से पूछता है। वर्तमान में आपकी सामग्री में इस डेटा को खींचने के लिए सफारी विशिष्ट जेएस कार्यान्वयन नहीं है और जो उपलब्ध है उसके आधार पर बटन बनायें।

फरवरी 2013 तक, केवल एक ही चीज़ जिसे आप HTML5 में एयरप्ले के लिए निर्दिष्ट कर सकते हैं यदि आप एयरप्ले नियंत्रण दिखाने या दिखाने में नहीं चाहते हैं

https://developer.apple.com/library/safari/#documentation/AudioVideo/Conceptual/AirPlayGuide/OptingInorOutofAirPlay/OptingInorOutofAirPlay.html

आप एप्पल के साथ एक बग फ़ाइल कर सकते हैं यदि यह एक ऐसी सुविधा है जिसे आप भविष्य की रिलीज में चाहेंगे: https://bugreport.apple.com/

उम्मीद है की यह मदद करेगा।


हम एयरक्राफ्ट डिवाइस बंद स्विच पकड़ने के लिए webkitcurrentplaybacktargetiswirelesschanged घटना की जांच कर सकते हैं:

      this.on(videoEl, 'webkitcurrentplaybacktargetiswirelesschanged', this.checkWireles);

अच्छी खबर यहां! यह सुविधा सफारी 9 में लागू की गई है।

सफारी 9.0 आपको जावास्क्रिप्ट एयरप्ले समर्थन के साथ HTML5 मीडिया के लिए कस्टम नियंत्रण बनाने की अनुमति देता है। वायु- WebKitPlaybackTargetAvailabilityEvent उपलब्धता का पता लगाने के लिए सफारी की WebKitPlaybackTargetAvailabilityEvent उपलब्धता का प्रयोग करें और फिर एयरप्ले उपकरणों पर ऑडियो और वीडियो स्ट्रीम करने के लिए अपने स्वयं के नियंत्रण जोड़ें।

के जरिए। सफारी 9 में नया क्या है

यहां एचटीएमएल 5 वीडियो और एयरपले के लिए एक उदाहरण है

// Detect if AirPlay is available
// Mac OS Safari 9+ only
if (window.WebKitPlaybackTargetAvailabilityEvent) {
    video.addEventListener('webkitplaybacktargetavailabilitychanged', function(event) {
        switch (event.availability) {
            case "available":
                AirPlayButton.show();
                break;
            default:
                AirPlayButton.hide();
        }
        AirPlayButton.on('click', function() {
            video.webkitShowPlaybackTargetPicker();
        });
    });
}




airplay