色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

java使用ffmpeg處理視頻的方法

瀏覽:101日期:2022-09-05 08:37:32

FFmpeg是一套可以用來記錄、轉換數字音頻、視頻,并能將其轉化為流的開源計算機程序。采用LGPL或GPL許可證。它提供了錄制、轉換以及流化音視頻的完整解決方案。

java使用ffmpeg處理視頻的方法

官網鏈接http://ffmpeg.org/

1.下載并解壓windows版本安裝包

2.windows本地使用命令行測試

1.修改格式測試(轉碼)

將需要修改的視頻A.avi 提前放在bin目錄下 在bin目錄下cmd進入命令行 輸入命令完成轉碼成B.mp4

ffmpeg.exe -i A.avi -y B.mp4

2.視頻音頻結合測試

將需要修改的視頻A.avi和bgm.mp3 提前放在bin目錄下 在bin目錄下cmd進入命令行 輸入命令完成合并成8秒的new.avi

ffmpeg.exe -i A.avi -i bgm.mp3 -t 8 -y new.avi

3.java中建立工具測試類

package com.xc.utils;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;public class FFMpegTest {private String ffmpegEXE;public FFMpegTest(String ffmpegEXE) {super();this.ffmpegEXE = ffmpegEXE;}public void convertor(String videoInputPath, String videoOutputPath) throws Exception {//ffmpeg -i input.mp4 -y output.aviList<String> command = new ArrayList<>();command.add(ffmpegEXE);command.add('-i');command.add(videoInputPath);command.add('-y');command.add(videoOutputPath);for (String c : command) {System.out.print(c + ' ');}ProcessBuilder builder = new ProcessBuilder(command);Process process = builder.start();InputStream errorStream = process.getErrorStream();InputStreamReader inputStreamReader = new InputStreamReader(errorStream);BufferedReader br = new BufferedReader(inputStreamReader);String line = '';while ( (line = br.readLine()) != null ) {}if (br != null) {br.close();}if (inputStreamReader != null) {inputStreamReader.close();}if (errorStream != null) {errorStream.close();}}public static void main(String[] args) {FFMpegTest ffmpeg = new FFMpegTest('C:ffmpegbinffmpeg.exe');try {ffmpeg.convertor('C:a.mp4', 'C:b.avi');} catch (Exception e) {e.printStackTrace();}}}

package com.xc.utils;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;public class MergeVideoMp3 {private String ffmpegEXE;public MergeVideoMp3(String ffmpegEXE) {super();this.ffmpegEXE = ffmpegEXE;}public void convertor(String videoInputPath, String mp3InputPath,double seconds, String videoOutputPath) throws Exception {//ffmpeg.exe -i A.avi -i bgm.mp3 -t 7 -y new.aviList<String> command = new ArrayList<>();command.add(ffmpegEXE);command.add('-i');command.add(videoInputPath);command.add('-i');command.add(mp3InputPath);command.add('-t');command.add(String.valueOf(seconds));command.add('-y');command.add(videoOutputPath);//for (String c : command) {//System.out.print(c + ' ');//}ProcessBuilder builder = new ProcessBuilder(command);Process process = builder.start();InputStream errorStream = process.getErrorStream();InputStreamReader inputStreamReader = new InputStreamReader(errorStream);BufferedReader br = new BufferedReader(inputStreamReader);String line = '';while ( (line = br.readLine()) != null ) {}if (br != null) {br.close();}if (inputStreamReader != null) {inputStreamReader.close();}if (errorStream != null) {errorStream.close();}}public static void main(String[] args) {MergeVideoMp3 ffmpeg = new MergeVideoMp3('C:ffmpegbinffmpeg.exe');try {ffmpeg.convertor('C:a.avi', 'C:bgm.mp3', 7.1, 'C:javaNew.mp4');} catch (Exception e) {e.printStackTrace();}}}

總結

到此這篇關于java使用ffmpeg處理視頻的方法的文章就介紹到這了,更多相關java ffmpeg處理視頻內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 99性视频| 成人爽a毛片在线视频网站 成人爽爽大片在线观看 | 精品视频一区在线观看 | 久久国产香蕉 | 亚洲精品国产福利一区二区三区 | 国产vs久久| 人成午夜性刺激免费 | 免费视频成人国产精品网站 | 成年人免费大片 | 亚洲欧洲一级 | 欧美特黄一级aa毛片 | 朝鲜美女免费一级毛片 | 欧美高清一级片 | 久草手机在线观看视频 | 狠狠色丁香久久综合网 | 玖玖精品在线视频 | 久久综久久美利坚合众国 | 男女乱淫真视频免费观看 | 久久久久女人精品毛片 | 久久国产成人 | 国产区在线免费观看 | 精品国产1区 | 亚洲国产欧洲精品路线久久 | 久久影院yy6080 | 国产成人三级经典中文 | 一级做a爰片久久毛片欧美 一级做a爰片久久毛片人呢 | 久久久精品久久视频只有精品 | 日韩特黄毛片 | 乱码在线中文字幕加勒比 | 欧洲一级鲁丝片免费 | 国产欧美在线视频 | 欧美操操操 | 在线91精品国产免费 | 欧美xxxxx九色视频免费观看 | 久久亚洲国产午夜精品理论片 | 国产亚洲欧美一区二区 | 亚洲精品第五页中文字幕 | 九九99靖品| 一级毛片儿 | 久久一日本道色综合久久 | 成人午夜爽爽爽免费视频 |