Show HN: I reverse engineered Apple's video wallpapers

(github.com)

295 points | by kageroumado 11 hours ago ago

68 comments

  • tharropoulos 29 minutes ago ago

    Really nice work. We went down a similar rabbit hole recently and reverse engineered the Aerials catalogue to figure out how Apple wires this stuff up, so seeing another open source project doing this is great. The detail I love most and one I can't replicate on our own tool is how the animation persists between the login window and the live desktop. We built phonto as a cross platform take on the same idea, https://github.com/museslabs/phonto. I was about to start writing an article on the whole reverse engineering process and this might be the nudge I needed to start working on it.

  • encore2097 10 hours ago ago

    Very neat. I was confused at first, I was like you can download the video screensavers.. why scrape the frames. Then I saw your comment and read I can use my own videos for desktop and lock screen. Great work! Dont bury the lede! A title with the hook of what and how would be super helpful!

  • buildbot 9 hours ago ago

    As much (fairly well deserved) hate as Tahoe gets, the video wallpapers and transparency are such a fun Windows Vista vibe I get nostalgia. Time to set this up with the Vista waterfall wallpaper and reallllyyy feel like it’s 2007!

    • _kb 8 hours ago ago

      What do you mean Windows Vista "nostalgia"? That makes me feel a little long in the horn.

      • Springtime 7 hours ago ago

        > That makes me feel a little long in the horn

        I see what you did there :)

        • ChrisMarshallNY 2 hours ago ago

          I attended the Longhorn event, where they played Director scripts, and told us it was “live code.”

      • geerlingguy 7 hours ago ago

        There are likely a number of folks on this forum now who were born after Vista was released.

        • _kb 7 hours ago ago

          Nope. 2007 is like 2 or 3 years ago, tops.

          • charcircuit 2 hours ago ago

            Vista released over 19 years ago.

            • stavros 2 hours ago ago

              You missed the joke.

              • charcircuit an hour ago ago

                Being unable to know the current date or being unable to subtract two simple numbers is not funny. Encouraging such behavior will waste people's time having to deal with people on this site who can't do simple arithmetic. There are other websites where such cheap "humor" is more acceptable.

                • dspillett an hour ago ago

                  > Encouraging such behavior will waste people's time having to deal with people on this site who can't do simple arithmetic.

                  We shouldn't encourage people who can't properly read and understand a comment before replying either, but here we are talking to you who jumped on correcting the “2 or 3 years” to “19 years” without noticing that “2007” was in the post so the poster was obviously well aware of that.

                  > being unable to subtract two simple numbers is not funny

                  1. That is not the joke. It is referencing how humans experience the passage of time at massively different rates to the actual reality, especially as we age.

                  2. Humour is subjective/ So is, to an extent, the amount of it that is acceptable in a given environment. Sense of humour is sometimes objectively non-existent, as you helpfully illustrate by clear example.

      • samat 6 hours ago ago

        Still burned they did not ship winFS then

        • breppp 5 hours ago ago

          Good thing it eventually grew to replace NTFS

      • ebbi 8 hours ago ago

        guy_holding_shoulder.jpg

    • asimovDev 2 hours ago ago

      https://windowswallpaper.miraheze.org/wiki/Windows_Vista

      which waterfall are you talking about? i am also surprised to see how many wallpapers were apparently available on Vista. All I remember is the default green gradient thingie and I think I had the bamboo forest on at some point

      • dspillett 41 minutes ago ago

        > All I remember is the default green gradient thingie and…

        IIRC at that time users were split fairly completely into three types: those who customised their OS look a lot, sometimes spending far too much time on it (I was one of them back then), those who had developed a preferred look and just kept that as much as possible between OS changes, and those who just used the defaults and got on with whatever else. This means the other wallpaper that someone at MS put effort into collecting together hardly ever got seen: many users kept the one default, and almost all who didn't had something that they chose from other sources. Maybe the others might have seen the light of day more often if there had been an explicit “choose your wallpaper” prompt as part of user on-boarding.

    • riddlemethat 8 hours ago ago

      I’m imagining dozens of people worldwide sharing your nostalgia for Vista.

      • Gigachad 8 hours ago ago

        It's called frutiger aero now. Lot of people very bored with modern safe design nostalgic for when tech and UI was weird and bold.

        • darkwater an hour ago ago

          Let a sufficient amount of time pass, and what people knew in their children/teenage years will be remembered with nostalgia.

        • voidUpdate 3 hours ago ago

          The funniest thing about the "frutiger aero" thing is that it looks nothing like how I remember vista looking

          • Gigachad 2 hours ago ago

            It’s the same idea but dialed up to 11. Apple’s Liquid Glass is a more restrained application of the style.

      • zaps 8 hours ago ago

        “Good old Vista. People give it a bad press but I’m never upgrading, why would I? It just feels like a good pair of jeans.”

    • wpm 7 hours ago ago

      The moving wallpapers are near the first few times but I can't turn it off. I had to dig deep into WallpaperKit (I mean really? It's a friggin wallpaper) to find the static last frame of the wooshy moving BS.

  • postalcoder 8 hours ago ago

    Wow, thank you for this. I've been working on a screensaver suite but LegacyScreenSaver is so janky. I was hoping someone would figure out apple's private wallpaper framework and you did!

    • mikestaas 7 hours ago ago

      OMG, LegacyScreenSaver is such a memory hog!

  • musicale 8 hours ago ago

    Apple's best video wallpaper is "Macintosh". I am interested in how it works.

    • futhey 7 hours ago ago

      Same! I distinctly remember seeing portions of this wallpaper that led me to believe it's procedurally generated and not simply a collection of video files, and had to rewatch it to confirm. There are several points where the date and time match the system date and time down to the second.

      • fphilipe 6 hours ago ago

        It features the current date and time with seconds, so it must be rendered on the fly.

        • troybetz 5 hours ago ago

          The assets and some? of the scripting for it are in a bundle at:

          /System/Library/ExtensionKit/Extensions/WallpaperMacintoshExtension.appex

          Can see the time and date being added here I think:

          System6ControlPanel.program

              //
              //  System 6 Control Panel
              //  Macintosh 40th Anniversary
              //
              //  Copyright © 2024 Apple. All rights reserved.
              //
              //----------------------------------------------
          
              start simultaneous
                  scale out
                  let image = "System6ControlPanel"
                  ...
                  ...
                  add time at 267, 165 name "Geneva12"
                  add date at 274, 239 name "Geneva12"
              end simultaneous
  • ellisd 2 hours ago ago

    Amazing, can’t wait to try this out!

    On a similar note, I’d love to replace Aerials on tvOS with my own videos. I have yet to figure out how to craft a working data feed that the tvOS will accept using the secret mode that I believe is used in the retail store displays.

  • arkh an hour ago ago

    Reminds me how windows 98 allowed using a HTML page as background. Said HTML could include videos.

  • dostick an hour ago ago

    How did you steer Claude for strict concurrency, can you share the CLAUDE.md?

  • ventana 3 hours ago ago

    Nice project, thank you for sharing!

    Out of curiosity: how much did you need to steer Claude while working on this project, and how long did it have?

    Asking partly because I see "Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>", and partly because I keep hearing "so what do you do with all these agents", and this is a good example of what people do with all these agents.

    • kageroumado 3 hours ago ago

      Not much, Claude was trying different things on their own for hours. It was Opus 4.6, this public release was done by 4.7

  • wanoir 10 hours ago ago

    So cool! This reminds me I wanted to try setting a custom video background with some footage i had. Didn’t even realize it wasn’t natively supported till i saw this!

    • kageroumado 9 hours ago ago

      Thank you! I’m glad you like it

  • shideneyu 2 hours ago ago

    Neat job. And that's interesting to see how it works. I hope to see apple connectivity being reversed engineered too on day

  • kageroumado 9 hours ago ago

    The app now has a landing page with a download link and you can also see my other projects: the largest one is Refrax browser, but I also have many other small utility apps!

    https://kagerou.glass/phosphene/

    https://kagerou.glass

    • ggrelet 2 hours ago ago

      How did you bring up the page so quick? And what helped you design it?

      • blazarquasar 2 hours ago ago

        It’s entirely designed by claude. Looks like every claude website out there.

      • divan 2 hours ago ago

        And how did you style it like Anthropic design system? :D

    • sixeyes an hour ago ago

      frieren spotted!

      also, nice typography.

  • mgaunard 9 hours ago ago

    Are there specific video wallpaper sets I can download that leverage these features?

    • kageroumado 9 hours ago ago

      You can use any website that lets you download video wallpapers, or you can make one yourself. Any video can be played

      • mgaunard 4 hours ago ago

        well I'd specifically want one that's well-designed to make use of the various features you pointed out: highlight battery level, thermals etc.

    • buildbot 9 hours ago ago

      I vote the Vista wallpapers personally; feels just right.

  • ChrisMarshallNY 10 hours ago ago

    Very cool!

    However, it may definitely get broken by Apple, as you note.

    • kageroumado 10 hours ago ago

      I don’t think they’ll touch this part anytime soon. It’s been unchanged for a few years now, they certainly have other priorities.

      • ChrisMarshallNY 10 hours ago ago

        Good on ya.

        I won't use it, myself, because I can't deal with wallpaper moving behind my work (I also can't listen to music, while I work. Maybe it's a "generational" thing). Also, I use a 49-inch ultrawide, so it might be vomit-inducing.

        I remember some other utility that played wallpaper videos, but it wasn't anywhere near as nicely done.

        • crimsontech 39 minutes ago ago

          It doesn't move while you work, its just the lock screen and when you log in.

        • dylan604 9 hours ago ago

          Which generation is that? I'm a Gen Xer. I can't work without music, but specific music without lyrics for my brain to try to follow.

          • ChrisMarshallNY 5 hours ago ago

            I’m a “late boomer” (born in ‘62).

  • markdown 9 hours ago ago

    These damned wallpapers gave me my worst experience with Apple. MacOS would delete them and redownload automatically over and over again, using almost a terrabyte of data per week.

    And I wasn't even using video wallpapers at the time.

    Just discovered I had no internet 3 days into the month as my ISP had cut me off. Had to dig deep and spend hours I'll never get back trying to find out where all the data was going.

    Here's a thread I just found now that shows others having similar issues: https://www.reddit.com/r/MacOS/comments/1ii38g8/macbook_wall...

    • kageroumado 9 hours ago ago

      This app injects itself directly into Apple’s actual pipeline, so your videos won’t get removed or changed. It’s not just an automated replacer of Apple’s own videos.

  • w-ll 9 hours ago ago

    remember when windows had html wallpapers. brb gonaa agent something that i hope doenst supply chain my entire life

    • hunter2_ 7 hours ago ago

      The little IE4 widgets called "active desktop"?

      • throw310822 3 hours ago ago

        You could set a full-screen, interactive browser page as the backdrop of your desktop. Not sure what communication it was allowed to have with the desktop events, but I always thought it was a clever hack that could have been explored and expanded further.

        • sixeyes an hour ago ago

          i remember setting a html with a flash file and it did track the cursor accurately for some fun effects. couldn't keep it like that due to resource use but yeah, it was fun!

          icons and text would get single-color backdrops though. no transparency back to the html

        • Novosell 2 hours ago ago

          Making even the background run electron, eh?

          • happymellon 23 minutes ago ago

            Unfortunately it was IE.

  • manuisin 8 hours ago ago

    Woah, thank you! Just checking these will keep on working on the lock screen and as screen savers too?

    • kageroumado 8 hours ago ago

      The video will keep playing on the lock screen, but screen savers are a different thing. You can have the same video as your wallpaper and screen saver though.

  • contingencies 5 hours ago ago

    Suggested monetization strategy: porn.

  • nashashmi 8 hours ago ago

    Title should be prefixed with show hn:

    • dang 8 hours ago ago

      I had the same thought and just did that, and your comment was the next thing I saw :)

    • daemonologist 8 hours ago ago

      I wonder about this when I see someone post their own work without the Show HN prefix - is it always supposed to be a Show? (Enforcement/community objection to the lack thereof doesn't seem to be very strenuous, if so. Or, maybe it gets fixed after a little while and I haven't noticed.)