Видео воспроизведения: Программы для просмотра видео скачать бесплатно

Содержание

Беглый просмотр или воспроизведение видео в iMovie на Mac

iMovie

Поиск по этому руководству

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

Помимо обычного воспроизведения видео, можно бегло просматривать видео, перемещая указатель назад и вперед по клипам. Беглое воспроизведение удобно использовать для быстрого предварительного просмотра видео или поиска определенного момента.

Воспроизвести видео

В приложении iMovie  на Mac выполните одно из следующих действий.

  • В браузере или на временной шкале наведите указатель на точку клипа, с которой требуется начать воспроизведение, и нажмите клавишу пробела.

  • В браузере или на временной шкале нажмите на точку клипа, с которой требуется начать воспроизведение, а затем нажмите кнопку воспроизведения под окном просмотра.

    Чтобы остановить воспроизведение, нажмите клавишу пробела или кнопку паузы под окном просмотра.

Воспроизведение клипов и фильмов в полноэкранном режиме

  1. В приложении iMovie  на Mac нажмите на фильм на временной шкале или на клип в браузере, чтобы поместить указатель воспроизведения в точку, с которой нужно начать воспроизведение.

  2. Нажмите кнопку «Воспроизвести в полноэкранном режиме»  под окном просмотра.

Для выхода из полноэкранного режима нажмите клавишу Esc или кнопку «Выйти из полноэкранного режима» под окном просмотра.

Воспроизведение клипа или диапазона

Циклическое воспроизведение видео

  1. В приложении iMovie  на Mac выберите «Вид» > «Зациклить воспроизведение», чтобы рядом с этим пунктом меню появилась галочка.

  2. Наведите указатель на точку, с которой требуется начать воспроизведение, и нажмите клавишу пробела.

    Если навести указатель на клип в браузере, будет зациклен отдельный клип. Если навести указатель на фильм на временной шкале, будет зациклен весь фильм.

    Совет. Чтобы зациклить часть клипа или фильма, выберите часть клипа в браузере или на временной шкале, затем выберите «Вид» > «Воспроизвести выбранное».

Включение или выключение звука во время беглого просмотра

Максимальное количество символов: 250

Не указывайте в комментарии личную информацию.

Максимальное количество символов: 250.

Благодарим вас за отзыв.

«Воспроизведение видео невозможно. Повторите попытку позже».

  • На главную страницу справки

Что делать, если вы видите на iPhone, iPad или iPod touch сообщение об ошибке

Воспроизведение видео невозможно. Повторите попытку позже.

Обычно это указывает на проблему с сетевым подключением, из-за которой вашему устройству не удается получить доступ к сервису Netflix. Чтобы устранить проблему, выполните описанные ниже действия.

Перезапустите свое устройство iPhone, iPad или iPod touch

  1. Нажмите и удерживайте одновременно боковую кнопку и одну из кнопок регулировки громкости, пока не появятся ползунки. Сдвиньте верхний ползунок, чтобы полностью выключить устройство.

    • Если ползунки не отображаются, нажмите и удерживайте кнопку Sleep/Wake, пока не появится красный ползунок, а затем сдвиньте его.

  2. Через 10 секунд нажмите кнопку Sleep/Wake.

  3. После включения устройства попробуйте открыть Netflix снова.

Проверка совместимости сети с Netflix

Общедоступные сети:

Если вы используете Wi-Fi в кафе, отеле или школе, узнайте, не заблокированы ли в сети такие сервисы, как Netflix.

Частные сети:

Убедитесь, что скорость подключения соответствует рекомендуемой. Если вам требуется помощь, обратитесь к интернет-провайдеру.

Скорость подключения через мобильные точки доступа, сотовые и спутниковые сети часто не соответствует рекомендуемой скорости подключения для использования Netflix.

Возобновление работы домашней сети

Для начала убедитесь, что отключили все ваши устройства и сетевое домашнее оборудование на 30 секунд, прежде чем подключать устройства по одному.

  1. Отключите ваше мобильное устройство.

  2. Отключите модем (и беспроводной маршрутизатор, если это отдельное устройство) от электросети на 30 секунд.

  3. Подключите модем и подождите, пока индикаторные лампы не перестанут мигать. Если используется отдельный маршрутизатор, подключите его и подождите, пока новые индикаторы не перестанут мигать.

  4. Включите ваше устройство и попробуйте подключиться к Netflix снова.

Улучшение сигнала Wi-Fi

Чтобы улучшить сигнал Wi-Fi:

  • Поместите устройство ближе к роутеру. По возможности роутер и устройство должны находиться в одном помещении.

  • Поместите роутер подальше от других беспроводных устройств и техники.

  • Убедитесь, что роутер размещен в открытом пространстве и не находится непосредственно на полу. Как правило, сигнал роутера сильнее, если он размещен на столе или полке.

Восстановление настроек подключения по умолчанию

Если вы меняли настройки подключения на своем устройстве, вам потребуется восстановить настройки по умолчанию.

К таким настройкам относятся:

  • Пользовательские настройки модема.

  • Настройки Виртуальной частной сети (VPN) или прокси-сервиса.

  • Пользовательские настройки DNS.

Если вам требуется помощь с изменением настроек подключения, обратитесь к производителю устройства.

После успешного сброса до заводских настроек попробуйте снова запустить Netflix.

Обратитесь к интернет-провайдеру

Если эти действия не решают проблему, обратитесь к интернет-провайдеру, чтобы решить проблему сетевого подключения.

Ваш интернет-провайдер может:

  • Проверьте, работает ли интернет в вашем районе.

  • Устранение частых проблем с роутером или модемом и некорректными настройками сети.

  • Перезагрузка или сброс настроек вашей сети.

Предоставьте интернет-провайдеру следующую информацию:

Во время разговора с интернет-провайдером:

  • Через веб-браузер посетите сайт fast. com, чтобы проверить скорость и соединение напрямую с сайтом Netflix.

  • Попробуйте запустить Netflix снова, чтобы убедиться, что проблема решена.

Другие статьи по теме

Другие статьи по теме

Текущее состояние видео (Часть 1) — Smashing Magazine

  • 14 минут чтения
  • Видео, СМИ, Производительность, Оптимизация, Руководства
  • Поделиться в Twitter, LinkedIn
