View Full Version : XBMC for Linux on Apple TV (formally known as "iTV")
In regards to a few posts I made in the super-long linux thread, I've compiled the linux port on the appletv and taken a look at the performance while idle. Originally I posted screenshots showing 50% CPU usage at idle but a portion of that CPU usage was attributed to my running an active x11vnc session. Without the x11vnc session running though, I still saw it running 30% CPU while idle. It's entirely possible that this could be related to me missing something or not having xorg configured correctly so I'm not trying to ring an alarm bell or anything.
Also, in case there are some low-level hardware experts on board here, I wanted to mention something that davilla from the awkwardtv forums noticed. The NVIDIA 7300 on the appletv is running pci express with only 2 lanes (2x) when running linux while the same hardware with the native OSX install runs full 16 lanes (16X). Can anyone point us to a possible resolution?
it's hard to say really how bad that is without comparisons from other platforms. Personally I'm really interested to see how this turns out because the appleTV as an xbmc platform seems ideal to me, it's got all the outputs I want, hopefully enough cpu grunt to do hdtv content (720p at least) and its silent to boot.
nikothebouriko
2007-07-15, 20:24
Hi
So it's does work in other mac ? like macmini ?
can you post your command for compiling please (fink, finkcommander etc ...)
thx in advance
Well it works on other intel based mac's. I can run it on my macbook
video is still slow since the video rendrer depends on pixelsahders wich the macbook and macmini lacks. there is a software rendrer wich is really slow since no heavy duty have been made to optimise it and i guess that alternate renderes are on the low priority list for now.
Gamester17
2007-07-24, 18:52
Here is an intersting article that I think is worth a read => Hacking the Apple TV (http://www.smallnetbuilder.com/content/view/30103/82/)
:grin:
by far, the most informative thread regarding linux on apple tv can be found here:
http://forum.awkwardtv.org/viewtopic.php?f=23&t=167
davilla (Scott Davilla) has been a great resource in helping to get linux running smoothly on the apple tv.
Really hope that XBMC can be run on the Atv... dreading the thought of a PC back in the lounge to be honest... even in Cube or Small form with any sort of powerfull CPU/GFX its gonna be like a low fling aircraft...
babazoid
2007-07-25, 17:26
Yeah, the Apple TV is an ideal hardware solution for running XBMC. I'd buy one for each of my TVs if it worked...
This project really excites me!
Gamester17
2007-07-25, 17:35
The NVIDIA 7300 on the appletv is running pci express with only 2 lanes (2x) when running linux while the same hardware with the native OSX install runs full 16 lanes (16X). Can anyone point us to a possible resolution?The latest official release of the 2.6.22 Linux kernel (http://kernelnewbies.org/Linux_2_6_22) should probably solve that issue(?)Geforce 7300 gt fb support (http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bc0ca06e24545117b69c94b1219dbe1 9392a0c5a)
PS! Out of curiosity, which device drivers are you using (open source or the closed source ones from NVIDIA)? does Envy (http://www.albertomilone.com/nvidia_scripts1.html) work?
I'm not 100% on whether 2.6.22 helps to resolve the pci express lane issue -- I believe one of the guys at the awkwardtv forums has been toying with it. I had to give my test atv back to its rightful owner and am waiting on a good deal to pounce on so I can get back to work on it. I was using the proprietary binary driver so I could take advantage of xvmc, where motion compensation for mpeg2 (ATSC tuner) is offloaded to the GPU. My current plan is a Freevo box with single ATSC tuner and the ability to timeshift. The tuner would just be for local broadcasts (the news, etc). Everything else I'd stream from usenet via newzbin NZBs, a NZB downloading script, and mplayer ala:
unrar p -inul <1st-rar-file-in-the-set.ar> | mplayer -noidx -
which allows one to play using rars as a source. The idea is to yank newzbin report info, store in DB, and create custom RSS channels based on whatever criteria I fancy, allowing the box to act as video on demand for most of the video content available on usenet (140 days retention at giganews). Currently, a freevo plugin seems to be the right way to do this, but that could all change as XBMC on linux matures.
Gamester17
2007-07-26, 10:46
I'd stream from usenet via newzbin NZBs, a NZB downloading script, and mplayer ala:
unrar p -inul <1st-rar-file-in-the-set.ar> | mplayer -noidx -
which allows one to play using rars as a source. The idea is to yank newzbin report info, store in DB, and create custom RSS channels based on whatever criteria I fancy, allowing the box to act as video on demand for most of the video content available on usenet (140 days retention at giganews). Currently, a freevo plugin seems to be the right way to do this, but that could all change as XBMC on linux matures.off-topic but lets hope optip comes through as he is working on that for XBMC => http://xbmc.org/forum/showthread.php?t=25627
hopefully enough cpu grunt to do hdtv content (720p at least)
I have tried this myself. With a custom build of mplayer using the CoreAVC and still the CPU isn't good enough on its own to get smooth playback of x264 720p. Until we can offset the workload onto the GPU HD is a dream i'm afraid.
unfortunately, its pretty well documented that the 1Ghz processor can't do it without help. As far as I know, the only hope is for nouveau team to come through and that might be awhile. The only other thing I could think of was to specifically check for ATV quicktime compatible h.264 videos and store them on an HFS partition or network mount and actually boot the ATV OS to watch them.
Hi there!
I'm an happy owner of both AppleTV and xbox console. I followed your porting work of XBMC to linux, and initial work to run linux on the AppleTV.
Now, i'm asking myself if the AppleTV hardware can be sufficient to run your port of XBMC for linux on it. These are its specifications:
Processor: Intel[1] Pentium M 1.0 GHz "Crofton"
Graphics: NVIDIA GeForce Go 7300 (64 MB VRAM)
Memory: 256 MiB of 400 MHz DDR2 SDRAM
Hard drive: 40 or 160 GB hard disk
Connectivity: 1xUSB 2.0, irDA
Video output: HDMI + Component Video supporting 1080i 60/50 Hz (but maximum video resolution is 720p), 720p 60/50 Hz, 576p/576i 50 Hz (PAL), 480p/480i* 60 Hz
Audio output: S/PDIF digital optical audio, RCA analog stereo audio
Networking: 10BASE-T/100BASE-T Ethernet + 802.11 bgn adapter
It seems that first linux tests on it confirms that hardware is correctly detected and then useable by linux. Nvidia official drivers works great without any modification with 3D and acceleration support.
Then... i think this could be the perfect hardware platform for XBMC-linux, dont you agree?
Geeeesssss... hope you have a flame proof suit! :laugh: this question has been asked aproximately 1,000,000,000,000 time so far!
Pretty sure the devs have made no coment on the Atv as a new platform for XBMC. But I could be wrong... been on holiday. :grin:
DJ_Izumi
2007-10-02, 11:46
It's actually a little slow. Apple doesn't use the high profile range of MPEG-4 AVC instead keeping it all in main profile, as a result their h.264 videos are lighter on the CPU (And less efficent). The resolution also tops out at 720p. Meanwhile, most of the video encodes online are using high profile and are going up to 1080p these days. There's a reason all those h.264 quick time trailers play fine on the Xbox still even. The Apple TV is a great product, for apple videos. Infact it's a cute idea overall if you ask me. However if you want it for a XBMC-Linux machine, it's kinda light weight, but still it is an Apple machine ment for an Apple task, it's not realy a suitable replacement for the Xbox.
Maybe I would consider if they upgraded Apple TV to 1080p capable technologies in the Apple TV in a later model. But then that would be harder to run linux on. I love that fact that it is so tiny and portable and comes with built-in HDMI, optical-sound out and N wifi. If I get the chance to buy one cheap I'll mess around with it.
If linux can detect and use all of the hardware then shouldn't it work just like any of our home-built linux machines would work?
@ Aresnio. Would you want to do some testing and let us know how it runs (CPU % and framerate) on certain resolutions?