diff --git a/dnn/dred_encoder.c b/dnn/dred_encoder.c index c3502bf3..edb49cc2 100644 --- a/dnn/dred_encoder.c +++ b/dnn/dred_encoder.c @@ -52,7 +52,7 @@ static void DRED_rdovae_init_encoder(RDOVAEEncState *enc_state) memset(enc_state, 0, sizeof(*enc_state)); } -int dred_encoder_load_model(DREDEnc* enc, const unsigned char *data, int len) +int dred_encoder_load_model(DREDEnc* enc, const void *data, int len) { WeightArray *list; int ret; diff --git a/dnn/dred_encoder.h b/dnn/dred_encoder.h index dd241049..6987222c 100644 --- a/dnn/dred_encoder.h +++ b/dnn/dred_encoder.h @@ -58,7 +58,7 @@ typedef struct { float resample_mem[RESAMPLING_ORDER + 1]; } DREDEnc; -int dred_encoder_load_model(DREDEnc* enc, const unsigned char *data, int len); +int dred_encoder_load_model(DREDEnc* enc, const void *data, int len); void dred_encoder_init(DREDEnc* enc, opus_int32 Fs, int channels); void dred_encoder_reset(DREDEnc* enc); diff --git a/dnn/fargan.c b/dnn/fargan.c index aced8cb8..c35b3f0c 100644 --- a/dnn/fargan.c +++ b/dnn/fargan.c @@ -184,7 +184,7 @@ void fargan_init(FARGANState *st) celt_assert(ret == 0); } -int fargan_load_model(FARGANState *st, const unsigned char *data, int len) { +int fargan_load_model(FARGANState *st, const void *data, int len) { WeightArray *list; int ret; parse_weights(&list, data, len); diff --git a/dnn/fargan.h b/dnn/fargan.h index fd5ee4f0..d44ae89b 100644 --- a/dnn/fargan.h +++ b/dnn/fargan.h @@ -57,7 +57,7 @@ typedef struct { } FARGANState; void fargan_init(FARGANState *st); -int fargan_load_model(FARGANState *st, const unsigned char *data, int len); +int fargan_load_model(FARGANState *st, const void *data, int len); void fargan_cont(FARGANState *st, const float *pcm0, const float *features0); diff --git a/dnn/lossgen.c b/dnn/lossgen.c index 698763f4..d0e781a8 100644 --- a/dnn/lossgen.c +++ b/dnn/lossgen.c @@ -166,7 +166,7 @@ void lossgen_init(LossGenState *st) (void)ret; } -int lossgen_load_model(LossGenState *st, const unsigned char *data, int len) { +int lossgen_load_model(LossGenState *st, const void *data, int len) { WeightArray *list; int ret; parse_weights(&list, data, len); diff --git a/dnn/lossgen.h b/dnn/lossgen.h index 3b704ec3..318f32f7 100644 --- a/dnn/lossgen.h +++ b/dnn/lossgen.h @@ -46,7 +46,7 @@ typedef struct { void lossgen_init(LossGenState *st); -int lossgen_load_model(LossGenState *st, const unsigned char *data, int len); +int lossgen_load_model(LossGenState *st, const void *data, int len); int sample_loss( LossGenState *st, diff --git a/dnn/lpcnet.h b/dnn/lpcnet.h index ec39dc24..4a981246 100644 --- a/dnn/lpcnet.h +++ b/dnn/lpcnet.h @@ -94,7 +94,7 @@ int lpcnet_encoder_get_size(void); */ int lpcnet_encoder_init(LPCNetEncState *st); -int lpcnet_encoder_load_model(LPCNetEncState *st, const unsigned char *data, int len); +int lpcnet_encoder_load_model(LPCNetEncState *st, const void *data, int len); /** Allocates and initializes an encoder state. * @returns The newly created state @@ -177,7 +177,7 @@ void lpcnet_plc_fec_add(LPCNetPLCState *st, const float *features); void lpcnet_plc_fec_clear(LPCNetPLCState *st); -int lpcnet_load_model(LPCNetState *st, const unsigned char *data, int len); -int lpcnet_plc_load_model(LPCNetPLCState *st, const unsigned char *data, int len); +int lpcnet_load_model(LPCNetState *st, const void *data, int len); +int lpcnet_plc_load_model(LPCNetPLCState *st, const void *data, int len); #endif diff --git a/dnn/lpcnet_demo.c b/dnn/lpcnet_demo.c index e1aa23c0..8e3acdd7 100644 --- a/dnn/lpcnet_demo.c +++ b/dnn/lpcnet_demo.c @@ -48,9 +48,9 @@ /* When available, mmap() is preferable to reading the file, as it leads to better resource utilization, especially if multiple processes are using the same file (mapping will be shared in cache). */ -unsigned char *load_blob(const char *filename, int *len) { +void *load_blob(const char *filename, int *len) { int fd; - unsigned char *data; + void *data; struct stat st; stat(filename, &st); *len = st.st_size; @@ -59,13 +59,13 @@ unsigned char *load_blob(const char *filename, int *len) { close(fd); return data; } -void free_blob(unsigned char *blob, int len) { +void free_blob(void *blob, int len) { munmap(blob, len); } # else -unsigned char *load_blob(const char *filename, int *len) { +void *load_blob(const char *filename, int *len) { FILE *file; - unsigned char *data; + void *data; file = fopen(filename, "r"); fseek(file, 0L, SEEK_END); *len = ftell(file); @@ -75,7 +75,7 @@ unsigned char *load_blob(const char *filename, int *len) { *len = fread(data, 1, *len, file); return data; } -void free_blob(unsigned char *blob, int len) { +void free_blob(void *blob, int len) { free(blob); (void)len; } @@ -104,7 +104,7 @@ int main(int argc, char **argv) { FILE *fin, *fout; #ifdef USE_WEIGHTS_FILE int len; - unsigned char *data; + void *data; const char *filename = "weights_blob.bin"; #endif arch = opus_select_arch(); diff --git a/dnn/lpcnet_enc.c b/dnn/lpcnet_enc.c index 1cdbf76a..52930416 100644 --- a/dnn/lpcnet_enc.c +++ b/dnn/lpcnet_enc.c @@ -56,7 +56,7 @@ int lpcnet_encoder_init(LPCNetEncState *st) { return 0; } -int lpcnet_encoder_load_model(LPCNetEncState *st, const unsigned char *data, int len) { +int lpcnet_encoder_load_model(LPCNetEncState *st, const void *data, int len) { return pitchdnn_load_model(&st->pitchdnn, data, len); } diff --git a/dnn/lpcnet_plc.c b/dnn/lpcnet_plc.c index 2a901ad2..55122779 100644 --- a/dnn/lpcnet_plc.c +++ b/dnn/lpcnet_plc.c @@ -72,7 +72,7 @@ int lpcnet_plc_init(LPCNetPLCState *st) { return ret; } -int lpcnet_plc_load_model(LPCNetPLCState *st, const unsigned char *data, int len) { +int lpcnet_plc_load_model(LPCNetPLCState *st, const void *data, int len) { WeightArray *list; int ret; parse_weights(&list, data, len); diff --git a/dnn/nnet.h b/dnn/nnet.h index 2531489c..7bc61337 100644 --- a/dnn/nnet.h +++ b/dnn/nnet.h @@ -93,7 +93,7 @@ void compute_glu(const LinearLayer *layer, float *output, const float *input, in void compute_gated_activation(const LinearLayer *layer, float *output, const float *input, int activation, int arch); -int parse_weights(WeightArray **list, const unsigned char *data, int len); +int parse_weights(WeightArray **list, const void *data, int len); extern const WeightArray lpcnet_arrays[]; diff --git a/dnn/osce.c b/dnn/osce.c index aca45500..fb446f9a 100644 --- a/dnn/osce.c +++ b/dnn/osce.c @@ -873,7 +873,7 @@ static void print_linear_layer(FILE *fid, const char *name, LinearLayer *layer) } #endif -int osce_load_models(OSCEModel *model, const unsigned char *data, int len) +int osce_load_models(OSCEModel *model, const void *data, int len) { int ret = 0; WeightArray *list; diff --git a/dnn/osce.h b/dnn/osce.h index 1bffbf0e..1aadfad4 100644 --- a/dnn/osce.h +++ b/dnn/osce.h @@ -77,7 +77,7 @@ void osce_enhance_frame( ); -int osce_load_models(OSCEModel *hModel, const unsigned char *data, int len); +int osce_load_models(OSCEModel *hModel, const void *data, int len); void osce_reset(silk_OSCE_struct *hOSCE, int method); diff --git a/dnn/parse_lpcnet_weights.c b/dnn/parse_lpcnet_weights.c index 987fc717..01ab7f8e 100644 --- a/dnn/parse_lpcnet_weights.c +++ b/dnn/parse_lpcnet_weights.c @@ -35,7 +35,7 @@ #define SPARSE_BLOCK_SIZE 32 -int parse_record(const unsigned char **data, int *len, WeightArray *array) { +int parse_record(const void **data, int *len, WeightArray *array) { WeightHead *h = (WeightHead *)*data; if (*len < WEIGHT_BLOCK_SIZE) return -1; if (h->block_size < h->size) return -1; @@ -45,14 +45,14 @@ int parse_record(const unsigned char **data, int *len, WeightArray *array) { array->name = h->name; array->type = h->type; array->size = h->size; - array->data = (*data)+WEIGHT_BLOCK_SIZE; + array->data = (void*)((unsigned char*)(*data)+WEIGHT_BLOCK_SIZE); - *data += h->block_size+WEIGHT_BLOCK_SIZE; + *data = (void*)((unsigned char*)*data + h->block_size+WEIGHT_BLOCK_SIZE); *len -= h->block_size+WEIGHT_BLOCK_SIZE; return array->size; } -int parse_weights(WeightArray **list, const unsigned char *data, int len) +int parse_weights(WeightArray **list, const void *data, int len) { int nb_arrays=0; int capacity=20; @@ -213,7 +213,7 @@ int conv2d_init(Conv2dLayer *layer, const WeightArray *arrays, int main() { int fd; - unsigned char *data; + void *data; int len; int nb_arrays; int i; diff --git a/dnn/pitchdnn.c b/dnn/pitchdnn.c index b04a0ebe..5cf96e7f 100644 --- a/dnn/pitchdnn.c +++ b/dnn/pitchdnn.c @@ -68,7 +68,7 @@ void pitchdnn_init(PitchDNNState *st) celt_assert(ret == 0); } -int pitchdnn_load_model(PitchDNNState *st, const unsigned char *data, int len) { +int pitchdnn_load_model(PitchDNNState *st, const void *data, int len) { WeightArray *list; int ret; parse_weights(&list, data, len); diff --git a/dnn/pitchdnn.h b/dnn/pitchdnn.h index ed821412..25fa3a4b 100644 --- a/dnn/pitchdnn.h +++ b/dnn/pitchdnn.h @@ -22,7 +22,7 @@ typedef struct { void pitchdnn_init(PitchDNNState *st); -int pitchdnn_load_model(PitchDNNState *st, const unsigned char *data, int len); +int pitchdnn_load_model(PitchDNNState *st, const void *data, int len); float compute_pitchdnn( PitchDNNState *st, diff --git a/include/opus_defines.h b/include/opus_defines.h index c033c7e9..e478641c 100644 --- a/include/opus_defines.h +++ b/include/opus_defines.h @@ -644,7 +644,7 @@ extern "C" { /** Provide external DNN weights from binary object (only when explicitly built without the weights) * @hideinitializer */ -#define OPUS_SET_DNN_BLOB(data, len) OPUS_SET_DNN_BLOB_REQUEST, __opus_check_uint8_ptr(data), __opus_check_int(len) +#define OPUS_SET_DNN_BLOB(data, len) OPUS_SET_DNN_BLOB_REQUEST, (data), __opus_check_int(len) /**@}*/ diff --git a/src/opus_demo.c b/src/opus_demo.c index 92631df4..365cb965 100644 --- a/src/opus_demo.c +++ b/src/opus_demo.c @@ -54,9 +54,9 @@ /* When available, mmap() is preferable to reading the file, as it leads to better resource utilization, especially if multiple processes are using the same file (mapping will be shared in cache). */ -unsigned char *load_blob(const char *filename, int *len) { +void *load_blob(const char *filename, int *len) { int fd; - unsigned char *data; + void *data; struct stat st; stat(filename, &st); *len = st.st_size; @@ -65,13 +65,13 @@ unsigned char *load_blob(const char *filename, int *len) { close(fd); return data; } -void free_blob(unsigned char *blob, int len) { +void free_blob(void *blob, int len) { munmap(blob, len); } # else -unsigned char *load_blob(const char *filename, int *len) { +void *load_blob(const char *filename, int *len) { FILE *file; - unsigned char *data; + void *data; file = fopen(filename, "r"); if (file == NULL) { @@ -85,7 +85,7 @@ unsigned char *load_blob(const char *filename, int *len) { *len = fread(data, 1, *len, file); return data; } -void free_blob(unsigned char *blob, int len) { +void free_blob(void *blob, int len) { free(blob); (void)len; } @@ -399,7 +399,7 @@ int main(int argc, char *argv[]) #endif #ifdef USE_WEIGHTS_FILE int blob_len; - unsigned char *blob_data; + void *blob_data; const char *filename = "weights_blob.bin"; blob_data = load_blob(filename, &blob_len); #endif