综述
工欲善其事,必先利其器;兵马未到,粮草先行。
在音视频开发过程中,利用工具可以更方便、更直观、更快捷的分析音视频的数据,便于开发过程中分析、调试和解决问题。
现总结一些音视频开发过程中常用的分析工具。
VLC
VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影音光盘及各类流式协议。它也能作为unicast或multicast的流式服务器在IPv4或IPv6的高速网络连接下使用。它融合了FFmpeg计划的解码器与libdvdcss程序库使其有播放多媒体文件及加密DVD影碟的功能。
VideoLAN旗下有很多开源项目,比如x264、x265等等。
VLC实时更新下载数:
- 开源项目:git clone https://code.videolan.org/videolan/vlc.git
- 多平台
- 下载地址:https://www.videolan.org/
VLC功能介绍
- 界面:上方是VLC media palyer、文件、编辑、查看、播放、音频、视频、字幕、窗口、帮助选项;左侧是媒体库、本地电脑、本地网络、internet。
- 播放能力:具备播放本地文件、光盘、网络、捕获等能力;
- 转码/串流:VLC不仅仅是一个播放器,还可以作为流媒体服务器,将本地音视频发送到网上;有具体的封装、视频编解码、音频编解码、字幕能力。
MediaInfo
MediaInfo 用来分析视频和音频文件的编码和内容信息;MediaInfo 是自由软件 (免费使用、免费获得源代码,许可协议:GNU GPL/LGPL)。
- 开源项目:https://github.com/MediaArea/MediaInfo
- 跨平台
- 下载:https://mediaarea.net/en/MediaInfo
MediaInfo功能
-
可以获取的媒体信息
内容信息:标题,作者,专辑名,音轨号,日期,总时间……
视频:编码器,长宽比,帧频率,比特率……
音频:编码器,采样率,声道数,语言,比特率……
文本:语言和字幕
段落:段落数,列表 -
支持哪些文件格式
视频:MKV, OGM, AVI, DivX, WMV, QuickTime, Real, MPEG-1, MPEG-2, MPEG-4, DVD (VOB)…
(编码器:DivX, XviD, MSMPEG4, ASP, H.264, AVC…)
音频:OGG, MP3, WAV, RA, AC3, DTS, AAC, M4A, AU, AIFF…
字幕:SRT, SSA, ASS, SAMI… -
主要功能特点
支持众多视频和音频文件格式
多种查看方式:文本,表格,树形图,网页……
自定义查看方式
信息导出:文本,CSV,HTML……
三种发布版本:图形界面,命令行,DLL (动态链接库)
与 Windows 资源管理器整合:拖放,右键菜单
国际化:有多种界面语言供选择
(软件界面) 轻松实现本地化 (需要志愿者翻译语言文件)
Elecard StreamEye Tools
是一套付费的音视频分析工具,用的比较多的是StreamEye、YUV Viewer、Stream Analyers。
- 收费工具,但有试用版本以及低版本的破解版;
- 跨平台
- 网址:https://www.elecard.com/
StreamEye
主要用来分析视频流结构和宏块结构,检测编解码器参数,评价视频质量。
- StreamEye具体可以从视频流里得到的信息:
- StreamEye功能特点:
YUV Viewer
主要用来播放YUV格式的视频序列。
Stream Analyers
Stream Analyers更多的偏向于专业工具,用来分析媒体流的语法信息和传输流验证。
- 主要特点
H264Visa
一款比较老的专门分析H264标准的工具,已经停止了更新,网上应该能找到一些旧版本,但据说准确性比StreamEye更高。
- 付费工具
- windows平台
- 下载网址:https://www.softwaresea.com/Windows/download-H264Visa-10147226.htm
- 特点介绍
H264Visa is a powerful H.264/AVC real-time analyzer. It can analyze all the H.264/AVC videos for Mobile/Handheld/Consumer Products with Baseline/Main/Extended/High profiles on all levels. It can parse and analyze mp4 and mpeg2 TS stream, and retrieve H.264/AVC video stream. With lots of features like MB search, Decode Stage Display, H264Visa is a perfect tool to analyze H.264/AVC streams, to optimize H.264/AVC codecs, to learn and get in-depth info about H.264/AVC with your eyes. Target users: H.264/AVC codec developers for Mobile/Handheld/PC/Consumer products; H.264/AVC Learners. This version is the first release on CNET Download.com.
CodecVisa
一套付费媒体分析工具。
- 网址:http://www.codecian.com/
- 收费项目
- 多平台
YUVToolkit
YUVToolkit是一个开源跨平台的用于播放和分析原生 YUV 数据的工具,目前好像Mac的兼容性不太好。
- 开源项目
- 跨平台
- 官网:http://www.yuvtoolkit.com
- 下载:https://code.google.com/archive/p/yuvtoolkit/downloads
- 源码: https://github.com/svn2github/yuvtoolkit
- 特点介绍
(1) 支持大部分 YUV 格式和 RGB 格式。比如:I420、I422、I444、YV12、YV16、YV24、UYVY、YUY2、NV12、grayscale;RGB24、RGBX32、XRGB32。
(2) 支持从文件名解析图像分辨率、帧率、颜色模型。比如:文件名为 test-640x480-30FPS-I420.yuv。
(3) 使用 Direct3D 和 OpenGL 渲染,最高可支持 720P、60FPS、4 个视频同时渲染。
(4) 支持对比图像并逐帧计算 MSE 和 PSNR,并可视化的展示失真情况。
(5) 支持使用 Javascript。比如:可以用脚本一次性打开多个文件。
可以用插件扩展来支持更多的视频格式、质量评估方式、渲染引擎。
YUVView
一款开源、基于QT的跨平台YUV播放器,具有高级分析工具集,分析YUV功能比较强大,值得推荐。
- 开源项目
- 跨平台
- 源码:https://github.com/IENT/YUView
- 特点介绍
At its core, YUView is a YUV player and analysis tool. However, it can do so much more:
simple navigation/zooming in the video
support for a wide variety of YUV formats using various subsamplings and bit depts
support for raw RGB files, image files and image sequences
direct decoding of raw h.265/HEVC bitstreams with visualization of internals like prediction modes and motion vectors and many more
interface with visualization for the reference software decoders HM and JEM
support for opening almost any file using FFmpeg
image comparison using side-by-side and comparison view
calculation and display of differences (in YUV or RGB colorspace)
save and load playlists
overlay the video with statistics data
... and many more
MediaParser
个人开发的一款Mac平台基于QT的解析媒体信息的开源工具。
- 下载:https://github.com/imagora/FlvParser
FLVParser
个人开发的一款Mac平台基于QT的分析FLV的开源工具;
- 下载:https://github.com/imagora/FlvParser
Adobe Audition
Adobe家族工具之一,一款专业音频工作站,Audition 是一款完善的工具集,其中包含用于创建、混合、编辑和复原音频内容的多轨、波形和光谱显示功能。这一强大的音频工作站旨在加快视频制作工作流程和音频修整的速度,并且还提供带有纯净声音的精美混音效果。
- 付费工具,有破解版
- 跨平台
- 网址:https://www.adobe.com/products/audition.html
UltraEdit
UltraEdit 是 Windows 旗下一款流行的老牌文本/HEX 编辑器(非开源)。UltraEdit 正被移植到Linux 平台。该移植名为 UEX,意即 UltraEdit for Linux。UEX具有原生的 Linux 外观,其界面、配置、热键等与 Windows 版并无二致。
在音视频开发中,可以用来作为编辑器或者媒体流的二进制分析工具。
Wireshark
Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。
- 免费开源工具
- 跨平台
- 网址:https://www.wireshark.org/-
FFmpeg
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。
作为音视频开发过程中的分析工具,更多依靠ffmpeg、ffprobe、ffplay三个可执行程序来完成对媒体信息进行专业详细的分析。
功能十分强大,是音视频开发者必研究的项目之一。
- 开源项目
- 跨平台
- 网址:http://ffmpeg.org/
- 源码:https://github.com/FFmpeg/FFmpeg