1
0
Derivar 0
docs/ffmpeg.md
2024-01-30 10:43:09 +01:00

1,4 KiB

Playing with ffmpeg

...to extrac, manipulate and reassmbly frames

Frames extraction

In running the command take note about original video fps

ffmpeg -i video.mp4 %05d.png

Video creation from frames

In running the command take note about original video fps

ffmpeg -framerate 30 -pattern_type glob -i '*.png' -c:v libx264 -pix_fmt yuv420p paint.mp4

Video warping from images

Using CUDA:

ffmpeg -y -fflags +genpts -r 30 -hwaccel cuda -hwaccel_output_format cuda -pattern_type glob -i '*.png' -vf "setpts=100*PTS,minterpolate=fps=24:scd=none" -pix_fmt yuv420p  -c:v h264_nvenc "test01.mp4"

Add silent audio track to a video (with no audio tack)

ffmpeg -i "test.mp4" -f lavfi -i anullsrc=cl=stereo:r=48000 -shortest -y "test_silent.mp4"

Useful if you want to merge more than one *.mp4 video and some of these ave no audio track Make sure that audio rate for the silent track matches the one of file(s) you are going to merge with it

Crop a video to a well defined size

ffmpeg -i test_silent.mp4 -filter:v "crop=512:512:1200:200" -c:a copy te.mp4

Crop to size 512x512 starting from 1200,200 where 0,0 is the top left corner

Concatenation of two videos

Once you've performed tthe two steps above (same size and a silent audio if needed):

ffmpeg -i te.mp4 -i 20231104021840.mp4 -filter_complex "[0:v][0:a][1:v][1:a]concat=n=2:v=1:a=1" -vsync vfr output.mp4