line |
true |
false |
branch |
751
|
0 |
0 |
unless $dirLen > 8 |
756
|
0 |
0 |
unless $ee |
758
|
0 |
0 |
if $verbose |
765
|
0 |
0 |
if $end > $dirLen |
768
|
0 |
0 |
if ($verbose) |
776
|
0 |
0 |
if $len < 8 or $pos + $len > $end |
782
|
0 |
0 |
if ($tag eq 'keyd') { } |
|
0 |
0 |
elsif ($tag eq 'dtyp') { } |
784
|
0 |
0 |
unless $tagID |
785
|
0 |
0 |
if $verbose |
787
|
0 |
0 |
if length $val < 4 |
788
|
0 |
0 |
if (length $val >= 4) |
790
|
0 |
0 |
if ($ns == 0) { } |
|
0 |
0 |
elsif ($ns == 1) { } |
791
|
0 |
0 |
unless length $val >= 8 |
800
|
0 |
0 |
if $verbose and defined $str |
803
|
0 |
0 |
if ($verbose > 1) |
804
|
0 |
0 |
if (defined $str) { } |
814
|
0 |
0 |
if (defined $tagID and defined $format) |
815
|
0 |
0 |
if ($verbose) |
833
|
8 |
0 |
if defined $time |
834
|
8 |
0 |
if defined $dur |
846
|
0 |
0 |
if (defined $sampleTime and $value->{'CreateDate'}) |
848
|
0 |
0 |
if ($et->{'CreateDateAtEnd'}) { } |
849
|
0 |
0 |
unless $value->{'TimeScale'} and $value->{'Duration'} |
855
|
0 |
0 |
unless ($et->Options("QuickTimeUTC")) |
857
|
0 |
0 |
unless (defined $tzOff) |
877
|
0 |
0 |
if $tags->{'GPSDateTime'} |
894
|
0 |
0 |
if $et->{'NoMoreTextDecoding'} |
896
|
0 |
0 |
if (ref $dataPt eq "HASH") |
904
|
0 |
0 |
if ($tag =~ /^[A-Z]{2}RMC$/ and $dat =~ /^,(\d{2})(\d{2})(\d+(?:\.\d*)),A?,(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/) { } |
|
0 |
0 |
elsif ($tag =~ /^[A-Z]{2}GGA$/ and $dat =~ /^,(\d{2})(\d{2})(\d+(?:\.\d*)?),(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),[1-6]?,(\d+)?,(\.\d+|\d+\.?\d*)?,(-?\d+\.?\d*)?,M?/s) { } |
|
0 |
0 |
elsif ($tag eq 'G' and $dat =~ /:(\d{4})-(\d{2})-(\d{2}) (\d{2}:\d{2}:\d{2})-([NS])(\d+\.\d+)-([EW])(\d+\.\d+)-S(\d+)/) { } |
|
0 |
0 |
elsif ($tag eq 'GS' and $dat =~ /:([-+]?\d+),([-+]?\d+),([-+]?\d+)/) { } |
|
0 |
0 |
elsif ($tag eq 'BEGINGSENSOR' and $dat =~ /^:([-+]\d+\.\d+):([-+]\d+\.\d+):([-+]\d+\.\d+)/) { } |
|
0 |
0 |
elsif ($tag eq 'TIME' and $dat =~ /^:(\d+)/) { } |
|
0 |
0 |
elsif ($tag eq 'BEGIN') { } |
|
0 |
0 |
elsif ($tag ne 'END') { } |
906
|
0 |
0 |
if ($et->{'LastTime'}) |
907
|
0 |
0 |
if ($et->{'LastTime'} eq $time) { } |
|
0 |
0 |
elsif (%tags) { } |
916
|
0 |
0 |
if $et->{'DOC_COUNT'} < ++$et->{'DOC_NUM'} |
921
|
0 |
0 |
$14 >= 70 ? : |
924
|
0 |
0 |
$6 eq 'N' ? : |
925
|
0 |
0 |
$9 eq 'E' ? : |
926
|
0 |
0 |
if length $10 |
927
|
0 |
0 |
if length $11 |
930
|
0 |
0 |
if ($et->{'LastTime'}) |
931
|
0 |
0 |
if ($et->{'LastTime'} eq $time) { } |
|
0 |
0 |
elsif (%tags) { } |
936
|
0 |
0 |
if $et->{'DOC_COUNT'} < ++$et->{'DOC_NUM'} |
942
|
0 |
0 |
$6 eq 'N' ? : |
943
|
0 |
0 |
$9 eq 'E' ? : |
944
|
0 |
0 |
if defined $10 |
945
|
0 |
0 |
if defined $11 |
946
|
0 |
0 |
if defined $12 |
950
|
0 |
0 |
$5 eq 'S' ? : |
951
|
0 |
0 |
$7 eq 'W' ? : |
962
|
0 |
0 |
if length $dat |
965
|
0 |
0 |
unless $handled |
968
|
0 |
0 |
if %tags |
1003
|
0 |
0 |
if ($$dataPt =~ /^\0\0(..\xaa\xaa|\xf2\xe1\xf0\xee)/s and length $$dataPt >= 282) |
1005
|
0 |
0 |
if ($val =~ /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/) |
1008
|
0 |
0 |
if ($val =~ /^([NS])(\d{2})(\d+$)$/) |
1009
|
0 |
0 |
$1 eq 'S' ? : |
1012
|
0 |
0 |
if ($val =~ /^([EW])(\d{3})(\d+$)$/) |
1013
|
0 |
0 |
$1 eq 'W' ? : |
1016
|
0 |
0 |
if $val =~ /^[-+]\d+$/ |
1018
|
0 |
0 |
if $val =~ /^\d+$/ |
1019
|
0 |
0 |
if ($$dataPt =~ /^\0\0..\xaa\xaa/s) { } |
1022
|
0 |
0 |
if ($val =~ /^([-+]\d{3})([-+]\d{3})([-+]\d{3})$/) |
1035
|
0 |
0 |
if @acc |
1038
|
0 |
0 |
if %tags |
1044
|
0 |
0 |
if ($$dataPt =~ /GPS \(([-+]?\d*\.\d+),\s*([-+]?\d*\.\d+)/) |
1048
|
0 |
0 |
if $$dataPt =~ /,\s*H\s+([-+]?\d+\.?\d*)m/ |
1049
|
0 |
0 |
if $$dataPt =~ /,\s*H.S\s+([-+]?\d+\.?\d*)/ |
1050
|
0 |
0 |
if $$dataPt =~ /,\s*D\s+(\d+\.?\d*)m/ |
1051
|
0 |
0 |
if $$dataPt =~ /,\s*V.S\s+([-+]?\d+\.?\d*)/ |
1052
|
0 |
0 |
if $$dataPt =~ m[\bF/(\d+\.?\d*)] |
1053
|
0 |
0 |
if $$dataPt =~ /\bSS\s+(\d+\.?\d*)/ |
1054
|
0 |
0 |
if $$dataPt =~ m[\bEV\s+([-+]?\d+\.?\d*)(/\d+)?] |
1055
|
0 |
0 |
if $$dataPt =~ /\bISO\s+(\d+\.?\d*)/ |
1062
|
0 |
0 |
if ($$dataPt =~ /^A,(\d{2})(\d{2})(\d{2}),(\d{2})(\d{2})(\d{2}(\.\d+)?)/) |
1064
|
0 |
0 |
if ($$dataPt =~ /^A,.*?,.*?,(\d{2})(\d+\.\d+),([NS])/) |
1065
|
0 |
0 |
$3 eq 'S' ? : |
1067
|
0 |
0 |
if ($$dataPt =~ /^A,.*?,.*?,.*?,.*?,(\d{3})(\d+\.\d+),([EW])/) |
1068
|
0 |
0 |
$3 eq 'W' ? : |
1071
|
0 |
0 |
if $a[8] and $a[8] =~ s/M$// |
1072
|
0 |
0 |
if $a[7] and $a[7] =~ /^\d+\.\d+$/ |
1073
|
0 |
0 |
if $a[11] and $a[11] =~ s/;\s*$// |
1083
|
0 |
0 |
if ($$dataPt =~ /\*[0-9A-F]{2}~$/) |
1089
|
0 |
0 |
if $n >= 0 and defined $decode[$n] |
1092
|
0 |
0 |
if ($buff =~ /X(.*?)Y(.*?)Z(.*?)G(.*?)\$/) |
1102
|
0 |
0 |
if ($$dataPt =~ /[A-Z]{2}RMC,(\d{2})(\d{2})(\d+(\.\d*)?),A?,(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/ and $13 <= 31 and $14 <= 12 and $15 <= 99) |
1106
|
0 |
0 |
$15 >= 70 ? : |
1108
|
0 |
0 |
$7 eq 'N' ? : |
1109
|
0 |
0 |
$10 eq 'E' ? : |
1110
|
0 |
0 |
if length $11 |
1111
|
0 |
0 |
if length $12 |
1113
|
0 |
0 |
if $$dataPt =~ /\bgsensori,(.*?)(;|$)/ |
1114
|
0 |
0 |
if $$dataPt =~ /\bCAR,(.*?)(;|$)/ |
1116
|
0 |
0 |
if (%tags) { } |
1121
|
0 |
0 |
if $et->{'UnknownTextCount'} > 100 |
1138
|
0 |
16 |
unless $ee |
1143
|
12 |
4 |
if ($type eq 'vide') { } |
|
0 |
4 |
elsif ($type eq 'soun') { } |
1148
|
12 |
0 |
if ($eeOpt) |
1149
|
0 |
12 |
if ($ee->{'avcC'}) { } |
|
4 |
8 |
elsif ($ee->{'JPEG'}) { } |
1151
|
8 |
0 |
unless $md5 |
1155
|
0 |
0 |
unless $md5 |
1157
|
0 |
4 |
unless $eeOpt |
1166
|
8 |
0 |
unless ($start and $size) |
1167
|
0 |
8 |
unless $size |
1169
|
0 |
8 |
unless $stco and $stsc and @$stsc |
1173
|
8 |
0 |
if ($stts and @$stts > 1) |
1181
|
8 |
0 |
if ($iChunk >= $nextChunk and @$stsc) |
1183
|
0 |
8 |
if @$stsc |
1185
|
0 |
8 |
if @$size < @$start + $samplesPerChunk |
1186
|
0 |
8 |
unless defined $chunkStart and length $chunkStart |
1191
|
8 |
0 |
if (defined $time) |
1193
|
0 |
0 |
if (@$stts < 2) |
1207
|
8 |
0 |
if ++$i >= $samplesPerChunk |
1213
|
0 |
8 |
unless @$start == @$size |
1215
|
0 |
8 |
if ($type eq "soun" or $type eq "vide") |
1228
|
0 |
8 |
if ($verbose) |
1234
|
0 |
8 |
if ($type eq "avcC") |
1236
|
0 |
0 |
$hdrLen == 2 ? : |
|
0 |
0 |
$hdrLen == 4 ? : |
1248
|
0 |
8 |
unless $raf->Seek($start->[$i], 0) and $raf->Read($buff, $size) == $size |
1250
|
0 |
8 |
if ($md5) |
1254
|
0 |
8 |
if ($type eq "avcC") |
1255
|
0 |
0 |
if length $buff <= $hdrLen |
1259
|
0 |
0 |
if $pos + $hdrLen + $len > length $buff |
1263
|
0 |
0 |
if $pos + $hdrLen >= length $buff |
1265
|
0 |
0 |
if ($et->{'GotNAL06'}) |
1267
|
0 |
0 |
unless $eeOpt and $eeOpt > 2 |
1271
|
0 |
8 |
if ($verbose > 1) |
1272
|
0 |
0 |
$et->{'SET_GROUP1'} ? : |
1276
|
0 |
8 |
if ($type eq 'text' or $type eq 'sbtl' and $metaFormat eq 'tx3g' and $buff =~ /^..PNDM/s) { } |
|
4 |
4 |
elsif ($processByMetaFormat{$type}) { } |
|
0 |
4 |
elsif ($type eq 'gps ') { } |
|
4 |
0 |
elsif ($tagTbl->{$type}) { } |
1283
|
0 |
0 |
unless ($buff =~ /^\$BEGIN/) |
1285
|
0 |
0 |
if $buff =~ s/\0\0\0\x0cencd\0\0\x01\0$// |
1289
|
0 |
0 |
if ($size >= 2 and unpack("n", $buff) == $size - 2) |
1290
|
0 |
0 |
if $size == 2 |
1295
|
0 |
0 |
if ($buff =~ /^\0/ and $buff =~ /\x0a$/ and length $buff > 5) { } |
|
0 |
0 |
elsif ($buff =~ /^(\0.{3})?PNDM/s) { } |
1300
|
0 |
0 |
if ($verbose > 2) |
1304
|
0 |
0 |
if ($tmp =~ /^(.*?)(\$[A-Z]{2}RMC.*)/s) |
1307
|
0 |
0 |
if length $val |
1311
|
0 |
0 |
$1 ? : |
1312
|
0 |
0 |
if length $buff < 20 + $n |
1319
|
0 |
0 |
unless (defined $val) |
1328
|
4 |
0 |
if ($tagTbl->{$metaFormat}) { } |
|
0 |
0 |
elsif ($verbose) { } |
1330
|
4 |
0 |
if ($tagInfo) { } |
|
0 |
0 |
elsif ($metaFormat eq 'camm' and $buff =~ /^X/) { } |
1344
|
0 |
0 |
if $buff =~ /X(.*?)Y(.*?)Z(.*?)G(.*?)\$/ |
1353
|
0 |
0 |
if ($buff =~ /^....freeGPS /s) |
1366
|
4 |
0 |
if ($tagInfo) |
1377
|
0 |
8 |
if $et->{'FoundGPSLatitude'} and not $et->{'FoundGPSDateTime'} |
1379
|
0 |
8 |
if ($verbose) |
1380
|
0 |
0 |
$type eq 'soun' ? : |
1381
|
0 |
0 |
if $md5size |
1418
|
0 |
0 |
if $dirLen < 92 |
1420
|
0 |
0 |
if (substr($$dataPt, 18, 8) eq "\252\252\362\341\360\356TT") { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{52}(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{37}\0\0\0A([NS])([EW])/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{21}\0\0\0A([NS])([EW])/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{60}A\0{3}.{4}([NS])\0{3}.{4}([EW])\0{3}/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{60}4W`b]S= 140) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{64}[\x01-\x0c]\0{3}[\x01-\x1f]\0{3}A[NS][EW]\0{5}/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{12}\xac\0\0\0.{44}(.{72})/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{64}A([NS])([EW])\0/s) { } |
1422
|
0 |
0 |
if $debug |
1451
|
0 |
0 |
if $n > 257 |
1453
|
0 |
0 |
if ($et->Options("Verbose") > 1) |
1458
|
0 |
0 |
unless $buf2 =~ /^.{8}(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2}).(.{15})([NS])(\d{8})([EW])(\d{9})(\d{8})?/s |
1460
|
0 |
0 |
if (defined $spd) { } |
|
0 |
0 |
elsif ($buf2 =~ /^.{57}([-+]\d{4})(\d{3})/s) { } |
1467
|
0 |
0 |
if length $lbl |
1469
|
0 |
0 |
if ($buf2 =~ /^.{65}(([-+]\d{3})([-+]\d{3})([-+]\d{3})([-+]\d{3})*)/s) { } |
|
0 |
0 |
elsif ($buf2 =~ /^.{173}([-+]\d{3})([-+]\d{3})([-+]\d{3})/s) { } |
1480
|
0 |
0 |
if $debug |
1487
|
0 |
0 |
if ($$dataPt =~ /\$[A-Z]{2}RMC,(\d{2})(\d{2})(\d+(\.\d*)?),A?,(\d+\.\d+),([NS]),(\d+\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/s) |
1489
|
0 |
0 |
$13 >= 70 ? : |
1491
|
0 |
0 |
if length $9 |
1492
|
0 |
0 |
if length $10 |
1494
|
0 |
0 |
if ($$dataPt =~ /\$[A-Z]{2}GGA,(\d{2})(\d{2})(\d+(\.\d*)?),(\d+\.\d+),([NS]),(\d+\.\d+),([EW]),[1-6]?,(\d+)?,(\.\d+|\d+\.?\d*)?,(-?\d+\.?\d*)?,M?/s) |
1495
|
0 |
0 |
unless defined $yr |
1500
|
0 |
0 |
if (defined $lat) |
1504
|
0 |
0 |
if $_ >= 2147483648 |
1509
|
0 |
0 |
if $debug |
1517
|
0 |
0 |
if ($yr < 2000) { } |
1536
|
0 |
0 |
if ($tmp ne "\0\0\0\0\0\0\0\0\0\0\0\0" and $tmp ne "\1\0\2\0\3\0\4\0\5\0\6\0") |
1538
|
0 |
0 |
if $_ >= 2147483648 |
1544
|
0 |
0 |
if $debug |
1573
|
0 |
0 |
if $debug |
1589
|
0 |
0 |
if $trk >= 360 |
1594
|
0 |
0 |
if $debug |
1603
|
0 |
0 |
if $_ >= 16 |
1604
|
0 |
0 |
unless /[A-Z]{2}RMC,(\d{2})(\d{2})(\d+(\.\d*)?),A?,(\d*?\d{1,2}\.\d+),([NS]),(\d*?\d{1,2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/ |
1606
|
0 |
0 |
$yr >= 70 ? : |
1607
|
0 |
0 |
if length $9 |
1608
|
0 |
0 |
if length $10 |
1612
|
0 |
0 |
if $debug |
1637
|
0 |
0 |
unless $stat eq "A" and $latRef eq 'N' || $latRef eq 'S' and $lonRef eq 'E' || $lonRef eq 'W' |
1656
|
0 |
0 |
if $debug |
1679
|
0 |
0 |
if $debug |
1691
|
0 |
0 |
unless $mon >= 1 and $mon <= 12 and $day >= 1 and $day <= 31 |
1692
|
0 |
0 |
if $yr < 2000 |
1694
|
0 |
0 |
if $_ >= 2147483648 |
1705
|
0 |
0 |
if $debug |
1718
|
0 |
0 |
unless $stat eq "A" and $latRef eq 'N' || $latRef eq 'S' and $lonRef eq 'E' || $lonRef eq 'W' |
1730
|
0 |
0 |
if (abs $lat2 - $lat < "0.001" and abs $lon2 - $lon < "0.001") |
1736
|
0 |
0 |
if $yr < 2000 |
1745
|
0 |
0 |
unless $ddd |
1746
|
0 |
0 |
unless $sec =~ /^\d{2}/ |
1747
|
0 |
0 |
if (defined $yr) { } |
|
0 |
0 |
elsif (defined $hr) { } |
1754
|
0 |
0 |
$latRef eq 'S' ? : |
1755
|
0 |
0 |
$lonRef eq 'W' ? : |
1756
|
0 |
0 |
if defined $alt |
1757
|
0 |
0 |
if defined $spd |
1758
|
0 |
0 |
if defined $trk |
1763
|
0 |
0 |
if @acc |
1781
|
0 |
0 |
if $dirLen < 82 |
1783
|
0 |
0 |
if (substr($$dataPt, 69, 3) eq 'ATC') { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{60}A\0.{10}([NS])\0.{14}([EW])\0/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{72}A([NS])([EW])/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{60}A\0.{6}([NS])\0.{6}([EW])\0/s and $dirLen >= 112) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{16}A([NS])([EW])\0/s) { } |
|
0 |
0 |
elsif ($$dataPt =~ /^.{28}A.{11}([NS]).{15}([EW])/s) { } |
1785
|
0 |
0 |
if $debug |
1799
|
0 |
0 |
unless $then |
1825
|
0 |
0 |
if $now[$i] <= $dateMax[$i] |
1831
|
0 |
0 |
if ($now[$i] < $then->[$i]) |
1832
|
0 |
0 |
if $foundNew |
1835
|
0 |
0 |
if $now[$i] == $then->[$i] |
1837
|
0 |
0 |
if ($verbose) |
1872
|
0 |
0 |
if $trk < 0 |
1889
|
0 |
0 |
if $recentRecPos and $recPos < $recentRecPos |
1897
|
0 |
0 |
if $debug |
1920
|
0 |
0 |
if $_ >= 2147483648 |
1950
|
0 |
0 |
if (substr($$dataPt, 16, 3) eq 'IQS') { } |
1951
|
0 |
0 |
if $debug |
1964
|
0 |
0 |
if $debug |
1975
|
0 |
0 |
if $debug |
1987
|
0 |
0 |
if $_ >= 2147483648 |
1995
|
0 |
0 |
if $debug |
2004
|
0 |
0 |
if $_ >= 2147483648 |
2007
|
0 |
0 |
substr($dat, 1, 1) eq 'S' ? : |
2008
|
0 |
0 |
substr($dat, 2, 1) eq 'W' ? : |
2017
|
0 |
0 |
if $debug |
2037
|
0 |
0 |
if $_ >= 2147483648 |
2042
|
0 |
0 |
if $debug |
2067
|
0 |
0 |
if $yr < 2000 or $yr > 2200 or $mon < 1 or $mon > 12 or $day < 1 or $day > 31 or $hr > 59 or $min > 59 or $sec > 600 |
2072
|
0 |
0 |
if $_ >= 2147483648 |
2073
|
0 |
0 |
if $trk >= 32768 |
2075
|
0 |
0 |
if $trk < 0 |
2083
|
0 |
0 |
if $pos += 32 > length($$dataPt) - 30 |
2085
|
0 |
0 |
$et->{'DOC_NUM'} ? : |
2090
|
0 |
0 |
if $mon < 1 or $mon > 12 |
2092
|
0 |
0 |
if $yr < 2000 |
2095
|
0 |
0 |
unless $ddd |
2097
|
0 |
0 |
$latRef eq 'S' ? : |
2098
|
0 |
0 |
$lonRef eq 'W' ? : |
2099
|
0 |
0 |
if defined $spd |
2100
|
0 |
0 |
if defined $trk |
2101
|
0 |
0 |
if defined $alt |
2102
|
0 |
0 |
if @acc |
2116
|
16 |
52 |
if ($tag eq 'stsz' or $tag eq 'stz2' and $dataLen > 12) { } |
|
16 |
36 |
elsif ($tag eq 'stco' or $tag eq 'co64' and $dataLen > 8) { } |
|
16 |
20 |
elsif ($tag eq 'stsc' and $dataLen > 8) { } |
|
16 |
4 |
elsif ($tag eq 'stts' and $dataLen > 8) { } |
|
0 |
4 |
elsif ($tag eq 'avcC') { } |
|
4 |
0 |
elsif ($tag eq 'JPEG') { } |
|
0 |
0 |
elsif ($tag eq 'gps ' and $dataLen > 8) { } |
|
0 |
0 |
elsif ($tag eq 'GPS ') { } |
2120
|
16 |
0 |
if ($tag eq 'stsz') { } |
2121
|
0 |
16 |
if ($sz == 0) { } |
2128
|
0 |
0 |
if ($sz == 4) { } |
|
0 |
0 |
elsif ($sz == 8 or $sz == 16) { } |
2142
|
0 |
16 |
$tag eq 'stco' ? : |
2146
|
16 |
0 |
if ($dataLen >= 8 + $num * 12) |
2157
|
16 |
0 |
if ($dataLen >= 8 + $num * 8) |
2162
|
0 |
0 |
if $dataLen >= 7 |
2168
|
0 |
0 |
if $num * 8 + 8 > $dataLen |
2184
|
0 |
0 |
if $dat eq "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" |
2192
|
0 |
0 |
if $a[4] eq "S" |
2193
|
0 |
0 |
if $a[6] eq "W" |
2212
|
0 |
0 |
if length $$dataPt < 2 |
2216
|
0 |
0 |
if ($$dataPt =~ /^..\w{3} (\d{4})-(\d{2})-(\d{2}) (\d{2}:\d{2}:\d{2}) ?([-+])(\d{2}):?(\d{2})$/s) { } |
2232
|
0 |
0 |
if length $$dataPt < 2 |
2252
|
0 |
0 |
unless my $ee = $et->{'ee'} |
2253
|
0 |
0 |
unless $ee->{'keys'} |
2261
|
0 |
0 |
if $len < 8 or $pos + $len > length $$dataPt |
2264
|
0 |
0 |
if ($info) { } |
2266
|
0 |
0 |
unless ($tagTbl->{$tag}) |
2267
|
0 |
0 |
unless $tag =~ /^[-\w.]+$/ |
2298
|
0 |
0 |
if ($dirLen > $recLen and not $et->Options("ExtractEmbedded")) |
2306
|
0 |
0 |
if $tc == 4294967295 |
2329
|
0 |
0 |
if ($$dataPt =~ /^.{2}\xf2\xe1\xf0\xeeTT\x98/s) |
2333
|
0 |
0 |
unless $dat =~ /^.{2}\xf2\xe1\xf0\xeeTT\x98/s |
2343
|
0 |
0 |
if ($dirLen > $recLen and not $et->Options("ExtractEmbedded")) |
2352
|
0 |
0 |
if abs $lat > 9000 or abs $lon > 18000 |
2381
|
0 |
0 |
if ($dirLen > $recLen and not $et->Options("ExtractEmbedded")) |
2415
|
0 |
0 |
unless $dat =~ /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})./gs |
2418
|
0 |
0 |
unless $dat =~ /\G(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})./gs |
2419
|
0 |
0 |
unless $dat =~ /\G([NS])(\d+)([EW])(\d+)/g |
2424
|
0 |
0 |
$1 eq 'S' ? : |
2425
|
0 |
0 |
$3 eq 'W' ? : |
2426
|
0 |
0 |
unless $dat =~ /\G([-+]\d{4})(\d+)/g |
2433
|
0 |
0 |
if @acc |
2454
|
0 |
0 |
unless $raf->Read($buff, 8) == 8 |
2456
|
0 |
0 |
if $tag eq "\0\0\0\0" |
2457
|
0 |
0 |
unless ($tag =~ /^[\w ]{4}/ and $len < 33554432) |
2461
|
0 |
0 |
unless $raf->Read($buff, $len) == $len |
2462
|
0 |
0 |
if ($verbose) |
2464
|
0 |
0 |
if $verbose > 2 |
2466
|
0 |
0 |
if $tag =~ /^(gps0|gsen)$/ |
2468
|
0 |
0 |
if ($tag eq 'gps0') { } |
|
0 |
0 |
elsif ($tag eq 'gsen') { } |
2486
|
0 |
0 |
unless substr($buff, $pos, 4) eq "AITG" |
2491
|
0 |
0 |
if abs $lat > 9000 or abs $lon > 18000 |
2493
|
0 |
0 |
if &Get8u(\$buff, $pos + 33) == 2 |
2494
|
0 |
0 |
if &Get8u(\$buff, $pos + 34) == 2 |
2513
|
0 |
0 |
unless substr($buff, $pos, 4) eq "AITS" |
2524
|
0 |
0 |
if $verbose |
2543
|
0 |
0 |
if ($$dataPt =~ /(?:\[(\d+)\])?\$[A-Z]{2}(RMC|GGA),(\d{2}\d{2}\d+(\.\d*)?),/g) |
2548
|
0 |
0 |
if ($fix{'tim'} and !$tim || $fix{'tim'} != $tim) |
2549
|
0 |
0 |
if ($fix{'dat'} and defined $fix{'lat'} and defined $fix{'lon'}) |
2551
|
0 |
0 |
if $fix{'tc'} and $et->{'StartTime'} |
2556
|
0 |
0 |
if defined $fix{'spd'} |
2557
|
0 |
0 |
if defined $fix{'trk'} |
2558
|
0 |
0 |
if defined $fix{'alt'} |
2559
|
0 |
0 |
if defined $fix{'nsats'} |
2560
|
0 |
0 |
if defined $fix{'hdop'} |
2564
|
0 |
0 |
unless $fix{'tim'} = $tim |
2568
|
0 |
0 |
if ($type eq 'RMC' and $$dataPt =~ /\G(\d{2})(\d{2})(\d+(\.\d*)?),A?,(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/g) { } |
|
0 |
0 |
elsif ($type eq 'GGA' and $$dataPt =~ /\G(\d{2})(\d{2})(\d+(\.\d*)?),(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),[1-6]?,(\d+)?,(\.\d+|\d+\.?\d*)?,(-?\d+\.?\d*)?,M?/g) { } |
2571
|
0 |
0 |
$15 >= 70 ? : |
2574
|
0 |
0 |
$7 eq 'N' ? : |
2575
|
0 |
0 |
$10 eq 'E' ? : |
2576
|
0 |
0 |
if length $11 |
2577
|
0 |
0 |
if length $12 |
2581
|
0 |
0 |
$7 eq 'N' ? : |
2582
|
0 |
0 |
$10 eq 'E' ? : |
2603
|
0 |
0 |
if &ProcessNMEA($et, $dirInfo, $tagTbl) |
2613
|
0 |
0 |
$7 eq 'S' ? : |
2614
|
0 |
0 |
$9 eq 'W' ? : |
2615
|
0 |
0 |
if length $11 |
2616
|
0 |
0 |
if length $12 |
2617
|
0 |
0 |
if length $13 |
2618
|
0 |
0 |
if length $14 |
2619
|
0 |
0 |
if length $15 |
2646
|
0 |
0 |
if $dirLen < $pos |
2663
|
0 |
0 |
if ($resync and $type != 255) |
2664
|
0 |
0 |
if ++$skipped > 256 |
2667
|
0 |
0 |
unless ($ttLen{$type}) |
2669
|
0 |
0 |
unless $warned |
2674
|
0 |
0 |
if $pos + $ttLen{$type} > $dirLen |
2675
|
0 |
0 |
if ($type == 255) |
2678
|
0 |
0 |
if ($resync) |
2679
|
0 |
0 |
if ($tm < $sampleTime or $tm > $sampleTime + 250) |
2690
|
0 |
0 |
unless ($eeOpt) |
2692
|
0 |
0 |
if $found & 1 << $type |
2695
|
0 |
0 |
if ($type == 0 or $type == 3) { } |
|
0 |
0 |
elsif ($type == 5) { } |
|
0 |
0 |
elsif ($type < 3) { } |
2699
|
0 |
0 |
$type ? : |
2715
|
0 |
0 |
if ($unknown) |
2723
|
0 |
0 |
if ($unknown) |
2725
|
0 |
0 |
$type == 1 ? : |
2733
|
0 |
0 |
unless $eeOpt or ($found & 41) != 41 |
2750
|
0 |
4 |
$dirInfo ? : |
2753
|
4 |
0 |
unless $raf->Seek(-78 - $offset, 2) and $raf->Read($buff, 78) == 78 and substr($buff, -32) eq "8db42d694ccc418790edff439fe026bf" |
2760
|
0 |
0 |
if $trailerLen > $fileEnd |
2761
|
0 |
0 |
if ($dirInfo) |
2764
|
0 |
0 |
if ($dirInfo->{'OutFile'}) |
2765
|
0 |
0 |
if ($et->{'DEL_GROUP'}{'Insta360'}) { } |
|
0 |
0 |
elsif ($trailerLen > $fileEnd or not $raf->Seek($dirInfo->{'DataPos'}, 0) or $raf->Read(${$$dirInfo{'OutFile'};}, $trailerLen) != $trailerLen) { } |
2776
|
0 |
0 |
if $verbose or $et->{'HTML_DUMP'} |
2778
|
0 |
0 |
unless ($et->Options("ExtractEmbedded")) |
2794
|
0 |
0 |
if ($epos -= $len) + $trailerLen < 0 |
2795
|
0 |
0 |
unless $raf->Seek($epos, 2) |
2796
|
0 |
0 |
if ($verbose) |
2809
|
0 |
0 |
if (defined $dlen and not $dlen) |
2810
|
0 |
0 |
if ($id == 768) { } |
|
0 |
0 |
elsif ($id == 512) { } |
2811
|
0 |
0 |
if ($len % 20 and not $len % 56) { } |
|
0 |
0 |
elsif ($len % 56 and not $len % 20) { } |
2816
|
0 |
0 |
if ($raf->Read($buff, 20) == 20) |
2817
|
0 |
0 |
if (substr($buff, 16, 3) eq "\000\000\000") { } |
2823
|
0 |
0 |
unless $raf->Seek($epos, 2) |
2830
|
0 |
0 |
if ($dlen and $insvLimit{$id} and $len > $insvLimit{$id}[1] * $dlen and $et->Warn("Insta360 $insvLimit{$id}[0] data is huge. Processing only the first $insvLimit{$id}[1] records", 2)) |
2835
|
0 |
0 |
unless $raf->Read($buff, $len) == $len |
2836
|
0 |
0 |
if $verbose > 2 |
2837
|
0 |
0 |
if ($dlen) { } |
|
0 |
0 |
elsif ($id == 257) { } |
2838
|
0 |
0 |
if ($len % $dlen) { } |
|
0 |
0 |
elsif ($id == 512) { } |
|
0 |
0 |
elsif ($id == 768) { } |
|
0 |
0 |
elsif ($id == 1024) { } |
|
0 |
0 |
elsif ($id == 1536) { } |
|
0 |
0 |
elsif ($id == 1792) { } |
2846
|
0 |
0 |
if ($dlen == 56) { } |
2871
|
0 |
0 |
unless $a[3] eq "A" |
2872
|
0 |
0 |
unless ($a[5] eq 'N' || $a[5] eq 'S' and $a[7] eq 'E' || $a[7] eq 'W' || $a[7] eq 'O') |
2883
|
0 |
0 |
if $a[5] eq "S" |
2884
|
0 |
0 |
if $a[7] ne "E" |
2891
|
0 |
0 |
if $unknown |
2897
|
0 |
0 |
if $p + 2 > $len |
2899
|
0 |
0 |
if $p + 2 + $n > $len |
2905
|
0 |
0 |
if ($epos -= 6) + $trailerLen < 0 |
2906
|
0 |
0 |
unless $raf->Seek($epos, 2) |
2907
|
0 |
0 |
unless $raf->Read($buff, 6) == 6 |
2931
|
0 |
0 |
unless my $size = $size{$type} |
2932
|
0 |
0 |
if $pos + $size > $end |
2936
|
0 |
0 |
if $et->ProcessBinaryData($dirInfo, $tagTbl) |
2994
|
0 |
0 |
if ($tagTbl->{$type}) |
2995
|
0 |
0 |
if ($time != $lastTime) |
3002
|
0 |
0 |
if $type == 5 |
3017
|
0 |
0 |
unless $$dataPt =~ /^FMAS\0\0\0\0.{72}SAMM.{36}A/s and length $$dataPt >= 160 |
3035
|
0 |
0 |
$a[9] eq 'S' ? : |
3036
|
0 |
0 |
$a[8] eq 'W' ? : |
3050
|
0 |
4 |
unless my $raf = $et->{'RAF'} |
3056
|
0 |
4 |
if ($dataPos and not $et->{'DOC_COUNT'}) |
3058
|
0 |
0 |
if ($dataLen) |
3059
|
0 |
0 |
if ($raf->Seek($dataPos, 0)) { } |
3069
|
0 |
0 |
if $pos + $gpsBlockSize > $dataLen |
3070
|
0 |
0 |
unless $raf->Read($buff, $gpsBlockSize) |
3071
|
0 |
0 |
if length $buf2 |
3072
|
0 |
0 |
if length $buff < $gpsBlockSize |
3076
|
0 |
0 |
if (not $buff =~ /\0..\0freeGPS /gs) { } |
|
0 |
0 |
elsif (not $tagTbl) { } |
3081
|
0 |
0 |
if $tagTbl or $pos < 20000000 |
3092
|
0 |
0 |
if (pos $buff > 12) |
3098
|
0 |
0 |
if ($len < 12) { } |
3102
|
0 |
0 |
if ($more > 0) |
3103
|
0 |
0 |
unless $raf->Read($buf2, $more) == $more |
3106
|
0 |
0 |
if ($verbose) |
3116
|
0 |
4 |
if ($tagTbl) |