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

Борис_Х
macrokernel:

oleg70, Борис Х,

Какой транспортный протокол вы используете для передачи видео - UDP? В системах видеоконференцсвязи используется протокол RTP. Может, стоит его попробовать? Вроде бы что-то есть под Linux для RTP. Навскидку гугл кое-что нашел.

Сергей, я так глубоко не копал… Для видео использую стандартный gstreamer, не углубляясь в его работу. Подозреваю, что он использует именно RTP протокол

Борис_Х
macrokernel:

Ещё кто-то тут говорил про броадкаст. Может быть стоит попробовать? Я так понимаю, что при широковещательной рассылке уменьшаются накладные расходы на канальном уровне - экономия на ARP-запросах?

Если для вас не принципиально наличие двусторонней связи, то wi-fi broadcast даст определённые преимущества. Как минимум, уменьшится лаг и увеличится дальность.

macrokernel:

Может быть gstreamer-у надо указать какие-нибудь RTP-параметры в явном виде?
…freedesktop.org/…/gst-plugins-good-plugins-plugin…

Какое железо вы планируете использовать? Вы уже запускали gstreamer на своей малине?

schs
macrokernel:

Какой транспортный протокол вы используете для передачи видео - UDP? В системах видеоконференцсвязи используется протокол RTP. Может, стоит его попробовать?

Это два разных уровня. RTP можно как по UDP так и по TCP пустить. RTP не лучший вариант в силу необходимости двустороннего обмена. Т.е. при обрыве связи будет процедура согласования, и так при каждом обрыве.

macrokernel
Борис_Х:

Какое железо вы планируете использовать? Вы уже запускали gstreamer на своей малине?

Я пока не приступил к реализации, только обдумываю варианты.

schs:

RTP не лучший вариант в силу необходимости двустороннего обмена.

Тогда да, RTP не нужен.

Борис_Х:

Если для вас не принципиально наличие двусторонней связи, то wi-fi broadcast даст определённые преимущества.

А, то есть wi-fi broadcast - это отдельный термин. Я думал имеется в виду обычный IP broadcast. Надо почитать.

Борис_Х
macrokernel:

Я пока не приступил к реализации, только обдумываю варианты.

А какой полётный контроллер стоит на дроне?

Борис_Х
macrokernel:

PixHawk Lite

Тогда есть смысл использовать gstreamer и обычный wi-fi. В последние версии qgroundcontrol вшит плагин gstreamer, видео с дрона будет отображаться непосредственно в окне qgroundcontrol на компьютере или планшете. Настраивается просто, работает стабильно 😃

macrokernel

Видел эту картинку, действительно удобно, но я больше склоняюсь к шлему.

Какая у Вас получается дальность?

msv
schs:

RTP можно как по UDP так и по TCP пустить.

Практически RTP всегда над UDP. Ну а уж привязываться к стандарту RTP или изобретать свои заголовки, сугубо ваше решение…

Борис_Х
macrokernel:

Какая у Вас получается дальность?

Порядка 600м, дальше не пробовал. Думаю, по прямой около 700-800м вполне получится

oleg70
macrokernel:

А, то есть wi-fi broadcast - это отдельный термин.

Автор этой работы двигается в правильном направлении, а именно - “копает” сам линукс в сторону оптимизации задачи под цели FPV…
Но пока что (ИМХО) результат выглядит как “полумеры”, что в принципе не отрицает и сам автор…

9 days later
OTR1UM

Народ, а кто может объяснить нубу в 2 словах, в чем сложность портировать WifiBroadcast на нормальное железо на allwinner’е, например на Orange Pi ?
Аппаратный h264, MIPI / CSI и возможность накатить дебиан есть, например, на allwinner H3, который стоит 3-4$ за камешек.

raspivid -ih -t 0 -w 1280 -h 720 -fps 30 -b 4000000 -n -g 60 -pf high -o – | sudo ./tx -b 8 -r 4 -f 1024 wlan0

Я так понял, весь бродкаст это тупо программка tx, работающая через либу pcap, которая жрёт поток, который ей организует raspivid.
Получается, проблема только в raspivid, всё остальное встанет на любую линух-машину, в т.ч. на оранж.
Но для оранжа есть аналогичные распивиду тулзы, которые умеют в захват видео с камеры и формирование потока.
Может я чего-то не учитываю?

schs
OTR1UM:

Народ, а кто может объяснить нубу в 2 словах, в чем сложность портировать WifiBroadcast на нормальное железо на allwinner’е, например на Orange Pi ?

Вы портировали софт на иное железо? Сложность в отсутствии заинтересованных программистов.

OTR1UM:

Может я чего-то не учитываю?

Многого. Orange Pi хоть и имеет возможность аппаратного декодирования, но драйвера под Debian(Raspbian) нет, есть работающий только под Андроидную прошивку. Собранного gstreamer c аппаратным кодированием\декодированием тоже нет.

Bah

При выходной мощности 500 мВт и в 500 МГц , частота является незаконной в большинстве стран мира!
Кроме того, в комплекте с антеннами для 5.8GHz … не 500MHz, так что придется делать свои антенны.

slv55
Bah:

При выходной мощности 500 мВт и в 500 МГц

Это чьи частоты? DVB-T ?
Интересно на какую дальность он может пробивать.

Bah

вот тут полет есть.
На носителе две камеры. HD и обычная.
HD зависла при дальности 500м и высоте 210м
Задержка около 0,5 сек.

slv55
Bah:

HD зависла при дальности 500м

если там 2,4/5,8 антенны - то удивительно как оно вообще работало, а на полуволновую антенну (7,5 см) это как то не тянет

Bah:

Задержка около 0,5 сек.

по разным тестам вроде от 0,13с и больше, почему иногда сильно тормозит не понял, впрочем китайские гоупроподобные камеры сами по себе вообще очень не быстрые.

igorek76yaroslavl
schs:

Вы портировали софт на иное железо? Сложность в отсутствии заинтересованных программистов.

Многого. Orange Pi хоть и имеет возможность аппаратного декодирования, но драйвера под Debian(Raspbian) нет, есть работающий только под Андроидную прошивку. Собранного gstreamer c аппаратным кодированием\декодированием тоже нет.

Эх, жаль… Я уж думал брать с китая, начинать разбираться… а мощи малины 3b хватит за глаза, чтоб зажать 720р без сильных потерь во времени? А эта приблуда кстати на оранж не встанет? Там, помнится разные интерфейсы камер…
auvidea.com/b102-hdmi-to-csi-2-bridge-22-pin-fpc/

StiMan

Привет. Я новенький.
Использует кто-то ez-wifibroadcast для RC?
Использую RPi3b на обеих сторонах.
Видео работает.
Хочу примерить PlayStation2 gamepade для RC как на видео:

На стороне TX подключил serial0 через USB-TTL converter к ноутбуку.
putty на COM3 115200 смотрю RC данные, но их нет.
Джойстик определился и реагирует на тест (jstest /dev/input/js0).
На стороне TX side TP-Link TL-WN722N (Atheros AR9271). Исправил файл (/etc/modprobe.d/ath9k_htc.conf to fw_bitrate=12).На стороне RX side D-Link DWA-140 rev B3: (rt: 5392). Не исправлял этот фйл(/etc/modprobe.d/ath9k_htc.conf to fw_bitrate=18).
Как составить файл joyconfig.txt?
Или установлены неправильные дрова?
Или нужны одинаковые WiFi модули на обе стороны TX/RX (Atheros, например)?