[FFmpeg-devel] [PATCH 0/2] Support the new APMP boxes and spherical metadata

James Almer jamrial at gmail.com
Tue Jul 29 04:58:56 EEST 2025


On 7/28/2025 10:50 PM, Vittorio Giovara wrote:
> From a244d96e045439f9e3a4db99e2f479e8686221da Mon Sep 17 00:00:00 2001
> From: Vittorio Giovara <vittorio.giovara at gmail.com>
> Date: Wed, 23 Jul 2025 23:42:14 +0200
> Subject: [PATCH 2/2] lavu/spherical: Add support for Spherical Immersive type
> 
> ---
>  libavformat/mov.c     | 3 +++
>  libavutil/spherical.c | 1 +
>  libavutil/spherical.h | 6 ++++++
>  3 files changed, 10 insertions(+)
> 
> diff --git a/libavformat/mov.c b/libavformat/mov.c
> index 7c91322027..eeb406609c 100644
> --- a/libavformat/mov.c
> +++ b/libavformat/mov.c
> @@ -6860,6 +6860,9 @@ static int mov_read_vexu_proj(MOVContext *c, AVIOContext *pb, MOVAtom atom)
>      case MKTAG('f','i','s','h'):
>          projection = AV_SPHERICAL_FISHEYE;
>          break;
> +    case MKTAG('p','r','i','m'):
> +        projection = AV_SPHERICAL_PARAMETRIC_IMMERSIVE;
> +        break;
>      default:
>          av_log(c->fc, AV_LOG_ERROR, "Invalid projection type in prji box: 0x%08X\n", tag);
>          return AVERROR_INVALIDDATA;

This should be its own separate commit.

> diff --git a/libavutil/spherical.c b/libavutil/spherical.c
> index 64ade1d0ec..71342faea9 100644
> --- a/libavutil/spherical.c
> +++ b/libavutil/spherical.c
> @@ -62,6 +62,7 @@ static const char *const spherical_projection_names[] = {
>      [AV_SPHERICAL_HALF_EQUIRECTANGULAR] = "half equirectangular",
>      [AV_SPHERICAL_RECTILINEAR]          = "rectilinear",
>      [AV_SPHERICAL_FISHEYE]              = "fisheye",
> +    [AV_SPHERICAL_PARAMETRIC_IMMERSIVE] = "parametric immersive",
>  };
>  
>  const char *av_spherical_projection_name(enum AVSphericalProjection projection)
> diff --git a/libavutil/spherical.h b/libavutil/spherical.h
> index 2e90f7752d..4b78978eb9 100644
> --- a/libavutil/spherical.h
> +++ b/libavutil/spherical.h
> @@ -82,6 +82,12 @@ enum AVSphericalProjection {
>       * See: https://developer.apple.com/documentation/coremedia/cmprojectiontype/fisheye
>       */
>      AV_SPHERICAL_FISHEYE,
> +
> +    /**
> +     * Parametric Immersive projection (Apple).
> +     * See: https://developer.apple.com/documentation/coremedia/cmprojectiontype/parametricimmersive
> +     */
> +    AV_SPHERICAL_PARAMETRIC_IMMERSIVE,

Missing minor version bump and APIChanges entry, LGTM otherwise.

>  };
>  
>  /**
> -- 
> 2.50.0
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20250728/aefac40f/attachment.sig>


More information about the ffmpeg-devel mailing list