Re: [FFmpeg-devel] [PATCH] matroskadec: cosmetics: Rearrange checks for projection-depedendent properties

2017-03-07 Thread James Almer
On 3/7/2017 7:35 PM, Vittorio Giovara wrote:
> ---
> ... and this chunk for matroska too.
> Vittorio
> 
>  libavformat/matroskadec.c | 21 +
>  1 file changed, 9 insertions(+), 12 deletions(-)
> 
> diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
> index fdc3f268aa..fdb23ab05e 100644
> --- a/libavformat/matroskadec.c
> +++ b/libavformat/matroskadec.c
> @@ -1930,9 +1930,7 @@ static int mkv_parse_video_projection(AVStream *st, 
> const MatroskaTrack *track)
>  
>  switch (track->video.projection.type) {
>  case MATROSKA_VIDEO_PROJECTION_TYPE_EQUIRECTANGULAR:
> -if (track->video.projection.private.size == 0)
> -projection = AV_SPHERICAL_EQUIRECTANGULAR;
> -else if (track->video.projection.private.size == 20) {
> +if (track->video.projection.private.size == 20) {
>  t = bytestream2_get_be32();
>  b = bytestream2_get_be32();
>  l = bytestream2_get_be32();
> @@ -1946,15 +1944,15 @@ static int mkv_parse_video_projection(AVStream *st, 
> const MatroskaTrack *track)
> l, t, r, b);
>  return AVERROR_INVALIDDATA;
>  }
> -
> -if (l || t || r || b)
> -projection = AV_SPHERICAL_EQUIRECTANGULAR_TILE;
> -else
> -projection = AV_SPHERICAL_EQUIRECTANGULAR;
> -} else {
> +} else if (track->video.projection.private.size != 0) {
>  av_log(NULL, AV_LOG_ERROR, "Unknown spherical metadata\n");
>  return AVERROR_INVALIDDATA;
>  }
> +
> +if (l || t || r || b)
> +projection = AV_SPHERICAL_EQUIRECTANGULAR_TILE;
> +else
> +projection = AV_SPHERICAL_EQUIRECTANGULAR;
>  break;
>  case MATROSKA_VIDEO_PROJECTION_TYPE_CUBEMAP:
>  if (track->video.projection.private.size < 4) {
> @@ -1962,13 +1960,12 @@ static int mkv_parse_video_projection(AVStream *st, 
> const MatroskaTrack *track)
>  return AVERROR_INVALIDDATA;
>  } else if (track->video.projection.private.size == 12) {
>  uint32_t layout = bytestream2_get_be32();
> -if (layout == 0) {
> -projection = AV_SPHERICAL_CUBEMAP;
> -} else {
> +if (layout) {
>  av_log(NULL, AV_LOG_WARNING,
> "Unknown spherical cubemap layout %"PRIu32"\n", 
> layout);
>  return 0;
>  }
> +projection = AV_SPHERICAL_CUBEMAP;
>  padding = bytestream2_get_be32();
>  } else {
>  av_log(NULL, AV_LOG_ERROR, "Unknown spherical metadata\n");
> 

LGTM

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH] matroskadec: cosmetics: Rearrange checks for projection-depedendent properties

2017-03-07 Thread Vittorio Giovara
---
... and this chunk for matroska too.
Vittorio

 libavformat/matroskadec.c | 21 +
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index fdc3f268aa..fdb23ab05e 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -1930,9 +1930,7 @@ static int mkv_parse_video_projection(AVStream *st, const 
MatroskaTrack *track)
 
 switch (track->video.projection.type) {
 case MATROSKA_VIDEO_PROJECTION_TYPE_EQUIRECTANGULAR:
-if (track->video.projection.private.size == 0)
-projection = AV_SPHERICAL_EQUIRECTANGULAR;
-else if (track->video.projection.private.size == 20) {
+if (track->video.projection.private.size == 20) {
 t = bytestream2_get_be32();
 b = bytestream2_get_be32();
 l = bytestream2_get_be32();
@@ -1946,15 +1944,15 @@ static int mkv_parse_video_projection(AVStream *st, 
const MatroskaTrack *track)
l, t, r, b);
 return AVERROR_INVALIDDATA;
 }
-
-if (l || t || r || b)
-projection = AV_SPHERICAL_EQUIRECTANGULAR_TILE;
-else
-projection = AV_SPHERICAL_EQUIRECTANGULAR;
-} else {
+} else if (track->video.projection.private.size != 0) {
 av_log(NULL, AV_LOG_ERROR, "Unknown spherical metadata\n");
 return AVERROR_INVALIDDATA;
 }
+
+if (l || t || r || b)
+projection = AV_SPHERICAL_EQUIRECTANGULAR_TILE;
+else
+projection = AV_SPHERICAL_EQUIRECTANGULAR;
 break;
 case MATROSKA_VIDEO_PROJECTION_TYPE_CUBEMAP:
 if (track->video.projection.private.size < 4) {
@@ -1962,13 +1960,12 @@ static int mkv_parse_video_projection(AVStream *st, 
const MatroskaTrack *track)
 return AVERROR_INVALIDDATA;
 } else if (track->video.projection.private.size == 12) {
 uint32_t layout = bytestream2_get_be32();
-if (layout == 0) {
-projection = AV_SPHERICAL_CUBEMAP;
-} else {
+if (layout) {
 av_log(NULL, AV_LOG_WARNING,
"Unknown spherical cubemap layout %"PRIu32"\n", layout);
 return 0;
 }
+projection = AV_SPHERICAL_CUBEMAP;
 padding = bytestream2_get_be32();
 } else {
 av_log(NULL, AV_LOG_ERROR, "Unknown spherical metadata\n");
-- 
2.12.0

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel