diff options
author | wm4 <wm4@nowhere> | 2019-11-02 02:18:24 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2019-11-02 02:18:24 +0100 |
commit | c9d685f5d6a69a8fc3fa495ec79c8997f646e531 (patch) | |
tree | 6621916c3b2fc1da9cb8cc9104c4634fe76aa021 /demux/codec_tags.c | |
parent | 3b56f829656a43402e417847570e83a0e5b693be (diff) | |
download | mpv-c9d685f5d6a69a8fc3fa495ec79c8997f646e531.tar.bz2 mpv-c9d685f5d6a69a8fc3fa495ec79c8997f646e531.tar.xz |
zimg: pass through Y plane when repacking nv12
Normally, the Y plane can just be passed directly to zimg, and only the
chroma plane needs to be (de)interleaved. It still needs a copy if the Y
pointer is not aligned, though. (Whether this is actually a problem
depends on the CPU and probably zimg's compiler.)
This requires deciding per plane whether the plane should go through the
repack buffer or not. This logic is active in non-nv12 cases, because
not doing so would require extra code (maybe 2 lines or so).
repack_align is now always called, even if it's planar->planar with all
input aligned, but it won't actually do anything in that case. The
assumption is that zimg won't change behavior if you pass a callback
that does nothing versus passing NULL as callback.
Diffstat (limited to 'demux/codec_tags.c')
0 files changed, 0 insertions, 0 deletions