Question

NOTE: I know neither the iPhone SDK or Objective C, just wondering if possible.

I know obviously it would have to be on a Jailbroken device anyway, but it is technically possible for a iPhone call recording application to be made, or is it not possible to hook into the calls or the audio input/output?

I know obviously there would be no 'official' way of doing it and certainly not from an App Store application. And I know there are call recording apps which place outgoing calls through their own servers.

Just wondering if the reason it doesn't exist yet is just because no-one has coded it or if it's not actually possible?

Was it helpful?

Solution 5

iOS Tweak Developer Elias Limneos has released an app on Cydia called Audio Recorder (originally called Call Recorder).

So it's finally possible to record calls locally on the device without having to call via premium rate numbers!

Audio beeps can be disabled but there is a forced 'This Call is being Recorded' message played at the start to the other party.

It currently only works with the iPhone 4S (Loudspeaker only) and iPhone 5 and a license costs $3.99 per device.

EDIT - Looks like I was too slow, since I purchased this last week it has already been discontinued although existing purchasers can continue to use it there will be no further updates.

I, Elias Limneos. sadly announce that I decided to stop distributing and working on "Audio Recorder" application. As of today, Audio Recorder is discontinued.

Source: http://limneos.net/audiorecorder.html

EDIT - He's changed his mind again and is available for sale via his own Cydia repo.

OTHER TIPS

On Jailbroken iPhones, SpoofApp does call recording. I am not a laywer, but note that recording calls may not be legal depending on where you are and/or where the other party is.

For the UK market there is also Call Recorder . It uses a premium rate number to record the call but it's available for non jailbroken iphones too.

Just recently I discovered an app actually able to do it properly, but just for SIP calls.

It's called MobileVOIP and it's on Apple Store! :D

So I hope this does answer your question. Even if it's not recording a phone call, I believe it shows it's theoretically possible.

There is no easy way since that part of the software and hardware is secured.

Of course it's possible in the theoretical sense as the voice recorder and music mixing apps show the power of signal processing hardware and software has access to both streams of sound.

Someone would need to re-do some or all of the iOS code and change it. But what's simple in concept is surely complex and perhaps too costly to happen in reality.

You simply take the code that listens to the stream of microphone data inside the mobile Phone app and dump a file to storage as well as encoding it for voice calling. If that app calls an API rather than doing that processing itself, then you would implement the recording there. You would do the same for the incoming data and could either add time markers for later mixing or mix it down as the call is being handled.

This code is of course not in place using the documented API so you would need to patch the app after a jailbreak or uncover an undocumented API to actually implement this feature.

The use case is so obvious that if this were sitting there, hundreds of apps would be doing this already.

It's definitely possible, and almost certainly unnecessary to read directly from memory. Apple's private APIs are discoverable using both Xcode and certain 3rd party Objective-C class browsers.

If you need your unasked question answered ("How would one implement an iPhone call recorder?"), Then I agree with Josh K: head over to stackoverflow.com. Or get in touch with the folks at Rogue Amoeba, as they've already solved this problem on Mac OS X, which shares the exact same low-level libraries as iOS.

Yes it's clearly possible at least by reading directly in the memory even if hook is probably much easier to do.

Licensed under: CC-BY-SA with attribution
Not affiliated with apple.stackexchange
scroll top