FFmpeg में in पास्ट ड्यूरेशन बहुत बड़ी ’त्रुटि कैसे ठीक करें?



समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें

FFmpeg उपयोग करने के लिए एक स्वतंत्र और ओपन सोर्स प्रोग्राम है जिसका उपयोग वीडियो, ऑडियो और अन्य मल्टीमीडिया स्ट्रीम को संभालने के लिए किया जाता है। कार्यक्रम को वीडियो और ऑडियो फ़ाइलों के प्रसंस्करण के कमांड लाइन आधारित हैंडलिंग को संभालने के लिए डिज़ाइन किया गया है। हालाँकि, अभी हाल ही में, बहुत सारी रिपोर्ट्स आई हैं। पिछले अवधि बहुत बड़ी है 'वीडियो को एन्कोडिंग या डाउनस्कूल करते समय त्रुटि।



FFmpeg का लोगो



FFmpeg में 'पिछले अवधि बहुत बड़ी' त्रुटि का क्या कारण है?

कई उपयोगकर्ताओं से कई रिपोर्ट प्राप्त करने के बाद, हमने इस मुद्दे की जांच करने का निर्णय लिया और इसे पूरी तरह से ठीक करने के लिए समाधान का एक सेट तैयार किया। इसके अलावा, हमने उन कारणों पर ध्यान दिया जिनके कारण यह त्रुटि उत्पन्न होती है और उन्हें निम्नानुसार सूचीबद्ध किया जाता है:



  • इनपुट फ्रैमरेट मिसिंग: ज्यादातर मामलों में, चित्र के लिए इनपुट फ़्रैमरेट दर्ज नहीं किए जाने के कारण समस्या होती है। कार्यक्रम में यह परिणाम निकलता है कि इनपुट फ्रैमरेट 25 एफपीएस है जो अगर ऐसा नहीं है तो समस्या पैदा कर सकता है।
  • समन्वयन सेटिंग लागू नहीं: अधिकांश उपयोगकर्ताओं के साथ, कुछ सिंक सेटिंग्स लागू करने से समस्या ठीक हो गई। कभी-कभी, फ़्रेम को ठीक से सिंक नहीं किया जा सकता है, जिसके कारण कुछ फ़्रेम गिराए जा सकते हैं और इस त्रुटि को ट्रिगर किया जा सकता है।

अब जब आपको मुद्दे की प्रकृति की बुनियादी समझ हो गई है, तो हम समाधानों की ओर बढ़ेंगे। उन्हें उस विशिष्ट क्रम में लागू करना सुनिश्चित करें जिसमें उन्हें संघर्ष से बचने के लिए प्रस्तुत किया गया है।

समाधान 1: इनपुट फ़्रेम जोड़ना

यदि वीडियो के इनपुट फ्रैमरेट को जोड़ा नहीं गया है, तो इसके परिणामस्वरूप कुछ फ्रेम गिर सकते हैं और त्रुटि चालू हो जाती है। इसलिए, इस चरण में, हम उसके लिए इनपुट फ्रेम जोड़ेंगे:

  1. दीक्षांत समारोह का निरीक्षण करें जो आपने वीडियो परिवर्तित करने के लिए उपयोग किया था, यह हो सकता है समान निम्नलिखित के लिए
    ffmpeg -i% 05d.png -r 24 -c: v libx264 -crf 5 out.mkv
  2. अब बस जोड़ना फ्रेम रेट दीक्षांत समारोह का उपयोग निम्नानुसार किया जाता है
    ffmpeg -framerate 24 -i% 05d.png -c: v libx264 -crf 5.m.mv
  3. यह देखने के लिए जांचें कि क्या समस्या बनी रहती है।

समाधान 2: सिंक फ्लैग्स का उपयोग करना

सिंक फ्लैग को जोड़ने से वीडियो के शुरुआती फ्रैमरेट्स के अनुसार आउटपुट और इनपुट वीडियो को सिंक करने में मदद मिल सकती है। इसलिए, यदि सिंक आदेशों को जोड़ा नहीं गया है, तो संभव है कि फ्रेम ठीक से सिंक नहीं हो रहे हों। इस चरण में, हम सिंक कमांड जोड़ेंगे



  1. इस स्तर पर, आपको शायद होना चाहिए का उपयोग करते हुए निम्नलिखित दीक्षांत समारोह
    ffmpeg -framerate 24 -i% 05d.png -c: v libx264 -crf 5.m.mv
  2. हालाँकि, इसके बजाय, उपयोग निम्नलिखित दीक्षांत समारोह
    ffmpeg -framerate 24 -i% 05d.png -c: v libx264 -crf 5 out.mkv -async 1 -vsync 1
  3. ध्यान दें कि हमने सिर्फ 'जोड़ा है' -async 1 -vsync1 'दीक्षांत समारोह और इस दीक्षांत समारोह के अंत में जोड़ा जाना चाहिए जिसका आप उपयोग कर रहे हैं।
    ध्यान दें: आपका प्रारंभिक दीक्षांत समारोह एक उदाहरण के रूप में इस्तेमाल होने वाले से भिन्न हो सकता है। दीक्षांत समारोह में जोड़े गए बदलाव, हालांकि, अलग नहीं होने चाहिए।
2 मिनट पढ़ा