34 int x,
int y,
int c,
int w,
35 int read_pal_component)
38 int plane = comp.
plane;
40 int mask = (1 << depth) - 1;
41 int shift = comp.
shift;
47 const uint8_t *p = data[plane] + y * linesize[plane] + (skip >> 3);
48 int shift = 8 - depth - (skip & 7);
51 int val = (*p >> shift) & mask;
52 if (read_pal_component)
53 val = data[1][4*val + c];
60 const uint8_t *p = data[plane] + y * linesize[plane] +
62 int is_8bit = shift + depth <= 8;
68 int val = is_8bit ? *p :
70 val = (val >> shift) & mask;
71 if (read_pal_component)
72 val = data[1][4 * val + c];
82 int x,
int y,
int c,
int w)
85 int plane = comp.
plane;
92 uint8_t *p = data[plane] + y * linesize[plane] + (skip >> 3);
93 int shift = 8 - depth - (skip & 7);
96 *p |= *src++ << shift;
102 int shift = comp.
shift;
103 uint8_t *p = data[plane] + y * linesize[plane] +
106 if (shift + depth <= 8) {
109 *p |= (*src++ << shift);
115 uint16_t val =
AV_RB16(p) | (*src++ << shift);
118 uint16_t val =
AV_RL16(p) | (*src++ << shift);
127 #if !FF_API_PIX_FMT_DESC
563 .name =
"yuva420p9be",
576 .name =
"yuva420p9le",
589 .name =
"yuva422p9be",
602 .name =
"yuva422p9le",
615 .name =
"yuva444p9be",
628 .name =
"yuva444p9le",
641 .name =
"yuva420p10be",
654 .name =
"yuva420p10le",
667 .name =
"yuva422p10be",
680 .name =
"yuva422p10le",
693 .name =
"yuva444p10be",
706 .name =
"yuva444p10le",
719 .name =
"yuva420p16be",
732 .name =
"yuva420p16le",
745 .name =
"yuva422p16be",
758 .name =
"yuva422p16le",
771 .name =
"yuva444p16be",
784 .name =
"yuva444p16le",
797 .name =
"vdpau_h264",
803 .name =
"vdpau_mpeg1",
809 .name =
"vdpau_mpeg2",
815 .name =
"vdpau_wmv3",
827 .name =
"vdpau_mpeg4",
1025 .name =
"vaapi_moco",
1031 .name =
"vaapi_idct",
1037 .name =
"vaapi_vld",
1049 .name =
"yuv420p9le",
1061 .name =
"yuv420p9be",
1073 .name =
"yuv420p10le",
1085 .name =
"yuv420p10be",
1097 .name =
"yuv420p16le",
1109 .name =
"yuv420p16be",
1121 .name =
"yuv422p9le",
1133 .name =
"yuv422p9be",
1145 .name =
"yuv422p10le",
1157 .name =
"yuv422p10be",
1169 .name =
"yuv422p16le",
1181 .name =
"yuv422p16be",
1193 .name =
"yuv444p16le",
1205 .name =
"yuv444p16be",
1217 .name =
"yuv444p10le",
1229 .name =
"yuv444p10be",
1241 .name =
"yuv444p9le",
1253 .name =
"yuv444p9be",
1265 .name =
"dxva2_vld",
1370 if (av_pix_fmt_descriptors[pix_fmt].name &&
1371 !strcmp(av_pix_fmt_descriptors[pix_fmt].name, name))
1384 # define X_NE(be, le) be
1386 # define X_NE(be, le) le
1393 if (!strcmp(name,
"rgb32"))
1394 name =
X_NE(
"argb",
"bgra");
1395 else if (!strcmp(name,
"bgr32"))
1396 name =
X_NE(
"abgr",
"rgba");
1402 snprintf(name2,
sizeof(name2),
"%s%s", name,
X_NE(
"be",
"le"));
1414 int s = c == 1 || c == 2 ? 0 : log2_pixels;
1418 return bits >> log2_pixels;
1425 snprintf (buf, buf_size,
"name" " nb_components" " nb_bits");
1428 snprintf(buf, buf_size,
"%-11s %7d %10d", pixdesc->
name,
1439 return &av_pix_fmt_descriptors[
pix_fmt];
1445 return &av_pix_fmt_descriptors[0];
1446 if (prev - av_pix_fmt_descriptors <
FF_ARRAY_ELEMS(av_pix_fmt_descriptors) - 1)
1453 if (desc < av_pix_fmt_descriptors ||
1454 desc >= av_pix_fmt_descriptors +
FF_ARRAY_ELEMS(av_pix_fmt_descriptors))
1461 int *h_shift,
int *v_shift)