FFMPEG的用法


FFMPEG是一個視頻軟件的裝換工具。

DOS下的操作如下:

ffmpeg 轉換

D:\ffmpeg\bin>ffmpeg.exe -i C:\Users\pc\Desktop\sp.mp4 -vf scale=500:-1 -t 100 ss.flv

C:\Users\pc\Desttop\sp.mp4 是所需要轉換的文件地址

scale=500:-1 表示准換后的視頻的寬度為500px -1表示高度自適應,也可以寫成500:500,表示寬度和高度都是500px

-t 100 表示截取的視頻的時間為100毫秒,

ss.flv表示命名的新文件名,文件存放在D盤.

ffmpeg 截圖

ffmpeg -i demo.mp4 -ss 10.1 -t 0.001 1.jpg

截取demo.mp4的視頻 從10.1秒開始 -t 0.001表示截取10.1秒的這張圖片 保存為 1.jpg

ffmpeg 裁剪

ffmpeg -i demo.mp4 -filter:v "crop=10:20:100:100" out.mp4

crop里的參數依次為: 左邊距:右邊距:寬度:高度

ffmpeg 相同分辨率轉flv

ffmpeg -i demo.mp4 -vcodec copy -acodec copy out.flv

Ipad 可以直接播放mp4,可以用html5的video標簽

<video width="555" height="315" controls preload="auto" src="demo.mp4"></video>

 

ffmpeg 視頻合成

因為 ffmpeg 是支持切分 mp4 視頻的,所以我就理所當然的以為 ffmpeg 是支持視頻合並。直到今天同事找我問方法,才發現一直以為的方法是錯誤的, mp4 不支持直接 concate(丟人了。。。),趕緊補了一下能量,從網上抓來了多種實現。

注: 這里的 mp4 指的是網上最多見的 h264+aac mpeg4 容器的方式

ffmpeg + ts

這個的思路是先將 mp4 轉化為同樣編碼形式的 ts 流,因為 ts流是可以 concate 的,先把 mp4 封裝成 ts ,然后 concate ts 流, 最后再把 ts 流轉化為 mp4。

ffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts
ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts
ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

  

關於頁面視頻播放的一些總結

1.如果文件比較大的話一般只能播放流媒體格式的文件,比如flv格式,采用邊下載邊播放的形式,所以如果文件不是flv格式的話需要按照上面所介紹的轉換方式進行轉換。

2.文件的碼率會影響下載的速度,如果當前網絡為1M,那么想要流暢的播放視頻文件的話,播放的文件的碼率必須在1024Kbps以下,否則就需要進行轉換,以達到最佳播放效果。

更多關於Ffmpeg的介紹 http://ffmpeg.org/

更多關於Jplayer的介紹 http://www.jplayer.org/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM