History

lavu: Drop the {minus,plus}1 suffix from AVComponentDescriptor fields

The new fields can be accessed directly and are more intelligible.

Vittorio Giovara committed 11 years ago

Commit 2268db21 parent 6b3ef7f19 files · +423 −402Browse files

Unified · Split

19 files
  1. doc/APIchanges +2 −0
  2. libavcodec/hevc.c +1 −1
  3. libavcodec/hevc_refs.c +1 −1
  4. libavcodec/imgconvert.c +1 −1
  5. libavcodec/libopenjpegdec.c +5 −5
  6. libavcodec/libopenjpegenc.c +2 −2
  7. libavcodec/libx265.c +2 −2
  8. libavcodec/pnmenc.c +1 −1
  9. libavfilter/vf_hqdn3d.c +1 −1
  10. libavfilter/vf_yadif.c +2 −2
  11. libavutil/imgutils.c +5 −5
  12. libavutil/pixdesc.c +365 −359
  13. libavutil/pixdesc.h +17 −6
  14. libavutil/version.h +3 −0
  15. libswscale/output.c +2 −2
  16. libswscale/swscale.c +3 −4
  17. libswscale/swscale_internal.h +2 −2
  18. libswscale/swscale_unscaled.c +6 −6
  19. libswscale/utils.c +2 −2
