上傳視訊時自動完成擷取縮圖(一)
視訊類網站我們每天都會用到,優酷、愛奇藝、騰訊視訊、百度視訊為我們提供了各種各樣豐富的影視資源豐富我們的日常娛樂。視訊線上教育發展同樣也很火。
最近在做校園視訊管理的專案。從最開始的熟悉框架,各種技術到一個個頁面一個個功能的實現經歷了滿腹鬥志,遇到困難技術瓶頸低落,補充技術知識再投入開發,功能實現滿血復活。一次次輪迴都好像是生命重生!
今天來個大家分享下很實用的在視訊上傳時,從視訊中擷取一張圖片作為在首頁展示視訊的縮圖。
從視訊中擷取圖片最核心的是用到了ffmpeg。很多的開源專案都用到了FFmpeg框架。我們熟悉的暴風影音、QQ影音、KMP、GOM Player、PotPlaye都加入了FFmpeg(注意區分ffmpeg和FFmepg,它們是不同的概念,請自行查閱)。
ffmpeg的功能很強大,單獨執行ffmpeg.exe可以實現播放音訊、視訊,給音訊視訊轉格式,截圖和錄製螢幕。
要使用它的功能其實根本是呼叫Cmd命令視窗然後輸入要執行的命令。
播放音訊檔案:
如我們想用它播放一個mp3音訊檔案:ffplay.exe d:\李榮浩喜劇之王.mp3
效果如下:
小窗口裡面就是它播放的狀態,雖然沒有我們平常看到的播放器介面但是在窗口裡面隨便點下可以調整播放的進度。
同樣播放視訊檔案:ffplay.exe d:\查莉成長日記.rmvb
視訊格式轉換:ffmepg.exe -y -i D:\Bootstrap.wmv -ab 56k -ar 22050 -b:v 500k -r 29.97 -s 640x358 D:\Bootstrap.flv
錄製螢幕:ffmpeg -f alsa -ac 1-i pulse -acodec aac -f x11grab -s 1024x600 -i :0.0 –sameq D:\錄製的螢幕視訊.mp4
錄製聲音的部分是:-f alsa -ac 1 -i pulse-acodec aac
錄製視訊的是: -f x11grab -s1024x600 -i :0.0 –sameq
ffmpeg功能是強大但是介面不太美觀,有了這些運用ffmpeg的基礎,怎麼運用到實際的專案中呢?