Ensure copied filters have right size

pull/559/head
Mattia Iavarone 6 years ago
parent 83307c527e
commit 7b038f9588
  1. 6
      cameraview/src/main/java/com/otaliastudios/cameraview/video/SnapshotVideoRecorder.java

@ -107,6 +107,7 @@ public class SnapshotVideoRecorder extends VideoRecorder implements RendererFram
public void onFilterChanged(@NonNull Filter filter) { public void onFilterChanged(@NonNull Filter filter) {
mCurrentFilter = filter.copy(); mCurrentFilter = filter.copy();
if (mEncoderEngine != null) { if (mEncoderEngine != null) {
mCurrentFilter.setSize(mResult.size.getWidth(), mResult.size.getHeight());
mEncoderEngine.notify(TextureMediaEncoder.FILTER_EVENT, mCurrentFilter); mEncoderEngine.notify(TextureMediaEncoder.FILTER_EVENT, mCurrentFilter);
} }
} }
@ -161,6 +162,10 @@ public class SnapshotVideoRecorder extends VideoRecorder implements RendererFram
} }
TextureMediaEncoder videoEncoder = new TextureMediaEncoder(videoConfig); TextureMediaEncoder videoEncoder = new TextureMediaEncoder(videoConfig);
// Adjustment
mResult.rotation = 0; // We will rotate the result instead.
mCurrentFilter.setSize(mResult.size.getWidth(), mResult.size.getWidth());
// Audio // Audio
AudioMediaEncoder audioEncoder = null; AudioMediaEncoder audioEncoder = null;
if (mResult.audio == Audio.ON || mResult.audio == Audio.MONO || mResult.audio == Audio.STEREO) { if (mResult.audio == Audio.ON || mResult.audio == Audio.MONO || mResult.audio == Audio.STEREO) {
@ -181,7 +186,6 @@ public class SnapshotVideoRecorder extends VideoRecorder implements RendererFram
SnapshotVideoRecorder.this); SnapshotVideoRecorder.this);
mEncoderEngine.notify(TextureMediaEncoder.FILTER_EVENT, mCurrentFilter); mEncoderEngine.notify(TextureMediaEncoder.FILTER_EVENT, mCurrentFilter);
mEncoderEngine.start(); mEncoderEngine.start();
mResult.rotation = 0; // We will rotate the result instead.
mCurrentState = STATE_RECORDING; mCurrentState = STATE_RECORDING;
} }

Loading…
Cancel
Save