GoPro HiLight Tags – How and Where Are They Stored?

goprohighlightingvideovideo editing

My Question in a Nutshell

How/where does a GoPro camera store HiLight tags?

Where I have Looked for the HiLight Tags

I have already tried to find the created tags in the following locations – to no avail:

  • I have had a look at the MP4 tags and chapters of a video file with HiLight tags.
  • I have mounted the SD card in an SD card reader to be able to see all files on the card (i.e., not just the ones which are visible via MTP when connecting the camera itself). None of the files seem to contain the tags.

On a Windows machine I can see the tags in GoPro Studio. My GoPro HERO4 Silver shows the tags on its display in playback mode, too. In the GoPro App I can also see the tags.

Why do I Need this?

I’m curious! Ok, that’s not the whole story 😉 I also work on a Linux machine where GoPro Studio is not available. I would still like to be able to use the created HiLight tags there.

Best Answer

I’ve found the HiLight tags: they are stored in the MP4 files themselves.

In particular, the tags are stored in a box with type HMMT in the User Data Box (udta) of the Movie Box (moov) of the MPEG-4 container. See ISO/IEC 14496-12 for details on these “boxes”.

The HMMT box seems to be a non-standard (GoPro-specific) ISO/IEC 14496-12 box. Its data consists of one or more 32-bit integers. The first integer contains the number of available HiLight tags. All subsequent integers resemble an ordered list of HiLight tags. Each HiLight tag is represented as a millisecond value.

Related Question