FFmpeg零基础学习(一)——初步介绍与环境搭建

目录

前言

FFmpeg是一个开源的跨平台多媒体处理框架,它包含了一组用于处理音频、视频、字幕等多媒体数据的库和工具。FFmpeg提供了强大的功能和灵活性,被广泛用于多媒体应用开发、视频编辑、流媒体传输以及音视频格式转换等领域。

以下是FFmpeg的一些主要特点和功能:

支持广泛的音视频格式:FFmpeg支持解码和编码大量的音视频格式,包括常见的如MP3、AAC、H.264、MPEG等,以及一些较为罕见的格式。

1、高性能和低延迟:FFmpeg经过高度优化,具有出色的性能和低延迟,能够高效地处理多媒体数据。

2、多媒体处理和编辑:FFmpeg提供了丰富的功能和工具,可以进行多媒体数据的剪切、合并、分离、转码、滤镜处理等操作,使开发者可以实现各种复杂的音视频处理需求。

3、流媒体传输:FFmpeg支持实时的音视频流媒体传输,可以将音视频数据推送到流媒体服务器,或者从流媒体服务器接收音视频数据。

4、跨平台支持:FFmpeg可在多个操作系统上运行,包括Windows、Linux、macOS等,使其具有广泛的应用和移植性。

5、命令行工具和API接口:FFmpeg提供了一组命令行工具,可以直接使用命令行进行音视频处理和转换。同时,它还提供了丰富的API接口,供开发者在自己的应用程序中集成和调用。

因此很有学习的必要,本系列文章,会在Qt的基础上,以最新的FFmpeg 的版本,不断的增添播放器的功能。

正文

一、开发环境

win11

Qt 5.15.2 MSVC2019_64bit

二、搭建环境

参考这篇文章:ffmpeg(一) ffmpeg+QT开发环境搭建

这篇文章写了ffmpeg的下载以及基于Qt环境打搭建。

可以稍微参考一下。

FFmpeg 下载地址:FFmpeg下载地址

可以稍微注意一下下载的版本要下载哪一个。

二、测试代码

c 复制代码
#include "mainwindow.h"
#include <QApplication>
#include <QDebug>   // 利用打印函数
 
// ffmpeg 是纯 C 语言的代码,在 C++ 当中不能直接进行 include
extern "C" {
#include <libavcodec/avcodec.h>
}
 
int main(int argc, char *argv[])
{
    qDebug() << "yeahhh"<< av_version_info();
 
    QApplication a(argc, argv);
    MainWindow w;
 
    w.show();
 
    return a.exec();
}

参考

1、ffmpeg(一) ffmpeg+QT开发环境搭建

相关推荐
zslefour2 小时前
使用ffmpeg遍历获取音频文件相关信息
ffmpeg
Android系统攻城狮5 小时前
Linux FFmpeg深度解析之avcodec_parameters_from_context调用流程与实战(十六)
linux·运维·ffmpeg·音视频进阶·ffmpeg音视频·车载音视频进阶
Android系统攻城狮6 小时前
Linux FFmpeg深度解析之avcodec_alloc_context3调用流程与实战(十四)
linux·运维·ffmpeg·车载音视频·音视频进阶·ffmpeg音视频进阶
菜鸟小芯7 小时前
【Quectel Pi M2 实战】Day3 USB 摄像头图像采集:拍照、录像与踩坑记录(V4L2 + FFmpeg)
ffmpeg·嵌入式
Android系统攻城狮1 天前
Linux FFmpeg深度解析之av_dump_format调用流程与实战(十一)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Android系统攻城狮1 天前
Linux FFmpeg深度解析之avcodec_find_decoder调用流程与实战(十二)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Hommy881 天前
【直播切片工作台】第23章:媒体探测与转码:ffprobe 与 ffmpeg 封装
人工智能·ffmpeg·直播切片
码匠许师傅1 天前
【C++三方组件】FFmpeg:音视频处理的瑞士军刀
c++·ffmpeg·音视频
全栈探索者2 天前
从素材到成片:ffmpeg 拼接、转码与字幕,一条流水线交付
macos·ffmpeg·aigc·comfyui·视频剪辑
扶尔魔ocy2 天前
【QT+FFmpeg】知识点编目及传送门
qt·ffmpeg