summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--waltham-transmitter/transmitter-plugin/output.c2
-rw-r--r--waltham-transmitter/transmitter-plugin/transmitter_api.h1
-rw-r--r--waltham-transmitter/waltham-renderer/waltham-renderer.c2
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)