Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • VLC VLC
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 3.8k
    • Issues 3.8k
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 287
    • Merge requests 287
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Artifacts
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • VideoLANVideoLAN
  • VLCVLC
  • Merge requests
  • !299

Draft: wayland: add background surface and center video

  • Review changes

  • Download
  • Patches
  • Plain diff
Open Alexandre Janniaux requested to merge alexandre-janniaux/vlc:wl-shm/blacksurface/1 into master Jun 23, 2021
  • Overview 17
  • Commits 1
  • Pipelines 2
  • Changes 1

Add a subsurface which displays the video, allowing to change its position from the vout display to center it, and use the vout window surface to render the black border when the video aspect ratio doesn't match the window size.

It's a draft MR because:

  • on wlroots, EFL, using subsurface place functions with the parent result in a crash.
  • on KDE, place_below with the parent doesn't have any effect.
  • on gnome-shell, pushing a 1x1 buffer for the toplevel surface, even with the wp_viewporter resizing the buffer to the correct size, trigger a configured event on the xdg-shell backend which signal a resize to 1x1.
  • there's a single subsurface for the border, maybe up to 4 subsurfaces can lead to a better result for handling the borders.
  • the video is placed above the back borders, although it's usually better to place it in the lowest hardware plane.

So the support is really really poor.

It's also an additional surface layer that might take an HW plane for nothing on some platforms.

To workaround these issue, maybe adding the functionnality in a different submodule can be done.

This MR was already published in the previous years, but never updated before.

Fixes #18045

Edited May 26, 2022 by Rémi Denis-Courmont
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: wl-shm/blacksurface/1

VideoLAN code repository instance