GithubHelp home page GithubHelp logo

laysent / silk-sdk Goto Github PK

View Code? Open in Web Editor NEW
29.0 3.0 7.0 646 KB

node-gyp version of Silk Speech Codec, able to decode/encode audio from/to silk format (widely used by Tencent apps, such as WeChat/WeiXin, QQ)

License: MIT License

C 80.74% Python 0.34% JavaScript 0.45% Assembly 11.76% C++ 4.73% Objective-C 1.98%
silk silk-v3

silk-sdk's Introduction

Silk SDK

This is node-gyp version of Silk SDK library (see https://developer.skype.com/silk for details.)

Installation

To install this package, please run:

npm install silk-sdk

or

yarn add silk-sdk

If you wish to use cli tool, try install globally using:

npm install silk-sdk --global

or

yarn global add silk-sdk

Command Usage

decode

To decode silk format audio, run:

silk-sdk decode [input] [output]

where input is the name of input file and output is the name of output file. You can pass further options after, availables are shown below:

  • -q, --quiet Whether there is any output into console (default: false)
  • --lossProb [lossProb] Simulated packet loss percentage (0-100) (default: 0)
  • --fsHz [fs] Sampling rate of output signal in Hz (default: 24000)

encode

To encode audio to silk format, run:

silk-sdk encode [input] [output]

where input is the name of input file and output is the name of output file. You can pass further options after, availables are shown below:

  • -q, --quiet Whether there is any output into console (default: false)
  • --fsHz [fs] API sampling rate in Hz (default: 24000)
  • --fxMaxInternal [fxMaxInternal] Maximum internal sampling rate in Hz (default: 0)
  • --packetLength [packageLength] Packet interval in ms (default: 20)
  • --rate Target bitrate (default: 25000)
  • --loss Uplink loss estimate, in percent (0-100) (default: 0)
  • --complexity Set complexity, 0: low, 1: medium, 2: high (default: 2)
  • --inbandFEC Enable inband FEC usage (default: false)
  • --dtx Enable DTX (default: false)
  • --tencent Add Tencent (Wechat, QQ) header in exported file (default: false)
  • --tencentAmr Add Tencent AMR header in exported file (default: false)

compare

To compare to silk format audio files, run:

silk-sdk compare [ref] [test]

where ref is the name of first file and test is the name of second file. You can pass further options after, availables are shown below:

  • -q, --quiet Whether there is any output into console (default: false)
  • --diff Only determine bit-exactness (default: false)
  • --fs Sampling rate in Hz, max is 48000 (default: 24000)

API Usage

decode

This API will decode silk format audio. It's return value and behavior will change depends on the parameters provided.

Stream.Transform decode(options)

Parameter Type Required Description
options object false Optional options, see below for details

This API will return a transform stream, which can be used to consume input stream and generate decode stream.

Exmaple usage:

fs.createReadStream('input-path-here')
  .pipe(silk.decode({ quiet: true }))
  .pipe(fs.createWriteStream('output-path-here'));

buffer decode(input, options)

Parameter Type Required Description
input string/buffer true Bitstream input to decoder
options object false Optional options, see below for details

For first parameter input, you can pass in either string or buffer. If string is provided, it will be used as path of file; if buffer is provided, it should be the buffer of input file.

This API will return a decoded buffer that can be either saved in file or used by other APIs.

Example usage:

fs.writeFileSync(silk.decode('input-path-here', { quiet: true }));

void decode(input, output, options)

Parameter Type Required Description
input string/buffer true Bitstream input to decoder
output string true Speech output (file path) from decoder
options object false Optional options, see below for details

For first parameter input, you can pass in either string or buffer. If string is provided, it will be used as path of file; if buffer is provided, it should be the buffer of input file.

No return for this API, decode result will be saved to output path directly.

Example usage:

silk.decode('./input.silk', './output.pcm', { quiet: true });

Options

Attribute Type Default Description
quiet boolean true Whether there is any output into console
lossProb float 0 Simulated packet loss percentage (0-100)
fsHz int 24000 Sampling rate of output signal in Hz

encode

This API will encode speech input to silk format. It's return value and behavior will change depends on the parameters provided.

Stream.Transform encode(options)

Parameter Type Required Description
options object false Optional options, see below for details

This API will return a transform stream, which can be used to consume input stream and generate decode stream.

Exmaple usage:

fs.createReadStream('input-path-here')
  .pipe(silk.encode({ quiet: true }))
  .pipe(fs.createWriteStream('output-path-here'));

buffer encode(input, options)

Parameter Type Required Description
input string/buffer true Speech input to encoder
options object false Optional options, see below for details

For first parameter input, you can pass in either string or buffer. If string is provided, it will be used as path of file; if buffer is provided, it should be the buffer of input file.

This API will return a encoded buffer that can be either saved in file or used by other APIs.

Example usage:

fs.writeFileSync(silk.encode('input-path-here', { quiet: true }));

void decode(input, output, options)

Parameter Type Required Description
input string/buffer true Speech input to encoder
output string true Bitstream output from encoder
options object false Optional options, see below for details

For first parameter input, you can pass in either string or buffer. If string is provided, it will be used as path of file; if buffer is provided, it should be the buffer of input file.

No return for this API, encode result will be saved to output path directly.

Example usage:

silk.encode('./input.silk', './output.pcm', { quiet: true });

Options

Attribute Type Default Description
quiet boolean true Whether there is any output into console
fsHz int 24000 API sampling rate in Hz
fxMaxInternal int 0 Maximum internal sampling rate in Hz
packetLength int 20 Packet interval in ms
rate int 25000 Target bitrate
loss int 0 Uplink loss estimate, in percent (0-100)
complexity int 2 Set complexity, 0: low, 1: medium, 2: high
inbandFEC boolean false Enable inband FEC usage
dtx boolean false Enable DTX
tencent boolean false Add Tencent (Wechat, QQ) header in exported file
tencentAmr boolean false Add Tencent AMR header in exported file

compare

bool compare(input, output, stream)

Compare two audio files.

Parameter Type Required Description
inputA string/buffer true Reference file
inputB string/buffer true File to be tested, should be of same length as inputA (pcm)
options object false Optional options, see below for details

For both inputA and inputB, you can pass in either string or buffer. If string is provided, it will be used as path of file; if buffer is provided, it should be the buffer of input file.

Below are possible options for compare.

Attribute Type Default Description
quiet boolean true Whether there is any output into console
diff boolean false Only determine bit-exactness
fs int 24000 Sampling rate in Hz, max is 48000

Example usage:

const silk = require('silk-sdk');
silk.compare('./ref.pcm', './test.pcm', { quiet: true });

License

This wrap of original Silk SDK code is under MIT License. For Silk SDK itself, please check their license for details.

silk-sdk's People

Contributors

laysent avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

silk-sdk's Issues

传参问题请教

您好!您的例子非常详细,感谢。有个地方不太明白,调用nodejs接口的时候,传递的参数是文件路径,但是接口内部貌似认为该参数是数据流,二者好像不太匹配?

比如解码的接口:
silk-sdk decode [input] [output]
where input is the name of input file and output is the name of output file.
但Decode_Entry()内部调用Decode()时,传入的应该是buffer(我的理解是直接的数据,而非文件路径):
return Decode(env, buffer, bufferLength, quiet ? 1 : 0, (float)loss_prob, API_Fs_Hz);

或者,在Decode_Entry()内部,这两部处理会对文件进行隐含的读取数据操纵吗?
status = napi_get_cb_info(env, info, &argc, args, NULL, NULL);
status = napi_get_buffer_info(env, args[0], &buffer, &bufferLength);
我的理解好像不会自动读取文件的数据,不知道哪里理解有误,望指教。

node-gyp build failed

.../[email protected]/node_modules/silk-sdk install$ node-gyp rebuild
│ gyp info it worked if it ends with ok
│ gyp info using [email protected]
│ gyp info using [email protected] | linux | x64
│ gyp info find Python using Python version 3.10.9 found at "/usr/bin/python3"
│ gyp info spawn /usr/bin/python3
│ gyp info spawn args [
│ gyp info spawn args '/usr/lib/node_modules/pnpm/dist/node_modules/node-gyp/gyp/gyp_
│ gyp info spawn args 'binding.gyp',
│ gyp info spawn args '-f',
│ gyp info spawn args 'make',
│ gyp info spawn args '-I',
│ gyp info spawn args '/home/im20a0/Icalingua-plus-plus/node_modules/.pnpm/silk-sdk@0
│ gyp info spawn args '-I',
│ gyp info spawn args '/usr/lib/node_modules/pnpm/dist/node_modules/node-gyp/addon.gy
│ gyp info spawn args '-I',
│ gyp info spawn args '/home/im20a0/.cache/node-gyp/18.14.2/include/node/common.gypi'
│ gyp info spawn args '-Dlibrary=shared_library',
│ gyp info spawn args '-Dvisibility=default',
│ gyp info spawn args '-Dnode_root_dir=/home/im20a0/.cache/node-gyp/18.14.2',
│ gyp info spawn args '-Dnode_gyp_dir=/usr/lib/node_modules/pnpm/dist/node_modules/no
│ gyp info spawn args '-Dnode_lib_file=/home/im20a0/.cache/node-gyp/18.14.2/<(target_
│ gyp info spawn args '-Dmodule_root_dir=/home/im20a0/Icalingua-plus-plus/node_module
│ gyp info spawn args '-Dnode_engine=v8',
│ gyp info spawn args '--depth=.',
│ gyp info spawn args '--no-parallel',
│ gyp info spawn args '--generator-output',
│ gyp info spawn args 'build',
│ gyp info spawn args '-Goutput_dir=.'
│ gyp info spawn args ]
│ gyp info spawn make
│ gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
│ make: Entering directory '/home/im20a0/Icalingua-plus-plus/node_modules/.pnpm/silk-sd
│ CC(target) Release/obj.target/silk/api/main.o
│ CC(target) Release/obj.target/silk/api/Decoder.o
│ ../api/Decoder.c: In function ‘Decode’:
│ ../api/Decoder.c:436:40: warning: ‘nBytesPerPacket’ may be used uninitialized [-Wmayb
│ 436 | totBytes += nBytesPerPacket[ i + 1 ];
│ | ~~~~~~~~~~~~~~~^~~~~~~~~
│ ../api/Decoder.c:127:15: note: ‘nBytesPerPacket’ declared here
│ 127 | SKP_int16 nBytesPerPacket[ DECODER_MAX_LBRR_DELAY + 1 ], totBytes;
│ | ^~~~~~~~~~~~~~~
│ CC(target) Release/obj.target/silk/api/Encoder.o
│ CC(target) Release/obj.target/silk/api/signalCompare.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_A2NLSF.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_ana_filt_bank_1.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_apply_sine_window.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_array_maxabs.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_autocorr.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_biquad.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_biquad_alt.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_burg_modified.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_bwexpander.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_bwexpander_32.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_CNG.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_code_signs.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_control_audio_bandwidth.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_control_codec_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_corrMatrix_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_create_init_destroy.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_decoder_set_fs.o
│ In file included from ../src/SKP_Silk_main.h:31,
│ from ../src/SKP_Silk_decoder_set_fs.c:28:
│ ../src/SKP_Silk_decoder_set_fs.c: In function ‘SKP_Silk_decoder_set_fs’:
│ ../src/SKP_Silk_SigProc_FIX.h:507:44: warning: ‘memset’ used with length equal to num
│ 507 | #define SKP_memset(a, b, c) memset((a), (b), (c)) /* Dest,
│ | ^~~~~~
│ ../src/SKP_Silk_decoder_set_fs.c:51:9: note: in expansion of macro ‘SKP_memset’
│ 51 | SKP_memset( psDec->outBuf, 0, MAX_FRAME_LENGTH * sizeof( SKP_in
│ | ^~~~~~~~~~
│ CC(target) Release/obj.target/silk/src/SKP_Silk_decode_core.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_decode_frame.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_decode_parameters.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_decode_pitch.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_decode_pulses.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_dec_API.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_detect_SWB_input.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_div_oabi.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_encode_frame_FIX.o
│ ../src/SKP_Silk_encode_frame_FIX.c: In function ‘SKP_Silk_LBRR_encode_FIX’:
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: warning: ‘SKP_Silk_NSQ_del_dec’ reading 64
│ 336 | SKP_Silk_NSQ_del_dec( &psEnc->sCmn, &psEncCtrl->sCmn, &psEnc-
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 337 | psEncCtrl->sCmn.NLSFInterpCoef_Q2, psEncCtrl->PredCoef_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 338 | psEncCtrl->AR2_Q13, psEncCtrl->HarmShapeGain_Q14, psEncCt
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 339 | psEncCtrl->Gains_Q16, psEncCtrl->Lambda_Q10, psEncCtrl->L
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 7 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 8 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 9 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 10 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 11 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 12 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 13 of type ‘con
│ In file included from ../src/SKP_Silk_structs_FIX.h:32,
│ from ../src/SKP_Silk_main_FIX.h:33,
│ from ../src/SKP_Silk_encode_frame_FIX.c:28:
│ ../src/SKP_Silk_main.h:213:6: note: in a call to function ‘SKP_Silk_NSQ_del_dec’
│ 213 | void SKP_Silk_NSQ_del_dec(
│ | ^~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: warning: ‘SKP_Silk_NSQ’ reading 64 bytes f
│ 341 | SKP_Silk_NSQ( &psEnc->sCmn, &psEncCtrl->sCmn, &psEnc->sCmn.sN
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 342 | psEncCtrl->sCmn.NLSFInterpCoef_Q2, psEncCtrl->PredCoef_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 343 | psEncCtrl->AR2_Q13, psEncCtrl->HarmShapeGain_Q14, psEncCt
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 344 | psEncCtrl->Gains_Q16, psEncCtrl->Lambda_Q10, psEncCtrl->L
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 7 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 8 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 9 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 10 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 11 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 12 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 13 of type ‘con
│ ../src/SKP_Silk_main.h:194:6: note: in a call to function ‘SKP_Silk_NSQ’
│ 194 | void SKP_Silk_NSQ(
│ | ^~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c: In function ‘SKP_Silk_encode_frame_FIX’:
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: warning: ‘SKP_Silk_NSQ_del_dec’ reading 64
│ 122 | SKP_Silk_NSQ_del_dec( &psEnc->sCmn, &sEncCtrl.sCmn, &psEnc->sCmn.sNSQ
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 123 | psEnc->sCmn.q, sEncCtrl.sCmn.NLSFInterpCoef_Q2,
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 124 | sEncCtrl.PredCoef_Q12[ 0 ], sEncCtrl.LTPCoef_Q14, sEncCtrl.AR2_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 125 | sEncCtrl.Tilt_Q14, sEncCtrl.LF_shp_Q14, sEncCtrl.Gains_Q16, sEncC
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 126 | sEncCtrl.LTP_scale_Q14 );
│ | ~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 7 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 8 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 9 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 10 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 11 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 12 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 13 of type ‘cons
│ ../src/SKP_Silk_main.h:213:6: note: in a call to function ‘SKP_Silk_NSQ_del_dec’
│ 213 | void SKP_Silk_NSQ_del_dec(
│ | ^~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: warning: ‘SKP_Silk_NSQ’ reading 64 bytes fr
│ 128 | SKP_Silk_NSQ( &psEnc->sCmn, &sEncCtrl.sCmn, &psEnc->sCmn.sNSQ, xfw,
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 129 | psEnc->sCmn.q, sEncCtrl.sCmn.NLSFInterpCoef_Q2,
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 130 | sEncCtrl.PredCoef_Q12[ 0 ], sEncCtrl.LTPCoef_Q14, sEncCtrl.AR2_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 131 | sEncCtrl.Tilt_Q14, sEncCtrl.LF_shp_Q14, sEncCtrl.Gains_Q16, sEncC
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 132 | sEncCtrl.LTP_scale_Q14 );
│ | ~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 7 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 8 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 9 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 10 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 11 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 12 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 13 of type ‘cons
│ ../src/SKP_Silk_main.h:194:6: note: in a call to function ‘SKP_Silk_NSQ’
│ 194 | void SKP_Silk_NSQ(
│ | ^~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c: In function ‘SKP_Silk_LBRR_encode_FIX’:
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: warning: ‘SKP_Silk_NSQ_del_dec’ reading 64
│ 336 | SKP_Silk_NSQ_del_dec( &psEnc->sCmn, &psEncCtrl->sCmn, &psEnc-
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 337 | psEncCtrl->sCmn.NLSFInterpCoef_Q2, psEncCtrl->PredCoef_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 338 | psEncCtrl->AR2_Q13, psEncCtrl->HarmShapeGain_Q14, psEncCt
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 339 | psEncCtrl->Gains_Q16, psEncCtrl->Lambda_Q10, psEncCtrl->L
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 7 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 8 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 9 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 10 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 11 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 12 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 13 of type ‘con
│ ../src/SKP_Silk_main.h:213:6: note: in a call to function ‘SKP_Silk_NSQ_del_dec’
│ 213 | void SKP_Silk_NSQ_del_dec(
│ | ^~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: warning: ‘SKP_Silk_NSQ’ reading 64 bytes f
│ 341 | SKP_Silk_NSQ( &psEnc->sCmn, &psEncCtrl->sCmn, &psEnc->sCmn.sN
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 342 | psEncCtrl->sCmn.NLSFInterpCoef_Q2, psEncCtrl->PredCoef_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 343 | psEncCtrl->AR2_Q13, psEncCtrl->HarmShapeGain_Q14, psEncCt
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 344 | psEncCtrl->Gains_Q16, psEncCtrl->Lambda_Q10, psEncCtrl->L
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 7 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 8 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 9 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 10 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 11 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 12 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 13 of type ‘con
│ ../src/SKP_Silk_main.h:194:6: note: in a call to function ‘SKP_Silk_NSQ’
│ 194 | void SKP_Silk_NSQ(
│ | ^~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: warning: ‘SKP_Silk_NSQ_del_dec’ reading 64
│ 336 | SKP_Silk_NSQ_del_dec( &psEnc->sCmn, &psEncCtrl->sCmn, &psEnc-
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 337 | psEncCtrl->sCmn.NLSFInterpCoef_Q2, psEncCtrl->PredCoef_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 338 | psEncCtrl->AR2_Q13, psEncCtrl->HarmShapeGain_Q14, psEncCt
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 339 | psEncCtrl->Gains_Q16, psEncCtrl->Lambda_Q10, psEncCtrl->L
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 7 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 8 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 9 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 10 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 11 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 12 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:336:17: note: referencing argument 13 of type ‘con
│ ../src/SKP_Silk_main.h:213:6: note: in a call to function ‘SKP_Silk_NSQ_del_dec’
│ 213 | void SKP_Silk_NSQ_del_dec(
│ | ^~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: warning: ‘SKP_Silk_NSQ’ reading 64 bytes f
│ 341 | SKP_Silk_NSQ( &psEnc->sCmn, &psEncCtrl->sCmn, &psEnc->sCmn.sN
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 342 | psEncCtrl->sCmn.NLSFInterpCoef_Q2, psEncCtrl->PredCoef_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 343 | psEncCtrl->AR2_Q13, psEncCtrl->HarmShapeGain_Q14, psEncCt
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 344 | psEncCtrl->Gains_Q16, psEncCtrl->Lambda_Q10, psEncCtrl->L
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 7 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 8 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 9 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 10 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 11 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 12 of type ‘con
│ ../src/SKP_Silk_encode_frame_FIX.c:341:17: note: referencing argument 13 of type ‘con
│ ../src/SKP_Silk_main.h:194:6: note: in a call to function ‘SKP_Silk_NSQ’
│ 194 | void SKP_Silk_NSQ(
│ | ^~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c: In function ‘SKP_Silk_encode_frame_FIX’:
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: warning: ‘SKP_Silk_NSQ_del_dec’ reading 64
│ 122 | SKP_Silk_NSQ_del_dec( &psEnc->sCmn, &sEncCtrl.sCmn, &psEnc->sCmn.sNSQ
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 123 | psEnc->sCmn.q, sEncCtrl.sCmn.NLSFInterpCoef_Q2,
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 124 | sEncCtrl.PredCoef_Q12[ 0 ], sEncCtrl.LTPCoef_Q14, sEncCtrl.AR2_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 125 | sEncCtrl.Tilt_Q14, sEncCtrl.LF_shp_Q14, sEncCtrl.Gains_Q16, sEncC
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 126 | sEncCtrl.LTP_scale_Q14 );
│ | ~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 7 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 8 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 9 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 10 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 11 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 12 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 13 of type ‘cons
│ ../src/SKP_Silk_main.h:213:6: note: in a call to function ‘SKP_Silk_NSQ_del_dec’
│ 213 | void SKP_Silk_NSQ_del_dec(
│ | ^~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: warning: ‘SKP_Silk_NSQ’ reading 64 bytes fr
│ 128 | SKP_Silk_NSQ( &psEnc->sCmn, &sEncCtrl.sCmn, &psEnc->sCmn.sNSQ, xfw,
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 129 | psEnc->sCmn.q, sEncCtrl.sCmn.NLSFInterpCoef_Q2,
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 130 | sEncCtrl.PredCoef_Q12[ 0 ], sEncCtrl.LTPCoef_Q14, sEncCtrl.AR2_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 131 | sEncCtrl.Tilt_Q14, sEncCtrl.LF_shp_Q14, sEncCtrl.Gains_Q16, sEncC
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 132 | sEncCtrl.LTP_scale_Q14 );
│ | ~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 7 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 8 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 9 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 10 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 11 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 12 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 13 of type ‘cons
│ ../src/SKP_Silk_main.h:194:6: note: in a call to function ‘SKP_Silk_NSQ’
│ 194 | void SKP_Silk_NSQ(
│ | ^~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: warning: ‘SKP_Silk_NSQ_del_dec’ reading 64
│ 122 | SKP_Silk_NSQ_del_dec( &psEnc->sCmn, &sEncCtrl.sCmn, &psEnc->sCmn.sNSQ
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 123 | psEnc->sCmn.q, sEncCtrl.sCmn.NLSFInterpCoef_Q2,
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 124 | sEncCtrl.PredCoef_Q12[ 0 ], sEncCtrl.LTPCoef_Q14, sEncCtrl.AR2_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 125 | sEncCtrl.Tilt_Q14, sEncCtrl.LF_shp_Q14, sEncCtrl.Gains_Q16, sEncC
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 126 | sEncCtrl.LTP_scale_Q14 );
│ | ~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 7 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 8 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 9 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 10 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 11 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 12 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:122:9: note: referencing argument 13 of type ‘cons
│ ../src/SKP_Silk_main.h:213:6: note: in a call to function ‘SKP_Silk_NSQ_del_dec’
│ 213 | void SKP_Silk_NSQ_del_dec(
│ | ^~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: warning: ‘SKP_Silk_NSQ’ reading 64 bytes fr
│ 128 | SKP_Silk_NSQ( &psEnc->sCmn, &sEncCtrl.sCmn, &psEnc->sCmn.sNSQ, xfw,
│ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 129 | psEnc->sCmn.q, sEncCtrl.sCmn.NLSFInterpCoef_Q2,
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 130 | sEncCtrl.PredCoef_Q12[ 0 ], sEncCtrl.LTPCoef_Q14, sEncCtrl.AR2_Q1
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 131 | sEncCtrl.Tilt_Q14, sEncCtrl.LF_shp_Q14, sEncCtrl.Gains_Q16, sEncC
│ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│ 132 | sEncCtrl.LTP_scale_Q14 );
│ | ~~~~~~~~~~~~~~~~~~~~~~~~
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 7 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 8 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 9 of type ‘const
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 10 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 11 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 12 of type ‘cons
│ ../src/SKP_Silk_encode_frame_FIX.c:128:9: note: referencing argument 13 of type ‘cons
│ ../src/SKP_Silk_main.h:194:6: note: in a call to function ‘SKP_Silk_NSQ’
│ 194 | void SKP_Silk_NSQ(
│ | ^~~~~~~~~~~~
│ CC(target) Release/obj.target/silk/src/SKP_Silk_encode_parameters.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_encode_pulses.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_enc_API.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_find_LPC_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_find_LTP_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_find_pitch_lags_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_find_pred_coefs_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_gain_quant.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_HP_variable_cutoff_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_init_encoder_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_inner_prod_aligned.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_interpolate.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_k2a.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_k2a_Q16.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LBRR_reset.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_lin2log.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_log2lin.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LPC_inv_pred_gain.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LPC_synthesis_filter.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LPC_synthesis_order16.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LP_variable_cutoff.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LSF_cos_table.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LTP_analysis_filter_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_LTP_scale_ctrl_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_MA.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF2A.o
│ In function ‘SKP_Silk_NLSF2A_find_poly’,
│ inlined from ‘SKP_Silk_NLSF2A’ at ../src/SKP_Silk_NLSF2A.c:102:5:
│ ../src/SKP_Silk_NLSF2A.c:47:19: warning: ‘cos_LSF_Q20’ may be used uninitialized [-Wm
│ 47 | out[1] = -cLSF[0];
│ | ~~~~^~~
│ ../src/SKP_Silk_NLSF2A.c: In function ‘SKP_Silk_NLSF2A’:
│ ../src/SKP_Silk_NLSF2A.c:66:15: note: ‘cos_LSF_Q20’ declared here
│ 66 | SKP_int32 cos_LSF_Q20[SKP_Silk_MAX_ORDER_LPC];
│ | ^~~~~~~~~~~
│ In function ‘SKP_Silk_NLSF2A_find_poly’,
│ inlined from ‘SKP_Silk_NLSF2A’ at ../src/SKP_Silk_NLSF2A.c:103:5:
│ ../src/SKP_Silk_NLSF2A.c:47:19: warning: ‘cos_LSF_Q20’ may be used uninitialized [-Wm
│ 47 | out[1] = -cLSF[0];
│ | ~~~~^~~
│ ../src/SKP_Silk_NLSF2A.c: In function ‘SKP_Silk_NLSF2A’:
│ ../src/SKP_Silk_NLSF2A.c:66:15: note: ‘cos_LSF_Q20’ declared here
│ 66 | SKP_int32 cos_LSF_Q20[SKP_Silk_MAX_ORDER_LPC];
│ | ^~~~~~~~~~~
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF2A_stable.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF_MSVQ_decode.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF_MSVQ_encode_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF_stabilize.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF_VQ_rate_distortion_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF_VQ_sum_error_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NLSF_VQ_weights_laroia.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_noise_shape_analysis_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NSQ.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_NSQ_del_dec.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_pitch_analysis_core.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_pitch_est_tables.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_PLC.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_prefilter_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_process_gains_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_process_NLSFs_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_quant_LTP_gains_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_range_coder.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_regularize_correlations_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_down2.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_down2_3.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_down3.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_AR2.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_ARMA4.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_copy.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_down4.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_down_FIR.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_IIR_FIR.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_up2_HQ.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_private_up4.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_rom.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_resampler_up2.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_residual_energy16_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_residual_energy_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_scale_copy_vector16.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_scale_vector.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_schur.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_schur64.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_shell_coder.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_sigm_Q15.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_solve_LS_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_sort.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_sum_sqr_shift.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_gain.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_LTP.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_NLSF_CB0_10.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_NLSF_CB0_16.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_NLSF_CB1_10.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_NLSF_CB1_16.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_other.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_pitch_lag.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_pulses_per_block.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_sign.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_tables_type_offset.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_VAD.o
│ ../src/SKP_Silk_VAD.c:70:1: warning: ‘static’ is not at beginning of declaration [-Wo
│ 70 | const static SKP_int32 tiltWeights[ VAD_N_BANDS ] = { 30000, 6000, -12000, -1
│ | ^~~~~
│ CC(target) Release/obj.target/silk/src/SKP_Silk_VQ_nearest_neighbor_FIX.o
│ CC(target) Release/obj.target/silk/src/SKP_Silk_warped_autocorrelation_FIX.o
│ SOLINK_MODULE(target) Release/obj.target/silk.node
│ make: g++: No such file or directory
│ make: *** [silk.target.mk:256: Release/obj.target/silk.node] Error 127
│ make: Leaving directory '/home/im20a0/Icalingua-plus-plus/node_modules/.pnpm/silk-sdk
│ gyp ERR! build error
│ gyp ERR! stack Error: make failed with exit code: 2
│ gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/pnpm/dist/node_modul
│ gyp ERR! stack at ChildProcess.emit (node:events:513:28)
│ gyp ERR! stack at ChildProcess.handle.onexit (node:internal/child_process:291:12
│ gyp ERR! System Linux 6.1.0-1-amd64
│ gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/pnpm/dist/node_modules/node-g
│ gyp ERR! cwd /home/im20a0/Icalingua-plus-plus/node_modules/.pnpm/[email protected]/node

│ gyp ERR! node -v v18.14.2
│ gyp ERR! node-gyp -v v9.3.1
│ gyp ERR! not ok
└─ Failed in 20.8s at /home/im20a0/Icalingua-plus-plus/node_modules/.pnpm/[email protected]/node_modules/silk-sdk

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.