-Updating readme to coincide with most recent changes

master
Vincent Pizzo 2013-04-12 11:14:22 -05:00
parent 5185b9500b
commit bb2efc1c4e
1 changed files with 50 additions and 41 deletions

View File

@ -18,74 +18,83 @@ libvorbis - Vorbis Encoder/Decoder example for Android/JNI.
* To record to a file
<pre>
VorbisRecorder vorbisRecorder = new VorbisRecorder(fileToSaveTo);
VorbisRecorder vorbisRecorder = new VorbisRecorder(fileToSaveTo, recordHandler);
//Start recording with a sample rate of 44KHz, 2 channels (stereo), at 0.2 quality
vorbisRecorder.start(44100, 2, 0.2f);
//or
//Start recording with a sample rate of 44KHz, 2 channels (stereo), at 128 bitrate
vorbisRecorder.start(44100, 2, 128000);
</pre>
* To read from other input, create a custom ```EncodeFeed```
<pre>
EncodeFeed encodeFeed = new EncodeFeed() {
@Override
public long readPCMData(byte[] pcmDataBuffer, int amountToWrite) {
//Read data from pcm data source
}
@Override
public long readPCMData(byte[] pcmDataBuffer, int amountToWrite) {
//Read data from pcm data source
}
@Override
public int writeVorbisData(byte[] vorbisData, int amountToRead) {
//write encoded data to where ever
}
@Override
public int writeVorbisData(byte[] vorbisData, int amountToRead) {
//write encoded data to where ever
}
@Override
public void stop() {
//The native encoder has finished
}
@Override
public void stop() {
//The native encoder has finished
}
@Override
public void start() {
//The native encoder has started
}
};
VorbisRecorder vorbisRecorder = new VorbisRecorder(encodeFeed);
@Override
public void stopEncoding() {
//The encoder should wrap up until the native encoder calls stop()
}
@Override
public void start() {
//The native encoder has started
}
};
VorbisRecorder vorbisRecorder = new VorbisRecorder(encodeFeed, recordHandler);
vorbisRecorder.start(...);
</pre>
* Decoder
* Decode from file
<pre>
VorbisPlayer vorbisPlayer = new VorbisPlayer(fileToPlay);
VorbisPlayer vorbisPlayer = new VorbisPlayer(fileToPlay, playerHandler);
vorbisPlayer.start();
</pre>
* To write to custom output, create a custom ```DecodeFeed```
<pre>
DecodeFeed decodeFeed = new DecodeFeed() {
@Override
public int readVorbisData(byte[] buffer, int amountToWrite) {
//Read from vorbis data source
}
@Override
public int readVorbisData(byte[] buffer, int amountToWrite) {
//Read from vorbis data source
}
@Override
public void writePCMData(short[] pcmData, int amountToRead) {
//Write encoded pcm data
}
@Override
public void writePCMData(short[] pcmData, int amountToRead) {
//Write encoded pcm data
}
@Override
public void stop() {
//Stop called from the native decoder
}
@Override
public void stop() {
//Stop called from the native decoder
}
@Override
public void startReadingHeader() {
//Called from the native decoder to read header information first
}
@Override
public void startReadingHeader() {
//Called from the native decoder to read header information first
}
@Override
public void start(DecodeStreamInfo decodeStreamInfo) {
//Called from the native decoder that we're ready and have processed the header information
}
}
@Override
public void start(DecodeStreamInfo decodeStreamInfo) {
//Called from the native decoder that we're ready and have processed the header information
}
};
VorbisPlayer vorbisPlayer = new VorbisPlayer(decodeFeed);
...
</pre>