开源项目MediaInfo

一、简介

MediaInfo 用来分析视频和音频文件的编码和内容信息。

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...  

 

MediaInfo有哪些主要功能和特点?

支持众多视频和音频文件格式  

多种查看方式:文本,表格,树形图,网页……  

自定义查看方式  

信息导出:文本,CSV,HTML……  

三种发布版本:图形界面,命令行,DLL(动态链接库)  

与Windows资源管理器整合:拖放,右键菜单  

国际化:有多种界面语言供选择  (软件界面)轻松实现本地化 (需要志愿者翻译语言文件)

开源项目MediaInfo_第1张图片

MediaInfo主界面截图

 

二、源码获取途径

MediaInfo英文主页:

http://mediainfo.sourceforge.net/

MediaInfo中文主页:

http://mediainfo.sourceforge.net/zh-CN

MediaInfo开发者主页:

http://sourceforge.net/projects/mediainfo

源码svn下载地址:

https://mediainfo.svn.sourceforge.net/svnroot/mediainfo

 

三、使用指南

1. MediaInfo编译指南

支持WindowsLinux平台

推荐使用ms visual studio 2005

  • MSVC : Microsoft Visual C++ 9 (aka 2005) (for Visual Studio 7 (aka 2002) or 8 (aka 2003), you can edit .sln and .xxproj to be compatible. - .sln : "...Format Version 9.00" to 7.00 - .xxproj : "Version="8.00" or "Version="7.10" to 7.00 This is not always tested, but you should easily be able to adapt them for your compiler)
  • BCB : Borland C++ Builder 6
  • DevCpp : Dev-C++ (Dev-Cpp is an IDE for MinGW) (I am working on this release, not stable)
  • MinGW : MinGW on Windows (I am working on this release, not stable)
  • GCC : Linux GCC (I am working on this release, not stable)

2. MediaInfo SDK

MediaInfo除了有GUICMD两种使用方法,还可以在程序中使用MediaInfo库。

MediaInfo库有静态链接和动态链接两种方式,MediaInfo SDK的相关官方资料如下:

  • Read this first (supported languages, versioning, conventions)
  • Different ways of using the library
  • How to begin quickly with MediaInfo
  • More information about the programming interface
  • The Doxygen documentation (full C++ API interface)

 

二、典型应用

MediaInfo的典型应用是使用其DLL库,用来提取媒体文件的信息。其特点是,支持的格式全、提取的信息丰富。当然,MediaInfo本身是开源的,其DLL库可以进行二次开发,可以扩充自定义格式,增加自定义功能。对于工程使用,MediaInfo模块和其它功能可以独立,使用上非常便捷,是一个值得推荐的开源工程。

 

三、相关源码

关于媒体信息解析,ffmpeglibformat是用于媒体文件解析的,是parser的功能,支持格式也非常全,和MediaInfo有想通之处,在使用MediaInfo时遇到问题可以借鉴libformat的源码。

你可能感兴趣的:(开源项目MediaInfo)