1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-08-04 22:03:09 +02:00

ffv1enc_vulkan: minor EC optimizations

This commit is contained in:
Lynne
2025-05-02 15:27:52 +02:00
parent 7c0a8c07ce
commit 52595025c5

View File

@ -109,14 +109,10 @@ void put_rac_direct(inout RangeCoder c, inout uint8_t state, bool bit)
#endif #endif
int diff = c.range - range1; int diff = c.range - range1;
if (bit) { c.low += bit ? diff : 0;
c.low += diff; c.range = bit ? range1 : diff;
c.range = range1;
} else {
c.range = diff;
}
if (c.range < 0x100) if (expectEXT(c.range < 0x100, false))
renorm_encoder(c); renorm_encoder(c);
state = zero_one_state[(uint(bit) << 8) + state]; 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"); debugPrintfEXT("Error: range1 <= 0");
#endif #endif
if (bit) { int diff = c.range - range1;
c.low += c.range - range1; c.low += bit ? diff : 0;
c.range = range1; c.range = bit ? range1 : diff;
} else {
c.range -= range1;
}
if (expectEXT(c.range < 0x100, false)) if (expectEXT(c.range < 0x100, false))
renorm_encoder(c); renorm_encoder(c);