v1.8.0

v1.8.0 är en större funktionsutgåva med fokus på nätverk och video: den lägger till WiFi-programmering av OpenMV Cam, en videoinspelare för bildbufferten och en meny Tools > Video Tools som bygger på en medföljande ffmpeg/ffplay. Den lägger också till stöd för det nya kortet OpenMV Cam H7 (OMV4) och utökar IDE:t till Raspberry Pi (Linux ARM). Den här utgåvan stannar kvar på basen Qt Creator 4.0.2 och innehåller inga brytande ändringar för befintliga projekt.

Höjdpunkter

  • WiFi-programmering. IDE:t lyssnar nu efter UDP-broadcastannonseringar från OpenMV Cam som är utrustade med en WiFi-sköld, listar upptäckta kameror (namn plus IP:port) i anslutningsdialogen och kommunicerar med dem över TCP som ett alternativ till serieporten (69dc7dfbf).

  • Videoinspelare för bildbufferten. Nya verktygsfältsknappar Record/Stop fångar den direktsända bildströmmen till en OpenMV-ImageWriter-fil samtidigt som en statusetikett visar förfluten tid/storlek/FPS (39142ef70, 5aceab31a).

  • Menyn Video Tools. Tools > Video Tools lägger till Convert Video File och Play Video File, som använder en medföljande ffmpeg/ffplay för att omkoda och spela upp videor och som transparent först konverterar ImageWriter-.bin-inspelningar till MJPEG AVI; Play Video File är endast tillgängligt på Windows och macOS, eftersom ffplay inte medföljer för Linux/Raspberry Pi (d35f8d1ca, 8a99c994f).

  • OpenMV Cam H7 (OMV4). Det nya STM32H743-kortet känns nu igen och levereras med sin egen medföljande startladdare och fasta programvara (e14810382).

  • Stöd för Raspberry Pi. IDE-byggen för Linux ARM är nu aktiverade, vilket tar OpenMV IDE till Raspberry Pi (f551b5f97).

Nya funktioner

  • Konfigurera OpenMV Cam-inställningsfil. Tools lägger till en dialog för att skriva kamerans boot-/WiFi-inställningar i main.ini, inklusive att aktivera WiFi, välja klient- kontra åtkomstpunktsläge, SSID/lösenord/säkerhetstyp, kortets namn och ett alternativ Duplicate REPL on the UART on startup som lagras under boot-inställningarna i main.ini (69dc7dfbf, 39142ef70).

  • Kommandoradsalternativ för nätverksterminal. Lade till -open_udp_client_terminal, -open_udp_server_terminal, -open_tcp_client_terminal och -open_tcp_server_terminal vid sidan av det befintliga alternativet för serieterminal (6362066a8, d75209269).

  • Ytterligare kommandoradsalternativ. Exponerade -update_resources, -open_serial_terminal (port_name:baud_rate), -override_read_timeout och -override_read_stall_timeout (061aacf15).

  • Serverläge för terminal. UDP/TCP-terminalanslutningar kan nu köras i serverläge och binda till en lokal port (port 0 väljer valfri) i stället för att enbart ansluta ut till en värd (956e8a2f5).

  • Nya exempelskript. Lade till exempel för linskorrigering, 3D-rotationskorrigering och sensorvila med låg effekt, och skrev om exemplet för linjesegmentdetektering till det nya API:t find_line_segments(merge_distance, max_theta_diff) (061aacf15).

Övriga ändringar och förbättringar

  • Funktionsargumentens calltips och syntaxmarkering sträcker sig nu korrekt över flera rader, så flerradiga funktionsanrop behåller sina argumenttips och sin markering (6535e9fdd, 4638bdd18).

  • Terminalens statusrad för upplösning/ROI rapporterar nu även antalet pixlar i ROI:n (956e8a2f5).

  • Registreringsdialogen för OpenMV Cam visar nu kortet/ID:t och en supportmejladress, och förloppsdialogen Connecting... rekommenderar att man klickar på Cancel efter 5 sekunder (4638bdd18, e14810382).

  • Panelen Search Results formaterar nu om sin radnummermarginal och resultattext med explicita färger för mörkt tema så att de är läsbara mot det mörka gränssnittet (b2599f9ea).

  • Skrivslingorna för serie-/UDP-/TCP-terminalen ger nu kort efter mellan skrivningar för att hålla gränssnittet responsivt och förbättra genomströmningen (c4700e2b0).

  • Värdefälten för histogramstatistik reserverar nu en fast minimibredd så att panelen inte längre flödar om när siffrorna ändras, och knapparna i lägesväljarlådan sträcks ut i stället för att använda en fast bredd på 160px (5aceab31a).

  • Undertryckte den falska varningen JIT is disabled for QML vid start via en anpassad Qt-meddelandehanterare (954220e39).

Buggfixar

  • Dokumentationsverktygstips och markering känner nu igen Python-undantagstyper (behandlade som data), och flera modul-/indexdokumentationsposter fixades så att de visas korrekt (4638bdd18, 3613a7867, 897b9b0e2, e3e41c56e).

  • Härdade paketuppdateringskontrollen och tolkningen av kamerabroadcast/-registrering med förankrade, trimmade reguljära uttryck och striktare matchning av HTML-svar för att undvika falska träffar (461af1148, 4638bdd18).

  • Korrigerade kortidentifieraren för OpenMV Cam M4 (OpenMV2) som används för API-detektering av gammal fast programvara från OMV2 till OPENMV2 (449024fe8).

  • Härdade kamerans I/O och videoomkodaren mot korrupt/överstort bilddata med striktare gränskontroller för bredd/höjd/bpp/varaktighet, och undvek en division med noll vid beräkning av video-FPS (08248f208, d0cbc27e5).

  • Verktygen för videokonvertering/-uppspelning fungerar nu på macOS, 32-bitars och Linux-ARM genom att starta ffmpeg/ffplay via ett genererat skalskript eller ett cmd.exe-omslag och genom att inkludera Linux-ffmpeg-binärer (b9644e859, 9f0520bbe, 35eb69bce, c4700e2b0).

Plattforms- och verktygsstöd

  • Qt Creator-bas: 4.0.2.

  • OpenMV Cam H7 (OMV4, STM32H743): nytt kort som känns igen med sin egen medföljande startladdare och fasta programvara (e14810382).

  • Medföljande OpenMV-firmware: uppdaterad till 2.6.0 för OPENMV2/OPENMV3/OPENMV4 (e14810382).

  • Medföljande ffmpeg/ffplay: statiska ffmpeg-byggen av 3.3.3 tillagda för Windows, macOS, Linux x86, Linux x86_64 och Linux ARM (Raspberry Pi); ffplay medföljer endast för Windows och macOS (2193d7923, af92ad59e).

  • Raspberry Pi (Linux ARM): byggen aktiverade genom att inaktivera offlinehjälpens HelpManager och byta bindist-paketering till en tar.gz (f551b5f97).

Brytande ändringar

Inga. Den här utgåvan stannar kvar på basen Qt Creator 4.0.2, och befintliga projekt och arbetsflöden påverkas inte.