Как предварительно кэшировать список видео перед их воспроизведением в обзоре exoplayer? - PullRequest
1 голос
/ 04 апреля 2020

Я использую exoplayer в recyclerview для рендеринга списка видео. Это повторное представление отображается в упражнении, и я знаю список URL-адресов видео перед открытием занятия.

Я хочу иметь возможность предварительно загрузить или кэшировать видео перед переходом к этому занятию. Видео обычно менее 1 минуты. Поэтому я не ищу решения для сглаживания потокового видео. Я просто хочу, чтобы видео находилось в кеше перед открытием действия, чтобы после открытия просмотра повторов видео начиналось без буферизации, как в tiktok.

Я нашел способ кэширования уже воспроизведенных видео, используя LocalCacheDataSourceFactory in

MediaSource videoSource =
 new ExtractorMediaSource(Uri.parse(mediaUrl),
                            new LocalCacheDataSourceFactory(context, 100 * 1024 * 1024, 5 * 1024 * 1024), new DefaultExtractorsFactory(), null, null);

Это позволяет мне только кэшировать видео, которые уже воспроизводятся, но не предварительно загружать или предварительно кэшировать их.

Найдена эта средняя статья от команды exoplayer, но нет другого примера интеграции для моего конкретное c требование. товар

1 Ответ

0 голосов
/ 12 апреля 2020

Оформить заказ на эту статью. Я написал пошаговое руководство по предварительной загрузке / предварительному кэшированию видео с использованием Exoplayer2.

В вашем случае вы должны создать рекурсию или циклический метод кэширования в фоновом потоке.

Видео предварительная загрузка / предварительное кэширование с использованием Exoplayer 2 в Android

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...