Как играть в видео с формами Xamarin?
Я привел примеры здесь:
https://github.com/XLabs/Xamarin-Forms-Labs/wiki/Camera
И я могу получить изображение с камеры успешно.
Кроме того, я реализовал выбранное видео, но не могу воспроизвести видео...
В итоге я вставил окно браузера и воспроизвел видео с удаленной страницы после ее загрузки. Однако это не идея, я хочу воспроизвести видео в приложении после его выбора из файловой системы или самой камеры.
Кто-нибудь сумел сделать эту лабораторию xamarin forms/forms без необходимости ее реализации на каждой отдельной платформе вручную?
И если это ТОЛЬКО способ сделать это, любые примеры этого?
Большое вам спасибо!
Ответы
Ответ 1
Попробуйте использовать Media Plugin
Этот простой в использовании и удобный вид документации, приведенной на странице выше
media Плагин - это простой кросс-платформенный плагин для съемки фотографий и видео или выбора из галереи из общего кода.
Использование
Через проект Xamarin.Forms с кнопкой и изображением сделайте снимок:
takePhoto.Clicked += async (sender, args) =>
{
if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.PhotosSupported)
{
DisplayAlert("No Camera", ":( No camera avaialble.", "OK");
return;
}
var file = await CrossMedia.Current.TakePhotoAsync(new Media.Plugin.Abstractions.StoreCameraMediaOptions
{
Directory = "Sample",
Name = "test.jpg"
});
if (file == null)
return;
DisplayAlert("File Location", file.Path, "OK");
image.Source = ImageSource.FromStream(() =>
{
var stream = file.GetStream();
file.Dispose();
return stream;
});
};
Ответ 2
Вы можете проверить компонент видеопроигрывателя в хранилище компонентов Xamarin Forms. Он позволяет отображать собственный видеопроигрыватель на iOS, Android и Windows Phone. В приведенном ниже фрагменте кода показан простейший пример простое его удаление и его использование. У вас также есть возможность подключаться к таким событиям, как воспроизведение, приостановка, остановка, завершение и т.д. Вы можете контролировать громкость, автовоспроизведение и повторять между прочим.
https://github.com/adamfisher/Xamarin.Forms.VideoPlayer
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:o="clr-namespace:Octane.Xam.VideoPlayer;assembly=Octane.Xam.VideoPlayer"
x:Class="VideoPlayerSamples.VideoPlayerBasicExamplePage"
Title="Basic Video Player">
<o:VideoPlayer Source="http://vjs.zencdn.net/v/oceans.mp4" />
</ContentPage>
Отказ от ответственности: Это мой компонент.