ffmpeg的下载及安装

article/2025/9/26 5:07:51

最近在处理一些音频数据,ffmpeg是一款非常好用处理音视频的工具包。那什么是ffmpeg呢?FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,可以结合Java开发一些处理视频音频的功能。

1.ffmpeg下载
首先打开 ffmpeg官网下载
或者用 百度云 下载(https://pan.baidu.com/s/1dCK-TrOcUfC6pdKi2Y1e6g 提取码:2pdo)

然后点击 windows 对应的图标,再点击下面的”Windows EXE File”随便选一个点进去选择一个版本下载。
在这里插入图片描述

2.下载后解压,配置环境变量
下载解压后就能在 bin 文件夹下能看到三个可执行程序:ffmpeg、ffplay、ffprobe,配置好环境变量后即可使用。
在这里插入图片描述
验证是否成功:
cmd窗口输入ffmpeg -version 。如下图则安装成功。
在这里插入图片描述

3.介绍FFmpeg组成
构成FFmpeg主要有三个部分

3.1第一部分是四个作用不同的工具软件,分别是:
ffmpeg.exe,
ffplay.exe,
ffprobe.exe。

ffmpeg.exe:音视频转码、转换器
ffplay.exe:简单的音视频播放器
ffprobe.exe:简单的多媒体码流分析器

3.2第二部分是可以供开发者使用的SDK,为各个不同平台编译完成的库。
如果说上面的四个工具软件都是完整成品形式的玩具,那么这些库就相当于乐高积木一样,我们可以根据自己的需求使用这些库开发自己的应用程序。这些库有:

libavcodec:包含音视频编码器和解码器
libavutil:包含多媒体应用常用的简化编程的工具,如随机数生成器、数据结构、数学函数等功能
libavformat:包含多种多媒体容器格式的封装、解封装工具
libavfilter:包含多媒体处理常用的滤镜功能
libavdevice:用于音视频数据采集和渲染等功能的设备相关
libswscale:用于图像缩放和色彩空间和像素格式转换功能
libswresample:用于音频重采样和格式转换等功能

3.3第三部分是整个工程的源代码,无论是编译出来的可执行程序还是SDK,都是由这些源代码编译出来的。
FFmpeg的源代码由C语言实现,主要在Linux平台上进行开发。FFmpeg不是一个孤立的工程,它还存在多个依赖的第三方工程来增强它自身的功能。在当前这一系列的博文/视频中,我们暂时不会涉及太多源代码相关的内容,主要以FFmpeg的工具和SDK的调用为主。到下一系列我们将专门研究如何编译源代码并根据源代码来进行二次开发。

4.简单使用:
比如,使用ffmpeg获取视频的一些信息:

ffprobe -show_format D:\507-#网愈云故事收藏馆.mp4

在这里插入图片描述

播放音频文件的命令:

ffplay D:\507-#网愈云故事收藏馆.mp4

这时候就会弹出来一个窗口,一边播放MP3文件,一边将播放音频的图画到该窗口上。针对该窗口的操作如下:

点击该窗口的任意一个位置,ffplay会按照点击的位置计算出时间的进度,然后seek到计算出来的时间点继续播放。
按下键盘的左键默认快退10s,右键默认快进10s,上键默认快进1min,下键默认快退1min。
按ESC就退出播放进程,按W会绘制音频的波形图。

5.使用Java调用ffmpeg,进行音视频的转换、音视频提取、音视频截取:
参考我另一篇文章,代码可直接使用:

  • Java使用ffmpeg进行视频格式转换、音视频合并、播放、截图

在这里插入图片描述


其他的一些ffmpeg命令行使用可以参考:
FFmpeg 的介绍与使用
ffmpeg命令详解

参考文章:
FFmpeg安装(windows环境)
总结FFMPEG视音频编解码零基础学习方法
FFmpeg命令行工具学习(二):播放媒体文件的工具ffplay


http://chatgpt.dhexx.cn/article/sRARGPwc.shtml

相关文章

如何安装ffmpeg,详细安装教程,亲测有效

今天在下载网上视频的时候,发现下载的是ts文件 想要转换mp4 文件需要安装ffmpeg 网上找了很多方法,整理出ffmpeg的安装方法,详细讲解如下。 1、下载ffmpeg 到ffmpeg官网https://ffmpeg.org/download.html,按照箭头点击下载安装包 …

C语言 不使用strcpy 函数实现字符串复制功能

Ⅰ )字符串复制函数 字符串复制是字符串操作中比较常用的操作之一。C语言库函数中提供的字符串复制函数是:strcpy函数。该函数的功能为:把源字符数组中的字符串复制到目的字符数组中,字符串结束标志“\0”也一同复制。下面实例为通…

用c语言实现字符串复制

