Миниатюры видео в формах Xamarin - PullRequest
0 голосов
/ 05 июля 2019

Есть ли способ получить эскиз видео с помощью форм Xamarin?

Я использую плагин Xam.Plugin.Media, чтобы снимать и выбирать видео и сохранять их в определенном месте.Можно ли также сохранить миниатюру видео?

// Выбор видео

закрытая асинхронная пустота BtnPick_Clicked (отправитель объекта, EventArgs e) {await CrossMedia.Current.Initialize ();

        try
        {
            var file = await CrossMedia.Current.PickVideoAsync();
            if (file == null)
                return;
            await StoreVideos(file.GetStream());
        }
        catch (Exception ex)
        {
            Debug.WriteLine(ex.Message);
        }
    }

// ВзятьВидео

    private async void BtnTake_Clicked(object sender, EventArgs e)
    {
        var file = await CrossMedia.Current.TakeVideoAsync(new StoreVideoOptions

        {
            Name = "video.mp4",
            Directory = "DefaultVideos",
        });
        await StoreVideos(file.GetStream());

        if (file == null)
            return;
    }

    public async Task<string> StoreVideos(Stream videoStream)
    {
        var storageVideo = await new FirebaseStorage("adam-00000.appspot.com")
            .Child("ProfileVideos")
            .Child(App.UserID + "-" + App.VideoName + ".mp4")

            .PutAsync(videoStream);

        string imgurl = storageVideo;
        return imgurl;
    }

Я хочу взять эскиз видео, сохранить его, а затем загрузить его в Firebase.

1 Ответ

1 голос
/ 08 июля 2019

Нет, вы не вводите [Android.Runtime.Register("android/media/ThumbnailUtils", ApiSince=8, DoNotGenerateAcw=true)] public class ThumbnailUtils : Java.Lang.Objec в свой код, вы просто добавляете это using Android.Media; в свой код, а затем вызываете этот метод ThumbnailUtils.CreateVideoThumbnail(filePath,kind);, чтобы создать миниатюру видео, похожую на эту ссылку. https://stackoverflow.com/a/44304943/10627299

Примечание: этот метод подходит только для платформы Android. Если вы используете формы, вы должны добиться этого с помощью службы зависимости.

...