Post B2kMlQOdUAQ7PCz2pc by divyaranjan@mathstodon.xyz
 (DIR) More posts by divyaranjan@mathstodon.xyz
 (DIR) Post #B2iSpRYjJb17Zy5JHU by divyaranjan@mathstodon.xyz
       2026-01-27T16:47:32Z
       
       0 likes, 1 repeats
       
       Introducing PALE (Picture & Animation Library for Emacs)I have been trying to push the limits of #Emacs to do real-time graphics since I started working on Emacs Reader (~1 year).Emacs Reader has to do a lot of hacks to be efficient in performance, and in doing so we encountered memory leaks of horrible kinds (in Emacs itself), GC overloading of strings and other issues.Finally over the last month or so, I decidee to build a graphics library called PALE for Emacs which will leverage dynamic modules for efficiency. And here's the result, the animation below is hardware-accelerated, i.e the textures are rendered on GPU and then displayed on Emacs.There are jitters here and there, but I still have a lot of room for optimization (I think!). The library will provide an API similar to svg.el, on top of that I will provide a C API so that dynamic module packages like Reader can directly provide image data from C and use it. Right now it lives inside Emacs Reader's git, but it will eventually be separated:https://codeberg.org/divyaranjan/emacs-reader/src/branch/partial-rendering/pale
       
 (DIR) Post #B2iTYPYRcBMyORORuK by hajovonta@mastodon.online
       2026-01-27T16:55:39Z
       
       0 likes, 0 repeats
       
       @divyaranjan what is the framerate you have achieved?
       
 (DIR) Post #B2iTmUbpcPng7kgytE by divyaranjan@mathstodon.xyz
       2026-01-27T16:58:14Z
       
       0 likes, 0 repeats
       
       Note: I haven't yet pushed code that integrates with EGL and OpenGL which is used in the demo, I'm still cleaning it up.
       
 (DIR) Post #B2iVOU4u8pORR2yELI by divyaranjan@mathstodon.xyz
       2026-01-27T17:15:57Z
       
       0 likes, 0 repeats
       
       @hajovonta 25-30 FPS I think, not that stable yet.
       
 (DIR) Post #B2jrvQp5emoL2teJ28 by divyaranjan@mathstodon.xyz
       2026-01-28T09:03:27Z
       
       0 likes, 1 repeats
       
       Some trippy gradient animation:
       
 (DIR) Post #B2kMlQOdUAQ7PCz2pc by divyaranjan@mathstodon.xyz
       2026-01-28T14:49:01Z
       
       0 likes, 1 repeats
       
       And a new screensaver, circa 2007:
       
 (DIR) Post #B2lCJi1tWlNLbOS5HE by divyaranjan@mathstodon.xyz
       2026-01-28T19:24:42Z
       
       0 likes, 1 repeats
       
       Okay another serious breakthrough. After declaring PALE yesterday I stupidly wondered if I can hook this to ffmpeg to decode a video in realtime and play it.Bloody hell it worked. #Emacs is actually rendering a full video in your ordinary text buffer, no xwidgets nothing.I cannot still believe my eyes.
       
 (DIR) Post #B2lCJj6XWygYw5dJ9k by divyaranjan@mathstodon.xyz
       2026-01-28T22:42:37Z
       
       0 likes, 1 repeats
       
       I fixed a whole chunk of flickering and now it is 30FPS smooth!
       
 (DIR) Post #B2lCJkCbRv86LBTfFI by tiang@mastodon.social
       2026-01-28T22:45:38Z
       
       0 likes, 0 repeats
       
       @divyaranjan Amazing!
       
 (DIR) Post #B2lCJpxa2gg6CKUkfA by divyaranjan@mathstodon.xyz
       2026-01-28T21:35:22Z
       
       0 likes, 1 repeats
       
       The library has been separated from Reader:https://codeberg.org/pale/pale
       
 (DIR) Post #B2lEWK4a6oFayUqpOa by divyaranjan@mathstodon.xyz
       2026-01-28T22:54:22Z
       
       0 likes, 0 repeats
       
       @tiang Right?! I am still not sure if this is a dream even though my commits tell me they are not!
       
 (DIR) Post #B2mKZhAlTUvuMwh7r6 by tusharhero@mathstodon.xyz
       2026-01-29T13:33:54Z
       
       0 likes, 1 repeats
       
       @divyaranjan As is tradition, #badapple playing in #emacs with https://codeberg.org/pale/pale
       
 (DIR) Post #B2mRD6LgP6TnTCyVdI by idlip@fosstodon.org
       2026-01-29T14:48:14Z
       
       0 likes, 0 repeats
       
       @tusharhero @divyaranjan Wth are you guys doing.People on the other side (IDEs) will laugh at us
       
 (DIR) Post #B2mS9qe2QzAtqnZasa by divyaranjan@mathstodon.xyz
       2026-01-29T14:58:53Z
       
       0 likes, 0 repeats
       
       @idlip @tusharhero 😁😁
       
 (DIR) Post #B2nxLSVRIZbACKWklc by lens_r@mastodon.social
       2026-01-30T08:22:20Z
       
       0 likes, 0 repeats
       
       @tusharhero @divyaranjan bloody hell, love this#lisp #programming #emacs