मैं ffmpeg का उपयोग करके बैच में 20 + .AVI फ़ाइलों को परिवर्तित करने की कोशिश कर रहा हूं।
मुझे निम्नलिखित मिला है
@echo off.
for file in *.avi
do
ffmpeg -i "$file" -s 640x480 -vcodec msmpeg4v2 "'basename "$file" .avi'.mpg';
done
मेरे .bat फ़ाइल में लेकिन यह काम नहीं करता है। मैं इसे विंडोज ओएस के तहत कैसे काम कर सकता हूं। ओह, और हाँ सभी फाइलें एक ही फ़ोल्डर में हैं।
त्रुटि संदेश मुझे मिलता है:
इस समय फ़ाइल अप्रत्याशित थी
और वास्तव में इसके बारे में क्या काम नहीं करता है?
—
15
यदि आप मुझे इंगित कर सकते हैं कि त्रुटि संदेश कैसे प्राप्त करें क्योंकि cmd बहुत तेजी से गायब हो जाता है, तो मैं आपको बता सकता हूं कि मुझे क्या समस्या है।
—
डेरियस
आपको पहले एक कमांड विंडो खोलने में सक्षम होना चाहिए ( प्रारंभ »भागो…»
—
15
cmd
) और फिर वहाँ से अपने पूर्ण पथ का उपयोग करके बैच फ़ाइल चलाएँ। आप वास्तव में वीडियो के साथ क्या करना चाहते हैं? ये किस तरह के वीडियो हैं? क्या आपको उन्हें एक एमपीजी कंटेनर में स्थानांतरित करने की आवश्यकता है? या क्या आपको उनका आकार बदलने की आवश्यकता है? या क्या आपको विशेष रूप से msmpeg4v2
कोडेक की आवश्यकता है ?
फाइलें एक डीवीआर से निकाल ली जाती हैं और 1 जीबी 5 मिनट की क्लिप से अधिक होती हैं। हाँ DVR सॉफ्टवेयर संपीड़न में दयनीय है। कोडेक काम करता है क्योंकि यह 1MB फ़ाइलों को लगभग 7MB फ़ाइलों को लेता है जो अधिक प्रबंधनीय हैं। और जब उस बैच को चलाने की कोशिश की जा रही है तो मुझे "इस समय फ़ाइल अप्रत्याशित थी" संदेश।
—
डेरियस
समझा। यदि आप परिणामी वीडियो कोडेक और कंटेनर की परवाह नहीं करते हैं, तो मैं आपको इसके बजाय एक एनकोडर के रूप में x264 का उपयोग करने का सुझाव दूंगा, जिसके परिणामस्वरूप एमपीईजी -4 की तुलना में बहुत बेहतर गुणवत्ता है। कमांड कुछ ऐसा होगा
—
slhck
ffmpeg -i input.avi -c:v libx264 -crf 23 -s 640x480 output.mp4
जहां सीआरएफ मूल्य गुणवत्ता निर्धारित करता है (कम बेहतर है, अधिक खराब है, 19 से 24 तक वैल्यू मान है)। यह भी देखें: पुराने वीडियो को छोटे आकार में परिवर्तित करें और .MOV फ़ाइल के आकार को कम करने के लिए मुझे क्या पैरामीटर देखना चाहिए?