Questions tagged [vdsp]

vDSP is the (vector) digital signal processing portion of Apple’s Accelerate framework.

vDSP is the (vector) digital signal processing portion of Apple’s Accelerate framework, part of OS X and iOS. It provides a variety of vector and array functions for signal processing and other applications. vDSP uses hardware features such as SIMD (Single Instruction Multiple Data) to provide high performance.

121 questions
1
vote
1 answer

need explanation of vDSP_zcoher()

im currently working with raw audio data and to compare two pieces of signal i came across vDSP_zcoher() and i have several questions about that: why is the output a complex array and not real. i expected a real array just like the output of a…
1
vote
1 answer

Computing average of array of doubles in a vectorized way?

Given an array V of doubles the goal is to compute the average A. The usually recommended solution is something like: double A = V[0]; for (int i = 1; i
udev
  • 59
  • 5
1
vote
1 answer

vDSP_fft_zrip understanding the transformed DSPSplitComplex content

Assuming "A" is a real vector packed (with vDSP_ctoz) in the proper way, doing: vDSP_fft_zrip(setupReal, &A, 1, FFT_LENGTH_LOG2, FFT_FORWARD); Will transform my real content to it's frequency representation. What do then the following values…
Flavien Volken
  • 19,196
  • 12
  • 100
  • 133
1
vote
3 answers

iPhone4s, iPhone 5 max FFTs per second using vDSP

My team and I are planning to build an external accessory for iOS that will sample ultrasonic sound at 256KHZ. It's a lot and I am wondering whether iOS vDSP can do the conversion from time domain to frequency domain for 256,000 samples/sec, or we…
Sil
  • 11
  • 1
1
vote
2 answers

Matlab FFT (Fast Fourier Transform) function of non log-base2 numbers

I have an app that I am developing that utalizes Apple's Accelerate Framework FFT function and I am trying to make it mimic the functionality of Matlab's FFT function. I have my current code set up to output exactly the same way as I am doing so in…
MrHappyAsthma
  • 6,332
  • 9
  • 48
  • 78
1
vote
1 answer

How do I use vDSP functions for Short Time Fourier Transform?

I trying to understand how to use vDSP functions for STFT. So I use FFT code from apple's expamles and I can get FFT of first 1024 frames but how could I get FFT of next 1024 - 2047 frames and so on, until the end of file.. (in this case I imagine…
andrey
  • 671
  • 1
  • 9
  • 20
0
votes
1 answer

blackfin gcc-toolchain linking error undefined reference to `Ret_Add'

Following discution: https://blackfin.uclinux.org/gf/project/uclinux-dist/forum/?_forum_action=ForumMessageBrowse&thread_id=46813&action=ForumBrowse&forum_id=39 I'm converting the FFT algo for VDSP compiler to bare metal app to run on core B and…
william pagnon
  • 335
  • 3
  • 16
0
votes
0 answers

Swift & v_DSP: Inverse FFT of FFT not returning approximately the same function

Doing some filtering in Swift for a signal processing application. While following the documentation on v_DSP, I put into practice carrying out an FFT() and then a IFFT() of the output. The implementation is as follows: func filter() throws ->…
Tahmid Azam
  • 566
  • 4
  • 16
0
votes
1 answer

Autospectrum computation with vDSP_zaspec doesn't work

I try to compute the autospectrum of a recorded signal, I use the function vDSP_zaspec. Normally the output array is real. class func autoSpectrum (input: [Float])->[Float] { var real = [Float](input) var imaginary =…
Jeff 974
  • 69
  • 1
  • 4
0
votes
1 answer

vDSP.FFT Swift enum vs. vDSP_fft_zrip

Apple has provided a Swift vDSP enum for more intuitively doing operations. With this you can convert less readable code like vDSP_vmul(arrayA, 1, arrayB, 1, arrayC, 1, vDSP_length(arrayA.count)) to let arrayC = vDSP.multiply(arrayA,…
CosmicVarion
  • 116
  • 9
0
votes
0 answers

Find median for an image array for background estimation fast in Swift/ObjectiveC

I need to estimate the background across multiple frames of a stationary video (not-moving camera). I have a number of frames and want to calculate the median for each pixel across all frames (usually 10 to 100 frames). I was able to do that with…
Mando
  • 11,414
  • 17
  • 86
  • 167
0
votes
0 answers

iOS fast image difference comparison

Im looking for a fast way to compare two frames of video, and decide if a lot has changed between them. This will be used to decide if I should send a request to image recognition service over REST, so I don't want to keep sending them, until there…
Damian Dudycz
  • 2,622
  • 19
  • 38
0
votes
1 answer

What should I feed to real FFT functions in vDSP?

The function signature of vDSP_fft_zrop (actually most of FFT functions in vDSP) accepts two DSPSplitComplex structures as input and output. However, for real FFT calculations, forward FFT accepts an input of only real values, while backward FFT…
jiandingzhe
  • 1,881
  • 15
  • 35
0
votes
1 answer

Bad access exception when using vDSP

I am trying to perform a FFT in swift using vDSP but when I call the absolute function I get a bad access exception: Thread 3: EXC_BAD_ACCESS (code=EXC_I386_GPFLT). I suspect that I have made some error in managing the memory when using unsafe…
BenJacob
  • 957
  • 10
  • 31
0
votes
2 answers

How to add all elements of vector (int16) in opencl on vector processor SIMD?

While doing matrix multiplication on SIMD, I am facing problem in adding all elements of the vector. float16 sum = row * column; Now as sum is vector variable of 16 values. I want to add all the values for matrix multiplication. Is there a built in…
1 2 3
8 9