Extracting GPS data from INSV file

Started by SM26, February 13, 2019, 09:41:18 AM

Previous topic - Next topic

yamuna

Hi Phil,

When I try to extract larger file (9GB) I am getting "out of Memory" error.

exiftool -ee -p "$gpsdatetime $gpslatitude $gpslongitude" -n "test.insv"> test.csv

Thanks,
Yamuna.

Phil Harvey

Could you attach the output of the -v3 command for this file?
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

Attached the image file.

Phil Harvey

That doesn't help as I only see the start of the output.  Also, you will need to add the LargeFileSupport option:

So try running this command and attaching the "out.txt" file (or email it to me if you want: philharvey66 at gmail.com)

exiftool -api largefilesupport -v3 FILE > out.txt

Thanks.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

Attached. Thanks.

Phil Harvey

Unfortunately I can't figure out the problem from the verbose output.  I will need the sample file to be able to reproduce the problem.  Is there any way you could upload this to a file sharing service somewhere?  Then email me a link (philharvey66 at gmail.com)

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

Hi Phil,

I sent you the video link to download 9gb insv file.
Let me know once you download the file, i will remove the link.

Thanks,
yamuna.

Phil Harvey

Hi Yamuna,

I got the file, thanks.

The problem is simply that the file contains too much metadata to read into the limited memory space available to the Windows exe version of ExifTool (about 200 MB or so).  The file contains about 800000 accelerometer records, which is the main problem.  I'll see about limiting the number of these that ExifTool will read to work around this limitation.  It contains about 16500 GPS records, but ExifTool should be able to read all of these.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

Hi Phil,

I tried from Linux Virtual machine and I got into the same issue.

Thanks,
Yamuna.

Phil Harvey

I'm surprised.  At any rate, ExifTool 11.70 will fix this by not attempting to load all of the accelerometer data unless you use the -m option.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

Thanks Phil.
When are you planning to release version 11.70 ?


Phil Harvey

Probably within a week.  I'm attaching the updated code which you can use to replace lib/Image/ExifTool/QuickTimeStream.pl in the Linux version to fix this in your copy before the new version comes out.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

Hi Phil,

I tried using that file, no error and no data.

./exiftool -api largefilesupport -ee -p "$gpstimestamp,$gpslatitude,$gpslongitude"  "rawvideos/VID_002.insv" > VID_002.csv

Thanks,
Yamuna.

Phil Harvey

1. Use single quotes on Linux.

2. Use GPSDateTime, not GPSTimeStamp

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

yamuna

How to get all param names?
I tried "$latitude,$longitude"
"$gpslatitude,$gpslongitude"

all null. I think the command works but no param with the name "$gpslatitude,$gpslongitude". And the same command works from windows.

Thanks,
yamuna.