Беспроводная передача видео в full HD

Gol
Lazy:

и оторванный хвост - тоже в Питере 😃

Фигня, пришьём! 😄 Главное что он не при посадке отломился. Хотя возможно при посадке он отломился окончательно. Тут точно неизвестно.

Lazy

Важно другое. 😃 Согласен!

skydiver
Gol:

Фигня, пришьём! 😄 Главное что он не при посадке отломился.

Это фигня. Расскажите как там с HDMI входом то движется?

Gol
skydiver:

Это фигня. Расскажите как там с HDMI входом то движется?

Дык в топике он даже упоминается 😃 www.g0l.ru/blog/n3946

ssh1
Gol:

Ради интереса, попробовали через 4G.

На машинке - habrahabr.ru/company/virt2real/blog/223145/
На самолёте - habrahabr.ru/company/virt2real/blog/223183/

Я с аппами в Мск, машинка и самолёт - в Питере.

Классно!

Мне казалось что диаграммы антенн 3G и 4G смотрят на землю и соответственно не больно-то высоко взлетишь.
До какой высоты поднимались?
Мониторинг уровня сигнала yota можно как-то включить?

Gol
ssh1:

Классно!

Мне казалось что диаграммы антенн 3G и 4G смотрят на землю и соответственно не больно-то высоко взлетишь.
До какой высоты поднимались?
Мониторинг уровня сигнала yota можно как-то включить?

Да, вот как раз думаем что в этом и дело (наземные антенны на высоту не рассчитаны). Телеметрия с борта идёт, передаётся как раз уровенб сигнала, rssi и ещё несколько чисел (сервер команд на борту берёт инфу со свистка локально по адресу 10.0.0.1/status), на видео с машинкой в самом конце я как раз эти числа и озвучиваю коллеге по скайпу 😃 так вот, сигнал/шум на плщади был около -40 (db), на поле (на земле) около -95. При -100 видео практически пропадает. При -105 пропадают команды. Какие значения в воздухе были - мне во время полёта совсем не до них было, так что не знаю. Хотя, можно ж на записи посмотреть.

На какую высоту поднимались - а чёрт его знает, ни барометра ни жпс на борту не было. Метров 50, думаю (судя по видео)

Dimmitri
Gol:

Ради интереса, попробовали через 4G.

Прикольно, как я понял видео и управление шло по UDP.

Сергей а видео поток с Gstremer-а, возможно запихнуть в “Mission Planner”, вроде есть исходники свободные исходники к нему. Было бы удобно, там же готовая телеметрия + HD поток с Gstremera.

Schrodinger

я можно спросить? В чем проблема закодировать HD в аналог (по образу PAL) и передать?

=VinT=
Dimmitri:

Прикольно, как я понял видео и управление шло по UDP.

Сергей а видео поток с Gstremer-а, возможно запихнуть в “Mission Planner”, вроде есть исходники свободные исходники к нему. Было бы удобно, там же готовая телеметрия + HD поток с Gstremera.

Дмитрий,

Я модифицировал droidplanner (rcopen.com/blogs/195763/18677)
Могу выложить установочный файл.

Dimmitri
=VinT=:

Я модифицировал droidplanner (rcopen.com/blogs/195763/18677)
Могу выложить установочный файл.

Классно! Сергей а на видео там телеметрия накладывается, я просто не знаком с этим ПО.
Выкладывайте я думаю многим будет интересно.

=VinT=
Dimmitri:

Классно! Сергей а на видео там телеметрия накладывается, я просто не знаком с этим ПО.
Выкладывайте я думаю многим будет интересно.

Файл доступен по ссылке yadi.sk/d/qcuVPQz6Qde8j. Это ПО для андроид. Должно работать на версиях >= 4.3. Поток gstreamer принимает по UDP на 5000 порту.
Телеметрия там доступна на отдельной вкладке.
Наложение на видео потока gstreamer телеметрии делать относительно не сложно.

РД00
Gol:

На самолёте - habrahabr.ru/company/virt2real/blog/223183/
Я с аппами в Мск, машинка и самолёт - в Питере.

Мощь. Примите поздравления 😃

А в сочетании с портированным на V2R ArduPilot’ом (см. forum.virt2real.ru/viewtopic.php?f=41&t=13303&star…) получится вообще замечательно. Даже по минимуму, без маршрутов, чтобы он держал только крен-тангаж на случай замирания видео.

17 days later
schs

Захотелось попробовать на коптере.
Подскажите, что будет лучше:

  1. купить обычную ip камеру + wifi роутер + усилитель.
  2. VIRT2REAL + WiFi + камера + усилитель.
    Никаких сверхзадач не ставится, хочется изображения лучшего чем можно передать черех аналоговый видеотракт.
Tahorg

Есть мнение что не wifi, a что-то из каталога UBIQUITI

тигромух
schs:
  1. купить обычную ip камеру + wifi роутер + усилитель.

HD IP-камера у нас стоит 4-6 т.р. Не факт, что удастся с первого раза купить подходящую под наши цели (латентность, протокол и т.п.). Исследований этого вопроса в интернете я не нашел. Очевидно, желающих тратить столько денег просто нет 😃

В итоге я купил на ибее распберри с камерой. Получилась та же IP-камера, только в более колхозном виде и за ~3т.р. 😃
По сравнению с виртурилкой есть несколько проблем, например, нельзя нарисовать ОСД (возможно, верменно), вряд-ли когда-нибудь будет работать нативный АПМ, нет HDMI входа и т.п. Но чтоб просто попробовать HD FPV - потянет 😃

schs
Tahorg:

что-то из каталога UBIQUITI

Как вариант. Пробовали? Какую из их камер можете посоветовать?

тигромух:

Не факт, что удастся с первого раза купить подходящую под наши цели (латентность, протокол и т.п.)

Вот и я опасаюсь взять совсем неподходящее. Пара простых с VGA разрешением есть, есть хорошая AXIS, но у неё цена слишком уж высокая.

тигромух:

В итоге я купил на ибее распберри с камерой. Получилась та же IP-камера, только в более колхозном виде и за ~3т.р.

Посмотрю, спасибо.

schs

Взял у знакомого raspberry, без модуля камеры, подключил Logitech C310. Качество нормальное, но динамическое изображение мажет крайне сильно, не для полётов.
Придёт с родной камерой, попробую ещё раз. Поток в MJPEG ~10Mbit

=VinT=
тигромух:

HD IP-камера у нас стоит 4-6 т.р. Не факт, что удастся с первого раза купить подходящую под наши цели (латентность, протокол и т.п.). Исследований этого вопроса в интернете я не нашел. Очевидно, желающих тратить столько денег просто нет 😃

В итоге я купил на ибее распберри с камерой. Получилась та же IP-камера, только в более колхозном виде и за ~3т.р. 😃
По сравнению с виртурилкой есть несколько проблем, например, нельзя нарисовать ОСД (возможно, верменно), вряд-ли когда-нибудь будет работать нативный АПМ, нет HDMI входа и т.п. Но чтоб просто попробовать HD FPV - потянет 😃

Я проводил мини тестирование вариантов передачи видео потока:

  1. Rasbery Pi и usb камера в MJPEG

Плюсы

1.Минимальная задержка(<0,1 сек) по сравнению с h264 (картинка сразу отсылается после передаче с сенсора, в h264 сначала копиться последовательность фреймов)
2. В темноте передаёт видео лучше чем rasbery pi cam(тут надо потестировать и у последней вырезается ИК фильтр что позволяет ей снимать в темноте)

Минусы

  1. Высока плотность потока (к примеру 640*480*30 кадров это около 15 мбит/c). Т.е. это сразу делает невозможным слать такой поток через интернет с минимальной задержкой, а если делать передачу через wifi точку это значит её высокую мощность. Надо понимать что при такой плотности потока по wifi при минимальном удалении от спота будут сразу теряться картинки из потока.

  2. Низкое качество cmos сенсора. Дешёвые usb камеры имеют низкое разрешение (0,3-1 мегапикселя)и фиксирование фокусное расстояние. Кроме того у многих разрешение выше 640x480 получается увлечением картинки.

  3. Большие задержки на высоких разрешениях. Тут всё зависит от цены камеры. Дешёвые камеры снимают 720p c частотой 5 кадров в секунду. Дорогие стоит от 3к рублей.

  4. Маленький угол обзора.

  5. Rasbery Pi и usb камера в h264

Слаборабочий вариант т.к., для минимальной задержки нужно максимальное число кадров и высокое разрешения картинки (первое в приоритете, у меня получался минимум задержки на 720p 30 кадрах.) Большинство usb камер не умеют делать поток HD с частотой 30 кадров. Кроме того простенькие usb камеры содержат ограниченный зашитый набор настроек картинки (баланс белого, яркость контрастность и пр.). Из-за этого камеру нельзя настроить на кодирование динамического потока(когда модель движется) и получаются артефакты в потоке h264

  1. Rasbery Pi и родная камера в h264
    Вроде пока самый рабочий вариант

Плюсы

  1. Относительно небольшая задержка (0,2-0,3 сек - подробнее см rcopen.com/blogs/195763/18677)
  2. Автонастройка качества картинки и освещения (а также множество опций типа antishake)
  3. Возможность снимать картинку в FULLHD на 30 кадрах

Минусы

  1. Маленький угол (<60 град.)
  2. Плохо работает в условиях слабой освещённости. Качество динамической картинки также сильно зависит от освещённости. Если света меньше среднего - на картинке будут артефакты при резких движениях.

