Lines Matching +full:diff +full:- +full:channels

2 From: Jeffy Chen <jeffy.chen@rock-chips.com>
6 Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
7 ---
8 channels/tsmf/client/gstreamer/tsmf_X11.c | 18 ++++++++++++++----
10 channels/tsmf/client/gstreamer/tsmf_platform.h | 1 +
11 3 files changed, 26 insertions(+), 4 deletions(-)
13 diff --git a/channels/tsmf/client/gstreamer/tsmf_X11.c b/channels/tsmf/client/gstreamer/tsmf_X11.c
15 --- a/channels/tsmf/client/gstreamer/tsmf_X11.c
16 +++ b/channels/tsmf/client/gstreamer/tsmf_X11.c
17 @@ -97,6 +97,8 @@ static GstBusSyncReply tsmf_platform_bus_sync_handler(GstBus* bus, GstMessage* m
26 @@ -112,6 +114,9 @@ static GstBusSyncReply tsmf_platform_bus_sync_handler(GstBus* bus, GstMessage* m
28 if (hdl->subwin)
30 + renderX = decoder->gstWindowless ? hdl->subwinX : 0;
31 + renderY = decoder->gstWindowless ? hdl->subwinY : 0;
34 hdl->overlay = GST_VIDEO_OVERLAY(GST_MESSAGE_SRC(message));
35 gst_video_overlay_set_window_handle(hdl->overlay, hdl->subwin);
36 @@ -130,7 +135,7 @@ static GstBusSyncReply tsmf_platform_bus_sync_handler(GstBus* bus, GstMessage* m
37 hdl->subwinY != -1)
40 - if (!gst_video_overlay_set_render_rectangle(hdl->overlay, 0, 0, hdl->subwinWidth,
41 + if (!gst_video_overlay_set_render_rectangle(hdl->overlay, renderX, renderY, hdl->subwinWidth,
42 hdl->subwinHeight))
45 @@ -138,7 +143,7 @@ static GstBusSyncReply tsmf_platform_bus_sync_handler(GstBus* bus, GstMessage* m
47 gst_video_overlay_expose(hdl->overlay);
49 - if (!gst_x_overlay_set_render_rectangle(hdl->overlay, 0, 0, hdl->subwinWidth,
50 + if (!gst_x_overlay_set_render_rectangle(hdl->overlay, renderX, renderY, hdl->subwinWidth,
51 hdl->subwinHeight))
54 @@ -335,6 +340,8 @@ int tsmf_window_resize(TSMFGstreamerDecoder* decoder, int x, int y, int width, i
61 return -1;
63 @@ -346,6 +353,9 @@ int tsmf_window_resize(TSMFGstreamerDecoder* decoder, int x, int y, int width, i
64 if (!decoder->platform)
65 return -1;
67 + renderX = decoder->gstWindowless ? x : 0;
68 + renderY = decoder->gstWindowless ? y : 0;
70 hdl = (struct X11Handle*)decoder->platform;
73 @@ -353,14 +363,14 @@ int tsmf_window_resize(TSMFGstreamerDecoder* decoder, int x, int y, int width…
77 - if (!gst_video_overlay_set_render_rectangle(hdl->overlay, 0, 0, width, height))
78 + if (!gst_video_overlay_set_render_rectangle(hdl->overlay, renderX, renderY, width, height))
83 gst_video_overlay_expose(hdl->overlay);
85 - if (!gst_x_overlay_set_render_rectangle(hdl->overlay, 0, 0, width, height))
86 + if (!gst_x_overlay_set_render_rectangle(hdl->overlay, renderX, renderY, width, height))
90 diff --git a/channels/tsmf/client/gstreamer/tsmf_gstreamer.c b/channels/tsmf/client/gstreamer/tsmf_…
92 --- a/channels/tsmf/client/gstreamer/tsmf_gstreamer.c
93 +++ b/channels/tsmf/client/gstreamer/tsmf_gstreamer.c
94 @@ -78,11 +78,18 @@ static const char* get_type(TSMFGstreamerDecoder* mdecoder)
108 + mdecoder->gstWindowless = TRUE;
113 @@ -623,6 +630,9 @@ BOOL tsmf_gstreamer_pipeline_build(TSMFGstreamerDecoder* mdecoder)
114 g_object_set(G_OBJECT(mdecoder->queue), "max-size-bytes", 0, NULL);
115 g_object_set(G_OBJECT(mdecoder->queue), "max-size-time", (guint64)0, NULL);
117 + if (!g_strcmp0(G_OBJECT_TYPE_NAME(mdecoder->outsink), "GstKMSSink"))
118 + mdecoder->gstWindowless = TRUE;
122 if (!g_strcmp0(G_OBJECT_TYPE_NAME(mdecoder->outsink), "GstAutoVideoSink") &&
123 @@ -1051,6 +1061,7 @@ ITSMFDecoder* freerdp_tsmf_client_subsystem_entry(void)
124 decoder->iface.BufferLevel = tsmf_gstreamer_buffer_level;
125 decoder->iface.SetAckFunc = tsmf_gstreamer_ack;
126 decoder->iface.SetSyncFunc = tsmf_gstreamer_sync;
127 + decoder->gstWindowless = FALSE;
128 decoder->paused = FALSE;
129 decoder->gstVolume = 0.5;
130 decoder->gstMuted = FALSE;
131 diff --git a/channels/tsmf/client/gstreamer/tsmf_platform.h b/channels/tsmf/client/gstreamer/tsmf_p…
133 --- a/channels/tsmf/client/gstreamer/tsmf_platform.h
134 +++ b/channels/tsmf/client/gstreamer/tsmf_platform.h
135 @@ -41,6 +41,7 @@ typedef struct _TSMFGstreamerDecoder
143 --