Replies: 14 comments 8 replies
-
I do not, but creating an overlay for the frame is something I have on my list as well... Though, I had assumed I'd do it directly in the picture frame app - but I haven't really started any experimentation. I do wonder if an entirely separate app (running in its own app framework) on top of the frame might be a bit heavy for (at least some) RPis, but it's an interesting thought... |
Beta Was this translation helpful? Give feedback.
-
That would be really neat. I had thought about a weather forecast screen as well which you could activate by voice control or a webcam view up on the mountain. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
no, its just the rendering engine. Electron makes also use of nodejs. So pictureframe could simply exec predefined program.js files. Terminating could be sending a signal like SIGTERM. Starting and stopping via mqtt/webinterface should be easy. Backdraw is that, electron requires X. You can put a transparent/invisable window over the picture. |
Beta Was this translation helpful? Give feedback.
-
Just a simple scetch.
|
Beta Was this translation helpful? Give feedback.
-
Actual I tested it on my ubuntu vm. But I will give it a try on my raspberry 3B. |
Beta Was this translation helpful? Give feedback.
-
On Pi3 I have to run This works fine. The CPU load for my clock example is not really higher. @paddywwoof But on the PI3 I was not able to place the window on top of Picture Frame. On my VM it was not a problem to put transparent window in the foreground. Any tips? I tried glx true and false. |
Beta Was this translation helpful? Give feedback.
-
Finally I got it working.
It doesn't matter if glx is true or false. If you use legacy gl driver, PictureFrame is always the top window. Load is around 0.8 (5 min. average). Memory usage jumps from below 20% up to below 50%. It's nice to have an animated clock on the frame. I have to find out. How to deliver (based on commands to PictureFrame) different content, to switch between clock, weather forecast, open street map showing location of picture..... Thinking of something like a plugin structure for PictureFrame to easy extend browser content (e. g. on a touch screen hit empty screen and blend in buttons to show next, prev image) |
Beta Was this translation helpful? Give feedback.
-
If you like to test. https://github.com/helgeerbe/picframe-overlay |
Beta Was this translation helpful? Give feedback.
-
@helgeerbe - I'm curious regarding the advantages you see to this solution as compared to just making a simple (optional) overlay panel as part of the picture frame app itself? On the surface, it seems like a lot of extra machinery (and management of that machinery), to accomplish something that should be rather straight-forward as a part of the app itself. I haven't looked this over well (and I certainly haven't tried it), so maybe there really is something going on here that would be difficult to accomplish inside the picframe app itself - I'm not sure. Thanks for any insights... |
Beta Was this translation helpful? Give feedback.
-
Hi @jgodfrey . I started with the idea to have some widgets running on top of picframe. Controlled by (start/stop) picframe. I guess it would quite easy to blend in some simple overlays. E. g. clock, weather forecast. But then I was thinking about the user we have. Some might like a digital clock, some would like an analog clock. Overlay should be located upper right corner. Centered in the middle of the frame.... So I started thinking about to make it more universal. Having a plugin structure, where everybody could create his own widget, or tweak an existing one to his needs. Then I read the discussion about controlling the picture frame over a touch screen. I thought a browser interface would be great. With html, css, and javascript you can do and create every widget you like. But you don't have to think, how to render the widget, how to implement buttons, how to handle user interaction. When I checked browsers I had to learn, that it seems not possible to make the background transparent. Backdraw. This is not a lightweight solution. It requires X. But it runs multipel platforms. And createing a new widget is as easy as creating a webpage.. Even to implement a touch gui would be easy. e. g. tapping at the botton of the frame you will blend in some control buttons. Clicking the button will make a webcall to picframe (interface is already implemented) to move to the next picture, tun shuffle on/off ... |
Beta Was this translation helpful? Give feedback.
-
Just came across pywebview pywebview is a lightweight cross-platform wrapper around a webview component that allows to display HTML content in its own native GUI window. You may think of as Electron for Python (minus huge executable sizes). It gives you power of web technologies in your desktop application, hiding the fact that GUI is browser based. You can use pywebview either with a lightweight web framework like Flask or Bottle or on its own with a two way bridge between Python and DOM. But I don't know, if it is possible to make the background transparent. |
Beta Was this translation helpful? Give feedback.
-
Last but not least. Picframe on Pi4 is running as root. So it might be a good idea to run the wigets (which could connect to the world) in different process space with normal user rights. |
Beta Was this translation helpful? Give feedback.
-
Thanks for the input Helge - I appreciate it. |
Beta Was this translation helpful? Give feedback.
-
Hi,
does anybody of you have first hand experience with electron?
I'm wondering, if it is easy to create simple overlay applications with a transparent background. This could be
So the application could run above PictureFrame
Beta Was this translation helpful? Give feedback.
All reactions