Попытка использовать libvlcsharp.forms в проекте xamarinForms. Необходимо воспроизвести видеофайлы ресурсов.
Установлен libVLCsharp.Forms, VideoLan.LibVL C. Android, VideoLan.LibVL C. IOS
Скопирован файл mp4 в iosProject / Ресурсы; помечен как BundleResource. Скопировал тот же файл в androidProject / Resources / raw; помечен как AndroidResource
- iOS может воспроизводить с inte rnet
- Anroid может воспроизводить тот же сетевой адрес, что и iOS
- ios может воспроизводить ресурс файл
- android не может воспроизвести один и тот же файл ресурсов
Ошибка > ошибка с мультимедийным файлом: //// BigBuckBunny. mp4
Думал, мне не понравился мой формат файла mp4 или что-то в этом роде. скачал файл, который он мог воспроизвести с URL. попробовал это вместо этого. те же результаты.
Help !!!
Хотя он (android) может воспроизводить знаменитый BigBuckBuny с URL> http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4, он не может воспроизводить загруженное видео и скопированы в AndroidProject / Resource / raw
XAML-часть:
<ContentPage
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ParkinsonMobileApp.Pages.PhysicalActivitiesVideoDetail"
Padding="0"
Title="HomePage"
FlowDirection="LeftToRight"
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
ios:Page.UseSafeArea="False"
NavigationPage.HasNavigationBar="False"
xmlns:customViews="clr-namespace:ParkinsonMobileApp.Views"
BackgroundColor="White"
xmlns:vlc="clr-namespace:LibVLCSharp.Forms.Shared;assembly=LibVLCSharp.Forms"
Appearing="ContentPage_OnAppearing"
Disappearing="ContentPage_Disappearing">
<AbsoluteLayout
Padding="0"
Margin="0"
HorizontalOptions="Fill"
VerticalOptions="Fill">
<Image
x:Name="imgViewBackground"
Source="viewBackgroundBlurred.png"
Aspect="AspectFill"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0,0,1,1" />
<vlc:MediaPlayerElement
x:Name="vlcPlayer"
MediaPlayer="{Binding MediaPlayer}"
LibVLC="{Binding LibVLC}"
EnableRendererDiscovery="True"
Padding="0"
Margin="0"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0,0,1,1" />
<customViews:CustomNavigationBar
HorizontalOptions="Fill"
VerticalOptions="Start"
Padding="0"
Margin="0"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0,0,1,1"
Theme="White"
ImgBackgroundIsVisible="False"
ButBackDisplayed="True"
ButsOnRightDisplayed="False"
TitleText="Egzersiz 001"
TitleIsDisplayed="True"
BackgroundColor="Transparent"
backClicked="CustomNavigationBar_backClicked" />
</AbsoluteLayout>
CodeBehind dataBinding:
void ContentPage_OnAppearing(object sender, System.EventArgs e)
{
base.OnAppearing();
//pageViewModel = new VieoDetailViewModel("file://android_asset/024_1.mp4");
//pageViewModel = new VieoDetailViewModel("024_1.mp4");
pageViewModel = new VieoDetailViewModel("BigBuckBunny.mp4");
BindingContext = pageViewModel;
//MessagingCenter.Send(this, "AllowLandscape");
}
DataBinding Модель:
public class VieoDetailViewModel : ViewModelBase
{
/// <summary>
/// Initialize LibVLC and playback when page appears
/// </summary>
public VieoDetailViewModel(String filePath)
{
Core.Initialize();
LibVLC = new LibVLC();
var media = new Media(LibVLC,
//"http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4",
filePath,
//FromType.FromLocation
FromType.FromPath
);
MediaPlayer = new MediaPlayer(media) { EnableHardwareDecoding = true };
//MediaPlayer = new MediaPlayer(media);
MediaPlayer.Play(media);
}
/// <summary>
/// Gets the <see cref="LibVLCSharp.Shared.LibVLC"/> instance.
/// </summary>
public LibVLC _LibVLC;
public LibVLC LibVLC
{
get
{
return _LibVLC;
}
set
{
_LibVLC = value;
OnPropertyChanged("LibVLC");
}
}
/// <summary>
/// Gets the <see cref="LibVLCSharp.Shared.MediaPlayer"/> instance.
/// </summary>
public MediaPlayer _MediaPlayer;
public MediaPlayer MediaPlayer
{
get
{
return _MediaPlayer;
}
set
{
_MediaPlayer = value;
OnPropertyChanged("MediaPlayer");
}
}
}