video - कैसे gstreamer के साथ एवी वीडियो प्रदर्शित करने के लिए?




(2)

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

Avidemux प्लगइन ऑडियो और वीडियो भाग को AVI फ़ाइल से अलग कर सकता है, लेकिन आगे क्या करना है?

अगर मैं एक असंपीड़ित एवी फ़ाइल खोलता हूँ, क्या यह काम करती है अगर मैं सीधे वीडियोड सिंक के लिए एविडमेक्स प्लगइन के आउटपुट पैड को लिंक करता हूं?

वैसे, दक्षता पहलू में कौन से वीडियो सिंक बेहतर है? मैंने प्लगइन संदर्भ को देखा और बहुत सारे वीडियो सिंक देखे: glimagesink, osxvideosink, sdlvideosink, ximagesink, xvimagesink, dfbvideosink, fbdevsink, gconfvideosink क्या स्वत: पूर्णतः हमेशा अच्छा काम करता है? मेरा प्लेटफ़ॉर्म उबुंटू 9.04 है।

TIA ~


के रूप में निक Hadded सुझाव है कि, खेलने के लिए या decodebin शुरू करने के लिए एक अच्छी जगह है। प्रयोग करने के लिए मैं gst-launch का उपयोग करने का सुझाव देता हूं, जैसे:

gst-launch filesrc location=video.avi !
decodebin2 name=dec ! queue ! ffmpegcolorspace ! autovideosink
dec. ! queue ! audioconvert ! audioresample ! autoaudiosink

मैं ऑटोऑडियोइंसिंग और ऑटोवाल्ड्स का उपयोग कर रहा हूं क्योंकि वे आम तौर पर काम करते हैं जब आपको एक पाइपलाइन मिलती है जो काम करती है, कोड के साथ एक ही पाइप लाइन का निर्माण करने का प्रयास करें अगर आपको ऑडियो की ज़रूरत नहीं है, तो पाइप लाइन का उस भाग को छोड़ दें वीडियो प्रदर्शन के लिए, आपकी सबसे अच्छी शर्त xvimagesink है (यूनिक्स पर कम से कम)।


मैं प्लेबिन ( संदर्भ पृष्ठ , प्रलेखन ) या डिकोड बिन ( संदर्भ पृष्ठ , प्रलेखन ) का उपयोग करने की सलाह दूंगा। ये विभिन्न प्रकार की वीडियो फ़ाइलों के लिए gstreamer पाइपलाइन बनाने की प्रक्रिया को बहुत सरल करते हैं। प्रत्येक के साथ आप GstXOverlay इंटरफ़ेस का उपयोग करके एक वीडियो सिंक का उपयोग कर सकते हैं। अधिक जानकारी के लिए अपने एप्लिकेशन में वीडियो विंडो को एम्बेड करना देखें।