2012-03-31 29 views
9

मैं पिछले हफ्ते मल्टीमीडिया सामान के बहुत thorugh चला गया और अब कुछ questions.These में में गड़बड़ मेरे काम से जुड़े हुए हैं है एक मीडिया Player.My सवालों का विकास पर नीचे केवल उस पर आधारित हैं। मैं मल्टीमीडिया कोडेक्स पर ईबुक/संसाधन की तलाश भी कर रहा हूं?मल्टीमीडिया कोडेक्स (कंटेनर, स्वरूप, कोडेक, म्युक्सर, demuxer) के बारे में अवधारणा

मुझे निम्नलिखित जानकारी मिल रही है?

  1. कंटेनर, प्रारूप, कोडेक, पैकेट, फ्रेम के बीच क्या अंतर है? मेरा मानना ​​है कि यह कंटेनर है -> ऑडियो (धाराओं) + वीडियो (धाराओं) डीकोड

स्ट्रीम इनकोड/ स्ट्रीम कोडेक का उपयोग करके -> पैकेट पैकेट -> फ़्रेम

(2) कैसे मक्सर, डेमक्सर, कोडर, डिकोडर सीढ़ी काम करता है? किन किनारे पर झूठ बोलती है?

(3) जब हम एक नया कोडेक कहते हैं - इसका क्या अर्थ है? - कोडर/डिकोडर या एक नया फ़ाइल प्रारूप। एवीआई एक कोडेक या प्रारूप है? क्या हमारे द्वारा उपयोग किए जा रहे कोडेक और फ़ाइल प्रारूप के बीच कोई संबंध है।

(4) किस कोडेक किसी अन्य कोडेक से अलग है? बिट दर, आकार, गुणवत्ता, एफपीएस बजाना?

(5) हम एक नया कोडेक क्या अलग हो गया है विकसित कर रहे हैं? - एनकोडर और विकोडक के लिए एल्गोरिथ्म?

(6) ब्लू रे और डीवीडी चीर? वे नए प्रारूप क्या हैं? या नए कोडेक्स?

(7) अगर मैं अपने मीडिया प्लेयर में उपरोक्त कोडेक्स के लिए समर्थन प्रदान करना चाहता हूं तो मैं विभिन्न कोडेक्स को कैसे एकीकृत करूं? कुछ पुस्तकालयों या प्रत्यक्ष स्रोत कोड संदर्भ के रूप में?

(8) कैसे अलग मल्टीमीडिया फ्रेमवर्क (Gstremaer, ffmpeg, stagefright, OpenCore) कोडेक के संबंध में अलग है।

है के बाद/लिंक मैं माध्यम से चले गए हैं:

http://dranger.com/ffmpeg/tutorial01.html

उत्तर

22

यहाँ एक मुफ्त ऑनलाइन के साथ शुरू करने के लिए संसाधन है (पूर्ण प्रकटीकरण: मैं साइट :-) चलाने): MultimediaWiki। इसके अलावा, यहां एक दस्तावेज़ है जिसे मैंने बहुत समय पहले लिखा था जो आपके बहुत से प्रश्नों के साथ मदद कर सकता है: Multimedia Technology Basics। मैं यहां आपके सवालों का जवाब देने की कोशिश करूंगा।

1) एक कंटेनर प्रारूप (AVI या QuickTime/MOV) की तरह आम तौर पर रखती है (शामिल है) विभिन्न धाराओं, आम तौर पर कम से कम एक वीडियो स्ट्रीम और एक ऑडियो स्ट्रीम। ये वीडियो और ऑडियो स्ट्रीम आमतौर पर कोडेक का उपयोग करके एन्कोड किए जाते हैं, जो एक एल्गोरिदम है जो डेटा एन्कोडिंग के लिए एक अधिक कुशल विधि का वर्णन करता है। पैकेट और फ्रेम: कभी-कभी, वीडियो या ऑडियो डेटा के हिस्सों को उनके कोडेक विनिर्देशों द्वारा परिभाषित पैकेट या फ्रेम में विभाजित किया जाता है, लेकिन यह अर्थशास्त्र - पैकेट, फ्रेम, भाग में उतरने लगता है, वे सभी टुकड़े हैं।

2) जब आप एक मल्टीमीडिया फ़ाइल बनाते हैं, तो आप वीडियो और ऑडियो डेटा को एन्कोड करने के लिए एक कोडर एल्गोरिदम का उपयोग करते हैं, फिर आप स्ट्रीम को एक फ़ाइल (कंटेनर) में रखने के लिए एक मक्सर का उपयोग करते हैं। फ़ाइल को चलाने के लिए, एक डेमक्सर स्ट्रीम को अलग करता है और वीडियो और ऑडियो डेटा प्राप्त करने के लिए उन्हें डीकोडर्स में खिलाता है।

3) कोडेक का मतलब कोडर/डिकोडर है, और कंटेनर प्रारूप से एक अलग अवधारणा है।कई कंटेनर प्रारूपों में कई प्रकार के प्रारूप हो सकते हैं (एवीआई और क्विकटाइम/एमओवी बहुत सामान्य हैं)। अन्य प्रारूप एक या दो मीडिया प्रकारों तक सीमित हैं।

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

5) एक नया कोडेक बनाना एक नया एल्गोरिदम होगा जो एक नए एन्कोडर और डिकोडर की आवश्यकता होगी।

6) मुझे लगता है कि ये कंटेनर के रूप में गिना जाएगा। एक डीवीडी रिप को एमपीईजी प्रोग्राम स्ट्रीम (एमपीईजी-पीएस) कहा जाता है, जिसमें एमपीईजी -2 वीडियो डेटा और कुछ अलग ऑडियो प्रकारों में से एक होगा।

7) इस सामान को चलाने के लिए कई पुस्तकालय हैं। सबसे पहले और सबसे महत्वपूर्ण, आपको अपने प्लेटफ़ॉर्म (विंडोज, मैक ओएस एक्स, लिनक्स, आईओएस, एंड्रॉइड इत्यादि) पर विचार करने की आवश्यकता है। प्रत्येक पर उपयुक्त पुस्तकालय और ढांचे हैं।

8) फिर, उनमें से कई ढांचे और पुस्तकालय शायद आपकी ज़रूरतों को पूरा करेंगे। यह आपके प्लेटफ़ॉर्म और लाइसेंसिंग आवश्यकताओं पर निर्भर करता है।

मुझे उम्मीद है कि इसने आपको काम करने के लिए कुछ दिया है। जैसा कि आप मेरे हैंडल से देख सकते हैं, मुझे इस सामान के बारे में बात करना अच्छा लगता है। :-)

+0

बहुत जानकारीपूर्ण ... मैं इसे पूरी तरह से चलाउंगा। धन्यवाद। – Raulp

+0

@ मल्टीमीडिया माइक: इस पोस्ट के लिए धन्यवाद। – sam

+0

@ मल्टीमीडिया माइक क्या आप कृपया मेरे प्रश्न के साथ मदद कर सकते हैं: [link] (http://stackoverflow.com/questions/21046088/video-encoding-decoding-ffmpeg-libav) अग्रिम धन्यवाद! – learner