I am currently trying to create an app to transmit over a 300 MHz frequency and was wondering if it's possible to do over bluetooth since Iphone's don't have a RF transmitter.
Related
I have a Pi camera module which is attached to pi B board. I am streaming the Live video from Pi camera into Pc Simulink via Edimax Wifi Adaptor Using Router.
By using 10fps and res 320*240, I am facing delay into my Simulink video viewer. Why this delay happens either the speed or range of wifi adaptor or my Laptop processor (i have intel i3 with 4gb RAM 2.4GHZ)
Is there is the way to the reduce the delay?
Since you are using low image resolution and frame-rate, the only reason you are experiencing such delay can be the limited bandwidth of the WiFi.
If you can, try to wire the Raspberry Pi with an Ethernet connection, you will considerably increase the bandwidth and reduce potential delays of the video transmission.
My boss wants me to develop an app, using iPhone to recognize sound frequencies from 20-24 Hz that humans cannot hear. (iPhone frequency response: 20 Hz to 20 kHz)
Is this possible? If yes, can anyone give me some advice? Where to start?
Before you start working on this you need to make sure that the iPhone hardware is physically capable of detecting such low frequencies. Most microphones have very poor sensitivity at low frequencies, and consumer analogue input stages typically have a high pass filter which attenuates frequencies below ~ 30 Hz. You need to try capturing some test sounds containing the signals of interest with an existing audio capture app on an iPhone and see whether the low frequency components get recorded. If not then your app is a non-starter.
What you're looking for is a fast fourier transform. This is the main algorithm used for converting a time based signal to a frequency based one.
It seems the Accelerate framework has some FFT support, so I'd start looking at that, there are several posts about that already.
Apple has some sample openCL code for doing this on a mac, but AFAIK openCL isn't on iOS yet.
You'd also want to check the frequency response of the microphone ( I think there are some apps out doing oscilloscope displays from the mic that would help here).
You basic method would be to take a chunk of sound from the mic. Filter it and then maybe shift it down in frequency, depending on what you need to do with it.
Is it possible output both live audio and MIDI RTP data from Bluetooth device of iPhone? Looking to leverage the Core MIDI library. Crucial is the ability to fire off both sources simultaneously with no latency.
Many thanks........
I'm using Audio Queue Framework with sample rate 44100 Hz to record data from the microphone on iPhone.
Then I test frequency response for iPhone 4 and iPhone 4s.
iPhone 4s mic is blind on frequencies higher than 20 kHz unlike iPhone 4.
It seems like the microphone is better on previous model.
Is it hardware limitation? Is it software limitation? Or some misconfiguration (enabled noise compession or something else)?
No one can hear frequencies that high - for most people, the threshold is somewhere around 15kHz.
So the 4s cuts out unnecessary frequencies - potentially making it better than the iPhone 4.
What is the lowest input->output audio passthru latency possible with iPhone 4 / iOS 4.2? I just want to take input from the mic and play it over the headphones with the smallest delay. I'd like to know the theoretical minimum and minimum actually observed, if possible.
An app can usually configure Audio Unit RemoteIO input/record and output/play buffers of length 256 at a 44.1k sample rate. Thus 6 to 12 mS is probably a lowest bound, just from the minimum iOS API buffer filling/handling delay (and not including OS, driver, DAC, amp, speaker, and speed-of-sound-in-air time-of-flight delays).