Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(101)

Side by Side Diff: third_party/opus/src/celt/celt.h

Issue 2962373002: [Opus] Update to v1.2.1 (Closed)
Patch Set: Pre-increment instead of post-increment Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/opus/src/celt/bands.c ('k') | third_party/opus/src/celt/celt.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Copyright (c) 2007-2008 CSIRO 1 /* Copyright (c) 2007-2008 CSIRO
2 Copyright (c) 2007-2009 Xiph.Org Foundation 2 Copyright (c) 2007-2009 Xiph.Org Foundation
3 Copyright (c) 2008 Gregory Maxwell 3 Copyright (c) 2008 Gregory Maxwell
4 Written by Jean-Marc Valin and Gregory Maxwell */ 4 Written by Jean-Marc Valin and Gregory Maxwell */
5 /** 5 /**
6 @file celt.h 6 @file celt.h
7 @brief Contains all the functions for encoding and decoding audio 7 @brief Contains all the functions for encoding and decoding audio
8 */ 8 */
9 9
10 /* 10 /*
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 #include "arch.h" 43 #include "arch.h"
44 44
45 #ifdef __cplusplus 45 #ifdef __cplusplus
46 extern "C" { 46 extern "C" {
47 #endif 47 #endif
48 48
49 #define CELTEncoder OpusCustomEncoder 49 #define CELTEncoder OpusCustomEncoder
50 #define CELTDecoder OpusCustomDecoder 50 #define CELTDecoder OpusCustomDecoder
51 #define CELTMode OpusCustomMode 51 #define CELTMode OpusCustomMode
52 52
53 #define LEAK_BANDS 19
54
53 typedef struct { 55 typedef struct {
54 int valid; 56 int valid;
55 float tonality; 57 float tonality;
56 float tonality_slope; 58 float tonality_slope;
57 float noisiness; 59 float noisiness;
58 float activity; 60 float activity;
59 float music_prob; 61 float music_prob;
60 int bandwidth; 62 float vad_prob;
61 }AnalysisInfo; 63 int bandwidth;
64 float activity_probability;
65 /* Store as Q6 char to save space. */
66 unsigned char leak_boost[LEAK_BANDS];
67 } AnalysisInfo;
68
69 typedef struct {
70 int signalType;
71 int offset;
72 } SILKInfo;
62 73
63 #define __celt_check_mode_ptr_ptr(ptr) ((ptr) + ((ptr) - (const CELTMode**)(ptr) )) 74 #define __celt_check_mode_ptr_ptr(ptr) ((ptr) + ((ptr) - (const CELTMode**)(ptr) ))
64 75
65 #define __celt_check_analysis_ptr(ptr) ((ptr) + ((ptr) - (const AnalysisInfo*)(p tr))) 76 #define __celt_check_analysis_ptr(ptr) ((ptr) + ((ptr) - (const AnalysisInfo*)(p tr)))
66 77
78 #define __celt_check_silkinfo_ptr(ptr) ((ptr) + ((ptr) - (const SILKInfo*)(ptr)) )
79
67 /* Encoder/decoder Requests */ 80 /* Encoder/decoder Requests */
68 81
69 /* Expose this option again when variable framesize actually works */
70 #define OPUS_FRAMESIZE_VARIABLE 5010 /**< Optimize the frame size d ynamically */
71
72 82
73 #define CELT_SET_PREDICTION_REQUEST 10002 83 #define CELT_SET_PREDICTION_REQUEST 10002
74 /** Controls the use of interframe prediction. 84 /** Controls the use of interframe prediction.
75 0=Independent frames 85 0=Independent frames
76 1=Short term interframe prediction allowed 86 1=Short term interframe prediction allowed
77 2=Long term prediction allowed 87 2=Long term prediction allowed
78 */ 88 */
79 #define CELT_SET_PREDICTION(x) CELT_SET_PREDICTION_REQUEST, __opus_check_int(x) 89 #define CELT_SET_PREDICTION(x) CELT_SET_PREDICTION_REQUEST, __opus_check_int(x)
80 90
81 #define CELT_SET_INPUT_CLIPPING_REQUEST 10004 91 #define CELT_SET_INPUT_CLIPPING_REQUEST 10004
(...skipping 27 matching lines...) Expand all
109 119
110 #define CELT_SET_ANALYSIS_REQUEST 10022 120 #define CELT_SET_ANALYSIS_REQUEST 10022
111 #define CELT_SET_ANALYSIS(x) CELT_SET_ANALYSIS_REQUEST, __celt_check_analysis_pt r(x) 121 #define CELT_SET_ANALYSIS(x) CELT_SET_ANALYSIS_REQUEST, __celt_check_analysis_pt r(x)
112 122
113 #define OPUS_SET_LFE_REQUEST 10024 123 #define OPUS_SET_LFE_REQUEST 10024
114 #define OPUS_SET_LFE(x) OPUS_SET_LFE_REQUEST, __opus_check_int(x) 124 #define OPUS_SET_LFE(x) OPUS_SET_LFE_REQUEST, __opus_check_int(x)
115 125
116 #define OPUS_SET_ENERGY_MASK_REQUEST 10026 126 #define OPUS_SET_ENERGY_MASK_REQUEST 10026
117 #define OPUS_SET_ENERGY_MASK(x) OPUS_SET_ENERGY_MASK_REQUEST, __opus_check_val16 _ptr(x) 127 #define OPUS_SET_ENERGY_MASK(x) OPUS_SET_ENERGY_MASK_REQUEST, __opus_check_val16 _ptr(x)
118 128
129 #define CELT_SET_SILK_INFO_REQUEST 10028
130 #define CELT_SET_SILK_INFO(x) CELT_SET_SILK_INFO_REQUEST, __celt_check_silkinfo_ ptr(x)
131
119 /* Encoder stuff */ 132 /* Encoder stuff */
120 133
121 int celt_encoder_get_size(int channels); 134 int celt_encoder_get_size(int channels);
122 135
123 int celt_encode_with_ec(OpusCustomEncoder * OPUS_RESTRICT st, const opus_val16 * pcm, int frame_size, unsigned char *compressed, int nbCompressedBytes, ec_enc * enc); 136 int celt_encode_with_ec(OpusCustomEncoder * OPUS_RESTRICT st, const opus_val16 * pcm, int frame_size, unsigned char *compressed, int nbCompressedBytes, ec_enc * enc);
124 137
125 int celt_encoder_init(CELTEncoder *st, opus_int32 sampling_rate, int channels, 138 int celt_encoder_init(CELTEncoder *st, opus_int32 sampling_rate, int channels,
126 int arch); 139 int arch);
127 140
128 141
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
220 void celt_synthesis(const CELTMode *mode, celt_norm *X, celt_sig * out_syn[], 233 void celt_synthesis(const CELTMode *mode, celt_norm *X, celt_sig * out_syn[],
221 opus_val16 *oldBandE, int start, int effEnd, int C, int CC, int isTransien t, 234 opus_val16 *oldBandE, int start, int effEnd, int C, int CC, int isTransien t,
222 int LM, int downsample, int silence); 235 int LM, int downsample, int silence);
223 #endif 236 #endif
224 237
225 #ifdef __cplusplus 238 #ifdef __cplusplus
226 } 239 }
227 #endif 240 #endif
228 241
229 #endif /* CELT_H */ 242 #endif /* CELT_H */
OLDNEW
« no previous file with comments | « third_party/opus/src/celt/bands.c ('k') | third_party/opus/src/celt/celt.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698