aach64架构 ubuntu20 桌面版 编译安装ffmpeg难点总结
[编译安装x264]
这一步基本上没有难点
git clone https://gitee.com/mirrors/x264.git
./configure --enable-shared --enable-static
make
sudo make install
[编译安装x265]
下载:git clone https://gitee.com/brian_sys/x265.git
编译x265需要使用cmake.
之前使用sudo apt-get install cmake,结果因为版本太新,总使报错,于是先安装了一下低版本的cmake.
卸载旧版本:sudo apt-get remove cmake
下载老版本:wget "https://github.com/Kitware/CMake/releases/download/v3.5.1/cmake-3.5.1.tar.gz"
编译安装cmake过程:
解压:tar -xvf cmake-3.5.1.tar.gz
cd cmake-3.5.1
./configure
make
sudo make install
安装ccmake:
担心兼容问题,使用了aptitude安装(貌似并无太大差别)
sudo apt-get install aptitude
sudo aptitude install cmake-curses-gui
安装nasm:
x265配置中好像有汇编这一项,本着全面的角度,安装了nasm
wget "https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.gz"
解压: tar -xvf nasm-2.15.05.tar.gz
cd nasm-2.15.05
./configure
make
sudo make install
安装x265:
cd x265/bulid/aarch64-linux/
./make-Makefiles.bash*
在菜单中选择c -> e -> g
make
sudo make install
(后记:
由于工作需要,我更换了一个低gcc版本,再次编译时,发现在aarch64-linux中会报错,在linux文件夹下编译就可以了
更新gcc版本时,我添加的更新服务器是/etc/apt/sources.list中原服务器地址,将ubuntu版本改为xenial:
即添加:
deb http://ports.ubuntu.com/ubuntu-ports/ xenial main
deb http://ports.ubuntu.com/ubuntu-ports/ xenial universe
)
[修改路径]
备份ld.so.conf
sudo cp /etc/ld.so.conf /etc/ld.so.conf-bak
sudo vi /etc/ld.so.conf
在下一行添加 /usr/local/lib/
保存后执行 sudo ldconfig
[编译安装SDL2]
wget "http://www.libsdl.org/release/SDL2-2.0.12.tar.gz"
安装库文件,否则编译出来的ffplay提示sdl初始化失败
sudo apt-get install libx11-dev
sudo apt-get install xorg-dev
解压:tar -xvf SDL2-2.0.12.tar.gz
cd SLD2-2.0.12
./configure
make
sudo make install
验证
#include <iostream>
#include <SDL2/SDL.h> int main()
{
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Quit();
printf("Runing Successful!\n");
return 0;
}
g++ filename.cpp -o filename -lSDL2
执行生成的可执行文件,出现"Running Successful!"表示安装SDL2库成功。
[编译安装ffmpeg]
下载:git clone https://gitee.com/brian_sys/FFmpeg.git
安装:
./configure --enable-shared --enable-libx264 --enable-gpl --enable-libx265
make
sudo make install
[运行]
在ubuntu桌面上 ctrl+alt+t 调出终端,
ffmpeg -i 视频文件路径, 回车,有反应
ffprobe 视频文件路径,有反应
ffplay 视频文件路径,可以播放,
安装成功。
[参考]
https://blog.csdn.net/sean_xyz/article/details/25190291
https://www.cnblogs.com/brian-sun/p/13936624.html
https://www.cnblogs.com/brian-sun/p/14032470.html
aach64架构 ubuntu20 桌面版 编译安装ffmpeg难点总结的更多相关文章
- Ubuntu16桌面版编译和安装OpenCV4
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Ubuntu 11.10下GRUB 2 1.99版编译安装笔记
Ubuntu 11.10下GRUB 2 1.99版编译安装笔记 以下的安装笔记,都是QLi自己学习grub2 时,所整理的,还是新手,有错误的话,请大家帮忙就别提出来了. 最新版grub V1.99官 ...
- [CentOS_7.4]Linux编译安装ffmpeg
[CentOS_7.4]Linux编译安装ffmpeg 安装过程: 下载安装源,配置,编译,安装,设置环境变量. # wget http://www.ffmpeg.org/releases/ffm ...
- Windows下编译安装 FFmpeg
在Linux/Mac下编译 ffmpeg是非常方便的.但要在 Windows下编译 ffmpeg还真要花点时间.以下就是在 Windowns下编译ffmpeg的步骤: 一.安装Cygwin 在wind ...
- Linux---centos编译安装ffmpeg
环境 系统环境:CentOS release 6.7 (Final) 需求 编译安装ffmpeg 获取依赖 安装依赖包 yum install -y autoconf automake cmake f ...
- CentOS-6.4 编译安装ffmpeg加x264以及rtmp
CentOS 6.4-64位下编译ffmpeg几个简单步骤: 1.编译前环境准备: 2.下载源码: 3.编译,安装: ----------------------------------------- ...
- 阿里云服务器---centos编译安装ffmpeg
环境 系统环境:CentOS release 6.7 (Final) 需求 编译安装ffmpeg 获取依赖 安装依赖包 yum install -y autoconf automake cmake f ...
- 在 Mac OS X 环境中从源代码编译安装 FFmpeg
最近因为一个项目要求,需要开发实时视频编解码功能,准备采用 FFmpeg 以 x264 方式进行实时的视频编解码.Windows 以及 Linux 环境下的 FFmpeg 动态库.头文件等资源都非常容 ...
- 编译安装FFmpeg 要支持xvid、x264、mp3、ogg、amr、faac
编译安装FFmpeg 要支持xvid.x264.mp3.ogg.amr.faac libfaac faac格式的编解码包libmp3lame mp3格式编解码包libopencore-am ...
- Ubuntu16桌面版编译OpenCV4的java库和so库
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
随机推荐
- Critical Expression
什么是Critical Expression 所谓Critical Expression就是一个表达式依赖的值,必须出现在这个表达式前面.比如: times (label-$) db 0 ;times ...
- SpringBoot-mybatis-plus 分页
前言: 想必数据分页对于每一个程序员并不陌生,针对分页查询功能代码实现上:肯定是代码简洁明了且能达到分页的效果会更好! 现在我将基于SpringBoot - mybatisPlus分页查询的方法总结如 ...
- selenium Webdriver版本和浏览器版本不匹配问题:ChromeDriver only supports Chrome version 119 Current browser version is 124.0.6367.202
问题描述 代码如下: from selenium import webdriver from selenium.webdriver.common.by import By def test01(): ...
- Unity HDRP BentNormal的理解
1.通过网上冲浪了解到,BentNormal可以解决间接环境高光漏光及间接漫反射光照漏光的问题. 这里的漏光是指间接光照部分没有考虑到模型自身的遮挡关系导致的漏光. 2.可以通过SD之类的软件烘焙Be ...
- C++:查漏补缺笔记
文章目录 数组 一维数组 初始化数组 数组名 二维数组 函数 函数声明 函数的分文件 函数重载 指针 空指针 野指针 const 结构体指针 指针++ 指针与函数 地址传递 C++引用 面向对象易错点 ...
- C语言:生成单词列表----使用单链表实现
解决之前用结构体数组导致内存过剩问题,使用动态分配内存优化单词列表. txt文本内容不允许出现其他字符形式,这个仅限于判断在txt网页文件已经删除了超链接等,文本里面只允许出现单词才能进行判断和进行单 ...
- IPv6 — 综合组网技术
目录 文章目录 目录 前文列表 IPv4v6 综合组网技术(转换机制) 双栈策略 隧道策略 前文列表 <IPv6 - 网际协议第 6 版> <IPv6 - 地址格式与寻址模式> ...
- 搭建一套完整的ELK系统
ELK日志收集系统介绍 一 简单介绍 ELK部署搭建有很多成型的方案,这里推荐一种比较中规中矩的方案,它整合了logstash比较消耗资源以及当服务端临时宕机的时候出现数据丢失的问题,主要由fi ...
- 【C#】安装服务相关
判断C#写的服务版本:一般就是v2.0.50727和v4.0.30319这两个 Assembly currentAssembly = Assembly.LoadFile(filePath); var ...
- FFmpeg中的常见结构体
代码基于FFmpeg5.0.1 目录 FFFormatContext AVFormatContext AVIOContext FFIOContext URLContext URLProtocol AV ...