Американский проект Facebook Open Source разработал библиотеку для языка программирования C++, с помощью которой в код можно добавить новую единицу измерения времени — флик. Библиотека и описание новой единицы доступны на странице проекта на GitHub. Разработчики утверждают, что новая единица времени позволяет идеально синхронизировать видео и аудио кроме неудачного стандарта NTSC.
В большинстве существующих сегодня языков программирования отсчет времени ведется в миллисекундах (одна тысячная секунды). При этом в C++ для работы с видео и аудио и их синхронизации программистам приходится оперировать с десятичными долями секунды, высчитывая такие интервалы, которые бы привязывали определенное место аудиозаписи к определенному кадру.
Из-за того, что видео и аудио используют разные скорости смены данных, иначе называемые частотами обновления, добиться идеальной синхронизации звука и картинки удается не всегда. Именно по этой причине Facebook Open Source и предложил использовать в C++ новую единицу времени, которую еще в октябре 2016 года придумал сотрудник проекта Кристофер Хорват.
Новая единица измерения времени в C++ получила название флик, которое образовано от двух слов — frame (кадр) и tick (счет, пометка). С разговорного английского слово flick можно перевести как фильм. Один флик равен 1/705600000 секунды, или 1,417 наносекунды. Именно такая единица времени, уверяют в Facebook, позволяет идеально синхронизировать любые существующие частоты видео и аудио.
Например, для распространенных частот 24 и 25 кадров в секунду длительность каждого кадра можно измерить в понятных и целых 29400000 и 28224000 фликов. Для рапида с частотой 192000 кадров в секунду временная продолжительность одного кадра составит 3675 фликов. Эти флики можно точно синхронизировать с фликами, рассчитанными для «кадров» аудио популярных частот от 8 до 192 килогерц.
При использовании стандартных подходов к делению времени при синхронизации аудио и видео в C++ длительность показа одного кадра при частоте 24 кадра в секунду составила бы 41,666666 миллисекунды. Производить математические вычисления с такими числами неудобно, а попытки их округлить при большой продолжительности видео будут давать нарастающую рассинхронизацию с аудио.
В октябре 2015 года физики из университетов Варшавы и Ноттингема выяснили, что существование идеальных часов, способных сколь угодно точно измерять промежутки времени в любой системе отсчета, противоречит законам физики. Нарушения начинают проявляться при больших ускорениях, которые могли наблюдаться, например, в момент Большого Взрыва.
*Facebook принадлежит компании Meta, деятельность которой в России запрещена.
Василий Сычёв
Почему искусственный интеллект — это инструмент для узких задач
Блейк Лемуан проработал в Google семь лет. Осенью 2021 года он занялся тестированием разговорного агента LaMDA, которого корпорация представила незадолго до этого. Модель была обучена в первую очередь на диалогах, а не повествовательных или аналитических текстах, и потому прекрасно играла роль собеседника. Настолько, что через год Лемуан посоветовал ей найти адвоката и заявил, что признает в ней разумное существо. Даже более, чем разумное: в интервью для Washington Post, равно как и в отчете для руководства Google (его Лемуан вопреки запрету выложил в открытый доступ), инженер использует эпитет «sentient», а значит и вовсе считает машину способной испытывать чувства. Давайте разберемся, как так вышло и почему абсолютное большинство исследователей не видят смысла в его заявлении.