Comments (8)
I made one with 24 hours. but it won't go past 16. it goes 16 then 1 when I change the time. Any help would be appreciated.
Update 1: I've attached the JSON file
Update 2: I have made some progress. I went through every hour in a day, but a few wallpapers were being skipped. At first, I thought this was due to the 16 image limit. But I changed the date and months and I managed to make 19 of them appear. So there is no 16 image limit.
Here's my hypothesis: Apple is using your location and time to get the altitude and azimuth of the sun, and then compares that to the JSON file and finds the closest match.
Solution if hypothesis true: If I only use 0 and 180 as azimuth, and my only variable in the JSON file is the altitude, this should make all numbers appear. This would be true if you were on the equator on the first day of summer. (12 hours day/12 hour night and sunn is right above you at 12 PM)
with the method above, no matter where you are and what season, the wallpaper shouldn't skip.
Update 3: This is the Altitude and Azimuth I came up with. This should work. I will try and come back to report.
Update4: Here are the wallpapers that manage to set by simply changing the time:
Because I'm in Vancouver, I can't get any wallpapers that have an altitude higher than 60. Because we're far up north and the sun doesn't come too high.
This proves that the hypothesis above is actually true. The OS uses the azimuth and latitude of the sun compared to the current latitude/azimuth of your location right now to pick the closest match.
On top of that, the order of the wallpapers doesn't matter at all. It's all about the azimuth and latitude.
I'm trying to think of ways to make this work no matter where you are and have it go through all of the images.
I got the order of the numbers wrong. the first 12 should have an azimuth of 90, and 12-24 have the azimuth of 270. This resulted in the wallpaper counting backward as time moved forward.
Update 5: Going to try with these numbers:
Chnaged the altitude range to 60 to -60 from 90 to -90.
Hoping this would solve the problem for most. Will come back and update.
Also fixed the wrong order of numbers. It should count up with time moving forward now.
Update 6: The approach above fixed the time going forward. but I didn't get most of the numbers. I'm going to now try a new approach: change the azimuth AND altitude based on where I am as suggested in the main notes. But the problem is that summer and winter have a big difference in the northern parts of earth. so here goes nothing. I'll come back and update again. Here are the numbers I will be trying:
Update 7: I'm getting tired of this. I see what apple is trying to do with matching the azimuth and latitude, but this is ridiculous. I'm using numbers from my lat-long but it keeps jumping back and forth. I'm gonna give this another shot in a few days maybe. for now I'm gonna take a break. If someone wants to take it from here, here's the JSON file I used last with 24 images:
(just change the .txt at the end to .json I'm sure everyone knows this, but i didn't and it got me stuck for a bit)
from wallpapper.
I did some tests!
Hypothesis: Apple periodically calculates the correct elevation/azimuth from the time and location. It then searches the heic for the image closest to that position in the sky.
Test: Generate a heic with an image every 10 degrees of elevation/azimuth (180/10*360/10=648 images). Script: https://gist.github.com/sbliven/7287fa4f37d8abdcfe757a3813f8e6cd
Results:
The blue and orange lines (at 15 min increments) show the calculated elevation and azimuth for my location (Zurich) and for the equator (0N 0E) for today's date (Feb 6, 2016). I then set the time on my computer every hour and recorded which image was displayed. I first did this with location services off (grey points) and then with location on (yellow line).
- Sometimes the image shown was inconsistent. To get reproducible results I had to switch to the Mojave screen save and back occasionally after switching the time.
- Using such a large heic file worked, but loading the Desktop preference pane becomes very slow (10s of seconds). Sometimes updating the image after changing the time was slow too.
- Images are sorted internally first by elevation and then by azimuth.
Conclusions:
- If location services are turned off, apple assumes an equatorial position
- The elevation is generally calculated correctly, but the azimuth jumps around a lot. I'm guessing this is due to some heuristic for finding the best image for a particular sun position. Changing the image order might have an impact, but I haven't tested it.
- It might be feasible to show different images for different seasons (at least at noon/midnight)
- Still not fully predictable what image will be shown for a particular sun position.
from wallpapper.
I've made a test with a new image every 15 minutes, so it is possible, but Apple only reads them about every 1.5 hours so it's not beneficial to do so..
from wallpapper.
Hi Guys,
I have maybe the same problem with the timezone altitude/ azimuth
I'm from switzerland (UTC+2) and i created a wallpaper from Livigno, Italy (same zone). So far so good.
Now i added to the json file the altitude/azimuth from the location of the picture based on 21. Jun 2018 (longest day of the year). I set my first picture to dawn, 2. to sunrise, … 8. to culmination, … 11. to sunset, 12. dusk …
I got the altitude/azimuth from https://www.suncalc.org
- Screen with Mojave dynamic background
- Screen with my own wallpaper
I setup the date and time in the system settings to this date (2018/06/21) and sunrise time (4:53am) on both screens display the sunrise picture. Afterwards i changed the date/time to today and I have some differences.
- Screen display sunrise (6:55am)
- Screen display dawn
So, I believe the pictures are only re-calculated by a specific date/time not sure is it 21. Jun, but the result is good and it works for now :)
We can see the dropdown didn't work correct, if u put the wallpaper in your pictures folder. BUT if u put it into the /library/Desktop Pictures folder it works.
Only the right preview is missing :(
I attach for you my json file, hopefully it helps you.
Have a nice day
from wallpapper.
I made myself a few desktops with 102 images each (link here if you want to test them out). They seem, from my initial test at least, to go through every image sequentially. I had to generate the coordinates based on my current location and season to get them to sync correctly, but so far I have not seen any images skip for a few hours so far. This is with the latest Mojave (10.14.2).
from wallpapper.
Does anyone have the sun positions json exactly matching Apple's Mojave wallpaper with 16 images?
Would appreciate a lot! Thank you.
from wallpapper.
Does anyone have the sun positions json exactly matching Apple's Mojave wallpaper with 16 images?
Yep, see this reply to a previous issue.
from wallpapper.
It seems that there is no limit of 16 images in macOS now. For sure you can use wallpapper for creating HEIC file with more (or less) than 16 images. I'm closing the issue.
from wallpapper.
Related Issues (20)
- Provide prebuilt binary for x64/arm HOT 1
- ISO 8601 timings not working for wallpaper HOT 5
- Having multiple sequence kinds breaks functionality
- Loop in seconds HOT 1
- Using local time for time changing wall paper HOT 2
- Brew install fails HOT 1
- `CoreFoundation._CFObject` not found when executing `wallpaper -e`
- I'm not really understanding how to use the JSON file HOT 3
- The HEIC set to wallpaper doesn't change with time and shows wrong frame HOT 4
- Brew install failed HOT 3
- Activation of SDK from Xcode necessary HOT 1
- Homebrew install not working - Ventura - SwiftPM Errors HOT 3
- Loss in quality when wallpaper is output
- Add warning about the misspelled name.
- Light mode does not seem to work when specifying light / dark and time based images
- wallpapper-exif unsupported format of creation date
- Proposal: Automated Time Based JSON Generator and GPS Adder
- Light/dark positions
- Time-based HEIC not changing at the right times HOT 3
- Having trouble with the JSON file. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wallpapper.