1.题目来源 作者: C课程组 单位: 浙江大学 时间限制: 400 ms 内存限制: 64 MB 代码长度限制: 16 KB 2.问题简述 本题要求编写函数,将输入字符串t中从第m个字符开始的全部字符复制到字符串s中。 函数接口定义: void strmcpy( char *t, int m, ch…

多种方式实现字符串的复制

用字符数组名做函数的参数 #include<stdio.h>//用函数调用实现字符串的复制 int main() { void fgo(char c[],char d[]);char a[]"听我说谢谢你~",b[]"你要结婚啦~";printf("a%s\n",a);printf("b%s\n",b);printf("将a复制…

复制字符串的三种方法

1.通过指针实现 2.通过自定义函数实现 3.通过调用字符串处理库中的复制函数实现 注意字符串结尾的\0

win10 mysql8 my.ini配置文件

郑重说明 网上很多文章写win10系统下的mysql8版本的配置文件位置在哪里&#xff0c;以及如何安装mysql&#xff0c;等等。这些要么将的不够清晰&#xff0c;要么画蛇添足。经过繁琐的查询和测试&#xff0c;终于搞定&#xff0c;现在记录下来&#xff0c;希望能够帮助到诸位。…

在CentOS7下添加MySQL用户并设置相应权限

2019独角兽企业重金招聘Python工程师标准>>> 1.进入mysql命令行&#xff0c;输入root及密码 [rootlocalhost ~]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 19 Server version: 5…

MySQL增加默认值

MySQL里面的表同一列里要填的若大多是同一个值&#xff0c;这时候就可以设置默认值了。 方便快捷的填充。 例如 存在jxgl里的students表性别列要填的大多是&#xff1a;男。 则可以使用ALTER命令修改。 详细命令如下。 一个文字占两个空格&#xff0c;所以char()括号里面的…

mysql8设置sql_mode

原文 mysql8报错&#xff0c; 在mysql配置文件下设置 sql_mode‘NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES’ 在mysqlld下添加sql-mode

MySQL的设置

一、MySQL数据库服务的启动和停止 MySQL软件的服务器端必须先启动&#xff0c;客户端才可以连接和使用数据库。 图形化方式 计算机&#xff08;右键鼠标&#xff09;----> 管理&#xff08;点击&#xff09;----> 服务和应用程序&#xff08;点击&#xff09;---->…

MySQL中添加或插入语句(Insert)的几种使用方式

1.各大培训机构&#xff0c;价格10万的视频 Java架构师视频免费送 2.各种电子书籍经典Java书籍免费送 3.关注下方我的公众号进行免费获取 MySQL中添加或插入语句(Insert)的几种使用方式 1.INSERT 简写方式插入数据(不推荐) 1.先看一下表中有那些数据 2.使用Inset into 表名 va…

mysql添加备注信息

前言 这连天有人问我一些mysql的备注信息&#xff0c;不得已还是写一遍博客吧 1、创建表的时候&#xff0c;添加表名备注和字段备注 CREATE TABLE healerjean_comment (id bigint(20) NOT NULL AUTO_INCREMENT,name varchar(32) NOT NULL COMMENT 名字备注,email varchar(64)…

关于 Unable to attach to 32-bit process running under WOW64的错误

关于 Unable to attach to 32-bit process running under WOW64的错误 今天在使用IDEA编译的程序的时候&#xff0c;使用jinfo 命令查看的时候出现 然后初步判断自己JDK安装错误&#xff0c;但是后面查看自己的JDK版本没错&#xff0c;然后判断是不是编译的时候用的32位的JDK&a…

Unable to attach to 32-bit process running under WOW64

最近在使用jps及jstack指令时&#xff0c;遇到一个问题。 文章目录 问题描述1. 使用eclipse启动一个死锁的进程2. 打开cmd3. 执行指令 分析过程1. 如何查看进程是多少位的&#xff1f; 修改方法 问题描述 1. 使用eclipse启动一个死锁的进程 public class DeadThread {public…

调试运行在Wow64子系统下的程序----x64版windbg调试win32程序

大家有没有遇到过这种情况&#xff1a;程序崩溃了&#xff0c;windbg分析线程堆栈时&#xff0c;输出了一堆乱七八糟的调用栈。更烦心的是&#xff0c;这堆调用栈中根本找不到跟自己程序相关的信息。来看一个类似的场景&#xff1a;运行C:\Windows\SysWOW64\calc.exe (win32版的…

谈谈Windows Wow64

本文是《深入理解Windows操作系统 (第六版) 》关于64位Windows操心系统有关Wow64部分的读书笔记&#xff0c;因为之前很少有接触到关于Wow64的部分&#xff0c;记录一下。 Wow64是允许在64位Windows上执行32位x86应用程序的软件。它的实现方式是一组用户模式dll&#xff0c;外…

Windows WOW64 nativeapi 逆向详解,32程序兼容剖析

前言 windows有很多核心的原生api&#xff0c;其中包含sdk声明的和文档未声明的。主要由于ntdll.dll和win32u.dll(服务号0x1000-0x1FFF)导出。 WOW64 (Windows-on-Windows 64-bit)是一个Windows操作系统的子系统&#xff0c;用于模拟32位环境&#xff0c;使得32位执行程序在x64…

mysql版本wow64平台_WOW64最佳实现

WOW64简介 WOW64(Windows 32-bit On Windows 64-bit)是x64平台上运行win32应用程序的模拟器&#xff0c;它在系统层提供了中间层&#xff0c;将win32的系统调用转换成x64进行调用&#xff0c;并且将x64返回的结果转换成win32形式返回给win32程序。下图描述了win32程序如何在x64…

WOW64机制

WOW64: Windows On Windows64 是一种在64位OS中支持运行的32位应用程序的机制. 64位Windows中, 64位应用程序会加载64位的kernel32.dll, ntdll.dll, 32位应用程序会加载32位的kernel32.dll, ntdll.dll. WOW64则会将32位的dll文件的API请求重定向到64位的dll文件. 注意内核模式…

java for数组遍历数组_Java foreach操作(遍历)数组

语法: 我们分别使用 for 和 foreach 语句来遍历数组 运行结果: 练习: import java.util.Arrays; public class HelloWorld {public static void main(String[] args) {// 定义一个整型数组,保存成绩信息 int[] scores = { 89, 72, 64, 58, 93 }; // 对Arrays类对数组进行排…