最近做了一个并行视频转码的小软件,其中要用到ffmpeg这个工具,不同格式之间的转换,对于新手来说,参数也够头疼的,一下是我使用的几个实例。
1. mpeg转换到mp4
#!/bin/bash
if [ $# -lt 1 ];then
echo "$0 inputfile [outputfile]"
exit 1
fi
ifile=$1
ofile=${ifile}.avi
# ffmpeg -ss $start -t $last -i $ifile -ab 56 -ar 22050 -b 500000 -r 15 -s 320x240 -y $ofile
ffmpeg -ss $start -t $last -i $inputf -target vcd -y $outputf
3. avi转换到flv
#!/bin/bash
time ffmpeg -ss 0 -t 20 -i Avatar.avi -target pal-dvd Avatar.mpg
注意:其中pal-dvd也可以换成pal-vcd,清晰度会减低
以上只是例子而已,具体的数值可以参考man文档或者根据应用需求来调整。-ss和-t可以省略,就是转换全部。
附:19个ffmpeg常用命令。
1. mpeg转换到mp4
#!/bin/bash2. mkv转换到avi
if [ $# -lt 1 ];then
echo "$0 inputfile [outputfile]"
exit 1
fi
ifile=$1
ofile=${ifile}.mp4
ffmpeg -y -i $ifile -ab 56 -ar 22050 -b 500000 -r 15 -s 320x240 -f mp4 $ofile
#!/bin/bash
if [ $# -lt 1 ];then
echo "$0 inputfile [outputfile]"
exit 1
fi
ifile=$1
ofile=${ifile}.avi
# ffmpeg -ss $start -t $last -i $ifile -ab 56 -ar 22050 -b 500000 -r 15 -s 320x240 -y $ofile
ffmpeg -ss $start -t $last -i $inputf -target vcd -y $outputf
3. avi转换到flv
#!/bin/bash
if [ $# -lt 1 ];then4. avi转换为mpg
echo "$0 inputfile [outputfile]"
exit 1
fi
ifile=$1
ofile=${ifile}.flv
ffmpeg -ss $start -t $last -i $ifile -ab 56 -ar 22050 -b 500000 -r 15 -s 320x240 -y $ofile
time ffmpeg -ss 0 -t 20 -i Avatar.avi -target pal-dvd Avatar.mpg
注意:其中pal-dvd也可以换成pal-vcd,清晰度会减低
以上只是例子而已,具体的数值可以参考man文档或者根据应用需求来调整。-ss和-t可以省略,就是转换全部。
附:19个ffmpeg常用命令。
ffmpeg is a multiplatform, open-source library for video and audio files. I have compiled 19 useful and amazing commands covering almost all needs: video conversion, sound extraction, encoding file for iPod or PSP, and more.
Getting infos from a video file
ffmpeg -i video.aviTurn X images to a video sequence
ffmpeg -f image2 -i image%d.jpg video.mpgThis command will transform all the images from the current directory (named image1.jpg, image2.jpg, etc…) to a video file named video.mpg.
Turn a video to X images
ffmpeg -i video.mpg image%d.jpgThis command will generate the files named image1.jpg, image2.jpg, …
The following image formats are also availables : PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF, SGI.
Encode a video sequence for the iPpod/iPhone
ffmpeg -i source_video.avi input -acodec aac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell
-aic 2 -cmp 2 -subcmp 2 -s 320x180 -title X final_video.mp4Explanations :
- Source : source_video.avi
- Audio codec : aac
- Audio bitrate : 128kb/s
- Video codec : mpeg4
- Video bitrate : 1200kb/s
- Video size : 320px par 180px
- Generated video : final_video.mp4
Encode video for the PSP
ffmpeg -i source_video.avi -b 300 -s 320x240 -vcodec xvid -ab 32 -ar 24000 -acodec aac final_video.mp4Explanations :
- Source : source_video.avi
- Audio codec : aac
- Audio bitrate : 32kb/s
- Video codec : xvid
- Video bitrate : 1200kb/s
- Video size : 320px par 180px
- Generated video : final_video.mp4
Extracting sound from a video, and save it as Mp3
ffmpeg -i source_video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 sound.mp3Explanations :
- Source video : source_video.avi
- Audio bitrate : 192kb/s
- output format : mp3
- Generated sound : sound.mp3
Convert a wav file to Mp3
ffmpeg -i son_origine.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 son_final.mp3Convert .avi video to .mpg
ffmpeg -i video_origine.avi video_finale.mpgConvert .mpg to .avi
ffmpeg -i video_origine.mpg video_finale.aviConvert .avi to animated gif(uncompressed)
ffmpeg -i video_origine.avi gif_anime.gifMix a video with a sound file
ffmpeg -i son.wav -i video_origine.avi video_finale.mpgConvert .avi to .flv
ffmpeg -i video_origine.avi -ab 56 -ar 44100 -b 200 -r 15 -s 320x240 -f flv video_finale.flvConvert .avi to dv
ffmpeg -i video_origine.avi -s pal -r pal -aspect 4:3 -ar 48000 -ac 2 video_finale.dvOr:
ffmpeg -i video_origine.avi -target pal-dv video_finale.dvConvert .avi to mpeg for dvd players
ffmpeg -i source_video.avi -target pal-dvd -ps 2000000000 -aspect 16:9 finale_video.mpegExplanations :
- target pal-dvd : Output format
- ps 2000000000 maximum size for the output file, in bits (here, 2 Gb)
- aspect 16:9 : Widescreen
Compress .avi to divx
ffmpeg -i video_origine.avi -s 320x240 -vcodec msmpeg4v2 video_finale.aviCompress Ogg Theora to Mpeg dvd
ffmpeg -i film_sortie_cinelerra.ogm -s 720x576 -vcodec mpeg2video -acodec mp3 film_termin??e.mpgCompress .avi to SVCD mpeg2
NTSC format:
ffmpeg -i video_origine.avi -target ntsc-svcd video_finale.mpgPAL format:
ffmpeg -i video_origine.avi -target pal-svcd video_finale.mpgCompress .avi to VCD mpeg2
NTSC format:
ffmpeg -i video_origine.avi -target ntsc-vcd video_finale.mpgPAL format:
ffmpeg -i video_origine.avi -target pal-vcd video_finale.mpgMulti-pass encoding with ffmpeg
ffmpeg -i fichierentree -pass 2 -passlogfile ffmpeg2pass fichiersortie-2Find a webhost with ffmpeg enabled
Cirtex Hosting got web hosting plans starting at $2.99.