Kaamera GoPro Hero 5 Black
Sissejuhatus
Tegemist on seikluskaameraga, mida kasutas Harri 2017. aasta Tipikate Rattamatka metsaradade kaardistamiseks jalgratta peal. Kaameral on endal olemas ka sisse ehitatud GPS, kuid esialgu tundus, et meil sellest infost erilist kasu ei ole. Nimelt ei leidnud me tarkvara, mis kaamera poolt talletatud MP4 failidest asukohainfo kätte saaks ning seda kaardil näidata oskaks. Ainsa viite sellele, et asukohainfo seal failides kuidagi üldse talletatud on, andis 2017. aastal racerender tarkvara, mis oskas kuvada rajajoone video peale overlay kihina, mitte aga eraldi kaardil näidata.
Nagu selgus 2018. aasta aprillis, siis ei olnud probleem tingitud siiski sellest, et GoPro oma GPS info kuidagi eriliselt ära peitnud oleks. Asi on lihtsalt selles, et videofailidesse GPS info lisamine ei ole kuidagi standardiseeritud ning igal tootjal on selleks oma protokoll. GoPro poolt tehtud MP4 failidesse integreeritud asukohainfo õnnestus 2018. aasta aprillis saada kätte ExifTool utiliidiga ning seda on täpsemalt kirjeldatud allpool.
Et GoPro-ga filmitud materjali juba 2017. aastal videokaardistamiseks kasutada saaks, sai tol korral GPS seadmega talletatud ka eraldi rajalogi ning see hiljem videopildiga kokku viidud. See oli kokkuvõttes aga ebamõistlikult suur pingitus (mida on samuti kirjeldatud allpool).
NB! Nagu selgus, siis ei toimi selle GoPro GPS autos sees ja seda vaatamata sellele, et kaamerat hoiti ühe teelõigu sõitmisel filmimiseks esiakna juures. Seega tasub autos kindlasti ka GPS seadme või nutitelefoniga lisaks rajalogi talletada!
Andmete järeltöötlus
Sissejuhatus
Käesolev peatükk käsitleb andmetöötlust, mis on vajalik, et teha selle kaameraga filmitud materjal kasutatavaks videokaardistamise võtmes.
Rajalogide eksport videofailidest
Rajalogid oskab MP4 failidest eksportida ExifTool. Kuigi see tarkvara on olemas nii Windowsile kui Linuxile, siis on järgnev skript koostatud ja testitud Ubuntu peal. Lisaks kasutab skript ka GPSBabel utiliiti, et eemaldada rajalogist meie jaoks ebavajalik info (huvipunktid, marsruudid, ilma ajatemplita rajapunktid) - elu on näidanud, et neid võib sekka sattuda.
#!/bin/bash
EXTENSION="MP4"
while IFS= read -r -d '' -u 9
do
exiftool -p /usr/local/share/exiftool/gpx.fmt -ee "$REPLY" | \
gpsbabel -t -i gpx -f - \
-x nuketypes,waypoints,routes -x track,start=2000 \
-o gpx -F $(basename "$REPLY" .$EXTENSION).gpx
done 9< <( find . -type f -iname "*.$EXTENSION" -print0 )
Selle tulemusena tekkinud MP4 ja GPX failipaarid on piisavad, et need oleks võimalik mugavalt RegistratorViewer-iga avada.
Ajaloolised märkmed
Siin peatükis toodud jutt ei ole tõenäoliselt enam oluline, kuid igaks juhuks saagu siiski praegu veel talletatud. Nimelt kui 2017. aastal esimest korda seda kaamerat videokaardistamiseks kasutatud sai, siis oli puudu nii kogemustest kui võib-olla ka utiliitide toest, et andmeid oleks saanud automatiseeritult töödelda. Lahendust, mille abil MP4 videofailidest rajalogid mõistlikul kujul kätte saaks, me tol korral leida ei suutnud, samuti polnud veel välja töötatud lahendust, mis välise rajalogi videofailidega automaatselt ära seoks.
Tol korral tundus reaalsem see lahendus, et saada sünkroniseerimine käima Garmin Virb Edit tarkvaras, aga mitte RegistratorViewer-is. Samas oli Virb Edit tarkvaras bugi, mille tõttu oli vajalik kõik klipid üheks kokku monteerida ning seejärel tekitada ka võltsitud ajatemplitega GPX fail, mis sellele videole täpselt vastaks.
Märkmed selle kohta, kuidas need kaks faili (MP4 ja GPX) tekitada, olid järgmised:
- HandBrake tarkvara abil said Full HD (60 kaadrit sekundis) videod konverteeritud 720x480 pikslit (30 kaadrit sekundis) videodeks.
- Avidemux tarkvara abil said kõik videod üheks pikaks kokku monteeritud. Eelnevalt sai proovitud selleks tarbeks ka Mp4Joiner tarkvara, aga seal oli video peale 7. tundi vigane (samas monteerimisel ühtegi veateadet ei antud). Ja VLC Player ei suutnud monteerimisel üldse midagi tarka toota, kippus kokku jooksma ja muidu rumalusi tegema.
- Sai tehtud GPX fail, mis sisaldab feigitud ajatempleid - nii et kogu video tegevus oleks nagu järjest toimunud.
See viimane oli siinkohal kõige keerulisem osa. Mõned tähelepanekud:
- Kui GPS ja video mõlemad käima panna, siis algust tuleb korrigeerida ainult GPX esimese punkti osas (võib teha käsitsi) - see on selleks, et sünkida käima panemise hetkede erinevus. Kui on näha, et GPS jookseb pildist ees, siis tuleb esimest GPX ajatemplit nihutada tagasi.
- Kui GPS logi on ühtne, aga videos on katkestused, siis tuleb nihutada kõiki ajatempleid tagapool olevates GPX failides. Seda saab teha näiteks GPSBabel nimelise utiliidiga. Algul tasub umbmääraselt eelmise video pikkuse järgi paika kruttida, seejärel finetuunimine. Kui on näha, et GPS on videost ees, siis tuleb finetuunimisel nihutada ajatempleid edasi.