Apple TV's GPU.... some thoughts....

OK for some fun discussions.... according to Wikipedia (as Apple does not post these specs) the Apple TV has the GeForce Go 7300 - which is basically of the GeForce 7 series for laptops. The GPU should be able to support at least Nvidia's PureVideo HD version 1. With the release of OS X Snow Leopard - Quicktime X now utilizes the PureVideo decoder (as long as the GPU in your Mac supports it, i.e the GeForce 9400M on my Mac Book). Shortly after Snow Leopard was released Apple TV v 3.0 was ready for download. Do you think that just maybe Apple TV (if it was not before) is using the Pure Video decoder in the GeForce Go 7300??

To me it would make sense.... if the CPU in the Apple TV is only a 1ghz Intel processor, why not unload any or all of the video processing to the GPU? I can't imagine a 1ghz CPU being fast enough to decode an AVC stream (with audio) and perform video processing at the same time... If it is then I would question the quality of the processing as the algorithms would have to give way to performance over quality - simple things Video Scaling could be using only a basic bilinear method instead of something more advanced.

Anyways - something to discuss 😉

Mac Book, Mac OS X (10.6.2)

Posted on Dec 6, 2009 2:12 AM

Reply
27 replies

Dec 6, 2009 2:57 AM in response to Chenks

Thats the beauty though.... the Apple TV does not truly use a 'Firmware' - the internal hard drive has been partitioned into 3... one holds the OS that the Apple TV is using (whatever version that may be), one holds any media content that was synced to it and lastly one that holds the factory image that is used when a user 'Restores' the unit (hence it will go back to whatever version was installed when you bought it) - a true 'Firmware' would overwrite the existing software permanently.

Anyways.... this does leave the opportunity for Apple to improve that OS drastically. If they could re write the software to take advantage of the hardware's performance - why wouldn't they? 🙂

Dec 6, 2009 6:49 AM in response to streamworksaudio

The fundamental problem with the ATV's GPU is that it isn't discrete, it requires the CPU to handle a significant portion of the graphics processing. That is one of the reasons why I believe the ATV is not up to the task of performing reliably in meeting the demands placed on it by the current software and the HD video that is available for it in some markets.

Dec 6, 2009 6:54 AM in response to Chenks

by firmware i do mean OS.


I'll help you out on this one. Firmware merely refers to system level software that is stored in non-volatile, read-only memory (i.e., a chip). An OS can be stored on a device as firmware, but I believe the ATV's OS is actually stored on the hard drive, so it isn't actually firmware.

Dec 6, 2009 6:56 AM in response to capaho

capaho wrote:
by firmware i do mean OS.


I'll help you out on this one. Firmware merely refers to system level software that is stored in non-volatile, read-only memory (i.e., a chip). An OS can be stored on a device as firmware, but I believe the ATV's OS is actually stored on the hard drive, so it isn't actually firmware.


i wasn't asking for help, so don't feel like you have to offer it to me 🙂
in terms of the majority of users on here, they probably won't really know (or care) if it's firmware, OS, semaphore or smoke signals. they just care whether it works or not.

Dec 6, 2009 7:28 AM in response to streamworksaudio

I suspect you are probably more likely to see an unofficial hack to implement this than an Apple update to do so, though you never know.

Pretty sure there were some discussion along these lines on another forum some time ago, but the requisite drivers were not available - maybe they are now, but as Chenks says AppleTV OS is thought to be a Tiger derivative so there might be a whole host of dependencies that couldn't be fulfilled.

Dec 6, 2009 3:12 PM in response to Winston Churchill

From Wikipedia....

"The First Generation PureVideo HD

Starting with the release of the GeForce 6600, PureVideo added hardware acceleration for VC-1 and H.264 video, though the level of acceleration is limited when benchmarked side by side with MPEG-2 video. VPE (and PureVideo) offloads the entire MPEG-2 pipeline (except the initial run length decoding, variable length decoding, and inverse transform),[2] whereas first-generation PureVideo offered limited VC-1 assistance (motion-compensation)."

So VP1 (PureVideo v 1) has basic support for H.264 and VC-1 (as well as full support for MPEG2 decoding). It wasn't till VP2 that PureVideo was able to support full Blu Ray spec decoding. Thus could be the limitation in Apple TV's decoding i.e no CALBAC entropy encoding and max resolution 720p. Which makes me think that they are unloading some of it on the GPU, even if it is limited.

