Source File
fdct.go
Belonging Package
image/jpeg
package jpeg
const (
fix_0_298631336 = 2446
fix_0_390180644 = 3196
fix_0_541196100 = 4433
fix_0_765366865 = 6270
fix_0_899976223 = 7373
fix_1_175875602 = 9633
fix_1_501321110 = 12299
fix_1_847759065 = 15137
fix_1_961570560 = 16069
fix_2_053119869 = 16819
fix_2_562915447 = 20995
fix_3_072711026 = 25172
)
const (
constBits = 13
pass1Bits = 2
centerJSample = 128
)
for := 0; < 8; ++ {
:= * 8
:= [ : +8 : +8] // Small cap improves performance, see https://golang.org/issue/27857
:= [0]
:= [1]
:= [2]
:= [3]
:= [4]
:= [5]
:= [6]
:= [7]
:= +
:= +
:= +
:= +
:= +
:= -
:= +
:= -
= -
= -
= -
= -
[0] = ( + - 8*centerJSample) << pass1Bits
[4] = ( - ) << pass1Bits
:= ( + ) * fix_0_541196100
+= 1 << (constBits - pass1Bits - 1)
[2] = ( + *fix_0_765366865) >> (constBits - pass1Bits)
[6] = ( - *fix_1_847759065) >> (constBits - pass1Bits)
= +
= +
= +
= +
= ( + ) * fix_1_175875602
+= 1 << (constBits - pass1Bits - 1)
*= fix_1_501321110
*= fix_3_072711026
*= fix_2_053119869
*= fix_0_298631336
*= -fix_0_899976223
*= -fix_2_562915447
*= -fix_0_390180644
*= -fix_1_961570560
+=
+=
[1] = ( + + ) >> (constBits - pass1Bits)
[3] = ( + + ) >> (constBits - pass1Bits)
[5] = ( + + ) >> (constBits - pass1Bits)
[7] = ( + + ) >> (constBits - pass1Bits)
for := 0; < 8; ++ {
:= [0*8+] + [7*8+]
:= [1*8+] + [6*8+]
:= [2*8+] + [5*8+]
:= [3*8+] + [4*8+]
:= + + 1<<(pass1Bits-1)
:= -
:= +
:= -
= [0*8+] - [7*8+]
= [1*8+] - [6*8+]
= [2*8+] - [5*8+]
= [3*8+] - [4*8+]
[0*8+] = ( + ) >> pass1Bits
[4*8+] = ( - ) >> pass1Bits
:= ( + ) * fix_0_541196100
+= 1 << (constBits + pass1Bits - 1)
[2*8+] = ( + *fix_0_765366865) >> (constBits + pass1Bits)
[6*8+] = ( - *fix_1_847759065) >> (constBits + pass1Bits)
= +
= +
= +
= +
= ( + ) * fix_1_175875602
+= 1 << (constBits + pass1Bits - 1)
*= fix_1_501321110
*= fix_3_072711026
*= fix_2_053119869
*= fix_0_298631336
*= -fix_0_899976223
*= -fix_2_562915447
*= -fix_0_390180644
*= -fix_1_961570560
+=
+=
[1*8+] = ( + + ) >> (constBits + pass1Bits)
[3*8+] = ( + + ) >> (constBits + pass1Bits)
[5*8+] = ( + + ) >> (constBits + pass1Bits)
[7*8+] = ( + + ) >> (constBits + pass1Bits)
}
![]() |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |