社区
C#
帖子详情
如何取得视频(MP4)文件的时长
cceon
2012-01-29 03:44:55
如题,谢谢
...全文
872
3
打赏
收藏
如何取得视频(MP4)文件的时长
如题,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cceon
2012-01-30
打赏
举报
回复
[Quote=引用 1 楼 happy09li 的回复:]
由于需要用到实时读取影音文件(mp3、wma、wmv …)播放时间长度的功能,搜索到的结果有:
(1) 硬编码分析影音文件,需要分析各种媒体格式,代价最大;
(2) 使用wmlib sdk,需要熟悉sdk各个接口,且不同版本的wm接口有别,代价次之;
(3) 使用系统shell32的com接口,直接访问媒体文体属性,取其特定内容,代价最小。
显然第3种方案见效……
[/Quote]
谢谢,不过针对的是F4V(MPEG4)格式的。SHELL无法读取的到
hwbox
2012-01-29
打赏
举报
回复
偶记得FFMEPG中有相应方法的,mencoder也行,关注过一段时间,没太深入。
熙风
2012-01-29
打赏
举报
回复
由于需要用到实时读取影音文件(mp3、wma、wmv …)播放时间长度的功能,搜索到的结果有:
(1) 硬编码分析影音文件,需要分析各种媒体格式,代价最大;
(2) 使用wmlib sdk,需要熟悉sdk各个接口,且不同版本的wm接口有别,代价次之;
(3) 使用系统shell32的com接口,直接访问媒体文体属性,取其特定内容,代价最小。
显然第3种方案见效最快,立即操刀:
① 引用shell32底层接口c:windowssystem32shell32.dll,vs自动转换成interop.shell32.dll(注:64位系统和32位系统生成的interop.shell32.dll不一样)
② 编码读取播放时间长度:
/// <summary>
/// 获取媒体播放时间长度,格式00:00:00。
/// </summary>
/// <param name="path">媒体路径</param>
/// <returns>播放时间长度</returns>
public static string getmediaduration(this string path)
{
try
{
shell32.shell shell = new shell32.shellclass();
shell32.folder folder = shell.namespace(path.substring(0, path.lastindexof("\")));
shell32.folderitem folderitem = folder.parsename(path.substring(path.lastindexof("\") + 1));
return folder.getdetailsof(folderitem, 21);
}
catch (exception ex)
{
ex.error();
return null;
}
}
③ 调用结果,在win2003上应使用folder.getdetailsof(folderitem, 21) ,而在vista上应使用folder.getdetailsof(folderitem, 27) ,主要是因为不同系统下文件属性索引顺序不同造成。只要右键单击文件属性,能看到的媒体属性都能取到,可以换不同的索引值来取。如下所示,取出的时间长度是 00:03:52,目标完成。
java 获取
视频
mp4
文件
的播放
时长
该博客介绍了在Java中获取
MP4
视频
时长
的方法。首先通过Maven引入jave-all-deps插件,然后编写代码,定义了一个VideoUtils类,其中包含getPlayTime方法用于获取
视频
时长
,若
文件
非
MP4
格式则返回0,最后在main方法中调用该方法并输出
时长
。
获取
MP4
视频
文件
的
时长
,宽度,长度
本文介绍了一种从
MP4
文件
中获取
视频
时长
及分辨率的方法。通过创建一个本地
文件
并利用MediaPlayer组件读取该
文件
,可以轻松地提取出
视频
的
时长
、高度和宽度等关键信息。
python统计
文件
夹下所有
mp4
视频
文件
的总
时长
该博客主要讲述使用Python统计
文件
夹下所有
MP4
视频
文件
的总
时长
,聚焦于利用Python这一开发语言来完成特定的
视频
时长
统计任务,属于信息技术领域的开发应用。
js读取本地
mp4
视频
文件
时长
本文介绍了一种使用JavaScript读取本地
MP4
文件
时长
的方法。通过创建Object URL来加载
视频
文件
,并利用HTML5的video标签获取其duration属性。此方案适用于Chrome内核浏览器。
使用 PowerShell 脚本 + FFmpeg 在 Windows 系统中批量计算
MP4
视频
文件
的总
时长
本文介绍在 Windows 系统中使用 PowerShell 脚本和 FFmpeg 批量计算
MP4
视频
总
时长
的方法。首先要安装 FFmpeg,将其 bin 目录添加到系统环境变量;接着编写 PowerShell 脚本获取
视频
文件
并累加
时长
;最后运行脚本,若遇执行禁止提示,需以管理员身份运行 PowerShell 更改执行策略。
C#
111,129
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章