Скрипты:
mp4avi.sh
#!/bin/bash
for fname in *.mp4
do
ffmpeg -i $fname -vcodec mpeg4 -acodec ac3 -ar 48000 -ab 192k `printf "%s.avi" $fname`
done
mts2avi.sh
#!/bin/bash
mkdir Converted
for invideo in `find -name '*.MTS'`; do ffmpeg -i $invideo -deinterlace -target pal-dvd Converted/${invideo%%.MTS}.avi; done; mencoder -ovc copy -oac copy -o Converted/outvideo.avi *.avi
mov2avi.sh
#!/bin/bash
#for a in `ls *.MOV` ; do ffmpeg -i $a `echo "$a" | cut -d'.' -f1`.avi ; done
#exit
#ffmpeg -i input.mov -vcodec libx264 -vpre slow -crf 22 -threads 0 -acodec libmp3lame -ar 44100 -ab 128k output.mkv
#ffmpeg -i input.mkv -vcodec libxvid -qscale 8 -me_method full -mbd rd -flags +gmc+qpel+mv4 -trellis 1 -threads 0 -acodec libmp3lame -ab 128k -ac 2 output.avi
#for a in `ls *.MTS` ; do ffmpeg -i $a -vcodec libxvid -b 18000k -acodec libmp3lame -ac 2 -ab 320k -deinterlace -s 1440x1080 `echo "$a" | cut -d'.' -f1`.avi ; done
#exit
for a in `ls *.MOV` ; do ffmpeg -i $a -vcodec libx264 -vpre slow -crf 22 -threads 0 -acodec libmp3lame -ar 44100 -ab 128k `echo "$a" | cut -d'.' -f1`.mkv ; done
for a in `ls *.mkv` ; do ffmpeg -i $a -vcodec libxvid -qscale 8 -me_method full -mbd rd -flags +gmc+qpel+mv4 -trellis 1 -threads 0 -acodec libmp3lame -ab 128k -ac 2 `echo "$a" | cut -d'.' -f1`.avi ; done
exit
Скачать под разные операционные системы:
Примеры основных команд:
ffmpeg -i input.mp4 output.avi
вырезать фрагмент из видео:
ffmpeg -ss 01:19:00 -t 00:05:00 -i in1.avi -vcodec copy -acodec copy out1.avi
ffmpeg -ss 01:19:00 -t 00:05:00 -i in1.avi -sameq out1.avi
склеить несколько фрагментов видео:
ffmpeg -i concat:"vts_01_1.vob|vts_01_2.vob|vts_01_3.vob" -c copy films.avi