[FFmpeg-cvslog] mov: Ignore old spherical metadata when newer version is present

Vittorio Giovara git at videolan.org
Tue Oct 17 21:57:24 EEST 2017


ffmpeg | branch: master | Vittorio Giovara <vittorio.giovara at gmail.com> | Tue Feb 28 10:54:36 2017 -0500| [236577230051ad61ec67fa2d68e817d54232d2a0] | committer: Vittorio Giovara

mov: Ignore old spherical metadata when newer version is present

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=236577230051ad61ec67fa2d68e817d54232d2a0
---

 libavformat/mov.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index d5de5d6b13..f1ff6ad5b5 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3335,7 +3335,8 @@ static int mov_parse_uuid_spherical(MOVStreamContext *sc, AVIOContext *pb, size_
         goto out;
 
     /* Check for mandatory keys and values, try to support XML as best-effort */
-    if (av_stristr(buffer, "<GSpherical:StitchingSoftware>") &&
+    if (!sc->spherical &&
+        av_stristr(buffer, "<GSpherical:StitchingSoftware>") &&
         (val = av_stristr(buffer, "<GSpherical:Spherical>")) &&
         av_stristr(val, "true") &&
         (val = av_stristr(buffer, "<GSpherical:Stitched>")) &&
@@ -3348,7 +3349,7 @@ static int mov_parse_uuid_spherical(MOVStreamContext *sc, AVIOContext *pb, size_
 
         sc->spherical->projection = AV_SPHERICAL_EQUIRECTANGULAR;
 
-        if (av_stristr(buffer, "<GSpherical:StereoMode>")) {
+        if (av_stristr(buffer, "<GSpherical:StereoMode>") && !sc->stereo3d) {
             enum AVStereo3DType mode;
 
             if (av_stristr(buffer, "left-right"))



More information about the ffmpeg-cvslog mailing list