Mercurial > libavcodec.hg
annotate armv4l/mpegvideo_arm.c @ 853:eacc2dd8fd9d libavcodec
* using DSPContext - so each codec could use its local (sub)set of CPU extension
author | kabi |
---|---|
date | Mon, 11 Nov 2002 09:40:17 +0000 |
parents | c3fc09466f92 |
children | 8cc0d241da37 |
rev | line source |
---|---|
730 | 1 /* |
2 * Copyright (c) 2002 Michael Niedermayer | |
3 * | |
4 * This library is free software; you can redistribute it and/or | |
5 * modify it under the terms of the GNU Lesser General Public | |
6 * License as published by the Free Software Foundation; either | |
7 * version 2 of the License, or (at your option) any later version. | |
8 * | |
9 * This library is distributed in the hope that it will be useful, | |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
12 * Lesser General Public License for more details. | |
13 * | |
14 * You should have received a copy of the GNU Lesser General Public | |
15 * License along with this library; if not, write to the Free Software | |
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
17 * | |
18 */ | |
19 | |
20 #include "../dsputil.h" | |
21 #include "../mpegvideo.h" | |
22 #include "../avcodec.h" | |
23 | |
24 extern void j_rev_dct_ARM(DCTELEM *data); | |
25 | |
26 /* XXX: those functions should be suppressed ASAP when all IDCTs are | |
27 converted */ | |
28 static void arm_idct_put(UINT8 *dest, int line_size, DCTELEM *block) | |
29 { | |
30 j_rev_dct_ARM (block); | |
31 put_pixels_clamped(block, dest, line_size); | |
32 } | |
33 static void arm_idct_add(UINT8 *dest, int line_size, DCTELEM *block) | |
34 { | |
35 j_rev_dct_ARM (block); | |
36 add_pixels_clamped(block, dest, line_size); | |
37 } | |
38 | |
39 void MPV_common_init_armv4l(MpegEncContext *s) | |
40 { | |
41 int i; | |
42 const int idct_algo= s->avctx->idct_algo; | |
43 | |
44 if(idct_algo==FF_IDCT_AUTO || idct_algo==FF_IDCT_ARM){ | |
45 s->idct_put= arm_idct_put; | |
46 s->idct_add= arm_idct_add; | |
768
c3fc09466f92
idct_permutation_type variable, so the permutation type can quickly be identified
michaelni
parents:
730
diff
changeset
|
47 s->idct_permutation_type= FF_NO_IDCT_PERM; |
730 | 48 } |
49 } |