设为首页 加入收藏

TOP

C#编写运行在Linux环境下的采用Mediainfo来获取多媒体文件信息的代码(一)
2019-09-17 18:33:27 】 浏览:101
Tags:编写 运行 Linux 环境 采用 Mediainfo 获取 媒体文件 信息 代码

项目开始设计的是运行在windows下,所以一开始采用的是windows服务模式来获取多媒体文件信息,后来要求调整为可以在Linux下运行,经过这两天的资料查找,实现了Linux下通过.NET来获取多媒体文件信息的功能。详情如下:

1、运行环境是CentOS 7

2、编译环境是VS2017+.NET Core2.2 

项目引用 MediaInfo.DotNetWrapper

CentOS下安装以下环境(已安装过的可忽略):

sudo ln -s /usr/lib64/libmediainfo.so.0 /usr/lib64/libmediainfo.so
sudo yum install https://mediaarea.net/download/binary/mediainfo/18.08.1/mediainfo-18.08.1.x86_64.CentOS_7.rpm
sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
sudo yum update
sudo yum install dotnet-sdk-2.2

C#运行代码如下:

using log4net;
using log4net.Config;
using log4net.Repository;
using MediaInfo.DotNetWrapper;
using MediaInfo.DotNetWrapper.Enumerations;
using System;
using System.IO;
 
namespace Services
{
    public class Program
    {
 
        protected static ILog log = LogManager.GetLogger(logRepository.Name, "Program");
        public static void Main(string[] args)
        {
           XmlConfigurator.Configure(logRepository, new FileInfo("log4net.config"));
            using (var mediaInfo =new MediaInfo.DotNetWrapper.MediaInfo())
            {
                mediaInfo.Open("123.mpg");
                string FileType = mediaInfo.Get(StreamKind.Video, 0, "StreamKind");
                int s = 0;
                int.TryParse(mediaInfo.Get(StreamKind.Video, 0, "Duration"), out s);
                log.Debug($"文件类型:{FileType}");
                log.Debug($"视频长度:{s}");
            }
        }
    }
}

MediaInfo参数大全(转自:http://www.cnblogs.com/royzou/archive/2011/09/06/mediainfo_parameter.html)

以下都是通过Get(StreamKind.***,0,i++,InfoKind.Name)获得的

1.视频参数

Video parameter

参数:Count  值:201
参数:Status  值:
参数:StreamCount  值:1
参数:StreamKind  值:Video
参数:StreamKind/String  值:Video
参数:StreamKindID  值:0
参数:StreamKindPos  值:
参数:Inform  值:ID                                       : 1
Format                                   : MPEG-4 Visual
Format profile                           : Simple@L4a
Format settings, BVOP                    : No
Format settings, QPel                    : No
Format settings, GMC                     : No warppoints
Format settings, Matrix                  : Default (H.263)
Codec ID                                 : 20
Duration                                 : 52s 241ms
Bit rate mode                            : Variable
Bit rate                                 : 2 956 Kbps
Nominal bit rate                         : 2 700 Kbps
Maximum bit rate                         : 3 000 Kbps
Width                                    : 640 pixels
Height                                   : 480 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Variable
Frame rate                               : 28.426 fps
Minimum frame rate                       : 14.925 fps
Maximum frame rate                       : 61.224 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.339
Stream size                              : 18.4 MiB (97%)
Encoded date                             : UTC 2011-09-02 02:58:59
Tagged date                              : UTC 2011-09-02 02:58:59

参数:ID  值:1
参数:ID/String  值:1
参数:UniqueID  值:
参数:UniqueID/String  值:
参数:MenuID  值:
参数:MenuID/String  值:
参数:Format  值:MPEG-4 Visual
参数:Format/Info  值:
参数:Format/Url  值:
参数:Format_Commercial  值:MPEG-4 Visual
参数:Format_Commercial_IfAny  值:
参数:Format_Version  值:
参数:Format_Profile  值:Simple@L4a
参数:Format_Compression  值:
参数:MultiView_BaseProfile  值:
参数:MultiView_Count  值:
参数:MultiView_Layout  值:
参数:Format_Settings  值:
参数:Format_Settings_BVOP  值:No
参数:Format_Settings_BVOP/String  值:No
参数:Format_Settings_QPel  值:No
参数:Format_Settings_QPel/String  值:No
参数:Format_Settings_GMC  值:0
参数:Format_Settings_GMC/String  值:No warppoints
参数:Format_Settings_Matrix  值:Default (H.263)
参数:Format_Settings_Matrix/String  值:Default (H.263)
首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/9/9
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇asp.net core 系列之用户认证(1)-.. 下一篇利用EFCore 封装Repository(可扩..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目