linux/ubuntu下编译AVS3工程

2 篇文章 0 订阅

上个月在Window上编译了AVS3工程,这几天抽着空余时间搞清楚了在Linux系统上编译AVS3工程。

AVS3的版本为SAVS3_hpm32,之前看了一些linux下使用gcc编码c++工程的例子,可那些都是一些简单的工程,没有几个cpp和.h文件,自己写makefile文件编译起来也是比较简单。

在SAVS3_hpm32工程里找了半天的Makefile文件也没找到,但是想想这么大个工程自己写Makefile文件也不现实,于是就没了头绪,不知道咋样在LINUX下编译了。

后来突然想到工程的Readme文件,之前提示了怎么在Win下编译,肯定也有如何在Linux下编译的提示,果然,上面提示了如何在Linux下编译并生成可执行文件。

我安装的是Win10自带的ubuntu系统,不用安装双系统,直接通过端口远程控制,还是很方便的,这边有一个安装自带ubuntu系统的链接https://jingyan.baidu.com/article/63f23628664adc0209ab3d4c.html

## Linux* Operating Systems (64-bit):

* __Build Requirements__
    -   GCC 5.4.0 or later
    -   CMake 3.5.1 or later
    -   YASM Assembler version 1.2.0 or later

* __Build Instructions__
    -   In the main repository, run
        -   mkdir build && cd build && cmake .. && make -j ```nproc```&& sudo make install

* __Sample Binaries location__
    -   Binaries can be found under Bin/Release

* __Installation__
For the binaries to operate properly on your system, the following conditions have to be met:
    -   On any of the Linux* Operating Systems listed above, copy the binaries under a location of your choice.
    -   Change the permissions on the sample application “SvtHevcEncApp” executable by running the command:                 chmod +x SvtHevcEncApp
    -   cd into your chosen location
    -   Run the sample application to encode. ./SvtHevcEncApp -i [in.yuv] -w [width] -h [height] -b [out.265].
    -   Sample application supports reading from pipe. E.g. ffmpeg -i [input.mp4] -nostdin -f rawvideo -pix_fmt yuv420p - | ./SvtHevcEncApp -i stdin -n [number_of_frames_to_encode] -w [width] -h [height].

Readme文件里关于如何在Linux下编译avs3工程是这样介绍的,主要就是安装gcc、cmake以及yasm。这些的安装百度一下很容易。
另外就是在目录下依次执行:

mkdir build
cd build
cmake ..
 make -j ```nproc```
 sudo make install

也是很简单,没出现什么问题。其中,cmake之后,就会自动生成一个Makefile文件。
最后,在主目录的Bin/Release生成了可执行文件SvtAvs3EncApp
输入一下命令进行编码:

./SvtAvs3EncApp -i Bcactus_1920x1080_8_50_500.yuv -w 1920 -h 1080 -b out.avs3

最终,如愿运行成功:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用 FFmpeg 进行 AVS3 编码,需要先编译 FFmpeg 并启用 AVS3 的支持。下面是一个简单的编译和配置过程: 1. 下载 FFmpeg 源代码 首先,你需要从 FFmpeg 官网下载最新的源代码。 2. 安装 AVS3 相关依赖 FFmpeg 需要依赖以下软件包来支持 AVS3 编码: - AVS3-P2 reference software - xavs3 库 你可以从 AVS3 官方网站上下载这些软件包,并按照它们的指导进行安装。 3. 配置 FFmpeg 在配置 FFmpeg 时,你需要启用 AVS3 的支持。你可以使用以下命令进行配置: ``` ./configure --enable-libxavs3 --enable-version3 --enable-shared --enable-hardcoded-tables --enable-gpl --enable-nonfree ``` 其中,`--enable-libxavs3` 表示启用 xavs3 库的支持,`--enable-version3` 表示使用最新的库版本,`--enable-shared` 表示编译动态链接库,`--enable-hardcoded-tables` 表示启用硬编码的表格,`--enable-gpl` 表示启用 GPL 许可证,`--enable-nonfree` 表示启用非自由许可证。 4. 编译 FFmpeg 在配置完成后,你可以使用以下命令编译 FFmpeg: ``` make ``` 5. 安装 FFmpeg 编译完成后,你可以使用以下命令将 FFmpeg 安装到系统中: ``` make install ``` 6. 使用 FFmpeg 进行 AVS3 编码 现在,你可以使用 FFmpeg 进行 AVS3 编码了。例如,如果你要将一个视频文件编码为 AVS3 格式,你可以使用以下命令: ``` ffmpeg -i input.mp4 -c:v libxavs3 output.avs ``` 其中,`-i` 表示输入文件,`-c:v libxavs3` 表示使用 libxavs3 库进行视频编码,`output.avs` 表示输出文件的名称。 注意:AVS3 是中国提出的一种新型视频编码标准,目前尚未得到广泛的应用和支持。因此,在使用 FFmpeg 进行 AVS3 编码时,你需要先确认你的播放器或设备是否支持 AVS3 格式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值