音视频开发-Mac开发环境搭建

Mac环境

本文Mac硬件环境为M1 Pro,系统为MacOS Ventura 13.6,硬件和系统不同,实际情况会有差异,以你实际为准。

1 ffmpeg

1.1 安装

Mac环境,直接使用HomeBrew来安装FFmpeg。如果还没有按照HomeBrew,可以参考《Mac 安装homebrew》

SH 复制代码
brew install ffmpeg

安装完毕后,如果能在终端中成功查看FFmpeg的版本号,说明已经安装成功。

SH 复制代码
ffmpeg -version

1.2 目录结构

通过brew install安装的软件会存放在/opt/homebrew/Cellar目录中,通过如下命令可以打开FFmpeg的安装目录。

SH 复制代码
cd /opt/homebrew/Cellar/ffmpeg

open .

通过command + shift + G输入/opt/homebrew/Cellar/ffmpeg也可以查看FFmpeg的安装目录。

  • bin: 有编译好的可执行程序:如ffmpegffplay等,可以直接在终端使用,比如:
    • ffplay xx.mp4:直接播放某个视频。
    • ffmpeg -version:查看FFmpeg的版本号。
  • include:开发时需要包含的头文件。
  • lib:链接时需要用到的库文件。

2 Qt

2.1 安装

通过brew install安装Qt,最终被安装在/opt/homebrew/Cellar/qt目录中。

SH 复制代码
brew install qt

通过brew install --cask安装Qt Creator,最终被安装在/opt/homebrew/Caskroom/qt-creator目录中。

SH 复制代码
brew install --cask qt-creator

2.2 配置

通过brew安装的QtQt Creator是分开的,需要在Qt Creator的首选项中设置一下Qt的路径。

Qt的路径在/opt/homebrew/Cellar中,opt默认是隐藏的。

  • 可以使用快捷键command + shift + .来显示、隐藏文件和文件夹。
  • 可以使用快捷键command + shift + G手动输入Qt的文件夹:/opt/homebrew/Cellar/qt,然后回车键前往。

选择Qt对应版本目录下bin目录下的qmake

设置64bit为构建套件的默认开发环境。

滚动到底下,选择刚才设置的Qt版本。

3 开发

3.1 新建项目

新建项目选择Qt Widgets Application

设置默认路径和项目名。

构建系统选择qmake

DetailsTranslation和构建套件(选择之前设置的64bit)不用更改,直接点击继续。

是否作为子项目和版本控制系统根据自身需求设置。

新建完项目后,运行的效果。

3.2 集成FFmpegQt项目中

修改项目名.pro文件,在末尾设置头文件路径和库文件路径。

C++ 复制代码
# 设置头文件路径
INCLUDEPATH += /opt/homebrew/Cellar/ffmpeg/6.0_2/include

# 设置库文件路径
LIBS += -L/opt/homebrew/Cellar/ffmpeg/6.0_2/lib \
        -lavcodec \
        -lavdevice \
        -lavfilter \
        -lavformat \
        -lavutil \
        -lpostproc \
        -lswscale \
        -lswresample \
        -lavresample

打印FFmpeg版本号,测试集成效果。

C++ 复制代码
#include "mainwindow.h"

#include <QApplication>

#include <QDebug>

extern "C" {
#include <libavcodec/avcodec.h>
}

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

    // 打印版本号
    qDebug() << av_version_info();

    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();
}
相关推荐
程序员老陆11 分钟前
FFmpeg libswresample 模块的关键函数swr_convert 到底在干嘛?
ffmpeg·音视频·格式转换·音频重采样
2601_965798471 小时前
Launch Your Wellness App Fast: The Truth About Meditation Source Code
前端·macos·ios·objective-c·cocoa
初级代码游戏14 小时前
iOS开发 Swift 速记7:结构体和类
开发语言·ios·swift
Anhty20 小时前
手机端叮咚变声器2026实测:功能表现、优缺点完整解析
功能测试·ios·智能手机·安卓
SameX1 天前
后台定位耗电的问题,我花两年把它压到了3%-5%
ios
≮傷£≯√1 天前
QT配置FFmpeg
开发语言·qt·ffmpeg
大辉狼_音频架构1 天前
第 02 篇:时域的语言 —— 卷积、LTI 系统与冲激响应
算法·音视频开发
大辉狼_音频架构1 天前
第 01 篇:音频采样与量化 —— 从 I2S 帧到奈奎斯特定理
嵌入式·音视频开发
Everbrilliant891 天前
Android FFmpeg 实战:从基础到播放器的完整技术解析
android·ffmpeg·ffmepg实战·音视频同步实现·ffmpegpractices·ffmpegpractice·opengl 视频渲染
星辰即远方2 天前
计算器仿写总结
学习·ui·ios·cocoa·xcode