Being able to access the PureVideo technology requires only a software update (again if not supported already)... would not create a huge cost to Apple - just as with my Mac Book... came with with 10.5, which had good ole Quicktime - which had no support for PureVideo decoding with my GeForce 9400M... along come 10.6 with Quicktime X and boom support for PureVideo decoding... off loading the playback of H.264 video to the GPU (plus saving battery life when out and about). I just wish Apple would share this info. I.E if they are a using a substandard Video Scaler , then I would scale my videos with something better before encoding them.

Dec 6, 2009 4:34 PM in response to streamworksaudio

I'm not fully understanding what it is that you are suggesting, well I am, but not how you arrive at the suggestion that it's achieved.

The GPU in the tv I understand does have hardware acceleration, whether or not it requires SL to access that advantage I couldn't really say, but assuming for the moment it did, the question of whether SL could be readily trimmed down to be a viable OS for the hardware in the tv is yet another question.

However, I'm not clear on how this might lead to 1080p video, it seems that it is only 8 series GPU's that would support hardware acceleration for the main and higher profiles required for video greater than that already supported and even then only with 256 MB of graphics RAM and 1 GB (minimum) of system RAM neither of which the tv seems to have. Or am I misunderstanding something.

Dec 6, 2009 5:13 PM in response to Winston Churchill

Hard to make my thoughts clear when typing.... sorry.

What I am tying to get at is I am curious as to what Apple is doing with the Apple TV hardware and open a discussion about it.

The Apple TV has a GeForce 7 series GPU - this GPU supports PureVideo version 1 - which offers full MPEG2 decoding and limited H2.64 and VC-1 decoding. Obviously it is the H.264 decoding that interests the Apple TV users. In addition to decoding, PureVideo can offer some video processing as well.

What I am trying talk about is weather or not the Apple TV via it's OS and what ever system level APIs and such (i.e Quicktime) does or will in time be able to take advantage of PureVideo Technology.

What got me thinking was while watching The Commitments last night (my all time fav flick) that I encoded from my DVD - I noticed a lot of artifacts in the image due mostly to the upscaling being done from 480p to 1080p - which got me wondering if Apple TV's scaling is software from whatever APIs that are in charge of the media playback - or are they using PureVideo's scalers that are already in the GeForce chip.

I would assume that seeing that the Apple TV only has a 1Ghz CPU that there isn't a lot of room for video decoding plus software based video processing (scaling etc). And as we all know the H.264 (AVC) streams that the Apple TV can play are limited (although still look good if the stream is encoded right). So I am wondering if this limitation is simple because the Apple TV has only a 1Ghz CPU - or is it that it is in fact using PureVideo and that the version of Purevideo on the GeForce 7 series (VP1) is limited in its H.264 decoding.

As for 1080p... well yeah that would be another limitation of the decoder... again if is is all done by the CPU - then it would have to work harder to decode a 1080p stream.

It would be nice to know this info that's all. I find the upscaler for 480p to 1080p (which my Apple TV is set to as that is my TV's native resolution) is not very good. So I am thinking I might make a higher resolution version when encoding (of course with a higher bitrate) allowing me to choose a high quality scaler in software - thus bypassing the Apple TVs scaler.

Dec 6, 2009 5:37 PM in response to streamworksaudio

I think I see now, I assumed you were making a case for the tv being able to play 1080p. Instead you are wanting to know what technologies are used for processing video in the sense that it might give you some insight into how best to prepare your home movies for the tv.

Unfortunately I don't know the answer to those questions and I'm not all that sure there are any that would and post them here on this forum. However I'm not convinced you need to know, quality is subjective (rather like assessing a fine wine), it's commonly what is best for you. It may well also depend on the equipment you have, so one best workflow for one user might not be the best workflow for another.

For example, my TV in the lounge is quite expensive and I choose to output at 720p because it can upscale to 1080p better than my tv. (I choose 720p so it covers both SD and HD content - couldn't put up with keep swapping all the time depending on what I was watching). However the tv upstairs is appalling at upscaling so I choose to output at 1080 so the tv does the upscaling.

I don't find the upscaling to be an issue, although my SD content is 576 which might just be the difference between good results and not so good results in comparison to starting at 480.

My best advice is test some trial workflows and arrive at your own best method.

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Apple TV's GPU.... some thoughts....

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.