Code Monkey home page Code Monkey logo

Comments (10)

Rafostar avatar Rafostar commented on May 28, 2024 1

@Seikm

in the terminal, the response is still No such element or plugin 'clappersink'

Either packaging problem or some broken plugin cache. Definitely not hanabi fault. If it works from inside the code, I guess you can ignore it. Regarding performance, I do not want to start discussing about this in the same issue without the extension dev permission. For Clapper related questions feel free to ask on Clapper matrix channel through. Let's not change this issue original topic.

from gnome-ext-hanabi.

delucca avatar delucca commented on May 28, 2024

Same thing here. Also, if I press Super+D it breaks the wallpaper on the secondary screen. The same happens if I try to switch to a secondary workspace (the wallpaper breaks)

from gnome-ext-hanabi.

Rafostar avatar Rafostar commented on May 28, 2024

I have clapper installed by the opensuse package manager, but it seems that the extension cannot use it.

Extension uses GstPlay library (including its GI bindings) together with custom sinks. Check if you have installed both:

gst-inspect-1.0 clappersink
gjs -c "let GstPlay = imports.gi.GstPlay;"

If you are correctly using a custom sink, test-renderer.sh window title will have suffix with the sink name, e.g: - clappersink.

from gnome-ext-hanabi.

Seikm avatar Seikm commented on May 28, 2024

@Rafostar
The introspection bindings were missing, I downloaded them and now test-renderer.sh runs with clappersink.
But when I run gst-inspect-1.0 clappersink in the terminal, the response is still No such element or plugin 'clappersink'. I tried downloading the 32bit versions of gstplay and gstplayer, but the response remains the same.
Performance improved from 15% CPU to 7%. So I don't know if this is an issue that should be ignored, or maybe the performance could be further improved?

from gnome-ext-hanabi.

delucca avatar delucca commented on May 28, 2024

@Rafostar one question, what about what I reported? I can record a video if you want, but basically everytime I press Super+D (or basically any key if the desktop is visible) the wallpaper crashes (it simply duplicates in a super weird alignment

The same happens if I try switching workspaces

from gnome-ext-hanabi.

Rafostar avatar Rafostar commented on May 28, 2024

@delucca
I only maintain/help with Clapper. You will have to wait for this extension developer response for anything extension related. Sorry.

from gnome-ext-hanabi.

jeffshee avatar jeffshee commented on May 28, 2024

Hi @Seikm @delucca, thanks for reporting! Also @Rafostar thanks for helping~

@delucca May I know what's the action bind to the Super+D key combination? (I don't have this key combination enabled by default on Fedora, so I have no idea what it does.)

@Seikm Ok... It seems that I also have the same issue with dual screen setup in GNOME 42.4 as well. It could be a regression of previous commit. Let me check what caused this.

For the GNOME 43 support, please give me more times! 😂

As for performance, if hanabi uses clappersink for the playback, it's already doing its best! =)
There could be a minor CPU overhead on extension side (not on clapper side), since hanabi creates a new renderer's window preview and pastes it everywhere the system wallpaper appears. There may be a better and more efficient way to do it, but I'm out of ideas and know-how right now.

(Off topic) Below is some implementation details in case anyone is interested. Please open another issue for suggestions on this if any.

this._wallpaper = new Clutter.Actor({
layout_manager: new Shell.WindowPreviewLayout(),
// The point around which the scaling and rotation transformations occur.
pivot_point: new Graphene.Point({ x: 0.5, y: 0.5 }),
});
let renderer = this._getRenderer();
if (renderer) {
this._wallpaper.layout_manager.add_window(renderer);
}

As you can see I'm abusing the Shell.WindowPreviewLayout() here for getting a clutter actor (in this case the renderer's window preview). Originally I wished I could use something like ClutterGst, that can play a video into a clutter actor, but that stuff is deprecated and doesn't work with GNOME Shell anymore... 😩

from gnome-ext-hanabi.

Rafostar avatar Rafostar commented on May 28, 2024

@jeffshee

As for performance, if hanabi uses clappersink for the playback, it's already doing its best! =)

That might be true in case of Nvidia, but for Intel/AMD as I mentioned in #19 (comment), either you or users would have to enable newer experimental VA element under Wayland session to get current "best" =)

from gnome-ext-hanabi.

delucca avatar delucca commented on May 28, 2024

Hi @Seikm @delucca, thanks for reporting! Also @Rafostar thanks for helping~

@delucca May I know what's the action bind to the Super+D key combination? (I don't have this key combination enabled by default on Fedora, so I have no idea what it does.)

@Seikm Ok... It seems that I also have the same issue with dual screen setup in GNOME 42.4 as well. It could be a regression of previous commit. Let me check what caused this.

For the GNOME 43 support, please give me more times! joy

As for performance, if hanabi uses clappersink for the playback, it's already doing its best! =) There could be a minor CPU overhead on extension side (not on clapper side), since hanabi creates a new renderer's window preview and pastes it everywhere the system wallpaper appears. There may be a better and more efficient way to do it, but I'm out of ideas and know-how right now.

(Off topic) Below is some implementation details in case anyone is interested. Please open another issue for suggestions on this if any.

this._wallpaper = new Clutter.Actor({
layout_manager: new Shell.WindowPreviewLayout(),
// The point around which the scaling and rotation transformations occur.
pivot_point: new Graphene.Point({ x: 0.5, y: 0.5 }),
});
let renderer = this._getRenderer();
if (renderer) {
this._wallpaper.layout_manager.add_window(renderer);
}

As you can see I'm abusing the Shell.WindowPreviewLayout() here for getting a clutter actor (in this case the renderer's window preview). Originally I wished I could use something like ClutterGst, that can play a video into a clutter actor, but that stuff is deprecated and doesn't work with GNOME Shell anymore... weary

about the Super+D, it is the combination to show the desktop. But, TBH, any keystroke I press glitches the wallpaper for some reason.

I can see the glitch after pressing Super+D probably because the wallpaper appears

from gnome-ext-hanabi.

jeffshee avatar jeffshee commented on May 28, 2024

It is fixed in the latest commit! Sorry for the late and Merry Christmas~🎄

from gnome-ext-hanabi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.