encoderd: fix premature rotation issue on camera realignment #33112
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes premature encoder rotation after camera realignment.
When a camera realignment occurs, the frame ID jumps ahead (e.g., from frame ID 100 to 106). The original rotation logic, relying on continuous frame IDs, caused early rotations. This could lead to crashes or memory exhaustion in loggerd due to a sync bug if realignment happens frequently.
The updated logic ensures correct rotation after the specified number of frames per segment (FRAMES_PER_SEGMENT), even with frame ID jumps. This change improves the robustness and stability of the encoder, preventing premature rotations and mitigating crash and memory issues.