2012-12-24 19 views
9

मैं अपने अनुप्रयोग में एक Video/MediaPlayer QML तत्व का उपयोग करने, और यह एक कस्टम धारा का वीडियो है चाहता हूँ। QMediaPlayer इसके समर्थन में जब से तुम यह बताओ कि एक QIODevice से पढ़ने के लिए जो कुछ भी आप चाहते हैं कर सकते हैं कर सकते हैं लगता है। लेकिन MediaPlayer केवल एक यूआरएल का समर्थन करता है।कस्टम यूआरएल प्रोटोकॉल हैंडलर क्यूटी 5

वहाँ किसी भी तरह से मैं अपने खुद के यूआरएल स्कीम रजिस्टर कर सकते हैं अपने खुद के स्ट्रीमिंग प्रोटोकॉल का उपयोग करता है है? उदाहरण के लिए, मैं थोड़ा की तरह कुछ कर सकता है मैं rtsp2://... बनाना चाहते थे कहते हैं,:

class Rtsp2 : public QIODevice 
{ 
    // open, read, seek, close, etc. 
} 

QCoreApplication::registerUrlProtocol("rtsp2", Rtsp2); 
+1

HANDELING यूआरएल ओएस specifick है। –

उत्तर

2

मैं विवरण को देखा नहीं है, लेकिन QML इंजन एक QNetworkAccessManager यह कनेक्टिविटी के लिए उपयोग करता है। आप उपवर्गीकरण और createRequest hooking द्वारा QNAM परत पर अपना स्वयं का प्रोटोकॉल जोड़ सकते हैं। हालांकि मैं QMediaPlayer मीडिया लोड करने के लिए इस QNAM का उपयोग करता है नहीं हो सकता है, क्योंकि अंतर्निहित मीडिया परत अक्सर अपने स्वयं के आईओ अमूर्त प्रदान करता है संदेह है।

(इसके अलावा, QNAM को कस्टम प्रोटोकॉल जोड़ने बिल्कुल तुच्छ है - आदर्श रूप में यह एक सरल 'registerProtocolFor' कॉल होगा लेकिन दुर्भाग्य से यह स्थिति नहीं है)