Hi Frediano, On Wed, 2017-03-22 at 10:18 +0000, Frediano Ziglio wrote: > This is required by GStreamer. Is it related to the gstreamer bug you have opened recently ? > > Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> > --- > server/gstreamer-encoder.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/server/gstreamer-encoder.c b/server/gstreamer-encoder.c > index df54cad..e637b8a 100644 > --- a/server/gstreamer-encoder.c > +++ b/server/gstreamer-encoder.c > @@ -1260,7 +1260,7 @@ static inline int line_copy(SpiceGstEncoder > *encoder, const SpiceBitmap *bitmap, > > /* Copy the line */ > uint8_t *src = chunks->chunk[chunk_index].data + > chunk_offset; > - memcpy(dst, src, stream_stride); > + memcpy(dst, src, MIN(stream_stride, bitmap->stride)); > dst += stream_stride; > chunk_offset += bitmap->stride; > } > @@ -1351,7 +1351,7 @@ static int push_raw_frame(SpiceGstEncoder > *encoder, > { > uint32_t height = src->bottom - src->top; > uint32_t stream_stride = (src->right - src->left) * encoder- > >format->bpp / 8; > - uint32_t len = stream_stride * height; > + uint32_t len; > GstBuffer *buffer = gst_buffer_new(); > /* TODO Use GST_MAP_INFO_INIT once GStreamer 1.4.5 is no longer > relevant */ > GstMapInfo map = { .memory = NULL }; > @@ -1362,6 +1362,10 @@ static int push_raw_frame(SpiceGstEncoder > *encoder, > uint32_t skip_lines = top_down ? src->top : bitmap->y - (src- > >bottom - 0); > uint32_t chunk_offset = bitmap->stride * skip_lines; > > + // GStreamer require the stream to be 4 bytes aligned > + stream_stride = (stream_stride + 3) & -4; (maybe it is just me but) imho is not easy to read binary operation with negative numbers. Can you switch to ~3 Thanks, Pavel > + len = stream_stride * height; > + > if (stream_stride != bitmap->stride) { > /* We have to do a line-by-line copy because for each we > have to > * leave out pixels on the left or right. _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel