Rename rotationChanged to resetCapture

The flag is used to reset the capture (restart the encoding) on rotation
change. It will also be used for other events (on folding change), so
rename it.

PR #3979 <https://github.com/Genymobile/scrcpy/pull/3979>
This commit is contained in:
Romain Vimont 2023-05-29 19:23:51 +02:00
parent 9a2abba098
commit 8e2c0d6407

View file

@ -26,7 +26,7 @@ public class ScreenEncoder implements Device.RotationListener, AsyncProcessor {
private static final int[] MAX_SIZE_FALLBACK = {2560, 1920, 1600, 1280, 1024, 800}; private static final int[] MAX_SIZE_FALLBACK = {2560, 1920, 1600, 1280, 1024, 800};
private static final int MAX_CONSECUTIVE_ERRORS = 3; private static final int MAX_CONSECUTIVE_ERRORS = 3;
private final AtomicBoolean rotationChanged = new AtomicBoolean(); private final AtomicBoolean resetCapture = new AtomicBoolean();
private final Device device; private final Device device;
private final Streamer streamer; private final Streamer streamer;
@ -55,11 +55,11 @@ public class ScreenEncoder implements Device.RotationListener, AsyncProcessor {
@Override @Override
public void onRotationChanged(int rotation) { public void onRotationChanged(int rotation) {
rotationChanged.set(true); resetCapture.set(true);
} }
private boolean consumeRotationChange() { private boolean consumeResetCapture() {
return rotationChanged.getAndSet(false); return resetCapture.getAndSet(false);
} }
private void streamScreen() throws IOException, ConfigurationException { private void streamScreen() throws IOException, ConfigurationException {
@ -169,14 +169,14 @@ public class ScreenEncoder implements Device.RotationListener, AsyncProcessor {
boolean alive = true; boolean alive = true;
MediaCodec.BufferInfo bufferInfo = new MediaCodec.BufferInfo(); MediaCodec.BufferInfo bufferInfo = new MediaCodec.BufferInfo();
while (!consumeRotationChange() && !eof) { while (!consumeResetCapture() && !eof) {
if (stopped.get()) { if (stopped.get()) {
alive = false; alive = false;
break; break;
} }
int outputBufferId = codec.dequeueOutputBuffer(bufferInfo, -1); int outputBufferId = codec.dequeueOutputBuffer(bufferInfo, -1);
try { try {
if (consumeRotationChange()) { if (consumeResetCapture()) {
// must restart encoding with new size // must restart encoding with new size
break; break;
} }