linux下ffmpeg 手機視頻轉換總結

 

ffmpeg版本:0.5.1 flv -> mp4  ->3gp

 

#截圖:
./ffmpeg -i 視頻文件 -y -ss 截圖時間 -vframes 1 -f image2 -s 128x96 目標文件名;

#生成預覽版:
./ffmpeg -i out.3gp -ss 00:00:00 -t 00:00:10 -s qcif -acodec copy -vcodec copy -y preview.3gp

 

#轉換16:9 flv視頻到 4:3的mp4視頻

ffmpeg -i src.flv -vcodec libx264 -vpre normal -vpre baseline -coder 0 -threads 4 -s 320*180 -b 128k -r 15 -padbottom 30 -padtop 30 -f mp4 -y out.mp4

 

注:

    這幾個參數保證能夠在手機上面播放(必須指定h264解碼器):

-vcodec libx264 -vpre normal -vpre baseline -coder 0

具體含義詳見http://rob.opendot.cl/index.php/useful-stuff/ffmpeg-x264-encoding-guide/

    這兩個參數用於增加黑邊

-padbottom 30 -padtop 30

 

#mp4轉換爲3gp

./ffmpeg -i test.mp4 -s qcif -ar 8000 -ac 1 -ab 12.2k -f 3gp -y test.3gp

 

至於ffmpeg的安裝

可以參考http://www.code-life.com/read.php?61

新版的amr庫在這裏http://opencore-amr.sourceforge.net/

編譯選項替換爲

--enable-libopencore-amrnb --enable-libopencore-amrwb

 

最近的ffmpeg版本不知道爲什麼make的時候 會報錯

沒有仔細看,只是把下面這段註釋掉,竟然也可以用....

#ifndef V
#Q      = @
#ECHO   = printf "$(1)/t%s/n" $(2)
#BRIEF  = CC AS YASM AR LD HOSTCC STRIP CP
#SILENT = DEPCC YASMDEP RM RANLIB
#MSG    = $@
#M      = @$(call ECHO,$(TAG),$@);
#$(foreach VAR,$(BRIEF), /
#    $(eval $(VAR) = @$$(call ECHO,$(VAR),$$(MSG)); $($(VAR))))
#$(foreach VAR,$(SILENT),$(eval $(VAR) = @$($(VAR))))
#$(eval INSTALL = @$(call ECHO,INSTALL,$$(^:$(SRC_DIR)/%=%)); $(INSTALL))
#endif

發佈了40 篇原創文章 · 獲贊 6 · 訪問量 21萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章