Об авторе

Дуг возглавляет отдел по связям с разработчиками в Orkes, изучая пересечение медиа и веб-производительности. Эксперт по разработчикам Google и автор книги О’Рейли High… Больше о Дуг ↬

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

Использование видео в Интернете растет по мере того, как устройства и сети становятся быстрее и способны обрабатывать видеоконтент. Исследования показывают, что сайты с видео увеличивают вовлеченность на 80%. Сайты электронной коммерции с видео имеют более высокую конверсию, чем сайты без видео.

Но добавление видео может быть платным. Видео (представляющие собой файлы большего размера) увеличивают время загрузки страницы, и исследования производительности показывают, что более медленные страницы имеют обратный эффект в виде снижения вовлеченности клиентов и снижения конверсии. В этой статье я рассмотрю важные показатели для балансировки производительности и воспроизведения видео в Интернете, рассмотрю, как сегодня используется видео, и предоставлю передовые методы доставки видео в Интернете.

Одним из первых шагов к повышению удовлетворенности клиентов является ускорение загрузки страницы . Google показал, что мобильные страницы, загрузка которых занимает более трех секунд, теряют 53% своей аудитории из-за отказа. Другие исследования показывают, что при повышении производительности сайта увеличивается его использование и продажи.

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

Рекомендуем прочитать : Контрольный список производительности внешнего интерфейса 2018 [PDF, Apple Pages]

Видео в Интернете сегодня

Чтобы изучить состояние видео в Интернете сегодня, я буду использовать данные из HTTP-архива . HTTP Archive использует WebPageTest для сканирования производительности 1,2 миллиона мобильных и настольных веб-сайтов каждые две недели, а затем сохраняет данные в Google BigQuery.

Обычно проверяется только главная страница каждого домена (имеется в виду www.cnn.com запускается, а www.cnn.com/politics — нет). Эти данные могут помочь нам понять, как использование видео в Интернете влияет на производительность веб-сайтов. Мобильные тесты проводились на эмулированном Motorola G4 с подключением к Интернету 3G (1,6 МБ/с входящего трафика, 768 Кбит/с исходящего трафика, 300 мс RTT), а настольные тесты запускали Chrome при кабельном соединении (5 МБ/с входящего трафика, 1 МБ/с исходящего трафика, 28 мс RTT). Я буду использовать набор данных от 1 августа 2018 года.

Больше после прыжка! Продолжить чтение ниже ↓

сайтов, загружающих видео

В качестве первого шага к изучению сайтов с видео нам следует изучить сайты, которые загружают видеофайлы при загрузке страницы. В наборе данных HTTP Archive есть 35 000 мобильных сайтов и 55 000 десктопных сайтов с загрузками видеофайлов (это 3% всех мобильных сайтов и 4,5% всех десктопных сайтов). Сравнивая настольные компьютеры с мобильными, мы обнаруживаем, что 30 000 из этих сайтов имеют видео как на мобильных, так и на настольных компьютерах (осталось около 5 800 мобильных сайтов без видео на настольных компьютерах).

Мобильные и настольные сайты с видео (большой предварительный просмотр)

Средняя мобильная страница с видео весит здоровенные 7 МБ (на 583% больше, чем 1,2 МБ для среднего мобильного сайта). Это увеличение не полностью объясняется только видео (2,5 МБ). Поскольку сайты с видео, как правило, более многофункциональны и визуально привлекательны, они также используют больше изображений (средний сайт имеет более чем на 1 МБ больше), CSS и Javascript. В приведенной ниже таблице также показано, что медианный показатель SpeedIndex (показатель того, насколько быстро контент появляется на экране) для сайтов с видео на 3,7 с медленнее, чем для обычного мобильного сайта, для загрузки которого требуется целых 11,5 с.

SpeedIndex Bytes Total Bytes Video Bytes CSS Bytes Images Bytes JS
Video 11544 6,963,579 2,526,098 80,327 1,596,062 708,978
all sites 7780 1,201,802 0 40,648 449,585 336,973

Это ясно показывает, что более интерактивные сайты с видеоконтентом загружаются (в среднем) дольше, чем сайты без видео. Но можем ли мы ускорить доставку видео? Что еще мы можем узнать из имеющихся данных?

Видеохостинг

При проверке доставки видео файлы подаются из CDN или поставщика видео, или разработчики размещают видео на своих собственных серверах? Изучив домен видео, доставляемых на мобильные устройства, мы обнаружили, что 12 163 домена используются для доставки видео, что указывает на то, что ~49% сайтов размещают собственные видеофайлы. If we stack rank the domains by frequency, we are able to determine the most common video hosting solutions:

Video Doman cnt %
fbcdn.net 116788 67%
AKAMAIHD.NET 11170 6%
GoogleVideo.com 10394 6%
.0069 3170 2%
amazonaws. com 1939 1%
cloudfront.net 1896 1%
pixfs.net 1853 1%
akamaized.net 1573 1%
tedcdn.com 1507 1%
contentabc.com 1507 1%
vimeocdn.ccom 1373 1%
dailymotion.com 1337 1%
teads.tv 1022 1%
youtube.com 1007 1%
adstatic.com 998 1%

Ведущие CDN и домены Facebook, Akamai, Google, Cloudinary, AWS и Cloudfront лидируют, что неудивительно. Тем не менее, интересно видеть, что YouTube и Vimeo так далеко в списке, поскольку они являются двумя самыми популярными сайтами для обмена видео.

Давайте посмотрим на доставку видео с YouTube, Vimeo и Facebook:

Количество видео на YouTube

По умолчанию страницы со встроенным видео с YouTube фактически не загружают никаких видеофайлов — только сценарии и замещающее изображение, поэтому они не отображаются. в запросе ищет сайты с загрузками видео. Одна из загрузок Javascript для видеопроигрывателя YouTube — www-embed-player.js . При поиске этого файла мы находим 69 тысяч экземпляров на 66 647 мобильных сайтах. Эти сайты имеют средний индекс скорости 10 700 и использование данных 3,31 МБ — лучше, чем сайты с загруженным видео, но все же медленнее, чем сайты без видео вообще. Увеличение данных напрямую связано с большим количеством изображений и Javascript (как показано ниже).

