C#如何获取视频文件的帧宽度、帧高度

用过shell.dll貌似查不到
2025-05-17 13:43:46
推荐回答(5个)
回答1:

  具体实现方法如下:

  读取方式:使用ffmpeg读取,所以需要先下载ffmpeg。网上资源有很多。

  通过ffmpeg执行一条CMD命令可以读取出视频的帧高度和帧宽度信息。

  蓝线框中可以看到获取到的帧高度和帧宽度。

回答2:

办法1: 试试,自己用纯文件操作去解码视频文件,我知道jpg文件数据里就有对应的帧宽度和高度,你可以查一些视频文件的编码方式,我估计帧宽度和帧高度一般都要在文件头部分。

办法2: 试试, 调用一些库函数或者相应的dll,去VS.net里瞅瞅有没有相应的引用,以前做播放器的时候我记得好像有来着。

办法3: 试试, 如果不是做后台程序的话,应该可以用MFC窗口重绘一下调用现有的播放器播放的视频文件,取重绘到的图像宽度和高度,这个办法很囧,应该不大可能。

回答3:

建议用格式工厂2.5和魔影工厂2.0软件,均为中文免费的最新版,支持音、视

频格式非常多,自定义分辨率均有调节的的项目可自行设置,整体性能而言魔

影比格式工厂速度更快,质量更稳定些,两款软件可互补使用,基本能解决绝

大多数的转换类问题。

回答4:

这还要看Video的码率和帧数
越高越清晰,但文件也会更大
用肉眼可以大致感觉分辨一下
用MediaInfo可以精确地确定出哪一个更清晰些、音质更好一些(即便肉眼和耳朵分辨不出来)

回答5:

用DirectShow呢?应该有对应的接口