Ещё нюансы которые могут быть полезны:

  1. Минимальная задержка при передаче в h264 через gstreamer достигается при опции tune=zerolatency. К сожалению реализация модуля камеры omxh264dec(для rasbery pi cam) не поддерживает этот флаг (могла бы быть задержка на уровне 0,15 сек вместо 0,25). Возможно у ребят с виртурилкой эта проблема решена.(будут лишние деньги - куплю их девайс).

  2. У родной rasbery pi cam никакая оптика и угол обзора около 60 град. Я покупал wide линзу от iphone (вот такую ) она расширяет до 90 градусов(что тоже маловато, плюс к тому с квадрика отваливается). Сейчас я купил у друзей китайцев модуль с крепежём для линз под M12x0.5 и набором линз до 180 град. Фото ниже. Как будут результаты отпишусь в блоге.

тигромух
=VinT=:
  1. Маленький угол (<60 град.)

У меня на FullHD угол маленький, но если переключить в 720p получается вполне адекватный. Можно летать.
Но у меня китайская камера с M12.

=VinT=:
  1. Плохо работает в условиях слабой освещённости. Качество динамической картинки также сильно зависит от освещённости. Если света меньше среднего - на картинке будут артефакты при резких движениях.

Это скорее проблемы h264 и низкого битрейта.

=VinT=:
  1. Минимальная задержка при передаче в h264 через gstreamer достигается при опции tune=zerolatency. К сожалению реализация модуля камеры omxh264dec(для rasbery pi cam) не поддерживает этот флаг (могла бы быть задержка на уровне 0,15 сек вместо 0,25). Возможно у ребят с виртурилкой эта проблема решена.(будут лишние деньги - куплю их девайс).

Подождите, вы тащите с камеры поток в H.264 и декодируете его? Или для чего вам omxh264dec?
Я пытался брать сырой поток с камеры и кодировать через omxh264enc, но получил адские тормоза. Скорее всего из-за сырого драйвера v4l. Или руки у меня не оттуда 😃
Пока что я остановился на общепринятом варианте скармливания потока с raspivid в gstreamer через fdsrc. Задержка ~0.2 (через wifi). Но с идеей наложить ОСД пришлось расстаться 😦

yurik999

расскажите какие девайсы надо прикупить чтоб через вашу плату и 3g например транслировать видео HD (или более высокого разрешения чем обычные аналоговые) . Ну и по деньгам тож.

=VinT=
тигромух:

У меня на FullHD угол маленький, но если переключить в 720p получается вполне адекватный. Можно летать.
Но у меня китайская камера с M12.

То что указано выше справедливо для raspberry pi cam и usb камер : Creative Live! Cam Sync HD и Logitech Webcam C170. Наиболее критична проблема с углом у raspberry pi cam без оптики.

тигромух:

Это скорее проблемы h264 и низкого битрейта.

Согласен. h264 не очень подходит для динамики.

тигромух:

Подождите, вы тащите с камеры поток в H.264 и декодируете его? Или для чего вам omxh264dec?
Я пытался брать сырой поток с камеры и кодировать через omxh264enc, но получил адские тормоза. Скорее всего из-за сырого драйвера v4l. Или руки у меня не оттуда 😃
Пока что я остановился на общепринятом варианте скармливания потока с raspivid в gstreamer через fdsrc. Задержка ~0.2 (через wifi). Но с идеей наложить ОСД пришлось расстаться 😦

У меня первая версия передачи работала с цепочкой omxh264enc. Нагрузка на процессор малины была в среднем 10%.(для raspberry pi cam). Задержки о которых Вы пишите выше возможны:

Для raspberry pi cam

  1. Из-за старой прошивки raspberry (нуженrpi-update)
  2. Старой версии gstreamer (у меня стоит 1.0.7)

Для USB камеры

  1. Из-за несоотвествия формата изображений - большинство usb камер нативно даёт картинку в jpeg. При перекодировании как раз и подвивает процессов (т.е. jpeg --> raw --> h264).

Сейчас я тоже делаю цепочку на raspivid. Но тут надо понимать что в него зашит кусок кода от кодека omxh264enc. Также я писал о опции tune=zerolatecy. Это команда применяется по всей цепочке gstreamer. В случае использования утилиты raspivid с перенаправлением потока она не оказывает на него никакого воздействия.

yurik999:

расскажите какие девайсы надо прикупить чтоб через вашу плату и 3g например транслировать видео HD (или более высокого разрешения чем обычные аналоговые) . Ну и по деньгам тож.

Евгений - посмотрите в моём блоге, я все шаги описываю.
Сейчас у меня сам проект в промежуточном состоянии(не получается облетать квадрик, по программной части всё работает).
По 3g ещё не делал этап.

Грубо расходы на блок видеопередачи в HD 3400 р:
rasbery pi A = 1 000
rasbery pi cam = 1 000
usb hub =200 р
ubec 5A =200 р
3g модем мегафон = 1000

Если нужно ещё управлять через сеть то:
APM 2.5 = 2500
Андроид планшет = мин 7000