doc/APIchanges+2−0
@@ -17,6 +17,8 @@ API changes, most recent first: · 16 unmodified lines
1717 xxxxxxx - Change type of AVPixFmtDescriptor.flags from uint8_t to uint64_t.
1818 xxxxxxx - Change type of AVComponentDescriptor fields from uint16_t to int
1919 and drop bit packing.
20+ xxxxxxx - Add step, offset, and depth to AVComponentDescriptor to replace
21+ the deprecated step_minus1, offset_plus1, and depth_minus1.
2022
2123 2015-xx-xx - lavu 54.17.0
2224 xxxxxxx - Add av_blowfish_alloc().
libavcodec/hevc.c+1−1
@@ -2620,7 +2620,7 @@ static int verify_md5(HEVCContext *s, AVFrame *frame) · 2619 unmodified lines
26202620 if (!desc)
26212621 return AVERROR(EINVAL);
26222622
2623− pixel_shift = desc->comp[0].depth_minus1 > 7;
2623+ pixel_shift = desc->comp[0].depth > 8;
26242624
26252625 av_log(s->avctx, AV_LOG_DEBUG, "Verifying checksum for frame with POC %d: ",
26262626 s->poc);
libavcodec/hevc_refs.c+1−1
@@ -198,7 +198,7 @@ int ff_hevc_output_frame(HEVCContext *s, AVFrame *out, int flush) · 197 unmodified lines
198198 if (!desc)
199199 return AVERROR_BUG;
200200
201− pixel_shift = desc->comp[0].depth_minus1 > 7;
201+ pixel_shift = desc->comp[0].depth > 8;
202202
203203 ret = av_frame_ref(out, frame->frame);
204204 ff_hevc_unref_frame(s, frame, HEVC_FRAME_FLAG_OUTPUT);
libavcodec/imgconvert.c+1−1
@@ -67,7 +67,7 @@ int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, · 66 unmodified lines
6767 return 0;
6868
6969 for (i = 0; i < nb_components; i++)
70− if (src_desc->comp[i].depth_minus1 > dst_desc->comp[i].depth_minus1)
70+ if (src_desc->comp[i].depth > dst_desc->comp[i].depth)
7171 loss |= FF_LOSS_DEPTH;
7272
7373 if (dst_desc->log2_chroma_w > src_desc->log2_chroma_w ||
libavcodec/libopenjpegdec.c+5−5
@@ -94,22 +94,22 @@ static int libopenjpeg_matches_pix_fmt(const opj_image_t *img, · 93 unmodified lines
9494 switch (desc->nb_components) {
9595 case 4:
9696 match = match &&
97− desc->comp[3].depth_minus1 + 1 >= img->comps[3].prec &&
97+ desc->comp[3].depth >= img->comps[3].prec &&
9898 1 == img->comps[3].dx &&
9999 1 == img->comps[3].dy;
100100 case 3:
101101 match = match &&
102− desc->comp[2].depth_minus1 + 1 >= img->comps[2].prec &&
102+ desc->comp[2].depth >= img->comps[2].prec &&
103103 1 << desc->log2_chroma_w == img->comps[2].dx &&
104104 1 << desc->log2_chroma_h == img->comps[2].dy;
105105 case 2:
106106 match = match &&
107− desc->comp[1].depth_minus1 + 1 >= img->comps[1].prec &&
107+ desc->comp[1].depth >= img->comps[1].prec &&
108108 1 << desc->log2_chroma_w == img->comps[1].dx &&
109109 1 << desc->log2_chroma_h == img->comps[1].dy;
110110 case 1:
111111 match = match &&
112− desc->comp[0].depth_minus1 + 1 >= img->comps[0].prec &&
112+ desc->comp[0].depth >= img->comps[0].prec &&
113113 1 == img->comps[0].dx &&
114114 1 == img->comps[0].dy;
115115 default:
@@ -365,7 +365,7 @@ static int libopenjpeg_decode_frame(AVCodecContext *avctx, · 249 unmodified lines
365365 }
366366
367367 desc = av_pix_fmt_desc_get(avctx->pix_fmt);
368− pixel_size = desc->comp[0].step_minus1 + 1;
368+ pixel_size = desc->comp[0].step;
369369 ispacked = libopenjpeg_ispacked(avctx->pix_fmt);
370370
371371 switch (pixel_size) {
libavcodec/libopenjpegenc.c+2−2
@@ -131,8 +131,8 @@ static opj_image_t *libopenjpeg_create_image(AVCodecContext *avctx, · 130 unmodified lines
131131 }
132132
133133 for (i = 0; i < numcomps; i++) {
134− cmptparm[i].prec = desc->comp[i].depth_minus1 + 1;
135− cmptparm[i].bpp = desc->comp[i].depth_minus1 + 1;
134+ cmptparm[i].prec = desc->comp[i].depth;
135+ cmptparm[i].bpp = desc->comp[i].depth;
136136 cmptparm[i].sgnd = 0;
137137 cmptparm[i].dx = sub_dx[i];
138138 cmptparm[i].dy = sub_dy[i];
libavcodec/libx265.c+2−2
@@ -78,7 +78,7 @@ static av_cold int libx265_encode_init(AVCodecContext *avctx) · 77 unmodified lines
7878 {
7979 libx265Context *ctx = avctx->priv_data;
8080
81− ctx->api = x265_api_get(av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth_minus1 + 1);
81+ ctx->api = x265_api_get(av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth);
8282 if (!ctx->api)
8383 ctx->api = x265_api_get(0);
8484
@@ -261,7 +261,7 @@ static int libx265_encode_frame(AVCodecContext *avctx, AVPacket *pkt, · 176 unmodified lines
261261 }
262262
263263 x265pic.pts = pic->pts;
264− x265pic.bitDepth = av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth_minus1 + 1;
264+ x265pic.bitDepth = av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth;
265265
266266 x265pic.sliceType = pic->pict_type == AV_PICTURE_TYPE_I ? X265_TYPE_I :
267267 pic->pict_type == AV_PICTURE_TYPE_P ? X265_TYPE_P :
libavcodec/pnmenc.c+1−1
@@ -83,7 +83,7 @@ static int pnm_encode_frame(AVCodecContext *avctx, AVPacket *pkt, · 82 unmodified lines
8383 "P%c\n%d %d\n", c, avctx->width, h1);
8484 bytestream += strlen(bytestream);
8585 if (avctx->pix_fmt != AV_PIX_FMT_MONOWHITE) {
86− int maxdepth = (1 << (av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth_minus1 + 1)) - 1;
86+ int maxdepth = (1 << av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth) - 1;
8787 snprintf(bytestream, bytestream_end - bytestream,
8888 "%d\n", maxdepth);
8989 bytestream += strlen(bytestream);
libavfilter/vf_hqdn3d.c+1−1
@@ -269,7 +269,7 @@ static int config_input(AVFilterLink *inlink) · 268 unmodified lines
269269
270270 s->hsub = desc->log2_chroma_w;
271271 s->vsub = desc->log2_chroma_h;
272− s->depth = desc->comp[0].depth_minus1+1;
272+ s->depth = desc->comp[0].depth;
273273
274274 s->line = av_malloc(inlink->w * sizeof(*s->line));
275275 if (!s->line)
libavfilter/vf_yadif.c+2−2
@@ -186,7 +186,7 @@ static int filter_slice(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs) · 185 unmodified lines
186186 YADIFContext *s = ctx->priv;
187187 ThreadData *td = arg;
188188 int refs = s->cur->linesize[td->plane];
189− int df = (s->csp->comp[td->plane].depth_minus1 + 8) / 8;
189+ int df = (s->csp->comp[td->plane].depth + 7) / 8;
190190 int pix_3 = 3 * df;
191191 int slice_h = td->h / nb_jobs;
192192 int slice_start = jobnr * slice_h;
@@ -463,7 +463,7 @@ static int config_props(AVFilterLink *link) · 270 unmodified lines
463463 link->h = link->src->inputs[0]->h;
464464
465465 s->csp = av_pix_fmt_desc_get(link->format);
466− if (s->csp->comp[0].depth_minus1 / 8 == 1) {
466+ if (s->csp->comp[0].depth > 8) {
467467 s->filter_line = filter_line_c_16bit;
468468 s->filter_edges = filter_edges_16bit;
469469 } else {
libavutil/imgutils.c+5−5
@@ -40,8 +40,8 @@ void av_image_fill_max_pixsteps(int max_pixsteps[4], int max_pixstep_comps[4], · 39 unmodified lines
4040
4141 for (i = 0; i < 4; i++) {
4242 const AVComponentDescriptor *comp = &(pixdesc->comp[i]);
43− if ((comp->step_minus1+1) > max_pixsteps[comp->plane]) {
44− max_pixsteps[comp->plane] = comp->step_minus1+1;
43+ if (comp->step > max_pixsteps[comp->plane]) {
44+ max_pixsteps[comp->plane] = comp->step;
4545 if (max_pixstep_comps)
4646 max_pixstep_comps[comp->plane] = i;
4747 }
@@ -59,7 +59,7 @@ int av_image_get_linesize(enum AVPixelFormat pix_fmt, int width, int plane) · 11 unmodified lines
5959 return AVERROR(EINVAL);
6060
6161 if (desc->flags & AV_PIX_FMT_FLAG_BITSTREAM)
62− return (width * (desc->comp[0].step_minus1+1) + 7) >> 3;
62+ return (width * desc->comp[0].step + 7) >> 3;
6363
6464 av_image_fill_max_pixsteps(max_step, max_step_comp, desc);
6565 s = (max_step_comp[plane] == 1 || max_step_comp[plane] == 2) ? desc->log2_chroma_w : 0;
@@ -79,9 +79,9 @@ int av_image_fill_linesizes(int linesizes[4], enum AVPixelFormat pix_fmt, int wi · 13 unmodified lines
7979 return AVERROR(EINVAL);
8080
8181 if (desc->flags & AV_PIX_FMT_FLAG_BITSTREAM) {
82− if (width > (INT_MAX -7) / (desc->comp[0].step_minus1+1))
82+ if (width > (INT_MAX - 7) / desc->comp[0].step)
8383 return AVERROR(EINVAL);
84− linesizes[0] = (width * (desc->comp[0].step_minus1+1) + 7) >> 3;
84+ linesizes[0] = (width * desc->comp[0].step + 7) >> 3;
8585 return 0;
8686 }
8787
libavutil/pixdesc.c+365−359
@@ -38,14 +38,14 @@ void av_read_image_line(uint16_t *dst, · 37 unmodified lines
3838 {
3939 AVComponentDescriptor comp = desc->comp[c];
4040 int plane = comp.plane;
41− int depth = comp.depth_minus1 + 1;
41+ int depth = comp.depth;
4242 int mask = (1 << depth) - 1;
4343 int shift = comp.shift;
44− int step = comp.step_minus1 + 1;
44+ int step = comp.step;
4545 int flags = desc->flags;
4646
4747 if (flags & AV_PIX_FMT_FLAG_BITSTREAM) {
48− int skip = x * step + comp.offset_plus1 - 1;
48+ int skip = x * step + comp.offset;
4949 const uint8_t *p = data[plane] + y * linesize[plane] + (skip >> 3);
5050 int shift = 8 - depth - (skip & 7);
5151
@@ -60,7 +60,7 @@ void av_read_image_line(uint16_t *dst, · 8 unmodified lines
6060 }
6161 } else {
6262 const uint8_t *p = data[plane] + y * linesize[plane] +
63− x * step + comp.offset_plus1 - 1;
63+ x * step + comp.offset;
6464 int is_8bit = shift + depth <= 8;
6565
6666 if (is_8bit)
@@ -85,12 +85,12 @@ void av_write_image_line(const uint16_t *src, · 18 unmodified lines
8585 {
8686 AVComponentDescriptor comp = desc->comp[c];
8787 int plane = comp.plane;
88− int depth = comp.depth_minus1 + 1;
89− int step = comp.step_minus1 + 1;
88+ int depth = comp.depth;
89+ int step = comp.step;
9090 int flags = desc->flags;
9191
9292 if (flags & AV_PIX_FMT_FLAG_BITSTREAM) {
93− int skip = x * step + comp.offset_plus1 - 1;
93+ int skip = x * step + comp.offset;
9494 uint8_t *p = data[plane] + y * linesize[plane] + (skip >> 3);
9595 int shift = 8 - depth - (skip & 7);
9696
@@ -103,7 +103,7 @@ void av_write_image_line(const uint16_t *src, · 6 unmodified lines
103103 } else {
104104 int shift = comp.shift;
105105 uint8_t *p = data[plane] + y * linesize[plane] +
106− x * step + comp.offset_plus1 - 1;
106+ x * step + comp.offset;
107107
108108 if (shift + depth <= 8) {
109109 p += !!(flags & AV_PIX_FMT_FLAG_BE);
@@ -126,6 +126,9 @@ void av_write_image_line(const uint16_t *src, · 16 unmodified lines
126126 }
127127 }
128128
129+#if FF_API_PLUS1_MINUS1
130+FF_DISABLE_DEPRECATION_WARNINGS
131+#endif
129132 static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
130133 [AV_PIX_FMT_YUV420P] = {
131134 .name = "yuv420p",
@@ -133,9 +136,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 1 unmodified line
133136 .log2_chroma_w = 1,
134137 .log2_chroma_h = 1,
135138 .comp = {
136− { 0, 0, 1, 0, 7 }, /* Y */
137− { 1, 0, 1, 0, 7 }, /* U */
138− { 2, 0, 1, 0, 7 }, /* V */
139+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
140+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
141+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
139142 },
140143 .flags = AV_PIX_FMT_FLAG_PLANAR,
141144 },
@@ -145,9 +148,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
145148 .log2_chroma_w = 1,
146149 .log2_chroma_h = 0,
147150 .comp = {
148− { 0, 1, 1, 0, 7 }, /* Y */
149− { 0, 3, 2, 0, 7 }, /* U */
150− { 0, 3, 4, 0, 7 }, /* V */
151+ { 0, 2, 0, 0, 8, 1, 7, 1 }, /* Y */
152+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* U */
153+ { 0, 4, 3, 0, 8, 3, 7, 4 }, /* V */
151154 },
152155 },
153156 [AV_PIX_FMT_YVYU422] = {
@@ -156,9 +159,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 2 unmodified lines
156159 .log2_chroma_w = 1,
157160 .log2_chroma_h = 0,
158161 .comp = {
159− { 0, 1, 1, 0, 7 }, /* Y */
160− { 0, 3, 2, 0, 7 }, /* V */
161− { 0, 3, 4, 0, 7 }, /* U */
162+ { 0, 2, 0, 0, 8, 1, 7, 1 }, /* Y */
163+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* V */
164+ { 0, 4, 3, 0, 8, 3, 7, 4 }, /* U */
162165 },
163166 },
164167 [AV_PIX_FMT_RGB24] = {
@@ -167,9 +170,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 2 unmodified lines
167170 .log2_chroma_w = 0,
168171 .log2_chroma_h = 0,
169172 .comp = {
170− { 0, 2, 1, 0, 7 }, /* R */
171− { 0, 2, 2, 0, 7 }, /* G */
172− { 0, 2, 3, 0, 7 }, /* B */
173+ { 0, 3, 0, 0, 8, 2, 7, 1 }, /* R */
174+ { 0, 3, 1, 0, 8, 2, 7, 2 }, /* G */
175+ { 0, 3, 2, 0, 8, 2, 7, 3 }, /* B */
173176 },
174177 .flags = AV_PIX_FMT_FLAG_RGB,
175178 },
@@ -179,9 +182,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
179182 .log2_chroma_w = 0,
180183 .log2_chroma_h = 0,
181184 .comp = {
182− { 0, 2, 1, 0, 7 }, /* B */
183− { 0, 2, 2, 0, 7 }, /* G */
184− { 0, 2, 3, 0, 7 }, /* R */
185+ { 0, 3, 0, 0, 8, 2, 7, 1 }, /* B */
186+ { 0, 3, 1, 0, 8, 2, 7, 2 }, /* G */
187+ { 0, 3, 2, 0, 8, 2, 7, 3 }, /* R */
185188 },
186189 .flags = AV_PIX_FMT_FLAG_RGB,
187190 },
@@ -191,9 +194,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
191194 .log2_chroma_w = 1,
192195 .log2_chroma_h = 0,
193196 .comp = {
194− { 0, 0, 1, 0, 7 }, /* Y */
195− { 1, 0, 1, 0, 7 }, /* U */
196− { 2, 0, 1, 0, 7 }, /* V */
197+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
198+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
199+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
197200 },
198201 .flags = AV_PIX_FMT_FLAG_PLANAR,
199202 },
@@ -203,9 +206,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
203206 .log2_chroma_w = 0,
204207 .log2_chroma_h = 0,
205208 .comp = {
206− { 0, 0, 1, 0, 7 }, /* Y */
207− { 1, 0, 1, 0, 7 }, /* U */
208− { 2, 0, 1, 0, 7 }, /* V */
209+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
210+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
211+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
209212 },
210213 .flags = AV_PIX_FMT_FLAG_PLANAR,
211214 },
@@ -215,9 +218,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
215218 .log2_chroma_w = 2,
216219 .log2_chroma_h = 2,
217220 .comp = {
218− { 0, 0, 1, 0, 7 }, /* Y */
219− { 1, 0, 1, 0, 7 }, /* U */
220− { 2, 0, 1, 0, 7 }, /* V */
221+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
222+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
223+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
221224 },
222225 .flags = AV_PIX_FMT_FLAG_PLANAR,
223226 },
@@ -227,9 +230,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
227230 .log2_chroma_w = 2,
228231 .log2_chroma_h = 0,
229232 .comp = {
230− { 0, 0, 1, 0, 7 }, /* Y */
231− { 1, 0, 1, 0, 7 }, /* U */
232− { 2, 0, 1, 0, 7 }, /* V */
233+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
234+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
235+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
233236 },
234237 .flags = AV_PIX_FMT_FLAG_PLANAR,
235238 },
@@ -239,7 +242,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
239242 .log2_chroma_w = 0,
240243 .log2_chroma_h = 0,
241244 .comp = {
242− { 0, 0, 1, 0, 7 }, /* Y */
245+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
243246 },
244247 .flags = AV_PIX_FMT_FLAG_PSEUDOPAL,
245248 .alias = "gray8,y8",
@@ -250,7 +253,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 4 unmodified lines
250253 .log2_chroma_w = 0,
251254 .log2_chroma_h = 0,
252255 .comp = {
253− { 0, 0, 1, 0, 0 }, /* Y */
256+ { 0, 1, 0, 0, 1, 0, 0, 1 }, /* Y */
254257 },
255258 .flags = AV_PIX_FMT_FLAG_BITSTREAM,
256259 },
@@ -260,7 +263,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
260263 .log2_chroma_w = 0,
261264 .log2_chroma_h = 0,
262265 .comp = {
263− { 0, 0, 1, 7, 0 }, /* Y */
266+ { 0, 1, 0, 7, 1, 0, 0, 1 }, /* Y */
264267 },
265268 .flags = AV_PIX_FMT_FLAG_BITSTREAM,
266269 },
@@ -270,7 +273,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
270273 .log2_chroma_w = 0,
271274 .log2_chroma_h = 0,
272275 .comp = {
273− { 0, 0, 1, 0, 7 },
276+ { 0, 1, 0, 0, 8, 0, 7, 1 },
274277 },
275278 .flags = AV_PIX_FMT_FLAG_PAL,
276279 },
@@ -280,9 +283,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
280283 .log2_chroma_w = 1,
281284 .log2_chroma_h = 1,
282285 .comp = {
283− { 0, 0, 1, 0, 7 }, /* Y */
284− { 1, 0, 1, 0, 7 }, /* U */
285− { 2, 0, 1, 0, 7 }, /* V */
286+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
287+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
288+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
286289 },
287290 .flags = AV_PIX_FMT_FLAG_PLANAR,
288291 },
@@ -292,9 +295,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
292295 .log2_chroma_w = 1,
293296 .log2_chroma_h = 0,
294297 .comp = {
295− { 0, 0, 1, 0, 7 }, /* Y */
296− { 1, 0, 1, 0, 7 }, /* U */
297− { 2, 0, 1, 0, 7 }, /* V */
298+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
299+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
300+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
298301 },
299302 .flags = AV_PIX_FMT_FLAG_PLANAR,
300303 },
@@ -304,9 +307,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
304307 .log2_chroma_w = 0,
305308 .log2_chroma_h = 0,
306309 .comp = {
307− {0, 0, 1, 0, 7}, /* Y */
308− {1, 0, 1, 0, 7}, /* U */
309− {2, 0, 1, 0, 7}, /* V */
310+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
311+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
312+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
310313 },
311314 .flags = AV_PIX_FMT_FLAG_PLANAR,
312315 },
@@ -326,9 +329,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 13 unmodified lines
326329 .log2_chroma_w = 1,
327330 .log2_chroma_h = 0,
328331 .comp = {
329− { 0, 1, 2, 0, 7 }, /* Y */
330− { 0, 3, 1, 0, 7 }, /* U */
331− { 0, 3, 3, 0, 7 }, /* V */
332+ { 0, 2, 1, 0, 8, 1, 7, 2 }, /* Y */
333+ { 0, 4, 0, 0, 8, 3, 7, 1 }, /* U */
334+ { 0, 4, 2, 0, 8, 3, 7, 3 }, /* V */
332335 },
333336 },
334337 [AV_PIX_FMT_UYYVYY411] = {
@@ -337,9 +340,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 2 unmodified lines
337340 .log2_chroma_w = 2,
338341 .log2_chroma_h = 0,
339342 .comp = {
340− { 0, 3, 2, 0, 7 }, /* Y */
341− { 0, 5, 1, 0, 7 }, /* U */
342− { 0, 5, 4, 0, 7 }, /* V */
343+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* Y */
344+ { 0, 6, 0, 0, 8, 5, 7, 1 }, /* U */
345+ { 0, 6, 3, 0, 8, 5, 7, 4 }, /* V */
343346 },
344347 },
345348 [AV_PIX_FMT_BGR8] = {
@@ -348,9 +351,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 2 unmodified lines
348351 .log2_chroma_w = 0,
349352 .log2_chroma_h = 0,
350353 .comp = {
351− { 0, 0, 1, 6, 1 }, /* B */
352− { 0, 0, 1, 3, 2 }, /* G */
353− { 0, 0, 1, 0, 2 }, /* R */
354+ { 0, 1, 0, 6, 2, 0, 1, 1 }, /* B */
355+ { 0, 1, 0, 3, 3, 0, 2, 1 }, /* G */
356+ { 0, 1, 0, 0, 3, 0, 2, 1 }, /* R */
354357 },
355358 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_PSEUDOPAL,
356359 },
@@ -360,9 +363,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
360363 .log2_chroma_w = 0,
361364 .log2_chroma_h = 0,
362365 .comp = {
363− { 0, 3, 1, 0, 0 }, /* B */
364− { 0, 3, 2, 0, 1 }, /* G */
365− { 0, 3, 4, 0, 0 }, /* R */
366+ { 0, 4, 0, 0, 1, 3, 0, 1 }, /* B */
367+ { 0, 4, 1, 0, 2, 3, 1, 2 }, /* G */
368+ { 0, 4, 3, 0, 1, 3, 0, 4 }, /* R */
366369 },
367370 .flags = AV_PIX_FMT_FLAG_BITSTREAM | AV_PIX_FMT_FLAG_RGB,
368371 },
@@ -372,9 +375,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
372375 .log2_chroma_w = 0,
373376 .log2_chroma_h = 0,
374377 .comp = {
375− { 0, 0, 1, 3, 0 }, /* B */
376− { 0, 0, 1, 1, 1 }, /* G */
377− { 0, 0, 1, 0, 0 }, /* R */
378+ { 0, 1, 0, 3, 1, 0, 0, 1 }, /* B */
379+ { 0, 1, 0, 1, 2, 0, 1, 1 }, /* G */
380+ { 0, 1, 0, 0, 1, 0, 0, 1 }, /* R */
378381 },
379382 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_PSEUDOPAL,
380383 },
@@ -384,9 +387,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
384387 .log2_chroma_w = 0,
385388 .log2_chroma_h = 0,
386389 .comp = {
387− { 0, 0, 1, 6, 1 }, /* R */
388− { 0, 0, 1, 3, 2 }, /* G */
389− { 0, 0, 1, 0, 2 }, /* B */
390+ { 0, 1, 0, 6, 2, 0, 1, 1 }, /* R */
391+ { 0, 1, 0, 3, 3, 0, 2, 1 }, /* G */
392+ { 0, 1, 0, 0, 3, 0, 2, 1 }, /* B */
390393 },
391394 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_PSEUDOPAL,
392395 },
@@ -396,9 +399,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
396399 .log2_chroma_w = 0,
397400 .log2_chroma_h = 0,
398401 .comp = {
399− { 0, 3, 1, 0, 0 }, /* R */
400− { 0, 3, 2, 0, 1 }, /* G */
401− { 0, 3, 4, 0, 0 }, /* B */
402+ { 0, 4, 0, 0, 1, 3, 0, 1 }, /* R */
403+ { 0, 4, 1, 0, 2, 3, 1, 2 }, /* G */
404+ { 0, 4, 3, 0, 1, 3, 0, 4 }, /* B */
402405 },
403406 .flags = AV_PIX_FMT_FLAG_BITSTREAM | AV_PIX_FMT_FLAG_RGB,
404407 },
@@ -408,9 +411,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
408411 .log2_chroma_w = 0,
409412 .log2_chroma_h = 0,
410413 .comp = {
411− { 0, 0, 1, 3, 0 }, /* R */
412− { 0, 0, 1, 1, 1 }, /* G */
413− { 0, 0, 1, 0, 0 }, /* B */
414+ { 0, 1, 0, 3, 1, 0, 0, 1 }, /* R */
415+ { 0, 1, 0, 1, 2, 0, 1, 1 }, /* G */
416+ { 0, 1, 0, 0, 1, 0, 0, 1 }, /* B */
414417 },
415418 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_PSEUDOPAL,
416419 },
@@ -420,9 +423,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
420423 .log2_chroma_w = 1,
421424 .log2_chroma_h = 1,
422425 .comp = {
423− { 0, 0, 1, 0, 7 }, /* Y */
424− { 1, 1, 1, 0, 7 }, /* U */
425− { 1, 1, 2, 0, 7 }, /* V */
426+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
427+ { 1, 2, 0, 0, 8, 1, 7, 1 }, /* U */
428+ { 1, 2, 1, 0, 8, 1, 7, 2 }, /* V */
426429 },
427430 .flags = AV_PIX_FMT_FLAG_PLANAR,
428431 },
@@ -432,9 +435,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
432435 .log2_chroma_w = 1,
433436 .log2_chroma_h = 1,
434437 .comp = {
435− { 0, 0, 1, 0, 7 }, /* Y */
436− { 1, 1, 1, 0, 7 }, /* V */
437− { 1, 1, 2, 0, 7 }, /* U */
438+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
439+ { 1, 2, 0, 0, 8, 1, 7, 1 }, /* V */
440+ { 1, 2, 1, 0, 8, 1, 7, 2 }, /* U */
438441 },
439442 .flags = AV_PIX_FMT_FLAG_PLANAR,
440443 },
@@ -444,10 +447,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
444447 .log2_chroma_w = 0,
445448 .log2_chroma_h = 0,
446449 .comp = {
447− { 0, 3, 1, 0, 7 }, /* A */
448− { 0, 3, 2, 0, 7 }, /* R */
449− { 0, 3, 3, 0, 7 }, /* G */
450− { 0, 3, 4, 0, 7 }, /* B */
450+ { 0, 4, 0, 0, 8, 3, 7, 1 }, /* A */
451+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* R */
452+ { 0, 4, 2, 0, 8, 3, 7, 3 }, /* G */
453+ { 0, 4, 3, 0, 8, 3, 7, 4 }, /* B */
451454 },
452455 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
453456 },
@@ -457,10 +460,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
457460 .log2_chroma_w = 0,
458461 .log2_chroma_h = 0,
459462 .comp = {
460− { 0, 3, 1, 0, 7 }, /* R */
461− { 0, 3, 2, 0, 7 }, /* G */
462− { 0, 3, 3, 0, 7 }, /* B */
463− { 0, 3, 4, 0, 7 }, /* A */
463+ { 0, 4, 0, 0, 8, 3, 7, 1 }, /* R */
464+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* G */
465+ { 0, 4, 2, 0, 8, 3, 7, 3 }, /* B */
466+ { 0, 4, 3, 0, 8, 3, 7, 4 }, /* A */
464467 },
465468 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
466469 },
@@ -470,10 +473,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
470473 .log2_chroma_w = 0,
471474 .log2_chroma_h = 0,
472475 .comp = {
473− { 0, 3, 1, 0, 7 }, /* A */
474− { 0, 3, 2, 0, 7 }, /* B */
475− { 0, 3, 3, 0, 7 }, /* G */
476− { 0, 3, 4, 0, 7 }, /* R */
476+ { 0, 4, 0, 0, 8, 3, 7, 1 }, /* A */
477+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* B */
478+ { 0, 4, 2, 0, 8, 3, 7, 3 }, /* G */
479+ { 0, 4, 3, 0, 8, 3, 7, 4 }, /* R */
477480 },
478481 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
479482 },
@@ -483,10 +486,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
483486 .log2_chroma_w = 0,
484487 .log2_chroma_h = 0,
485488 .comp = {
486− { 0, 3, 1, 0, 7 }, /* B */
487− { 0, 3, 2, 0, 7 }, /* G */
488− { 0, 3, 3, 0, 7 }, /* R */
489− { 0, 3, 4, 0, 7 }, /* A */
489+ { 0, 4, 0, 0, 8, 3, 7, 1 }, /* B */
490+ { 0, 4, 1, 0, 8, 3, 7, 2 }, /* G */
491+ { 0, 4, 2, 0, 8, 3, 7, 3 }, /* R */
492+ { 0, 4, 3, 0, 8, 3, 7, 4 }, /* A */
490493 },
491494 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
492495 },
@@ -496,7 +499,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
496499 .log2_chroma_w = 0,
497500 .log2_chroma_h = 0,
498501 .comp = {
499− { 0, 1, 1, 0, 15 }, /* Y */
502+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
500503 },
501504 .flags = AV_PIX_FMT_FLAG_BE,
502505 .alias = "y16be",
@@ -507,7 +510,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 4 unmodified lines
507510 .log2_chroma_w = 0,
508511 .log2_chroma_h = 0,
509512 .comp = {
510− { 0, 1, 1, 0, 15 }, /* Y */
513+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
511514 },
512515 .alias = "y16le",
513516 },
@@ -517,9 +520,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
517520 .log2_chroma_w = 0,
518521 .log2_chroma_h = 1,
519522 .comp = {
520− { 0, 0, 1, 0, 7 }, /* Y */
521− { 1, 0, 1, 0, 7 }, /* U */
522− { 2, 0, 1, 0, 7 }, /* V */
523+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
524+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
525+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
523526 },
524527 .flags = AV_PIX_FMT_FLAG_PLANAR,
525528 },
@@ -529,9 +532,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
529532 .log2_chroma_w = 0,
530533 .log2_chroma_h = 1,
531534 .comp = {
532− { 0, 0, 1, 0, 7 }, /* Y */
533− { 1, 0, 1, 0, 7 }, /* U */
534− { 2, 0, 1, 0, 7 }, /* V */
535+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
536+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
537+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
535538 },
536539 .flags = AV_PIX_FMT_FLAG_PLANAR,
537540 },
@@ -541,10 +544,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
541544 .log2_chroma_w = 1,
542545 .log2_chroma_h = 1,
543546 .comp = {
544− { 0, 0, 1, 0, 7 }, /* Y */
545− { 1, 0, 1, 0, 7 }, /* U */
546− { 2, 0, 1, 0, 7 }, /* V */
547− { 3, 0, 1, 0, 7 }, /* A */
547+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
548+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
549+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
550+ { 3, 1, 0, 0, 8, 0, 7, 1 }, /* A */
548551 },
549552 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
550553 },
@@ -554,10 +557,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
554557 .log2_chroma_w = 1,
555558 .log2_chroma_h = 0,
556559 .comp = {
557− { 0, 0, 1, 0, 7 }, /* Y */
558− { 1, 0, 1, 0, 7 }, /* U */
559− { 2, 0, 1, 0, 7 }, /* V */
560− { 3, 0, 1, 0, 7 }, /* A */
560+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
561+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
562+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
563+ { 3, 1, 0, 0, 8, 0, 7, 1 }, /* A */
561564 },
562565 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
563566 },
@@ -567,10 +570,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
567570 .log2_chroma_w = 0,
568571 .log2_chroma_h = 0,
569572 .comp = {
570− { 0, 0, 1, 0, 7 }, /* Y */
571− { 1, 0, 1, 0, 7 }, /* U */
572− { 2, 0, 1, 0, 7 }, /* V */
573− { 3, 0, 1, 0, 7 }, /* A */
573+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
574+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* U */
575+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* V */
576+ { 3, 1, 0, 0, 8, 0, 7, 1 }, /* A */
574577 },
575578 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
576579 },
@@ -580,10 +583,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
580583 .log2_chroma_w = 1,
581584 .log2_chroma_h = 1,
582585 .comp = {
583− { 0, 1, 1, 0, 8 }, /* Y */
584− { 1, 1, 1, 0, 8 }, /* U */
585− { 2, 1, 1, 0, 8 }, /* V */
586− { 3, 1, 1, 0, 8 }, /* A */
586+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
587+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
588+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
589+ { 3, 2, 0, 0, 9, 1, 8, 1 }, /* A */
587590 },
588591 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
589592 },
@@ -593,10 +596,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
593596 .log2_chroma_w = 1,
594597 .log2_chroma_h = 1,
595598 .comp = {
596− { 0, 1, 1, 0, 8 }, /* Y */
597− { 1, 1, 1, 0, 8 }, /* U */
598− { 2, 1, 1, 0, 8 }, /* V */
599− { 3, 1, 1, 0, 8 }, /* A */
599+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
600+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
601+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
602+ { 3, 2, 0, 0, 9, 1, 8, 1 }, /* A */
600603 },
601604 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
602605 },
@@ -606,10 +609,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
606609 .log2_chroma_w = 1,
607610 .log2_chroma_h = 0,
608611 .comp = {
609− { 0, 1, 1, 0, 8 }, /* Y */
610− { 1, 1, 1, 0, 8 }, /* U */
611− { 2, 1, 1, 0, 8 }, /* V */
612− { 3, 1, 1, 0, 8 }, /* A */
612+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
613+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
614+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
615+ { 3, 2, 0, 0, 9, 1, 8, 1 }, /* A */
613616 },
614617 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
615618 },
@@ -619,10 +622,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
619622 .log2_chroma_w = 1,
620623 .log2_chroma_h = 0,
621624 .comp = {
622− { 0, 1, 1, 0, 8 }, /* Y */
623− { 1, 1, 1, 0, 8 }, /* U */
624− { 2, 1, 1, 0, 8 }, /* V */
625− { 3, 1, 1, 0, 8 }, /* A */
625+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
626+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
627+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
628+ { 3, 2, 0, 0, 9, 1, 8, 1 }, /* A */
626629 },
627630 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
628631 },
@@ -632,10 +635,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
632635 .log2_chroma_w = 0,
633636 .log2_chroma_h = 0,
634637 .comp = {
635− { 0, 1, 1, 0, 8 }, /* Y */
636− { 1, 1, 1, 0, 8 }, /* U */
637− { 2, 1, 1, 0, 8 }, /* V */
638− { 3, 1, 1, 0, 8 }, /* A */
638+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
639+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
640+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
641+ { 3, 2, 0, 0, 9, 1, 8, 1 }, /* A */
639642 },
640643 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
641644 },
@@ -645,10 +648,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
645648 .log2_chroma_w = 0,
646649 .log2_chroma_h = 0,
647650 .comp = {
648− { 0, 1, 1, 0, 8 }, /* Y */
649− { 1, 1, 1, 0, 8 }, /* U */
650− { 2, 1, 1, 0, 8 }, /* V */
651− { 3, 1, 1, 0, 8 }, /* A */
651+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
652+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
653+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
654+ { 3, 2, 0, 0, 9, 1, 8, 1 }, /* A */
652655 },
653656 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
654657 },
@@ -658,10 +661,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
658661 .log2_chroma_w = 1,
659662 .log2_chroma_h = 1,
660663 .comp = {
661− { 0, 1, 1, 0, 9 }, /* Y */
662− { 1, 1, 1, 0, 9 }, /* U */
663− { 2, 1, 1, 0, 9 }, /* V */
664− { 3, 1, 1, 0, 9 }, /* A */
664+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
665+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
666+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
667+ { 3, 2, 0, 0, 10, 1, 9, 1 }, /* A */
665668 },
666669 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
667670 },
@@ -671,10 +674,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
671674 .log2_chroma_w = 1,
672675 .log2_chroma_h = 1,
673676 .comp = {
674− { 0, 1, 1, 0, 9 }, /* Y */
675− { 1, 1, 1, 0, 9 }, /* U */
676− { 2, 1, 1, 0, 9 }, /* V */
677− { 3, 1, 1, 0, 9 }, /* A */
677+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
678+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
679+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
680+ { 3, 2, 0, 0, 10, 1, 9, 1 }, /* A */
678681 },
679682 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
680683 },
@@ -684,10 +687,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
684687 .log2_chroma_w = 1,
685688 .log2_chroma_h = 0,
686689 .comp = {
687− { 0, 1, 1, 0, 9 }, /* Y */
688− { 1, 1, 1, 0, 9 }, /* U */
689− { 2, 1, 1, 0, 9 }, /* V */
690− { 3, 1, 1, 0, 9 }, /* A */
690+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
691+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
692+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
693+ { 3, 2, 0, 0, 10, 1, 9, 1 }, /* A */
691694 },
692695 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
693696 },
@@ -697,10 +700,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
697700 .log2_chroma_w = 1,
698701 .log2_chroma_h = 0,
699702 .comp = {
700− { 0, 1, 1, 0, 9 }, /* Y */
701− { 1, 1, 1, 0, 9 }, /* U */
702− { 2, 1, 1, 0, 9 }, /* V */
703− { 3, 1, 1, 0, 9 }, /* A */
703+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
704+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
705+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
706+ { 3, 2, 0, 0, 10, 1, 9, 1 }, /* A */
704707 },
705708 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
706709 },
@@ -710,10 +713,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
710713 .log2_chroma_w = 0,
711714 .log2_chroma_h = 0,
712715 .comp = {
713− { 0, 1, 1, 0, 9 }, /* Y */
714− { 1, 1, 1, 0, 9 }, /* U */
715− { 2, 1, 1, 0, 9 }, /* V */
716− { 3, 1, 1, 0, 9 }, /* A */
716+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
717+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
718+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
719+ { 3, 2, 0, 0, 10, 1, 9, 1 }, /* A */
717720 },
718721 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
719722 },
@@ -723,10 +726,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
723726 .log2_chroma_w = 0,
724727 .log2_chroma_h = 0,
725728 .comp = {
726− { 0, 1, 1, 0, 9 }, /* Y */
727− { 1, 1, 1, 0, 9 }, /* U */
728− { 2, 1, 1, 0, 9 }, /* V */
729− { 3, 1, 1, 0, 9 }, /* A */
729+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
730+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
731+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
732+ { 3, 2, 0, 0, 10, 1, 9, 1 }, /* A */
730733 },
731734 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
732735 },
@@ -736,10 +739,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
736739 .log2_chroma_w = 1,
737740 .log2_chroma_h = 1,
738741 .comp = {
739− { 0, 1, 1, 0, 15 }, /* Y */
740− { 1, 1, 1, 0, 15 }, /* U */
741− { 2, 1, 1, 0, 15 }, /* V */
742− { 3, 1, 1, 0, 15 }, /* A */
742+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
743+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
744+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
745+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
743746 },
744747 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
745748 },
@@ -749,10 +752,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
749752 .log2_chroma_w = 1,
750753 .log2_chroma_h = 1,
751754 .comp = {
752− { 0, 1, 1, 0, 15 }, /* Y */
753− { 1, 1, 1, 0, 15 }, /* U */
754− { 2, 1, 1, 0, 15 }, /* V */
755− { 3, 1, 1, 0, 15 }, /* A */
755+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
756+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
757+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
758+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
756759 },
757760 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
758761 },
@@ -762,10 +765,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
762765 .log2_chroma_w = 1,
763766 .log2_chroma_h = 0,
764767 .comp = {
765− { 0, 1, 1, 0, 15 }, /* Y */
766− { 1, 1, 1, 0, 15 }, /* U */
767− { 2, 1, 1, 0, 15 }, /* V */
768− { 3, 1, 1, 0, 15 }, /* A */
768+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
769+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
770+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
771+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
769772 },
770773 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
771774 },
@@ -775,10 +778,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
775778 .log2_chroma_w = 1,
776779 .log2_chroma_h = 0,
777780 .comp = {
778− { 0, 1, 1, 0, 15 }, /* Y */
779− { 1, 1, 1, 0, 15 }, /* U */
780− { 2, 1, 1, 0, 15 }, /* V */
781− { 3, 1, 1, 0, 15 }, /* A */
781+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
782+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
783+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
784+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
782785 },
783786 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
784787 },
@@ -788,10 +791,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
788791 .log2_chroma_w = 0,
789792 .log2_chroma_h = 0,
790793 .comp = {
791− { 0, 1, 1, 0, 15 }, /* Y */
792− { 1, 1, 1, 0, 15 }, /* U */
793− { 2, 1, 1, 0, 15 }, /* V */
794− { 3, 1, 1, 0, 15 }, /* A */
794+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
795+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
796+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
797+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
795798 },
796799 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
797800 },
@@ -801,10 +804,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
801804 .log2_chroma_w = 0,
802805 .log2_chroma_h = 0,
803806 .comp = {
804− { 0, 1, 1, 0, 15 }, /* Y */
805− { 1, 1, 1, 0, 15 }, /* U */
806− { 2, 1, 1, 0, 15 }, /* V */
807− { 3, 1, 1, 0, 15 }, /* A */
807+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
808+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
809+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
810+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
808811 },
809812 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
810813 },
@@ -852,9 +855,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 41 unmodified lines
852855 .log2_chroma_w = 0,
853856 .log2_chroma_h = 0,
854857 .comp = {
855− { 0, 5, 1, 0, 15 }, /* R */
856− { 0, 5, 3, 0, 15 }, /* G */
857− { 0, 5, 5, 0, 15 }, /* B */
858+ { 0, 6, 0, 0, 16, 5, 15, 1 }, /* R */
859+ { 0, 6, 2, 0, 16, 5, 15, 3 }, /* G */
860+ { 0, 6, 4, 0, 16, 5, 15, 5 }, /* B */
858861 },
859862 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_BE,
860863 },
@@ -864,9 +867,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
864867 .log2_chroma_w = 0,
865868 .log2_chroma_h = 0,
866869 .comp = {
867− { 0, 5, 1, 0, 15 }, /* R */
868− { 0, 5, 3, 0, 15 }, /* G */
869− { 0, 5, 5, 0, 15 }, /* B */
870+ { 0, 6, 0, 0, 16, 5, 15, 1 }, /* R */
871+ { 0, 6, 2, 0, 16, 5, 15, 3 }, /* G */
872+ { 0, 6, 4, 0, 16, 5, 15, 5 }, /* B */
870873 },
871874 .flags = AV_PIX_FMT_FLAG_RGB,
872875 },
@@ -876,10 +879,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
876879 .log2_chroma_w = 0,
877880 .log2_chroma_h = 0,
878881 .comp = {
879− { 0, 7, 1, 0, 15 }, /* R */
880− { 0, 7, 3, 0, 15 }, /* G */
881− { 0, 7, 5, 0, 15 }, /* B */
882− { 0, 7, 7, 0, 15 }, /* A */
882+ { 0, 8, 0, 0, 16, 7, 15, 1 }, /* R */
883+ { 0, 8, 2, 0, 16, 7, 15, 3 }, /* G */
884+ { 0, 8, 4, 0, 16, 7, 15, 5 }, /* B */
885+ { 0, 8, 6, 0, 16, 7, 15, 7 }, /* A */
883886 },
884887 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
885888 },
@@ -889,10 +892,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
889892 .log2_chroma_w = 0,
890893 .log2_chroma_h = 0,
891894 .comp = {
892− { 0, 7, 1, 0, 15 }, /* R */
893− { 0, 7, 3, 0, 15 }, /* G */
894− { 0, 7, 5, 0, 15 }, /* B */
895− { 0, 7, 7, 0, 15 }, /* A */
895+ { 0, 8, 0, 0, 16, 7, 15, 1 }, /* R */
896+ { 0, 8, 2, 0, 16, 7, 15, 3 }, /* G */
897+ { 0, 8, 4, 0, 16, 7, 15, 5 }, /* B */
898+ { 0, 8, 6, 0, 16, 7, 15, 7 }, /* A */
896899 },
897900 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
898901 },
@@ -902,9 +905,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
902905 .log2_chroma_w = 0,
903906 .log2_chroma_h = 0,
904907 .comp = {
905− { 0, 1, 0, 3, 4 }, /* R */
906− { 0, 1, 1, 5, 5 }, /* G */
907− { 0, 1, 1, 0, 4 }, /* B */
908+ { 0, 2, -1, 3, 5, 1, 4, 0 }, /* R */
909+ { 0, 2, 0, 5, 6, 1, 5, 1 }, /* G */
910+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* B */
908911 },
909912 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
910913 },
@@ -914,9 +917,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
914917 .log2_chroma_w = 0,
915918 .log2_chroma_h = 0,
916919 .comp = {
917− { 0, 1, 2, 3, 4 }, /* R */
918− { 0, 1, 1, 5, 5 }, /* G */
919− { 0, 1, 1, 0, 4 }, /* B */
920+ { 0, 2, 1, 3, 5, 1, 4, 2 }, /* R */
921+ { 0, 2, 0, 5, 6, 1, 5, 1 }, /* G */
922+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* B */
920923 },
921924 .flags = AV_PIX_FMT_FLAG_RGB,
922925 },
@@ -926,9 +929,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
926929 .log2_chroma_w = 0,
927930 .log2_chroma_h = 0,
928931 .comp = {
929− { 0, 1, 0, 2, 4 }, /* R */
930− { 0, 1, 1, 5, 4 }, /* G */
931− { 0, 1, 1, 0, 4 }, /* B */
932+ { 0, 2, -1, 2, 5, 1, 4, 0 }, /* R */
933+ { 0, 2, 0, 5, 5, 1, 4, 1 }, /* G */
934+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* B */
932935 },
933936 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
934937 },
@@ -938,9 +941,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
938941 .log2_chroma_w = 0,
939942 .log2_chroma_h = 0,
940943 .comp = {
941− { 0, 1, 2, 2, 4 }, /* R */
942− { 0, 1, 1, 5, 4 }, /* G */
943− { 0, 1, 1, 0, 4 }, /* B */
944+ { 0, 2, 1, 2, 5, 1, 4, 2 }, /* R */
945+ { 0, 2, 0, 5, 5, 1, 4, 1 }, /* G */
946+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* B */
944947 },
945948 .flags = AV_PIX_FMT_FLAG_RGB,
946949 },
@@ -950,9 +953,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
950953 .log2_chroma_w = 0,
951954 .log2_chroma_h = 0,
952955 .comp = {
953− { 0, 1, 0, 0, 3 }, /* R */
954− { 0, 1, 1, 4, 3 }, /* G */
955− { 0, 1, 1, 0, 3 }, /* B */
956+ { 0, 2, -1, 0, 4, 1, 3, 0 }, /* R */
957+ { 0, 2, 0, 4, 4, 1, 3, 1 }, /* G */
958+ { 0, 2, 0, 0, 4, 1, 3, 1 }, /* B */
956959 },
957960 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
958961 },
@@ -962,9 +965,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
962965 .log2_chroma_w = 0,
963966 .log2_chroma_h = 0,
964967 .comp = {
965− { 0, 1, 2, 0, 3 }, /* R */
966− { 0, 1, 1, 4, 3 }, /* G */
967− { 0, 1, 1, 0, 3 }, /* B */
968+ { 0, 2, 1, 0, 4, 1, 3, 2 }, /* R */
969+ { 0, 2, 0, 4, 4, 1, 3, 1 }, /* G */
970+ { 0, 2, 0, 0, 4, 1, 3, 1 }, /* B */
968971 },
969972 .flags = AV_PIX_FMT_FLAG_RGB,
970973 },
@@ -974,9 +977,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
974977 .log2_chroma_w = 0,
975978 .log2_chroma_h = 0,
976979 .comp = {
977− { 0, 5, 1, 0, 15 }, /* B */
978− { 0, 5, 3, 0, 15 }, /* G */
979− { 0, 5, 5, 0, 15 }, /* R */
980+ { 0, 6, 0, 0, 16, 5, 15, 1 }, /* B */
981+ { 0, 6, 2, 0, 16, 5, 15, 3 }, /* G */
982+ { 0, 6, 4, 0, 16, 5, 15, 5 }, /* R */
980983 },
981984 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
982985 },
@@ -986,9 +989,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
986989 .log2_chroma_w = 0,
987990 .log2_chroma_h = 0,
988991 .comp = {
989− { 0, 5, 1, 0, 15 }, /* B */
990− { 0, 5, 3, 0, 15 }, /* G */
991− { 0, 5, 5, 0, 15 }, /* R */
992+ { 0, 6, 0, 0, 16, 5, 15, 1 }, /* B */
993+ { 0, 6, 2, 0, 16, 5, 15, 3 }, /* G */
994+ { 0, 6, 4, 0, 16, 5, 15, 5 }, /* R */
992995 },
993996 .flags = AV_PIX_FMT_FLAG_RGB,
994997 },
@@ -998,10 +1001,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
9981001 .log2_chroma_w = 0,
9991002 .log2_chroma_h = 0,
10001003 .comp = {
1001− { 0, 5, 1, 0, 15 }, /* B */
1002− { 0, 5, 3, 0, 15 }, /* G */
1003− { 0, 5, 5, 0, 15 }, /* R */
1004− { 0, 5, 7, 0, 15 }, /* A */
1004+ { 0, 6, 0, 0, 16, 5, 15, 1 }, /* B */
1005+ { 0, 6, 2, 0, 16, 5, 15, 3 }, /* G */
1006+ { 0, 6, 4, 0, 16, 5, 15, 5 }, /* R */
1007+ { 0, 6, 6, 0, 16, 5, 15, 7 }, /* A */
10051008 },
10061009 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
10071010 },
@@ -1011,10 +1014,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10111014 .log2_chroma_w = 0,
10121015 .log2_chroma_h = 0,
10131016 .comp = {
1014− { 0, 5, 1, 0, 15 }, /* B */
1015− { 0, 5, 3, 0, 15 }, /* G */
1016− { 0, 5, 5, 0, 15 }, /* R */
1017− { 0, 5, 7, 0, 15 }, /* A */
1017+ { 0, 6, 0, 0, 16, 5, 15, 1 }, /* B */
1018+ { 0, 6, 2, 0, 16, 5, 15, 3 }, /* G */
1019+ { 0, 6, 4, 0, 16, 5, 15, 5 }, /* R */
1020+ { 0, 6, 6, 0, 16, 5, 15, 7 }, /* A */
10181021 },
10191022 .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
10201023 },
@@ -1024,9 +1027,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10241027 .log2_chroma_w = 0,
10251028 .log2_chroma_h = 0,
10261029 .comp = {
1027− { 0, 1, 0, 3, 4 }, /* B */
1028− { 0, 1, 1, 5, 5 }, /* G */
1029− { 0, 1, 1, 0, 4 }, /* R */
1030+ { 0, 2, -1, 3, 5, 1, 4, 0 }, /* B */
1031+ { 0, 2, 0, 5, 6, 1, 5, 1 }, /* G */
1032+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* R */
10301033 },
10311034 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
10321035 },
@@ -1036,9 +1039,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10361039 .log2_chroma_w = 0,
10371040 .log2_chroma_h = 0,
10381041 .comp = {
1039− { 0, 1, 2, 3, 4 }, /* B */
1040− { 0, 1, 1, 5, 5 }, /* G */
1041− { 0, 1, 1, 0, 4 }, /* R */
1042+ { 0, 2, 1, 3, 5, 1, 4, 2 }, /* B */
1043+ { 0, 2, 0, 5, 6, 1, 5, 1 }, /* G */
1044+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* R */
10421045 },
10431046 .flags = AV_PIX_FMT_FLAG_RGB,
10441047 },
@@ -1048,9 +1051,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10481051 .log2_chroma_w = 0,
10491052 .log2_chroma_h = 0,
10501053 .comp = {
1051− { 0, 1, 0, 2, 4 }, /* B */
1052− { 0, 1, 1, 5, 4 }, /* G */
1053− { 0, 1, 1, 0, 4 }, /* R */
1054+ { 0, 2, -1, 2, 5, 1, 4, 0 }, /* B */
1055+ { 0, 2, 0, 5, 5, 1, 4, 1 }, /* G */
1056+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* R */
10541057 },
10551058 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
10561059 },
@@ -1060,9 +1063,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10601063 .log2_chroma_w = 0,
10611064 .log2_chroma_h = 0,
10621065 .comp = {
1063− { 0, 1, 2, 2, 4 }, /* B */
1064− { 0, 1, 1, 5, 4 }, /* G */
1065− { 0, 1, 1, 0, 4 }, /* R */
1066+ { 0, 2, 1, 2, 5, 1, 4, 2 }, /* B */
1067+ { 0, 2, 0, 5, 5, 1, 4, 1 }, /* G */
1068+ { 0, 2, 0, 0, 5, 1, 4, 1 }, /* R */
10661069 },
10671070 .flags = AV_PIX_FMT_FLAG_RGB,
10681071 },
@@ -1072,9 +1075,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10721075 .log2_chroma_w = 0,
10731076 .log2_chroma_h = 0,
10741077 .comp = {
1075− { 0, 1, 0, 0, 3 }, /* B */
1076− { 0, 1, 1, 4, 3 }, /* G */
1077− { 0, 1, 1, 0, 3 }, /* R */
1078+ { 0, 2, -1, 0, 4, 1, 3, 0 }, /* B */
1079+ { 0, 2, 0, 4, 4, 1, 3, 1 }, /* G */
1080+ { 0, 2, 0, 0, 4, 1, 3, 1 }, /* R */
10781081 },
10791082 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB,
10801083 },
@@ -1084,9 +1087,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
10841087 .log2_chroma_w = 0,
10851088 .log2_chroma_h = 0,
10861089 .comp = {
1087− { 0, 1, 2, 0, 3 }, /* B */
1088− { 0, 1, 1, 4, 3 }, /* G */
1089− { 0, 1, 1, 0, 3 }, /* R */
1090+ { 0, 2, 1, 0, 4, 1, 3, 2 }, /* B */
1091+ { 0, 2, 0, 4, 4, 1, 3, 1 }, /* G */
1092+ { 0, 2, 0, 0, 4, 1, 3, 1 }, /* R */
10901093 },
10911094 .flags = AV_PIX_FMT_FLAG_RGB,
10921095 },
@@ -1120,9 +1123,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 27 unmodified lines
11201123 .log2_chroma_w = 1,
11211124 .log2_chroma_h = 1,
11221125 .comp = {
1123− { 0, 1, 1, 0, 8 }, /* Y */
1124− { 1, 1, 1, 0, 8 }, /* U */
1125− { 2, 1, 1, 0, 8 }, /* V */
1126+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
1127+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
1128+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
11261129 },
11271130 .flags = AV_PIX_FMT_FLAG_PLANAR,
11281131 },
@@ -1132,9 +1135,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
11321135 .log2_chroma_w = 1,
11331136 .log2_chroma_h = 1,
11341137 .comp = {
1135− { 0, 1, 1, 0, 8 }, /* Y */
1136− { 1, 1, 1, 0, 8 }, /* U */
1137− { 2, 1, 1, 0, 8 }, /* V */
1138+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
1139+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
1140+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
11381141 },
11391142 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
11401143 },
@@ -1144,9 +1147,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
11441147 .log2_chroma_w = 1,
11451148 .log2_chroma_h = 1,
11461149 .comp = {
1147− { 0, 1, 1, 0, 9 }, /* Y */
1148− { 1, 1, 1, 0, 9 }, /* U */
1149− { 2, 1, 1, 0, 9 }, /* V */
1150+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1151+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
1152+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
11501153 },
11511154 .flags = AV_PIX_FMT_FLAG_PLANAR,
11521155 },
@@ -1156,9 +1159,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
11561159 .log2_chroma_w = 1,
11571160 .log2_chroma_h = 1,
11581161 .comp = {
1159− { 0, 1, 1, 0, 9 }, /* Y */
1160− { 1, 1, 1, 0, 9 }, /* U */
1161− { 2, 1, 1, 0, 9 }, /* V */
1162+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1163+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
1164+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
11621165 },
11631166 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
11641167 },
@@ -1168,9 +1171,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
11681171 .log2_chroma_w = 1,
11691172 .log2_chroma_h = 1,
11701173 .comp = {
1171− { 0, 1, 1, 0, 15 }, /* Y */
1172− { 1, 1, 1, 0, 15 }, /* U */
1173− { 2, 1, 1, 0, 15 }, /* V */
1174+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
1175+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
1176+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
11741177 },
11751178 .flags = AV_PIX_FMT_FLAG_PLANAR,
11761179 },
@@ -1180,9 +1183,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
11801183 .log2_chroma_w = 1,
11811184 .log2_chroma_h = 1,
11821185 .comp = {
1183− { 0, 1, 1, 0, 15 }, /* Y */
1184− { 1, 1, 1, 0, 15 }, /* U */
1185− { 2, 1, 1, 0, 15 }, /* V */
1186+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
1187+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
1188+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
11861189 },
11871190 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
11881191 },
@@ -1192,9 +1195,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
11921195 .log2_chroma_w = 1,
11931196 .log2_chroma_h = 0,
11941197 .comp = {
1195− { 0, 1, 1, 0, 8 }, /* Y */
1196− { 1, 1, 1, 0, 8 }, /* U */
1197− { 2, 1, 1, 0, 8 }, /* V */
1198+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
1199+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
1200+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
11981201 },
11991202 .flags = AV_PIX_FMT_FLAG_PLANAR,
12001203 },
@@ -1204,9 +1207,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12041207 .log2_chroma_w = 1,
12051208 .log2_chroma_h = 0,
12061209 .comp = {
1207− { 0, 1, 1, 0, 8 }, /* Y */
1208− { 1, 1, 1, 0, 8 }, /* U */
1209− { 2, 1, 1, 0, 8 }, /* V */
1210+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
1211+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
1212+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
12101213 },
12111214 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
12121215 },
@@ -1216,9 +1219,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12161219 .log2_chroma_w = 1,
12171220 .log2_chroma_h = 0,
12181221 .comp = {
1219− { 0, 1, 1, 0, 9 }, /* Y */
1220− { 1, 1, 1, 0, 9 }, /* U */
1221− { 2, 1, 1, 0, 9 }, /* V */
1222+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1223+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
1224+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
12221225 },
12231226 .flags = AV_PIX_FMT_FLAG_PLANAR,
12241227 },
@@ -1228,9 +1231,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12281231 .log2_chroma_w = 1,
12291232 .log2_chroma_h = 0,
12301233 .comp = {
1231− { 0, 1, 1, 0, 9 }, /* Y */
1232− { 1, 1, 1, 0, 9 }, /* U */
1233− { 2, 1, 1, 0, 9 }, /* V */
1234+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1235+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
1236+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
12341237 },
12351238 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
12361239 },
@@ -1240,9 +1243,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12401243 .log2_chroma_w = 1,
12411244 .log2_chroma_h = 0,
12421245 .comp = {
1243− { 0, 1, 1, 0, 15 }, /* Y */
1244− { 1, 1, 1, 0, 15 }, /* U */
1245− { 2, 1, 1, 0, 15 }, /* V */
1246+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
1247+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
1248+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
12461249 },
12471250 .flags = AV_PIX_FMT_FLAG_PLANAR,
12481251 },
@@ -1252,9 +1255,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12521255 .log2_chroma_w = 1,
12531256 .log2_chroma_h = 0,
12541257 .comp = {
1255− { 0, 1, 1, 0, 15 }, /* Y */
1256− { 1, 1, 1, 0, 15 }, /* U */
1257− { 2, 1, 1, 0, 15 }, /* V */
1258+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
1259+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
1260+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
12581261 },
12591262 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
12601263 },
@@ -1264,9 +1267,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12641267 .log2_chroma_w = 0,
12651268 .log2_chroma_h = 0,
12661269 .comp = {
1267− { 0, 1, 1, 0, 15 }, /* Y */
1268− { 1, 1, 1, 0, 15 }, /* U */
1269− { 2, 1, 1, 0, 15 }, /* V */
1270+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
1271+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
1272+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
12701273 },
12711274 .flags = AV_PIX_FMT_FLAG_PLANAR,
12721275 },
@@ -1276,9 +1279,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12761279 .log2_chroma_w = 0,
12771280 .log2_chroma_h = 0,
12781281 .comp = {
1279− { 0, 1, 1, 0, 15 }, /* Y */
1280− { 1, 1, 1, 0, 15 }, /* U */
1281− { 2, 1, 1, 0, 15 }, /* V */
1282+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* Y */
1283+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* U */
1284+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* V */
12821285 },
12831286 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
12841287 },
@@ -1288,9 +1291,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
12881291 .log2_chroma_w = 0,
12891292 .log2_chroma_h = 0,
12901293 .comp = {
1291− { 0, 1, 1, 0, 9 }, /* Y */
1292− { 1, 1, 1, 0, 9 }, /* U */
1293− { 2, 1, 1, 0, 9 }, /* V */
1294+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1295+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
1296+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
12941297 },
12951298 .flags = AV_PIX_FMT_FLAG_PLANAR,
12961299 },
@@ -1300,9 +1303,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
13001303 .log2_chroma_w = 0,
13011304 .log2_chroma_h = 0,
13021305 .comp = {
1303− { 0, 1, 1, 0, 9 }, /* Y */
1304− { 1, 1, 1, 0, 9 }, /* U */
1305− { 2, 1, 1, 0, 9 }, /* V */
1306+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1307+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* U */
1308+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* V */
13061309 },
13071310 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
13081311 },
@@ -1312,9 +1315,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
13121315 .log2_chroma_w = 0,
13131316 .log2_chroma_h = 0,
13141317 .comp = {
1315− { 0, 1, 1, 0, 8 }, /* Y */
1316− { 1, 1, 1, 0, 8 }, /* U */
1317− { 2, 1, 1, 0, 8 }, /* V */
1318+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
1319+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
1320+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
13181321 },
13191322 .flags = AV_PIX_FMT_FLAG_PLANAR,
13201323 },
@@ -1324,9 +1327,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
13241327 .log2_chroma_w = 0,
13251328 .log2_chroma_h = 0,
13261329 .comp = {
1327− { 0, 1, 1, 0, 8 }, /* Y */
1328− { 1, 1, 1, 0, 8 }, /* U */
1329− { 2, 1, 1, 0, 8 }, /* V */
1330+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* Y */
1331+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* U */
1332+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* V */
13301333 },
13311334 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR,
13321335 },
@@ -1346,8 +1349,8 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 13 unmodified lines
13461349 .name = "ya8",
13471350 .nb_components = 2,
13481351 .comp = {
1349− { 0, 1, 1, 0, 7 }, /* Y */
1350− { 0, 1, 2, 0, 7 }, /* A */
1352+ { 0, 2, 0, 0, 8, 1, 7, 1 }, /* Y */
1353+ { 0, 2, 1, 0, 8, 1, 7, 2 }, /* A */
13511354 },
13521355 .flags = AV_PIX_FMT_FLAG_ALPHA,
13531356 .alias = "gray8a",
@@ -1356,8 +1359,8 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 2 unmodified lines
13561359 .name = "ya16le",
13571360 .nb_components = 2,
13581361 .comp = {
1359− { 0, 3, 1, 0, 15 }, /* Y */
1360− { 0, 3, 3, 0, 15 }, /* A */
1362+ { 0, 4, 0, 0, 16, 3, 15, 1 }, /* Y */
1363+ { 0, 4, 2, 0, 16, 3, 15, 3 }, /* A */
13611364 },
13621365 .flags = AV_PIX_FMT_FLAG_ALPHA,
13631366 },
@@ -1365,8 +1368,8 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 1 unmodified line
13651368 .name = "ya16be",
13661369 .nb_components = 2,
13671370 .comp = {
1368− { 0, 3, 1, 0, 15 }, /* Y */
1369− { 0, 3, 3, 0, 15 }, /* A */
1371+ { 0, 4, 0, 0, 16, 3, 15, 1 }, /* Y */
1372+ { 0, 4, 2, 0, 16, 3, 15, 3 }, /* A */
13701373 },
13711374 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_ALPHA,
13721375 },
@@ -1376,9 +1379,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
13761379 .log2_chroma_w = 0,
13771380 .log2_chroma_h = 0,
13781381 .comp = {
1379− { 0, 0, 1, 0, 7 }, /* G */
1380− { 1, 0, 1, 0, 7 }, /* B */
1381− { 2, 0, 1, 0, 7 }, /* R */
1382+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* G */
1383+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* B */
1384+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* R */
13821385 },
13831386 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
13841387 },
@@ -1388,9 +1391,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
13881391 .log2_chroma_w = 0,
13891392 .log2_chroma_h = 0,
13901393 .comp = {
1391− { 0, 1, 1, 0, 8 }, /* G */
1392− { 1, 1, 1, 0, 8 }, /* B */
1393− { 2, 1, 1, 0, 8 }, /* R */
1394+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* G */
1395+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* B */
1396+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* R */
13941397 },
13951398 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
13961399 },
@@ -1400,9 +1403,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
14001403 .log2_chroma_w = 0,
14011404 .log2_chroma_h = 0,
14021405 .comp = {
1403− { 0, 1, 1, 0, 8 }, /* G */
1404− { 1, 1, 1, 0, 8 }, /* B */
1405− { 2, 1, 1, 0, 8 }, /* R */
1406+ { 0, 2, 0, 0, 9, 1, 8, 1 }, /* G */
1407+ { 1, 2, 0, 0, 9, 1, 8, 1 }, /* B */
1408+ { 2, 2, 0, 0, 9, 1, 8, 1 }, /* R */
14061409 },
14071410 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
14081411 },
@@ -1412,9 +1415,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
14121415 .log2_chroma_w = 0,
14131416 .log2_chroma_h = 0,
14141417 .comp = {
1415− { 0, 1, 1, 0, 9 }, /* G */
1416− { 1, 1, 1, 0, 9 }, /* B */
1417− { 2, 1, 1, 0, 9 }, /* R */
1418+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* G */
1419+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* B */
1420+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* R */
14181421 },
14191422 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
14201423 },
@@ -1424,9 +1427,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
14241427 .log2_chroma_w = 0,
14251428 .log2_chroma_h = 0,
14261429 .comp = {
1427− { 0, 1, 1, 0, 9 }, /* G */
1428− { 1, 1, 1, 0, 9 }, /* B */
1429− { 2, 1, 1, 0, 9 }, /* R */
1430+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* G */
1431+ { 1, 2, 0, 0, 10, 1, 9, 1 }, /* B */
1432+ { 2, 2, 0, 0, 10, 1, 9, 1 }, /* R */
14301433 },
14311434 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
14321435 },
@@ -1436,9 +1439,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
14361439 .log2_chroma_w = 0,
14371440 .log2_chroma_h = 0,
14381441 .comp = {
1439− { 0, 1, 1, 0, 15 }, /* G */
1440− { 1, 1, 1, 0, 15 }, /* B */
1441− { 2, 1, 1, 0, 15 }, /* R */
1442+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* G */
1443+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* B */
1444+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* R */
14421445 },
14431446 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
14441447 },
@@ -1448,9 +1451,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
14481451 .log2_chroma_w = 0,
14491452 .log2_chroma_h = 0,
14501453 .comp = {
1451− { 0, 1, 1, 0, 15 }, /* G */
1452− { 1, 1, 1, 0, 15 }, /* B */
1453− { 2, 1, 1, 0, 15 }, /* R */
1454+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* G */
1455+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* B */
1456+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* R */
14541457 },
14551458 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB,
14561459 },
@@ -1460,10 +1463,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
14601463 .log2_chroma_w = 0,
14611464 .log2_chroma_h = 0,
14621465 .comp = {
1463− { 0, 0, 1, 0, 7 }, /* G */
1464− { 1, 0, 1, 0, 7 }, /* B */
1465− { 2, 0, 1, 0, 7 }, /* R */
1466− { 3, 0, 1, 0, 7 }, /* A */
1466+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* G */
1467+ { 1, 1, 0, 0, 8, 0, 7, 1 }, /* B */
1468+ { 2, 1, 0, 0, 8, 0, 7, 1 }, /* R */
1469+ { 3, 1, 0, 0, 8, 0, 7, 1 }, /* A */
14671470 },
14681471 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB |
14691472 AV_PIX_FMT_FLAG_ALPHA,
@@ -1474,10 +1477,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 4 unmodified lines
14741477 .log2_chroma_w = 0,
14751478 .log2_chroma_h = 0,
14761479 .comp = {
1477− { 0, 1, 1, 0, 15 }, /* G */
1478− { 1, 1, 1, 0, 15 }, /* B */
1479− { 2, 1, 1, 0, 15 }, /* R */
1480− { 3, 1, 1, 0, 15 }, /* A */
1480+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* G */
1481+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* B */
1482+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* R */
1483+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
14811484 },
14821485 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_RGB |
14831486 AV_PIX_FMT_FLAG_ALPHA,
@@ -1488,10 +1491,10 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 4 unmodified lines
14881491 .log2_chroma_w = 0,
14891492 .log2_chroma_h = 0,
14901493 .comp = {
1491− { 0, 1, 1, 0, 15 }, /* G */
1492− { 1, 1, 1, 0, 15 }, /* B */
1493− { 2, 1, 1, 0, 15 }, /* R */
1494− { 3, 1, 1, 0, 15 }, /* A */
1494+ { 0, 2, 0, 0, 16, 1, 15, 1 }, /* G */
1495+ { 1, 2, 0, 0, 16, 1, 15, 1 }, /* B */
1496+ { 2, 2, 0, 0, 16, 1, 15, 1 }, /* R */
1497+ { 3, 2, 0, 0, 16, 1, 15, 1 }, /* A */
14951498 },
14961499 .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR |
14971500 AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
@@ -1508,9 +1511,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 10 unmodified lines
15081511 .log2_chroma_w = 0,
15091512 .log2_chroma_h = 0,
15101513 .comp = {
1511− { 0, 5, 1, 4, 11 }, /* X */
1512− { 0, 5, 3, 4, 11 }, /* Y */
1513− { 0, 5, 5, 4, 11 }, /* Z */
1514+ { 0, 6, 0, 4, 12, 5, 11, 1 }, /* X */
1515+ { 0, 6, 2, 4, 12, 5, 11, 3 }, /* Y */
1516+ { 0, 6, 4, 4, 12, 5, 11, 5 }, /* Z */
15141517 },
15151518 /*.flags = -- not used*/
15161519 },
@@ -1520,9 +1523,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
15201523 .log2_chroma_w = 0,
15211524 .log2_chroma_h = 0,
15221525 .comp = {
1523− { 0, 5, 1, 4, 11 }, /* X */
1524− { 0, 5, 3, 4, 11 }, /* Y */
1525− { 0, 5, 5, 4, 11 }, /* Z */
1526+ { 0, 6, 0, 4, 12, 5, 11, 1 }, /* X */
1527+ { 0, 6, 2, 4, 12, 5, 11, 3 }, /* Y */
1528+ { 0, 6, 4, 4, 12, 5, 11, 5 }, /* Z */
15261529 },
15271530 .flags = AV_PIX_FMT_FLAG_BE,
15281531 },
@@ -1532,9 +1535,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
15321535 .log2_chroma_w = 1,
15331536 .log2_chroma_h = 0,
15341537 .comp = {
1535− { 0, 0, 1, 0, 7 }, /* Y */
1536− { 1, 1, 1, 0, 7 }, /* U */
1537− { 1, 1, 2, 0, 7 }, /* V */
1538+ { 0, 1, 0, 0, 8, 0, 7, 1 }, /* Y */
1539+ { 1, 2, 0, 0, 8, 1, 7, 1 }, /* U */
1540+ { 1, 2, 1, 0, 8, 1, 7, 2 }, /* V */
15381541 },
15391542 .flags = AV_PIX_FMT_FLAG_PLANAR,
15401543 },
@@ -1544,9 +1547,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
15441547 .log2_chroma_w = 1,
15451548 .log2_chroma_h = 0,
15461549 .comp = {
1547− { 0, 1, 1, 0, 9 }, /* Y */
1548− { 1, 3, 1, 0, 9 }, /* U */
1549− { 1, 3, 3, 0, 9 }, /* V */
1550+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1551+ { 1, 4, 0, 0, 10, 3, 9, 1 }, /* U */
1552+ { 1, 4, 2, 0, 10, 3, 9, 3 }, /* V */
15501553 },
15511554 .flags = AV_PIX_FMT_FLAG_PLANAR,
15521555 },
@@ -1556,9 +1559,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 3 unmodified lines
15561559 .log2_chroma_w = 1,
15571560 .log2_chroma_h = 0,
15581561 .comp = {
1559− { 0, 1, 1, 0, 9 }, /* Y */
1560− { 1, 3, 1, 0, 9 }, /* U */
1561− { 1, 3, 3, 0, 9 }, /* V */
1562+ { 0, 2, 0, 0, 10, 1, 9, 1 }, /* Y */
1563+ { 1, 4, 0, 0, 10, 3, 9, 1 }, /* U */
1564+ { 1, 4, 2, 0, 10, 3, 9, 3 }, /* V */
15621565 },
15631566 .flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_BE,
15641567 },
@@ -1575,6 +1578,9 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 10 unmodified lines
15751578 .flags = AV_PIX_FMT_FLAG_HWACCEL,
15761579 },
15771580 };
1581+#if FF_API_PLUS1_MINUS1
1582+FF_ENABLE_DEPRECATION_WARNINGS
1583+#endif
15781584
15791585 static const char *color_range_names[AVCOL_RANGE_NB] = {
15801586 "unknown", "tv", "pc",
@@ -1655,7 +1661,7 @@ int av_get_bits_per_pixel(const AVPixFmtDescriptor *pixdesc) · 74 unmodified lines
16551661
16561662 for (c = 0; c < pixdesc->nb_components; c++) {
16571663 int s = c == 1 || c == 2 ? 0 : log2_pixels;
1658− bits += (pixdesc->comp[c].depth_minus1 + 1) << s;
1664+ bits += pixdesc->comp[c].depth << s;
16591665 }
16601666
16611667 return bits >> log2_pixels;
libavutil/pixdesc.h+17−6
@@ -34,16 +34,16 @@ typedef struct AVComponentDescriptor { · 33 unmodified lines
3434 int plane;
3535
3636 /**
37− * Number of elements between 2 horizontally consecutive pixels minus 1.
37+ * Number of elements between 2 horizontally consecutive pixels.
3838 * Elements are bits for bitstream formats, bytes otherwise.
3939 */
40− int step_minus1;
40+ int step;
4141
4242 /**
43− * Number of elements before the component of the first pixel plus 1.
43+ * Number of elements before the component of the first pixel.
4444 * Elements are bits for bitstream formats, bytes otherwise.
4545 */
46− int offset_plus1;
46+ int offset;
4747
4848 /**
4949 * Number of least significant bits that must be shifted away
@@ -52,9 +52,20 @@ typedef struct AVComponentDescriptor { · 2 unmodified lines
5252 int shift;
5353
5454 /**
55− * Number of bits in the component minus 1.
55+ * Number of bits in the component.
5656 */
57− int depth_minus1;
57+ int depth;
58+
59+#if FF_API_PLUS1_MINUS1
60+ /** deprecated, use step instead */
61+ attribute_deprecated int step_minus1;
62+
63+ /** deprecated, use depth instead */
64+ attribute_deprecated int depth_minus1;
65+
66+ /** deprecated, use offset instead */
67+ attribute_deprecated int offset_plus1;
68+#endif
5869 } AVComponentDescriptor;
5970
6071 /**
libavutil/version.h+3−0
@@ -93,6 +93,9 @@ · 92 unmodified lines
9393 #ifndef FF_API_CRYPTO_CONTEXT
9494 #define FF_API_CRYPTO_CONTEXT (LIBAVUTIL_VERSION_MAJOR < 56)
9595 #endif
96+#ifndef FF_API_PLUS1_MINUS1
97+#define FF_API_PLUS1_MINUS1 (LIBAVUTIL_VERSION_MAJOR < 56)
98+#endif
9699
97100
98101 /**
libswscale/output.c+2−2
@@ -1279,7 +1279,7 @@ yuv2gbrp_full_X_c(SwsContext *c, const int16_t *lumFilter, · 1278 unmodified lines
12791279 int i;
12801280 int hasAlpha = (desc->flags & AV_PIX_FMT_FLAG_ALPHA) && alpSrc;
12811281 uint16_t **dest16 = (uint16_t**)dest;
1282− int SH = 22 + 7 - desc->comp[0].depth_minus1;
1282+ int SH = 22 + 8 - desc->comp[0].depth;
12831283
12841284 for (i = 0; i < dstW; i++) {
12851285 int j;
@@ -1366,7 +1366,7 @@ av_cold void ff_sws_init_output_funcs(SwsContext *c, · 80 unmodified lines
13661366 *yuv2planeX = isBE(dstFormat) ? yuv2planeX_16BE_c : yuv2planeX_16LE_c;
13671367 *yuv2plane1 = isBE(dstFormat) ? yuv2plane1_16BE_c : yuv2plane1_16LE_c;
13681368 } else if (is9_OR_10BPS(dstFormat)) {
1369− if (desc->comp[0].depth_minus1 == 8) {
1369+ if (desc->comp[0].depth == 9) {
13701370 *yuv2planeX = isBE(dstFormat) ? yuv2planeX_9BE_c : yuv2planeX_9LE_c;
13711371 *yuv2plane1 = isBE(dstFormat) ? yuv2plane1_9BE_c : yuv2plane1_9LE_c;
13721372 } else {
libswscale/swscale.c+3−4
@@ -91,7 +91,7 @@ static void hScale16To19_c(SwsContext *c, int16_t *_dst, int dstW, · 90 unmodified lines
9191 int i;
9292 int32_t *dst = (int32_t *) _dst;
9393 const uint16_t *src = (const uint16_t *) _src;
94− int bits = desc->comp[0].depth_minus1;
94+ int bits = desc->comp[0].depth - 1;
9595 int sh = bits - 4;
9696
9797 for (i = 0; i < dstW; i++) {
@@ -114,7 +114,7 @@ static void hScale16To15_c(SwsContext *c, int16_t *dst, int dstW, · 16 unmodified lines
114114 const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(c->srcFormat);
115115 int i;
116116 const uint16_t *src = (const uint16_t *) _src;
117− int sh = desc->comp[0].depth_minus1;
117+ int sh = desc->comp[0].depth - 1;
118118
119119 for (i = 0; i < dstW; i++) {
120120 int j;
@@ -699,8 +699,7 @@ static int swscale(SwsContext *c, const uint8_t *src[], · 578 unmodified lines
699699 if (is9_OR_10BPS(dstFormat)) {
700700 const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(dstFormat);
701701 fill_plane9or10(dst[3], dstStride[3], length, height, lastDstY,
702− 255, desc->comp[3].depth_minus1 + 1,
703− isBE(dstFormat));
702+ 255, desc->comp[3].depth, isBE(dstFormat));
704703 } else
705704 fillPlane(dst[3], dstStride[3], length, height, lastDstY, 255);
706705 }
libswscale/swscale_internal.h+2−2
@@ -562,14 +562,14 @@ static av_always_inline int is16BPS(enum AVPixelFormat pix_fmt) · 561 unmodified lines
562562 {
563563 const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
564564 av_assert0(desc);
565− return desc->comp[0].depth_minus1 == 15;
565+ return desc->comp[0].depth == 16;
566566 }
567567
568568 static av_always_inline int is9_OR_10BPS(enum AVPixelFormat pix_fmt)
569569 {
570570 const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
571571 av_assert0(desc);
572− return desc->comp[0].depth_minus1 == 8 || desc->comp[0].depth_minus1 == 9;
572+ return desc->comp[0].depth == 9 || desc->comp[0].depth == 10;
573573 }
574574
575575 static av_always_inline int isBE(enum AVPixelFormat pix_fmt)
libswscale/swscale_unscaled.c+6−6
@@ -816,15 +816,15 @@ static int planarCopyWrapper(SwsContext *c, const uint8_t *src[], · 815 unmodified lines
816816 if (is9_OR_10BPS(c->dstFormat)) {
817817 fill_plane9or10(dst[plane], dstStride[plane],
818818 length, height, y, val,
819− desc_dst->comp[plane].depth_minus1 + 1,
819+ desc_dst->comp[plane].depth,
820820 isBE(c->dstFormat));
821821 } else
822822 fillPlane(dst[plane], dstStride[plane], length, height, y,
823823 val);
824824 } else {
825825 if (is9_OR_10BPS(c->srcFormat)) {
826− const int src_depth = desc_src->comp[plane].depth_minus1 + 1;
827− const int dst_depth = desc_dst->comp[plane].depth_minus1 + 1;
826+ const int src_depth = desc_src->comp[plane].depth;
827+ const int dst_depth = desc_dst->comp[plane].depth;
828828 const uint16_t *srcPtr2 = (const uint16_t *) srcPtr;
829829
830830 if (is16BPS(c->dstFormat)) {
@@ -915,7 +915,7 @@ static int planarCopyWrapper(SwsContext *c, const uint8_t *src[], · 84 unmodified lines
915915 }
916916 }
917917 } else if (is9_OR_10BPS(c->dstFormat)) {
918− const int dst_depth = desc_dst->comp[plane].depth_minus1 + 1;
918+ const int dst_depth = desc_dst->comp[plane].depth;
919919 uint16_t *dstPtr2 = (uint16_t *) dstPtr;
920920
921921 if (is16BPS(c->srcFormat)) {
@@ -1006,7 +1006,7 @@ static int planarCopyWrapper(SwsContext *c, const uint8_t *src[], · 84 unmodified lines
10061006 } else {
10071007 if (is16BPS(c->srcFormat) && is16BPS(c->dstFormat))
10081008 length *= 2;
1009− else if (!desc_src->comp[0].depth_minus1)
1009+ else if (desc_src->comp[0].depth == 1)
10101010 length >>= 3; // monowhite/black
10111011 for (i = 0; i < height; i++) {
10121012 memcpy(dstPtr, srcPtr, length);
@@ -1087,7 +1087,7 @@ void ff_get_unscaled_swscale(SwsContext *c) · 74 unmodified lines
10871087 if (srcFormat == AV_PIX_FMT_GBRP && isPlanar(srcFormat) && isByteRGB(dstFormat))
10881088 c->swscale = planarRgbToRgbWrapper;
10891089
1090− if (av_pix_fmt_desc_get(srcFormat)->comp[0].depth_minus1 == 7 &&
1090+ if (av_pix_fmt_desc_get(srcFormat)->comp[0].depth == 8 &&
10911091 isPackedRGB(srcFormat) && dstFormat == AV_PIX_FMT_GBRP)
10921092 c->swscale = rgbToPlanarRgbWrapper;
10931093
libswscale/utils.c+2−2
@@ -1039,10 +1039,10 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter, · 1038 unmodified lines
10391039 }
10401040 }
10411041
1042− c->srcBpc = 1 + desc_src->comp[0].depth_minus1;
1042+ c->srcBpc = desc_src->comp[0].depth;
10431043 if (c->srcBpc < 8)
10441044 c->srcBpc = 8;
1045− c->dstBpc = 1 + desc_dst->comp[0].depth_minus1;
1045+ c->dstBpc = desc_dst->comp[0].depth;
10461046 if (c->dstBpc < 8)
10471047 c->dstBpc = 8;
10481048 if (c->dstBpc == 16)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t