龙空技术网

FFMPEG定制化编译指南

Linux技术宅 292

前言:

此时同学们对“ubuntu安装mercurial”可能比较注重,我们都想要学习一些“ubuntu安装mercurial”的相关文章。那么小编在网络上搜集了一些关于“ubuntu安装mercurial””的相关知识,希望咱们能喜欢,姐妹们快快来了解一下吧!

【网络通信 -- 直播】FFMPEG -- FFMPEG 定制化编译指南

Ubuntu 环境下编译定制化的 FFMPEG 静态库

【1】安装所需的工具

apt-get install autoconf automake bzip2apt-get install cmake gcc g++ git apt-get install libtool make mercurial

【2】编译安装 FFMPEG 编解码器插件库

2.1 编译安装 NASM

tar jxvf nasm-2.14.tar.bz2cd ./nasm-2.14/./autogen.sh./configure --prefix="$HOME/ffmpeg/lib" --bindir="$HOME/ffmpeg/lib/bin"makemake install 将bin目录加入path路径中打开~/.bashrc,在最后一行编辑export PATH=$PATH:$HOME/ffmpeg/lib/bin/
2.2 编译安装 YASM
tar xzvf yasm-1.3.0.tar.gzcd ./yasm-1.3.0/./configure --prefix="$HOME/ffmpeg/lib" --bindir="$HOME/ffmpeg/lib/bin"makemake install
2.3 编译安装 X264
unzip x264-stable.zipcd ./x264-stable/PKG_CONFIG_PATH="$HOME/ffmpeg/lib/pkgconfig"./configure --prefix="$HOME/ffmpeg/lib" --bindir="$HOME/ffmpeg/lib/bin" --enable-static makemake install
2.4 编译安装 libfdk_aac
tar -zxvf fdk-aac-2.0.2.tar.gzcd ./fdk-aac-2.0.2/autoreconf -fiv./configure --prefix="$HOME/ffmpeg/lib" --disable-sharedmakemake install
2.5 编译安装 libopus
curl -O -L  xzvf opus-1.3.1.tar.gzcd ./opus-1.3.1/./configure --prefix="$HOME/ffmpeg/lib" --disable-sharedmakemake install

【3】编译安装 FFMPEG

tar -zxvf FFmpeg-n4.2.3.tar.gzcd ./FFmpeg-n4.2.3/// 运行编译脚本./build.static.sh

文章福利:收藏整理的ffmpeg资料包可以私【1】进群领取~

另外分享一个免费的音视频流媒体课程,水平很高,可以免费学习,往期的课程回放都可以点击上方领取方式获取:【免费】FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发-学习视频教程-腾讯课堂

#!/bin/bash PATH="$HOME/ffmpeg/lib/bin:$PATH"PKG_CONFIG_PATH="$HOME/ffmpeg/lib/lib/pkgconfig"./configure \  --prefix="$HOME/ffmpeg/lib" \  --pkg-config-flags="--static" \  --extra-cflags="-I$HOME/ffmpeg/lib/include" \  --extra-ldflags="-L$HOME/ffmpeg/lib/lib" \  --extra-libs=-lpthread \  --extra-libs=-lm \  --bindir="$HOME/ffmpeg/lib/bin" \  --enable-gpl \  --enable-libfdk_aac \  --enable-libopus \  --enable-libx264 \  --enable-nonfree  makemake install
Windows 环境下编译定制化的 FFMPEG 静态库【1】安装配置 MSYS2

1.1 MSYS2 下载与配置

MSYS2 下载地址,MSYS2

MSYS2 安装完成之后,将安装目录下的 msys2_shell.cmd 中的 rem set MSYS2_PATH_TYPE=inherit 改成 set MSYS2_PATH_TYPE=inherit,从而将 VS 的环境继承给 MSYS2

1.2 MSYS2 的 pacman 源配置

pacman 源配置文件路径如下图示

编辑切换为居中

添加图片注释,不超过 140 字(可选)

/etc/pacman.d/mirrorlist.mingw32 文件开头添加Server =  =  /etc/pacman.d/mirrorlist.mingw64 文件开头添加Server =  =  /etc/pacman.d/mirrorlist.msys 文件开头添加Server =  = 
1.3 MSYS2 启动方式与基本配置
基于 MSYS2 启动 mingw64进入 MSYS2 安装目录执行,msys2_shell.cmd -mingw64 MSYS2 窗口支持中文窗⼝右键->Options->Text,然后locale选择:zh_CN,Character set 选择 UTF-8

