Skip to content

Instantly share code, notes, and snippets.

@theothernt
Last active April 24, 2024 12:53
Show Gist options
  • Save theothernt/57a51cade0c12c407f48a5121e0939d5 to your computer and use it in GitHub Desktop.
Save theothernt/57a51cade0c12c407f48a5121e0939d5 to your computer and use it in GitHub Desktop.
A list of the feeds Apple uses for its video screensavers
tvOS 10: 1080p + H.264
http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/entries.json
tvOS 11: 1080p/4K + SDR/HDR + HEVC
https://sylvan.apple.com/Aerials/2x/entries.json
https://t27q97zg19.execute-api.us-east-1.amazonaws.com/prod/aerialAltJSON/4kEntites.json
tvOS 12: 4K + SDR/HDR + HEVC, 1080p + H.264, localised descriptions
https://sylvan.apple.com/Aerials/resources.tar
tvOS 13: 4K + SDR/HDR + HEVC, 1080p + H.264, localised descriptions
https://sylvan.apple.com/Aerials/resources-13.tar
tvOS 15: 4K + SDR/HDR + HEVC, 1080p + H.264, localised descriptions
https://sylvan.apple.com/Aerials/resources-15.tar
tvOS 16: 4K + SDR/HDR + HEVC, 1080p + H.264, localised descriptions
https://sylvan.apple.com/Aerials/resources-16.tar
macOS 14: 4K 120FPS + 240FPS, localised descriptions
https://sylvan.apple.com/itunes-assets/Aerials126/v4/82/2e/34/822e344c-f5d2-878c-3d56-508d5b09ed61/resources-14-0.tar
@HappyMac3920
Copy link

I looked at TVIdleServices.framework in macOS 14 beta 2, and while the manifest URL did not change, I did see that they added this plist into the framework: https://configuration.apple.com/configurations/internetservices/aerials/resources-config.plist I think this URL can help track for new screen savers for macOS.

In tvOS 17 beta3 , it seems also use this config.

screenshot

In the binary however, it still uses the tvOS 15 manifest. I think the reason why the plist file is there is because macOS and tvOS share the same framework, but the manifests are different.

@glouel
Copy link

glouel commented Aug 2, 2023

I did see that they added this plist into the framework: https://configuration.apple.com/configurations/internetservices/aerials/resources-config.plist I think this URL can help track for new screen savers for macOS.

So there's been a bit of movement 2 days ago, that link now points to a new one : https://sylvan.apple.com/itunes-assets/Aerials126/v4/82/2e/34/822e344c-f5d2-878c-3d56-508d5b09ed61/resources-14-0-3.tar

In the binary however, it still uses the tvOS 15 manifest. I think the reason why the plist file is there is because macOS and tvOS share the same framework, but the manifests are different.

I think you are correct, they are likely in the process of merging things. They have added one new video right now in that manifest (the 27th) and that video is brand new (Sonoma Horizon). They have added some extra keys to their manifest format :

        {
            "excludedPlatforms":
            [
                "tvOS"
            ],
            "accessibilityLabel": "Sonoma Horizon",
            "previewImage": "https://sylvan.apple.com/itunes-assets/Aerials126/v4/51/ff/08/51ff0824-8da5-78f0-e218-9e61264965bb/W010_C003_F01@2x.png",
            "shotID": "W010_C003_F01",
            "localizedNameKey": "Sonoma Horizon",
            "includeInShuffle": true,
            "url-4K-SDR-240FPS": "https://sylvan.apple.com/itunes-assets/Aerials126/v4/ec/eb/c8/ecebc8d2-5486-c2b2-52ae-6f0ab2d6b65f/W010_C003_F01_third_sdr_4k_qp24_15Mbps_240p_t2160_tsa.mov",
            "subcategories":
            [
                "3CC63110-FF0E-4443-9A2D-63CD0795954E"
            ],
            "pointsOfInterest":
            {},
            "showInTopLevel": true,
            "preferredOrder": 0,
            "id": "FE876489-CBD5-479B-A8F0-1B67F0741CEA",
            "categories":
            [
                "A33A55D9-EDEA-4596-A850-6C10B54FBBB5"
            ]
        }

