Injection de 360 métadonnées vidéo avec ffmpeg

Je travaille sur une bibliothèque qui injecte / intègre / écrit des métadonnées dans un fichier .mp4 pour permettre à la vidéo d'être affichée correctement en tant que vidéo 360. Le fichier d'entrée est un fichier .mp4 standard au format équirectangulaire dont j'ai besoin pour injecter les métadonnées appropriées pour qu'il s'affiche sous forme de vidéo 360. Je sais que des outils comme l'outil multimédia spatial de Google existent mais si possible, je voudrais le faire avec ffmpeg.

C'est ce que j'ai déjà essayé mais ce n'est pas le cas travail:

ffmpeg -i input.mp4 -movflags use_metadata_tags -metadata Spherical=true -metadata Stitched=true -metadata ProjectionType=equirectangular -metadata StitchingSoftware=StreetviewJourney -codec copy output.mp4

J'en ai essayé de nombreuses variantes comme l'ajout de GSpherical: et xmp: à la balise de métadonnées.

Les métadonnées injectées par l'outil Spatial Media ressemblent à ceci et c'est ce que j'essaie de réaliser:

<?xml version="1.0"?><rdf:SphericalVideo
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:GSpherical="http://ns.google.com/videos/1.0/spherical/"><GSpherical:Spherical>true</GSpherical:Spherical><GSpherical:Stitched>true</GSpherical:Stitched><GSpherical:StitchingSoftware>Spherical Metadata Tool</GSpherical:StitchingSoftware><GSpherical:ProjectionType>equirectangular</GSpherical:ProjectionType></rdf:SphericalVideo>

Modifier 1

Lorsque j'extrait les métadonnées à l'aide de ffmpeg, il contient la balise sphérique dans les journaux mais pas lorsque je la sors dans un fichier ffmetadata. C'était la commande que j'ai utilisée: ffmpeg -i injected.mp4 -map_metadata -1 -f ffmetadata data.txt

C'est la sortie du journal :

 fps, 60 tbr, 15360 tbn, 120 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Side data:
      spherical: equirectangular (0.000000/0.000000/0.000000)

Modifier 2

J'ai également essayé d'obtenir les métadonnées en utilisant cette commande: ffprobe -v error -select_streams v:0 -show_streams -of default=noprint_wrappers=1 injected.mp4

C'était les journaux qu'il produisait :

TAG:handler_name=VideoHandler
side_data_type=Spherical Mapping
projection=equirectangular
yaw=0
pitch=0
roll=0

J'ai ensuite essayé d'utiliser cette commande mais cela n'a pas fonctionné: ffmpeg -i chapmanspeak.mp4 -movflags use_metadata_tags -metadata side_metadata_type="Spherical Mapping" -metadata projection=equirectangular -metadata yaw=0 -metadata pitch=0 -metadata roll=0 -codec copy output.mp4

demandé sur