31 *
size = spherical ?
sizeof(*spherical) : 0;
43 size_t *
left,
size_t *top,
44 size_t *right,
size_t *bottom)
47 uint64_t orig_width = (uint64_t)
width * UINT32_MAX /
48 (UINT32_MAX -
map->bound_right -
map->bound_left);
49 uint64_t orig_height = (uint64_t)
height * UINT32_MAX /
50 (UINT32_MAX -
map->bound_bottom -
map->bound_top);
53 *
left = (orig_width *
map->bound_left + UINT32_MAX - 1) / UINT32_MAX;
54 *top = (orig_height *
map->bound_top + UINT32_MAX - 1) / UINT32_MAX;
56 *bottom = orig_height -
height - *top;
static int BS_FUNC left(const BSCTX *bc)
Return the number of the bits left in a buffer.
#define i(width, name, range_min, range_max)
int av_strstart(const char *str, const char *pfx, const char **ptr)
Return non-zero if pfx is a prefix of str.
AVSphericalMapping * av_spherical_alloc(size_t *size)
Allocate a AVSphericalVideo structure and initialize its fields to default values.
int av_spherical_from_name(const char *name)
Get the AVSphericalProjection form a human-readable name.
AVSphericalProjection
Projection of the video surface(s) on a sphere.
const char * av_spherical_projection_name(enum AVSphericalProjection projection)
Provide a human-readable name of a given AVSphericalProjection.
void av_spherical_tile_bounds(const AVSphericalMapping *map, size_t width, size_t height, size_t *left, size_t *top, size_t *right, size_t *bottom)
Convert the bounding fields from an AVSphericalVideo from 0.32 fixed point to pixels.
@ AV_SPHERICAL_RECTILINEAR
Video frame displays on a flat, rectangular 2D surface.
@ AV_SPHERICAL_EQUIRECTANGULAR
Video represents a sphere mapped on a flat surface using equirectangular projection.
@ AV_SPHERICAL_EQUIRECTANGULAR_TILE
Video represents a portion of a sphere mapped on a flat surface using equirectangular projection.
@ AV_SPHERICAL_CUBEMAP
Video frame is split into 6 faces of a cube, and arranged on a 3x2 layout.
@ AV_SPHERICAL_HALF_EQUIRECTANGULAR
Video frame displays as a 180 degree equirectangular projection.
@ AV_SPHERICAL_PARAMETRIC_IMMERSIVE
Parametric Immersive projection (Apple).
@ AV_SPHERICAL_FISHEYE
Fisheye projection (Apple).
const VDPAUPixFmtMap * map
Utility Preprocessor macros.
Memory handling functions.
#define FF_ARRAY_ELEMS(a)
static const char *const spherical_projection_names[]
This structure describes how to handle spherical videos, outlining information about projection,...
enum AVSphericalProjection projection
Projection type.