diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/image.cc | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/lib/image.cc b/src/lib/image.cc index 70dbad7f9..d5212fc78 100644 --- a/src/lib/image.cc +++ b/src/lib/image.cc @@ -482,13 +482,12 @@ Image::make_part_black(int const start, int const width) case AV_PIX_FMT_YUV422P10LE: { y_part(); + auto const uv = copy_16_bit_words_to_64_bit(ten_bit_uv); for (int i = 1; i < 3; ++i) { auto p = reinterpret_cast<int16_t*>(data()[i]); int const h = sample_size(i).height; for (int y = 0; y < h; ++y) { - for (int x = start / 2; x < (start + width) / 2; ++x) { - p[x] = ten_bit_uv; - } + fill_memory(p + start / 2, width, uv); p += stride()[i] / 2; } } @@ -497,13 +496,12 @@ Image::make_part_black(int const start, int const width) case AV_PIX_FMT_YUV444P10LE: { y_part(); + auto const uv = copy_16_bit_words_to_64_bit(ten_bit_uv); for (int i = 1; i < 3; ++i) { auto p = reinterpret_cast<int16_t*>(data()[i]); int const h = sample_size(i).height; for (int y = 0; y < h; ++y) { - for (int x = start; x < (start + width); ++x) { - p[x] = ten_bit_uv; - } + fill_memory(p + start, width * 2, uv); p += stride()[i] / 2; } } |
