in header_common.htm --> -->

52AV手機A片王|52AV.ONE

 找回密碼
 立即註冊
快捷導航

     
查看: 4037|回復: 0
打印 上一主題 下一主題

[linux指令] Linux下安装FFmpeg ~1[含1張圖]

[複製鏈接]
跳轉到指定樓層
樓主
發表於 2015-10-10 10:47:21 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式

本帖最後由 IT_man 於 2017-3-28 13:02 編輯 5 s, x5 ~' G( \. T0 D4 M9 b
+ v$ n# c/ G' Z9 y
FFmpeg是一款强大的視訊編解碼工具,可以處理大量的編碼格式。ffmpeg是開放原碼,在Linux平台下開發,同時也可以在其它作業系统下編譯執行,包括Windows、Mac OS X等- k$ }1 y5 q0 ^, ]9 U5 q; ^

; L+ d+ E' k3 ~/ t% ~1 ~% V方法一:' `. l' }! Y/ i/ R& \! C8 }
3 P" l* y4 A" U8 m
[安裝]6 z! n/ e3 w3 `* ?; i8 J4 \$ T' k' H
[/usr/local]#tar -jxvf ffmpeg-2.5.3.tar.bz2
6 x1 E' ^* u7 V: h) |7 G9 |3 O( P[/usr/local]#cd ffmpeg-2.5.32 I1 y9 K9 J5 e$ F- @

! R7 V& o# {: [3 U

