Blame view

mjpeg/compress.py 3.15 KB
2b474806   Chunk   init.
1
2
3
4
5
6
7
## -*- coding: utf-8 -*-


from pylab import *

# The standard quantisation tables for JPEG::

f4b5291c   Chunk   Qaulity Calculati...
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
orig_table0 = array(
    [[16, 11, 10, 16, 24, 40, 51, 61],
     [12, 12, 14, 19, 26, 58, 60, 55],
     [14, 13, 16, 24, 40, 57, 69, 56],
     [14, 17, 22, 29, 51, 87, 80, 62],
     [18, 22, 37, 56, 68, 109, 103, 77],
     [24, 35, 55, 64, 81, 104, 113, 92],
     [49, 64, 78, 87, 103, 121, 120, 101],
     [72, 92, 95, 98, 112, 100, 103, 99]])

orig_table1 = array(
    [[17, 18, 24, 47, 99, 99, 99, 99],
     [18, 21, 26, 66, 99, 99, 99, 99],
     [24, 26, 56, 99, 99, 99, 99, 99],
     [47, 66, 99, 99, 99, 99, 99, 99],
     [99, 99, 99, 99, 99, 99, 99, 99],
     [99, 99, 99, 99, 99, 99, 99, 99],
     [99, 99, 99, 99, 99, 99, 99, 99],
     [99, 99, 99, 99, 99, 99, 99, 99]])

bi_hash = [
    1020, 1015, 932, 848, 780, 735, 702, 679, 660, 645,
    632, 623, 613, 607, 600, 594, 589, 585, 581, 571,
    555, 542, 529, 514, 494, 474, 457, 439, 424, 410,
    397, 386, 373, 364, 351, 341, 334, 324, 317, 309,
    299, 294, 287, 279, 274, 267, 262, 257, 251, 247,
    243, 237, 232, 227, 222, 217, 213, 207, 202, 198,
    192, 188, 183, 177, 173, 168, 163, 157, 153, 148,
    143, 139, 132, 128, 125, 119, 115, 108, 104, 99,
    94, 90, 84, 79, 74, 70, 64, 59, 55, 49,
    45, 40, 34, 30, 25, 20, 15, 11, 6, 4,
    0
]

bi_sum = [
    32640, 32635, 32266, 31495, 30665, 29804, 29146, 28599, 28104,
    27670, 27225, 26725, 26210, 25716, 25240, 24789, 24373, 23946,
    23572, 22846, 21801, 20842, 19949, 19121, 18386, 17651, 16998,
    16349, 15800, 15247, 14783, 14321, 13859, 13535, 13081, 12702,
    12423, 12056, 11779, 11513, 11135, 10955, 10676, 10392, 10208,
    9928, 9747, 9564, 9369, 9193, 9017, 8822, 8639, 8458,
    8270, 8084, 7896, 7710, 7527, 7347, 7156, 6977, 6788,
    6607, 6422, 6236, 6054, 5867, 5684, 5495, 5305, 5128,
    4945, 4751, 4638, 4442, 4248, 4065, 3888, 3698, 3509,
    3326, 3139, 2957, 2775, 2586, 2405, 2216, 2037, 1846,
    1666, 1483, 1297, 1109, 927, 735, 554, 375, 201,
    128, 0
]

single_hash = [
    510, 505, 422, 380, 355, 338, 326, 318, 311, 305,
    300, 297, 293, 291, 288, 286, 284, 283, 281, 280,
    279, 278, 277, 273, 262, 251, 243, 233, 225, 218,
    211, 205, 198, 193, 186, 181, 177, 172, 168, 164,
    158, 156, 152, 148, 145, 142, 139, 136, 133, 131,
    129, 126, 123, 120, 118, 115, 113, 110, 107, 105,
    102, 100, 97, 94, 92, 89, 87, 83, 81, 79,
    76, 74, 70, 68, 66, 63, 61, 57, 55, 52,
    50, 48, 44, 42, 39, 37, 34, 31, 29, 26,
    24, 21, 18, 16, 13, 11, 8, 6, 3, 2,
    0
]

single_sum = [
    16320, 16315, 15946, 15277, 14655, 14073, 13623, 13230, 12859,
    12560, 12240, 11861, 11456, 11081, 10714, 10360, 10027, 9679,
    9368, 9056, 8680, 8331, 7995, 7668, 7376, 7084, 6823,
    6562, 6345, 6125, 5939, 5756, 5571, 5421, 5240, 5086,
    4976, 4829, 4719, 4616, 4463, 4393, 4280, 4166, 4092,
    3980, 3909, 3835, 3755, 3688, 3621, 3541, 3467, 3396,
    3323, 3247, 3170, 3096, 3021, 2952, 2874, 2804, 2727,
    2657, 2583, 2509, 2437, 2362, 2290, 2211, 2136, 2068,
    1996, 1915, 1858, 1773, 1692, 1620, 1552, 1477, 1398,
    1326, 1251, 1179, 1109, 1031, 961, 884, 814, 736,
    667, 592, 518, 441, 369, 292, 221, 151, 86,
    64, 0
]
2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.

2b474806   Chunk   init.