【发布时间】:2023-03-27 21:40:01
【问题描述】:
如何使用 Xamarin Forms 获取视频的长度?我已使用以下链接从视频中获取缩略图,但我需要能够获取视频长度
https://forums.xamarin.com/discussion/119450/create-thumbnail-from-video
【问题讨论】:
标签: video xamarin.forms xamarin.android xamarin.ios
如何使用 Xamarin Forms 获取视频的长度?我已使用以下链接从视频中获取缩略图,但我需要能够获取视频长度
https://forums.xamarin.com/discussion/119450/create-thumbnail-from-video
【问题讨论】:
标签: video xamarin.forms xamarin.android xamarin.ios
好的,我能够用我的大脑来解决这个问题。它在链接中使用了类似的方法:
对于安卓:
public string VideoLength(string url)
{
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.SetDataSource(url, new Dictionary<string, string>());
var length = retriever.ExtractMetadata(MetadataKey.Duration);
var lengthseconds = Convert.ToInt32(length) / 1000;
TimeSpan t = TimeSpan.FromSeconds(lengthseconds);
var timeformat = t.ToString();
return timeformat.ToString();
}
对于IOS:
public string VideoLength(string url)
{
AVAsset avasset = AVAsset.FromUrl((new Foundation.NSUrl(url)));
var length = avasset.Duration.Seconds.ToString();
var lengthseconds = Convert.ToInt32(length) / 1000;
TimeSpan t = TimeSpan.FromSeconds(lengthseconds);
var timeformat = t.ToString();
return timeformat.ToString();
}
【讨论】:
ToString,您基本上是将字符串转换为字符串,这使其成为额外的代码行,只需返回t.ToString();,您应该很好