AV1码流分析工具AOMAnalyzer环境搭建

目录

  1. 参考
  2. 概述
  3. 使用AOMAnalyzer
  • 3.1 Local Analyzer
  • 3.2 Online Analyzer

1. 参考

  • [1] AOM Analyzer
  • [2] github.com/mbebenita/aomanalyzer
  • [3] elecard.com/products/video-analysis/streameye
  • [4] 施华德/AV1 码流分析器的搭建
  • [5] LiveVideoStack/在浏览器中分析AV1码流
  • [6] github.com/xiph/rav1e
  • [7] stackoverflow/Disable same origin policy in Chrome

2. 概述

码流分析工具帮助Codec开发人员快速分析定位问题,也帮助人们学习视频编码相关的知识。

码流分析工具:

  • StreamEye:新版已支持AV1,商业付费的,在“音视频分析工具StreamEye介绍”中介绍了它的一些功能。
  • AOM Analyzer:AV1、VP9的码流分析工具,开源项目,支持在线和本地分析。
    • AOM Analyzer提供了一个在线的demo
    • “在浏览器中分析AV1码流”是AOM Analyzer的开发者对工具的介绍。

3. 使用AOMAnalyzer

有两种方式:Local Analyzer和Online Analyzer

本文主要是介绍“使用Online Analyzer分析本地文件”的方法。

3.1. Local Analyzer

Local Analyzer版本是一个基于electron实现的客户端,支持 Mac Linux Windows
多个平台。

安装本地分析版本的步骤:

  1. 下载AOM Analyzer。
  2. 下载inspect.js和inspect.wasm并且保存在相同的目录。
  • inspect.js就是解码器的实现,是通过Emscripten编译工具把libaom编译成的js版本
    ,上面下载的是已经编译好的一个版本。
  • 如果要集成最新的libaom,参考[2][4]中的步骤。可能有一些坑,安装 Emscripten的过程我就觉得很慢。
  1. 执行AOMAnalyzer path_to_inspect.js output.ivf
  • 若直接打开AOMAnalyzer不指定js解码文件和ivf文件,打开的是默认的界面,只能选择来自网站https://arewecompressedyet.com/
    产生的码流进行分析。

很简单吧。

但是为什么我安装windows版本为什么有问题呢?一直在Loading,提示“Loading Decoders”,打开本地的文件和选择arewecompressedyet的数据都这个问题。


image.png
  • 没有什么更多的错误提示,没找到有错误日志文件,不知道什么问题。
  • AomAnalyzer项目的issues中有一个相关的问题issue#68:AOMAnalyser unable to decode frame on windows,反馈linux版本正常,但是windows版本有问题。说windows版本需要在inspect.js中改inspect.wasm文件路径的格式。修改方法没有写的很明确,没有找到修改的地方。
  • 暂时先搁置了,先看看Online Analyzer的方法怎么用。
  • 有找到解决方法的小伙伴请回复一下。

3.2. Online Analyzer

在线版本使用起来要更加灵活,通过浏览器的控制台也方便查看软件运行的一些问题。

步骤如下

  1. 把要分析的.ivf文件放在支持CORS(Cross-Origin Resource Sharing)的web服务器上。
  2. 把下面url中的f参数设置为你的文件在网络上的地址,如https://arewecompressedyet.com/analyzer/?d=https://people.xiph.org/~mbebenita/analyzer/inspect.js&f=path_to_output.ivf
  • 比如AOM Analyzer提供的在线的demo的url为https://arewecompressedyet.com/analyzer/?maxFrames=10&d=https://people.xiph.org/~mbebenita/analyzer/inspect.js&f=https://people.xiph.org/~mbebenita/analyzer/output.ivf

下面介绍一种简便的搭建本地服务的方法,来实现使用在线工具分析本地文件。

  1. chrome安装Websever for chome插件,安装后点击启动,选择一下工作目录,Websever for chome的界面如下所示。
  2. 前面提到服务器要支持CORS(Cross-Origin Resource Sharing),否则访问的时候会提示相应的错误,访问不到的文件资源。参照[7]中关闭这个策略方法可以简单绕开这个问题。
//Win+R键打开运行窗口,执行下面的命令,会打开一个关闭安全模式的chrome。
chrome.exe --user-data-dir="C://Chrome dev session" --disable-web-security
  1. 把要分析的文件放到Websever指定的工作目录下。
  2. 在关闭安全模式的chrome访问在线工具,f指定为文件在本地服务上的地址,如https://arewecompressedyet.com/analyzer/?d=https://people.xiph.org/~mbebenita/analyzer/inspect.js&f=http://127.0.0.1:8887/julin_5s.ivf
image.png

下面是用rav1e编码的一个AV1视频使用AOMAnalyzer在线版本分析的界面。


AomAnalyzer.png

你可能感兴趣的:(AV1码流分析工具AOMAnalyzer环境搭建)