Найти в Дзене
LineSonic

Особенности Underflow Control в работе с аудио

Ох
уж эта молодёжь, вечно торопится! Приносят свои плееры и говорят:
"Чё-то звук прерывается, почини, дед!" А я им: "Ну-ка, давай посмотрим,
что там у тебя с Underflow Control". А они глазами хлопают. Ну, а что вы
хотели? Это вам не пиво пить, это электроника, тут свои правила. Так
вот, что же это за зверь такой? Underflow Control, или, как я его
называю, "контроль недолива". Ну, знаете, как в баре, когда тебе не
долили. Тут то же самое, только с данными.
Представьте, что ваш
аудиоустройство, это такой бармен. Он должен налить вам стакан звука. Но
он не может налить его сразу весь. Он наливает его по чуть-чуть,
порциями. А данные, которые к нему приходят,, это пиво в бочке. И вот,
если он наливает быстрее, чем пиво успевает поступать, что происходит?
Правильно, стакан пустой, а бармен стоит и ждёт. Вот это и есть
Underflow. Не хватает данных, чтобы обеспечить непрерывный поток. И вот
тут-то и появляется этот Underflow Control. Это механизм, который не
даёт бармену нал


Особенности Underflow Control в работе с аудио
Особенности Underflow Control в работе с аудио

Ох
уж эта молодёжь, вечно торопится! Приносят свои плееры и говорят:
"Чё-то звук прерывается, почини, дед!" А я им: "Ну-ка, давай посмотрим,
что там у тебя с Underflow Control". А они глазами хлопают. Ну, а что вы
хотели? Это вам не пиво пить, это электроника, тут свои правила. Так
вот, что же это за зверь такой? Underflow Control, или, как я его
называю, "контроль недолива". Ну, знаете, как в баре, когда тебе не
долили. Тут то же самое, только с данными.

Представьте, что ваш
аудиоустройство, это такой бармен. Он должен налить вам стакан звука. Но
он не может налить его сразу весь. Он наливает его по чуть-чуть,
порциями. А данные, которые к нему приходят,, это пиво в бочке. И вот,
если он наливает быстрее, чем пиво успевает поступать, что происходит?
Правильно, стакан пустой, а бармен стоит и ждёт. Вот это и есть
Underflow. Не хватает данных, чтобы обеспечить непрерывный поток. И вот
тут-то и появляется этот Underflow Control. Это механизм, который не
даёт бармену налить быстрее, чем пиво поступает. Он замедляет его, чтобы
стакан всегда был полным.

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

Underflow
Control решает эту проблему. Он следит за уровнем данных в буфере и,
если он опускается ниже определённого порога, приостанавливает
воспроизведение, чтобы буфер мог заполниться. Так что, когда вы видите,
что музыка на мгновение замерла, это, скорее всего, он вступает в
действие. Это может раздражать, конечно, но лучше уж так, чем слушать
музыку, которая постоянно прерывается.

Этот механизм особенно
важен в стриминговых сервисах, когда вы слушаете музыку из интернета. Но
и в обычных плеерах, особенно в старых, он тоже может быть. Например,
если вы пытаетесь воспроизвести файл с медленной флешки, то Underflow
Control будет работать, чтобы звук не прерывался.

Так что, когда
в следующий раз принесёте мне свой плеер, я уже буду знать, что с ним. А
вы, по крайней мере, будете знать, что это не я виноват, а просто
вашему плееру не долили данных. И не надо на меня ворчать. Я просто
делаю свою работу. А вы слушайте музыку, да потише, чтобы соседи не
жаловались.