SDL_Transf...acteristics(3type)
β¨ SDL_TransferCharacteristics β¨
okay bestie, sit down, we're talking colorspace transfer characteristics today π This lil page lives in the SDL3 DATATYPES section of the SDL_TransferCharacteristics(3type) manual, and it's literally the cheat sheet for how your pixels get their brightness curve. No cap. π
πΈ NAME πΈ
SDL_TransferCharacteristics β colorspace transfer characteristics, periodt. π
π SYNOPSIS π
First things first, you gotta pull in the header:
#include <SDL3/SDL_pixels.h>
And here's the whole enum, verbatim, don't @ me:
typedef enum SDL_TransferCharacteristics
{
SDL_TRANSFER_CHARACTERISTICS_UNKNOWN = 0,
SDL_TRANSFER_CHARACTERISTICS_BT709 = 1, /**< Rec. ITU-R BT.709-6 / ITU-R BT1361 */
SDL_TRANSFER_CHARACTERISTICS_UNSPECIFIED = 2,
SDL_TRANSFER_CHARACTERISTICS_GAMMA22 = 4, /**< ITU-R BT.470-6 System M / ITU-R BT1700 625 PAL & SECAM */
SDL_TRANSFER_CHARACTERISTICS_GAMMA28 = 5, /**< ITU-R BT.470-6 System B, G */
SDL_TRANSFER_CHARACTERISTICS_BT601 = 6, /**< SMPTE ST 170M / ITU-R BT.601-7 525 or 625 */
SDL_TRANSFER_CHARACTERISTICS_SMPTE240 = 7, /**< SMPTE ST 240M */
SDL_TRANSFER_CHARACTERISTICS_LINEAR = 8,
SDL_TRANSFER_CHARACTERISTICS_LOG100 = 9,
SDL_TRANSFER_CHARACTERISTICS_LOG100_SQRT10 = 10,
SDL_TRANSFER_CHARACTERISTICS_IEC61966 = 11, /**< IEC 61966-2-4 */
SDL_TRANSFER_CHARACTERISTICS_BT1361 = 12, /**< ITU-R BT1361 Extended Colour Gamut */
SDL_TRANSFER_CHARACTERISTICS_SRGB = 13, /**< IEC 61966-2-1 (sRGB or sYCC) */
SDL_TRANSFER_CHARACTERISTICS_BT2020_10BIT = 14, /**< ITU-R BT2020 for 10-bit system */
SDL_TRANSFER_CHARACTERISTICS_BT2020_12BIT = 15, /**< ITU-R BT2020 for 12-bit system */
SDL_TRANSFER_CHARACTERISTICS_PQ = 16, /**< SMPTE ST 2084 for 10-, 12-, 14- and 16-bit systems */
SDL_TRANSFER_CHARACTERISTICS_SMPTE428 = 17, /**< SMPTE ST 428-1 */
SDL_TRANSFER_CHARACTERISTICS_HLG = 18, /**< ARIB STD-B67, known as "hybrid log-gamma" (HLG) */
SDL_TRANSFER_CHARACTERISTICS_CUSTOM = 31
} SDL_TransferCharacteristics;
π¦ DESCRIPTION π¦
These are as described by https://www.itu.int/rec/T-REC-H.273-201612-S/en β that's the whole description, bestie. It's giving "short and sweet, go read the spec." πβ¨
π AVAILABILITY π
This enum is available since SDL 3.2.0. So if you're on something older, that's a you problem π (affectionate).
Quick vibe check on the members so you know what you're picking: π§
SDL_TRANSFER_CHARACTERISTICS_UNKNOWN=0β the "idk her" option πSDL_TRANSFER_CHARACTERISTICS_BT709=1β Rec. ITU-R BT.709-6 / ITU-R BT1361 β¨SDL_TRANSFER_CHARACTERISTICS_UNSPECIFIED=2β not specifying, staying mysterious πSDL_TRANSFER_CHARACTERISTICS_GAMMA22=4β ITU-R BT.470-6 System M / ITU-R BT1700 625 PAL & SECAMSDL_TRANSFER_CHARACTERISTICS_GAMMA28=5β ITU-R BT.470-6 System B, GSDL_TRANSFER_CHARACTERISTICS_BT601=6β SMPTE ST 170M / ITU-R BT.601-7 525 or 625SDL_TRANSFER_CHARACTERISTICS_SMPTE240=7β SMPTE ST 240MSDL_TRANSFER_CHARACTERISTICS_LINEAR=8β straight up, no curve, just linear π₯SDL_TRANSFER_CHARACTERISTICS_LOG100=9SDL_TRANSFER_CHARACTERISTICS_LOG100_SQRT10=10SDL_TRANSFER_CHARACTERISTICS_IEC61966=11β IEC 61966-2-4SDL_TRANSFER_CHARACTERISTICS_BT1361=12β ITU-R BT1361 Extended Colour GamutSDL_TRANSFER_CHARACTERISTICS_SRGB=13β IEC 61966-2-1 (sRGB or sYCC) πΈSDL_TRANSFER_CHARACTERISTICS_BT2020_10BIT=14β ITU-R BT2020 for 10-bit systemSDL_TRANSFER_CHARACTERISTICS_BT2020_12BIT=15β ITU-R BT2020 for 12-bit systemSDL_TRANSFER_CHARACTERISTICS_PQ=16β SMPTE ST 2084 for 10-, 12-, 14- and 16-bit systemsSDL_TRANSFER_CHARACTERISTICS_SMPTE428=17β SMPTE ST 428-1SDL_TRANSFER_CHARACTERISTICS_HLG=18β ARIB STD-B67, known as "hybrid log-gamma" (HLG)SDL_TRANSFER_CHARACTERISTICS_CUSTOM=31β you're doing your own thing, main character energy π
Heads up: notice there's no3in that list, and it jumps from18straight to31. That's just how the enum is, bestie β don't go inventing values, iykyk. π«Ά
And that's the whole page, you ate it up fr fr π This was brought to you by the good folks at Simple Directmedia Layer, version SDL 3.4.18 β mwah, love that for us ππβ
π¦ where this page comes from
- fedora 43: SDL3-devel 3.4.18-1.fc43 Β· Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 OR MIT)
- fedora 43: SDL3-devel 3.4.18-1.fc43 Β· Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 OR MIT)
- fedora 44: SDL3-devel 3.4.18-1.fc44 Β· Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 OR MIT)
- fedora 44: SDL3-devel 3.4.18-1.fc44 Β· Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 OR MIT)
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms