Re: [Spice-devel] [Qemu-devel] [RFC] spice-core: allow setting properties from QMP

2019-06-20 Thread Kevin Pouget
mer:h264;" } I put the new version of the RFC patch below best regards, Kevin --- This patch allows setting spice properties from the QMP interface. At the moment, only the 'video-codecs' property is supported. Signed-off-by: Kevin Pouget --- qapi/ui.json| 42 +++

Re: [Spice-devel] [Qemu-devel] [RFC] spice-core: allow setting properties from QMP

2019-06-21 Thread Kevin Pouget
On Fri, Jun 21, 2019 at 9:16 AM Frediano Ziglio wrote: > > > > > Hello Eric, > > > > > A new command may be okay, however, > > > > thanks, I've fix the typos and updated the patch to use an Enum, which > > indeed makes more sense. > > > > I've also updated "spice-query" command to provide the curr

[Spice-devel] Spice, GStreamer and seccomp issue

2019-06-26 Thread Kevin Pouget
Hello, I share for information the problem and solution I encountered why trying to run spice-server gstreamer encoding on Fedora30: > warning: GStreamer: External plugin loader failed. This most likely means > that the plugin loader helper binary was not found or could not be run. You > might

[Spice-devel] [RFC spice-common 2/2] ring: allow testing if a ring is initialized or not

2019-06-27 Thread Kevin Pouget
--- common/ring.h | 5 + 1 file changed, 5 insertions(+) diff --git a/common/ring.h b/common/ring.h index 5054193..d5eadea 100644 --- a/common/ring.h +++ b/common/ring.h @@ -50,6 +50,11 @@ static inline int ring_is_empty(Ring *ring) return ring == ring->next; } +static inline int ring_

[Spice-devel] [RFC] streaming: Restart streams on video-codec changes

2019-06-27 Thread Kevin Pouget
Hello, I've prepared these two patches that enables "hot-swapping" of the video-codec used for streaming. It goes along with the previous series under review for client/admin modification of the preferred codec list. Before this patch, the preferred video codec list was change in RedServerConfig-

[Spice-devel] [RFC spice-server 1/2] streaming: Restart streams on video-codec changes

2019-06-27 Thread Kevin Pouget
Interrupt/restart the video streams when the user changes the preferred video-codecs (dcc_handle_preferred_video_codec_type) or when the host admin updates the list of video-codecs allowed (display_channel_set_video_codecs) --- server/dcc.c | 2 ++ server/display-channel.c | 2 ++ serv

Re: [Spice-devel] [RFC spice-common 2/2] ring: allow testing if a ring is initialized or not

2019-06-27 Thread Kevin Pouget
On Thu, Jun 27, 2019 at 10:39 AM Frediano Ziglio wrote: > > > > > --- > > common/ring.h | 5 + > > 1 file changed, 5 insertions(+) > > > > diff --git a/common/ring.h b/common/ring.h > > index 5054193..d5eadea 100644 > > --- a/common/ring.h > > +++ b/common/ring.h > > @@ -50,6 +50,11 @@ static

Re: [Spice-devel] [RFC spice-server 1/2] streaming: Restart streams on video-codec changes

2019-06-27 Thread Kevin Pouget
Hello Uri, On Thu, Jun 27, 2019 at 11:04 AM Uri Lublin wrote: > > On 6/27/19 11:40 AM, Frediano Ziglio wrote: > >> > >> Interrupt/restart the video streams when the user changes the > >> preferred video-codecs (dcc_handle_preferred_video_codec_type) or when > >> the host admin updates the list of

[Spice-devel] [PATCH] streaming: Restart streams on video-codec changes

2019-06-27 Thread Kevin Pouget
Interrupt the video streams when the user changes the preferred video-codecs (dcc_handle_preferred_video_codec_type) or when the host admin updates the list of video-codecs allowed (display_channel_set_video_codecs). The video streaming will be automatically restarted by spice video-detection rule

Re: [Spice-devel] [client v3 1/6] channel-display: Minimize the stream lag by ignoring the server one

2019-06-28 Thread Kevin Pouget
Hello, I looked at the patch series and tried to describe its modifications to better understand it; you'll find below my comments. François, in the middle of it you'll find a few nit suggestions to improve the readability. the patch for display_handle_stream_data() is obviously the most complex,

[Spice-devel] [PATCH] gstreamer-encoder: fix compiler warning

2019-07-01 Thread Kevin Pouget
this warning is failing my build, I assume it comes from a new version of the compiler catching the useless call to abs(). --- > error: taking the absolute value of unsigned type 'uint64_t' > {aka 'long unsigned int'} has no effect [-Werror=absolute-value] --- server/gstreamer-encoder.c | 2 +-

Re: [Spice-devel] [PATCH] gstreamer-encoder: fix compiler warning

2019-07-01 Thread Kevin Pouget
On Mon, Jul 1, 2019 at 2:33 PM Christophe de Dinechin wrote: > > > Kevin Pouget writes: > > > this warning is failing my build, I assume it comes from a new version > > of the compiler catching the useless call to abs(). > > Is it useless, or is there a signed/unsign

Re: [Spice-devel] [PATCH] gstreamer-encoder: fix compiler warning

2019-07-01 Thread Kevin Pouget
On Mon, Jul 1, 2019 at 2:29 PM Frediano Ziglio wrote: > > > > > this warning is failing my build, I assume it comes from a new version > > of the compiler catching the useless call to abs(). > > > > Yes, getting too with Fedora 30. > > Instead of "is failing my build" could you describe your envir

[Spice-devel] [PATCH] gstreamer-encoder: fix compiler warning with Fedora 30

2019-07-01 Thread Kevin Pouget
Fedora 30 / gcc 9.1.1 20190503 (Red Hat 9.1.1-1) fails to build because of this error/warning: > gstreamer-encoder.c: In function 'set_video_bit_rate': > gstreamer-encoder.c:518:17: error: taking the absolute value of unsigned type > 'uint64_t' {aka 'long unsigned int'} has no effect [-Werror=abs

[Spice-devel] [PATCH v2 spice-server] gstreamer-encoder: fix compiler warning with Fedora 30

2019-07-03 Thread Kevin Pouget
Fedora 30 / gcc 9.1.1 20190503 (Red Hat 9.1.1-1) fails to build because of this error/warning: > gstreamer-encoder.c: In function 'set_video_bit_rate': > gstreamer-encoder.c:518:17: error: taking the absolute value of > unsigned type 'uint64_t' {aka 'long unsigned int'} has no effect > [-Werror=ab

Re: [Spice-devel] [PATCH v2 spice-server] gstreamer-encoder: fix compiler warning with Fedora 30

2019-07-03 Thread Kevin Pouget
On Wed, Jul 3, 2019 at 2:47 PM Frediano Ziglio wrote: > > > > > Fedora 30 / gcc 9.1.1 20190503 (Red Hat 9.1.1-1) fails to build > > because of this error/warning: > > > > > gstreamer-encoder.c: In function 'set_video_bit_rate': > > > gstreamer-encoder.c:518:17: error: taking the absolute value of

[Spice-devel] [PATCH spice-server] streaming: Restart streams on video-codec changes

2019-07-04 Thread Kevin Pouget
Interrupt the video streams when the user changes the preferred video-codecs (dcc_handle_preferred_video_codec_type) or when the host admin updates the list of video-codecs allowed (display_channel_set_video_codecs). The video streaming will be automatically restarted by spice video-detection rule

[Spice-devel] [PATCH spice-server] reds: Add ability to query the video-codecs currently enabled

2019-07-04 Thread Kevin Pouget
spice_server_free_video_codecs. spice_server_free_video_codecs: new public function to free the the video codec list returned by spice_server_get_video_codecs. Signed-off-by: Kevin Pouget --- server/dcc.c | 5 +++- server/reds.c| 52 server/reds.h

[Spice-devel] [PATCH spice-server] reds: spice_server_set_video_codecs: fail when no codec can be installed

2019-07-04 Thread Kevin Pouget
Public function spice_server_set_video_codecs: return -1 if no encoder/codec has been installed, instead of always returning 0. Internal function reds_set_video_codecs_from_string: return the number of invalid encoder/codec entries found in the input list, and update the installed pointer with the

[Spice-devel] [PATCH spice-server] manual: document host-side video streaming

2019-07-04 Thread Kevin Pouget
Signed-off-by: Kevin Pouget --- I removed the codec-selection part from this patch, I'll send it again when Qemu/Libvirt patches are accepted. --- docs/manual/manual.txt | 49 -- 1 file changed, 43 insertions(+), 6 deletions(-) diff --git a/docs/m

[Spice-devel] [PATCH spice-gtk 2/2] spicy: send ordered list of preferred video codecs

2019-07-04 Thread Kevin Pouget
Instead of sending only the preferred video codec (selected), spicy now sends an ordered list. When a video codec is selected in the radio box, this codec is moved to beginning of the list. Signed-off-by: Kevin Pouget --- tools/spicy.c | 31 +-- 1 file changed, 29

[Spice-devel] [PATCH spice-gtk 1/2] spice-client-gtk-module: allow sending multiple preferred video codecs

2019-07-04 Thread Kevin Pouget
spice_display_channel_change_preferred_video_codec_types: new function for sending an array of video codecs instead of only one. Signed-off-by: Kevin Pouget --- doc/reference/spice-gtk-sections.txt | 1 + src/channel-display.c| 76 +++- src/channel

Re: [Spice-devel] [PATCH spice-server] reds: Add ability to query the video-codecs currently enabled

2019-07-04 Thread Kevin Pouget
(spice_server_set_video_codecs). The string returned by this function > > should be released with spice_server_free_video_codecs. > > > > spice_server_free_video_codecs: new public function to free the the > > video codec list returned by spice_server_get_video_codecs. &g

[Spice-devel] [PATCH] reds: Add ability to query the video-codecs currently enabled

2019-07-05 Thread Kevin Pouget
spice_server_free_video_codecs. spice_server_free_video_codecs: new public function to free the the video codec list returned by spice_server_get_video_codecs. video_codecs_to_string: new private function to transform an array of RedVideoCodec into a string. Signed-off-by: Kevin Pouget --- resending with Frediano&#

Re: [Spice-devel] [PATCH spice-gtk 1/2] spice-client-gtk-module: allow sending multiple preferred video codecs

2019-07-10 Thread Kevin Pouget
ping On Thu, Jul 4, 2019 at 12:29 PM Kevin Pouget wrote: > spice_display_channel_change_preferred_video_codec_types: new function > for sending an array of video codecs instead of only one. > > Signed-off-by: Kevin Pouget > --- > doc/reference/spice-gtk-sections.txt |

Re: [Spice-devel] [PATCH spice-gtk 2/2] spicy: send ordered list of preferred video codecs

2019-07-10 Thread Kevin Pouget
ping On Thu, Jul 4, 2019 at 12:29 PM Kevin Pouget wrote: > Instead of sending only the preferred video codec (selected), spicy > now sends an ordered list. When a video codec is selected in the radio > box, this codec is moved to beginning of the list. > > Signed-off-b

Re: [Spice-devel] [PATCH spice-server] streaming: Restart streams on video-codec changes

2019-07-10 Thread Kevin Pouget
ping On Thu, Jul 4, 2019 at 10:08 AM Kevin Pouget wrote: > Interrupt the video streams when the user changes the preferred > video-codecs (dcc_handle_preferred_video_codec_type) or when the host > admin updates the list of video-codecs allowed > (display_channel_set_video_codecs). &

Re: [Spice-devel] [PATCH spice-gtk 1/2] spice-client-gtk-module: allow sending multiple preferred video codecs

2019-07-10 Thread Kevin Pouget
Hello, On Thu, Jul 11, 2019 at 8:16 AM Victor Toso wrote: > > Hi, > > On Thu, Jul 04, 2019 at 12:29:21PM +0200, Kevin Pouget wrote: > > spice_display_channel_change_preferred_video_codec_types: new function > > for sending an array of video codecs instead of only on

[Spice-devel] [PATCH] spicy: send ordered list of preferred video codecs

2019-07-11 Thread Kevin Pouget
Instead of sending only the preferred video codec (selected), spicy now sends an ordered list. When a video codec is selected in the radio box, this codec is moved to beginning of the list. Signed-off-by: Kevin Pouget Acked-by: Victor Toso --- guard, style fix and

Re: [Spice-devel] [PATCH] spicy: send ordered list of preferred video codecs

2019-07-11 Thread Kevin Pouget
hum, sorry, I messed things up with git send-email, forget about the message below On Thu, Jul 11, 2019 at 10:00 AM Kevin Pouget wrote: > > Instead of sending only the preferred video codec (selected), spicy > now sends an ordered list. When a video codec is selected in the radio &g

[Spice-devel] [PATCH spice-gtk 1/2] spicy: send ordered list of preferred video codecs

2019-07-11 Thread Kevin Pouget
Instead of sending only the preferred video codec (selected), spicy now sends an ordered list. When a video codec is selected in the radio box, this codec is moved to beginning of the list. Signed-off-by: Kevin Pouget Acked-by: Victor Toso --- guard, style fix and

Re: [Spice-devel] [PATCH spice-gtk 2/2] spicy: send ordered list of preferred video codecs

2019-07-11 Thread Kevin Pouget
On Thu, Jul 11, 2019 at 10:08 AM Victor Toso wrote: > > On Thu, Jul 04, 2019 at 12:29:22PM +0200, Kevin Pouget wrote: > > Instead of sending only the preferred video codec (selected), spicy > > now sends an ordered list. When a video codec is selected in the radio > > box

Re: [Spice-devel] [PATCH spice-server] streaming: Restart streams on video-codec changes

2019-07-11 Thread Kevin Pouget
On Thu, Jul 11, 2019 at 10:35 AM Frediano Ziglio wrote: > > > > > Interrupt the video streams when the user changes the preferred > > video-codecs (dcc_handle_preferred_video_codec_type) or when the host > > admin updates the list of video-codecs allowed > > (display_channel_set_video_codecs). > >

[Spice-devel] [PATCH spice-gtk 1/2] spice-client-gtk-module: allow sending multiple preferred video codecs

2019-07-11 Thread Kevin Pouget
spice_display_channel_change_preferred_video_codec_types: new function for sending an array of video codecs instead of only one. Signed-off-by: Kevin Pouget --- this is the version that was pushed --- doc/reference/spice-gtk-sections.txt | 1 + src/channel-display.c| 77

[Spice-devel] [RFC] Allow guest-video codec hot-swap

2019-07-31 Thread Kevin Pouget
erver Kevin Pouget (1): streaming: Restart guest video streams on video-codec changes server/dcc.c | 4 +++- server/display-channel.c | 2 +- server/red-stream-device.c | 15 +++ server/red-stream-device.h | 1 + server/reds.c | 11 +++ s

[Spice-devel] [RFC spice-streaming-agent 1/2] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-07-31 Thread Kevin Pouget
With this patch, spice-streaming-agent can be launched with multiple Gstreamer video codecs enabled: > spice-streaming-agent -c gst.codec=vp8 -c gst.codec=vp9 ... --- src/gst-plugin.cpp | 50 -- 1 file changed, 31 insertions(+), 19 deletions(-) diff --

[Spice-devel] [RFC spice-server 1/1] streaming: Restart guest video streams on video-codec changes

2019-07-31 Thread Kevin Pouget
This patch resets (stream_channel_reset) the guest video streams when the the user changes the preferred video-codecs or when the host admin updates the list of video-codecs allowed. See also patch 4000846c0157a787b786a9bf7f36f0b6a73dfbf8 for the host streaming counter part. --- server/dcc.c

[Spice-devel] [RFC spice-streaming-agent 2/2] spice-streaming-agent: fully reset the capture loop on start/stop requests

2019-07-31 Thread Kevin Pouget
With this patch, spice-streaming-agent exits the frame-sending loop when START/STOP requests are received. This allows the recomputation of the most suitable capture/encoding plugin, that may have been updated with START/STOP message. --- src/spice-streaming-agent.cpp | 9 +++-- 1 file changed

[Spice-devel] [RFC spice-gtk 1/1] spice-widget: make draw-area visible on update_image

2019-07-31 Thread Kevin Pouget
When switching from a Gstreamer video stream (on the gst-area) to an mjpeg stream, the "draw-area" was not set as visible. During the mjpeg->gst switch, the problem does not happen, as the gstreamer overlay is already re-created and made visible. This patch makes the draw-area always visible on up

Re: [Spice-devel] [RFC spice-streaming-agent 1/2] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-07-31 Thread Kevin Pouget
On Wed, Jul 31, 2019 at 11:50 AM Frediano Ziglio wrote: > > > > > With this patch, spice-streaming-agent can be launched with multiple > > Gstreamer video codecs enabled: > > > > > spice-streaming-agent -c gst.codec=vp8 -c gst.codec=vp9 ... > > --- > > src/gst-plugin.cpp | 50

Re: [Spice-devel] [RFC spice-streaming-agent 1/2] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-07-31 Thread Kevin Pouget
like that, the order is not relevant, > gst.codec=mjpeg gst.codec=h264 framerate=20 > gst.codec=mjpeg framerate=20 gst.codec=h264 these two lines will behave the same: all the instances receive the full set of options >> plugin->ParseOptions(agent->Options(), codec_type); >

Re: [Spice-devel] [RFC spice-streaming-agent 1/2] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-08-01 Thread Kevin Pouget
On Wed, Jul 31, 2019 at 12:09 PM Kevin Pouget wrote: > > On Wed, Jul 31, 2019 at 11:50 AM Frediano Ziglio wrote: > > > > > > > > With this patch, spice-streaming-agent can be launched with multiple > > > Gstreamer video codecs enabled: > > > &

Re: [Spice-devel] [RFC spice-streaming-agent 1/2] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-08-01 Thread Kevin Pouget
Hello Snir, On Thu, Aug 1, 2019 at 5:02 PM Snir Sheriber wrote: > > Hi, > > > On 8/1/19 3:43 PM, Kevin Pouget wrote: > > On Wed, Jul 31, 2019 at 12:09 PM Kevin Pouget wrote: > >> On Wed, Jul 31, 2019 at 11:50 AM Frediano Ziglio > >> wrote: > >>

[Spice-devel] [RFC spice-server 2/2] streaming: Restart guest video streams on video-codec changes

2019-08-02 Thread Kevin Pouget
This patch resets the host and guest video streams when the client changes the preferred video-codecs or when the host admin updates the list of video-codecs allowed. Signed-off-by: Kevin Pouget --- server/dcc.c | 4 +++- server/display-channel.c | 2 +- server/video-stream.c

[Spice-devel] [RFC v2 1/2] stream-channel: Use the preferred codec list instead of supported

2019-08-02 Thread Kevin Pouget
This patch computes and sends the list of the video codecs preferred by all the clients when requesting to start a new video stream. It used to be the list of the supported codecs. The MJPEG codec is used as a fallback is there if no codec preferred by all the clients. Signed-off-by: Kevin

[Spice-devel] [RFC spice-streaming-agent 4/4] concrete-agent: prioritize requested codec for plugin selection

2019-08-06 Thread Kevin Pouget
This patch gives more priority to the requested video codecs when selecting the FrameCapture plugin, instead of its hard-coded rank. The client_codecs storage structure is changed from 'set' to 'vector', as the codec order is not preserved by the set structure.. Signed-

[Spice-devel] [RFC spice-server 2/3] stream-channel: Use the preferred codec list instead of supported

2019-08-06 Thread Kevin Pouget
, the server's list of allowed video-stream codecs is used to disable the usage of some codecs. This may not be the best option. To be further discussed ... Signed-off-by: Kevin Pouget --- server/stream-channel.c | 84 + 1 file changed, 69 insertions(+

[Spice-devel] [RFC v3] Allow guest-video codec hot-swap

2019-08-06 Thread Kevin Pouget
server, on codec change, reset only the streams of the client that requested the change --- # spice-server Kevin Pouget (3): stream-channel: Add preferred video codec capability stream-channel: Use the preferred codec list instead of supported streaming: Restart guest video streams on video

[Spice-devel] [RFC spice-gtk 1/2] spice-widget: make draw-area visible on update_image

2019-08-06 Thread Kevin Pouget
ys visible on update_image. As Gstreamer overlay is created afterwards (if it's a gstreamer stream), we are sure that the right area will be visible. This may not be the best place for this line... Signed-off-by: Kevin Pouget --- src/spice-widget.c | 2 ++ 1 file changed, 2 insertions(+)

[Spice-devel] [RFC spice-server 3/3] streaming: Restart guest video streams on video-codec changes

2019-08-06 Thread Kevin Pouget
This patch resets the host and guest video streams when the client changes the preferred video-codecs or when the host admin updates the list of video-codecs allowed. TODO: restart only the streams of the client that changed codecs Signed-off-by: Kevin Pouget --- server/main-dispatcher.c

[Spice-devel] [RFC spice-server 1/3] stream-channel: Add preferred video codec capability

2019-08-06 Thread Kevin Pouget
::client_preferred_video_codecs: new field. Signed-off-by: Kevin Pouget --- server/dcc.c| 30 +- server/stream-channel.c | 40 server/video-stream.c | 36 server/video-stream.h | 1 + 4

[Spice-devel] [RFC spice-streaming-agent 2/4] spice-streaming-agent: fully reset the capture loop on start/stop requests

2019-08-06 Thread Kevin Pouget
With this patch, spice-streaming-agent exits the frame-sending loop when START/STOP requests are received. This allows the recomputation of the most suitable capture/encoding plugin, that may have been updated with START/STOP message. Signed-off-by: Kevin Pouget --- src/spice-streaming

[Spice-devel] [RFC spice-streaming-agent 3/4] gst-plugin: Allow per-codec parameters

2019-08-06 Thread Kevin Pouget
Signed-off-by: Kevin Pouget --- src/gst-plugin.cpp | 18 +++--- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/gst-plugin.cpp b/src/gst-plugin.cpp index 5469647..657b62d 100644 --- a/src/gst-plugin.cpp +++ b/src/gst-plugin.cpp @@ -102,7 +102,8 @@ class

[Spice-devel] [RFC spice-streaming-agent 1/4] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-08-06 Thread Kevin Pouget
With this patch, spice-streaming-agent can be launched with multiple Gstreamer video codecs enabled: > spice-streaming-agent -c gst.codec=vp8 -c gst.codec=vp9 ... Signed-off-by: Kevin Pouget --- src/gst-plugin.cpp | 50 -- 1 file changed,

[Spice-devel] [RFC spice-gtk 2/2] channel-display: fix bug when sending preferred video codecs

2019-08-06 Thread Kevin Pouget
The transfer between the codecs array and the message payload cannot be done with memcpy because the data-type lengths are different (gint/uint8_t). Signed-off-by: Kevin Pouget --- src/channel-display.c | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/channel

[Spice-devel] [RFC spice-server] fixup! streaming: Restart guest video streams on video-codec changes

2019-08-07 Thread Kevin Pouget
Update of the previous patch that resets only the stream channel whose preferred codec list has been updated Signed-off-by: Kevin Pouget --- server/main-dispatcher.c | 12 +--- server/main-dispatcher.h | 2 +- server/reds.c| 15 --- server/reds.h| 2

[Spice-devel] [RFC spice-gtk 1/2] streaming: make draw-area visible on MJPEG encoder creation

2019-08-07 Thread Kevin Pouget
. Signed-off-by: Kevin Pouget --- src/channel-display-mjpeg.c | 2 ++ src/channel-display-priv.h | 2 +- src/channel-display.c | 38 ++--- src/spice-marshal.txt | 1 + src/spice-widget.c | 16 ++-- 5 files changed, 53 insertions

Re: [Spice-devel] [RFC spice-streaming-agent 1/2] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-08-08 Thread Kevin Pouget
On Sun, Aug 4, 2019 at 10:13 AM Snir Sheriber wrote: > > HI, > > On 8/1/19 6:27 PM, Kevin Pouget wrote: > > Hello Snir, > > > > On Thu, Aug 1, 2019 at 5:02 PM Snir Sheriber wrote: > >> Hi, > >> > >> > >> On 8/1/19 3:43 PM, Kevin

Re: [Spice-devel] [RFC spice-gtk 1/2] streaming: make draw-area visible on MJPEG encoder creation

2019-08-08 Thread Kevin Pouget
Hello, On Thu, Aug 8, 2019 at 11:23 AM Snir Sheriber wrote: > > Hi, > > On 8/7/19 6:49 PM, Kevin Pouget wrote: > > This patch allows the MJPEG encoder to inform the spice-widget that > > its video drawing area (draw-area) should be made visible on screen. > > &g

Re: [Spice-devel] [RFC spice-streaming-agent 4/4] concrete-agent: prioritize requested codec for plugin selection

2019-08-12 Thread Kevin Pouget
x27;set' to 'vector', > > as the codec order is not preserved by the set structure.. > > > > Signed-off-by: Kevin Pouget > > --- > > src/concrete-agent.cpp| 38 +-- > > src/concrete-agent.hpp|

Re: [Spice-devel] [RFC spice-streaming-agent 2/4] spice-streaming-agent: fully reset the capture loop on start/stop requests

2019-08-12 Thread Kevin Pouget
On Sun, Aug 11, 2019 at 4:42 PM Snir Sheriber wrote: > > Hi, > > > On 8/6/19 6:34 PM, Kevin Pouget wrote: > > With this patch, spice-streaming-agent exits the frame-sending loop > > when START/STOP requests are received. This allows the recomputation > > of t

[Spice-devel] [PATCH spice-gtk] channel-display: fix bug when sending preferred video codecs

2019-08-20 Thread Kevin Pouget
The transfer between the codecs array and the message payload cannot be done with memcpy because the data-types are different (gint/uint8_t). Signed-off-by: Kevin Pouget --- src/channel-display.c | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/channel

Re: [Spice-devel] [RFC spice-server 1/3] stream-channel: Add preferred video codec capability

2019-08-23 Thread Kevin Pouget
On Fri, Aug 23, 2019 at 11:32 AM Victor Toso wrote: > > Hi, > > On Wed, Aug 14, 2019 at 09:08:51AM -0400, Frediano Ziglio wrote: > > > +/* Returns an array with SPICE_VIDEO_CODEC_TYPE_ENUM_END elements, > > > + * with the client preference order (index) as value */ > > > +GArray > > > *video_strea

Re: [Spice-devel] [RFC spice-server 1/3] stream-channel: Add preferred video codec capability

2019-08-29 Thread Kevin Pouget
protocol message. This code used to be inside > > dcc_handle_preferred_video_codec_type. > > > > struct StreamChannelClient::client_preferred_video_codecs: new field. > > > > Signed-off-by: Kevin Pouget > > --- > > server/dcc.c

[Spice-devel] [PATCH spice-gtk] streaming: make draw-area visible on MJPEG encoder creation

2019-08-29 Thread Kevin Pouget
. Signed-off-by: Kevin Pouget --- I have simplified the patch to reuse the existing SPICE_DISPLAY_OVERLAY signal (with pipeline_ptr == NULL), instead of creating a new one dedicated to the native MJPEG decoder. --- src/channel-display-mjpeg.c | 2 ++ src/channel-display-priv.h | 2 +- src

[Spice-devel] [PATCH] streaming: make draw-area visible on MJPEG encoder creation

2019-08-29 Thread Kevin Pouget
. Signed-off-by: Kevin Pouget --- src/channel-display-mjpeg.c | 3 +++ src/spice-widget.c | 9 - 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/channel-display-mjpeg.c b/src/channel-display-mjpeg.c index 647d31b..636a98b 100644 --- a/src/channel-display-mjpeg.c

[Spice-devel] [PATCH] stream-channel: Add preferred video codec capability

2019-09-02 Thread Kevin Pouget
::client_preferred_video_codecs: new field. Signed-off-by: Kevin Pouget --- This patch adds the client preferred video codecs capability, and stores the list in the StreamChannelClient fields, but doesn't pass it in anyway to the streaming-agent. We can decide later on what's the right thing to do

[Spice-devel] [PATCH spice-server v2] stream-channel: Add preferred video codec capability

2019-09-02 Thread Kevin Pouget
::client_preferred_video_codecs: new field. Signed-off-by: Kevin Pouget --- v1->v2: - removed extra header (red-client.h) - s/scc/client --- server/dcc.c| 30 +- server/stream-channel.c | 38 ++ server/video-stream.c |

[Spice-devel] [PATCH spice-gtk v3] streaming: make draw-area visible on MJPEG encoder creation

2019-09-02 Thread Kevin Pouget
. Signed-off-by: Kevin Pouget --- v2 -> v3: address Snir comments: - comment about NULL in the signal description - move 'if (pipeline_ptr == NULL) ...' outside of 'if defined(GDK_WINDOWING_X11)' regarding EGL note, it might be something like this: > gtk_stack_set_v

[Spice-devel] [PATCH spice-common] common/recorder.h: do not complain on unused (dummy) recorders

2019-09-11 Thread Kevin Pouget
Signed-off-by: Kevin Pouget --- common/recorder.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/recorder.h b/common/recorder.h index 98b8797..8448e02 100644 --- a/common/recorder.h +++ b/common/recorder.h @@ -20,6 +20,7 @@ #include #include +#include

[Spice-devel] [PATCH spice-common v2] common/recorder.h: do not complain on unused (dummy) recorders

2019-09-11 Thread Kevin Pouget
Signed-off-by: Kevin Pouget --- common/recorder.h | 3 ++- tests/Makefile.am | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/common/recorder.h b/common/recorder.h index 98b8797..8448e02 100644 --- a/common/recorder.h +++ b/common/recorder.h @@ -20,6 +20,7 @@ #include

Re: [Spice-devel] [RFC spice-streaming-agent 1/4] gst-plugin: allow the instantiation of multiple GST encoder plugins

2019-09-11 Thread Kevin Pouget
other comment below > > > On 8/6/19 6:34 PM, Kevin Pouget wrote: > > With this patch, spice-streaming-agent can be launched with multiple > > Gstreamer video codecs enabled: > > > >> spice-streaming-agent -c gst.codec=vp8 -c gst.codec=vp9 ... >

[Spice-devel] [PATCH spice-streaming-agent] gst-plugin: Allow the instantiation/configuration of multiple plugins

2019-10-17 Thread Kevin Pouget
l later allow live plugin reconfiguration (ie, without fully relaunching the spice-streaming-agent). Signed-off-by: Kevin Pouget --- src/gst-plugin.cpp | 121 +++-- 1 file changed, 94 insertions(+), 27 deletions(-) diff --git a/src/gst-plugin.cpp b/sr

[Spice-devel] [PATCH spice-common 1/3] agent-interface: introduce the core of the Agent Interface

2019-10-17 Thread Kevin Pouget
entry is sent through the TCP connection. Otherwise, the record is dropped. Signed-off-by: Kevin Pouget --- common/agent_interface.c | 467 + common/agent_interface.h | 542 +++ 2 files changed, 1009 insertions(+) create mode 100644

[Spice-devel] [PATCH spice-common 2/3] agent-interface: add configuration functions

2019-10-17 Thread Kevin Pouget
. agent_interface_set_forward_quality_cb: this function allows SPICE to provide a function that will forward Quality messages received by the Agent Interface towards SPICE server, for a centralized processing of the messages. Signed-off-by: Kevin Pouget --- common/agent_interface.c | 45

[Spice-devel] [PATCH spice-common 3/3] build: Introduce 'agent' as an alternative instrumentation library

2019-10-17 Thread Kevin Pouget
ecorder=c3d' is transformed into '--enable-instrumentation=c3d-rec'. Signed-off-by: Kevin Pouget --- common/Makefile.am | 9 - common/meson.build | 8 +++- common/recorder.h | 12 configure.ac | 2 +- m4/spice-deps.m4 | 23 +-

Re: [Spice-devel] [PATCH spice-common 3/3] build: Introduce 'agent' as an alternative instrumentation library

2019-10-18 Thread Kevin Pouget
On Thu, Oct 17, 2019 at 3:30 PM Kevin Pouget wrote: > > The 'agent' interface is an experimental instrumentation library for > capturing and sharing Spice performance indicators with an external > agent. > > --enable-instrumentation=[c3d-rec/agent/no] >

Re: [Spice-devel] [PATCH spice-common 3/3] build: Introduce 'agent' as an alternative instrumentation library

2019-10-18 Thread Kevin Pouget
tation=[c3d-rec/agent/no] > > Enable instrumentation [default=no] > > > > Former configuration option '--enable-recorder=c3d' is transformed into > > '--enable-instrumentation=c3d-rec'. > > > > Signed-off-by: Kevin Pouget > &

[Spice-devel] [PATCH spice-common v2 1/3] agent-interface: introduce the core of the Agent Interface

2019-10-18 Thread Kevin Pouget
entry is sent through the TCP connection. Otherwise, the record is dropped. Signed-off-by: Kevin Pouget --- v1->v2: fix tests/test-dummy-recorder.c --- common/agent_interface.c| 467 +++ common/agent_interface.h| 542 tests/t

[Spice-devel] [PATCH spice-common v2 2/3] agent-interface: add configuration functions

2019-10-18 Thread Kevin Pouget
. agent_interface_set_forward_quality_cb: this function allows SPICE to provide a function that will forward Quality messages received by the Agent Interface towards SPICE server, for a centralized processing of the messages. Signed-off-by: Kevin Pouget --- v1->v2: unchanged --- com

[Spice-devel] [PATCH spice-common v2 3/3] build: Introduce 'agent' as an alternative instrumentation library

2019-10-18 Thread Kevin Pouget
ecorder=c3d' is transformed into '--enable-instrumentation=c3d-rec'. Signed-off-by: Kevin Pouget --- v1->v2: changed 'off' to 'no' for meson build without instrumentation library --- common/Makefile.am | 9 - common/meson.build | 8 +++- common/r

[Spice-devel] [PATCH spice-common v3 1/3] agent-interface: introduce the core of the Agent Interface

2019-10-18 Thread Kevin Pouget
entry is sent through the TCP connection. Otherwise, the record is dropped. Signed-off-by: Kevin Pouget --- v2->v3: unchanged --- common/agent_interface.c| 467 +++ common/agent_interface.h| 542 tests/test-dummy-recorde

[Spice-devel] [PATCH spice-common v3 2/3] agent-interface: add configuration functions

2019-10-18 Thread Kevin Pouget
. agent_interface_set_forward_quality_cb: this function allows SPICE to provide a function that will forward Quality messages received by the Agent Interface towards SPICE server, for a centralized processing of the messages. Signed-off-by: Kevin Pouget --- v2->v3: unchanged --- com

[Spice-devel] [PATCH spice-common v3 3/3] build: Introduce the agent-interface as an alternative instrumentation library

2019-10-18 Thread Kevin Pouget
r' is transformed into '--enable-instrumentation=recorder'. Signed-off-by: Kevin Pouget --- v2->v3: renamed option 'c3d-rec' into 'recorder' and changed variable names accordingly --- common/Makefile.am | 7 +++ common/meson.build | 8

Re: [Spice-devel] [PATCH spice-common v2 3/3] build: Introduce 'agent' as an alternative instrumentation library

2019-10-18 Thread Kevin Pouget
On Fri, Oct 18, 2019 at 1:37 PM Kevin Pouget wrote: > > The 'agent' interface is an experimental instrumentation library for > capturing and sharing Spice performance indicators with an external > agent. > > --enable-instrumentation=[c3d-rec/agent/no] >

Re: [Spice-devel] [PATCH spice-common v3 1/3] agent-interface: introduce the core of the Agent Interface

2019-11-06 Thread Kevin Pouget
On the SPICE side, the Agent Interface handles the record() calls > > (recorder_append*). When a record is received from SPICE, and if the > > recorder is enabled, the record entry is sent through the TCP > > connection. Otherwise, the record is dropped. > > > > Signed-off-b

Re: [Spice-devel] [PATCH spice-common v3 1/3] agent-interface: introduce the core of the Agent Interface

2019-11-06 Thread Kevin Pouget
On Wed, Nov 6, 2019 at 10:08 AM Kevin Pouget wrote: > > On Fri, Oct 18, 2019 at 6:06 PM Frediano Ziglio wrote: > > > > > > > > > > When initialized (recorder_initialization), the Agent Interface launch > > > a GThread (handle_communications) that

Re: [Spice-devel] spice-vdagent: how to enable additional mouse buttons?

2020-05-12 Thread Kevin Pouget
On Tue, May 12, 2020 at 11:58 PM wrote: > Hi Victor, > > Yes it was certainly a good read and i got some ideas from it, but the > code has changed quite a lot since 2017 and the patches correspond to the > current code only for about 10-15%. > Maybe someone from the Spice team can suggest a patch

Re: [Spice-devel] spice-vdagent: how to enable additional mouse buttons?

2020-05-14 Thread Kevin Pouget
my > individual mouse buttons, I understand it is not easy to get this out to > the public, still if there is a patch available in the mailing list, then > at least people can grab that and change it to their liking, right? > > Anyway, all the replies and help is appreciated! Let'

[Spice-devel] Review of the C++ patches

2020-06-08 Thread Kevin Pouget
Hello spice-devel I worked on the review of Frediano's C++ patches during the last weeks, I tried to understand the gist of the commits and summarize it in the review message. It's not an in-depth review, and I only spotted minor details. A few patches are not acked, mostly because they were too

Re: [Spice-devel] Review of the C++ patches

2020-06-08 Thread Kevin Pouget
patch looks good to me. Acked-by: Kevin Pouget commit c4b4b967fb98e4b551a08b9d6150d64356038b27 Author: Frediano Ziglio Date: Sat Aug 29 05:35:46 2015 +0100 Allows C++ to be used in sources Enable C++ compiler Signed-off-by: Frediano Ziglio This patch updates the build system (meso

Re: [Spice-devel] Review of the C++ patches

2020-06-08 Thread Kevin Pouget
nstead the implicit `this->`. As I mentionned above, I think it's more readable to have an explicit `this->`, we'll discuss this later on. Besides that, the patch looks good to me. Acked-by: Kevin Pouget commit 61affed2a2e36b59e6935e608d7d80242f976c7e Author: Frediano Ziglio D

Re: [Spice-devel] Review of the C++ patches

2020-06-08 Thread Kevin Pouget
` attribute. Surprisingly, there is no related update of the code. Looks good to me. Acked-by: Kevin Pouget commit 164a333f991f09452844a94ad84a3190a2b6149d Author: Frediano Ziglio Date: Wed Apr 1 20:50:44 2020 +0100 Define and use (un)ref Avoids g_object_(un)ref. This in preparation to

[Spice-devel] Identifying and removing potentially divisive language

2020-07-01 Thread Kevin Pouget
Hello SPICE community, following Chris Wright (Red Hat CTO) blog post on "Making open source more inclusive by eradicating problematic language" [1], I would like to suggest that we have a look at SPICE source code to find out if/where such language is used and how to remove it. To illustrate the

Re: [Spice-devel] Identifying and removing potentially divisive language

2020-07-02 Thread Kevin Pouget
Hello Michal, On Wed, Jul 1, 2020 at 8:23 PM Michal Suchánek wrote: > > On Wed, Jul 01, 2020 at 10:03:10AM +0200, Kevin Pouget wrote: > > Hello SPICE community, > > > > following Chris Wright (Red Hat CTO) blog post on "Making open source > > more inclusive

Re: [Spice-devel] Identifying and removing potentially divisive language

2020-07-03 Thread Kevin Pouget
:09, Frediano Ziglio a > écrit : > >> >> > On Wed, Jul 01, 2020 at 04:15:07PM +0200, Victor Toso wrote: >> > > Hi, >> > > >> > > On Wed, Jul 01, 2020 at 10:03:10AM +0200, Kevin Pouget wrote: >> > > > Hello SPICE community, &

Re: [Spice-devel] Stuttering video playback on LAN

2020-07-27 Thread Kevin Pouget
Hello, for the record, I'm sure that I managed to run spice-streaming-agent with the Intel vaapih264enc encoder. Unfortunately I don't have anymore the setup to try it again, but all the gstreamer encoders were working properly (vaapi h264/vp8, nvenc h264 ...) I would recommend testing GST from t