[Bug 726193] waylandsink: subsurface & scaling support, plus many other improvements

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Jun 17 05:16:34 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=726193
  GStreamer | gst-plugins-bad | git

George Kiagiadakis <george.kiagiadakis> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #10 from George Kiagiadakis <george.kiagiadakis at collabora.com> 2014-06-17 12:16:27 UTC ---
Merged in master. eb8ab3732e0abb0e364b99037819b8ce1b337b88 up to
0badc1f5fb3d5669d3ef9bcc5a586f80572360f5

Arnaud Vrac (1):
      wayland: install .pc file

George Kiagiadakis (66):
      waylandsink: tidy up the header files
      waylandsink: process display events in a separate thread
      waylandsink: remove unused variables
      waylandsink: Use XDG_RUNTIME_DIR instead of /tmp for the shm file
      waylandsink: move struct shm_pool and its related functions to
waylandpool.c
      waylandsink/waylandpool: move code around for better readability
      waylandsink: split video format related functions out to a separate file
      waylandsink/waylandpool: refactor code
      waylandsink/waylandpool: find the video format from the GstVideoInfo
instead of accessing the sink
      waylandsink/waylandpool: improve debug message
      waylandsink: remove callback and redraw_pending variables from the window
structure
      waylandsink: split window-related code out to a new GstWlWindow class
      waylandsink: cleanup header includes
      waylandsink: apply the same debug category to all the subobjects
      waylandsink: remove the useless wayland_lock
      waylandsink: access sink->pool in a more atomic fashion
      waylandsink: make the display property useful
      waylandsink/waylandpool: ref the display instead of the sink to avoid
cyclic references
      waylandsink: unref the buffer pool
      waylandsink/wlvideoformat: add mappings for many common formats
      waylandsink: handle the list of supported formats properly
      wayland: Add new gst-wayland library containing a new GstWaylandVideo
interface
      waylandsink: implement with stubs the GstWaylandVideo & GstVideoOverlay
interfaces
      waylandsink: implement the GstVideoOverlay & GstWaylandVideo interfaces
      waylandsink/waylandpool: unlink mmaped shm files so that they don't
remain on the file system
      waylandsink/waylandpool: call the start/stop methods of the parent class
      waylandsink/waylandpool: remove useless munmap call
      waylandsink: Handle wl_buffer::release and don't reuse buffers that are
not released
      waylandsink: Wait for the frame_cb to redraw and drop frames meanwhile
      waylandsink: Set external surfaces and their child objects to use our own
event queue
      waylandsink: Build bindings for the unstable wl_scaler spec
      waylandsink: Use wl_scaler/wl_viewport to scale the surface in the
compositor/hardware
      waylandsink: Implement expose() and handle resizing properly in
non-PLAYING states
      waylandsink: Use a boolean in combination with render_cond to comply with
GCond's usage documentation
      waylandsink: increase debug messages
      waylandsink/wlwindow: reuse code between the two constructors
      waylandsink: set an empty input region on the video surface
      waylandsink: fix crash in case there is no pool because of a caps
negotiation error
      waylandsink: Support all video formats supported by the display
      waylandsink: create/destroy the display when entering/leaving the READY
state instead of PAUSED
      waylandsink/wldisplay: bind to the latest available wl_compositor version
      waylandsink: Add myself to the authors list
      waylandsink: remove unused functions
      waylandsink/Makefile.am: Fix scaler-client-protocol.h generation
      wayland/Makefile.am: link with gstvideo to avoid introspection errors
      waylandsink: Update wl_scaler to version 2
      waylandsink: fix assertion failure when stopping immediately after
starting, without displaying anything
      waylandsink: add G_BEGIN/END_DECLS on all headers for consistency
      waylandsink: drop width/height arguments from
gst_wl_window_new_from_surface()
      waylandsink: get the external display handle using GstContext
      wayland: add public API for creating & using the display handle
GstContext
      waylandsink: create and maintain the subsurface inside the sink
      wayland: remove gst_wayland_video_set_surface_size()
      waylandsink: cleanup GstWlWindow a bit after the overlaying semantics
change
      waylandsink: move surface resizing logic to the GstWlWindow and make it
be called from the main thread
      waylandsink: Replace the OBJECT_LOCK with a private render_lock to lock
render operations
      waylandsink: remove the OBJECT_LOCK from set_caps()
      waylandsink: protect access to the display with a new display_lock
      waylandsink: protect access to properties with the OBJECT_LOCK
      waylandsink: remove the manual synchronization from
pause/resume_rendering and use subsurface sync/desync
      waylandsink: rename pause/resume_rendering to begin/end_geometry_change
and update their documentation
      waylandsink: improve the way the video size is passed to wlwindow and
also improve the code for window creation
      waylandsink/wlwindow: take into account the video aspect ratio when
determining the size of the surface
      waylandsink/wlwindow: do not commit a resize when it happens due to a
video info change
      waylandsink: remove the buffer from the surface when going PAUSED ->
READY
      waylandsink/wldisplay: verify that all the required interfaces have been
found on the compositor

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list