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 ...
随机推荐
- 微服务从代码到k8s部署应有尽有系列全集
微服务从代码到k8s部署应有尽有系列全集 https://mp.weixin.qq.com/s/8U2h85YJHy3H3hzlBakPPw 实战项目地址:https://github.com/Mik ...
- nim 2. 变量与函数
对于系统的学习,官网上的相应的资料, 这里通过一个简单的例程,演示一下. 这个例程里有一个根据半径计算圆面积的方法,以及调用的示例: 演示代码 1 #计算圆的面积 2 proc calcArea(r: ...
- lca总结+树上差分
lca lca简称最近公共祖先--简介在此,不过多赘述 这里主要写的是倍增算法,oi-wiki上用的是vector,由于本人不会,只会用链表,所以这里就放链表的代码了 例题 加一个数组按倍增数组的方式 ...
- HDU-Employment Planning题解
题目在这里 -------------------------------- Employment Planning 简单的一道dp 关键的点在于想到用枚举实现各种情况的讨论 关键的注释写在代码里了 ...
- 若依报错:登录状态已过期,您可以继续留在该页面,或者重新登录;When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header.
报错界面 后台报错 java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot c ...
- CICD详解之gitlab,Jenkins
持续集成概念 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 什么是持续集成: 持续集成是指开 ...
- 【漏洞复现】用友NC-Cloud PMCloudDriveProjectStateServlet接口存在JNDI注入漏洞
阅读须知 花果山的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站.服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作.利用此 ...
- 卷爆短剧出海:五大关键,由AIGC重构
短剧高温下,谈谈AIGC的助攻路线. 短剧,一个席卷全球的高温赛道. 以往只是踏着霸总题材,如今,内容循着精品化.IP化的自然发展风向,给内容.制作.平台等产业全链都带来新机,也让短剧消费走向文化深处 ...
- C# 调用 qrencode的动态库
自己根据qrencode的源码导了一个dll动态库,见: https://www.cnblogs.com/HelloQLQ/p/16364825.html 自己希望能用C#语言调用以下. 首先构建需要 ...
- 浅谈C#中取消令牌CancellationTokenSource
基础操作 CancellationTokenSource cancellationTokenSource = new CancellationTokenSource(); cancellationTo ...