2011-01-18 17 views
13

सिंक्रनाइज़ेशन ने हमेशा मुझे मोहित किया है, या सटीक होना है: मीडिया प्लेयर द्वारा सिंक में क्यों एक .ts को देखा जा सकता है, जबकि demuxed ऑडियो + वीडियो reassembled सिंक से बाहर है।ऑडियो/वीडियो सिंक्रनाइज़ेशन, टीएस एमपीईजी 2; एच 264/एवीसी, हैंडब्रैक में पीटीएस को समझना

तो मैं इसे समझने की कोशिश कर रहा हूं, और इसे रोकने के लिए क्या किया जा सकता है।

मैं पढ़ा है निम्नलिखित: https://trac.handbrake.fr/wiki/LibHandBrakeSync और sync.c के स्रोत (भी विकि पर उपलब्ध है)

BitStreamTools विषय भी पर एक थ्योरी 101 में लिखा है (लेकिन मैं के रूप में लिंक नहीं कर सकते मैं एक नया उपयोगकर्ता हूं, क्षमा करें)

जबकि मैंने सोचा कि पीसीआर/पीटीएस की मेरी समझ (अवधारणात्मक) सही है, तो मुझे हैंडब्रैक के उत्कृष्ट ए/वी सिंक पेपर के बाद कठिन समय हो रहा है।

मेरा प्रश्न यह है: क्या कुछ हद तक अंतर्ज्ञानी है (यह संक्षिप्त, छोटा या लंबा, लंबे समय तक हो सकता है) ए/वी सिंक्रनाइज़ेशन का स्पष्टीकरण? जबकि मुझे पता है कि कोई पीसीआर से पीटीएस को फिर से समझ सकता है अगर ऑडियो या वीडियो पॉट दूषित हो जाते हैं (असंतोष?), हैंडब्रैक इस पर भरोसा नहीं करता है, लेकिन इसके आंतरिक पीटीएस पर निर्भर करता है। 0, + = 1/एफपीएस (~ = 5), 10, 15, ....

क्या पीटीएस ऑफ़सेट को पुन: गणना करना संभव होगा और सभी ऑडियो और वीडियो पीटीएस मूल्यों को ठीक करके .ts (बाइनरी) को सही करना संभव होगा। (और एक ही ऑफसेट के साथ सभी डीटीएस को तिरछा कर रहा है, इसलिए खिलाड़ी "फ्रेम से बाहर नहीं" होता है, इसलिए बोलने के लिए), और इस प्रकार एक .ts है जिसे डिमक्स किया जा सकता है, और पृथक ट्रैक तब सिंक हो जाते हैं (यदि डाल दिया जाता है पुनः साथ)?

संपादित करें: या किसी दिए गए .ts में सभी पीटीएस मानों को फिर से समझने के लिए पीसीआर का उपयोग करके ठीक करना संभव नहीं होगा? जबकि मैं समझता हूं कि प्रसारण में कुछ फ्रेम/ऑडियो क्षतिग्रस्त हो सकते हैं, इसलिए इसे सही तरीके से प्रस्तुत नहीं किया जा सकता है, मैं इस के संचालन को छोड़ दूंगा (जैसे वीडियो को हटा देना अगर यह क्षतिग्रस्त हो और उसके पास ऑडियो भाग हो, तो एक्स एमएस मौन डालने पर ऑडियो पैकेज क्षतिग्रस्त आदि) बाद में, और चर्चा के लिए मैं मानता हूं कि सभी फ्रेम बरकरार हैं। (लेकिन तब सार्वजनिक टेलीफोन मान हमेशा सही हालांकि, या क्या होगा?)

परिशिष्ट: handbrake A/V कागज पर मेरी ले यह है: "उम्मीद" 100 में ऑफसेट (वीडियो अंक के रूप में गणना की जाती है 100) - ऑडियो पीटीएस (0) - आंतरिक पीटीएस, एक ही प्रेजेंटेशन समय तक ऑडियो लाने के लिए, इस प्रकार 99 के एक पीटी ऑफसेट दे रहा है। 105 पर ऑफसेट 105-5 = 100 होगा, 99 नहीं, लेकिन हम आगे बढ़ेंगे ऑफ़सेट के रूप में 99 का उपयोग करने के लिए, फिर से गणना करने की कोई आवश्यकता नहीं है (100-99 = 1. 1/एफपीएस < 100ms)। 150 पर, पीटीएस ऑफ़सेट की गणना फिर से की जाती है क्योंकि वीडियो पॉट्स घट रहा है, क्योंकि बढ़ने के विपरीत ...

