1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-08-04 22:03:09 +02:00

lavu/spherical: Add support for Spherical Immersive type

This commit is contained in:
Vittorio Giovara
2025-07-23 23:42:14 +02:00
parent c275f3bfa1
commit 119d127d05
5 changed files with 14 additions and 1 deletions

View File

@ -2,6 +2,9 @@ The last version increases of all libraries were on 2025-03-28
API changes, most recent first: API changes, most recent first:
2025-07-31 - xxxxxxxxxx - lavu 60.7.100 - spherical.h
Add AV_SPHERICAL_PARAMETRIC_IMMERSIVE.
2025-07-20 - xxxxxxxxxx - lavu 60.6.100 - attributes.h, avstring.h 2025-07-20 - xxxxxxxxxx - lavu 60.6.100 - attributes.h, avstring.h
Add av_scanf_format() and use it on av_sscanf(). Add av_scanf_format() and use it on av_sscanf().

View File

@ -6858,6 +6858,9 @@ static int mov_read_vexu_proj(MOVContext *c, AVIOContext *pb, MOVAtom atom)
case MKTAG('f','i','s','h'): case MKTAG('f','i','s','h'):
projection = AV_SPHERICAL_FISHEYE; projection = AV_SPHERICAL_FISHEYE;
break; break;
case MKTAG('p','r','i','m'):
projection = AV_SPHERICAL_PARAMETRIC_IMMERSIVE;
break;
default: default:
av_log(c->fc, AV_LOG_ERROR, "Invalid projection type in prji box: 0x%08X\n", tag); av_log(c->fc, AV_LOG_ERROR, "Invalid projection type in prji box: 0x%08X\n", tag);
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;

View File

@ -62,6 +62,7 @@ static const char *const spherical_projection_names[] = {
[AV_SPHERICAL_HALF_EQUIRECTANGULAR] = "half equirectangular", [AV_SPHERICAL_HALF_EQUIRECTANGULAR] = "half equirectangular",
[AV_SPHERICAL_RECTILINEAR] = "rectilinear", [AV_SPHERICAL_RECTILINEAR] = "rectilinear",
[AV_SPHERICAL_FISHEYE] = "fisheye", [AV_SPHERICAL_FISHEYE] = "fisheye",
[AV_SPHERICAL_PARAMETRIC_IMMERSIVE] = "parametric immersive",
}; };
const char *av_spherical_projection_name(enum AVSphericalProjection projection) const char *av_spherical_projection_name(enum AVSphericalProjection projection)

View File

@ -82,6 +82,12 @@ enum AVSphericalProjection {
* See: https://developer.apple.com/documentation/coremedia/cmprojectiontype/fisheye * See: https://developer.apple.com/documentation/coremedia/cmprojectiontype/fisheye
*/ */
AV_SPHERICAL_FISHEYE, AV_SPHERICAL_FISHEYE,
/**
* Parametric Immersive projection (Apple).
* See: https://developer.apple.com/documentation/coremedia/cmprojectiontype/parametricimmersive
*/
AV_SPHERICAL_PARAMETRIC_IMMERSIVE,
}; };
/** /**

View File

@ -79,7 +79,7 @@
*/ */
#define LIBAVUTIL_VERSION_MAJOR 60 #define LIBAVUTIL_VERSION_MAJOR 60
#define LIBAVUTIL_VERSION_MINOR 6 #define LIBAVUTIL_VERSION_MINOR 7
#define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_MICRO 100
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \