centos 6.5 下安裝ffmpeg,並實現自動化轉換 (親測)

最近做項目,需要獲取視頻的縮略圖,找了好幾種方式,後來還是直接通過ffmpeg 直接生成視頻縮略圖的方案最靠譜,特記錄如下:

首先安裝yasm:

yasm是一個完全重寫的NASM彙編。目前,它支持x86和AMD64指令集。接受NASM和GNU彙編器(gas)語法,產出二進制,ELF32,ELF64,COFF,Mach-O的(32和64),RDOFF2,的Win32和Win64對象的格式,並生成STABS調試信息的來源,DWARF2,CodeView8格式。(抄來的,我也不明白)

wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -zxvf yasm-1.3.0.tar.gz
./configure
make
make install

然後選擇安裝lame(這個是處理mp3的,我不需要,所以就沒安裝過,沒有親測)

wget https://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz/download
#下載下來的文件名是down重命名爲實際的名字

mv download lame-3.99.5.tar.gz
tar -zxvf lame-3.99.5.tar.gz
cd ./lame-3.99.5
./configure
make
make install
#編譯安裝後並沒有加入系統庫中,添加如下軟連接加入系統庫
ln -s /usr/local/lib/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0

然後安裝FFmpeg(超級慢,我安裝了至少10分鐘左右,make需要好久)

wget http://www.ffmpeg.org/releases/ffmpeg-4.0.tar.gz
tar -zxvf ffmpeg-4.0.tar.gz
cd ffmpeg-4.0
#編譯配置,使mp3編碼器生效 沒執行第二步的直接./configure
./configure --enable-libmp3lame
make
make install

OK ,安裝完成。

下面是將mp4 格式的文件獲取縮略圖的命令:

ffmpeg -i 8f6abdae5268fd18f3492b4bdd10ed793b81c918.mp4 -y -f image2 -t 0.001 -s 500*400 8f6abdae5268fd18f3492b4bdd10ed793b81c918.jpg

其中500*400是尺寸。(如果沒有強制分辨率的話,直接刪除-s w*h 這一部分即可)

獲取第8.01秒的縮略圖片:

ffmpeg -i 8f6abdae5268fd18f3492b4bdd10ed793b81c918.mp4 -y -f mjpeg -ss 8 -t 0.001 -s 500*400 8f6abdae5268fd18f3492b4bdd10ed793b81c918.jpg

完成了以上的步驟,那麼意味着我們的MP4獲取縮略圖那一部分已經走通了,但是,這樣的commend-line的方式,是沒法使用在我們的文件服務器之中的,我們的文件服務器需要的是自動化與智能化,需要在video上傳之後,自動生成jpg,我們通過inotifywait 來實現。

安裝inotify-tools:

yum install inotify-tools

通過inotifywait –help 就可以獲取所有的參數命令,這個inotify-tools 怎麼用,這裏就不詳細介紹,具體請參看:WiKi

然後通過shell腳本就可以獲取新的文件,然後執行ffmpeg的命令即可

#!/bin/bash
inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %f %e' -e close_write . |while read date time file event;do
if [ \${file##*.} != "jpg" ];
    then
        ffmpeg -i \${file} -y -f image2 -t 0.001 ${file}.jpg
fi
done

全文完。

轉載自:https://blog.iliujing.com/blog/articles/2018/08/10/1533895142315.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章