mirror of
https://github.com/mpv-player/mpv
synced 2024-12-24 07:42:17 +00:00
img_format: do not mark hwaccel formats as planar yuv formats
This commit is contained in:
parent
f0a08a9fdf
commit
8f5ef883c1
@ -203,7 +203,14 @@ static struct mp_imgfmt_desc get_avutil_fmt(enum PixelFormat fmt)
|
||||
if (desc.num_planes == pd->nb_components)
|
||||
desc.flags |= MP_IMGFLAG_PLANAR;
|
||||
|
||||
if (desc.flags & MP_IMGFLAG_YUV) {
|
||||
if (!(pd->flags & PIX_FMT_HWACCEL) && !(pd->flags & PIX_FMT_BITSTREAM)) {
|
||||
desc.flags |= MP_IMGFLAG_BYTE_ALIGNED;
|
||||
for (int p = 0; p < desc.num_planes; p++)
|
||||
desc.bytes[p] = desc.bpp[p] / 8;
|
||||
}
|
||||
|
||||
if ((desc.flags & MP_IMGFLAG_YUV) && (desc.flags & MP_IMGFLAG_BYTE_ALIGNED))
|
||||
{
|
||||
bool same_depth = true;
|
||||
for (int p = 0; p < desc.num_planes; p++) {
|
||||
same_depth &= planedepth[p] == planedepth[0] &&
|
||||
@ -213,12 +220,6 @@ static struct mp_imgfmt_desc get_avutil_fmt(enum PixelFormat fmt)
|
||||
desc.flags |= MP_IMGFLAG_YUV_P;
|
||||
}
|
||||
|
||||
if (!(pd->flags & PIX_FMT_HWACCEL) && !(pd->flags & PIX_FMT_BITSTREAM)) {
|
||||
desc.flags |= MP_IMGFLAG_BYTE_ALIGNED;
|
||||
for (int p = 0; p < desc.num_planes; p++)
|
||||
desc.bytes[p] = desc.bpp[p] / 8;
|
||||
}
|
||||
|
||||
for (int p = 0; p < desc.num_planes; p++) {
|
||||
desc.xs[p] = (p == 1 || p == 2) ? desc.chroma_xs : 0;
|
||||
desc.ys[p] = (p == 1 || p == 2) ? desc.chroma_ys : 0;
|
||||
|
Loading…
Reference in New Issue
Block a user