wear headphones On May 27, 12:52 am, neha jain <[email protected]> wrote: > thanx 4 rply... > but if i turn down volume control thn will not be able to hear playbackd > voice. > and how to seperate mic and speaker .. > > > > > > > > On Thu, May 26, 2011 at 3:19 PM, Ashwani Kumar <[email protected]> wrote: > > When the mic can hear the speaker then there is "acoustical feedback > > howling" because the sound goes around and around. > > To stop the howling: > > a) Turn down the gain control or volume control. > > b) Separate the mic and speaker and point them away from each other. > > c) Use a good speaker with a flat frequency response instead of a cheap > > speaker that has a peak in its frequency response > > > On Thu, May 26, 2011 at 5:53 PM, neha <[email protected]> wrote: > > >> Denial, > > >> I tried what u said,but it dint solve my problem but producing more > >> echo.. > >> I think its happening bcoz voice coming from speaker is also going in > >> mic. > > >> If u have ny idea about it,Plz help. > > >> On May 26, 1:20 pm, Daniel Drozdzewski <[email protected]> > >> wrote: > >> > On Thu, May 26, 2011 at 11:59 AM, neha <[email protected]> wrote: > >> > > Thanx alot 4 rply > >> > > but if i use large buffer size ,it produce delay between record and > >> > > play. > > >> > Neha, > > >> > All I suggested was to use the larger of values returned by both > >> > getMinBufferSize() calls for all 3 aspects: recording, playing and > >> > transfer of the data instead of arbitrary 400. > > >> > > On May 26, 11:46 am, Daniel Drozdzewski <[email protected] > > >> > > wrote: > >> > >> Neha, > > >> > >> Your echo comes from the fact that you are using 400 bytes buffer to > >> > >> transfer the recording to the playback. > >> > >> It will physically take time to fill that buffer and then process. > > >> > >> Making the buffer much smaller might not necessarily work either, as > >> > >> it will mean more overhead of the recording + playing management in a > >> > >> unit of time. However adjusting the buffer size would be a first > >> step. > > >> > >> You are using getMinBufferSize() method, but you ignore the returned > >> > >> values, when it comes to the buffer used to transfer the recording to > >> > >> the playback track. > > >> > >> You should use Math.max(recordingMinBufferSize, > >> playbackMinBufferSize) > >> > >> as a buffer size in all 3 cases. > >> > >> You should also write only bytesRead bytes, rather than writing full > >> > >> buffer every time. > > >> > >> Daniel > > >> > >> On Thu, May 26, 2011 at 10:28 AM, neha <[email protected]> wrote: > >> > >> > Is there any way to synchronize the capturing and playback of audio > >> > >> > data in Android? > > >> > >> > I am using audioRecord/track to achieve this.But its producing > >> echo. > >> > >> > Is there any way to cancel echo. > >> > >> > My code is- > >> > >> > { > >> > >> > isRecording=true; > > >> > >> > bufferSize = > > >> AudioRecord.getMinBufferSize(8000,AudioFormat.CHANNEL_CONFIGURATION_MONO,Au > >> dioFormat.ENCODING_PCM_16BIT); > >> > >> > audioRecord = new > >> AudioRecord(MediaRecorder.AudioSource.MIC, > >> > >> > 8000, > > >> AudioFormat.CHANNEL_CONFIGURATION_MONO,AudioFormat.ENCODING_PCM_16BIT, > >> > >> > bufferSize); > > >> > >> > audioRecord.startRecording(); > > >> > >> > int BUFFER_SIZE_IN_BYTES > > >> =AudioTrack.getMinBufferSize(RECORDER_SAMPLERATE,AudioFormat.CHANNEL_CONFIG > >> URATION_MONO,RECORDER_AUDIO_ENCODING); > >> > >> > AudioTrack audioTrack = new > >> > >> > AudioTrack(AudioManager.STREAM_SYSTEM, > > >> 8000,AudioFormat.CHANNEL_CONFIGURATION_MONO, > > >> AudioFormat.ENCODING_PCM_16BIT, BUFFER_SIZE_IN_BYTES, > > >> AudioTrack.MODE_STREAM); > >> > >> > byte[] buffer=new byte[400]; > >> > >> > audioTrack.play(); > >> > >> > while (isRecording) { int bytesRead > >> = audioRecord.read(buffer, > >> > >> > 0, > >> > >> > 400); > >> > >> > int bytesWritten = > >> audioTrack.write(buffer, 0, 400); > > >> > >> > } > > >> > >> > -- > >> > >> > You received this message because you are subscribed to the Google > >> > >> > Groups "Android Developers" group. > >> > >> > To post to this group, send email to > >> [email protected] > >> > >> > To unsubscribe from this group, send email to > >> > >> > [email protected] > >> > >> > For more options, visit this group at > >> > >> >http://groups.google.com/group/android-developers?hl=en > > >> > >> -- > >> > >> Daniel Drozdzewski > > >> > > -- > >> > > You received this message because you are subscribed to the Google > >> > > Groups "Android Developers" group. > >> > > To post to this group, send email to > >> [email protected] > >> > > To unsubscribe from this group, send email to > >> > > [email protected] > >> > > For more options, visit this group at > >> > >http://groups.google.com/group/android-developers?hl=en > > >> > -- > >> > Daniel Drozdzewski > > >> -- > >> You received this message because you are subscribed to the Google > >> Groups "Android Developers" group. > >> To post to this group, send email to [email protected] > >> To unsubscribe from this group, send email to > >> [email protected] > >> For more options, visit this group at > >>http://groups.google.com/group/android-developers?hl=en > > > -- > > You received this message because you are subscribed to the Google > > Groups "Android Developers" group. > > To post to this group, send email to [email protected] > > To unsubscribe from this group, send email to > > [email protected] > > For more options, visit this group at > >http://groups.google.com/group/android-developers?hl=en
-- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

