EdigE
← ЛЕНТА

Orange Pi O1 обещает принять 16 видеопотоков и не утонуть в кадрах

Шестнадцать потоков с камер выглядят скромно, пока видео остаётся сжатым. После декодера каждый поток 1920 × 1080 при 30 кадрах в секунду становится непрерывной рекой пикселей: 8-битный кадр 4:2:0 в NV12 занимает 3.11 MB. Для 16 каналов это 1.493 GB/s только на одну последовательную запись готовых кадров в память. Добавятся поверхности декодера, выравнивание строк, чтение ускорителем, масштабирование, наложение меток, вывод на дисплей или повторное кодирование.

Orange Pi O1 построена на SoC SOPHGO BM1688 и заявлена именно для такого сценария: до 16 одновременных потоков 1080p30 в H.264 либо H.265. На плате размером 90 × 70 мм собраны восемь Cortex-A53 до 1.65 GHz, ядро RISC-V C906, 8 или 16 GB LPDDR4/LPDDR4X и INT8-TPU с паспортными 16 TOPS. Два Gigabit Ethernet, SATA и NVMe дают плате средства собрать сетевой регистратор или локальный архив без отдельного ПК.

Пиксели уже тяжелее нейросети

16 TOPS описывают пиковую арифметику INT8, но камеры приносят в систему данные в другой валюте — байтах памяти в секунду. Однократный проход 16 декодированных потоков через DRAM уже даёт около 1.39 GiB/s полезных NV12-данных. Если приложение сначала скопирует кадр в буфер CPU, преобразует NV12 в RGB, а затем передаст результат TPU, объём перемещений быстро вырастет в несколько раз. На таком конвейере вычислительный блок может ждать кадры, хотя формально его TOPS остаются свободны.

Ускоритель видео задаёт форму всей платы

Документация BM1688 показывает более прямой маршрут. VDEC умеет создавать несколько экземпляров декодера и выдавать NV12; предусмотрен также формат Frame Buffer Compression и аппаратно-ориентированные операции над изображением. Идея здесь проста: декодер должен положить поверхность туда, откуда блок обработки изображения или TPU возьмёт её через буфер и DMA, без путешествия полного кадра через пользовательскую память и CPU. Однако это цель архитектуры конвейера, а не доказанное свойство любого приложения с FFmpeg, OpenCV и нейросетевым рантаймом.

Паспортная цифра ждёт настоящей нагрузки

Для камер на самой плате есть два четырёхлинейных MIPI-CSI, а для сетевых источников — два Ethernet-интерфейса. Сжатый поток H.265 может занимать считаные мегабиты в секунду, однако после VDEC он раскрывается в мегабайты на кадр. Поэтому многоканальный узел следует проектировать от потребителя изображения назад: определить, кто читает поверхность первым, где происходит resize и преобразование цветового пространства, нужен ли CPU доступ и где кадр будет освобождён. Иначе мощный видеодекодер превращается в генератор трафика DRAM.

SOPHGO прямо указывает для BM1688 предел в 16 каналов 1080p30 H.264/H.265; для кодирования указан ориентир до 10 каналов 1080p30 с зависимостью от конфигурации и содержимого. Это подтверждает возможности кремния, но пока не заменяет стендовый запуск Orange Pi O1 с 16 реальными потоками, заданными битрейтами и GOP, работающей TPU, охлаждением и записью на накопитель. Именно такой тест покажет, остаются ли поверхности внутри аппаратного тракта или начинают множиться в DRAM.