Буферизация содержимого

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

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

Другим параметром потока, важным для процесса буферизации, является окно буфера. Окно буфера измеряется во времени и указывает, сколько содержимого может быть буферизованно. Емкость воображаемого контейнера можно найти с помощью окна буфера. Например, если у вас есть поток со скоростью 32 Кбит/с и буферным окном 3 секунды, размер буфера будет содержать 3 секунды содержимого 32 Кбит/с или 12 000 байт (32 000 бит в секунду x 3 секунды / 8 бит на байт). Кодек ограничивает различия между фактической скоростью потоковой передачи закодированных примеров, чтобы в течение периода времени, равного окну буфера, средняя скорость потока не превышала скорость потока.

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

Основные понятия

Примеры мультимедиа

Входные, потоки и выходные данные