ios - Accelerate framework "sign" function -
i'm trying find super fast way of getting sign of each value in vector. hoping find function in accelerate framework this, couldn't find one. here's do:
float *inputvector = .... // audio vector int length = ...// length of input vector. float *outputvector = ....// result for( int = 0; i<length; i++ ) { if( inputvector[i] >= 0 ) outputvector[i] = 1; else outputvector[i] = -1; }
ok, think i've found way...
vvcopysignf() "copies array, setting sign of each value based on second array."
so, 1 method make array of 1s, use function change sign of 1s based on input array.
float *ones = ... // vector filled 1's float *input = .... // input vector float *output = ... // output vector int buffersize = ... // size of vectors; vvcopysignf(output, ones, input, &buffersize); //output array of -1s , 1s based sign of input.
Comments
Post a Comment