0% found this document useful (0 votes)
8 views

ffmpeg ocmmands

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

ffmpeg ocmmands

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 4

ffmpeg -framerate 8 -i out-%04d.png trainride.

mp4
ffmpeg -framerate 16 -i /content/output/%04d.jpg dec26_scifi_moflo.mp4

ffmpeg -start_number -1000 -i frame%d.jpg reversed.mp4

ffmpeg -start_number -300 -i st%4d.png reversed.mp4

find . -name "*.png" | xargs mogrify -resize 80%


convert -delay 14 -loop 0 *.png JaeBeeFlower.gif
mogrify -layers 'optimize' -fuzz 7% mygif.gif

ffmpeg -i animation.gif animation%05d.png

ffmpeg -i WGclip3.mp4 WGC%04d.bmp

convert kek.png -crop 50x100%+0+0 ( +clone -flop ) +append result.png


#mirror half
# clip
ffmpeg -ss 00:00:03.0 -i outmybackdoor.mp4 -c copy -t 00:00:10.0 ombdoor10s.mp4

The image sequence writer is preset to emulate a constant frame rate stream, so it
will duplicate frames within timestamp gaps as per the output frame rate (default
25 for images) i.e. if the input has a frame at t=0 and t=0.12 then ffmpeg will
dupe the frame at t=0 at t=0.04 and t=0.08 for a 25 fps output. Use -vsync 0 to
avoid this behaviour.

ffmpeg -i input/Clap.gif -vsync 0 temp/temp%d.png


ffmpeg -i 4_27_2023_infinite_zoom_out_cosmiamp1b.mp4 -vsync 0 src/%04d.png

resize:
ffmpeg -i input.mp4 -vf scale=320:240,setsar=1:1 output.mp4
ffmpeg -i WGclip3b.mp4 -vf scale=640:480,setsar=1:1 WGC.mp4

fade between: convert zelda3.png lena2.png -delay 20 -morph 10 tmp_zl.png

convert animated1.gif animated2.gif combined.gif

ffmpeg -i TheOrb.mp4 -i TheOrb2.mp4 -i TheOrb3.mp4 -filter_complex


"concat=n=3:v=1:a=0" -vn -y TheOrbX1.mp4

ffmpeg -i fly.mp4 -vf scale=512:512,setsar=1:1 %d.png

-vf scale=1024:1024,setsar=1:1

ffmpeg -ss [start] -i in.mp4 -t [duration] -c copy out.mp4


ffmpeg -ss 0:00 -i VID_20210602_111739.mp4 -t 3 -c copy WGC.mp4

Here, the options mean the following:

-ss specifies the start time, e.g. 00:01:23.000 or 83 (in seconds)


-t specifies the duration of the clip (same format).
Instead of -t you can also supply the end time with -to.
-c copy copies the first video, audio, and subtitle bitstream from the input to
the output file without re-encoding them. This won't harm the quality and make the
command run within seconds.

Note that if you've used -ss, you have to subtract this from the -to timestamp. For
example, if you cut with -ss 3 -i in.mp4 -to 5, the output will be five seconds
long.

For more info, see https://trac.ffmpeg.org/wiki/Seeking

ffmpeg -framerate 10 -i filename-%03d.jpg output.mp4

convert "$FILENAME" -resize 640x480! "$FILENAME"

for f in `find . -name "*.bmp"`


do
convert $f -resize 640x640! $f
done

convert 0001.png -resize 1024x1024! 0001.png

for f in `find . -name "*.png"`


do
convert $f -resize 512x512! $f
done

for f in `find . -name "*.png"`


do
convert $f -resize 1024x1024! $f
done

for f in `find . -name "*.png"`


do
convert $f -resize 512x512! $f
done

for f in `find . -name "*.png"`


do
convert $f -resize 1024x1024! $f
done

for f in `find . -name "*.bmp"`


do
convert $f $f.png
done

for f in `find . -name "*.png"`


do
convert $f $f.jpg
done

mogrify -format jpg -path jpgs/ *.png

