Последовательное скачивание

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

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

История

Изначально медиа-формат JPEG был первым типов визуального медиа, который последовательно показывал изображение по мере загрузки Неясно, кто именно ввёл в оборот термин «последовательное скачивание». Компания Apple, ссылаясь на свой плеер QuickTime, использовала термин Fast Start (быстрый старт)[1] в 1997 году, описывая последовательное воспроизведение закодированного цифрового контента.

Сравнение с потоковым вещанием

Поведение с точки зрения конечного пользователя похоже на потоковую передачу данных, однако при последовательном скачивании файл физически качается и кладётся в каталог на жёстком диске устройства, который используется для проигрывания — или в специально отведённый, или в каталог временных файлов браузера. Проигрывание застопорится в случае, если данные скачиваются медленнее, чем идёт воспроизведение контента. Как правило, воспроизведение возобновляется после докачки данных, но это зависит от плеера.

Быстрое начало воспроизведения является результатом смещения метаданных из конца файла в его начало. Это даёт медиа-плееру всю необходимую информацию для дальнейшей работы с медиа несмотря на то, что данные доступны не в полном объёме. До этого данные располагались в конце, что требовало качать весь файл целиком для того, чтобы начать проигрывание[2].

Перемотка

Файл в первую очередь может быть проигран с самого начала. Однако пользователь может захотеть указать на начало фрагмента, который ещё не был скачан. Эта возможность называется перемоткой (seeking)[3] и это даёт возможность загрузить и начать воспроизведение любой части медиа-файла. Часто это называется псевдостримингом.

Для видео в формате FLV перемотка требует наличия опорных точек в мета-данных медиа-файлов. Эти точки представляют собой смещение в видео (как в секундах, так и в байтах), где находится новый ключевой кадр. Веб-сервер или медиа-сервер, отдающий файлы на скачивание, должен иметь поддержку опорных точек через параметры HTTP-запроса, чтобы отработать перемотку в таком типе файлов.

Для других типов файлов, таких как MP4 или MKV, сервера также должны поддерживать специальный параметр смещения. Как правило, эта величина указывает на смещение в байтах. Название параметра может отличаться у разных серверов и плееры должны это учитывать.

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

СерверПеремотка FlashПеремотка MP4
Apache HTTP Servermod_h264 start
mod_flvx start
mod_h264 starttime
lighttpdstartmod_h264 starttime
Nginxhttp_flv_module starthttp_mp4_module start
Nimble Streamerstartstart

См. также

Примечания

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.