• Hui Su's avatar
    Add lossless compression mode. · e44ee38a
    Hui Su authored
    This commit adds lossless compression capability to the experimental
    branch. The lossless experiment can be enabled using --enable-lossless
    in configure. When the experiment is enabled, the encoder will use
    lossless compression mode by command line option --lossless, and the
    decoder automatically recognizes a losslessly encoded clip and decodes
    accordingly.
    
    To achieve the lossless coding, this commit has changed the following:
        1. To encode at lossless mode, encoder forces the use of unit
    quantizer, i.e, Q 0, where effective quantization is 1. Encoder also
    disables the usage of 8x8 transform and allows only 4x4 transform;
        2. At Q 0, the first order 4x4  DCT/IDCT have been switched over
    to a pair of forward and inverse Walsh-Hadamard Transform
    (http://goo.gl/EIsfy),  with proper scaling applied to match the range
    of the original 4x4 DCT/IDCT pair;
        3. At Q 0, the second order remains to use the previous
    walsh-hadamard transform pair. However, to maintain the revers...
    e44ee38a