unity c# ffmpeg 获取mp4 文件长度
时间: 2023-08-24 13:18:52 浏览: 237
FFmpeg Unity Bind 3.2
5星 · 资源好评率100%
你可以使用FFmpeg库来获取MP4文件的长度。以下是一个使用Unity C#和FFmpeg库的代码示例:
```csharp
using System.Diagnostics;
using UnityEngine;
public class VideoLength : MonoBehaviour
{
public string videoPath;
void Start()
{
float length = GetVideoLength(videoPath);
Debug.Log("Video length: " + length + " seconds");
}
private float GetVideoLength(string path)
{
float length = 0f;
Process process = new Process();
process.StartInfo.FileName = "ffmpeg";
process.StartInfo.Arguments = "-i " + path + " -v quiet";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardError = true;
process.Start();
string output = process.StandardError.ReadToEnd();
process.WaitForExit();
int index = output.LastIndexOf("Duration: ");
if (index != -1)
{
string duration = output.Substring(index + 10, 8);
length = float.Parse(duration.Substring(0, 2)) * 3600f + float.Parse(duration.Substring(3, 2)) * 60f + float.Parse(duration.Substring(6, 2));
}
return length;
}
}
```
这个脚本将获取指定路径的MP4文件的长度,并将其输出到Unity的控制台中。你可以将视频路径设置为“videoPath”变量的值。请确保在Unity中设置FFmpeg的路径。
阅读全文