X=1;
for i in *.png; do
mv $i $(printf %04d.%s ${X%.*} ${i##*.})
let X="$X+1"
done

convert darky1.jpg darky2.jpg lighty1.jpg lighty2.jpg -evaluate-sequence Mean


avg.ppm

#!/bin/bash
i=0
for file in img*jpg; do
echo -n "$file.. "
if [ $i -eq 0 ]; then
cp $file avg.jpg
else
convert $file avg.jpg -fx "(u+$i*v)/$[$i+1]" avg.jpg
fi
i=$[$i+1]
done
ffmpeg -f concat -safe 0 -i mylist.txt -c copy output.wav
(for %i in (*.wav) do @echo file '%i') > mylist.txt

#frame count:
ffprobe -v error -select_streams v:0 -count_packets -show_entries
stream=nb_read_packets -of csv=p=0 input.mp4

convert <img_in> -set colorspace Gray -separate -average <img_out>

#twitter safe
ffmpeg -i cma16fps_b.mp4 -ac 2 -pix_fmt yuv420p -vsync 2 -r 60 cma16fps_v.mp4

ffmpeg -framerate 8 -i name-%04d.png -ac 2 -pix_fmt yuv420p -vsync 2 name.mp4

ffmpeg -framerate 8 -i name-%04d.png -vf scale=1024:1024,setsar=1:1 -ac 2 -pix_fmt


yuv420p -vsync 2 name.mp4

ffmpeg -i input.mp4 -vf scale=1024:1024,setsar=1:1 -ac 2 -pix_fmt yuv420p -vsync 2


output.mp4

80:480:559:0
ffmpeg -i BalancedRadiance.gif -filter:v "crop=480:480:80:0" br_crop1.mp4

ffmpeg -stream_loop 4 -framerate 24 -i st-%04d.png -loop 0 -ac 2 -pix_fmt yuv420p


-vsync 2 prlE24fps.mp4
-stream_loop 2

You need to combine -start_number 100 and -frames:v 101 (101 frames from
image100.jpg to image200.jpg).

ffmpeg -i WhatsThatOnYourShoe.gif -filter:v "crop=480:480:80:0" %d.png

ffmpeg -i originalVideo.mp4 -vf reverse reversedVideo.mp4

ffmpeg -start_number 0 -framerate 1 -i %04d.png -ac 2 -pix_fmt yuv420p -vsync 2 -


frames:v 120 clip1.gif

rotate clockwise 90:


ffmpeg -i input.mp4 -vf "transpose=1" -c:a copy output.mp4
rotate counter clockwise 90
ffmpeg -i input.mp4 -vf "transpose=2" -c:a copy output.mp4

transpose audio from 1 video to another of the same length:


ffmpeg -i video.mp4 -i audio.mp4 -c copy -map 0:v:0 -map 1:a:0 output.mp4

#experimental
ffmpeg -i st-%04d.png -vf "minterpolate='mi_mode=mci:mc_mode=aobmc:vsbmc=1:fps=30'"
output%04d.png # mi_mode=blend is way better
ffmpeg -i st-%04d.png -vf
"minterpolate='mi_mode=blend:mc_mode=aobmc:vsbmc=1:fps=30'" out/%04d.png
ffmpeg -i %04d.png -vf "minterpolate='mi_mode=blend:mc_mode=aobmc:vsbmc=1:fps=30'"
out/%04d.png
ffmpeg -i st-%04d.png -vf
"minterpolate='mi_mode=blend:mc_mode=aobmc:vsbmc=1:fps=30'" -ac 2 -pix_fmt yuv420p
-vsync 2 10_8_2023_Midream1.mp4
-ac 2 -pix_fmt yuv420p -vsync 2
#^^experimental
for file in *.png; do
# Check if the file exists and is a regular file
if [ -f "$file" ]; then
# Convert transparent background to white background using ImageMagick
convert "$file" -background white -alpha remove -alpha off "${file%.png}.png"
fi
done

for f in `find . -name "*.png"`


do
convert $f -background white -alpha remove -alpha off $f
done

convert "$file" -negate "${file%.}"_inverted.${file##*.}"

for f in `find . -name "*.png"`


do
convert $f -negate $f
done

for f in `find . -name "*.bmp"`


do
# Remove the `.png` extension from the input file name
filename=$(basename "$f" .bmp)

# Format the output file name with the correct zero padding
output_file_name=$(printf "%04d.png" "$filename")

# Convert the PNG file to a JPEG file


convert "$f" "$output_file_name"
done

for f in `find . -name "*.bmp"`


do
# Convert the PNG file to a JPEG file
convert "$f" "${f%.bmp}.png"
done

ffmpeg -framerate 8 -start_number 1 -i st-%04d.png -vf "select=lt(n\,160)" -c:v


libx264 -r 8 -vframes 160 output3.mp4

ffmpeg -i 202406212044-7x-RIFE-RIFE4.0-24.5fps.mp4 -vf reverse md1_reverse.mp4

You might also like