2015-05-31 6 views
3

Я создаю приложение iOS, которое будет транслировать видео с максимальной длиной 15 секунд. Я читал хорошие вещи о HLS, поэтому я транскодировал видео с размером сегмента 5 секунд. Хорошо, что если первая часть видео занимает слишком много времени для загрузки, мы можем вернуться к более низкому качеству в течение следующих 10 секунд.Полезно ли использовать HLS для коротких видеороликов (максимум 15 секунд)?

Однако я не уверен, что дополнительная сложность того стоит. Основным недостатком является то, что нам нужно перекодировать дополнительные видео для Интернета. Другая проблема заключается в том, что AVPlayer на iOS - это в основном черный ящик, и было бы сложно или невозможно создавать такие функции, как кеширование сегментов на диск или повторное использование измерений пропускной способности между видео. Я думаю, нам нужно было бы построить собственный HLS-плеер с нуля, чтобы мы могли использовать эти функции, и это потребует больших усилий.

+0

Как вы управляли своим кодом? У меня есть аналогичная проблема, в которой в настоящее время используются сегменты 8 секунд с Amazon, но поскольку мои видеоролики длится всего 15 секунд, он быстро загружается, но затем останавливается посередине, чтобы загрузить следующий сегмент ... Я не уверен, это лучший подход. – Jorge

ответ

2

Если видео длится всего 15 секунд, может случиться чрезмерное использование HLS. Да AVPlayer - это черный ящик, и по моему опыту я не видел, чтобы он передавал битрейт переключения после игры только одного сегмента. Я думаю, что он ведет себя совершенно противоположно, т. Е. Начинает играть с более низкого битрейта, а затем сталкивается с более высоким битрейтом (не совсем уверен в этом).

О написании пользовательского плеера Вы можете отправлять все запросы с AVPlayer через локальный прокси-сервер http и пытаться установить там логику интеллектуального кэширования. Я видел, как некоторые приложения делают это для контента, защищенного DRM, но его использование для контента, не относящегося к DRM, не может быть одобрено магазином приложений.

+0

Спасибо за ваш ответ! Я согласен с вашим предложением использовать локальный HTTP-прокси, я думаю, что я это сделаю. Это так расстраивает, потому что NSURLRequest имеет отличную встроенную поддержку кэширования, но для ее подключения требуется так много шаблонов. – ndbroadbent

Смежные вопросы