java使用ffmpeg工具处理视频音频文件

1.提取MP4中的MP3文件

package com.star.subtitle;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;


public class Translate {

    public static void vedioToPcm(String vedioUrl,String pcmUrl,String ffmpegUrl) throws InterruptedException, IOException {
        List<String> commend = new ArrayList<String>();
        commend.add(ffmpegUrl);
        commend.add("-y");    //覆盖输出文件无需提问
        commend.add("-i");    //输入文件地址
        commend.add(vedioUrl);
        commend.add("-acodec");    //设置音频解码器
        commend.add("libmp3lame");
//        commend.add("pcm_s16le");
//        commend.add("-f");    //强制文件输入输出格式
//        commend.add("mp3");
        commend.add("-ac");        //设置声道数
        commend.add("1");
        commend.add("-ar");        //设置采样率
        commend.add("16000");
        commend.add(pcmUrl);
        ProcessBuilder builder = new ProcessBuilder();
        builder.command(commend);
        builder.redirectErrorStream(true);
        Process process = builder.start();
        process.waitFor();// 等待进程执行结束
    }
    public static void main(String[] args) throws InterruptedException, IOException {
        vedioToPcm("F:\java\testpackage\mp4\bulletsfly.mp4","F:\java\testpackage\mp3\bulletsfly.mp3","F:\java\testpackage\ffmpeg-20200831-4a11a6f-win64-static\bin\ffmpeg.exe");

    
    }
}
原文地址:https://www.cnblogs.com/StarZhai/p/13842041.html