Pass the correct buffer size through the pipeline again

This commit is contained in:
Martijn Braam
2023-07-12 15:30:03 +02:00
parent 64a4c8e869
commit 78cccdd596
3 changed files with 8 additions and 3 deletions

View File

@@ -158,8 +158,8 @@ update_state(const struct mp_main_state *state)
has_auto_focus_start = state->has_auto_focus_start;
}
preview_buffer_width = state->mode->width;
preview_buffer_height = state->mode->height;
preview_buffer_width = state->image_width;
preview_buffer_height = state->image_height;
return false;
}

View File

@@ -17,6 +17,9 @@ struct mp_main_state {
bool has_auto_focus_continuous;
bool has_auto_focus_start;
int image_width;
int image_height;
};
void mp_main_update_state(const struct mp_main_state *state);

View File

@@ -978,7 +978,7 @@ on_output_changed(bool format_changed)
output_buffer_width = mode->width / 2;
output_buffer_height = mode->height / 2;
if (mode->rotation != 0 || mode->rotation != 180) {
if (mode->rotation != 0 && mode->rotation != 180) {
int tmp = output_buffer_width;
output_buffer_width = output_buffer_height;
output_buffer_height = tmp;
@@ -1082,6 +1082,8 @@ update_state(MPPipeline *pipeline, const struct mp_process_pipeline_state *state
.exposure = exposure,
.has_auto_focus_continuous = state->has_auto_focus_continuous,
.has_auto_focus_start = state->has_auto_focus_start,
.image_width = output_buffer_width,
.image_height = output_buffer_height,
};
mp_main_update_state(&main_state);
}