Speedindex Bytes Total Bytes Video Bytes CSS Bytes Images Bytes JS
Video 11544 6,963,579 2,526,098 80,327 1,596,062 708,978
All sites 7780 1,201,802 0 40,648 449,585 336,973
YouTube script 10700 3,310,000 0 126,314 1,733,473 1,005,758

Vimeo Video Counts

There are 14,148 requests for Vimeo videos in HTTP Archive for Video playback. Я вижу только 5848 запросов к файлу player.js (в формате https://f.vimeocdn.com/p/3.2.0/js/player.js — подразумевая, что возможно много видео на одном странице или, возможно, в другом месте для файла видеоплеера.В HTTP-архиве представлено 17 различных версий плеера, наиболее популярными из которых являются 3.1.5 и 3.1.4:

9
URL cnt
https://f.vimeocdn.com/p/3.1.5/js/player.js 1832
https:// f.vimeocdn.com/p/3.1.4/js/player.js 1057
https://f.vimeocdn.com/p/3.1.17/js/player.js 730
https://f.vimeocdn.com/p/3.1.8/js/player.js 507
https://f.vimeocdn.com/p/3.1.10/js/player.js 432
https://f. vimeocdn.com/p/3.1.15/js/ player.js 352
https://f.vimeocdn.com/p/3.1.19/js/player.js 153
40 90 com/p/3.1.2/js/player.js 117
https://f.vimeocdn.com/p/3.1.13/js/player.js 105

Ни одна из библиотек Vimeo не дает прироста производительности — все страницы имеют одинаковое время загрузки.

Примечание : Использование www-embed-player.js для YouTube или https://f.vimeocdn.com/p/*/js/player.js для Vimeo — хорошие отпечатки пальцев для браузеров с чистым кешем, но если клиент ранее просматривал сайт со встроенным видео, этот файл может уже находиться в кеше браузера и, следовательно, не будет повторно запрошен. Но, как недавно заметил Энди Дэвис, это небезопасное предположение.

Facebook Video Counts

Удивительно, но в данных HTTP-архива 67% всех видеозапросов поступает из CDN Facebook. Оказывается, в Chrome сторонние виджеты Facebook загружают 30% всех видео, размещенных внутри виджета (этот эффект не проявляется в Safari или в Firefox). Оказывается, сторонний виджет, добавленный всего несколькими строками кода, отвечает за 57% всего видео, просматриваемого в HTTP-архиве.

Типы видеофайлов

Большинство видео на протестированных страницах имеют формат MP4. Если мы посмотрим на все скачанные видео (исключая видео с Facebook), то получим следующее представление:

File extension Video count %
.mp4 48,448 53%
.ts 18,026 20%
.webm 3,946 4%
14,926 16%
.m4s 2,017 2%
. mpg 1,431 2%
.mov 441 0%
.m4v 407 0%
.swf 251 0%

Of the files with no extension — 10k — это googlevideo.com файлов.

Что мы можем узнать об этих файлах? Давайте рассмотрим каждый тип файла, чтобы узнать больше о доставляемом контенте.

Я использовал FFPROBE для запроса 34 тыс. уникальных файлов MP4 и получил данные для 14 700 видео (многие видео были изменены или удалены за 3 недели с момента захвата HTTP-архива до анализа).

Видеоданные MP4

Из 14,7 тыс. видео в наборе данных 8 564 содержат звуковые дорожки (58%). Для более коротких видеороликов, воспроизводимых автоматически, или видеороликов, воспроизводимых в фоновом режиме, звук не требуется, поэтому удаление звуковой дорожки — отличный способ уменьшить размер файла (и ускорить доставку) ваших видеороликов.

Следующим важным аспектом быстрой загрузки видео являются размеры. Чем больше размеры (а в случае с видео нужно учитывать три размера: ширина × высота × время ), тем больше будет видеофайл.

Продолжительность видео в формате MP4

Большинство исследованных 14-килобайтных видео короткие: средняя продолжительность (50-й процентиль) составляет 21 с. Однако продолжительность 10% опрошенных видеороликов превышает 2 минуты. Случаи использования здесь, конечно, будут разделены, но для коротких циклов видео или фоновых видео — более короткие видео будут использовать меньше данных и загружаться быстрее.

Распределение продолжительности видео (большой предварительный просмотр)

Ширина и высота видео MP4

Размеры видео на экране определяют, сколько пикселей будет использовать каждый кадр. На приведенной ниже диаграмме показаны различные ширины видео, которые подаются на мобильное устройство. (Обратите внимание, что Moto G4 имеет размер экрана 1080×1920, и все страницы просматриваются в портретном режиме).

Количество видео по ширине (большой предварительный просмотр)

Как показывают данные, ширина двух наиболее часто используемых видео значительно превышает ширину экрана G4 (в портретном режиме). Целых 49% всех видео имеют ширину более 1080 пикселей. Alcatel 1x, новое устройство Android Go, имеет разрешение 480×9.60-пиксельный экран. Ширина 77 % видеороликов, представленных в выборке, превышает 480 пикселей.

По мере уменьшения размера видео уменьшается и размер файла (и, следовательно, время доставки видео). Это основная причина изменения размера видео.

Почему эти видео такие большие? Если мы сопоставим видеоролики, демонстрируемые на мобильных устройствах и компьютерах, мы обнаружим, что 18% видео, демонстрируемых на мобильных устройствах, — это те же видео, которые демонстрируются на настольных компьютерах. Это «проблема», решенная для изображений несколько лет назад с помощью адаптивных изображений. Показывая видео разного размера на устройства разного размера, мы можем гарантировать, что красивые видео будут показываться, но в размере и измерении, которые имеют смысл для устройства.

Битрейт видео MP4

Битрейт видео, доставляемого на устройство, оказывает большое влияние на качество воспроизведения видео. Тесты HTTP-архива выполняются на 3G-соединении со скоростью загрузки 1,6 Мбит/с. Для воспроизведения (без задержек) загрузка должна быть быстрее, чем воспроизведение. Предоставим видеофайлам 80% доступного битрейта (1,3 Мбит/с). 47% видео в выборке имеют битрейт более 1,3 Мбит/с, а это означает, что при воспроизведении этих видео через 3G-соединение они с большей вероятностью зависнут, что приведет к недовольству клиентов. 27 % видео имеют битрейт выше 2,5 МБ/с, 10 % — выше 5 МБ/с, а 35 видео, показываемых на мобильных устройствах, имеют битрейт > 10 МБ/с. Эти большие видео вряд ли будут воспроизводиться без задержек на многих подключениях — стационарных или мобильных.

Наблюдаемые битрейты видео (большой предварительный просмотр)

Что приводит к более высоким битрейтам

Видео большего размера, как правило, имеют более высокий битрейт, поскольку видео большего размера требуют гораздо больше данных для заполнения дополнительных пикселей на устройстве. Сопоставление битрейта каждого видео с шириной подтверждает это: видео с шириной 1280 (оранжевый) и 1920 (серый) имеют гораздо более широкое распределение битрейта (больше данных указывает на правую часть диаграммы). Столбец, отмеченный желтым цветом, обозначает 136 видео шириной 19.20 и битрейт 10-11 Мбит/с.

Битрейт против. Ширина видео (большой предварительный просмотр)

Если мы визуализируем только видео с битрейтом более 1,6 Мбит/с, становится ясно, что более высокие разрешения экрана (1280 и 1920) отвечают за более высокий битрейт видео.

Высокий битрейт и ширина видео (большой предварительный просмотр)

MP4: HTTP против HTTPS

HTTP2 переопределил доставку контента с мультиплексными подключениями, где требуется только одно подключение на сервер. Обеспечивает ли HTTP2 существенное улучшение доставки контента для больших файлов, таких как видео? Если мы посмотрим на статистику из HTTP-архива:

HTTP1 против HTTP2 (большой предварительный просмотр)

Опуская 116 000 видео Facebook (все они отправлены через HTTP2), мы видим, что соотношение между HTTP 1. 1 и HTTP2 примерно 50:50. Однако HTTP1.1 может использовать HTTPS, и когда мы фильтруем использование HTTPS, мы обнаруживаем, что 81% видеопотоков отправляются через HTTPS, при этом HTTP2 используется немного больше, чем HTTPS1.1 (41%:36%)

HTTP vs. .HTTP2 и безопасный (Большой предварительный просмотр)

Как видите, работа над сравнением скорости доставки видео по протоколам HTTP и HTTP2 еще не завершена.

HLS Video Streaming

Потоковое видео с адаптивным битрейтом — идеальный способ доставки видео конечному пользователю. Несколько версий каждого видео создаются с разными размерами и битрейтом. Список доступных потоков отображается на воспроизводящем устройстве, и видеопроигрыватель на устройстве может выбрать наиболее подходящий поток в зависимости от размера экрана устройства и доступных сетевых условий. В наборе данных HTTP-архива, который я исследовал, содержится 1065 файлов манифеста (и 14 000 файлов видеопотока).

Воспроизведение видеопотока

Одним из ключевых показателей потокового видео является максимально быстрый запуск видео. Хотя в файле манифеста есть список доступных потоков, проигрыватель не имеет представления о доступной пропускной способности сети в начале воспроизведения. Чтобы начать потоковую передачу, и поскольку игрок должен выбрать поток, он обычно выбирает первый в списке. Чтобы облегчить быстрый запуск видео, важно разместить правильный поток в верхней части файла манифеста.

Примечание : Использование Chrome Network Info API для создания файлов манифеста на лету может быть хорошим способом быстрой оптимизации видеоконтента при запуске.

Один из способов обеспечить быстрый запуск видео — начать с сегмента видео самого низкого качества, так как загрузка будет самой быстрой. Первоначальное качество видео может быть пиксельным, но по мере того, как проигрыватель лучше понимает качество сети, он может быстро настроиться на более подходящий (надеюсь, более качественный) видеопоток. Имея это в виду, давайте посмотрим на начальные битрейты потока в HTTP-архиве.

Начальный битрейт для видеопотоков (Большой превью)

Красная линия на графике выше обозначает 1,5 МБ/с (напомним, что мобильные тесты выполняются на скорости 1,6 МБ/с, и скачивается не только видеоконтент). Мы видим, что 30,5% всех потоков (все слева от строки) начинаются с начального битрейта выше 1,5 МБ/с (и поэтому вряд ли будут воспроизводиться при подключении 3G), 17% начинаются со скоростью выше 2 МБ/с.

Так что же происходит, когда загрузка видео идет медленнее, чем фактическое воспроизведение видео? Изначально плеер попытается загрузить файлы с (слишком) большим битрейтом, но, основываясь на скорости загрузки, поймет проблему. Затем проигрыватель переключится на загрузку видео с более низким битрейтом, чтобы загрузка происходила быстрее, чем воспроизведение. Проблема в том, что первоначальная попытка загрузки требует времени, а добавление задержки к началу воспроизведения видео приводит к отказу клиента.

Мы также можем просмотреть наиболее распространенные битрейты файлов . ts (файлов с видеоконтентом), чтобы увидеть, какие битрейты в конечном итоге загружаются на мобильные устройства. Эти данные включают начальный битрейт и любой последующий файл, загруженный во время запуска WebPageTest:

Наблюдаемые мобильные битрейты (большой предварительный просмотр)

Мы можем видеть две основные группы битрейтов потокового видео (100–300 КБ/с и более широкий пик от 300–1000). Мбит/с). Именно здесь мы ожидаем появления потоков, учитывая, что скорость сети ограничена 1,6 Мбит/с.

Сравнивая данные с десктопом, мобильные явно выше при более низких битрейтах, а десктопные потоки имеют высокие пики в диапазонах 500–600 и 800–900 кбит/с, чего не видно на мобильных устройствах.

Наблюдаемые битрейты потоковой передачи для мобильных устройств и настольных компьютеров (большой предварительный просмотр) Наблюдаемые битрейты для мобильных устройств и настольных компьютеров по сравнению с начальным битрейтом (большой предварительный просмотр)

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

Заключение

Видеоконтент в Интернете повышает вовлеченность и удовлетворенность клиентов. Страницы, которые загружаются быстро, имеют тот же эффект. Добавление видео на ваш веб-сайт замедлит время рендеринга страницы, что потребует баланса между общей загрузкой страницы и видеоконтентом. Чтобы уменьшить размер вашего видеоконтента, убедитесь, что у вас есть версии, соответствующие размерам мобильного устройства, и по возможности используйте более короткие видео.

Если воспроизведение ваших видео не является обязательным, следуйте по пути YouTube и Vimeo — загрузите все необходимые фрагменты, чтобы быть готовыми к воспроизведению, но фактически не загружайте какие-либо фрагменты видео, пока пользователь не нажмет кнопку воспроизведения. Наконец, если вы транслируете видео, начните с самого низкого качества, чтобы обеспечить быстрое воспроизведение видео.