Some interesting tidbits I think :

  • first obviously, the excludedPlatforms array, only 2 videos are using it (this one and LA Airport, both are marked as excluded on tvOS) and that might be a way for them to do their early testing of the merged manifests.
  • They have added some extra keys to show stuff in order in macOS and other things, it's mostly self explanatory : includeInShuffle, preferredOrder, showInTopLevel
  • We only have keys for 120 and 240 fps for most videos, but for this new one we only have 240. We used to have empty keys for other formats in other versions. At the very least they will need to add back the hdr versions if they keep on merging this with tvOS manifest so it's likely still a WIP
  • We have a preview image ! Key previewImage, for example : https://sylvan.apple.com/itunes-assets/Aerials126/v4/51/ff/08/51ff0824-8da5-78f0-e218-9e61264965bb/W010_C003_F01@2x.png

So right now this is great for those 27 videos. Let's hope that Apple will keep the effort on fully merging the manifest and that they don't use that opportunity to curate stuff too much. I do have good hopes though from all we've seen!

@HappyMac3920
Copy link

Yeah I did notice that before you wrote the comment. I hope that they will merge the manifest, so that it can be just one json for both tvOS and macOS (as both use the same framework), but right now the file name ends with 14, so it is still for macOS only. I think it makes sense why Sonoma Horizon is excluded from tvOS.

@glouel
Copy link

glouel commented Sep 23, 2023

Quick update, we're at version 10 of this mac manifest : https://sylvan.apple.com/itunes-assets/Aerials126/v4/82/2e/34/822e344c-f5d2-878c-3d56-508d5b09ed61/resources-14-0-10.tar

It contains 14 new videos, 7 from Monument Valley, 4 from Oregon, and 3 "Superblooms" from California.

This is still a macOS manifest only, there's no HDR urls in the manifest, just the 4K 240 FPS (which thankfully they settled on after the 120 FPS). Every video is there though, 134.

The tvOS manifest is somewhere else, I haven't had a chance to dig for it, if someone has it let me know!

Edit: Had a quick dig, found a reference to the old 14-0 manifest and ressources15, I'm wondering if they just use the built in list in tvOS 17, very weird.

@HappyMac3920
Copy link

Quick update, we're at version 10 of this mac manifest : https://sylvan.apple.com/itunes-assets/Aerials126/v4/82/2e/34/822e344c-f5d2-878c-3d56-508d5b09ed61/resources-14-0-10.tar

It contains 14 new videos, 7 from Monument Valley, 4 from Oregon, and 3 "Superblooms" from California.

This is still a macOS manifest only, there's no HDR urls in the manifest, just the 4K 240 FPS (which thankfully they settled on after the 120 FPS). Every video is there though, 134.

The tvOS manifest is somewhere else, I haven't had a chance to dig for it, if someone has it let me know!

Edit: Had a quick dig, found a reference to the old 14-0 manifest and ressources15, I'm wondering if they just use the built in list in tvOS 17, very weird.

I also digged a little into the tvOS part and I did not find the configuration.apple.com aerial URL in the tvOS 17 dyld (nor any other URL that could hint at aerials). Only those that you told me. Also, the new videos are only on the resources-14-0-10.tar file, which I couldn't find in tvOS.
The reason why it is strange is because on that resources-14-0-10.tar manifest, there is no HD version of the videos.
What I also saw was the fact that these 4K-240 FPS videos can be slowed down on QuickTime Player on macOS, but on VLC you cannot, plus on some hardware (like on an NVDIA GeForce GTX graphics card) it will fail to play. However, Intel UHD Graphics was able to handle the playback with small issues.

@glouel
Copy link

glouel commented Sep 25, 2023

What I also saw was the fact that these 4K-240 FPS videos can be slowed down on QuickTime Player on macOS, but on VLC you cannot

This works fine here in VLC 3.0.18 on my (m1) mac?

plus on some hardware (like on an NVDIA GeForce GTX graphics card) it will fail to play. However, Intel UHD Graphics was able to handle the playback with small issues.

Is that on a mac, a "mac", or windows ? Could be some driver issues particularly on a hackintosh, it's certainly not a common format but the dolby vision ones are usually worse.

@HappyMac3920
Copy link

What I also saw was the fact that these 4K-240 FPS videos can be slowed down on QuickTime Player on macOS, but on VLC you cannot

This works fine here in VLC 3.0.18 on my (m1) mac?

plus on some hardware (like on an NVDIA GeForce GTX graphics card) it will fail to play. However, Intel UHD Graphics was able to handle the playback with small issues.

Is that on a mac, a "mac", or windows ? Could be some driver issues particularly on a hackintosh, it's certainly not a common format but the dolby vision ones are usually worse.

My Mac is a MacBook Air (Early 2015). And I also have a Windows PC.

@kubedzero
Copy link

