मैं उचित गुणवत्ता के साथ ffmpeg का उपयोग करके वीडियो को GIF में कैसे परिवर्तित करूं?


310

मैं ffmpeg के साथ फाइल करने के लिए FLVमूवी कन्वर्ट कर रहा हूं GIF

ffmpeg -i input.flv -ss 00:00:00.000 -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:10.000  output.gif

यह बहुत अच्छा काम करता है, लेकिन आउटपुट gif फ़ाइल की गुणवत्ता बहुत कम है।

किसी भी विचार मैं परिवर्तित जिफ़ की गुणवत्ता कैसे सुधार सकता हूं?

कमांड का आउटपुट:

ffmpeg -i input.flv -ss 00:00:00.000 -pix_fmt rgb24 -r 10 -s 320x240 -t 00:00:10.000  output.gif
ffmpeg version 0.8.5-6:0.8.5-0ubuntu0.12.10.1, Copyright (c) 2000-2012 the Libav developers
  built on Jan 24 2013 14:52:53 with gcc 4.7.2
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.flv':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    creation_time   : 2013-02-14 04:00:07
  Duration: 00:00:18.85, start: 0.000000, bitrate: 3098 kb/s
    Stream #0.0(und): Video: h264 (High), yuv420p, 1280x720, 2905 kb/s, 25 fps, 25 tbr, 50 tbn, 50 tbc
    Metadata:
      creation_time   : 1970-01-01 00:00:00
    Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16, 192 kb/s
    Metadata:
      creation_time   : 2013-02-14 04:00:07
[buffer @ 0x92a8ea0] w:1280 h:720 pixfmt:yuv420p
[scale @ 0x9215100] w:1280 h:720 fmt:yuv420p -> w:320 h:240 fmt:rgb24 flags:0x4
Output #0, gif, to 'output.gif':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
    creation_time   : 2013-02-14 04:00:07
    encoder         : Lavf53.21.1
    Stream #0.0(und): Video: rawvideo, rgb24, 320x240, q=2-31, 200 kb/s, 90k tbn, 10 tbc
    Metadata:
      creation_time   : 1970-01-01 00:00:00
Stream mapping:
  Stream #0.0 -> #0.0
Press ctrl-c to stop encoding
frame=  101 fps= 32 q=0.0 Lsize=    8686kB time=10.10 bitrate=7045.0kbits/s dup=0 drop=149    
video:22725kB audio:0kB global headers:0kB muxing overhead -61.778676%

धन्यवाद।


1
यह मज़ेदार है कि कैसे लोग अभी भी GIF के साथ पैलेटवर्क करते हैं जब APNG एक चीज है।
Константин Ван

जवाबों:


447

ffmpeg उदाहरण

Ffmpeg से GIF आउटपुट
183k

ffmpegउच्च गुणवत्ता GIF उत्पादन कर सकते हैं। यह हमेशा हाल के संस्करण का उपयोग करने के लिए अनुशंसित है: डाउनलोड या संकलन

ffmpeg -ss 30 -t 3 -i input.mp4 -vf "fps=10,scale=320:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" -loop 0 output.gif
  • यह उदाहरण -ss 30इनपुट के पहले 30 सेकंड ( ) को छोड़ देगा और एक 3 सेकंड आउटपुट ( -t 3) बनाएगा ।
  • एफपीएस फिल्टर फ्रेम दर निर्धारित करता है।
  • स्केल फ़िल्टर आउटपुट का आकार 320 पिक्सेल चौड़ा होगा और पहलू अनुपात को संरक्षित करते हुए स्वचालित रूप से ऊँचाई निर्धारित करेगा।
  • पैलेटजेन और पैलेटस फिल्टर आपके इनपुट से उत्पन्न एक कस्टम पैलेट का निर्माण और उपयोग करेंगे।
  • स्प्लिट फिल्टर एक कमांड में सब कुछ करने की अनुमति देगा।
  • -loopआउटपुट विकल्प के साथ नियंत्रण लूपिंग । का मान 0अनंत लूपिंग है।

कई और उदाहरणों और विकल्पों के लिए FFmpeg के साथ उच्च गुणवत्ता का GIF देखें ।


Imagemagick convertउदाहरण

Ffmpeg से GIF आउटपुट
227k

