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 ...
随机推荐
- 【源码研读】MLIR Dialect 分层设计
以「疑问 - 求解」的形式来组织调研,此处记录整个过程. 1. MLIR 中的 Dialect 是「分层」设计的么? 先问是不是,再谈为什么.从 LLVM 社区 可以看出,至少在做 Codegen 时 ...
- WEB服务与NGINX(24)- LNMP架构部署wordpress
目录 1. LNMP架构项目实战 1.1 LNMP架构介绍 1.2 LNMP架构部署wordpress 1.2.1 LNMP环境介绍 1.2.2 二进制部署mariadb 1.2.3 部署php-fp ...
- SQL中常用的字符串CHARINDEX函数和PATINDEX函数详解!
今天整理了些日常可能经常遇到的一些处理字符串的函数,有些可能在写SQL时突然间想不到如何使用,今天就给大家总结两个函数的应用方法,以备不时之需!记得点赞收藏! CHARINDEX(expression ...
- get pull报错 Please commit your changes or stash them before you merge
当本地分支和远程修改了同一个文件代码,pull远程分支的代码的时候会出现文件冲突 出现这个错误 Please commit your changes or stash them before you ...
- Unity Visual Scripting 使用随记
1.Wait Until并不会再执行前面的代码,而是反复执行获取bool变量的代码:需自己拆出来写. 2.yield return null对应Wait For Next Frame,多用这个避免协程 ...
- JDK源码阅读-------自学笔记(十七)(java.io.File类)
File类简介 java.io.File类:抽象代表文件和目录. 使用此类,相当于获取了系统的文件,可以对其进行操作. 在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到本类 File ...
- docker 修改运行容器环境变量,如何修改容器中的环境变量env使长期有效
@ 目录 前言 第一步:查看Docker Root目录 第二步:查到容器的长id(container id) 第三步:停止容器 第四步:编辑修改环境变量env 第五步:重载服务的配置文件 第六步:重启 ...
- avue-crud字段之间的动态交互效果以及接口数据的获取赋值
一.form表单下拉表单类型字段数据获取 1.通过配置系统字典接口获取数据并渲染 { label: "经纪人", prop: "broker", type: & ...
- win11或win10客户端邮箱账号登录设置
1.alimall阿里企业邮箱 点击账户 点击添加账户 点击其他账户 输入电子邮箱地址和密码,并点击登录即可 2.Qq邮箱 2.1 点击账户 2.2 点击添加账户 2.3 点击其他账户 2.4 输入电 ...
- 在 Inno Setup iss 打包过程 中检测 .NET 6 / .net 5 / .NET Core 运行环境是否存在或已安装
为了将 .NET 5 / .NET Core 应用程序部署到客户机,我们可以编写 Inno Setup 代码来判断客户机是否安装了必要的运行环境..NET 官方仓库 中提供了一个名为 NetCoreC ...