Feeding my own videos to Apple TV screensaver
Asked Answered
S

2

8

On the 4th gen Apple TV you can select a custom json file URL to load screensaver movies other than the apple ones. For that you have to go into settings, move to about, while on about, click Play/Pause 4 times. This enters a store/channel mode, which allows when selecting channel mode to specify the URL where to fetch the movies from via an intermediary JSON file describing the download URLs. This worked one time for me and one of my own movies was downloaded. But I changed the URL since then, and the Apple TV for several days has not downloaded any of the new movies.

I have both 1080p versions (about 600MB per movie) and 720p versions (about 70MB per movie) available. My version of the JSON file is located here: http://wx.inside.net/sat/ss.json, you can compare this with Apple's own version here: http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/entries.json, I think the syntax is OK in mine.

The Apple TV has been on permanently, so would have had ample time to download the new movies, and the movies have been available (and play fine on the iPad, or MBP, using the URLs from the JSON file.

Questions: - Is there a way to get some feedback from the Apple TV as to whether it has fetched the latest JSON file? - Can the locally stored / cached movies be erased to force a download of the new movies? - Are there any size / quality limitations on what movie files it will play? - Can I somehow force the Apple TV to reload the screensavers URL?

Sforza answered 21/4, 2016 at 8:14 Comment(0)
S
4

In addition to the above, you can make the Apple TV use your own JSON for the screensavers even when not in channel mode (i.e. in normal operating mode) by "spoofing" its DNS queries (in the whitest hat way possible).

Simply set up a DNS server that authoritatively resolves a1.phobos.apple.com to your own server but forwards any other queries, then set up a web server that answers to that name and replicate the full path to the JSON file, but (obviously) have it point at your own file.

Then set the DNS manually in the TVs network configuration to your DNS. Done!

Sforza answered 11/5, 2018 at 23:57 Comment(0)
S
2

Problem solved: movie files need to have file name extension .mov (I used .mp4) - irrespective of content format. Way to go Apple...

Hi Balthasar,

I'm reaching out to you for help regarding the possibility of streaming my own videos instead of the Aerial videos as a screensaver in the Apple TV.

As far as I've been doing my research online, I understand that the process is as follows:

With an Apple TV 4th Generation hooked up and running... Go to Settings > General and then click Play/Pause button 4 times on the Apple TV Remote until you get to the settings to Demo mode. Inside of the Demo Mode settings, you are presented with 3 options; Off, Apple Store, and Channel. If you enable the "Channel" mode, there will be a config URL that you can use to feed info for the screensavers. I don't know how to actually accomplish the last part and was wondering if you could elaborate.

Based on another post on stackoverflow I have downloaded the .json file and understand that I have to my modified .json file on a server and type in the address of where I have it hosted in the URL at the Channel mode in the Apple TV. On the other hand I understand that my own videos have to be .mov in order to work. However, inside of the .json file I have no clue on the following marked on bold:

[ { "id" : "73F3F654-9EC5-4876-8BF6-474E22029A49", "assets" : [ { "url" : "http://a1.phobos.apple.com/us/r1000/000/Features/atv/AutumnResources/videos/comp_GL_G004_C010_v03_6Mbps.mov", "accessibilityLabel" : "Greenland", "type" : "video", "id" : "D388F00A-5A32-4431-A95C-38BF7FF7268D", "timeOfDay" : "day" },

––––––––––––

Concrete questions:

1) Can you give examples on to how to configure the server on how to serve that .json file? Where can I host this file on Apache or Windows IIS?

2) On the .json file there are a bunch of video files, but I might not be hosting the same amount, for now, most likely it will be just a couple, perhaps in the future I could host many more. Can I just erase the code and leave only those that I need?

3) What is the "id" on the code, how do I get it for my own videos? Is it needed in order to be fetched by the Apple TV?

4) What about the accessibilityLabel? Is this required? Can I omit it? Delete it? Or simply replace it with my own label?

5) Same thing with the timeOfDay. What am I supposed to use this for?

6) Where should I host the video files at? Can I use any cloud service like Google Drive, Dropbox, OneDrive? If not, then what kind of server should be used.

Please be as specific and descriptive as possible.

Please help me out. I'm sure many more are interested on this feature and would love to learn how to get the most out of their Apple TV. I promise to make a video or a very detailed guide on how to do this "for Dummies" like myself, so that we can spread the word.

Thank you very much in advance.

Sforza answered 22/4, 2016 at 12:34 Comment(7)
1. You can host the JSON file anywhere that's accessible to your Apple TV, whether on your local network or the internet, if you're not dynamically generating the file, then you can just serve it as a static website. Apache or Windows IIS would both work.Scop
2. You can add or remove as many JSON nodes as you would like videos.Scop
3. The id appears to be a UUID, on a unix computer you can use the terminal command uuidgen to generate a UUID.Scop
6. Like with the JSON file, you can host the video files anywhere that's accessible to your Apple TV, if using a file sharing service like Google Drive, Dropbox or OneDrive, you need to ensure the file is publically accessible (and doesn't breach any trademarks or copyright).Scop
No way to do this outside demo mode?Turpin
Can anyone get this working on tvOS 13.3? When I change the configuration url it seems to do nothing, i.e, the standard ATV looped video still plays regardless if this link is changed for something else: atv.demos.apple.com/gb-en-CBlancheblanchette
@Blancheblanchette - did you get this to work? Am also trying without luck.Fante

© 2022 - 2024 — McMap. All rights reserved.