कई .bmp फाइलों को एक .mp4 फाइल में ffmpeg के साथ मिलाना

Aug 17 2020

मैं एक फिल्म में इन सभी .bmp फ़ाइलों को संयोजित करना चाहता हूँ .mp4.I ffmpeg का उपयोग कर रहा हूँ ।

यह कमांड केवल 0.04 सेकंड की एक फिल्म का निर्माण करती है:

$ ffmpeg -i f%05d.bmp -c:v libx264 -r 30 -pix_fmt yuv420p movie.mp4

यह सभी फ़ाइलों को नहीं उठाना चाहिए? मुझे नहीं पता कि मैं क्या गलत कर रहा हूं और इसका हल नहीं खोज सकता।

यह कमांड जो मैंने यहाँ से कोशिश की है, वह कहती है कि यह 'f% 05d.bmp' पथ के साथ फाइल नहीं ढूंढ सकता है, भले ही उपरोक्त कमांड कर सकता है?

$ ffmpeg -r 60 -f image2 -s 1920x1080 -start_number 1 -i f%05d.bmp -vframes 1759 -vcodec libx264 -crf 25  -pix_fmt yuv420p test.mp4

जवाब

2 Borek Aug 17 2020 at 02:47

मुझे लगता है कि फाइलों में लगातार संख्या होनी चाहिए, अन्यथा उन्हें अलग से व्यवहार किया जाता है (इसलिए आपको 0.04 सेकंड की फिल्म मिलती है - सिर्फ एक फ्रेम)। कुछ दिनों पहले मुझे कुछ इसी तरह की ज़रूरत थी (हालाँकि ffmpeg के लिए नहीं बल्कि फ़ैमिलीज़ रिज़ॉल्यूशन में फ़ाइलें आयात करने के लिए) और मैंने एक साधारण पायथन स्क्रिप्ट लिखी:

import os

filename="whatever{0:05d}.png"
destno = 1

for i in range(0, 10000):
   src = filename.format(i)
   if os.path.isfile(src):
      dst=filename.format(destno)
      destno+=1
      os.rename(src, dst)
      print "renamed {0:s} to {1:s}".format(src, dst)

घटिया, लेकिन काम किया।

WasifHasan Aug 17 2020 at 00:02

हो सकता है कि आप .bmp फ़ाइलों को प्राप्त करने के लिए ग्लोबिंग को बदल सकें:

ffmpeg -r 60 -f image2 -s 1920x1080 -start_number 1 -i %*.bmp -vframes 1759 -vcodec libx264 -crf 25  -pix_fmt yuv420p test.mp4