如何录制然后播放音频而不保存到文件android

时间:2016-01-02 09:15:59

标签: file-descriptor android-mediarecorder

我正在开发类似Talking Tom

的应用

我尝试录制音频,保存到文件,然后在android中使用Mediaplayer播放,但保存文件然后播放有一点延迟。它不像Talking Tom

那样平滑

我看到MediaRecorder& MediaPlayerFileDescriptorsetOutputFile中接受参数setDataSource SoundPool

有没有办法录制然后播放而不保存到文件?

Mediaplayer& byte [] buffer可以使用像module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), copy: { files: [ {expand: true,cwd:"js/" ,src: ['libs/*'], dest: '../test/js/libs/'}, {expand: true,cwd:"js/" , src: ['models/*'], dest: '../test/js/models/'} ] } }); grunt.loadNpmTasks('grunt-contrib-copy'); grunt.registerTask("testcopy",["copy"] ); ); 这样的字节数组来发声吗?

请帮忙!

1 个答案:

答案 0 :(得分:1)

AudioRecord能够录制到缓冲区,无需保存到文件即可播放。 MediaRecorder也可以录制视频。 http://developer.android.com/reference/android/media/AudioRecord.html

在stackoverflow上回答了之前的两个相关问题:

AudioRecord - how to get data in to buffer?

Android AudioRecord to File then use AudioTrack for Playback

我不知道soundpool是否可以与数组一起使用。我看到并遵循的样本创建了多个soundpool:

addDomHandler