В моем следующем посте на видео я остановлюсь на этих общих выводах и подробно расскажу, как решать потенциальные проблемы на примерах.

Создайте отличное впечатление от воспроизведения видео — WWDC22 — Видео

Больше видео

  • Узнайте, как использовать новейшие системные медиаплееры iOS и iPadOS для создания потрясающих мультимедийных приложений. Мы расскажем, как мы разработали обновленный проигрыватель, а также дадим рекомендации и советы, которые помогут вам создавать собственные мультимедийные возможности. Мы также рассмотрим Live Text для видео и покажем, как интегрировать межстраничные объявления и элементы управления скоростью воспроизведения в ваши приложения.

    Ресурсы

    Похожие видео

    WWDC22
  • Скачать

    ♪ ♪ Джейк: Привет, меня зовут Джейк. Я инженер в команде AVKit, и добро пожаловать в раздел Создание отличного опыта воспроизведения видео.

    В iOS и iPadOS 16 мы создали совершенно новый медиаплеер с нуля, привнеся совершенно новый внешний вид, предназначенный для того, чтобы сосредоточиться на содержимом и соответствовать более широкому спектру приложений. Мы также встроили множество новых моделей взаимодействия, которые делают использование этого нового медиаплеера еще более интуитивным и плавным, и мы думаем, что вам это понравится. На этом занятии мы подробно рассмотрим новый системный медиаплеер. Мы научимся создавать потрясающие впечатления от воспроизведения. Мы увидим несколько интересных новых функций визуального интеллекта, которые появятся в macOS и iOS. Я расскажу о совершенно новом интерфейсе межстраничных объявлений, который появится в новом медиаплеере, и расскажу о некоторых новых API, которые мы перенесли из tvOS. И, наконец, мы рассмотрим новую функцию в AVKit: выбор скорости воспроизведения. Для tvOS 15.0 мы переработали системный проигрыватель, привнеся совершенно новый внешний вид, а также множество новых функций и улучшений удобства использования системного проигрывателя. Что ж, мы услышали ваши просьбы. Рад сообщить, что мы также обновили системный проигрыватель iOS. Мы полностью переработали родной медиаплеер, приняв внешний вид проигрывателя tvOS, но переосмыслив его для сенсорного устройства. Мы удалили хром по всем направлениям, что позволило интерфейсу чувствовать себя естественным в более широком спектре приложений и придало игроку более современный вид. Давайте углубимся в некоторые изменения, которые мы сделали. Во-первых, мы поместили элементы управления воспроизведением/паузой и пропуском вперед и по центру, чтобы с ними было еще проще взаимодействовать. Мы также уменьшили интервал пропуска с 15 секунд до 10, что упрощает отслеживание того, как далеко вы прыгнули с помощью последовательных пропусков. Затем мы внесли несколько существенных улучшений в удобство использования временной шкалы. Мы удаляем ползунок, обозначающий текущую позицию временной шкалы. Вместо этого с временной шкалой теперь можно взаимодействовать из любого места на ползунке. Перетаскивание больше не должно начинаться с текущего временного маркера. Это еще больше упрощает поиск именно того места, куда вы хотите отправиться. Мы также заменили управление соотношением сторон видео на более интуитивно понятный жест масштабирования, который я покажу чуть позже. И, конечно же, новый пользовательский интерфейс отлично подходит для портретного контента.

    В iPadOS плеер легко интегрируется в систему с полной поддержкой клавиатур, трекпадов, мышей, игровых контроллеров и многого другого! Мы также добавили ряд новых способов взаимодействия с элементами управления, которые делают навигацию по содержимому и некоторые общие действия еще проще и интуитивно понятны. Давайте посмотрим на это. Во-первых, мы добавили новый способ изменения аспекта заливки видео. Теперь вы можете использовать жест щипка для перемещения по доступным уровням масштабирования. Сжатие перенесет видео в безопасную область дисплея. Сжатие увеличивает масштаб видео, чтобы полностью заполнить дисплей. Далее мы обрисовываем одно из наиболее распространенных взаимодействий — воспроизведение/пауза. Теперь вы можете коснуться центра экрана, даже когда элементы управления скрыты, чтобы воспроизвести и приостановить видео. И, наконец, мы добавили новый способ навигации по временной шкале мультимедиа. Теперь вы можете прокручивать временную шкалу из любой точки видео, используя те же действия, которые мы все знаем и любим в режимах прокрутки. Когда вы начинаете прокручивать видеокадры, интерфейс исчезает, оставляя только наиболее подходящий пользовательский интерфейс, позволяя сосредоточиться на контенте. Мы также перенесли некоторые новые функции из проигрывателя tvOS. AVPlayerViewController теперь поддерживает отображение заголовка контента, подзаголовка и описания непосредственно в полноэкранном пользовательском интерфейсе.

    Вы можете указать строки для каждого из них, передав AVMetadataItems в существующий API AVKit. Давайте посмотрим, как это делается. По умолчанию заголовок, подзаголовок и описание контента будут извлечены из метаданных мультимедиа. Однако при необходимости значения в мультимедиа можно переопределить с помощью API externalMetadata в AVPlayerItem.

    Заголовок можно добавить, создав AVMetadataItem с идентификатором commonIdentifierTitle и добавив его в свойство externalMetadata playerItems. Заголовки должны быть короткими и информативными, чтобы не загромождать пользовательский интерфейс. Точно так же здесь мы добавили подзаголовок, создав AVMetadataItem с идентификатором .iTunesMetadataTrackSubtitle. Подзаголовок будет отображаться над заголовком контента и должен состоять из нескольких слов, описывающих контент.

    Наконец, можно добавить описание с идентификатором .commonIdentifierDescription. Это отобразит шеврон справа от заголовка и подзаголовка. При выборе заголовка отобразится информационная панель с описанием содержимого. Описание должно состоять из нескольких предложений с дополнительной информацией о содержании. Нажатие в любом месте закроет информационную панель.

    Подводя итог, мы обновили системный проигрыватель iOS, придав ему совершенно новый внешний вид, новые упрощенные модели взаимодействия при первом касании, а также множество других улучшений. Используя AVPlayerViewController в своем приложении, вы получите полную поддержку системного проигрывателя — поддержку «картинка в картинке», SharePlay, визуальный анализ, встроенная поддержка Catalyst, поддержка нового оборудования и функций и многое, многое другое. И, конечно же, все это вы получаете всего несколькими строками кода. Теперь давайте поговорим о том, как вы можете создавать потрясающие возможности воспроизведения в своих приложениях. Когда мы решили изменить дизайн системного медиаплеера, мы сделали шаг назад по сравнению с тем, что мы создали в прошлом и что мы создали для других платформ, и мы спросили себя: «Что делает для хорошего взаимодействия с пользователем?» Мы хотели поделиться этим процессом с вами; как мы разработали новые плееры, почему мы разработали их именно так, как мы это сделали, и что, по нашему мнению, определяет удивительный медиа-опыт. Мы думаем, что есть три вещи, которые делают работу со СМИ великолепной. Опыт должен быть интуитивно понятным. Он должен казаться легким, знакомым, естественным, даже если вы никогда им не пользовались. Он должен быть тесно интегрирован как в ваше приложение, так и в систему. И, наконец, он должен быть доволен вперед. В конце концов, люди здесь, чтобы испытать медиа, и ваши приложения и дизайн должны отражать это. Теперь давайте углубимся в эти три вопроса, начав с того, чтобы сделать ваш опыт интуитивно понятным. Часто, когда приложение кажется интуитивно понятным, бывает трудно понять, почему. Ты просто узнаешь это, когда увидишь. Так что же на самом деле делает интерфейс или опыт интуитивно понятным? И как вы можете спроектировать для этого? Мы думаем, что все начинается с знакомства. Когда вы можете опираться на свой прошлый опыт, чтобы понять что-то новое, это интуитивно понятно. Когда вам не нужно объяснять, как это работает, или даже думать о том, как это работает, — все работает именно так, как вы ожидаете.

    Каждый из нас ежедневно накапливает опыт, взаимодействуя с технологиями и реальным миром. Оба они являются отличными источниками экспериментального знакомства, и часто именно с них мы начинали при разработке новых системных медиаплееров. Есть много типов опыта, из которых можно черпать интуицию, но я хочу сосредоточиться на двух; два, на которые мы чаще всего полагались при разработке системных медиаплееров. Платформенные парадигмы и реальный мир. Первая исходит из нашего опыта использования технологий каждый день. Годы использования телевизионных пультов говорят вам, что клавиши со стрелками перемещают фокус влево и вправо. Точно так же нажатие кнопки громкости на сенсорном устройстве отключит звук. Эти взаимодействия кажутся интуитивно понятными, потому что они знакомы. Вы можете использовать эти типы знакомых взаимодействий в своих мультимедийных приложениях, чтобы сделать ваши приложения более интуитивно понятными, привлекательными и даже естественными в использовании. И наоборот, обнаружение незнакомых или неожиданных взаимодействий может сбивать с толку, а иногда даже разочаровывать. Давайте посмотрим на несколько примеров, когда мы использовали этот тип знакомства с платформой у системных игроков. Отличным примером этого является модель представления и отклонения системного проигрывателя iOS. Плеер анимирует свою презентацию снизу, нанося тонкий удар, который можно отклонить, нажав на него обратно. Мы видим, что эта модель широко используется на наших первых сенсорных устройствах. Например, воспроизводимый пользовательский интерфейс в приложении «Музыка» отображается на мини-панели внизу, и его можно закрыть с помощью интерактивного смахивания вниз. Однако в некоторых случаях мы можем опираться на опыт не из нашего понимания технологий, а из повседневной жизни.

    Подобные переживания происходят из реального мира. Миллионы лет эволюции помогли нам развить глубокое инстинктивное понимание природных процессов. Вы можете воспользоваться этим пониманием, чтобы помочь создать знакомые и интуитивно понятные интерфейсы в вашем программном обеспечении. Отличным примером этого является наш новый жест прокрутки в плеере iOS. Подобно катанию игрушечной машинки по столу, каждое движение по видео имеет импульс, продолжая движение временной шкалы после прямого взаимодействия, пока временная шкала медленно не остановится. Инерция здесь сама по себе создает ассоциацию с движущимися объектами реального мира. Эта ассоциация помогает вам обнаружить тонкие глубины взаимодействия. Как и в случае с игрушечной машинкой, я могу заставить ее двигаться быстрее, толкая ее сильнее или толкая несколько раз подряд. И если я схвачу его, он остановится. Это кажется естественным, потому что это естественно. И самое приятное в этом то, что если вы используете системные проигрыватели, ваше приложение будет интуитивно понятным. Все естественные взаимодействия, которые мы создали и унаследовали интуицию и знакомство людей с системным проигрывателем, все парадигмы дизайна, оптимизированные таким образом, чтобы пользователи tvOS, iOS и macOS изначально понимали — все это вы получаете всего за несколько строки кода.

    Создание интуитивно понятного дизайна — это один из аспектов улучшения работы с мультимедиа, но без всех функций и точек интеграции, которые ожидают люди, ваше приложение может непреднамеренно отвлечь внимание от контента. Это подводит нас ко второму ключевому аспекту удивительного медиа-опыта — тесной интеграции. Когда опыт тесно интегрирован, все функциональные возможности, функции и устройства, которые люди ожидают от работы, просто работают. И что важно, они работают таким образом, который соответствует их ожиданиям. Когда люди используют свои устройства, они привыкают полагаться на функции платформы. Например, потянув вниз Центр управления и увидев, что ваш контент заполнен в элементах управления мультимедиа «Сейчас исполняется», или ответив на уведомление во время просмотра телепередачи, и видео плавно перейдет в «Картинка в картинке». Внедрение этой тесной системной интеграции в ваше приложение является ключом к тому, чтобы вы чувствовали себя комфортно. Ваше приложение должно ощущаться как нативная часть системы, и мы прилагаем все усилия, чтобы предоставить вам инструменты, необходимые для этого. Это включает в себя такие вещи, как интеграция CoreSpotlight, чтобы сделать ваш контент доступным для поиска, информация Now Playing, чтобы ваш контент мог отображаться в мультимедийных интерфейсах системы, команды MediaRemote, позволяющие вашему приложению реагировать на такие вещи, как нажатие кнопки воспроизведения на клавиатуре или пульте телевизора. Мы даже предоставляем возможность интегрировать ваши медиафайлы непосредственно в телевизионное приложение, доставляя ваш контент еще более широкой аудитории. В дополнение к тому, чтобы ваши приложения казались нативными, важно предоставить все функции, которые нравятся людям. Такие функции, как AirPlay, SharePlay и «Картинка в картинке». Мы думаем, что люди будут ожидать этих функций, и их предоставление повысит удобство использования вашего приложения. Люди будут использовать ваше приложение на многих устройствах и в еще большем количестве входных форматов. Предоставление поддержки для всего этого имеет решающее значение для обеспечения того, чтобы ваш опыт был доступен для всех. Это особенно важно для tvOS, где поддержка всех доступных пультов имеет решающее значение для обеспечения того, чтобы все могли использовать ваше приложение. Это одна из причин, по которой мы всегда рекомендуем использовать системный медиаплеер на tvOS. Ваши приложения должны обеспечивать плавную работу со всеми пультами телевизора, клавиатурами, трекпадами, игровыми контроллерами и элементами управления наушниками. Кроме того, вы должны убедиться, что элементы пользовательского интерфейса вашего приложения отрисовываются в безопасной области экрана, чтобы избежать столкновения со скругленными углами или выемками на дисплее. Мы понимаем, что обеспечение поддержки всех этих точек интеграции, функций и аппаратных конфигураций может быть сложной задачей. Вот почему мы создали AVPlayerViewController, чтобы с помощью всего нескольких строк кода любой, кто использует ваше приложение, мог получить потрясающие мультимедийные возможности.

    И все это подводит нас, наконец, к самому важному аспекту в разработке медиа-опыта; делая это содержание вперед. Это должно быть основной целью вашего дизайна, и это то, что мы считаем определяющим аспектом отличного медиа-опыта. Когда ваше приложение кажется интуитивно понятным, когда все точки интеграции и все функции, которых ожидают люди, просто работают, вы концентрируетесь на своем контенте, а все остальное отходит на второй план.

    Есть несколько вещей, которые вы должны иметь в виду, особенно при разработке вашего контента. Убедитесь, что вы предоставили все соответствующие метаданные как в интерфейсе, так и в системе. Предоставление этой информации помогает дать контекст вашим медиафайлам и позволяет системе улучшить взаимодействие с Центром управления и экраном блокировки. Сюда входят такие вещи, как заголовок и подзаголовок, описание, миниатюра, информация о сезоне и эпизоде, а также даты начала и окончания прямых трансляций. Всегда сохраняйте медиаданные в исходном соотношении сторон. Это позволяет системе расположить ваши видео на экране в правильном месте. Письменный бокс вашего контента может привести к такому или этому опыту. Не забудьте включить поддержку новейших стандартов мультимедиа, где это возможно. Например, HDR и Dolby Atmos. И, наконец, не забудьте включить звуковые дорожки и дорожки субтитров для нескольких языков, чтобы ваши медиафайлы были доступны как можно большему количеству людей.

    Если и есть что вынести из этой части выступления, так это то, что вы должны сосредоточиться на своем содержании. Мы создали системные медиаплееры, предоставляемые через AVPlayerViewController, чтобы максимально упростить эту задачу для вас как разработчика. Теперь давайте рассмотрим некоторые новые функции, которые мы добавили в AVPlayerViewController, начиная с новых функций визуального интеллекта. В этом примере у нас есть видео, остановленное на кадре с фрагментом кода в нем. Длительное нажатие на фрагмент кода выделит его. Затем вы можете скопировать и вставить его прямо на игровые площадки, чтобы попробовать. Это отлично работает и для macOS. Наведение курсора на тот же код покажет двутавровую балку, указывающую, что текст можно выбрать. Затем вы можете использовать курсор, чтобы выделить его, или использовать CMD + A, чтобы выбрать все. Мы представляем новый API для поддержки этой функциональности. Доступный в AVPlayerViewController на iOS и AVPlayerView на macOS, allowVideoFrameAnalysis будет переключать эту функцию. Это будет включено для всех приложений, связывающихся с новыми SDK. Пока для параметра allowVideoFrameAnalysis установлено значение true, и после того, как мультимедиа будет приостановлено, AVKit начнет анализировать текущий видеокадр по истечении заданного периода времени. Обратите внимание, что мы не будем анализировать кадры при прокрутке из соображений производительности или контента, защищенного FairPlay. В целом, мы думаем, что люди будут ожидать эту функциональность в большинстве ситуаций. Однако в некоторых случаях вы можете захотеть отключить визуальный анализ, если это необходимо в вашем приложении. Например, в критичных к производительности приложениях, таких как просмотр коллекции видео, или в случаях, когда взаимодействие с видео не ожидается, например, в заставках. Для получения дополнительной информации о том, как интегрировать набор функций визуального интеллекта в свои приложения, см. наши соответствующие доклады на VisionKit. Далее давайте рассмотрим некоторые улучшения, которые мы внесли в межстраничные объявления. До сих пор межстраничные объявления поддерживались только в AVPlayerViewController на tvOS. Что ж, я рад сообщить, что мы обеспечиваем такой же уровень поддержки и для iOS. Межстраничные объявления, либо в потоке, либо определенные локально через AVPlayerInterstitialEvents, теперь будут отмечены на временной шкале. Когда временная шкала достигнет маркера, мы начнем воспроизведение межстраничного объявления. Если ваши межстраничные объявления уже полностью определены в вашем плейлисте HLS, вы получите это поведение автоматически — никаких дополнительных настроек не требуется. Если нет, или если ваше приложение требует дополнительного пользовательского поведения, мы также представляем новый API. AVInterstitialTimeRange переносится с tvOS на iOS. Они будут автоматически занесены в свойство AVPlayerItem, interstitialTimeRanges, которое также переносится из tvOS. При использовании потока HLS AVInterstitialTimeRange будет синтезироваться для каждого межстраничного объявления в потоке. При локальном создании интерстициальных событий через API AVFoundation для каждого AVPlayerInterstitialEvent будет синтезироваться AVInterstitialTimeRange. Однако, в отличие от tvOS, свойство interstitialTimeRanges доступно только для чтения. Межстраничные объявления должны быть определены либо в потоке HLS, либо через AVPlayerInterstitialEvents. Для тех, кто переносит свою поддержку из своих приложений tvOS, это по сути эквивалентно установке для translatesPlayerInterstitialEvents значения yes.

    Мы также переносим два метода делегата из tvOS. Их можно использовать, чтобы узнать, когда началось или закончилось воспроизведение вставки. Давайте посмотрим, как мы можем использовать их в API, чтобы добавить кнопку пропуска для рекламы перед роликом на iOS. Во-первых, мы создадим AVPlayerInterstitialEventController для основного медиаплеера. Далее мы создадим межстраничное событие. Определим для него некоторые ограничения. Эти ограничения предотвращают поиск внутри межстраничного объявления и не позволяют пропустить межстраничное объявление. Затем мы добавим межстраничное объявление в контроллер событий. И, наконец, мы можем реализовать новый обратный вызов делегата willPresentInterstitial, чтобы вызвать кнопку пропуска рекламы через заданный интервал. И как только кнопка будет нажата, мы отменим межстраничное объявление. Это так просто. Обратите внимание, что при добавлении любых пользовательских элементов пользовательского интерфейса в AVPlayerViewController, таких как эта кнопка пропуска рекламы, всегда обязательно добавляйте их в качестве подвидов contentOverlayView. Чтобы узнать больше о том, как вы можете интегрировать свои межстраничные объявления прямо в свои плейлисты HLS или как вы можете использовать API межстраничных объявлений AVFoundation, ознакомьтесь с нашими соответствующими докладами об изучении динамических рекламных роликов HLS в начале и в середине. Теперь мы рассмотрим новую функцию, которую мы добавили в этом году на все наши платформы; встроенная поддержка управления скоростью воспроизведения. И AVPlayerView, и AVPlayerViewController теперь могут дополнительно отображать меню скорости воспроизведения, используя добавленный нами новый API.

    Мы делаем это доступным для macOS, iOS и tvOS. Давайте посмотрим, как это выглядит. В tvOS вы увидите новый элемент управления на панели транспорта. При выборе элемента управления отобразится список доступных скоростей воспроизведения для выбора. В iOS это меню появится в дополнительном меню управления транспортом. Точно так же в macOS элемент управления появится в дополнительном меню. Все приложения, связанные с новыми SDK для iOS, macOS и tvOS, получат эту функциональность автоматически без каких-либо дополнительных изменений. Однако, в зависимости от вашего варианта использования, некоторые приложения могут захотеть изменить список скоростей, программно выбрать скорость или полностью отключить меню. Чтобы учесть эти варианты использования, мы добавили несколько новых API в AVPlayerView и AVPlayerViewController. Давайте посмотрим на это.

    Во-первых, мы добавили в AVKit новый класс — AVPlaybackSpeed. AVPlaybackSpeeds представляют выбираемые пользователем параметры скорости в пользовательском интерфейсе воспроизведения и имеют три свойства. Значение скорости, определенное при инициализации, которое будет установлено на проигрывателе при выборе скорости воспроизведения. Локализованное имя, используемое для представления скорости воспроизведения в системе специальных возможностей. Например, скорость 2,5 может использовать локализованное имя «в два с половиной раза быстрее». И локализованное числовое имя. Это значение синтезируется из свойства rate и будет строкой, отображаемой в меню скорости воспроизведения. Если вашему приложению требуется пользовательское меню скорости воспроизведения, внешнее по отношению к проигрывателю, используйте эту строку для представления скорости.

    Наконец, AVPlaybackSpeed ​​определяет список скоростей системы по умолчанию, которые следует использовать по возможности. Вы можете использовать AVPlaybackSpeed ​​в сочетании с некоторыми новыми API в AVPlayerView и AVPlayerViewController, чтобы адаптировать эту функцию к вашему приложению. Свойство speeds позволяет определить собственный список скоростей воспроизведения. По умолчанию это свойство будет установлено в список AVPlaybackSpeed ​​systemDefaultSpeeds. Установка этого значения в пустой список скроет меню. Выбранное свойство скорости вернет текущую активную скорость. И, наконец, функция selectSpeed ​​позволяет программно выбирать текущую скорость. Обратите внимание, что вы должны использовать эту функцию только в ответ на явный выбор скорости вне пользовательского интерфейса проигрывателя. Никогда неявно не переопределяйте выбранную скорость воспроизведения. Давайте посмотрим на пример. Здесь мы создаем AVPlayerViewController и представляем его. По умолчанию будет использоваться предоставленный системой список скоростей воспроизведения. Вы можете добавить новую скорость в меню, создав AVPlaybackSpeed ​​и добавив ее в список скоростей в AVPlayerViewController. Мы также можем отключить меню, установив пустой список скоростей. Это так просто. Обратите внимание, что вы всегда должны вызывать AVPlayer play(), чтобы начать воспроизведение. Никогда не запускайте воспроизведение вызовом setRate:1.0, так как выбранная скорость может отличаться от 1.0. На этом я хотел бы завершить сессию. Мы увидели новый переработанный системный плеер iOS. Мы слышали, как вы можете создавать собственные удивительные впечатления от воспроизведения. Мы увидели несколько интересных новых функций визуального интеллекта и рассмотрели наши новые межстраничные объявления и API скорости воспроизведения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *