一开始我看的教程是使用windows版的ffmpeg,使用方法就是从官网下载已经编译好的,直接调用/bin文件夹下的ffmpeg.exe.

下载

下载地址1

我选择的是Static and shared builds for macOS 64-bit

如图2:

下载地址2

1.Version 选择20180706,

2.Architecture:选择macOS 64-bit ,

3.Linking :选择Static。

然后将文件解压,这个版本应该是直接编译好的,直接使用bin文件夹目录下的ffmpeg 就可以用了。

控制台里使用:

官方提供的命令:用于格式转换

$ ffmpeg -i input.mp4 output.avi

实际操作:

1.我把它解压到文稿目录下:

实际操作

2.在控制台下进入ffmpeg的bin目录下

进入ffmpeg/bin目录下

3.调用ffmpeg进行格式转换,转换的文件:123.mp4,转换后的文件out123.avi

$ ffmpeg -i 123.mp4 out123.avi

转换

使用java调用fmpeg命令进行格式转换

实现的原理:ffmpeg都是通过命令窗口输入命令进行格式转换,在java环境中可以通过使用ProcessBuilder,通过字符串组合成命令,进行ffmpeg命令的使用。

,那么我们先创建一个名为FFMpegTest的类:

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.avi

List 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("/Users/hou/Documents/ffmpeg-static/bin/ffmpeg");

try {

ffmpeg.convertor("/Users/hou/Documents/ffmpeg-static/bin/123.mp4", "/Users/hou/Documents/ffmpeg-static/bin/java123.mp4");

} catch (Exception e) {

e.printStackTrace();

}

}

}

mp4视频与mp3音频合并:

前面的-i :输入的视频文件,后面的-i:输入的音频文件,-t :输入视频的实际长度单位为秒,-y:合成的文件名及格式后缀

$ ffmpeg -i 123.mp4 -i Fitz.mp3 -t 10 -y mix.mp4

合并后的文件目录

ffmpeg java调用_macos下ffmpeg使用及java调用相关推荐

  1. ffmpeg java 使用_macos下ffmpeg使用及java调用

    一开始我看的教程是使用windows版的ffmpeg,使用方法就是从官网下载已经编译好的,直接调用/bin文件夹下的ffmpeg.exe. 下载 下载地址1 我选择的是Static and share ...

  2. 霸王的大陆3.29版java_你能接受Java 9的下一个版本是Java 18.3吗?

    原标题:你能接受Java 9的下一个版本是Java 18.3吗? 按照计划,Java 9 将于 9 月 21 日正式发布.还有一周时间,是不是很期待? 在 Java 9 这个重要版本之后,Java 又 ...

  3. linux安装编译安装 ffmpeg,解决linux下ffmpeg压缩的mp4无法在网页播放问题

    ffmpeg官网下载页面:http://www.ffmpeg.org/download.html github下载页面  https://github.com/FFmpeg/FFmpeg/releas ...

  4. java 获取 jndi_Websphere下获取jndi、java:comp/env/cas与jdbc/cas的区别

    Websphere下获取jndi,java:comp/env/cas与jdbc/cas的区别: A.lookup("java:comp/env/cas")与lockup(" ...

  5. linux java文件 core_linux下部署.net core/java

    .net core 1.查看系统是否已安装net core 命令:dotnet --info 如果提示未找到命令,说明需要按照net core环境,否则跳过2,3两步 2.查看系统版本,这里是Cent ...

  6. java mail smtps,使用javamail发SMTPS邮件,javamailsmtps邮件,Java通常情况下都不会

    使用javamail发SMTPS邮件,javamailsmtps邮件,Java通常情况下都不会 Java 通常情况下都不会对smtp发邮件加密,但是gmail做了加密. 首先需要引用 Javamail ...

  7. 五分钟JAVA代码教会你:FFmpeg实现视频试看(Centos7版本)

    五分钟JAVA代码教会你:FFmpeg实现视频试看 1. 业务场景 2. 实现思路 3. FFmpeg开源框架介绍 4. Centos7环境实现 4.1 官网下载并上传Linux 4.2 解压安装 4 ...

  8. ffmpeg编译gb28181_RTSP/GB28181协议/海康SDK/Ehome协议视频上云网关EasyCVR视频平台在linux环境下ffmpeg源码单步调试环境搭建...

    目前TSINGSEE青犀视频研发的视频上云服务平台EasyCVR已经可集成海康EHome私有协议,并且在前文中我也跟大家讲过EHome协议的配置和调用流程,有兴趣的可以阅读一下:配置及协议介绍.Eho ...

  9. 五分钟JAVA代码教会你:FFmpeg实现视频试看(window版本)

    五分钟JAVA代码教会你:FFmpeg实现视频试看 1. 业务场景 2. 实现思路 3.FFmpeg开源框架介绍 4. windows环境实现 4.1 windows安装FFmpeg 4.1.1 下载 ...

最新文章

  1. JDBC连接MySQL
  2. 一次开发、多端分发,阿里巴巴发布AliOS车载小程序
  3. rspec 测试页面元素_如何使用RSpec对Go应用进行黑盒测试
  4. php把数据生成mxl,php如何生成加密公钥以及加密私钥的代码案例分享
  5. mui mysql_mui框架使用心得
  6. adb使用-详细教程(Awesome Adb)
  7. OWASP A6 Vulnerable and Outdated Components (自带缺陷和过时的组件)
  8. visual studio属性管理器(property manager)上各项的含义
  9. latex 表格 调整单元格文本垂直居中
  10. 银保监会回应中国金融机构数据被公开售卖:绝大部分系黑客伪造拼凑
  11. 【物联网实训项目】------(五)家庭智慧安防系统之智能监控
  12. The server time zone value .. is unrecognized or represents more than one time zone
  13. Ubuntu系统的内核架构介绍
  14. Android自定义ViewPager图片指示器,兼容实现底部横线指示器
  15. 按住ctrl键多选_解决烦恼:按住Ctrl键单击选择时,阻止Windows意外复制文件
  16. 在个人电脑安装MySQL数据库,你还不会安装吧?
  17. 献给杭电五十周年校庆的礼物
  18. 双机热备ppt_中兴通讯4G产品介绍(PPT)
  19. Android学习论坛网站、开发工具、镜像
  20. 安利一个超级好用的Java学习网站(非常全)

热门文章

  1. eclipse安装WindowBuilder Pro组件
  2. 基于Flink CDC打通数据实时入湖
  3. 假如苹果构建了一个搜索引擎
  4. “手把手撕LeetCode题目,扒各种算法套路的裤子”
  5. 知识图谱够火,但底层技术环节还差点火候 | AI 技术生态论
  6. 通过 .git 目录深入理解 Git!
  7. 诞生一年来,V 语言还好吗?
  8. 程序员大厂面试被怼:干这么多年只会增删改查!谁会要!
  9. 《2019年数据及存储发展研究报告》十大洞察
  10. Google Chrome 正在走 Windows 的老路