[cvs] / xvidcore / src / dct / simple_idct.c Repository:
ViewVC logotype

Diff of /xvidcore/src/dct/simple_idct.c

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

revision 1.3, Mon Jun 9 17:08:16 2003 UTC revision 1.5, Mon Apr 5 20:36:36 2004 UTC
# Line 1  Line 1 
1  /*  /*****************************************************************************
2   * Simple IDCT   *
3     *  XVID MPEG-4 VIDEO CODEC
4     *  - Inverse DCT (More precise version)  -
5   *   *
6   * Copyright (c) 2001 Michael Niedermayer <michaelni@gmx.at>   * Copyright (c) 2001 Michael Niedermayer <michaelni@gmx.at>
7   *   *
8   * This library is free software; you can redistribute it and/or   *  Originally distributed under the GNU LGPL License (ffmpeg).
9   * modify it under the terms of the GNU Lesser General Public   *  It is licensed under the GNU GPL for the XviD tree.
10   * License as published by the Free Software Foundation; either   *
11   * version 2 of the License, or (at your option) any later version.   *  This program is free software ; you can redistribute it and/or modify
12     *  it under the terms of the GNU General Public License as published by
13     *  the Free Software Foundation ; either version 2 of the License, or
14     *  (at your option) any later version.
15   *   *
16   * This library is distributed in the hope that it will be useful,   *  This program is distributed in the hope that it will be useful,
17   * but WITHOUT ANY WARRANTY; without even the implied warranty of   * but WITHOUT ANY WARRANTY; without even the implied warranty of
18   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19   * Lesser General Public License for more details.   *  GNU General Public License for more details.
20   *   *
21   * You should have received a copy of the GNU Lesser General Public   *  You should have received a copy of the GNU General Public License
22   * License along with this library; if not, write to the Free Software   *  along with this program ; if not, write to the Free Software
23   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
24   */   *
25     * $Id$
26     *
27     ****************************************************************************/
28    
29  /*  /*
30    based upon some outcommented c code from mpeg2dec (idct_mmx.c    based upon some outcommented c code from mpeg2dec (idct_mmx.c
31    written by Aaron Holtzman <aholtzma@ess.engr.uvic.ca>)    written by Aaron Holtzman <aholtzma@ess.engr.uvic.ca>)
32   */   */
33    
34  #include "../portab.h"  #include "../portab.h"
35  #include "idct.h"  #include "idct.h"
36    
# Line 35  Line 45 
45  #define ROW_SHIFT 8  #define ROW_SHIFT 8
46  #define COL_SHIFT 17  #define COL_SHIFT 17
47  #else  #else
48  #define W1  22725  //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W1  22725  /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
49  #define W2  21407  //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W2  21407  /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
50  #define W3  19266  //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W3  19266  /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
51  #define W4  16383  //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W4  16383  /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
52  #define W5  12873  //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W5  12873  /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
53  #define W6  8867   //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W6  8867   /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
54  #define W7  4520   //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5  #define W7  4520   /* cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5 */
55  #define ROW_SHIFT 11  #define ROW_SHIFT 11
56  #define COL_SHIFT 20 // 6  #define COL_SHIFT 20 /* 6 */
57  #endif  #endif
58    
59  #if defined(ARCH_IS_PPC)  /*
60     PPC mac operation.  Causes compile problems on newer ppc targets
61    
62     Was originally: #if defined(ARCH_IS_PPC)
63     */
64    #if 0
65    
66  /* signed 16x16 -> 32 multiply add accumulate */  /* signed 16x16 -> 32 multiply add accumulate */
67  #define MAC16(rt, ra, rb) \  #define MAC16(rt, ra, rb) \

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.5

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