mirror of
https://github.com/xiph/opus.git
synced 2025-05-29 06:39:15 +00:00
Make weights blob a void*
This commit is contained in:
parent
24b7eab4a3
commit
efeaa8aef8
18 changed files with 36 additions and 36 deletions
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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[];
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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)
|
||||
|
||||
|
||||
/**@}*/
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue