Skip to content

Commit

Permalink
Added simple stream recorder.
Browse files Browse the repository at this point in the history
  • Loading branch information
radzio committed Jan 10, 2012
1 parent 616d32c commit 379f06c
Showing 1 changed file with 63 additions and 0 deletions.
63 changes: 63 additions & 0 deletions src/net/droidlabs/tools/audio/StreamRecorder.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
package net.droidlabs.tools.audio;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

import android.os.Environment;
import android.util.Log;

public class StreamRecorder
{
private String extStorageDirectory;
private boolean continueRecording;
private String fileName;
private URL url;
private static final String TAG = "StreamRecorder";
public StreamRecorder()
{
extStorageDirectory = Environment.getExternalStorageDirectory().toString();
continueRecording = true;
}

public void startRecording(URL url, String fileName)
{
this.url = url;
this.fileName = fileName;
Log.d(TAG, "startRecording");
new Thread("recordingThread")
{
public void run()
{
try
{
InputStream inputStream = StreamRecorder.this.url.openStream();
File outputSource = new File(extStorageDirectory, StreamRecorder.this.fileName);
FileOutputStream fileOutputStream = new FileOutputStream(outputSource);

int count;
int bytesRead = 0;

while ((count = inputStream.read()) != -1 && continueRecording)
{
fileOutputStream.write(count);
bytesRead++;
}
fileOutputStream.close();
}
catch (IOException ex)
{

}
}
}.start();
}

public void stopRecording()
{
Log.d(TAG, "stopRecording");
this.continueRecording = false;
}
}

0 comments on commit 379f06c

Please sign in to comment.