【Qt 学习之路】Qt在Mac上使用FFmpeg

本文介绍了如何在Mac上通过命令行安装ffmpeg,包括头文件和库的配置,以及如何在源文件中使用它进行音视频操作,如录制、播放、转换和查看信息。内容涵盖了FFmpeg的基本命令和实际应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、安装

1.1、命令安装

brew install ffmpeg

如果没brew的,请看这篇文章:Mac系统命令使用记录

此过程较久,需要装很多包:
在这里插入图片描述

1.2、安装好后

在这里插入图片描述

1.3、查找头文件和库的位置

利用pkg-config查找文件位置。
如果没有这个命令,继续参考:Mac系统命令使用记录

pkg-config --cflags libavutil  #查找相应头文件
pkg-config --libs libavutil    #查找相应库文件

我的电脑的效果:
在这里插入图片描述

2、pro文件夹加入

2.1、添加ffmpeg头文件和库

mac上这么加

macx {
    message("- macx -")
    # ffmpeg
    INCLUDEPATH += -I /usr/local/Cellar/ffmpeg/4.3.1_9/include
    LIBS += -L /usr/local/Cellar/ffmpeg/4.3.1_9/lib  -lavutil -lavcodec -lavfilter -lavformat -lswscale
}

2.2、修改输出路径

# 输出主程序路径
CONFIG(debug, debug|release){
    DESTDIR =$$PWD/bin_debug
} else {
    DESTDIR =$$PWD/bin_release
}

3、源文件中写入ffmpeg要做的事

这里我简单的让他打印一下 log

#include <QApplication>
//由于ffmpeg是c开发的,所以需要加上extern "C" 关键字
extern "C"{
#include "libavutil/log.h"
};

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    av_log_set_level(AV_LOG_DEBUG);  //设置日志级别
    av_log(nullptr, AV_LOG_DEBUG, "hello_ffmpeg"); //打印日志

    return a.exec();
}

4、效果图

在这里插入图片描述

5、应用程序包

在这里插入图片描述

6、FFMPEG基本的一些命令

6.1、查看当前可用媒体设备

ffmpeg -f avfoundation -list_devices true -i ""

在这里插入图片描述

6.2、同时录制音视频

ffmpeg -f avfoundation -r 30 -i 0:0 out.mp4

-r 30是30帧的意思,0:0是 视频索引 :音频索引, out.mp4是指输出的文件,录制好后,按q退出

效果:
在这里插入图片描述
在这里插入图片描述

6.3、播放视频

视频一般是用h264,音频用的是acc。
在这里插入图片描述

注意哦,用这种形式生成的mp4。如果默认播放器QuickTime Player无法播放,可以下载vlc player或者用ff自带的ffplayer。

ffplay out.mp4

效果:
在这里插入图片描述

在这里插入图片描述

6.4、生成指定格式的视频

mac上生成60帧,1920x1080分辨率,yuv420p的视频

ffmpeg -f avfoundation -r 60 -video_size 1920x1080 -i 0:0 -pix_fmt yuv420p -y out.mov

6.5、查看视频信息

ffmpeg -i out.mov

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沙振宇

你的鼓励将是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值