मैं लगभग सकारात्मक हूं, मैं इसके बारे में पूरी तरह गलत हूं, लेकिन क्या कोई मुझे सही दिशा में इंगित कर सकता है, कृप्या?

  • जोश

उत्तर

9

मैं "कैसे कम से कम 1000 लाइन्स में एक वीडियो प्लेयर लिखें करने के लिए" एक बहुत अच्छा ट्यूटोरियल बुलाया पाया।

This link शर्तों को समझाने का अच्छा काम करता है।

+3

यह ट्यूटोरियल बहुत अच्छा है। मुझे अभी तक कुछ और नहीं मिला है जो इसे बताता है जैसे कि यह सभी किरकिरा विवरणों के साथ करता है। –

17

ऑडियो वीडियो सिंक्रनाइज़ेशन की अवधारणा बहुत गहरी है। पहला पठन मैं पुनः प्राप्त किया जाएगा निम्नलिखित पेपर है।

http://downloads.bbc.co.uk/rd/pubs/reports/1996-02.pdf

मैं सब कुछ यहां दोहराना नहीं होगा - लेकिन अनिवार्य रूप से, हर एनकोडर रिकॉर्ड टाइम स्टांप और यह टिकटों संबंधित ऑडियो और वीडियो पर। बाद में, जब डिकोडर इसे बजाता है, तो यह दो चीजें करता है - एक यह सुनिश्चित करता है कि डिकोडर की घड़ी एन्कोडर की घड़ी के साथ "गुलाम" हो, और दो यह सुनिश्चित करता है कि प्रत्येक तस्वीर स्क्रीन पर प्रस्तुत की जाती है और स्पीकर को ऑडियो फ्रेम प्रस्तुत किया जाता है जब वह संबंधित समय होता है। यह केवल और सबसे अच्छा तरीका है कि वीडियो वीडियो के साथ सिंक्रनाइज़ेशन में रहता है। इन टाइमस्टैम्प को पीटीएस/डीटीएस मूल्य कहा जाता है जो 90 केएचजेड घड़ी के संकल्प के होते हैं।

समझें कि समय के साथ घड़ियों को छोड़ दिया गया है, लेकिन केवल सटीक समय का संदर्भ दिया जाता है, उसी समय ऑर्डर में डिकोडर प्लेआउट।

अब प्रमुख चिंता यह है कि डिकोडर की घड़ी को एन्कोडर की घड़ी के नियंत्रण/सिंक्रनाइज़ेशन में रहने की आवश्यकता होती है। एमपीईजी में पहली चीज 27 मेगाहर्ट्ज (300 गुना अधिक) पर उच्च परिशुद्धता का उपयोग कर रही है। इसके अलावा, इसे बीच में किसी भी संचरण पथ के दौरान लगातार बने रहने की जरूरत है। (इसे घड़ी वसूली प्रक्रिया कहा जाता है)।

नीचे एक अच्छा पेपर है जो बताता है कि घड़ी की वसूली/सिंक्रनाइज़ेशन प्रक्रिया कैसे काम करती है।

https://www.soe.ucsc.edu/sites/default/files/technical-reports/UCSC-CRL-98-04.pdf
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.86.1016&rep=rep1&type=pdf

यह अंतिम पत्र बहुत अच्छी तरह से एक साथ हर चीज डालता है।
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.50.975&rep=rep1&type=pdf

याद रखें - पीसीआर और सार्वजनिक टेलीफोन/डीटीएस आधारित ऑडियो वीडियो तुल्यकालन क्या कर डिजिटल टीवी प्रसारण बहुत सख्त है और इंटरनेट स्ट्रीमिंग में इस्तेमाल किसी अन्य स्ट्रीमिंग पद्धतियों से दूर अलग है। इसे 24x7 स्ट्रीमिंग करने के लिए स्ट्रीमिंग करना महत्वपूर्ण है।

+0

दूसरा लिंक मर चुका है। – pockethook