Switch branches/tags
Nothing to show
Find file History
damienkelly and ascherkus spatialmedia: Define mpeg tags as bytes objects. This maintains Pytho… (

* spatialmedia: Define mpeg tags as bytes objects. This maintains Python3 compatibility and fixes the handling of files with non-ASCII atom types e.g. (User data atoms like '(c)swr'). Also, add Python3 support for spatial audio metadata injection.

* Modifies the spatial audio specification to enable the inclusion of head-locked (non-diegetic) stereo.
Latest commit 8e20a1c May 11, 2018


Spatial Media Metadata Injector

A tool for manipulating spatial media (spherical video and spatial audio) metadata in MP4 and MOV files. It can be used to inject spatial media metadata into a file or validate metadata in an existing file.


Python 2.7 must be used to run the tool. From within the directory above spatialmedia:


python spatialmedia -h

Prints help and usage information.


python spatialmedia <files...>

For each file specified, prints spatial media metadata contained in the file.


python spatialmedia -i [--stereo=(none|top-bottom|left-right)] [--spatial-audio] <input> <output>

Saves a version of <input> injected with spatial media metadata to <output>. <input> and <output> must not be the same file.


Selects the left/right eye frame layout; see the StereoMode element in the Spherical Video RFC for more information.


  • none: Mono frame layout.

  • top-bottom: Top half contains the left eye and bottom half contains the right eye.

  • left-right: Left half contains the left eye and right half contains the right eye.


Enables injection of spatial audio metadata. If enabled, the file must contain a 4-channel first-order ambisonics audio track with ACN channel ordering and SN3D normalization; see the Spatial Audio RFC for more information.

Building standalone GUI application

Install PyInstaller, then run the following:

pyinstaller spatial_media_metadata_injector.spec