एक अन्य कमांड-लाइन विधि ImageMagick से (या ) से पाइप ffmpegकरना है ।convertmagick

 ffmpeg -i input.mp4 -vf "fps=10,scale=320:-1:flags=lanczos" -c:v pam -f image2pipe - | convert -delay 10 - -loop 0 -layers optimize output.gif

फ्रेम दर निर्धारित करना

fpsमें ffmpegऔर -delayमें फिल्टर के संयोजन के साथ फ्रेम दर निर्धारित करें convert। यह जटिल हो सकता है क्योंकि convertसिर्फ छवियों की एक कच्ची धारा मिलती है इसलिए कोई एफपीएस संरक्षित नहीं है। दूसरे, -delayमूल्य में टिकconvert में है (प्रति सेकंड 100 टिक हैं), फ्रेम प्रति सेकंड में नहीं। उदाहरण के लिए, fps=12.5= 100 / 12.5 = 8 = के साथ -delay 8

convert-delayमान पूरी संख्या में गोल करता है , इसलिए 8 में 8.4 परिणाम और 8 में परिणाम। 9. यह प्रभावी रूप से इसका मतलब है कि सभी फ़्रेमों पर एक समान विलंब निर्धारित करते समय केवल कुछ फ्रेम दर का समर्थन किया जाता है (एक विशिष्ट विलंब प्रति फ्रेम सेट किया जा सकता है लेकिन यह परे है यह उत्तर)।

-delayआउटपुट विकल्प के रूप में उपयोग किए जाने पर इसे अनदेखा कर दिया जाता है, इसलिए इसका उपयोग -उदाहरण में दिखाए जाने से पहले किया जाना चाहिए ।

अंत में, ब्राउज़र और छवि दर्शक न्यूनतम देरी को लागू कर सकते हैं, इसलिए आपकी -delayअनदेखी वैसे भी हो सकती है।

अमेरिकी मछली और वन्यजीव सेवा राष्ट्रीय संरक्षण प्रशिक्षण केंद्र के सौजन्य से वीडियो।


4
कुछ उदाहरण परिणामों को जोड़ा (हालांकि अभी भी फ्रेम)। यहां, पहली फ़ाइल 4.1 एमबी है, दूसरी 8 एमबी के आसपास है।
slhck

2
@ लॉर्डनेकबर्ड, आप कमाल के हैं! के लिए बहुत धन्यवाद-vf scale=320:-1,format=rgb8,format=rgb24
कामिल हिसमतुल्लीन

6
वैसे, convertपीएनजी फ्रेम से परिवर्तित करने के आदेश के लिए मैंने उपयोग करना समाप्त कर दिया है convert -delay 5 -loop 0 -dither None -colors 80 "frames/ffout*.png" -fuzz "40%" -layers OptimizeFrame "output.gif", जो समग्र फ़ाइल आकार को काफी कम कर देता है
विल्फ

2
ठीक है, मुझे मिल गया है, मैंने उपयोग किया है scale=0:-1, इसलिए जब आप स्केल सेट करते हैं, तो 0यह वीडियो से स्केल लेगा।
मौसा अल्फाली

2
यह Q & A स्थायी रूप से एक tome (या शायद अभी के लिए "पिन किया हुआ") में एन्कोडेड होना चाहिए क्योंकि अब से सौ साल में सभी संचार मेम्स के माध्यम से हो जाएंगे। मुझे लगता है कि इस पोस्ट की गतिविधि अकेले उस पर बात करती है।
जोनाथन नेफेल्ड

87

यदि आप मध्यवर्ती छवि फ़ाइलों से बचना पसंद करेंगे, तो लॉर्डनेकबर्ड द्वारा प्रदान की गई कमांड को ffmpegऔर ImageMagick के बीच पाइप किया जा सकता है convertताकि कोई मध्यवर्ती फ़ाइलों की आवश्यकता न हो:

ffmpeg -i input.flv -vf scale=320:-1 -r 10 -f image2pipe -vcodec ppm - | convert -delay 5 -loop 0 - output.gif

