FFmpeg
adpcm.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2001-2003 The FFmpeg project
3  *
4  * This file is part of FFmpeg.
5  *
6  * FFmpeg is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * FFmpeg is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with FFmpeg; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19  */
20 
21 /**
22  * @file
23  * ADPCM encoder/decoder common header.
24  */
25 
26 #ifndef AVCODEC_ADPCM_H
27 #define AVCODEC_ADPCM_H
28 
29 #include <stdint.h>
30 
31 typedef struct ADPCMChannelStatus {
32  int predictor;
33  int16_t step_index;
34  int step;
35  /* for encoding */
37 
38  /* MS version */
39  int sample1;
40  int sample2;
41  int coeff1;
42  int coeff2;
43  int idelta;
45 
46 int16_t ff_adpcm_argo_expand_nibble(ADPCMChannelStatus *cs, int nibble, int shift, int flag);
47 
48 #endif /* AVCODEC_ADPCM_H */
ADPCMChannelStatus::step_index
int16_t step_index
Definition: adpcm.h:33
ADPCMChannelStatus::coeff1
int coeff1
Definition: adpcm.h:41
ff_adpcm_argo_expand_nibble
int16_t ff_adpcm_argo_expand_nibble(ADPCMChannelStatus *cs, int nibble, int shift, int flag)
Definition: adpcm.c:819
ADPCMChannelStatus::sample1
int sample1
Definition: adpcm.h:39
ADPCMChannelStatus::coeff2
int coeff2
Definition: adpcm.h:42
ADPCMChannelStatus::sample2
int sample2
Definition: adpcm.h:40
shift
static int shift(int a, int b)
Definition: bonk.c:257
ADPCMChannelStatus::prev_sample
int prev_sample
Definition: adpcm.h:36
flag
#define flag(name)
Definition: cbs_av1.c:553
ADPCMChannelStatus::step
int step
Definition: adpcm.h:34
ADPCMChannelStatus::idelta
int idelta
Definition: adpcm.h:43
ADPCMChannelStatus::predictor
int predictor
Definition: adpcm.h:32
ADPCMChannelStatus
Definition: adpcm.h:31