I've added the new 4K SDR 240FPS screensavers to the Aerials Kodi package. enen92/screensaver.atv4#55 134 new video files, totaling 64GB. I made it so these videos are preferred over the regular 4K SDR videos.

For reference, the only apparent difference in the 4K SDR 240FPS videos from the 4K SDR original videos is the jump from 30FPS to 240FPS, and the jump from Main 10 L5 to L6.1. They're both HEVC, both BT.709 color space, etc.

Old video MediaInfo excerpt:

Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5@High
Codec ID                                 : hvc1
Codec ID/Info                            : High Efficiency Video Coding
Duration                                 : 4 min 1 s
Bit rate                                 : 12.3 Mb/s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Frame rate mode                          : Constant
Frame rate                               : 29.970 (30000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.050
Stream size                              : 354 MiB (100%)
Tagged date                              : UTC 2019-07-24 10:21:28
Color range                              : Limited
Color primaries                          : BT.709

New Video Snippet:

ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L6.1@High
Codec ID                                 : hvc1
Codec ID/Info                            : High Efficiency Video Coding
Duration                                 : 4 min 1 s
Bit rate                                 : 14.2 Mb/s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 239.760 (239760/1000) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.007
Stream size                              : 409 MiB (100%)
Title                                    : Core Media Video
Encoded date                             : UTC 2023-07-21 16:47:06
Tagged date                              : UTC 2023-07-21 16:54:27
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : sRGB/sYCC
transfer_characteristics_Original        : BT.709
Matrix coefficients                      : BT.709
Codec configuration box                  : hvcC

THAT SAID, I saw that playback in Kodi resulted in tons of dropped/skipped frames and choppy playback on my older Intel/Nvidia HTPC (Kodi reported the HEVC software decoder). VLC on the same machine couldn't play at all. The machine doesn't seem capable of handling the 240FPS file in its current state, because it plays the 30FPS file without issue.

I'll probably just hoard these 240FPS files for now and await optimizations that make them easier to play.

@glouel
Copy link

glouel commented Oct 2, 2023

THAT SAID, I saw that playback in Kodi resulted in tons of dropped/skipped frames and choppy playback on my older Intel/Nvidia HTPC (Kodi reported the HEVC software decoder). VLC on the same machine couldn't play at all. The machine doesn't seem capable of handling the 240FPS file in its current state, because it plays the 30FPS file without issue.

Yep, most hardware decoding units only do L5.1, or don't handle anything above 120 FPS. So it goes back to CPU decoding and that's a handful at 240 fps. I don't remember what Nvidia does off the top of my head but it's likely that older GPUs don't do L6.1 either.

Intel's QuickSync units are L5.1 only, but for the most recent SKUs. There's a handy table here : https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding

I've had some reports that those don't play great on Intel macs that are still supported under Sonoma, unsurprisingly. On my end, I only plan to make these the default format in Aerial for M1 macs, because those have full hardware decoding.

Still looking for the HDR versions of the new videos, configuration still points to the -10.tar

@kubedzero
Copy link

kubedzero commented Oct 3, 2023

Thanks for the update, I didn't know the L5.1 vs L6 etc. made a difference in decoding. Keep us updated if new TAR files are released with additional videos!

Edit: After reading a bit about the different levels, I see the following in terms of Nvidia cards from https://en.wikipedia.org/wiki/Nvidia_NVDEC

  • 900 series cards support hardware decoding for H.264 but not High 10
  • 1000 series cards add support for HEVC/H.265 4:2:0 at 8/10/12 bit
  • 2000 series cards add support for 4:4:4 HEVC at 8/10/12 bit
  • 3000 series cards add support for AV1 4:2:0 8/10 bit, not 12 bit
  • 4000 series cards add the missing 12 bit AV1

Meanwhile, Intel CPUs based on https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video

  • Skylake/6th Gen supports L5.1 AVC/H.264 and HEVC/H.265
  • Kaby/Coffee/Comet Lake 7th Gen, 8th Gen, 10th Gen supports HEVC 10 bit
  • Rocket/Alder/Raptor Lake 11th Gen, 12th Gen, 13th Gen supports HEVC 4:2:0 12 bit, and decode-only AV1 8 bit and 10 bit
  • Meteor Lake 14th Gen supports AV1 12 bit

So for me on a 900-series Nvidia card and a Skylake 6th Gen Intel CPU, the only hardware decoding support I have is HEVC 8 bit video via the Intel CPU, and these are 10 bit Aerials videos. 💀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment