当前位置:编程学习 > wap >>

android录音buffer数据实时存储到txt

  求助,我使用audiorecord录制声音,放到buffe中,怎么把缓存里面的数据全部保存到txt文档或excel文件中啊。有源码最好了。另数字低通滤波器JAVA的实现,要对数据进行处理如何操作。

                public RecordThread(AudioRecord audioRecord, int recBufSize) {
                        this.audioRecord = audioRecord;
                        this.recBufSize = recBufSize;
                }
                public void run() {
                        try {
                                short[] buffer = new short[recBufSize];
                                audioRecord.startRecording();// 开始录制
                                while (isRecording) {
                                        // 从MIC保存数据到缓冲区
                                        int bufferReadResult = audioRecord.read(buffer, 0,
                                                        recBufSize);
                                        short[] tmpBuf = new short[bufferReadResult / (rateX)];
                                        for (int i = 0, ii = 0; i < tmpBuf.length; i++, ii = i
                                                        * rateX) {
                                                tmpBuf[i] = buffer[ii];
                                        }
                                        synchronized (inBuf) {//
                                                inBuf.add(tmpBuf);// 添加数据
                                        }
                                }
                                audioRecord.stop();
                        } catch (Throwable t) {
                        }
                }
        }
        

     录音 buffer 存储 滤波 android --------------------编程问答-------------------- 不是用OutputFileStream寫到文件中嗎? --------------------编程问答-------------------- 和下载一样啊   读到一定的缓存 就写到文件里面去
byte[] buf = new byte[1024 * 10];
int read = 0;
while ((read = inputStream.read(buf)) != -1) {
       file.write(buf, 0, read);} --------------------编程问答--------------------
引用
和下载一样啊   读到一定的缓存 就写到文件里面去
byte[] buf = new byte[1024 * 10];
int read = 0;
while ((read = inputStream.read(buf)) != -1) {
       file.write(buf, 0, read);}


存储到txt里面呢
FileOutputStream outStream = new FileOutputStream("/sdcard/"+name+".txt",true);
有这方面的例子或者讲解吗? --------------------编程问答-------------------- 你有缓存变量,直接贴代码。
BufferedOutputStream out=new BufferedOutputStream(new FileOutputStream("XXX.txt")); 
byte[] b= new byte[1024];
out.write(b, 0, b.length); 
当然,我这是简单的写法,你还要判断一下,因为我这里是小于等于1024个字节,如果多余,你就要使用while循环
--------------------编程问答--------------------
public void saveToSDCard(String name, String content) throws Exception{
         //获取外存储设备路径Environment.getExternalStorageDirectory()
 File file = new File(Environment.getExternalStorageDirectory(),name+".txt");
 FileOutputStream outStream = new FileOutputStream(file);
         outStream.write(content.getBytes());
     outStream.close();

}

看了这样一段代码,没有理解整个存储的流程 --------------------编程问答--------------------        count = System.in.read(buffer);   
read(byte)不能读short[] buffer --------------------编程问答-------------------- 先存储到一个临时文件 然后 stream 到一个 txt文件
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,