addbackbuffer managed directly in java code

This commit is contained in:
guillaume 2010-11-18 15:01:15 +01:00
parent 465a5d4e0c
commit d2d1e257b6
3 changed files with 5 additions and 23 deletions

View file

@ -192,14 +192,6 @@ public abstract class AndroidCameraRecord {
}
/**
* Hook to add back a buffer for reuse in capture.
* Override in a version supporting addPreviewCallBackWithBuffer()
* @param buffer buffer to reuse
*/
public void addBackCaptureBuffer(byte[] buffer) {}
private void updateVisibility() {
if (!visibilityChangeable) {

View file

@ -41,11 +41,6 @@ public class AndroidCameraRecordBufferedImpl extends AndroidCameraRecordImpl {
camera.setPreviewCallbackWithBuffer(cb);
}
@Override
public void addBackCaptureBuffer(byte[] buffer) {
camera.addCallbackBuffer(buffer);
}
@Override
public void onCameraStarted(Camera camera) {
super.onCameraStarted(camera);
@ -62,8 +57,8 @@ public class AndroidCameraRecordBufferedImpl extends AndroidCameraRecordImpl {
}
@Override
protected void badBufferLengthReceived(byte[] buffer, int expectedBufferLength) {
super.badBufferLengthReceived(buffer, expectedBufferLength);
addBackCaptureBuffer(buffer);
public void onPreviewFrame(byte[] data, Camera camera) {
super.onPreviewFrame(data, camera);
camera.addCallbackBuffer(data);
}
}

View file

@ -60,7 +60,8 @@ public class AndroidCameraRecordImpl extends AndroidCameraRecord implements Prev
Size s = camera.getParameters().getPreviewSize();
int expectedBuffLength = s.width * s.height * 3 /2;
if (expectedBuffLength != data.length) {
badBufferLengthReceived(data, expectedBuffLength);
Log.e("Linphone", "onPreviewFrame called with bad buffer length " + data.length
+ " whereas expected is " + expectedBuffLength + " don't calling putImage");
return;
}
@ -74,7 +75,6 @@ public class AndroidCameraRecordImpl extends AndroidCameraRecord implements Prev
double currentTimeElapsed = 0.8 * (curTime - lastFrameTime) / 1000 + 0.2 * timeElapsedBetweenFrames;
if (1 / currentTimeElapsed > fps) {
// Log.d("Linphone", "Clipping frame " + Math.round(1 / currentTimeElapsed) + " > " + fps);
addBackCaptureBuffer(data);
return;
}
lastFrameTime = curTime;
@ -85,10 +85,5 @@ public class AndroidCameraRecordImpl extends AndroidCameraRecord implements Prev
}
// Hook
protected void badBufferLengthReceived(byte[] data, int expectedBuffLength) {
Log.e("Linphone", "onPreviewFrame called with bad buffer length " + data.length
+ " whereas expected is " + expectedBuffLength + " don't calling putImage");
}
}