织梦CMS - 轻松建站从此开始!

罗索

MediaInfo库的简单使用

jackyhwei 发布于 2011-07-17 20:17 点击:次 
想到一个问题, 如何获得一个图像文件(比如jpg, bmp, png)的信息. 自己查查文件的格式, 写一个解析, 应该不困难; 但是找了下现成的, 发现MediaInfo库已经可以非常好的实现需要的功能了.
TAG:

想到一个问题, 如何获得一个图像文件(比如jpg, bmp, png)的信息. 自己查查文件的格式, 写一个解析, 应该不困难; 但是找了下现成的, 发现MediaInfo库已经可以非常好的实现需要的功能了.

MediaInfo可以在sourceforge上找到, 是一个解析视频,音频, 图片等媒体文件的库. 可以得到文件的编码/码率/长度等等信息. 使用也很简单, 下载的文件中包含了c/java/delphi等语言的sample.

MediaInfo是以dll形式发布的, 所以在Java中使用, 需要JNI. 为了方便, MediaInfo使用JNative库提供了Java方面的API. 所以还需要下载JNative库, 同样也能在sourceforge上找到. 下载以后, 把jar文件放到classpath下, 把JNativeCpp.dll放到MediaInfo.dll同一目录下. 之后就可以测试了:

       MediaInfo mi = new MediaInfo();
       mi.Open("c:\test.jpg");
       mi.Option("Inform", "General");
       System.out.println(mi.Get(MediaInfo.Stream_Image, 0, "Format", MediaInfo.Info_Text, MediaInfo.Info_Name));     
       System.out.println(mi.Get(MediaInfo.Stream_Image, 0, "Width", MediaInfo.Info_Text, MediaInfo.Info_Name));
       System.out.println(mi.Get(MediaInfo.Stream_Image, 0, "Height", MediaInfo.Info_Text, MediaInfo.Info_Name));
       System.out.println(mi.Get(MediaInfo.Stream_Image, 0, "Resolution/String", MediaInfo.Info_Text, MediaInfo.Info_Name));     
       mi.Close();

其中对于各类值该怎么取, MediaInfo的文档里面都有描述, 就不在这里写了.
 

 

(lff0305)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201107/14716.html]
本文出处:hi.baidu.com/lff0305 作者:lff0305
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容