Типові робочі процеси
Імпортуйте стандартні тестові відеофайли.
Використовуйте стандартні набори відеоматеріалів, коли вам потрібні повторювані медіафайли для демонстрацій, тестування або перевірки багатопотоковості:
https://artifacts.sima-neat.com/assets/videos/720p16/video01.mp4
...
https://artifacts.sima-neat.com/assets/videos/720p16/video16.mp4
https://artifacts.sima-neat.com/assets/videos/480p30/video01.mp4
...
https://artifacts.sima-neat.com/assets/videos/480p30/video16.mp4
Для ручного використання завантажте необхідні файли та завантажте їх із джерела медіа.
Для налаштування через API перевірте, чи вже є в Insight файли медіа:
curl -k https://127.0.0.1:9900/api/media-files
Якщо медіатека порожня, завантажте та додайте стандартне відео:
tmpdir="$(mktemp -d)"
curl -fL "https://artifacts.sima-neat.com/assets/videos/480p30/video01.mp4" \
-o "${tmpdir}/video01.mp4"
curl -k -F "file=@${tmpdir}/video01.mp4" \
https://127.0.0.1:9900/api/upload/media
Повторіть цю процедуру для інших файлів або завантажте архів, якщо ви хочете додати велику кількість медіафайлів.
Перевірте роботу застосунку, який обробляє відеопотік з однієї камери.
- Відкрийте Insight.
- Перейдіть до розділу «Джерела медіа» та завантажте короткий тестовий відеофайл.
- Перейдіть до розділу «Джерела потокового відео» та призначте відео для
src1. - Почніть
src1. - Запустіть свою програму, використовуючи правильне RTSP URL-адресу:
- Усередині контейнера SDK:
rtsp://127.0.0.1:8554/src1 - На пристрої DevKit або на зовнішнь ому комп’ютері:
rtsp://<sdk-host-ip>:<rtsp.tcp hostPortStart>/src1
- Усередині контейнера SDK:
- Відкрийте програму для перегляду відео та перегляньте канал
0. - Якщо ваш додаток надсилає метадані, переконайтеся, що відповідні елементи відображаються на відео.
- Використовуйте заповнювач «Статистика», щоб дізнатися, де в наступній версії відображатимуться дані системної діагностики навантаження.
Перевірка застосунку з живою вебкамерою
Використовуйте цю процедуру, щоб тестувати застосунок із реальною камерою замість записаного файлу. Вебкамеру підключено до комп’ютера з вашим браузером, а не до плати: браузер публікує її в Insight, який надає її як звичайне джерело RTSP, що застосунок споживає так само, як файл.
- Відкрийте Insight через HTTPS і підтвердьте, що браузер довіряє його сертифікату.
- Перейдіть до Media Sources і в розділі Локальні камери виберіть Увімкнути доступ до камери. Дозвольте доступ на запит браузера; камери з’являться у списку.
- Перейдіть до Streaming Sources і виберіть камеру зі списку
src1у групі Камери. Після вибору рядок показує позначку[CAM]. - Запустіть
src1і підтвердьте, що слот повідомляєLive, а попередній перегляд показує камеру. - Запустіть застосунок із тим самим URL RTSP, що й для файлового джерела. Insight нормалізує вебкамеру до такого самого базового профілю H.264 із регулярними ключовими кадрами, який створює файлове джерело, тож апаратний декодер плати та GStreamer
rtspsrcспоживають його без додаткових дій — без ручногоffmpegчи окремого шляху:- Усередині контейнера SDK:
rtsp://127.0.0.1:8554/src1 - На DevKit або зовнішньому комп’ютері:
rtsp://<sdk-host-ip>:<rtsp.tcp hostPortStart>/src1
- Усередині контейнера SDK:
- Відкрийте Video Viewer і перегляньте канал
0.
Під час публікації вебкамери тримайте вкладку браузера видимою та на передньому плані: вона надсилає відео до Insight, а браузери обмежують приховані або фонові вкладки, щ о перериває потік. Закриття вкладки, відключення камери або вибір Зупинити завершує потік.
Коли Insight працює всередині SDK, браузер також має отримувати доступ до порту хоста webrtcWhip з neat --json, крім порту RTSP, який використовує застосунок. Див. Порти та поведінка мережі.
Перевіряйте декілька потоків вхідних даних.
- Завантажте або підготуйте кілька відео у розділі «Джерела медіа».
- Використовуйте потокові джерела.
Auto Assignщоб зіставити відео з відповідними слотами джерела. - Використовуйте
Bulk Start, щоб вказати кількість джерел, які очікує ваш додаток. - Запустіть програму, використовуючи відповідні URL-адреси потоків
srcN. - Відкрийте програму для перегляду відео, налаштувавши потрібний канал.
- Використовуйте інструменти діагностики для перегляду, щоб виявити вузькі місця в потоці даних. У цій версії розділ «Статистика» є лише тимчасовим, і в наступній версії планується додати інструменти діагностики вузьких місць у середовищі виконання.
Коли програма запускається поза контейнером SDK, перед запуском тесту визначте та налаштуйте хост-порти для RTSP, відеопотоку UDP та метаданих UDP, використовуючи дані з neat --json.
Налаштуйте кінцеві точки застосунку на основі відображення портів SDK.
Використовуйте цей процес, коли програма працює на DevKit, а Insight працює всередині SDK:
-
В SDK перевірте, чи запущено Insight:
insight-admin status -
Отримайте карту портів SDK:
neat --json -
Знайдіть IP-адресу хоста SDK за посиланням
insight.webUiUrl, або скористайтеся IP-адресою хоста, яка відображається під час процесу налаштування SDK. -
Знайдіть
rtsp.tcp.hostPortStart,videoUDP.hostPortStartтаmetadataUDP.hostPortStartуexposedPorts. -
Налаштуйте потоки вхідних даних програми за допомогою:
rtsp://<sdk-host-ip>:<rtsp.tcp hostPortStart>/src1rtsp://<sdk-host-ip>:<rtsp.tcp hostPortStart>/src2 -
Налаштуйте вихідні порти програми для кожного каналу:
video channel N: <sdk-host-ip>:<videoUDP hostPortStart + N>metadata channel N: <sdk-host-ip>:<metadataUDP hostPortStart + N> -
Запустіть програму та відкрийте переглядач відео.
-
Використовуйте
/api/ingest/stats, якщо у користувача не відображається відео. Ця функція повідомляє, чи надходять дані RTP і метадані до Insight перед тим, як ви почнете налагоджувати роботу браузера або WebRTC.
Виправлення проблем із відсутнім відео або накладками.
Використовуйте цю послідовність дій, щоб визначити причину проблеми:
- Переконайтеся, що програма запущена та націлена на правильний хост Insight.
- Підтвердіть, чи запущено програму всередині контейнера SDK, чи на зовнішньому пристрої.
- Якщо це зовнішній ресурс, переконайтеся, що він використовує відображені хост-порти
videoUDPіmetadataUDPзneat --json. - Якщо він знаходиться всередині контейнера SDK, переконайтеся, що вихідний відеопорт знаходиться в
9000-9079. - Переконайтеся, що метадані-порт, якщо він використовується, відповідає каналу в діапазоні метаданих UDP.
- Відкрийте програму для перегляду відео та перевірте, чи відображається потрібний канал.
- Використовуйте системну інформацію, щоб перевірити, чи використовує Insight стандартні порти чи порти, визначені в SDK.
- Використовуйте «Системну інформацію» та журнали для перевірки стану пристрою. Наразі розділ «Статистика» є лише тимчасовим і в наступній версії планується доповнити його інформацією про завантаження пристрою та стан його роботи в сер едовищі виконання.
Якщо відео відображається, але відсутні накладені елементи, зверніть увагу на шлях до метаданих. Якщо накладені елементи відображаються із затримкою або не синхронізовані, відрегулюйте налаштування затримки метаданих у програмі перегляду.
Поради
- Використовуйте короткі відео- та аудіофрагменти під час створення нового циклу в застосунку. Це прискорить налаштування вихідних даних і повторну перевірку.
- Використовуйте джерела HTTP MJPEG, коли вам потрібно імітувати камеру, яка передає багатокомпонентний MJPEG через HTTP.
- Забезпечте послідовність нумерації каналів: якщо відео надходить на канал
N, надсилайте метадані до порту метаданих для того жN. - Використовуйте перегляд «Робочий простір», щоб переглянути створену модель і артефакти профілювання перед копіюванням файлів із середовища.
- Використовуйте функцію «Швидкий огляд», розташовану у верхньому правому куті інтерфейсу Insight, коли ви знайомите нового розробника з інструментом.
- Перш ніж припускати, що вказано неправильний номер порту, перевірте системну інформацію. У разі розгортання SDK, номер порту, який використовується для взаємодії з браузером, може відрізнятися від внутрішнього номера порту служби.