首页 > 其他分享 >FFmpeg 简单介绍及使用

FFmpeg 简单介绍及使用

时间:2024-11-09 10:21:07浏览次数:1  
标签:exe ffmpeg 介绍 音视频 编译 版本 简单 FFmpeg

1.简介
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。

ffmpeg的官网地址是:https://www.ffmpeg.org/

ffmpeg的Github项目地址是:FFmpeg/FFmpeg

2.组成
构成FFmpeg主要有三个部分,

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

ffmpeg.exe:音视频转码、转换器

ffplay.exe:简单的音视频播放器

ffserver.exe:流媒体服务器

ffprobe.exe:简单的多媒体码流分析器

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

libavcodec:包含音视频编码器和解码器

libavutil:包含多媒体应用常用的简化编程的工具,如随机数生成器、数据结构、数学函数等功能

libavformat:包含多种多媒体容器格式的封装、解封装工具

libavfilter:包含多媒体处理常用的滤镜功能

libavdevice:用于音视频数据采集和渲染等功能的设备相关

libswscale:用于图像缩放和色彩空间和像素格式转换功能

libswresample:用于音频重采样和格式转换等功能

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

下载&安装 (Windows版本)
下载编译好的Windows版本:http://ffmpeg.zeranoe.com/builds/

FFmpeg分为3个版本:Static、 Shared、 Dev
前两个版本可以直接在命令行中使用。包含了三个exe:ffmpeg.exe,ffplay.exe,ffprobe.exe
Static版本中的exe体积较大,那是因为相关的Dll都已经编译进exe里面去了。
Shared版本中exe的体积相对小很多,是因为它们运行的时候还需要到相关的dll中调用相应的功能
Dev版本用于开发,里面包含了库文件xxx.lib以及头文件xxx.h
将下载好的static版本,解压到C:\ffmpeg

添加环境变量(win10):右键 我的电脑 ——》属性——》高级系统设置——》环境变量,添加路径 C:\ffmpeg\bin

在命令行窗口输入ffmpeg -version 命令,证明安装成功

命令行的使用
ffmpeg.exe
用于转码的应用程序:

一个简单的转码命令 将input.avi转码成output.ts,并设置视频的码率为640kbps

ffmpeg -i input.avi -b:v 640k output.ts

https://www.octfgroup.com/

标签:exe,ffmpeg,介绍,音视频,编译,版本,简单,FFmpeg
From: https://www.cnblogs.com/sathcal/p/18536392

相关文章

  • PHP ffmpeg 视频合并
    随着互联网的发展和视频技术的不断完善,视频在我们的生活中扮演着越来越重要的角色。但是,当前视频处理和编辑的需求也在不断增加,这就需要我们使用到一些专业的工具来帮助我们完成这项工作。其中,ffmpeg是一个非常流行的视频处理工具,它支持多种视频编解码格式,可以对视频进行编辑、剪......
  • php 安装ffmpeg扩展
    在使用PHP的ffmpeg扩展之前,我们首先需要安装它。1.下载ffmpeg源码我们可以在https://www.ffmpeg.org/download.html这个网址上下载最新的ffmpeg源码。2.安装ffmpeg在安装之前,我们需要安装一些必要的依赖库和工具:sudoapt-getupdatesudoapt-getinstallautoconfautomakeb......
  • PHP ffmpeg 剪辑视频
    随着互联网的发展和视频技术的不断完善,视频在我们的生活中扮演着越来越重要的角色。但是,当前视频处理和编辑的需求也在不断增加,这就需要我们使用到一些专业的工具来帮助我们完成这项工作。其中,ffmpeg是一个非常流行的视频处理工具,它支持多种视频编解码格式,可以对视频进行编辑、剪......
  • RAID磁盘阵列技术详细介绍
    RAID是什么?RAID定义数据存储虚拟化技术提高数据可靠性......
  • PHP中的FFmpeg操作指南
    FFmpeg是一种基于命令行的音视频处理工具,可以用于转码、剪辑、裁剪、合并、加速、调节音量等多种功能,广泛应用于多媒体领域。在PHP中,我们也可以通过调用FFmpeg的命令行参数来实现音视频处理功能。本文将介绍如何在PHP中使用FFmpeg操作音视频。一、安装FFmpeg扩展在PHP中使用FFmp......
  • 音视频入门基础:FLV专题(24)——FFmpeg源码中,获取FLV文件视频信息的实现
    =================================================================音视频入门基础:FLV专题系列文章:音视频入门基础:FLV专题(1)——FLV官方文档下载音视频入门基础:FLV专题(2)——使用FFmpeg命令生成flv文件音视频入门基础:FLV专题(3)——FLVheader简介音视频入门基础:FLV专题(4)—......
  • 音视频入门基础:FLV专题(23)——FFmpeg源码中,获取FLV文件音频信息的实现(下)
    =================================================================音视频入门基础:FLV专题系列文章:音视频入门基础:FLV专题(1)——FLV官方文档下载音视频入门基础:FLV专题(2)——使用FFmpeg命令生成flv文件音视频入门基础:FLV专题(3)——FLVheader简介音视频入门基础:FLV专题(4)—......
  • 使用ffmpeg命令处理音视频
    FFmpeg可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec(用于多个项目中音频和视频的解码器库)和libavformat(音频与视频格式转换库)。(关于一些底层方面的东西,可以参考ffmpeg和H264视频的编解码) https://www.octfgroup.com/1,获得一个文件的音视频(编码方面的)信息:ge......
  • 安装ffmpeg和crontab执行ffmpeg
    一、centos安装ffmpeg1.下载解压wgethttp://www.ffmpeg.org/releases/ffmpeg-5.0.tar.gztar-zxvfffmpeg-5.0.tar.gz具体需要哪个版本可以进入http://www.ffmpeg.org/releases查看2.进入解压后目录,输入如下命令/usr/local/ffmpeg为自己指定的安装目录(安装目录自己指定)cdffmpe......
  • ffmpeg问题解决:Unrecognized option 'preset'. Error splitting the argument list: O
    来到这里,十有八九是手动编译安装的ffmpeg,在跑视频流程序或命令时出现这个问题。跟这个报错:ffmpeg:errorwhileloadingsharedlibraries:libx264.so.164:cannotopensharedobjectfile:Nosuchfileordirectory的错误本质是一样的,都是由于ffmpeg时使用到了libx264,而在......