У меня есть потоковое видео приложение, и я хотел бы знать, как я могу определить, является ли приложение буферизацией или нет.Как определить буферизацию в AVPlayer?
В AVPlayer есть currentItem.isPlaybackLikelyToKeepUp
boolean, который сообщает вам, когда буфер воспроизведения, скорее всего, будет поддерживать текущую скорость загрузки, и currentItem.isPlaybackBufferEmpty
, который сообщает вам, когда буфер воспроизведения пуст.
Проблема возникает, когда видео воспроизводится, видео приостанавливается, потому что интернет слишком медленный. Если я затем нажимаю кнопку воспроизведения, то rate
плеера - 1, но он не воспроизводится.
Как я могу обнаружить, что видео приостановлено, потому что оно буферизуется? currentItem.isPlaybackBufferEmpty
верно даже тогда, когда видео играет ...
EDIT: Я объединил эти 2 и теперь загрузчик я показываю, чтобы отобразить буферизация отображается только если currentItem.isPlaybackBufferEmpty && !currentItem.isPlaybackLikelyToKeepUp
, загрузчик теперь только показывает несколько секунд после старта видео играть.