GNU Radio's DSD Package
mbelib.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2010 mbelib Author
3 * GPG Key ID: 0xEA5EFE2C (9E7A 5527 9CDC EBF7 BF1B D772 4F98 E863 EA5E FE2C)
4 *
5 * Permission to use, copy, modify, and/or distribute this software for any
6 * purpose with or without fee is hereby granted, provided that the above
7 * copyright notice and this permission notice appear in all copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11 * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15 * PERFORMANCE OF THIS SOFTWARE.
16 */
17
18#ifndef _MBELIB_H
19#define _MBELIB_H
20
21#define MBELIB_VERSION "1.3.0"
22
24{
25 float w0;
26 int L;
27 int K;
28 int Vl[57];
29 float Ml[57];
30 float log2Ml[57];
31 float PHIl[57];
32 float PSIl[57];
33 float gamma;
34 int un;
35 int repeat;
36};
37
39
40/*
41 * Prototypes from ecc.c
42 */
43void mbe_checkGolayBlock (long int *block);
44int mbe_golay2312 (char *in, char *out);
45int mbe_hamming1511 (char *in, char *out);
46int mbe_7100x4400hamming1511 (char *in, char *out);
47
48/*
49 * Prototypes from ambe3600x2400.c
50 */
51int mbe_eccAmbe3600x2400C0 (char ambe_fr[4][24]);
52int mbe_eccAmbe3600x2400Data (char ambe_fr[4][24], char *ambe_d);
53int mbe_decodeAmbe2400Parms (char *ambe_d, mbe_parms * cur_mp, mbe_parms * prev_mp);
54void mbe_demodulateAmbe3600x2400Data (char ambe_fr[4][24]);
55void mbe_processAmbe2400Dataf (float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
56void mbe_processAmbe2400Data (short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
57void mbe_processAmbe3600x2400Framef (float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
58void mbe_processAmbe3600x2400Frame (short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
59
60/*
61 * Prototypes from ambe3600x2450.c
62 */
63int mbe_eccAmbe3600x2450C0 (char ambe_fr[4][24]);
64int mbe_eccAmbe3600x2450Data (char ambe_fr[4][24], char *ambe_d);
65int mbe_decodeAmbe2450Parms (char *ambe_d, mbe_parms * cur_mp, mbe_parms * prev_mp);
66void mbe_demodulateAmbe3600x2450Data (char ambe_fr[4][24]);
67void mbe_processAmbe2450Dataf (float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
68void mbe_processAmbe2450Data (short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
69void mbe_processAmbe3600x2450Framef (float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
70void mbe_processAmbe3600x2450Frame (short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
71
72/*
73 * Prototypes from imbe7200x4400.c
74 */
75void mbe_dumpImbe4400Data (char *imbe_d);
76void mbe_dumpImbe7200x4400Data (char *imbe_d);
77void mbe_dumpImbe7200x4400Frame (char imbe_fr[8][23]);
78int mbe_eccImbe7200x4400C0 (char imbe_fr[8][23]);
79int mbe_eccImbe7200x4400Data (char imbe_fr[8][23], char *imbe_d);
80int mbe_decodeImbe4400Parms (char *imbe_d, mbe_parms * cur_mp, mbe_parms * prev_mp);
81void mbe_demodulateImbe7200x4400Data (char imbe[8][23]);
82void mbe_processImbe4400Dataf (float *aout_buf, int *errs, int *errs2, char *err_str, char imbe_d[88], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
83void mbe_processImbe4400Data (short *aout_buf, int *errs, int *errs2, char *err_str, char imbe_d[88], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
84void mbe_processImbe7200x4400Framef (float *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[8][23], char imbe_d[88], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
85void mbe_processImbe7200x4400Frame (short *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[8][23], char imbe_d[88], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
86
87/*
88 * Prototypes from imbe7100x4400.c
89 */
90void mbe_dumpImbe7100x4400Data (char *imbe_d);
91void mbe_dumpImbe7100x4400Frame (char imbe_fr[7][24]);
92int mbe_eccImbe7100x4400C0 (char imbe_fr[7][24]);
93int mbe_eccImbe7100x4400Data (char imbe_fr[7][24], char *imbe_d);
94void mbe_demodulateImbe7100x4400Data (char imbe[7][24]);
95void mbe_convertImbe7100to7200 (char *imbe_d);
96void mbe_processImbe7100x4400Framef (float *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[7][24], char imbe_d[88], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
97void mbe_processImbe7100x4400Frame (short *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[7][24], char imbe_d[88], mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced, int uvquality);
98
99/*
100 * Prototypes from mbelib.c
101 */
102void mbe_printVersion (char *str);
103void mbe_moveMbeParms (mbe_parms * cur_mp, mbe_parms * prev_mp);
104void mbe_useLastMbeParms (mbe_parms * cur_mp, mbe_parms * prev_mp);
105void mbe_initMbeParms (mbe_parms * cur_mp, mbe_parms * prev_mp, mbe_parms * prev_mp_enhanced);
107void mbe_synthesizeSilencef (float *aout_buf);
108void mbe_synthesizeSilence (short *aout_buf);
109void mbe_synthesizeSpeechf (float *aout_buf, mbe_parms * cur_mp, mbe_parms * prev_mp, int uvquality);
110void mbe_synthesizeSpeech (short *aout_buf, mbe_parms * cur_mp, mbe_parms * prev_mp, int uvquality);
111void mbe_floattoshort (float *float_buf, short *aout_buf);
112
113#endif
void mbe_processImbe7100x4400Frame(short *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[7][24], char imbe_d[88], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_demodulateImbe7100x4400Data(char imbe[7][24])
void mbe_processImbe7200x4400Frame(short *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[8][23], char imbe_d[88], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_synthesizeSilencef(float *aout_buf)
void mbe_checkGolayBlock(long int *block)
void mbe_demodulateAmbe3600x2450Data(char ambe_fr[4][24])
void mbe_printVersion(char *str)
void mbe_demodulateImbe7200x4400Data(char imbe[8][23])
void mbe_processImbe4400Dataf(float *aout_buf, int *errs, int *errs2, char *err_str, char imbe_d[88], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_processImbe7100x4400Framef(float *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[7][24], char imbe_d[88], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_processAmbe3600x2450Framef(float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
int mbe_hamming1511(char *in, char *out)
void mbe_processImbe4400Data(short *aout_buf, int *errs, int *errs2, char *err_str, char imbe_d[88], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
int mbe_7100x4400hamming1511(char *in, char *out)
void mbe_processAmbe2450Dataf(float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
int mbe_decodeAmbe2450Parms(char *ambe_d, mbe_parms *cur_mp, mbe_parms *prev_mp)
void mbe_moveMbeParms(mbe_parms *cur_mp, mbe_parms *prev_mp)
void mbe_processAmbe3600x2400Frame(short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_spectralAmpEnhance(mbe_parms *cur_mp)
void mbe_synthesizeSpeech(short *aout_buf, mbe_parms *cur_mp, mbe_parms *prev_mp, int uvquality)
void mbe_dumpImbe4400Data(char *imbe_d)
int mbe_eccAmbe3600x2400C0(char ambe_fr[4][24])
void mbe_processAmbe2400Dataf(float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_processAmbe2450Data(short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_useLastMbeParms(mbe_parms *cur_mp, mbe_parms *prev_mp)
int mbe_golay2312(char *in, char *out)
int mbe_eccAmbe3600x2400Data(char ambe_fr[4][24], char *ambe_d)
void mbe_processAmbe3600x2450Frame(short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_convertImbe7100to7200(char *imbe_d)
int mbe_decodeAmbe2400Parms(char *ambe_d, mbe_parms *cur_mp, mbe_parms *prev_mp)
int mbe_decodeImbe4400Parms(char *imbe_d, mbe_parms *cur_mp, mbe_parms *prev_mp)
void mbe_processAmbe3600x2400Framef(float *aout_buf, int *errs, int *errs2, char *err_str, char ambe_fr[4][24], char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_dumpImbe7200x4400Data(char *imbe_d)
struct mbe_parameters mbe_parms
Definition mbelib.h:38
int mbe_eccAmbe3600x2450Data(char ambe_fr[4][24], char *ambe_d)
void mbe_dumpImbe7100x4400Data(char *imbe_d)
void mbe_synthesizeSpeechf(float *aout_buf, mbe_parms *cur_mp, mbe_parms *prev_mp, int uvquality)
int mbe_eccImbe7100x4400Data(char imbe_fr[7][24], char *imbe_d)
void mbe_initMbeParms(mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced)
void mbe_dumpImbe7200x4400Frame(char imbe_fr[8][23])
void mbe_synthesizeSilence(short *aout_buf)
void mbe_demodulateAmbe3600x2400Data(char ambe_fr[4][24])
void mbe_dumpImbe7100x4400Frame(char imbe_fr[7][24])
int mbe_eccImbe7100x4400C0(char imbe_fr[7][24])
int mbe_eccImbe7200x4400C0(char imbe_fr[8][23])
int mbe_eccAmbe3600x2450C0(char ambe_fr[4][24])
int mbe_eccImbe7200x4400Data(char imbe_fr[8][23], char *imbe_d)
void mbe_processAmbe2400Data(short *aout_buf, int *errs, int *errs2, char *err_str, char ambe_d[49], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
void mbe_floattoshort(float *float_buf, short *aout_buf)
void mbe_processImbe7200x4400Framef(float *aout_buf, int *errs, int *errs2, char *err_str, char imbe_fr[8][23], char imbe_d[88], mbe_parms *cur_mp, mbe_parms *prev_mp, mbe_parms *prev_mp_enhanced, int uvquality)
Definition mbelib.h:24
float Ml[57]
Definition mbelib.h:29
int repeat
Definition mbelib.h:35
float log2Ml[57]
Definition mbelib.h:30
float PSIl[57]
Definition mbelib.h:32
int Vl[57]
Definition mbelib.h:28
float w0
Definition mbelib.h:25
float PHIl[57]
Definition mbelib.h:31
int K
Definition mbelib.h:27
int L
Definition mbelib.h:26
float gamma
Definition mbelib.h:33
int un
Definition mbelib.h:34