Hidef (720p) H.264 with XBMC on ATV
#1
Question 
Hi all,

I recently bought an Apple TV and loaded XBMC Atlantis Beta 2 onto it. Great job guys - really really slick. XBMC works beautifully except it appears that hi-def playback (720p H.264) is not yet possible.

When I try playing a 720p H.264 MVK across the network, playback is choppy @ around 15fps. By comparisson my Mac Mini sitting right next to it running Plex has absolutely no problem at all playing the same file (both are connected to the LAN via gigabit ethernet so bandwidth is not an issue). Playing back regular SD xvids on ATV works fine too.

By comparisson, ATV (of course) has no problem playing back iTunes "HD" movies and TV shows, presumably encoded in a similar way. The question is why can ATV do this but XBMC can't?

I presume the heart of the problem is that the ATV's relatively slow 1Ghz CPU isnt up to the task of decoding 720p HD videos all by itself.

Are there enhancements needed to XBMC in order to offload some of the video decoding to hardware? Is this something that is being planned? Or am I the only one experiencing slow playback with 720p video?
Reply
#2
Hi there and welcome to the forums.

Quote:presumably encoded in a similar way

Did you try the exact same files on both applications?
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#3
I really wish there was a good guide about 720p video/audio content. It's not all the same and can come in many different flavors that take different amounts of cpu to decode.

720p H.264 MVK comes in many bit-rates and encoding profiles. MVK is just the container for the h.264 encoded video/audio format.

iTunes "HD" movies and TV shows are encoded using low profile and bit rates that run around 4-5Mbit.

Typically "720p H.264 MVK" != "h.264 mov"

When comparing 720p, it helps to know the profile and the bit-rate. The "o" key when playing video will show this. On XBMC that is, I don't know how to make Plex show it, they might have stripped it out.

In addition, to make thing even more confusing is there can be different type of audio encoding. Some audio encoding takes much more cpu than others.

Take a high-bit rate, high profile encoded video with DTS 5.1 audio and the AppleTV can not play it. Just does not have the cpu power to do it.

The MacMini with a 2GHz clock a factor of four times faster than the appletv so just because it plays on the MacMini is immaterial.
Reply
#4
The Apple TV is certainly capable of playing 720p content.
If you use another Apple TV plugin (ATVFiles) it can comfortably play 720p content using the built-in quicktime media player.

There are some rules to this content.
It has to be a specific h264 profile.
It has to be 24 fps
- and the bit rate cannot be too high.

But if all these conditions are met - the quality of playback is very good.
As far as I know, no native AppleTV application can play 720p content in MKV containers reliably.

I use Visual Hub to transcode MKV downloads into AppleTV-friendly MOV/MP4 files.

XBMC on the AppleTV can play the exact same MP4 files, but not nearly as well. Playing the same file, it drops about half of the frames. I guess this is a beta release and not optimized yet.

C.
Reply
#5
I thought the Backrow OS took advantage of hardware accelerated GPU decoding of H.264 and VC content. This is the reason why Apple put a decent GPU and a mediocre CPU in the AppleTV, and used closed source Nvidia binary drivers to save money on production costs.

iTunes 720p video can be decoded by the ATV GPU if the original Backrow OS is used to assure smooth playback (also decodes using quicktime).

As far as I know, XBMC is 100% decoded by the CPU, so playback of the same iTunes (DRM free) 720p file may drop frames since there is no GPU assistance and uses an older FFMPEG decoder.

I believe most 720p H.264 on the web uses CAVLC profiles (x264 encoder and mastroka containver) as does iTunes. CABAC 720p is unplayable on ATV.

The container is also part of the problem. Mastroka requires more power for demux.

The best thing to do is to re-encode it with a mp4/m4v container and add it to iTUnes and sync with ATV or if you have a fast Windows computer, get TVersity and transcode it on the fly to a slightly lower resolution (setup uPNP client in XBMC). I don't know if myth transcodes on the fly.

Or just live with the choppy playback or return your appletv and get a small HTPC (G31 chipset and E7200 CPU) or MacMini
Reply
#6
I had problems starting out because I was using smb to connect to my nas storage. I got all kinds of stuttering and buffering even on the smallest of files. It seems smb isn't very network efficient.

I instead mounted the volumes with nfs to the apple tv filesystem. This solved both the buffering start delay and the stuttering. I also increased the cache? settings in the control panel and doubled them. Not sure if that is helping, I haven't done any tests. The end result was that videos including dvd iso's play perfectly.

There is a small, freebie nfs server for windows you can try. If you need the name (it escapes me atm) I can dig it up.

The only drawback to this is on a reboot, I need to manually mount the volumes again since I'm having no luck getting rc.local to do the mounts.
Reply
#7
can you post details on how to mount volumes with nfs?
Reply
#8
Since they only put fast(and not gigabit) ethernet on the AppleTV, the added overhead of SMB or AFP can sometimes be a factor. I've found that NFS can allow for much smoother playback of big files.

As for getting mount_nfs and other utils on your AppleTV, I would suggest you go to wiki.awkwardtv.org and check out the Smart Installer part of the NitoTV plugin.


-ed
Reply
#9
As mentioned above, I followed the instructions on wiki.awkwardtv.org on how to enable nfs on the atv. My nas device has nfs ability so I just enabled it on my shares. Then mount them on the atv:

mount_nfs readynas:/library/movies /Users/frontrow/Movies
mount_nfs readynas:/library/tvshows /Users/frontrow/TV
mount_nfs readynas:/mp3 /Users/frontrow/Music

In xbmc, I create my sources to point to those local directories.
Reply
#10
Sad 
I am verry frustrated! I have a windows 2003 server p4 1.6 ghz, a Windows Vista p4 2.5ghz box, a Mac Mini g4 1.5 ghz, and an ATV v2. All connected Via new airport extream. I have a 500 gb Iomega drive hooked up to my airport extream via USB 2.0 that I am attempting to use for my media storage. It seems like I am the only one in the world try to accomplish what I am try ing to do. Here it is! My windows server 2003 and vista boxes are both hooked up direct to the airport extream via ethernet. My mac mini is directly hooked up to an airport express next to my tv because it does not have built in wireless and my ATV is wireless. All in the same work group they all comunicate fine. My mac and my ATV are hooked up to my big screen tv and my DD & DTS surround reciever. What i was doing prior to my ATV was saving all my movie media mostly avi and h.264 MKV format to my NTFS Windows 2003 server. I would play via mounted network drive on my mac mini connected to my big screen tv with no surround. Problem is was verry choppy as files got larger with more quality. So I came accross the ATV demo and it was playing a 1080p movie with no problem and with DD excellent!. So I bought one and hooked it up thinking surround sound and HD quality I so excited! Now My server is quite old only 1.6 GHZ with a lot of over head and only has a 160 GB hard drive. I am running out of space and it is a little slow. So I bought a 500 GB ext drive and hooked it up to the airport extream. I moved all my files from the server to the 500 gb hard drive. Now the ATV will only play .MOV .MP4 and .M4V files. So after painful research and trial and error I find Visual Hub to convert my files. Still have problems with aspect ratio. Anyway I figured out how to get DD with passthrough option in visual hub also how to convert 6ch aac to ac3 using graph edit then replacing in Quicktime pro. Movies are beutiful. The problem is it takes so damm long!!! 12 to 24 hours depending on what has to be done and it is not always reliable. A crash after 6 to 12 hours drives me to the nut house. I love the GUI and I dont mind going through Itunes to organize. But its just so damm time consuming. So now I come accross Boxee and XBMC. Installed it no problems. Opened XBMC messed arround for a little bit with resolution. Got it to 1080. Now to test out playing an MKV with 6 CH audio Native. I find I can only brows via add source, OK I go to my Windows server enter passwords ETC. Clicked on a MKV bam it played! Aspect ratio was perfect a little slow at first but acceptable BUT no DD surround. Just pro-logic. Verry disapointing. So now I try some mp4 move files that already work with dd. Quality is horrable and no DD 6 ch. OK so now I go to test out a movie on my new ext Network hard drive. go to add source i can browse to the airport but the hard drive share is not there. WTF! (by the way the airport can only recognize an HFS+ formatted HD).So i reformat HFS+ and remove a space in the name thinking that was the problem. Still no hd share is there. Why the heck would smb easily recognize NTFS and Not HFS+. WTF! So now I go to remove the test sources I added in XBMC and there is no way to remove them! WTF! So now to Clarify What i need to Acomplish at this point.

