ASI Reader¶
Обзор¶
ASI Reader — это модуль в составе mcaster, предназначенный для приема видео с плат захвата ASI (Asynchronous Serial Interface). Модуль обеспечивает надежный прием MPTS (Multi-Program Transport Stream) потоков и их передачу в мультикаст для дальнейшей обработки другими компонентами системы.
Поддерживаемые платы захвата¶
Dektec¶
- Полная поддержка всех моделей Dektec ASI
- Автоматическое определение параметров потока
- Поддержка всех стандартов ASI
- Интеграция с Dektec SDK
Streamlabs¶
- Ограниченная поддержка плат Streamlabs
- Базовые функции захвата ASI
- Совместимость с V4L2
Softlab¶
- Ограниченная поддержка плат Softlab
- Основные функции приема ASI
- Совместимость с V4L2
Архитектура работы¶
Принцип работы¶
- Захват ASI сигнала с платы
- Обработка MPTS потока
- Отправка в мультикаст на указанный адрес
- Захват модулем mpegts reader для дальнейшей обработки
Схема подключения¶
ASI Source → ASI Reader → Multicast → MPEGTS Reader → Processing
Важность мультикаст архитектуры¶
Использование мультикаст архитектуры является необходимым условием для обеспечения стабильности работы стримера и независимости от статуса ASI платы. Это обеспечивает:
- Разделение ответственности между захватом и обработкой
- Независимость стримера от состояния ASI платы
- Возможность перезапуска компонентов без прерывания потока
- Масштабируемость — несколько потребителей могут получать один поток
- Отказоустойчивость — при проблемах с платой стример продолжает работать с буферизованными данными
Конфигурация модуля¶
Базовая конфигурация¶
dvb_card asi_port_1 {
hw dektec_asi;
video_device 224.1.1.1:1000;
serial 2174223642;
port 1;
}
Параметры конфигурации¶
Параметр | Описание | Обязательный | Пример |
---|---|---|---|
hw |
Тип аппаратного обеспечения | Да | dektec_asi |
video_device |
Адрес мультикаст группы | Да | 224.1.1.1:1000 |
serial |
Серийный номер платы | Да | 2174223642 |
port |
Номер порта на плате | Да | 1 |
Расширенная конфигурация¶
dvb_card asi_port_1 {
hw dektec_asi;
video_device 224.1.1.1:1000;
serial 2174223642;
port 1;
# Дополнительные параметры
buffer_size 8192;
timeout 5000;
retry_count 3;
}
Определение серийного номера платы¶
Использование DtInfoCL¶
Для определения серийного номера Dektec платы используйте утилиту DtInfoCL:
- Скачайте DtInfoCL с официального сайта Dektec
- Установите утилиту на систему
- Запустите команду для просмотра подключенных устройств:
# Просмотр всех Dektec устройств
dtinfocl --list-devices
# Подробная информация о конкретном устройстве
dtinfocl --device 0 --info
Пример вывода DtInfoCL¶
Device 0: DTA-2174B
Serial Number: 2174223642
Firmware Version: 2.1.3
Ports: 4
Status: Ready
Интеграция с mpegts reader¶
Конфигурация цепочки обработки¶
# ASI Reader - захват с платы
dvb_card asi_port_1 {
hw dektec_asi;
video_device 224.1.1.1:1000;
serial 2174223642;
port 1;
}
# MPEGTS Reader - прием из мультикаста
stream asi_stream {
input mpts-udp://224.1.1.1:1000?programs=1070;
}
Мониторинг и диагностика¶
Статистика работы¶
- Количество принятых пакетов
- Размер буфера
- Частота ошибок
- Статус подключения к плате
Устранение неполадок¶
Частые проблемы¶
Плата не определяется¶
- Проверьте подключение ASI кабеля
- Убедитесь в правильности серийного номера
- Проверьте драйверы Dektec
- Используйте DtInfoCL для диагностики
Отсутствует сигнал в мультикасте¶
- Проверьте настройки мультикаст группы
- Убедитесь в доступности порта
- Проверьте сетевые настройки
- Проверьте логи модуля
Ошибки буферизации¶
- Увеличьте размер буфера
- Проверьте производительность системы
- Оптимизируйте сетевые настройки
Диагностические команды¶
# Проверка мультикаст потока
tcpdump -i any -n host 224.1.1.1
# Тест подключения к мультикасту
nc -u 224.1.1.1 1000
# Проверка статуса Dektec устройств
dtinfocl --list-devices
Требования к системе¶
Аппаратные требования¶
- CPU: Минимум 2 ядра
- RAM: 4 ГБ
- Сеть: Гигабитный Ethernet для мультикаста
- ASI плата: Поддерживаемая модель Dektec/Streamlabs/Softlab
Программные требования¶
- Linux kernel 4.19+
- Dektec драйверы (для Dektec плат)
- V4L2 поддержка (для Streamlabs/Softlab)
- Поддержка мультикаста в сети
Сетевые требования¶
- Мультикаст: Включен в сетевой инфраструктуре
- IGMP: Поддержка IGMP для управления мультикастом
- Порты: Доступность указанных портов
Заключение¶
ASI Reader предоставляет надежное решение для приема ASI сигналов в системе mcaster. Модуль обеспечивает гибкую настройку, интеграцию с различными платами захвата и эффективную передачу потоков через мультикаст для дальнейшей обработки. Использование мультикаст архитектуры позволяет масштабировать систему и обеспечивать отказоустойчивость.