I am trying to retrieve GPS information from media files using ffprobe, for example:
$ ffprobe -v quiet -show_format sample.mp4
[FORMAT]
filename=sample.mp4
nb_streams=2
nb_programs=0
format_name=mov,mp4,m4a,3gp,3g2,mj2
format_long_name=QuickTime / MOV
start_time=0.000000
duration=4.293000
size=11888152
bit_rate=22153556
probe_score=100
TAG:major_brand=mp42
TAG:minor_version=0
TAG:compatible_brands=isommp42
TAG:creation_time=2020-09-20T11:33:49.000000Z
TAG:location=+25.0731+121.3663/
TAG:location-eng=+25.0731+121.3663/
TAG:com.android.version=10
TAG:com.android.manufacturer=Google
TAG:com.android.model=Pixel
[/FORMAT]
We can see that there are 2 tags that look like ISO6709 representations, location and location-eng.
And here are my questions:
- What is the difference between
locationandlocation-eng? It looks like they are always the same. Why do we need 2 different keys with same the value? - Are
locationandlocation-engreally in ISO6709 representations? Is there any specification or standard I can refer to?
I would really appreciate your help.
location-xyzis the localized version of thelocation, wherexyzis an ISO 639-3 language code.The need for localized location metadata entries comes from the the way this metadata is stored based on 3GPP Technical Specification 26.244.
The TS defines a
locisub-box type which can be present in the user-data boxudta. The sub-box contains a ISO 639-2 language code that applies to fields like the place name.So to answer your questions:
location-engholds the English location data which includes the coordinates and, optionally, the place name in FFmpeg's case