/ G" T( W( m$ Q/ x" `" |安裝yasm* }, n: [7 D% H! j
ffmpeg編譯中為了提高compile速度,使用了匯編指令,于是需要使用這個工具。" Q7 t( e/ r+ \2 T* p& N0 C
[/usr/local/ffmpeg-2.5.3]#yum -y install yasm/ m4 C4 ?( b2 L
或者同樣使用源碼方式安裝,下載yasm源代碼,然后使用./configure、make以及make istall進行安裝2 M( S/ U; E$ O  H, R+ _/ u
[/usr/local/ffmpeg-2.5.3]#./configure --enable-shared --prefix=/usr/local/ffmpeg, ~8 J6 r/ d( F- [
其中–enable-shared表示產生動態連接庫,可以供以后編程使用,同時生成的可執行程序也依賴這些動態庫。如果不加上–enable-shared選項則使用靜態連接的方式編譯,此時不會產生動態庫,同時產生的ffmpeg等的可執行檔也比較大,但他們不需要動態庫就可以直接執行。3 ^$ s( w, e( w
–prefix表示工具安裝的目錄,這裡設為/usr/local/ffmpeg。
) v- f% \( ~: K% f$ @- A& O) B# S
[/usr/local/ffmpeg-2.5.3]#make     ; }& y* s& m# d4 X3 r! k) i
[/usr/local/ffmpeg-2.5.3]#make install & @% y  f! }" e& H
6 L0 S4 e( N3 s: a5 d3 K
6 {/ I7 b3 J& q' o
路径處理:

安裝完成后在/usr/local/ffmpeg產生三個目錄:

  • bin:可執行檔目錄
  • lib:動態連接庫目錄
  • include:編程用到的頭文件目錄8 [+ i2 @, q, K. ?5 V* g
不管是藉由compile還是可執行程序的執行都需要依賴lib下面的動態庫,可以把里面的so文件拷貝到/usr/lib下,也可以直接修改配置文件。查看/etc/ld.so.conf文件:
7 V. `4 q" D: |. M( U7 k[/usr/local/ffmpeg-2.5.3]#vi /etc/ld.so.conf
. ^3 R: O8 w$ i% _; Dinclude ld.so.conf.d/*.conf+ \4 t3 s% W+ }' W$ B
0 j& w2 ~; q" P  ~( h2 ]) Q8 a5 ]
於是可以在/etc/ld.so.conf.d/建一個新的文件ffmpeg.conf,新增一行,即為ffmpeg的lib目錄:" d9 ^! y8 J7 @( U
/usr/local/ffmpeg/lib* Q; Z" z9 [9 I! f
再執行ldconfig,更新ld.so.cache,使修改生效。When run ldconfig show error:
/ G# f/ B& ~% c& x& uldconfig: /usr/lib64/libgd.so.2 不是一個符號連接檔 ==>, T, i3 G* x3 n( f+ b
ll /usr/lib64/
0 L$ v& Q/ P' o3 D+ R-rwxr-xr-x 1 root root 275328 2015-01-11 08:03 /usr/lib64/libgd.so.28 L- N0 f0 f% \) R+ ?2 w: X
-rwxr-xr-x 1 root root 275328 2015-01-11 08:03 /usr/lib64/libgd.so.2.0.03 l! A+ Y, ?% _& i
So:& ]2 k, v: v+ q: ]/ W1 r. m
ln -s /usr/lib64/libgd.so.2.0.0   /usr/lib64/libgd.so.2     就解決, z  v$ w/ }+ _
可以 vi /etc/ld.so.cache  看看
/usr/local/ffmpeg/lib 是否已加入 cache中, M! ]' p% F( W4 k: t: G, N
9 C6 ]4 ]3 P- z7 o7 F0 c/ P2 T' J
為了在任何地方能够直接用ffmpeg執行,而不用使用如./ffmpeg或者 /usr/local/ffmpeg/bin/ffmpeg的方式執行此工具,可以把可執行檔案複製到bin目錄下,或者在bin目錄下建立軟連結。類似于Windows下的捷徑,如果原可執行檔案被删除了,軟連結也不能繼續使用,而硬連結則可以繼續使用。建連結命令如下:
5 N0 k. X1 M6 K; E. \

4 w$ w; _3 c# r4 F0 m2 z
sudo ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/local/bin/   or      [/usr/local/bin]# sudo ln -s /usr/local/ffmpeg/bin/ffmpeg  .
% D$ `- Y2 c6 M. r' R
sudo ln -s /usr/local/ffmpeg/bin/ffprobe /usr/local/bin/   or      [/usr/local/bin]# sudo ln -s /usr/local/ffmpeg/bin/ffprobe .
' @. ?  Z0 c; I. {4 q
sudo ln -s /usr/local/ffmpeg/bin/ffserver /usr/local/bin/   or      [/usr/local/bin]# sudo ln -s /usr/local/ffmpeg/bin/ffserver . . z1 n! `4 ~8 R/ a5 Z) F0 k: s

8 L, K" _. `3 z) j& k) E7 R另外,如果需要包含ffmpeg的頭文件,最好將include目錄下的ffmpeg複製到/usr/include中。9 t3 t  Q" ~% W( i! v$ d+ e6 [
現在可以在shell中直接輸入ffmpeg執行,結果如下:; b/ q" |. `3 m  c: z. y

$ n9 C' ^$ |7 `. Q9 i& O

6 n& Y9 h. z% u7 F5 R& F[root@CentOS6 bin]# ffmpeg3 T$ S9 x2 f* z, ~) U
ffmpeg version 2.3.git Copyright (c) 2000-2014 the FFmpeg developers
9 L* B7 W* }' `+ f$ W  built on Oct  9 2015 16:11:13 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-4), k$ e+ G* j4 O
  configuration: --enable-shared --prefix=/usr/local/ffmpeg
1 ]& g8 U- \+ F2 V  ~' [  libavutil      54.  7.100 / 54.  7.100
+ U3 b$ F) U# A8 k' O1 J% v* u& L  libavcodec     56.  1.100 / 56.  1.100
0 J: g' J9 e3 s: f0 ]8 Z  libavformat    56.  4.100 / 56.  4.100- }3 v$ @& ^) Z0 \
  libavdevice    56.  0.100 / 56.  0.100( \1 t- \% f  ?0 S4 U! L) c
  libavfilter     5.  1.100 /  5.  1.100
9 v4 V  m3 V2 G/ D5 R  libswscale      3.  0.100 /  3.  0.1005 }! P# ?6 P$ F- x$ I) O+ F& s6 R/ Y
  libswresample   1.  1.100 /  1.  1.100( ?9 B" J3 F; v5 @# @, I
Hyper fast Audio and Video encoder
1 k9 O( _8 }6 _3 u1 }6 i$ N0 zusage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...5 `" ]4 F' f! e9 a5 L2 a  E
Use -h to get full help or, even better, run 'man ffmpeg'
, v9 V; i9 y# l1 w! f; u

( E6 m( C9 I! ~8 i方法二:
9 ]- ~- H: s, f/ M$ }2 p1 Q% t3 X, J3 E9 [+ t
以 ffmpeginstaller 安裝 ffmpeg 相關套件:
/ r$ Q/ ^2 W. }: m( c! O- Z0 X, p3 U5 E
http://ffmpeginstaller.com下載到指定的目錄,例如:/tmp/3 T2 b4 d1 v0 Q( G, r
解開壓縮檔後,會產生一個 ffmpeginstaller+版本號 的目錄,例如:我下載解開後的目錄為6 j7 x4 A; @' k' l* B4 n
/tmp/ffmpeginstaller.8.0/
% E1 P- f8 f9 O2 r* C& I( Y進去目錄後,下指令以執行
/ s) h5 A2 A' ^4 m# ?9 g
) {- X2 E+ D( S[root]# ./install' \9 u3 n9 }$ t5 E9 {

- n/ [7 ?  \* Z7 i8 g安裝程式就會開始進行安裝,還會視情況自己上網去下載需要的檔案。
6 b  }+ i. {: l其實這個安裝程式就是 yum install 的腳本,安裝過程大約 1 小時2 N/ S1 R% ?) x, `6 p! s: D
下圖是 ffmpeginstaller 會安裝跟ffmpeg相關的套件:
: P% U9 E- Y0 P! _* t! P
' f) H# h& z6 F 3 V/ a' |; g* f6 a1 Q
" F$ e  O3 M* z7 h0 B7 _7 |
參考原發: http://oldgrayduck.blogspot.tw/2 ... staller-ffmpeg.html' t' ^% H/ T2 k4 p; f0 I  D

8 [+ J. J* E6 J6 m6 f- t
5 d- Q7 M. r- h* d" u, |0 x' I- \0 s% T* G
-->
您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則


-->

聚BT福利

本區塊內容依據『電腦網路內容分級處理辦法』為限制級網站,限定年滿18歲以上或達當地國家法定年齡人士方可進入,且願接受本站各項條款,未滿18歲 謝絕進入瀏覽。為防範未滿18歲之未成年網友瀏覽網路上限制級內容的圖文資訊,建議您可進行網路內容分級組織ICRA分級服務的安裝與設定。 (為還給愛護 本站的網友一個純淨的論壇環境,本站設有管理員)

QQ|小黑屋|手機板|52AV手機A片王

GMT+8, 2024-12-29 16:16 , Processed in 0.072691 second(s), 23 queries .

連絡站長.廣告招商

[email protected] | QQ:2405733034     since 2015-01

裸聊妹 快速回復 返回頂部 返回列表