[cvs] / xvidcore / src / bitstream / zigzag.h Repository:
ViewVC logotype

Diff of /xvidcore/src/bitstream/zigzag.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1.1.1, Fri Mar 8 02:44:38 2002 UTC revision 1.7, Mon Mar 22 22:36:23 2004 UTC
# Line 1  Line 1 
1    /*****************************************************************************
2     *
3     *  XVID MPEG-4 VIDEO CODEC
4     *  - ZigZag order matrices  -
5     *
6     *  Copyright(C) 2001-2002 Michael Militzer <isibaar@xvid.org>
7     *
8     *  This program is free software ; you can redistribute it and/or modify
9     *  it under the terms of the GNU General Public License as published by
10     *  the Free Software Foundation ; either version 2 of the License, or
11     *  (at your option) any later version.
12     *
13     *  This program is distributed in the hope that it will be useful,
14     *  but WITHOUT ANY WARRANTY ; without even the implied warranty of
15     *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16     *  GNU General Public License for more details.
17     *
18     *  You should have received a copy of the GNU General Public License
19     *  along with this program ; if not, write to the Free Software
20     *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
21     *
22     * $Id$
23     *
24     ****************************************************************************/
25    
26  #ifndef _ZIGZAG_H_  #ifndef _ZIGZAG_H_
27  #define _ZIGZAG_H_  #define _ZIGZAG_H_
28    
29  static const uint16_t scan_tables[3][64] =  static const uint16_t scan_tables[3][64] = {
30  {          /* zig_zag_scan */
31          {       // zig_zag_scan          { 0,  1,  8, 16,  9,  2,  3, 10,
             0,  1,      8,      16, 9,  2,      3,      10,  
32                  17, 24, 32, 25, 18, 11, 4,      5,                  17, 24, 32, 25, 18, 11, 4,      5,
33                  12, 19, 26, 33, 40, 48, 41, 34,                  12, 19, 26, 33, 40, 48, 41, 34,
34                  27, 20, 13, 6,  7,      14, 21, 28,                  27, 20, 13, 6,  7,      14, 21, 28,
35                  35, 42, 49, 56, 57, 50, 43, 36,                  35, 42, 49, 56, 57, 50, 43, 36,
36                  29, 22, 15, 23, 30, 37, 44, 51,                  29, 22, 15, 23, 30, 37, 44, 51,
37                  58, 59, 52, 45, 38, 31, 39, 46,                  58, 59, 52, 45, 38, 31, 39, 46,
38                  53, 60, 61, 54, 47, 55, 62, 63           53, 60, 61, 54, 47, 55, 62, 63},
         },  
39    
40          {       // horizontal_scan          /* horizontal_scan */
41              0,  1,      2,      3,      8,      9,      16, 17,          { 0,  1,  2,  3,  8,  9, 16, 17,
42              10, 11,     4,      5,      6,      7,      15, 14,              10, 11,     4,      5,      6,      7,      15, 14,
43              13, 12, 19, 18, 24, 25, 32, 33,              13, 12, 19, 18, 24, 25, 32, 33,
44              26, 27, 20, 21, 22, 23, 28, 29,              26, 27, 20, 21, 22, 23, 28, 29,
45              30, 31, 34, 35, 40, 41, 48, 49,              30, 31, 34, 35, 40, 41, 48, 49,
46              42, 43, 36, 37, 38, 39, 44, 45,              42, 43, 36, 37, 38, 39, 44, 45,
47              46, 47, 50, 51, 56, 57, 58, 59,              46, 47, 50, 51, 56, 57, 58, 59,
48              52, 53, 54, 55, 60, 61, 62, 63           52, 53, 54, 55, 60, 61, 62, 63},
         },  
49    
50          {       // vertical_scan          /* vertical_scan */
51              0, 8, 16, 24, 1, 9, 2, 10,          { 0,  8, 16, 24,  1,  9,  2, 10,
52              17, 25, 32, 40, 48, 56, 57, 49,              17, 25, 32, 40, 48, 56, 57, 49,
53              41, 33, 26, 18, 3, 11, 4, 12,              41, 33, 26, 18, 3, 11, 4, 12,
54              19, 27, 34, 42, 50, 58, 35, 43,              19, 27, 34, 42, 50, 58, 35, 43,
55              51, 59, 20, 28, 5, 13, 6, 14,              51, 59, 20, 28, 5, 13, 6, 14,
56              21, 29, 36, 44, 52, 60, 37, 45,              21, 29, 36, 44, 52, 60, 37, 45,
57              53, 61, 22, 30, 7, 15, 23, 31,              53, 61, 22, 30, 7, 15, 23, 31,
58              38, 46, 54, 62, 39, 47, 55, 63           38, 46, 54, 62, 39, 47, 55, 63}
         }  
59  };  };
60    
61  #endif /* _ZIGZAG_H_ */  #endif /* _ZIGZAG_H_ */

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.7

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4