Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RetroPlayer] allow using wayland with CRPRendererDMA #17544

Merged
merged 5 commits into from Apr 8, 2020

Conversation

lrusak
Copy link
Contributor

@lrusak lrusak commented Mar 23, 2020

This allows us to use the CRPRendererDMA with wayland windowing (as long as there is registered CBufferObjects.

The new CBufferObjects that were merged in #17523 and #17532 allow wayland to use the DMA rendering path.

I added a commit to check if CBufferObjectFactory contains registered CBufferObject types so that we can fallback seemlessly to the CRPRendererOpenGLES if none are registered. @garbear please check this commit and let me know if you think that is the correct place to check this.

@lrusak lrusak added Type: Feature non-breaking change which adds functionality Platform: Linux v19 Matrix labels Mar 23, 2020
@lrusak lrusak added this to the Matrix 19.0-alpha 1 milestone Mar 23, 2020
@lrusak lrusak requested a review from garbear March 23, 2020 05:16
@lrusak lrusak requested a review from yol as a code owner March 23, 2020 05:16
@garbear
Copy link
Member

garbear commented Mar 23, 2020

Tentative approval, let's wait for morning coffee to kick in and I'll be back later :)

xbmc/utils/BufferObjectFactory.h Show resolved Hide resolved
xbmc/utils/BufferObjectFactory.cpp Show resolved Hide resolved
xbmc/utils/BufferObjectFactory.cpp Show resolved Hide resolved
@lrusak
Copy link
Contributor Author

lrusak commented Apr 7, 2020

@garbear is the change in 31df19c what you had in mind?

@garbear
Copy link
Member

garbear commented Apr 7, 2020

Two suggestions:

  • Change if (!winSystemEGL) to if (winSystemEGL == nullptr) for a type-safe comparison
  • Improve the exception message. "dynamic_cast failed to cast to CWinSystemEGL" is obvious from the code, so maybe mention that RetroPlayer DRM is only implemented on EGL platforms, and/or possibly what went wrong to end up failing the check

@lrusak
Copy link
Contributor Author

lrusak commented Apr 8, 2020

@garbear updated

Copy link
Member

@garbear garbear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good!

@lrusak lrusak merged commit 16d3339 into xbmc:master Apr 8, 2020
@lrusak lrusak deleted the wayland-dma branch April 8, 2020 21:14
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Apr 10, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request May 5, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 3, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 4, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 4, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 5, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 6, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 6, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 6, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Maven85 pushed a commit to Maven85/kodi that referenced this pull request Aug 7, 2020
[RetroPlayer] allow using wayland with CRPRendererDMA
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Platform: Linux Type: Feature non-breaking change which adds functionality v19 Matrix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants