android ffmpeg視頻剪切與合并

android-ffmpeg-java-demo

https://github.com/shutup/android-ffmpeg-java-demo

說明

以前一直希望可以做一個播放器,所以當時就接觸了ffmpeg這個庫,當時打算使用JNI的方式進行底層的調(diào)用,無奈整個邏輯比較麻煩,因此進度一再擱淺。

后來進一步的了解中發(fā)現(xiàn),其實對于視頻的處理,方法是很多的

  • 直接以C的代碼進行處理,調(diào)用ffmpeg庫的函數(shù)
  • JAVA在命令行調(diào)用C的程序進行處理,調(diào)用ffmpeg程序

經(jīng)過一段時間的探索,對于ffmpeg的交叉編譯已經(jīng)沒什么大問題了,那么我們就來使用這個庫吧。

這個demo主要演示,通過JAVA在命令行調(diào)用FFMPEG的二進制程序來完成一些視頻的處理功能。這個ffmpeg的二進制程序是在交叉編譯的過程中生成的。使用的java wrapper是guardianproject's android-ffmpeg-java,當然我自己有做一些優(yōu)化,比如使用我自己編譯的最新的ffmpeg替換了它原版使用的ffmpeg程序,開發(fā)環(huán)境也換到了android studio,還添加了一些方法的實現(xiàn)。

視頻剪切

原理:JAVA開啟一個命令行,在命令行中調(diào)用ffmpeg的程序,根據(jù)傳入的參數(shù)進行相關處理。

ffmpeg -ss 00:00:00 -t 00:00:30 -i test.mp4 -vcodec copy -acodec copy output.mp4
* -ss 指定從什么時間開始
* -t 指定需要截取多長時間
* -i 指定輸入文件

視頻合并

原理:JAVA開啟一個命令行,在命令行中調(diào)用ffmpeg的程序,根據(jù)傳入的參數(shù)進行相關處理。

//進行視頻的合并
ffmpeg -f concat -i list.txt -c copy concat.mp4
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容