ilovecomputer66 发表于 2023-5-10 22:35

C# 有什么最小的库,能获取视频文件的时长,ffmep、VLCSharp、MediaInfo库统统120MB+

不想为了就获取这么一个时长,给原本100KB不到的小工具,硬生生增加120MB+的巨大体积

金刚葫芦侠 发表于 2023-5-10 22:59

NReco.VideoInfo

爷爷的扫堂腿 发表于 2023-5-10 23:00

using WMPLib;
// ...your code here...

var player = new WindowsMediaPlayer();
var clip = player.newMedia(VideoFilePath);
Console.WriteLine(TimeSpan.FromSeconds(clip.duration));

ilovecomputer66 发表于 2023-5-10 23:15

金刚葫芦侠 发表于 2023-5-10 22:59
NReco.VideoInfo

额,这就是个ff的wrapper,照样得把ff装上啊。

ilovecomputer66 发表于 2023-5-10 23:18

本帖最后由 ilovecomputer66 于 2023-5-10 23:25 编辑

爷爷的扫堂腿 发表于 2023-5-10 23:00
using WMPLib;
// ...your code here...


需要跨平台的

ilovecomputer66 发表于 2023-5-11 07:06

sqsy 发表于 2023-5-11 02:01
手写解析吧

新人这样灌水也不怕被删号。。。

songxp03 发表于 2023-5-11 07:11

sqsy 发表于 2023-5-11 02:01
手写解析吧

手写也不容易,视频格式很多,一种格式版本也许不止一个。如果只限制一种格式应该可以

asasascao 发表于 2023-5-11 08:23

用uwp的MediaElement轻松搞定

ilovecomputer66 发表于 2023-5-11 08:34

asasascao 发表于 2023-5-11 08:23
用uwp的MediaElement轻松搞定

是个库就能搞定,关键都100MB+,这个不可接受

ctacy 发表于 2023-5-11 08:52

可以考虑使用MediaDuration

Install-Package MediaDuration



FileInfo videoFile = new FileInfo(@"C:\test.mp4");
TimeSpan duration = MediaInfo.GetDuration(videoFile);
int hours = duration.Hours;      // 小时
int minutes = duration.Minutes;// 分钟
int seconds = duration.Seconds;// 秒
页: [1] 2
查看完整版本: C# 有什么最小的库,能获取视频文件的时长,ffmep、VLCSharp、MediaInfo库统统120MB+