前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【FFmpeg】在 Mac OS 中编译 FFmpeg 源码 ① ( homebrew 安装 | 通过 gitee 源安装 homebrew | 安装 FFmpeg 编译所需的软件包 )

【FFmpeg】在 Mac OS 中编译 FFmpeg 源码 ① ( homebrew 安装 | 通过 gitee 源安装 homebrew | 安装 FFmpeg 编译所需的软件包 )

作者头像
韩曙亮
发布2024-04-09 08:54:03
1120
发布2024-04-09 08:54:03
举报

一、homebrew 安装

1、homebrew 简介

在 Mac 系统中 homebrew 是一款 软件包管理工具 , 可以 轻松的 安装 / 卸载 / 更新 / 查看 / 搜索 软件包 , 可以简单方便地对软件包进行管理 , 无需用户 处理 复杂的依赖关系 问题 ;

homebrew 是 基于 Git 的仓库 的 , 用户 跟踪 和 获取最新版本的软件包 ;

homebrew 的 默认安装位置是 /usr/local/Cellar 目录 , 通过 homebrew 安装的所有软件包 都会被安装在其自己的子目录中 , 并自动在 /usr/local 目录中 创建对应的 软连接 , homebrew 不会将⽂件安装到它本身⽬录之外 ;

homebrew 只能通过 命令行终端 使用 , 没有图形化操作界面 ;

homebrew 是 Mac OS 中 开发必备的 软件包管理工具 , 其 简化了 Mac 中的软件管理流程 , 提升了 Mac OS 系统的 工作效率 和 软件使用体验 ;

除了 Mac OS 平台之外 , Linux 系统中也可以使用 homebrew , 不过在 Linux 上该软件包管理工具不是主流 ;

Linux 中的软件包管理工具 :

  • CentOS 中使用 yum ,
  • RedHat 中使用 rpm ,
  • Debian 中使用 dpkg ,
  • Ubuntu 中使用 apt ;

2、通过 gitee 源安装 homebrew

按照下面的流程 安装 homebrew 可以成功安装 , 期间不会报错 , 安装过程自动运行 , 安装完成后 , 自动配置国内的 中科大 软件包源 ;

安装 homebrew 的目的是 为了 安装 编译 FFmpeg 源码的 21 个前置软件包 , 下个章节会介绍需要提前安装的 软件包 及其作用 , 如果不提前安装这些软件包 , 编译 FFmpeg 源码时就会报错 ;

执行

代码语言:javascript
复制
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

命令 , 使用国内的 gitee 源 , 可以自动安装软件 ;

上述命令执行后 , 命令行输出如下 :

这里输入 1 按回车 , 通过 清华大学下载 brew ,

提示输入密码 , 这里输入 Mac 系统的密码 即可 ;

这里选择是否要删除本机的 Brew , 我的 Mac 上没有安装 homebrew , 直接选择 Y 回车即可 ;

这里按下 回车键 , 正式开始下载安装 homebrew ;

homebrew 安装完成后 , 会提示让你选择 之后使用 homebrew 安装软件包时 , 使用哪个源 , 这里选择 " 1 中科大国内源 " , 这是推荐选择 ;

在命令行中 , 输入 1 , 然后按回车 配置 中科大源 ;

配置完成后 , 会自动下载 中科大源 的相关配置 , homebrew 正式安装完成 ;

二、安装 FFmpeg 编译所需的软件包

1、编译 FFmpeg 源码需要安装的软件包

编译 FFmpeg 源码 , 需要安装如下软件包 , 否则在编译过程中会报各种错误 ;

  • automake git libtool fdk-aac lame libpng libass libvorbis libvpx opus sdl shtool texi2html theora wget x264 x265 xvid nasm pkg-config yasm freetype openssl
  • automake : 将 Makefile.am文件 转为 Makefile.in 文件的工具 ;
  • git : 分布式版本控制工具 ;
  • libtool : 用于 创建 / 修改 / 管理 动态链接库 , 可以自动化库的 编译 和 安装过程 , 并处理库的依赖关系 ;
  • fdk-aac : AAC音频编解码器 ;
  • lame : MP3 编码器 , 将 PCM 音频数据 转码为 MP3 格式 ;
  • libpng : 处理 PNG 图像文件的开源库,可 读取和写入 PNG 图像 ;
  • libass : 字幕渲染库 , 支持多种字幕格式 , 用于在视频播放软件中 显示字幕 ;
  • libvorbis : 开源的音频压缩格式及其相关的解码库 , 一般用于 ogg 格式的编解码 ;
  • libvpx: 开源的视频编码库 , 用于 VP8 / VP9 视频编码 ;
  • opus : 开源的音频编码格式及其相关的编解码库 , 用于 交互式语音和音乐传输 , 有利于在网上传输 ;
  • sdl : Simple DirectMedia Layer , 跨平台 图形和音频处理库 , 常用于游戏和多媒体应用的开发 ;
  • shtool : 处理 shell 脚本的工具 , 如 : 文件操作 , 文本处理 等操作 ;
  • texi2html : 将 TeXinfo 文档转换为 HTML 网页 的 工具 ;
  • theora : 开源的无损视频压缩格式 , 与 Vorbis 音频 和 Ogg 容器 使用 ;
  • wget : 网络下载工具 ;
  • x264 / x265 : H.264 / H.265 视频编解码库 ;
  • xvid : 开源的视频编码库 , 支持 MPEG-4 ASP(Advanced Simple Profile)编码 ;
  • nasm / yasm : 汇编器 , 将 汇编代码 转换为 机器码 ;
  • pkg-config : 用于在 编译时 查询 已安装软件包 的 版本信息 和 编译标志的工具 ;
  • freetype : 开源的字体渲染库 ;
  • openssl : 加密库 , 提供了 SSL 和 TLS 协议的实现 ;

2、使用 homebrew 安装软件包命令

使用

代码语言:javascript
复制
brew install automake git libtool fdk-aac lame libpng libass libvorbis libvpx opus sdl shtool texi2html theora wget x264 x265 xvid nasm pkg-config yasm freetype openssl

一条命令 , 可以 一键安装 , 但是在安装过程中可能会出现错误 , 如果出错不好排查是哪个软件包安装出错 , 这里建议进行分批安装 , 依次执行如下命令即可 :

代码语言:javascript
复制
brew install automake git libtool
brew install fdk-aac lame libpng libass libvorbis
brew install libvpx opus sdl shtool texi2html theora wget x264 x265 xvid nasm
brew install pkg-config
brew install yasm
brew install freetype
brew install openssl

依次执行上述安装命令 , 目前没有遇到错误 ;

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、homebrew 安装
    • 1、homebrew 简介
      • 2、通过 gitee 源安装 homebrew
      • 二、安装 FFmpeg 编译所需的软件包
        • 1、编译 FFmpeg 源码需要安装的软件包
          • 2、使用 homebrew 安装软件包命令
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档