标签: c h.264 precision
阅读JM 18.4参考软件代码我偶然发现了以下表达式:
return ((int) floor(nbits * p_quad->m_Qc + 0.5))
类型是:
int nbits int p_quad->m_Qc
为什么要添加0.5然后将两个整数相乘?检查结果,它们与乘法单独相同。
答案 0 :(得分:2)
通常,floor(x + 0.5)可用于模拟round(x)。但是,这仅在x可以采用非整数值时才有用,所以在您的情况下这似乎是多余的!
floor(x + 0.5)
round(x)
x