diff options
author | Naoko Tanibata <tnaoko@jp.adit-jv.com> | 2019-03-07 13:25:01 +0900 |
---|---|---|
committer | Naoko Tanibata <tnaoko@jp.adit-jv.com> | 2019-07-16 08:47:26 +0000 |
commit | 945df81594d6ee88ed53939711b8aa5cf51a57d1 (patch) | |
tree | 6d06fe47cafe7703ebdd08f60ee2ff0998c3e147 | |
parent | 40776662b7a5e750c562b9553bf3525b6401fc9e (diff) |
transmitter: Fix the alignment issue
This patch enables waltham-transmitter to use the stride value given by compositor.
For this enabling, the below patch needs to be applied to weston.
- 0020-compositor-drm-get-stride-from-drm_get_dma_fd_from_view.patch
Bug-AGL: SPEC-2417
Change-Id: Ic12a9a46b0761c9c6521b190d33a746736dbd4c7
Signed-off-by: Naoko Tanibata <tnaoko@jp.adit-jv.com>
Signed-off-by: Veeresh Kadasani <external.vkadasani@jp.adit-jv.com>
(cherry picked from commit cd33a17ea5ac787786e5289ec914a96adeaf6346)
-rw-r--r-- | waltham-transmitter/transmitter-plugin/output.c | 2 | ||||
-rw-r--r-- | waltham-transmitter/transmitter-plugin/transmitter_api.h | 1 | ||||
-rw-r--r-- | waltham-transmitter/waltham-renderer/waltham-renderer.c | 2 |
3 files changed, 3 insertions, 2 deletions
diff --git a/waltham-transmitter/transmitter-plugin/output.c b/waltham-transmitter/transmitter-plugin/output.c index ef6e972..6768eee 100644 --- a/waltham-transmitter/transmitter-plugin/output.c +++ b/waltham-transmitter/transmitter-plugin/output.c @@ -192,7 +192,7 @@ transmitter_output_repaint(struct weston_output *base, (view->surface, remote, NULL); output->renderer->dmafd = - api->get_dma_fd_from_view(&output->base, view); + api->get_dma_fd_from_view(&output->base, view, &output->renderer->buf_stride); if(output->renderer->dmafd < 0) { weston_log("Failed to get dmafd\n"); goto out; diff --git a/waltham-transmitter/transmitter-plugin/transmitter_api.h b/waltham-transmitter/transmitter-plugin/transmitter_api.h index 9b3e5fe..9f382bf 100644 --- a/waltham-transmitter/transmitter-plugin/transmitter_api.h +++ b/waltham-transmitter/transmitter-plugin/transmitter_api.h @@ -270,6 +270,7 @@ struct renderer { void (*repaint_output)(struct weston_output *base); struct GstAppContext *ctx; int32_t dmafd; /* dmafd received from compositor-drm */ + int buf_stride; int surface_width; int surface_height; bool recorder_enabled; diff --git a/waltham-transmitter/waltham-renderer/waltham-renderer.c b/waltham-transmitter/waltham-renderer/waltham-renderer.c index d274e3b..76e045c 100644 --- a/waltham-transmitter/waltham-renderer/waltham-renderer.c +++ b/waltham-transmitter/waltham-renderer/waltham-renderer.c @@ -223,7 +223,7 @@ static void waltham_renderer_repaint_output(struct weston_transmitter_output *ou GstBuffer *gstbuffer; GstMemory *mem; GstAllocator *allocator; - int stride = output->renderer->surface_width * 4; + int stride = output->renderer->buf_stride; gsize offset = 0; if(!output->renderer->recorder_enabled) |