如何将任何格式的视频转换为 MP4 并仅保留视频的第一分钟

如何将任何格式的视频转换为 MP4 并仅保留视频的第一分钟

我正在做一个项目,本质上是一个面向旅行者社区的社交媒体应用。在这个应用中,用户可以上传任何格式的视频,但我需要将它们保存为 MP4 格式,以便任何浏览器都可以播放它们。

我从一个网站下载了各种格式的视频https://www.quickpickdeal.com/tag/download-sample-videos并安装了 FFmpeg 以将视频转换为 MP4 格式。对于后端,我使用的是 ASP.NET Core。目前,我使用以下代码将 MKV 视频转换为 MP4。

 //path where you want to save your converted video
            string cmd = " -i " + input + " -acodec aac -strict experimental -ac 2 -ab 128k -vcodec libx264 -f mp4 -crf 22 -s 640x360 " + output;
            var processInfo = new ProcessStartInfo(ffmpegFilePath, cmd)
            {
                UseShellExecute = false,
                CreateNoWindow = true,
                RedirectStandardOutput = true,
                RedirectStandardError = true
            };

但我不确定如何为命令编写通用逻辑,以便它可以将任何格式的视频转换为 MP4,并且只保留视频的第一分钟。

有人可以建议我如何完成这些任务吗?

答案1

在命令中添加“-to 00:01:00”。例如:

string cmd = " -i " + input + "-to 00:01:00 -acodec aac ......

您可以通过添加 -ss 来选择起点:

string cmd = "-ss 00:03:00 -i " + input + "-to 00:01:00 -acodec aac ......

相关内容