daala_image_plane(3)

πŸ“¦
version 0^20250205git24f889a Β· 2 versions
  • 0^20250205git24f889a Β· epel 10, fedora 43, fedora 44 (latest)
  • 0 Β· epel 9
, in epel 10, fedora 43, fedora 44

πŸ’– daala_image_plane(3) πŸ’–

okay bestie, welcome to the Library Functions Manual page for daala_image_plane(3) β€” literally one of the cutest little structs in the daala lineup. she's giving one single component of an image or frame, and she's serving it. periodt. πŸŽ€


✨ NAME ✨

daala_image_plane β€” Representation of a single component within an image or frame.


🌸 SYNOPSIS 🌸

#include <codec.h>

πŸ¦‹ Data Fields πŸ¦‹

  • unsigned char * data β€” Image data is stored as an unsigned octet type whether it's actually 8 bit or a multi-byte depth. so like, the type stays octet-coded no matter how deep you go, iykyk πŸ’…
  • unsigned char xdec β€” The decimation factor in the x and y direction.
  • unsigned char ydec β€” (same deal as above, she's the y-direction half of that decimation duo ✨)
  • int xstride β€” Distance in memory between two pixels horizontally next to each other.
  • int ystride β€” Distance in memory between two pixels vertically next to each other.
  • int bitdepth β€” 8 for 'normal' video precision; data is unsigned bytes centered on 128.

πŸ’œ Detailed Description πŸ’œ

Representation of a single component within an image or frame. that's it, that's the whole vibe β€” one plane, one component, main character energy. πŸ‘‘


πŸŽ€ Field Documentation πŸŽ€

πŸ’– unsigned char daala_image_plane::xdec πŸ’–

The decimation factor in the x and y direction. Pixels are reduced by a factor of 2^xdec so 0 is none, 1 is decimated by a factor of 2.

so like, for the visual learners: YUV420 will have xdec of 1 and ydec also of 1. And YUV444 will have xdec and ydec set to zero. slay. 🌈

🌸 int daala_image_plane::xstride 🌸

Distance in memory between two pixels horizontally next to each other. The value is in bytes regardless of the 'actual' underlying depth (either unsigned bytes for 8 bit video or unsigned 16 bit shorts for high-depth video).

The xstride may be larger than the actual data width calculated from the bitdepth; this implies packed rather than planar data. no cap. πŸ’…

πŸ¦‹ int daala_image_plane::ystride πŸ¦‹

Distance in memory between two pixels vertically next to each other. As with xstride, this value is always in bytes. bestie said consistency, and she MEANT it. ✨

πŸ‘‘ int daala_image_plane::bitdepth πŸ‘‘

8 for 'normal' video precision; data is unsigned bytes centered on 128.

Greater-than-8 indicates high-depth video; data is unnormalized host-endian order unsigned signed 16-bit shorts (two octets).

For example, 10 bit video would declare a bit depth of 10, use the lower 10 bits of each 16 bit short, and center on 512. iconic behavior honestly. πŸ“


πŸ’« Author πŸ’«

Generated automatically by Doxygen for daala from the source code. (so if the prose is a little stiff, blame the robots, not me 🫢)


lowkey a whole struct, highkey a whole personality. go forth and set your strides correctly bestie, the pixels are counting on you πŸ’–

daala Β· Version unknown Β· daala_image_plane(3) β€” mwah, that's a wrap, ty for coming to my ted talk πŸŒΈβœ¨πŸŽ€

πŸ“¦ where this page comes from