-f image2pipeFfmpeg बताता छवियों में वीडियो विभाजित है और यह उपयुक्त बाहर पहुंचाया जा करने के लिए बनाने के लिए, और -vcodec ppmउत्पादन प्रारूप को निर्दिष्ट करता है (किसी कारण यदि प्रारूप png है के लिए पीपीएम हो सकता है, या तो convertपाइप से सभी छवियों को पढ़ा नहीं है, या ffmpeg करता है उन सभी का उत्पादन नहीं)। -दोनों आदेशों के लिए निर्दिष्ट करता है कि एक पाइप उत्पादन और निवेश के लिए क्रमश: उपयोग किया जाएगा।

फ़ाइल को सहेजे बिना परिणाम का अनुकूलन करने के लिए, आप आउटपुट convertको दूसरी convertकमांड से पाइप कर सकते हैं :

ffmpeg -i input.flv -vf scale=320:-1 -r 10 -f image2pipe -vcodec ppm - | convert -delay 5 -loop 0 - gif:- | convert -layers Optimize - output.gif

gif:-बताता convertपाइप को gif स्वरूपित डेटा के रूप में इसके उत्पादन और -layers Optimizeदूसरा कहता है convertप्रदर्शन करने के लिए optimize-frameऔर optimize-transparancyतरीकों (देखें ImageMagick एनीमेशन अनुकूलन का परिचय )। ध्यान दें कि -layers Optimizeहो सकता है कि आउटपुट हमेशा एक छोटा फ़ाइल आकार प्रदान न करे, इसलिए आप यह सुनिश्चित करने के लिए पहले अनुकूलन के बिना gif में कनवर्ट करने का प्रयास कर सकते हैं।

याद रखें कि इस पूरी प्रक्रिया के दौरान सब कुछ स्मृति में है, इसलिए आपको पर्याप्त मेमोरी की आवश्यकता हो सकती है यदि चित्र काफी बड़े हैं।


1
आदेशों का यह सेट भी साथ काम करता हैavconv
राफेल

आपको अंतिम दो रूपांतरित कमांड का विलय करना चाहिए:convert -delay 5 -loop 0 -layers Optimize - output.gif
क्लेमेंट

जीआईएफ स्रोत वीडियो की गति से 2x पर चल रहा है?
टाइटन

@ टाइटन का मानना ​​है कि यह पहले कमांड में -r 10 और दूसरे में -delay 5 है। मैंने देरी को 10 में भी बदल दिया और यह अब सामान्य रूप से खेलने लगता है।
स्टीवन हुआंग

2
आप splitffmpeg में फ़िल्टर का उपयोग करके मध्यवर्ती छवि फ़ाइलों से भी बच सकते हैं । सभी पर कुछ भी पाइप करने की आवश्यकता नहीं है:ffmpeg -ss 30 -t 3 -i "input.flv fps=10,scale=320:-1:flags=lanczos,split[x][z];[z]palettegen[y];[x][y]paletteuse" output.gif
Ajedi32

37

2.6 के रूप में ffmpeg, हम और भी बेहतर कर सकते हैं:

palette="/tmp/palette.png"
filters="fps=15,scale=320:-1:flags=lanczos"

ffmpeg -i input.flv -vf "$filters,palettegen" -y $palette
ffmpeg -i input.flv -i $palette -lavfi "$filters [x]; [x][1:v] paletteuse" -y output.gif

हिंदुस्तान टाइम्स


18

मैंने स्क्रिप्ट का अपना संस्करण बनाया, जो आउटपुट रिज़ॉल्यूशन और फ्रेम दर को भी मापता है।

./gifenc.sh input.mov output.gif 720 10आपके द्वारा दी गई मूवी से रनिंग 720p वाइड 10fps GIF आउटपुट करेगी। आपको chmod +x gifenc.shफ़ाइल के लिए करने की आवश्यकता हो सकती है ।

#!/bin/sh

palette="/tmp/palette.png"

filters="fps=$4,scale=$3:-1:flags=lanczos"

ffmpeg -v warning -i "$1" -vf "$filters,palettegen" -y "$palette"
ffmpeg -v warning -i "$1" -i $palette -lavfi "$filters [x]; [x][1:v] paletteuse" -y "$2"

आप मेरे जीथूब पर विवरण पढ़ सकते हैं

मान्यताओं: ffmpeg स्थापित है, और स्क्रिप्ट अन्य फ़ाइलों के समान फ़ोल्डर में है।


3
आपकी स्क्रिप्ट के लिए बहुत-बहुत धन्यवाद। मैंने अभी इसका परीक्षण किया है और यह बहुत अच्छा है!
orchichiro

15

@Stephane से जवाब बहुत अच्छा है। लेकिन यह Buffer queue overflow, dropping.कुछ वीडियो के लिए एक चेतावनी की तरह होगा , और उत्पन्न gifकुछ फ्रेम गिरा दिया है।

fifoफिल्टर का Buffer queue overflowउपयोग करने से बचने के लिए फ़िल्टर के साथ यहां एक बेहतर संस्करण है paletteusesplitमध्यवर्ती पैलेट पीएनजी फ़ाइल के निर्माण से बचने के लिए फ़िल्टर का उपयोग करके ।

ffmpeg -i input.mp4 -filter_complex 'fps=10,scale=320:-1:flags=lanczos,split [o1] [o2];[o1] palettegen [p]; [o2] fifo [o3];[o3] [p] paletteuse' out.gif

अगर मुझे यह समझ में आता है कि आप इनपुट को o1 और o2 में विभाजित कर रहे हैं, और o2 से o3 की नकल कर रहे हैं। तो आपको ओ ३ म् की आवश्यकता क्यों है? सिर्फ ओ 2 का ही इस्तेमाल क्यों न करें?
च्लोए

1
@ च्लोए क्या आपने और के fifoबीच फ़िल्टर का संचालन देखा ? चेतावनी से बचने के लिए । o2o3Buffer queue overflow
अलीजेंड्रो

+1 यह मेरे लिए वास्तव में अच्छी तरह से काम करता है (और संदर्भित समस्या को हल करता है)।
इयान कॉलिंस

मुझे यह समाधान बहुत पसंद है। कुडोस!
लियोनिद उस्सोव

10

एक स्क्रिप्ट, परीक्षण और काम करता है।

उपयोग:

./avi2gif.sh ./vokoscreen-2015-05-28_12-41-56.avi

है PHUN :)

vim avi2gif.sh

#!/bin/sh

INPUT=$1

# default settings, modify if you want.

START_AT_SECOND=0; # in seconds, if you want to skip the first 30 seconds put 30 here

LENGTH_OF_GIF_VIDEO=9999999; # in seconds, how long the gif animation should be

echo "Generate a palette:"
ffmpeg -y -ss $START_AT_SECOND -t $LENGTH_OF_GIF_VIDEO -i $INPUT -vf fps=10,scale=320:-1:flags=lanczos,palettegen palette.png

echo "Output the GIF using the palette:"
ffmpeg -ss $START_AT_SECOND -t $LENGTH_OF_GIF_VIDEO -i $INPUT -i palette.png -filter_complex "fps=10,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" $INPUT.gif

btw: vokoscreen लिनक्स के लिए एक उत्कृष्ट स्क्रीनकैप्टिंग उपकरण है :)

धन्यवाद एक बहुत माइकल Kohaupt :) रॉक स्थिर।

कुछ फ़ाइल आकार आँकड़े:

5.3M = vokoscreen-2015-04-28_15-43-17.avi -> vokoscreen-2015-05-28_12-41-56.avi.gif = 1013K

परिणाम यहाँ देखें


10

ffmpegपैलेट के साथ विधि मध्यस्थ के बिना, एक भी आदेश में चलाया जा सकता है .pngफ़ाइल।

ffmpeg -y -ss 30 -t 3 -i input.flv -filter_complex \
"fps=10,scale=320:-1:flags=lanczos[x];[x]split[x1][x2]; \
[x1]palettegen[p];[x2][p]paletteuse" output.gif

यह splitफिल्टर के लिए धन्यवाद किया जा सकता है ।


10

लिनक्स / यूनिक्स / MacOS

आदेश के साथ @LordNeckbeard दृष्टिकोण के बाद ffmpeg, कृपया निम्नलिखित उपयोगी बैश फ़ंक्शन खोजें, जिसे आपकी ~/.bash_profileफ़ाइल में जोड़ा जा सकता है :

# Convert video to gif file.
# Usage: video2gif video_file (scale) (fps)
video2gif() {
  ffmpeg -y -i "${1}" -vf fps=${3:-10},scale=${2:-320}:-1:flags=lanczos,palettegen "${1}.png"
  ffmpeg -i "${1}" -i "${1}.png" -filter_complex "fps=${3:-10},scale=${2:-320}:-1:flags=lanczos[x];[x][1:v]paletteuse" "${1}".gif
  rm "${1}.png"
}

एक बार फ़ंक्शन लोड होने पर (मैन्युअल रूप से या . ~/.bash_profile), आपके पास नई video2gifकमांड होनी चाहिए ।

उदाहरण का उपयोग:

video2gif input.flv

या:

video2gif input.flv 320 10

10 फ्रेम प्रति सेकंड के साथ 320 चौड़ाई तक स्केल।

आप एक अलग वीडियो प्रारूप (जैसे कि mp4) भी निर्दिष्ट कर सकते हैं।


मैक ओ एस

आप GIF ब्रूअरी ऐप आज़मा सकते हैं जो वीडियो फ़ाइलों से जीआईएफ बना सकते हैं।


वैकल्पिक रूप से कई वेबसाइटें हैं जो ऑनलाइन रूपांतरण मुफ्त में कर रही हैं।


आपकी स्क्रिप्ट मेरे लिए बिना png फ़ाइल के त्रुटि उत्पन्न करती है और मुझे कोई gif आउटपुट नहीं मिलता है, लेकिन .mp4 इनपुट फ़ाइल अपरिवर्तित रहती है
lacostenycoder

7

चयनित उत्तर मानता है कि आप स्रोत वीडियो को स्केल करना चाहते हैं और उत्पादित gif में इसका एफपीएस बदलना चाहते हैं। यदि आपको ऐसा करने की आवश्यकता नहीं है, तो निम्न कार्य:

src="input.flv"
dest="output.gif"
palette="/tmp/palette.png"

ffmpeg -i $src -vf palettegen -y $palette
ffmpeg -i $src -i $palette -lavfi paletteuse -y $dest

यह तब काम आया जब मैं एक जिफ़ चाहता था जो विश्वासपूर्वक उस स्रोत वीडियो को फिर से बनाए जो मैं उपयोग कर रहा था।


6

विंडोज़ उपयोगकर्ताओं के लिए: इन सामग्रियों के साथ विंडोज़ निर्देशिका में फ़ाइल
बनाएँ video2gif.bat:

@echo off
set arg1=%1
set arg2=%arg1:~0,-4%
ffmpeg -y -i %arg1% -vf fps=10,scale=-1:-1:flags=lanczos,palettegen %TEMP%\palette.png
ffmpeg -i %arg1% -i %TEMP%\palette.png -filter_complex "fps=10,scale=-1:-1:flags=lanczos[x];[x][1:v]paletteuse" %arg2%.gif
del /f %TEMP%\palette.png

और फिर कहीं भी आप इसका उपयोग इस उदाहरण की तरह कर सकते हैं:

video2gif myvideo.mp4

फिर आप myvideo.gifवर्तमान निर्देशिका में हैं।
यदि myvideo.gifअस्तित्व में है, तो इसे अधिलेखित करने के लिए आपसे प्रश्न।

संपादित करें:

मेरा सुझाव है कि इस बैच स्क्रिप्ट का उपयोग करें: https://github.com/NabiKAZ/video2gif


2
मुझे लगता है कि आपको दो बातें यहाँ किया है: (1) एक Windows (बल्ला) कमांड स्क्रिप्ट के रूप में लिखा आदेश, और (2) फिल्टर का एक अलग संयोजन (अन्य उत्तर में से कोई भी उपयोग करता है प्रदान की दोनों fps=10 और scale=-1:-1)।  सूर्य का जवाब पहले से ही हमें एक बैच फ़ाइल, और कहा कि एक (में शेल स्क्रिप्ट की तरह दिया PJE के जवाब और thevangelist का जवाब ) लाभ यह है कि यह एक चर (करने के लिए फिल्टर की सूची प्रदान करती है एक बार ), ... (जारी)
स्कॉट

