FFmpeg之——获取上传视频的尺寸(长、宽)

获取上传视频的尺寸:

获取视频尺寸通常需要借助第三方库FFmpeg。

首先,确保你的系统中已安装了FFmpeg,并且FFmpeg的可执行文件路径已经添加到你的系统环境变量中。

1.官网下载ffmpeg

进入 链接: ffmpeg官网 网址,点击下载windows版ffmpeg(点击左下第一个绿色的行)
FFmpeg之——获取上传视频的尺寸(长、宽)_第1张图片
选择标注红框的其中一个进行下载
FFmpeg之——获取上传视频的尺寸(长、宽)_第2张图片

2.配置

下载完成后,赋值路径,进行环境变量配置FFmpeg之——获取上传视频的尺寸(长、宽)_第3张图片

找到环境变量
FFmpeg之——获取上传视频的尺寸(长、宽)_第4张图片
配置在Path中
FFmpeg之——获取上传视频的尺寸(长、宽)_第5张图片

3、实例

然后,你可以使用如下代码来获取视频的详细信息,包括尺寸

 public static (int width, int height) GetVideoSize(string videoPath)
        {
            var startInfo = new ProcessStartInfo
            {
                FileName = "ffmpeg",
                Arguments = $"-i {videoPath} -hide_banner",
                RedirectStandardOutput = true,
                RedirectStandardError = true,
                UseShellExecute = false,
                CreateNoWindow = true
            };
   			// 创建process 对象,并关联ProcessStartInfo
   			// 启动进程
            using (var process = Process.Start(startInfo))
            {
             	 // 等待进程执行完毕
                process.WaitForExit();
				// 读取命令的输出结果
                string output = process.StandardError.ReadToEnd();
                // 正则表达式匹配视频尺寸
                var match = Regex.Match(output, @"Video: .+ (\d{2,})x(\d{2,})");

                if (match.Success)
                {
                    int width = int.Parse(match.Groups[1].Value);
                    int height = int.Parse(match.Groups[2].Value);
                    return (width, height);
                }
            }
            return (0, 0);
        }
    }

其中 videoPath 指的是视频文件地址

4、 其他

当你环境配置好,其实也可以自己可以测试一下自己的命令是否正确, win+R ——》 cmd,可以看看这个命令符返出来什么
videoPath指的是视频文件的地址

ffmpeg -i {videoPath} -hide_banner

FFmpeg之——获取上传视频的尺寸(长、宽)_第6张图片

你可能感兴趣的:(C#代码,ffmpeg,音视频)