Регулирование AdaptiveMediaSourceC#

Место общения программистов C#
Ответить
Anonymous
 Регулирование AdaptiveMediaSource

Сообщение Anonymous »

Я использую AdaptiveMediaSource для воспроизведения потокового видео HLS, однако проигрыватель, похоже, хочет как можно скорее загрузить фрагменты видео продолжительностью около 4 минут, прежде чем успокоиться, а затем загружать только новые сегменты со скоростью что игрок играет ими. Это окажет большее давление на мой сервер, чем хотелось бы. Есть ли способ ограничить это? Ни одно из свойств этого класса, похоже, на это не влияет.
Я пробовал добавить задержку в обработчик событий DownloadRequested, чтобы добавить задержку в процесс, если медиаплееры позиционируют находился за пределами диапазона ожидающих сегментов, например:

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

private async void MediaSource_DownloadRequested(AdaptiveMediaSource sender, AdaptiveMediaSourceDownloadRequestedEventArgs args)
{
...
if (args.ResourceType == AdaptiveMediaSourceResourceType.MediaSegment)
{
...
AdaptiveMediaSourceDownloadRequestedDeferral deferral = args.GetDeferral();
await Task.Delay(TimeSpan.FromSeconds(1.0));
deferral.Complete();
...
}
}
что действительно ограничивало запросы, но также, по-видимому, влияло на внутренние вычисления битрейта загрузки/воспроизведения, и качество видео переключалось на самое низкое доступное значение.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ediasource
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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