FFmpeg 工具基础

FFmpeg 是一套跨平台的音视频处理开源工具库,可实现音视频的编解码、转码、剪辑、流媒体传输等功能,是前端、后端音视频开发的核心工具之一。

ffmpeg是一种通用媒体转换器。它可以读取各种输入------包括实时抓取/录制设备------过滤并转码它们生成多种输出格式。

ffmpeg is a universal media converter. It can read a wide variety of inputs - including live grabbing/recording devices - filter, and transcode them into a plethora of output formats.

核心特点

  1. 功能全面
    • 支持几乎所有主流音视频格式(MP4、FLV、MKV、MP3、AAC 等)的编解码。
    • 可完成转码、裁剪、合并、加水印、提取音频 / 视频流等操作。
    • 支持流媒体推流 / 拉流(如 RTMP、HLS、HTTP-FLV 协议)。
  2. 跨平台性可运行在 Windows、Linux、macOS 等系统,也支持嵌入式设备。
  3. 高性能底层由 C 语言编写,执行效率高,支持硬件加速(如 NVIDIA CUDA、Intel QSV)。

常用命令示例

1.音视频转码将 WMV 格式的视频转换为 MP4 格式:

复制代码
ffmpeg -i input.wmv output.mp4
  1. 提取音频 从视频中提取 MP3 音频:

    复制代码
    ffmpeg -i input.mp4 -vn -acodec mp3 output.mp3
  2. 视频裁剪 截取视频 00:01:00 到 00:02:00 的片段:

    复制代码
    ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 -c copy output.mp4
  1. 视频裁剪 截取视频 00:01:00 到 00:02:00 的片段:

    复制代码
    ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 -c copy output.mp4

前端开发中的应用

  • 结合 ffmpeg.wasm 可在浏览器端直接处理音视频(无需后端),比如实现视频压缩、格式转换等功能。
  • 后端可通过 FFmpeg 处理用户上传的音视频,生成适配不同终端的文件。
相关推荐
Android系统攻城狮1 天前
Linux FFmpeg深度解析之avcodec_flush_buffers调用流程与实战(十九)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频进阶
重生之我是萧炎1 天前
ffmpeg官方下载安装教程(提供安装包)
ffmpeg
zslefour2 天前
使用ffmpeg遍历获取音频文件相关信息
ffmpeg
Android系统攻城狮2 天前
Linux FFmpeg深度解析之avcodec_parameters_from_context调用流程与实战(十六)
linux·运维·ffmpeg·音视频进阶·ffmpeg音视频·车载音视频进阶
Android系统攻城狮2 天前
Linux FFmpeg深度解析之avcodec_alloc_context3调用流程与实战(十四)
linux·运维·ffmpeg·车载音视频·音视频进阶·ffmpeg音视频进阶
菜鸟小芯2 天前
【Quectel Pi M2 实战】Day3 USB 摄像头图像采集:拍照、录像与踩坑记录(V4L2 + FFmpeg)
ffmpeg·嵌入式
Android系统攻城狮3 天前
Linux FFmpeg深度解析之av_dump_format调用流程与实战(十一)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Android系统攻城狮3 天前
Linux FFmpeg深度解析之avcodec_find_decoder调用流程与实战(十二)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Hommy883 天前
【直播切片工作台】第23章:媒体探测与转码:ffprobe 与 ffmpeg 封装
人工智能·ffmpeg·直播切片
码匠许师傅3 天前
【C++三方组件】FFmpeg:音视频处理的瑞士军刀
c++·ffmpeg·音视频