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 处理用户上传的音视频,生成适配不同终端的文件。
相关推荐
程序员老陆18 小时前
FFmpeg6操作 RTMP参数详解
ffmpeg·音视频·rtmp
戒了,最后一次20 小时前
Windows 安装 FFmpeg 完整教程(附环境变量配置 + 常用命令示例)
windows·ffmpeg
≮傷£≯√1 天前
FFmpeg + qt 音频播放
qt·ffmpeg·音视频
程序员老陆2 天前
Qt的QThread::usleep和FFmpeg的libavutil模块的av_usleep哪个精度高一些?
开发语言·qt·ffmpeg·音视频
程序员老陆2 天前
如何使用FFmpeg6的API进行HLS开发呢?
ffmpeg·音视频·hls
程序员老陆3 天前
说一说FFmpeg6在Linux平台的编译
linux·运维·服务器·ffmpeg
用户518186005663 天前
FFmpeg 剪辑:为什么 `-c copy` 往往做不到帧准确剪切
ffmpeg
福大大架构师每日一题3 天前
mediamtx v1.19.3正式发布:认证安全、WebRTC跨域、MoQ稳定性、RTSP与HLS全面升级
安全·ffmpeg·webrtc
cpp_learner4 天前
FFmpeg 解复用全流程解析
ffmpeg
程序员老陆4 天前
FFmpeg时间基相关函数大杂烩
ffmpeg·时间基·timebase