Png फ़ाइलों से मूवी बनाने के लिए ffmpeg का उपयोग करना


11

मेरे पास 277 800x600 png फाइलें फाइलनामों के साथ हैं, जिसमें format_sizes-CSH (II) (###) ### है। png जहाँ ### 084 से शुरू होता है और 360 पर समाप्त होता है।

मैं कर रहा हूँ

ffmpeg -i island_sizes-CSH\(II\)-*.png output.mpg -y

लेकिन यह काम नहीं करता है:

ffmpeg -f image2 -i island_sizes-CSH \ (II \) - *। png video.pg -y
ffmpeg संस्करण 1.2.1 कॉपीराइट (c) 2000-2013 FFmpeg डेवलपर्स
  10 मई 2013 15:14:14 को gcc 4.4.6 (GCC) 20120305 (Red Hat 4.4.6-4) के साथ बनाया गया
  विन्यास: --prefix = / usr --libdir = / usr / lib64 --shlddir = / usr / lib64 --mandir = / usr / share / man gpl - vableable-version3 libdc1394 --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --extra-cflags = '- O2 -g -pipe -Wall -Wp, -D_FORTIFY_SOURCE = 2 -fexception fstack-protector --पारम = ssp-बफर-आकार = 4 -m64 -mtune = generic -fPIC '--disable-अलग करना
  libavutil 52. 18.100 / 52. 18.100
  libavcodec 54. 92.100 / 54. 92.100
  libavformat 54. 63.104 / 54. 63.104
  libavdevice 54. 3.103 / 54. 3.103
  libavfilter 3. 42.103 / 3. 42.103
  libswscale 2. 2.100 / 2. 2.100
  libswresample 0. 17.102 / 0. 17.102
  libpostproc 52. 2.100 / 52. 2.100
इनपुट # 0, image2, 'island_sizes-CSH (II) -084.png' से:
  अवधि: 00: 00: 00.04, प्रारंभ: 0.000000, बिटरेट: एन / ए
    स्ट्रीम # 0: 0: वीडियो: png, rgba, 800x600 [SAR 3937: 3937 DAR 4: 3], 25 tbr, 25 tbn, 25 tbc
[png @ 0x1468c20] ff_frame_thread_encoder_init विफल
आउटपुट # 0, image2, 'island_sizes-CSH (II) -085.png' के लिए:
    स्ट्रीम # 0: 0: वीडियो: png, rgba, 800x600 [SAR 1: 1 DAR 4: 3], q = 2-31, 200 kb / s, 90k tbn, 25 tbc
आउटपुट # 1, image2, 'island_sizes-CSH (II) -086.png' के लिए:
    स्ट्रीम # 1: 0: वीडियो: png, rgba, 800x600 [SAR 1: 1 DAR 4: 3], q = 2-31, 200 kb / s, 90k tbn, 25 tbc
...
आउटपुट # 274, छवि 2, 'आइलैंड_साइज-सीएसएच (II) -359.png' के लिए:
    स्ट्रीम # 274: 0: वीडियो: कोई नहीं, आरजीबीए, 800x600 [SAR 1: 1 DAR 4: 3], q = 2-31, 200 kb / s, 90k tbn, 25 tbc
आउटपुट # 275, image2, 'island_sizes-CSH (II) -360.png' के लिए:
    स्ट्रीम # 275: 0: वीडियो: कोई नहीं, आरजीबीए, 800x600 [SAR 1: 1 DAR 4: 3], q = 2-31, 200 kb / s, 90k tbn, 25 tbc
आउटपुट # 276, एमपीईजी, 'video.mpg' के लिए:
    स्ट्रीम # 276: 0: वीडियो: कोई नहीं, yuv420p, 800x600 [SAR 1: 1 DAR 4: 3], q = 2-31, 200 kb / s, 90k tbn, 25 tbc
स्ट्रीम मैपिंग:
  स्ट्रीम # 0: 0 -> # 0: 0 (png -> png)
  स्ट्रीम # 0: 0 -> # 1: 0 (png -> png)
...
  स्ट्रीम # 0: 0 -> # 274: 0 (png -> png)
  स्ट्रीम # 0: 0 -> # 275: 0 (png -> png)
  स्ट्रीम # 0: 0 -> # 276: 0 (png -> mpeg1video)
आउटपुट स्ट्रीम # 218: 0 के लिए एनकोडर खोलते समय त्रुटि - शायद बिट_रेट, दर, चौड़ाई या ऊंचाई जैसे गलत पैरामीटर

से man mencoder: mencoder "mf://*.jpg" -mf fps=25 -o output.avi -ovc lavc -lavcopts vcodec=mpeg4ffmpeg के लिए समान
Eddy_Em

1
@Eddy_Em यह समान नहीं है ffmpeg- mencoderपूरी तरह से अलग वाक्यविन्यास है, दुर्भाग्य से।
slhck

1
मेरे लिए काम किया! धन्यवाद। मैं ईमानदारी से परवाह नहीं करता कि मैं किस प्रोग्राम का उपयोग करता हूं - बस मुझे फिल्म मिल जाए।
rhombidodecahedron

जवाबों:


23

यह इनपुट के रूप में कई छवियों को पारित करने के लिए गलत सिंटैक्स है ffmpeg। कृपया वीडियो स्लाइड शो और image2डीमूक्सर विकल्प बनाने पर FFmpeg Wiki गाइड पर एक नज़र डालें ।

आपको अनुक्रम संख्या के लिए तीन अंकों का उपयोग करने के लिए यह बताना होगा, और 84 पर शुरू करना होगा, अर्थात

ffmpeg -start_number 84 -i island_sizes-CSH\(II\)-%03d.png output.mpg

कुछ और टिप्स:

  • MPEG-1 वीडियो कोडेक के रूप में इष्टतम से कम है और उच्च फ़ाइल आकारों में आपको खराब गुणवत्ता देता है। जब तक आप पुराने उपकरणों या कंप्यूटरों (या किसी भी कोडेक्स के बिना विंडोज एक्सपी) के लिए अनुकूलता चाहते हैं, तब तक स्क्रैच करें और एक एमपीईजी -4 पार्ट 10 एनकोडर (एच .264) का उपयोग करें, जैसे libx264:

    ffmpeg -i … -c:v libx264 out.mp4
    

    X264 विकल्प (गुणवत्ता कैसे बदलें आदि) पर एक ट्यूटोरियल के लिए x264 एन्कोडिंग गाइड की जाँच करें ।

  • पीएनजी फाइलें एक आरजीबी पिक्सेल प्रारूप का उपयोग करती हैं, जो सामान्य वीडियो कोडेक्स में समर्थित नहीं है। MPEG-1 के साथ यह कोई फर्क नहीं पड़ता है, लेकिन MPEG-4 कोडेक्स के साथ, यह ffmpegस्वचालित रूप से पिक्सेल प्रारूप को गैर-सबमूलेटेड LV में बदल देगा। उस स्थिति में आपको इसे Chroma-subsampled स्वरूपों में अनुवाद करने की आवश्यकता है जैसे YUV 4: 2: 0, अन्यथा आपका वीडियो अधिकांश अनुप्रयोगों में नहीं चल सकता है:

    ffmpeg -i … -c:v libx264 -pix_fmt yuv420p out.mp4
    

आप। मैं तुम्हें पसंद करता हूं।
rhombidodecahedron
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.