Mercurial > libavcodec.hg
comparison dsputil.c @ 1016:5840ee827cc9 libavcodec
align
author | michaelni |
---|---|
date | Sun, 19 Jan 2003 20:04:35 +0000 |
parents | 5d4c95f323d0 |
children | b32afefe7d33 |
comparison
equal
deleted
inserted
replaced
1015:35cf2f4a0f8c | 1016:5840ee827cc9 |
---|---|
1780 return sum; | 1780 return sum; |
1781 } | 1781 } |
1782 | 1782 |
1783 static int dct_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ | 1783 static int dct_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ |
1784 MpegEncContext * const s= (MpegEncContext *)c; | 1784 MpegEncContext * const s= (MpegEncContext *)c; |
1785 DCTELEM temp[64]; | 1785 uint64_t __align8 aligned_temp[sizeof(DCTELEM)*64/8]; |
1786 DCTELEM * const temp= (DCTELEM*)aligned_temp; | |
1786 int sum=0, i; | 1787 int sum=0, i; |
1787 | 1788 |
1788 s->dsp.diff_pixels(temp, src1, src2, stride); | 1789 s->dsp.diff_pixels(temp, src1, src2, stride); |
1789 s->fdct(temp); | 1790 s->fdct(temp); |
1790 | 1791 |
1796 | 1797 |
1797 void simple_idct(DCTELEM *block); //FIXME | 1798 void simple_idct(DCTELEM *block); //FIXME |
1798 | 1799 |
1799 static int quant_psnr8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ | 1800 static int quant_psnr8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ |
1800 MpegEncContext * const s= (MpegEncContext *)c; | 1801 MpegEncContext * const s= (MpegEncContext *)c; |
1801 DCTELEM temp[64], bak[64]; | 1802 uint64_t __align8 aligned_temp[sizeof(DCTELEM)*64*2/8]; |
1803 DCTELEM * const temp= (DCTELEM*)aligned_temp; | |
1804 DCTELEM * const bak = ((DCTELEM*)aligned_temp)+64; | |
1802 int sum=0, i; | 1805 int sum=0, i; |
1803 | 1806 |
1804 s->mb_intra=0; | 1807 s->mb_intra=0; |
1805 | 1808 |
1806 s->dsp.diff_pixels(temp, src1, src2, stride); | 1809 s->dsp.diff_pixels(temp, src1, src2, stride); |
1818 } | 1821 } |
1819 | 1822 |
1820 static int rd8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ | 1823 static int rd8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ |
1821 MpegEncContext * const s= (MpegEncContext *)c; | 1824 MpegEncContext * const s= (MpegEncContext *)c; |
1822 const UINT8 *scantable= s->intra_scantable.permutated; | 1825 const UINT8 *scantable= s->intra_scantable.permutated; |
1823 DCTELEM temp[64]; | 1826 uint64_t __align8 aligned_temp[sizeof(DCTELEM)*64/8]; |
1824 uint8_t bak[stride*8]; | 1827 uint64_t __align8 aligned_bak[stride]; |
1828 DCTELEM * const temp= (DCTELEM*)aligned_temp; | |
1829 uint8_t * const bak= (uint8_t*)aligned_bak; | |
1825 int i, last, run, bits, level, distoration, start_i; | 1830 int i, last, run, bits, level, distoration, start_i; |
1826 const int esc_length= s->ac_esc_length; | 1831 const int esc_length= s->ac_esc_length; |
1827 uint8_t * length; | 1832 uint8_t * length; |
1828 uint8_t * last_length; | 1833 uint8_t * last_length; |
1829 | 1834 |
1890 } | 1895 } |
1891 | 1896 |
1892 static int bit8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ | 1897 static int bit8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride){ |
1893 MpegEncContext * const s= (MpegEncContext *)c; | 1898 MpegEncContext * const s= (MpegEncContext *)c; |
1894 const UINT8 *scantable= s->intra_scantable.permutated; | 1899 const UINT8 *scantable= s->intra_scantable.permutated; |
1895 DCTELEM temp[64]; | 1900 uint64_t __align8 aligned_temp[sizeof(DCTELEM)*64/8]; |
1901 DCTELEM * const temp= (DCTELEM*)aligned_temp; | |
1896 int i, last, run, bits, level, start_i; | 1902 int i, last, run, bits, level, start_i; |
1897 const int esc_length= s->ac_esc_length; | 1903 const int esc_length= s->ac_esc_length; |
1898 uint8_t * length; | 1904 uint8_t * length; |
1899 uint8_t * last_length; | 1905 uint8_t * last_length; |
1900 | 1906 |