Как перевести UWP MediaElement в циклический режим при трансляции на телевизор?C#

Место общения программистов C#
Anonymous
Как перевести UWP MediaElement в циклический режим при трансляции на телевизор?

Сообщение Anonymous »

Я обнаружил, что при использовании UWP MediaElement (имя компонента: video) он хорошо работает в режиме цикла, если установлено, как показано ниже:

Код: Выделить всё

video.IsLooping = true;  // method 1
video.MediaEnded -= Video_MediaEnded;
video.MediaEnded += Video_MediaEnded;  // method 2

private void Video_MediaEnded(object sender, RoutedEventArgs e)
{
video.Position = new TimeSpan(0, 0, 1);
video.Play();
}
Но при трансляции источника на смарт ТВ (DLNA) режим петли вообще не работает.

Код: Выделить всё

private CastingConnection connection;

//Create a new casting connection to the device that's been selected
connection = (CastingDevice)castingDevicesList.SelectedItem).CreateCastingConnection();

//Register for events
connection.ErrorOccurred += Connection_ErrorOccurred;
connection.StateChanged += Connection_StateChanged;

//Cast the loaded video to the selected casting device.
CastingConnectionErrorStatus status = await connection.RequestStartCastingAsync(video?.GetAsCastingSource());
Я добавляю таймер, чтобы установить положение видео. по истечении определенного периода времени, например. 10 секунд, но не оказывает никакого влияния.

Код: Выделить всё

private void Timer_Tick(object sender, object e)
{
if (video.Position >= TimeSpan.FromSeconds(10))
{
video.Position = new TimeSpan(0, 0, 1);
}
}
Что посоветуете?
Я разместил свой демонстрационный код здесь: https://github.com/tomxue/BasicMediaCas ... ee/develop ветка: development
Попробовать может каждый.

Подробнее здесь: https://stackoverflow.com/questions/786 ... ng-to-a-tv

Вернуться в «C#»