1/** 2 * 3 * File Name: armCOMM_IDCTTable.c 4 * OpenMAX DL: v1.0.2 5 * Revision: 9641 6 * Date: Thursday, February 7, 2008 7 * 8 * (c) Copyright 2007-2008 ARM Limited. All Rights Reserved. 9 * 10 * 11 * 12 * File: armCOMM_IDCTTable.c 13 * Brief: Defines Tables used in IDCT computation 14 * 15 */ 16 17#include "armCOMM_IDCTTable.h" 18 19 /* Table of s(u)*A(u)*A(v)/16 at Q15 20 * s(u)=1.0 0 <= u <= 5 21 * s(6)=2.0 22 * s(7)=4.0 23 * A(0) = 2*sqrt(2) 24 * A(u) = 4*cos(u*pi/16) for (u!=0) 25 */ 26 27__align(4) const OMX_U16 armCOMM_IDCTPreScale [64] = 28{ 29 0x4000, 0x58c5, 0x539f, 0x4b42, 0x4000, 0x3249, 0x4546, 0x46a1, 30 0x58c5, 0x7b21, 0x73fc, 0x6862, 0x58c5, 0x45bf, 0x6016, 0x61f8, 31 0x539f, 0x73fc, 0x6d41, 0x6254, 0x539f, 0x41b3, 0x5a82, 0x5c48, 32 0x4b42, 0x6862, 0x6254, 0x587e, 0x4b42, 0x3b21, 0x5175, 0x530d, 33 0x4000, 0x58c5, 0x539f, 0x4b42, 0x4000, 0x3249, 0x4546, 0x46a1, 34 0x3249, 0x45bf, 0x41b3, 0x3b21, 0x3249, 0x2782, 0x366d, 0x377e, 35 0x22a3, 0x300b, 0x2d41, 0x28ba, 0x22a3, 0x1b37, 0x257e, 0x263a, 36 0x11a8, 0x187e, 0x1712, 0x14c3, 0x11a8, 0x0de0, 0x131d, 0x137d 37}; 38 /* Above array armCOMM_IDCTPreScale, in Q23 format */ 39const OMX_U32 armCOMM_IDCTPreScaleU32 [64] = 40{ 41 0x400000, 0x58c543, 0x539eba, 0x4b418c, 0x400000, 0x3248d4, 0x4545ea, 0x46a157, 42 0x58c543, 0x7b20d8, 0x73fbfc, 0x686214, 0x58c543, 0x45bf1f, 0x6015a5, 0x61f78b, 43 0x539eba, 0x73fbfc, 0x6d413d, 0x6253a6, 0x539eba, 0x41b328, 0x5a827a, 0x5c4869, 44 0x4b418c, 0x686214, 0x6253a6, 0x587de3, 0x4b418c, 0x3b20d8, 0x5174e0, 0x530d69, 45 0x400000, 0x58c543, 0x539eba, 0x4b418c, 0x400000, 0x3248d4, 0x4545ea, 0x46a157, 46 0x3248d4, 0x45bf1f, 0x41b328, 0x3b20d8, 0x3248d4, 0x27821d, 0x366d72, 0x377e6b, 47 0x22a2f5, 0x300ad3, 0x2d413d, 0x28ba70, 0x22a2f5, 0x1b36b9, 0x257d86, 0x26398d, 48 0x11a856, 0x187de3, 0x17121a, 0x14c35a, 0x11a856, 0x0ddf9b, 0x131cc7, 0x137ca2 49}; 50 51const OMX_U16 armCOMM_IDCTCoef [4] = 52{ 53 0x5a82, /* InvSqrt2 */ 54 0x30fc, /* SinPIBy8 */ 55 0x7642, /* CosPIBy8 */ 56 0x0000 57}; 58 59 60 61