Is there a way to write an app which records phone calls in android via android-sdk?
so that you can store phonecalls as .wav or something else?
I like to write something like a dictaphone.
Do you think, there is a chance to make this possible?
No. Android does not allow you to record the audio stream due to legal terms.
However due to buggy hardware implementations it is possible, on some devices, to record the audio stream.
Related
I search about it a lot but got nothing. I just want to know is it possible or not? If yes than how?
No.
The simple fact is the microphone / input audio stream during a phone call is not able to be pre-processed or replaced with another stream of any form.
So simply while one would think its easy to use media during a call, it simply is not possible due to the way the android system processes the audio.
I have following requirements :
When call is received in android phone instead of streaming microphone output I want to stream a recorded audio every time I receive call.
So that it should be like a virtual mic.
Is it possible to do this?
Is there any API/handlers to do it?
Any references?
From what I've seen, there is no dedicated API for this, nor is there any possible way to do this without rooting the Android device, which can be a very long process depending on the device. I don't know much besides that, however, such as how to do this with a rooted device, so you can probably find better explanations of that from another answer or somewhere else online.
I'm currently searching for options on how to manipulate audio on android. The goal is to process audio from the microphone in real time during a phone call. The best solution would be to do this on a native call. But rebuilding a telephone app (no VOIP) would be fine too. Are there any ways to achieve this with Android APIs (also undocumented)?
If not, which steps would be necessary to get things running?
On iOS there are some apps which manipulate voice but create a VOIP connection. I heard that on Android you can "clone" the telephone app and eventually feed it with your own audio stream? Aren't there apps which add noises during a call? What kind of APIs are involved?
The best solution would be to do this on a native call.
This is not possible. You have no access to the in-call audio stream, except perhaps in speakerphone mode.
But rebuilding a telephone app (no VOIP) would be fine too.
The last official word from Google (2010), the entire OS has no access to the in-call audio stream, as it is all handled at a lower level. Even if newer versions of Android do have access to the in-call audio stream, "rebuilding a telephone app" is only possible if you are creating custom firmware.
As a drawback i could imagine to record the Downlink Stream using the MediaRecorder API and write it back to hardware using AudioTracks write() method. By this i could manipulate incoming voice. But still I think this wont work during phone calls. And I do not see a way to choose different hardware destinations.
I want to make an app to record voice call. I have read many relevant articles about it. I am aware that latest Galaxy comes with this feature. But wanted to know a few things:
When we use the native AudioRecord::start(), where is the recorded data stored in the File System?
What is the format of the recorded data?
how to access that data to manipulate it?
Thanks in advance.
I want to make an app to record voice call.
That is not possible in Android, as SDK applications do not have access to the in-call audio stream.
I am aware that latest Galaxy comes with this feature.
This was implemented by the device manufacturer in firmware. If you create your own custom firmware, this may be possible.
When we use the native AudioRecord::start(), where is the recorded data stored in the File System?
It does not store "recorded data" "in the File System". You get byte[] of data -- it is up to you to do something with it.
What is the format of the recorded data?
8-bit or 16-bit PCM, as you request via the constructor.
Is it possible to read an audio stream during (GSM) phone call? I would like to write an encoding application, and I do not want to go with SIP&VoIP. Thank you.
This will be phone and OS dependent and there are several apps that claim they record audio (Total Recall, Record my call on Android) but they generally seem to record via the microphone meaning the far end sound is poor.
I don't believe either the apple or android api's support access to the raw voice stream today.
Something to be aware of also is that it is not always legal to do this without informing the other party (i.e. the person on the other end of the call that you are planning to 'capture' the voice stream somehow) in many places - this may not be relevant for your particular plans but worth mentioning anyway.
If you have the option of doing the work in the network or on a PABX then you can create a basic (if not very efficient) solution by simply creating a three way (or conference) call.