2017-08-20 05:43:41 +00:00
|
|
|
|
|
|
|
enum bas_type {
|
|
|
|
BAS_FUBK,
|
2019-05-12 07:36:12 +00:00
|
|
|
BAS_CONVERGENCE,
|
2022-08-18 17:58:16 +00:00
|
|
|
BAS_BLACK,
|
|
|
|
BAS_BLUE,
|
2019-05-12 07:36:12 +00:00
|
|
|
BAS_RED,
|
2022-08-18 17:58:16 +00:00
|
|
|
BAS_MAGENTA,
|
|
|
|
BAS_GREEN,
|
|
|
|
BAS_CYAN,
|
|
|
|
BAS_YELLOW,
|
|
|
|
BAS_WHITE,
|
2019-05-12 07:36:12 +00:00
|
|
|
BAS_EBU,
|
2017-08-20 05:43:41 +00:00
|
|
|
BAS_VCR,
|
|
|
|
BAS_IMAGE,
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef struct bas {
|
|
|
|
double samplerate;
|
|
|
|
enum bas_type type;
|
|
|
|
int fbas; /* if color shall be added */
|
|
|
|
double circle_radius; /* radius of circle in grid units */
|
|
|
|
int color_bar; /* show only color bar on all lines */
|
|
|
|
int grid_only; /* show only the grid */
|
|
|
|
const char *station_id; /* text to display as station id */
|
2019-05-12 07:36:12 +00:00
|
|
|
int grid_width; /* width of the grid (convergence test) */
|
2017-08-20 05:43:41 +00:00
|
|
|
double color_phase; /* current phase of color carrier */
|
|
|
|
int v_polarity; /* polarity of V color vector */
|
|
|
|
unsigned short *img; /* image data, if it should be used */
|
|
|
|
int img_width, img_height; /* size of image */
|
|
|
|
iir_filter_t lp_y, lp_u, lp_v; /* low pass filters */
|
|
|
|
} bas_t;
|
|
|
|
|
2019-05-12 07:36:12 +00:00
|
|
|
void bas_init(bas_t *bas, double samplerate, enum bas_type type, int fbas, double circle_radius, int color_bar, int grid_only, const char *station_id, int grid_width, unsigned short *img, int width, int height);
|
2017-08-20 05:43:41 +00:00
|
|
|
int bas_generate(bas_t *bas, sample_t *sample);
|
|
|
|
|