Täysdigitaalinen matalalatenssinen HD videolinkki

Tämmöistä keskusteliin IRCissä eilen, ajattelin ottaa talteen ennen kuin unohtiin (lisäksi onnistuin ehkä värväämään yhden RF-expertin mukaan). Tuo nyt on vähän IRC-henkistä tajunnanvirtaa mutta lue kuitenkin kokonaan ensin. TLDR versio on että pitäis olla mahdollista mutta ei ole helppoa eikä halpaa. FPGA, signaaliprosessointi ja RF (5.8GHz luokkaan) taitajia kaivataan.

Toki jos tiedät valmiin ratkaisun harrastajan hinnoissa niin saa mainita (mutta ennen mainostamista on syytä tuplatsekkaa että kyseessä on tosiaan vähintään full-hd linkki ja että siitä on joku latenssispeksi joka on riittävän matala [wifi-valvontakamera ei esim tule kyseeseen kuten keskustelusta näkyy]).

16:06 <suovula> rambo_: ei taida kuitenkaan missään olla FPV-kameraa joka ei ole NTSC/PAL pohjainen analogihirvitys
16:07 <rambo_> eipä taida, ne paremmatkin 5GHz linkit taitaa olla analogisia
16:08 <rambo_> mulla on kyllä semmonen kiva kaappauspalikka jolle voi antaa analogia ja se antaa DV50:stä ulos
16:08 <rambo_> toimii myös toisen suuntaan
16:08 <rambo_> FireWire FTW
16:10 <suovula> tossa siis chippi mikä osaisi Electronic Components and Parts Search | DigiKey Electronics mutta ei hintaa jne.
16:10 <Roboneko> Title: RF Transmitters | RF/IF and RFID | DigiKey (at www.digikey.com)
16:12 <suovula> ja valmiit palikat maksaa ns. liikaa This product is no longer available.
16:12 <Roboneko> Title: Whdi 5ghz 1080p Wireless Hdmi Transmitter And Receiver 100 Meters - Buy 1080p Whdi Wireless Hdmi Transmitter,Wireless Hdmi Transmitter 100 Meters,Hdmi Usb Wifi Extender Product on Alibaba.com (at www.alibaba.com)
16:12 <suovula> mutta eiköhän jostain vielä ilmesty, ei jaksaisi itse alkaa malmia louhimaan taas
16:15 <rambo_> aika ison näkönen paketti kans toi valmis
16:15 <rambo_> mutta ajattelit laittaa FPV-kameraksi jotain mikä antaa HDMItä suoraan ulos ?
16:16 <suovula> no ei niitä lentäviin ole suunniteltu, lähinnä että hintaluokka on sitten tuota
16:16 <suovula> no se nyt vaan esimerkki digitaalisesta kuvalinkistä missä ei olis mitään latenssia
16:16 <rambo_> aina on, varsinkin kun lasketaan kennosta silmään
16:17 <rambo_> mut tietty itse linkki voi olla aika vikkelä tossa
16:17 <suovula> mutta ei siis mitään codekkeja ja framepuskureita, eli ns. line-speediin mahdollisuus
16:18 <suovula> jos siis rolling-shutter -kamerasta vetää dataa suoraan rf-linkkiin, vastaavasti kuin analogisenakin menee
16:19 <suovula> eli latenssit on mikrosekunttiluokkaa maksimissaan
16:28 <rambo_> suovula: 12USD näyttäis olevan http://www.mouser.com/Maxim-Integrated/Semiconductors/RF-Integrated-Circuits/RF-Transmitter/MAX2850-Series/_/N-3uvegZ1yykw3qZ1yz3sqo
16:28 <Roboneko> Title: Maxim Integrated MAX2850 Series RF Transmitter | Mouser (at www.mouser.com)
16:28 <suovula> oh, heikkki vois vääntää mulle levyn, jeha
16:31 <rambo_> sitä vastaripäätä (MAX2851) ei kyl näyttäis olevan mouserillakaan…
16:35 <rambo_> saiskohan niitä sampleina ?
16:36 <suovula> joo, selvitetään tämä
16:36 <suovula> tai joku vastaava linkki
16:36 <suovula> ellei joku sitten löydä valmista ratkaisua, luulis löytyvän kun FPV on kuitenkin jo aika vanha harrastus
16:40 <rambo_> tuntuu kyl et kaikki on analogisia
16:40 <vis> miksei sais olla analoginen?
16:40 — rambo_ ei ole ihan varma
16:41 <vis> 2.4GHz analogiset systeemit olis näemmä kivan huokeita
16:41 <•temmi_hoo> luulis olevan parempi
16:41 <suovula> analogisten resot on sitten maksimissaan sitä 768x576, jos sitäkään
16:42 <Hwl> tikitaalisuus aiheuttaa tyypillisesti latenssia enemmän
16:42 <suovula> miksi?
16:42 <Hwl> koska enkoodaus/dekoodaus?
16:42 <•temmi_hoo> eiköhän se ole siinä se syy
16:42 <vis> reso joo
16:42 <suovula> mutta miksi enkoodata jollain frame/blokkijutulla?
16:43 <rambo_> jos kaistaa riittää niin voihan sitä kuvaa tosiaan paiskoa raakana
16:43 <XTL> Lisää palaa jos pitää vähänkään saada tietoturvaa
16:44 <suovula> miten cryptaus esim. lisää kaistantarvetta?
16:44 <Hwl> niin, minkälaisia optioita löytyy digitaaliseen pakkaamattomaan videonsiirtoon?
16:44 <Hwl> langattomasti
16:44 <rambo_> ja ei se lisää latenssia merkittävästi kun käytetään jotain sopivaa stream cipheriä
16:44 <XTL> suovula: ei välttämättä kaistaa, mutta latenssia
16:44 <suovula> ja voihan sitä pakata, mutta ei millään frametasolla
16:44 <XTL> eikä välttämättä tosiaan sitäkään hirveästi
16:44 <suovula> no ei niin
16:45 <XTL> kryptatulle videolinkille luulisi olevan edelleen käyttöä
16:45 <rambo_> kuitenkin se sopiva cipheri toteutetaan raudalla, FPGA:lla jos ei muuten
16:45 <suovula> tietti pitää se blokkimoodi valita sillain että ei mene koko scanline yhdestä häiriöstä
16:45 <Hwl> joskin joissain noissa fpv-kameroissa saattaa vissiin olla itessään jotain digitaalisia suodattimia jokatapauksessa…
16:46 <suovula> ja siis tiedän että tämä on kyllä tehty oikeinkeinkin, mutta ei siviili tai harrastajapuolella
16:46 <suovula> ja ihmettelen että miksi
16:46 <rambo_> varmaan hinta
16:46 <Hwl> hinta varmaan
16:46 <XTL> Niin
16:46 <rambo_> ja virrankulutus ja tehorajat ja…
16:47 <Hwl> analoginen fm-tv-lähetin jossain tuolla 2.4GHz tai 5.8Ghz maksaa lähinnä pennejä suhteessa
16:47 <•temmi_hoo> ehkä se pitää sitten tehä ite ja odotella että kaupalliset tulee perässä
16:48 <Hwl> siitäpä projekti
16:48 <rambo_> mutta ton mainitun linkin kaista tais olla 20MHz, ei taida riittää raalle datalle suoraan kennolta
16:48 <Hwl> tällä yhdellä hepullahan on jo itsetehty digitaaliradio
16:49 <rambo_> kaipa siinä wireless-hdmi:ssä on sitten joku pakkausstandardi
16:51 <suovula> pakkausessa pitäs huomioida FPV eli tietynlaiset häiriöt ei ole haitaksi jne.
16:52 <suovula> helposti menee neljäsosaa, värit 4:2:0, muutaman scanlinen viiveellä saa jo diffiä ja kuvan keskelle voi laittaa enemmän kaistaa jne.
16:53 <suovula> kyllä se silti ihan mahdollinen on, siis FPV käyttöön, ei tietysti mihinkään langattomaan TV-lähetyksen siirtoon mihin ne yleensä on optimoitu
16:54 <suovula> mutta jos ei kesän aikana ala valmista halpaa löytymään, niin sitten tehdään itse kalliimmalla
16:54 <Hwl> digitaaliset häiriöt on tietysti myös vähän hankalampia
16:56 <Hwl> analogikohinaisesta kuvasta saa vielä ehkä jotenkin selvää
16:57 <suovula> no se digisignaali kannattaa moduloida myös siten, että häiriöt on aivoille paremmin setvittävissä
16:58 <suovula> haatavampaa sitten se cryptaus, ei mahdotonta mutta vähän tulee latenssia
16:58 <rambo_> kuullostaa aika hardcore DSP-projektilta tämä
16:58 <•temmi_hoo> helposti fpga:lla
16:58 <suovula> ei, vaan hardcode fpga
16:59 <suovula> mikä nyt ei oikeasti ole niin pahanakki kuin voisi kuvitella, homma on labilla ihan kohtuullisesti hanskassa
16:59 <suovula> yksin vaan ei kaikkea kerkiä, siksi pitää saada heikkki värvättyä elesuunnitteluun
17:00 <rambo_> krypto ja bittihäiriöt on ikävä yhdistelmä, mutta kaipa siihen itse modulaatioon saa jonkun virheenkorjauksen joka tehdään krypton jälkeen
17:01 <rambo_> mut jos vaikka ensin huolehtis siitä että saa kryptaamatonta dataa liikkumaan, se pakkaus pitää tietenkin tehdä ennen kryptoa kanssa
17:01 <rambo_> tai siis kaikki pakkaus
17:02 <suovula> se kannattaa jakaa se signaali ensin tärkeysluokkiin, eli vaikka 4x4 lohkoina, joiden dc-läheteään pariin kertaan, sitten kirkkaus ja värit
17:02 <suovula> jonkun 4 scanlinen lantenssi vielä olis ihan ok
17:02 <vis> jaa niinkö nuo tekee?
17:03 <vis> priorisoidut lähettää useammin?
17:03 <suovula> vis: siis tässä ihan ajatuksen virtaa että miten lähtisin ratkomaan
17:03 <vis> oon ihmetellyt että miten ads-b:ssä näkyy ekana jotain transponderin rekisteritietoja, sitten nopeus ja korkeus ja viimeisenä vasta sijainti
17:03 <vis> nii noinhan sekin voi olla tehty
17:04 <rambo_> suovula: mulla on muuten vanhasta n900:sta se kameramoduuli jos haluat kokeilla jutella moiselle
17:04 <suovula> kameramoduli ei ole ongelma
17:04 <suovula> ja siihen mulla olis jo ns. ratkaisu
17:05 <vis> proprietarykännykameramoduli voi olla mysteerillinen kaveri tulkita
17:05 <suovula> mutta joo, tossa voisi olla ideaa, katsotaan miten alkaa etenemään
17:05 <rambo_> niin siis lähinnä jos haluais just nyt kokeilla sitä että lukee suoraan kennolta dataa, pakkaa jotenkin ja viskoo toiselle fpga:lle purettavaksi HDMIstä ulos
17:06 <rambo_> silleen vaiheittain että ensin kattoo että homman saa toimimaan niin että kun käyttää jotain niistä fpga:n vikkelistä transreceiver blokeista datan siirtoo
17:06 <suovula> no saan ihan goprosta kyllä hdmitä fpgalle
17:07 <suovula> latenssi vaan on mitä on, kun se ensin pakkaa sen videona ja sitten purkaa hdmille
17:07 <rambo_> niin…
17:07 <rambo_> mulla olis tosiaan teoriassa toimiva kameramoduuli josta saa suoraan kennon datan
17:08 <rambo_> kaipa raspin kameramoduulillakin vois harjoitella, sekin antaa kai aika leveällä väylällä kennon datan
17:09 <rambo_> ja SOCissa on sitten hardware-tukea sen datan käsittelyyn (sekä raspin että n900:n moduulin kanssa)
17:09 <suovula> joku OV2640:n malli oli semmoinen, että siitä sai hyvin fps:ää ulos rgb-raw:na haluamansa rectin nopsaa, käytetty konenäkösovelluksissa ja on halba
17:09 <suovula> ja se linkki on tosi simppeli, olikohan kaksi differentiaali tmds:ää tjsp.
17:10 <suovula> rambo_: ilmeisesti raspin kamerakin on tommoinen, eli ei oli leveä se väylä
17:10 <suovula> “Raspin kameralinja on Mobile Industry Processor Interface Camera Serial Interface Type 2 elikkä MIPI CSI-2”
17:11 <rambo_> oli siinä aika hyvin linjoja siinä FFC:ssä mutta tietty sitä pitää käskyttääkin
17:11 <suovula> “Siinä väitetään menevät helposti1 Gbps yhtä differentiaaliparia kohti paskassa lattakaapelissa”
17:11 <suovula> “Raspissa menee käytännössä 1920108024*30 = 1.493 Gbps kahdella parilla (plus erillinen pari kellolle) käytännössä täysin virheettömästi, vaikka se kaapeli on tasan maailman halvin.”
17:17 <rambo_> näköjään sen n900:n kameramoduulin datalehteä ei ole saatavilla, “the main camera is a Toshiba ET8EK8. The datasheet of the ET8EK8 is not publicly available.”
17:18 <rambo_> mut kaipa tuo MIPI CSI on se väylä mitä kannattaa tukea, luulis että sillä on tukea jatkossakin
17:19 <suovula> jep
17:20 <rambo_> mutjoo, jos linkin pelkkä rauta maksaa satasen (jopa määrissä) niin ei ehkä ole suuri ihme jos sen retail hinta on yli tonnin
17:24 <rambo_> no eikun kasaamaan sitä että saa raspikamerasta kuvan toisen fpga:n kautta ruudulle jonkun riittävän ahtaaksi rajoitetun kaapelin läpi
17:26 <rambo_> ja sellainen modulaarinen pipeline että pakkauksen jälkeen ennen datalinkkiä voi tunkea krypton jos haluaa ja datalinkkiin virheenkorjauksen
17:29 <rambo_> eikun myös 40MHz kaista, ja per kanava, kyllähän tohon sitten jo mahtuu (vaikka pitää kyl pakkaa)

Kyllähän näitä tosiaan löytyy, mutta liikaa keskittyvät täydellisen FullHD-kuvan siirtämiseen ilman että hyödynnetään FPV:n antamia joustoja. Hinnassa se kuuluisa yksi nolla liikaa:

– M

Tässä myös digitaalilinkki COTS-osista rakennettuna https://befinitiv.wordpress.com/wifibroadcast-analog-like-transmission-of-live-video-data/.

Juuri näin ei ole tarkoitus tehdä :smile: