May 21, 2022
[Страх программиста, Боязнь разработчика]
Вроде бы мелочь - данные хранятся в единственном числе, а теперь нужно, чтобы был массив.
Но сюда накладываются проблемы, типа:
- перелопатить все функции, где это используется
- добавить логику, что этот массив пустой
- сохранить поддержку старого формата
- (EmoDetect)
Исходно: aнализируемый кадр содержит описание одного лица человека или его отсутствие.
Лаконичная задача: поддержать обработку и трекинг нескольких лиц в кадре.
Сложности: необходимо иметь наготове несколько тяжеловесных моделей, обрабатывающих изображение и умело тасовать их результаты, не давая использовать лица, которые обрабатываются другими моделями; старый формат результата был типовым табличным файлом, где есть временная метка и параметры лица (удобно открывается в Excel), новый формат - древовидный JSON, где у кадра есть массив параметром лица (в Excel не открывается). - (NeuroForsage)
Исходно: тренинг содержит одну БОС-тренировку, состоит из слайдов. В каждом слайде есть фон, текст, сопровождающая речь.
Задача: Несколько разных БОС-тренировок в одном тренинге, в слайде может быть несколько сопровождающих речей.
Сложности: старый табличный формат хранения данных предполагал, что есть начало и конец БОС, теперь это массив, соответственно, необходимо поддержать и старые записи и новые, методом нахождения характеристических полей (параметра версии файла данных нет, так как это облачная MySQL база данных); для речи, опять же для поддержания старого формата, требуется аккуратно формировать новую структуру данных, содержащую элементы старой и новой.
Осложнения: нельзя так просто в Safari взять и создать тучу непроигрываемых аудио элементов, активируемых в нужных момент - требуется использовать 2-3, которым изменять source, но требуется мониторить статус загрузки, так как, даже используя уже загруженный Blob в памяти, всё равно есть задержка ~10-100 мс до возможности начала произведения.