如何在 Xamarin Forms 中获取视频的长度

Ver*_*007 3 video xamarin.ios xamarin.android xamarin.forms

如何使用 Xamarin Forms 获取视频的长度?我已使用以下链接从视频中获取缩略图,但我需要能够获取视频长度

https://forums.xamarin.com/discussion/119450/create-thumbnail-from-video

Ver*_*007 6

好吧,我能够用我的大脑解决这个问题。它在链接中使用了类似的方法:

对于安卓:

    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();
    }
Run Code Online (Sandbox Code Playgroud)

对于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();

    }
Run Code Online (Sandbox Code Playgroud)