【2】配置 MSYS2 编译环境

2.1 安装编译环境工具

刷新软件包数据pacman -Sy 安装基于 MinGW-W64 的工具链pacman -S mingw-w64-x86_64-toolchain 安装 gitpacman -S git 安装 make 等工具pacman -S makepacman -S automakepacman -S autoconfpacman -S perlpacman -S libtoolpacman -S mingw-w64-i686-cmakepacman -S pkg-config说明 : 如果需要编译出ffplayer的话,还需要安装SDLpacman -S mingw-w64-x86_64-SDL2 安装 yasmpacman -S yasm 安装 nasmpacman -S nasm

重命名 link重命名 msys64/usr/bin/link.exe 为 msys64/usr/bin/link.bak,避免和 MSVC 的 link.exe 抵触
2.2 检查编译环境工具
which cl link yasm cpp

若出现图示信息的解决方案

编辑切换为居中

添加图片注释,不超过 140 字(可选)

需要将 MSVC 的环境配置到环境变量 Path 中

新建系统环境变量 MSVCD:\Program Files (x86)\Microsoft Visual Studio\2019\Professional    \VC\Tools\MSVC\14.29.30133 配置到 Path 变量中Path%MSVC%\bin\HostX64\x64

成功则如下图所示

编辑切换为居中

添加图片注释,不超过 140 字(可选)

【3】编译安装 FFMPEG 编解码器插件库

3.1 编译安装 X264

获取 X264 源码github : git clone  : git clone  编译 X264 源码./configure --prefix=/home/Admin/ffmpeg/build --host=x86_64-w64-mingw32 --enable-shared --enable-static --extra-ldflags=-Wl,--output-def=libx264.defmakemake install 生成 libx264.libcp ./libx264.def /home/Admin/ffmpeg/build/lib/cd /home/Admin/ffmpeg/build/lib#若要生成 64 位 lib 文件则输入如下命令lib /machine:X64 /def:libx264.def#若要生成 32 位 lib 文件则输入如下命令lib /machine:i386 /def:libx264.def 生成 libx264.dll将 /home/Admin/ffmpeg/build/bin/libx264-161.dll (具体名字和 x264 版本有关) 复制为 libx264.dll
3.2 编译安装 libfdk_aac
获取 libfdk_aac 源码git clone --depth 1  编译 fdk-aac./autogen.sh./configure --prefix=/home/Admin/ffmpeg/build --enablestatic --enable-sharedmakemake install
3.2 编译安装 libopus
获取 libopus 源码curl -O -L  xzvf opus-1.3.1.tar.gz 编译 libopuscd ./opus-1.3.1/LDFLAGS="-lssp" ./configure --prefix=/home/Admin/ffmpeg/build --enable-static --enable-sharedmakemake install

说明,在 configure 时需要加上 LDFLAGS="-lssp" 否则会出现图示错误

编辑切换为居中

添加图片注释,不超过 140 字(可选)

【4】编译安装 FFMPEG

获取 FFMPEG 源码github : git clone git://source.ffmpeg.org/ffmpeg.gitgitee : git clone  ffmpeg# 查看版本git branch -a# 选择 4.2.3 版本git checkout remotes/origin/release/4.2

#!/bin/bash PATH="$HOME/ffmpeg/build/bin:$PATH"PKG_CONFIG_PATH="$HOME/ffmpeg/build/lib/pkgconfig"./configure \  --prefix="$HOME/ffmpeg/build" \  --pkg-config-flags="--static" \  --arch=x86_64 \  --extra-cflags="-I$HOME/ffmpeg/build/include" \  --extra-ldflags="-L$HOME/ffmpeg/build/lib" \  --extra-libs=-lpthread \  --extra-libs=-lm \  --bindir="$HOME/ffmpeg/build/bin" \  --enable-gpl \  --enable-libfdk_aac \  --enable-libopus \  --enable-libx264 \  --enable-nonfree

标签: #ubuntu安装mercurial #ubuntu安装mingw