diff options
author | Lynne <dev@lynne.ee> | 2025-05-02 15:27:52 +0200 |
---|---|---|
committer | Lynne <dev@lynne.ee> | 2025-05-20 19:53:01 +0900 |
commit | 52595025c5aab5986b39ea9276c959ea6f801b78 (patch) | |
tree | 1239e7f5512a48d19a9ce8d39d3d705d225c8d48 | |
parent | 7c0a8c07ce75143bcaf1d2996fadcf4bd4630a39 (diff) | |
download | ffmpeg-52595025c5aab5986b39ea9276c959ea6f801b78.tar.gz |
ffv1enc_vulkan: minor EC optimizations
-rw-r--r-- | libavcodec/vulkan/rangecoder.comp | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/libavcodec/vulkan/rangecoder.comp b/libavcodec/vulkan/rangecoder.comp index badc65293f..9e2c5fbecf 100644 --- a/libavcodec/vulkan/rangecoder.comp +++ b/libavcodec/vulkan/rangecoder.comp @@ -109,14 +109,10 @@ void put_rac_direct(inout RangeCoder c, inout uint8_t state, bool bit) #endif int diff = c.range - range1; - if (bit) { - c.low += diff; - c.range = range1; - } else { - c.range = diff; - } + c.low += bit ? diff : 0; + c.range = bit ? range1 : diff; - if (c.range < 0x100) + if (expectEXT(c.range < 0x100, false)) renorm_encoder(c); state = zero_one_state[(uint(bit) << 8) + state]; @@ -139,12 +135,9 @@ void put_rac_equi(inout RangeCoder c, bool bit) debugPrintfEXT("Error: range1 <= 0"); #endif - if (bit) { - c.low += c.range - range1; - c.range = range1; - } else { - c.range -= range1; - } + int diff = c.range - range1; + c.low += bit ? diff : 0; + c.range = bit ? range1 : diff; if (expectEXT(c.range < 0x100, false)) renorm_encoder(c); |