Добрый день Да, плата может принимать и отдавать ASI данные. Здесь лежат последние драйвера и примеры: https://ftp.sl.iae.nsk.su/Public/ForwardTechSupport/Linux/LD_1_5_34.zip https://ftp.sl.iae.nsk.su/Public/ForwardTechSupport/Linux/forward-v4l2-samples.zip В примерах нет отдельно работы с ASI, но в целом работа с ASI похожа на работу с Video. Для ввода есть два режима работы - только полезные данные и "RawSDI". Для вывода только "RawSDI". При вводе устройство инициализируется аналогично работе с видео, разница только в формате данных: 1) fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_MPEG; - для ввода только полезных данных ASI. 2) fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_SL_RAW_ASI; - для ввода "RawSDI" (полные 10-битные данные всего ASI-потока). По умолчанию, буфера поступают с частотой 50Гц. Однако можно изменить периодичность: v4l2_control ctl; ctl.id = V4L2_CID_FORWARD_ASI_PERIOD; ctl.value = period; // 0, 1, 2 или 3 if (::ioctl(fd, VIDIOC_S_CTRL, &ctl) == -1) ERROR В первом случае в буфере лежат восьмибитные данные - только полезные данные. Длина данных в кадре, как правило, существенно меньше размера буфера (буфер нужно задать под SD-поток - 720х576х2). При этом пакет может перетекать через границу кадра. То есть нужно искать в потоке 0х47 и начиная с него выделять пакет в 188 байт. По-хорошему нужно контролировать, что длина пакета составляет ровно 188 байт, поскольку в ASI потоке данные имеют право "пропадать" из-за ошибок в тракте передачи сигнала. Во втором случае данные поступают в 10-битном упакованном формате: каждые 5 байт содержат четыре 10-битных слова. Размер кадра строго фиксирован. К письму приложен h-файл с процедурой упаковки и распаковки такого потока. После распаковки данных вам нужно будет проверять данные на корректность и искать полезные данные самостоятельно. Зато второй способ позволяет точно знать время прихода каждого пакета (даже каждого байта в пакете). При воспроизведении ASI драйвер работает аналогично выводу видео. Драйвер поддерживает только формат RawSDI, поскольку только в таком режиме можно задать точное время выдачи каждого пакета. Соответственно, формат данных V4L2_PIX_FMT_SL_RAW_ASI и размер кадра строго фиксирован. Вы должны данные из входных TS-пакетов распределить во времени и записать в соответствующий выходной буфер, выполняя упаковку в 10-бит. Не забывайте, что между полезными данными вы должны вставлять 0х000 (нет данных). До свидания, Игорь Таранцев, СофтЛаб-НСК