MediaPlayerElement не воспроизводит звук на ПК, но работает на телефоне - PullRequest
0 голосов
/ 05 мая 2019

Я установил MediaPlayerElement в XAML и играю некоторые звуки из папки «Музыка». Он работает, когда я тестирую его на телефоне, но не на моем компьютере с таким сообщением об ошибке:

Ошибка: неподдерживаемый тип видео или путь к файлу

У меня уже есть Google, некоторые предложения говорят, что приложение должно быть установлено, чтобы иметь доступ к файлам (например, к музыкальному файлу)

Это XAML:

<MediaPlayerElement Name="mediaPlayerElement" AutoPlay="False" AreTransportControlsEnabled="True" Stretch="UniformToFill"/>

Что касается C #:

private void playSound(object sender, ItemClickEventArgs e)
        {// triggered when I click a sound
            var soundToPlay = (Sound)e.ClickedItem;
            mediaPlayer.Source = MediaSource.CreateFromUri(new Uri(this.BaseUri, soundToPlay.Path.ToString()));
            mediaPlayerElement.SetMediaPlayer(mediaPlayer);;
        }
public class Sound
    {
        public string Title { get; set; }
        public string Path { get; set; }
        public string Duration { get; set; }
        public ImageSource Poster { get; set; }
    }// and there is a class to get List<Sound>

Когда я отлаживал этот код; Оказывается,

soundToPlay

указывает на точное местоположение звука!

1 Ответ

0 голосов
/ 07 мая 2019

В сообщении об ошибке указано «Неподдерживаемый тип видео или путь к файлу», поэтому, прежде всего, для решения этой проблемы следует использовать файл хранения вместо пути:

mediaPlayer.Source = MediaSource.CreateFromStorageFile(videoFile);

И на самом деле нам нужно избегатьиспользуя путь.UWP, использующий классы StorageItems (т.е. StorageFolder и StorageFile), который обладает полными правами на файлы через процесс посредника.Он представляет собой файл, но не ограничивается объектами файловой системы, приложение работает с StorageFile и ему не нужно знать или заботиться о том, были ли данные получены на диске или в другом приложении.Таким образом, ваша работа с файлами становится проще.

...