1. Can I get 6ch DD or DTS sent to my reciver to decode through XBMC?
2. Can I get XBMC to see a networked shared drive HFS+ on an airport extr?
3. How can I remove an added source in XBMC?
4. Can Boxee browse my network and play files since I have to wait for an invite?

To conclude. I hope this clarifies what it is i need to do.
1. I want to play high quality Video files with DD surround on My ATV.
2. I want to save all my files on a 500 GB HFS+ hard drive on a Airport Extr.
3. I do not want to spend hours and days recoding.

Please someone help!!
Reply
#11
hey there - can someone possibly post a step by step instructions of how to get the nfs working - i am using smb and it works relatively well some of my 720p content does lag on occasion and I wanted to see if this would help that situation

i appreciate it - im not exactly sure where i should be reading on the wiki
Reply
#12
ravidium Wrote:hey there - can someone possibly post a step by step instructions of how to get the nfs working - i am using smb and it works relatively well some of my 720p content does lag on occasion and I wanted to see if this would help that situation

try moving the suspect file to the AppleTV first, if it will not play locally and your userdata setttings are good, there is no hope via any network protocol.

mkvinfo is a nice program for detailing the type of mkv video content you have. It's the video content that matters, not the container (mkv).
Reply
#13
gwire Wrote:<snip a bunch of text with no paragraph formating that I refuse to read >

1. Can I get 6ch DD or DTS sent to my reciver to decode through XBMC?
2. Can I get XBMC to see a networked shared drive HFS+ on an airport extr?
3. How can I remove an added source in XBMC?
4. Can Boxee browse my network and play files since I have to wait for an invite?

To conclude. I hope this clarifies what it is i need to do.
A. I want to play high quality Video files with DD surround on My ATV.
B. I want to save all my files on a 500 GB HFS+ hard drive on a Airport Extr.
C. I do not want to spend hours and days recoding.

1) Should work if your video content is recorded correctly and does not consume all cpu resources (appletv).
2) No, XBMC does not have internal HFS+ client. If you mount the HFS+ volume using OS native resources, then yes. This is outside the scope of this forum and you will need to go to http://wiki.awkwardtv.org/wiki/Main_Page for help with native HFS+ networking.
3) popup the contextual menu when viewing the sources. There is an entry for deleting the source.
4) No.

A) Without an encoding and bit-rate specifications for "high quality Video files with DD", I cannot answer. Not enough information and 720p mkv is a vague definition. mkv is a container format and does not describe the video content format.
B) see 2 above. Use SMB on the Airport Extr and it's a non-issue.
C) Buy a MacMini and then you don't have to work within the limits imposed by the AppleTV resources. There is no free lunch Smile
Reply
#14
Sad 
Ok I made some progress. I wass able to get Dolby Digital to passthrough with a change in the audio settings. Great. I also figured out a way to connect to files stored on a HFS+ formatted Network Drive via smb. I had to type the direct path with user name and password. Ex: smb://username: password@airport/drivename/foldername. Excellent.

But now that I have my source in place, I want to get rid of all the test sources I have added. I cant find any option or a way to pop up Contextual menu! I have no white button or title button on my remote! Can I get more functionality if i enable the web interface? Is this possible from an ATV? I also would like to add Alblum art and DVD covers to make it look nice. Is this possible on the ATV?

Any help at this point will be appreciated. I am sorry if I seem lazy its just that I have put so much time into this thus far and I have ran into alot of dead ends. Its seems I am verry close now so any help to speed up the process would be great. Thanks for all your help. Much appreciated!

PS. I did mention that my vid format was h.264 with aac or ac3 6ch audio. And Yes I will buy another more powerful Mac-Mini its just that I already have the apple TV for ease of use for the fam and until I get a new mac mini I want everything set up for seemless integration.
Reply
#15
gwire Wrote:2. Can I get XBMC to see a networked shared drive HFS+ on an airport extr?

When files are networked the disk format does not matter.
An external disk in the Airport Extreme is shared by two network protocols
SMB (Windows) and
AFP (Apple)

The XBMC can access the files via SMB. I do this. It works fine.

C.
Reply

Logout Mark Read Team Forum Stats Members Help
Hidef (720p) H.264 with XBMC on ATV0