1
(Cont'd) ... इसलिए इसे दो बार सूची से बाहर करने की आवश्यकता नहीं है (जैसा कि आपका बैच फ़ाइल करता है)। (मुझे लगता है कि यह एक जोखिम पैदा करता है कि, यदि उपयोगकर्ता सूची में से एक को बदलने के लिए स्क्रिप्ट का संपादन करता है, लेकिन दूसरे से नहीं, असंगति एक समस्या का कारण बनेगी।) क्या आप कम से कम फ़िल्टर की अपनी पसंद की व्याख्या कर सकते हैं ( fps=10,scale=-1:-1)? ( एक आदेश के कुछ हिस्सों के स्पष्टीकरण के उदाहरण के लिए विख्यात जवाब देखें ।)
स्कॉट

1
@ सही आपने कहा, इसलिए मैं यहां एक नई उपयोगी स्क्रिप्ट लिखता हूं: github.com/NabiKAZ/video2gif
नबी

4

नीचे Windows उपयोगकर्ताओं के लिए बैच फ़ाइल है:

gifenc.bat:

set start_time=0
set duration=60
set palette="c:\temp\palette.png"
set filters="fps=15,scale=-1:-1:flags=lanczos"
ffmpeg -v warning -ss %start_time% -t %duration% -i %1 -vf "%filters%,palettegen" -y %palette%
ffmpeg -v warning -ss %start_time% -t %duration% -i %1 -i %palette% -lavfi "%filters% [x]; [x][1:v] paletteuse" -y %2

स्रोत: FFmpeg के साथ उच्च गुणवत्ता वाला GIF: सिर्फ एक नमूना निकाल रहा है

यदि आप सिर्फ एक इनपुट चर का उपयोग करना चाहते हैं और आउटपुट नाम में सिर्फ GIF (स्पष्ट JIF) एक्सटेंशन है, तो इसके बजाय इसका उपयोग करें:

set start_time=0
set duration=60
set palette="c:\temp\palette.png"
set filters="fps=15,scale=-1:-1:flags=lanczos"
ffmpeg -v warning -ss %start_time% -t %duration% -i %1 -vf "%filters%,palettegen" -y %palette%
set var1=%1
set var2=%var1:~0,-4%
ffmpeg -v warning -ss %start_time% -t %duration% -i %1 -i %palette% -lavfi "%filters% [x]; [x][1:v] paletteuse" -y %var2%.gif

3

अपनी वीडियो फ़ाइल को gif में बदलने के लिए एक विंडो 7/10 "राइट-क्लिक" संदर्भ मेनू प्रविष्टि कैसे जोड़ें

कुछ अन्य उत्तरों में वीडियो 2 जीआईएफ स्क्रिप्ट का उल्लेख किया गया था , जिसका मैंने उपयोग किया था। लेकिन, आप किसी भी स्क्रिप्ट का उपयोग कर सकते हैं।

संदर्भ-मेनू विकल्प बनाने के लिए, आपको अपनी रजिस्ट्री को संपादित करने की आवश्यकता है। एक शक्तिकृत कमांड प्रॉम्प्ट खोलें, w / admin privs चला रहा है। इन आदेशों का पालन करें:

$key = "Registry::HKEY_CLASSES_ROOT\`*\shell\Run Video2Gif"
New-Item -Path $key"\Command" -Value "C:\dev\ffmpeg\ffmpeg-3.4.2-win64-static\bin\video2gif.bat `"%1`"" -Force

अब जब आप एक फ़ाइल को राइट क्लिक करते हैं, तो आपके पास "Run Video2Gif" विकल्प होगा!

btw मैं ffmpeg स्थापित करने के लिए C:\dev\ffmpeg\ffmpeg-3.4.2-win64-static\और video2gif.batबिन dir के बगल में स्क्रिप्ट डाल दिया ffmpeg.exe। मैंने C:\dev\ffmpeg\ffmpeg-3.4.2-win64-static\binअपनी खिड़कियों में भी जोड़ा PATH, लेकिन मुझे नहीं लगता कि आपको इसकी आवश्यकता है।

यदि आप स्क्रिप्ट में कुछ अतिरिक्त कमांड लाइन झंडे / आर्ग्स की आपूर्ति करने में सक्षम होने का विकल्प चाहते हैं, तो एक नई फ़ाइल नाम दें video2gif-prompt.bat, और रजिस्ट्री को इसके बजाय संदर्भित करें video2gif.bat:

@echo off
set /p inp=Enter extrta args, if desired:
C:\dev\ffmpeg\ffmpeg-3.4.2-win64-static\bin\video2gif.bat %* %inp%

आप अभी भी जल्दी से चूक पाने के लिए बस हिट दर्ज कर सकते हैं।

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