Commit 23657723 authored by Vittorio Giovara's avatar Vittorio Giovara

mov: Ignore old spherical metadata when newer version is present

parent 17adcc40
...@@ -3335,7 +3335,8 @@ static int mov_parse_uuid_spherical(MOVStreamContext *sc, AVIOContext *pb, size_ ...@@ -3335,7 +3335,8 @@ static int mov_parse_uuid_spherical(MOVStreamContext *sc, AVIOContext *pb, size_
goto out; goto out;
/* Check for mandatory keys and values, try to support XML as best-effort */ /* 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>")) && (val = av_stristr(buffer, "<GSpherical:Spherical>")) &&
av_stristr(val, "true") && av_stristr(val, "true") &&
(val = av_stristr(buffer, "<GSpherical:Stitched>")) && (val = av_stristr(buffer, "<GSpherical:Stitched>")) &&
...@@ -3348,7 +3349,7 @@ static int mov_parse_uuid_spherical(MOVStreamContext *sc, AVIOContext *pb, size_ ...@@ -3348,7 +3349,7 @@ static int mov_parse_uuid_spherical(MOVStreamContext *sc, AVIOContext *pb, size_
sc->spherical->projection = AV_SPHERICAL_EQUIRECTANGULAR; sc->spherical->projection = AV_SPHERICAL_EQUIRECTANGULAR;
if (av_stristr(buffer, "<GSpherical:StereoMode>")) { if (av_stristr(buffer, "<GSpherical:StereoMode>") && !sc->stereo3d) {
enum AVStereo3DType mode; enum AVStereo3DType mode;
if (av_stristr(buffer, "left-right")) if (av_stristr(buffer, "left-right"))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment