Main Page
Related Pages
Modules
Data Structures
Files
Examples
File List
Globals
libavcodec
cavsdsp.h
Go to the documentation of this file.
1
/*
2
* Chinese AVS video (AVS1-P2, JiZhun profile) decoder.
3
* Copyright (c) 2006 Stefan Gehrer <stefan.gehrer@gmx.de>
4
*
5
* This file is part of Libav.
6
*
7
* Libav is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
11
*
12
* Libav is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with Libav; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
*/
21
22
#ifndef AVCODEC_CAVSDSP_H
23
#define AVCODEC_CAVSDSP_H
24
25
#include <stdint.h>
26
#include "
dsputil.h
"
27
28
typedef
struct
CAVSDSPContext
{
29
qpel_mc_func
put_cavs_qpel_pixels_tab
[2][16];
30
qpel_mc_func
avg_cavs_qpel_pixels_tab
[2][16];
31
void
(*
cavs_filter_lv
)(uint8_t *pix,
int
stride
,
int
alpha,
int
beta,
int
tc,
int
bs1,
int
bs2);
32
void
(*
cavs_filter_lh
)(uint8_t *pix,
int
stride
,
int
alpha,
int
beta,
int
tc,
int
bs1,
int
bs2);
33
void
(*
cavs_filter_cv
)(uint8_t *pix,
int
stride
,
int
alpha,
int
beta,
int
tc,
int
bs1,
int
bs2);
34
void
(*
cavs_filter_ch
)(uint8_t *pix,
int
stride
,
int
alpha,
int
beta,
int
tc,
int
bs1,
int
bs2);
35
void
(*
cavs_idct8_add
)(uint8_t *dst,
DCTELEM
*
block
,
int
stride
);
36
}
CAVSDSPContext
;
37
38
void
ff_cavsdsp_init
(
CAVSDSPContext
* c,
AVCodecContext
*avctx);
39
void
ff_cavsdsp_init_mmx
(
CAVSDSPContext
* c,
AVCodecContext
*avctx);
40
41
#endif
/* AVCODEC_CAVSDSP_H */