• 1(current)
  • 2
  • 3
  • 4
  • 5
  • 15
Viewing downloaded 720p (HDTV) video content?
#1
Question 
Hi All!

I see a lot of 720p content hittin the net these days for tv shows, files are about 1.1-1.4GB per hour tv episode. From what I read, XBMC can't handle these files, the processor is just too slow. Mind you, I've read posts that older builds could play this type of content, is this true? Is there any way to play these files? Anyone know of CPU upgrade options that would allow this? I'm thinking of upgrading to an HD tv, and am exploring options for gettin the most out of it...

If not the XBOX, is anyone out there viewing these 720p files somehow?

Thanks!
#2
I was sitting down here to post a question and yours pretty much represent exactly what I was going to ask :-) Sorry for not having an answer, but let me throw in my "me too" in this thread to ecourage peope to share their experiences. My TV can handle 480p and my xbox can handle that without problems. I would very much like to upgrade to a larger set that can handle at least 720p but a lot of the point disappears if my beloved xbox cannot handle it.
#3
720p upscaling works just fine for any content (hardly any speed penalty as it's handled by gpu). 720p content MAY work if it's not too high bitrate. 720p xvid is your best bet. any h263 will likely just give you grief.
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
#4
Has anyone used VLC? I was wondering if that could help stream the 720p files - if too big, maybe using the PC to stream them would let the PC handle some of the load? I've tried it, using HTTP as streaming protocol, but can't seem to get it to work - the most I've been able to get is the audio (I think XBMC thinks it's simply streamed audio)
#5
Oh, and elupus, what would you think (approximately) a 'not too high bitrate' would be? I'm gonna try some conversions out of curiousity...
#6
I've been doing a lot of study and testing and benchmarking over the last few months, and I'm to the point now where I can pretty reliably do high quality "HD" xvid encodes for the xbox that don't drop frames. The key is to understand and account for its limitations, and make appropriate trade-offs.

65K-66K macroblocks per second is about the limit for high quality encodes as things stand at the moment. This translates, for example, to 1280x544@24fps [ie 1280*544*24 / (16*16) = 65280 MBS], which is what you need for 2.35:1 aspect ratio film material.

The jump up to full frame 1280x720, even at the same 24fps, is huge.
1280*720*24 / (16*16) = 86400; you need a 33% increase in the ability of the system to acquire (I/O), process (CPU), and display the video, or you need to take a major hit in the quality (higher quantizers). At 30fps you are talking about 108,000 MBS or 65% more capability (or an even larger decrease in quality).

Besides establishing that MBS limit, I've also looked into the 'spikes' issue (busy scenes, sudden motion, things that cause the encoder to want to generate bursts of very large frames) and how to constrain it.

In that area, something xvid incorporated at the behest of the divx folk are the dxn hardware profiles. When using one of these profiles, the xvid codec *enforces* 'max instantaneous' and 'total over one second' bitrates limits. And as it so happens, the bitrate limits for the DXN HDTV profile are just about a perfect match for the xbox / xbmc. (Some of the other parameters for this profile are too generous - 1280x720@30fps - no way jose - but I just stay within the MBS limit I defined above instead).

The other thing I do, a bit more subtle but it helps smooth stream rates and processing out, is limit max consecutive b-frames to 1.

With respect to *average* bit rate; after numerous encode / playback tests, here's a rule of thumb for you (qualified by everything above). After the first pass (and you must do two-pass for the profile constraints to apply), look at what the average bitrate was for that pass, add 10% to it, and specify that as your target bitrate for the second pass. That's will typically give an average quant value just below 3, with a few frames maybe up as high as 9 (where the constraints forced a higher quant to stay within the peak limits). As a general rule, you won't notice them because they are in brief busy scenes.

The 'high side' number, if you want to push things, is 4854kbps; that is half of the DVD spec'd max video bitrate, and also half of the DXN HDTV profile max bitrate (gee, what a coincidence!). And my experience, with my V1.0 xbox and Thomson DVD drive, is that if I go much beyond that, the combination of increasing cpu load and dvd drive throughput limitations result in cache depletion during 'busy' scenes - no frame drops, but output stutters as the system refills the cache from the dvd. And simply increasing cache size isn't a solution - there is a detectable cpu hit from overly large caches. If you want to experiment with higher bitrates, you basically have to play them from the hard disk, but keep in mind you are pushing your average closer towards the profile's max.

Oh, and before I close... So what to do when your source material isn't 2.35:1? Like it's 1.85:1 or full frame 16:9 (1.78:1)? What *I* do, is, resize to 960x720...

960*720*24 / (16*16) = 64800 which is within the MBS limit I defined above and happens to be a nice set of number for a whole bunch of reasons (think about it). It is twice the resolution of full frame dvd; it is 1/3rd the resolution of full frame 1920x1080; and it is 3/4th resolution of 1280x720. It's a 4:3 frame ratio; and when you apply a 4:3 pixel aspect ratio (or simply select xbmc's 'stretch 16:9' view mode) you get your 16x9 picture back.

Anyway, in closing...

Keep your encode under 65K-66K Macroblocks per second
Use the XVID/DXN "HDTV" hardware profile
Set max b-frames = 1
Do two-pass encode
Set average bit rate <4800kbps

Have fun and post your test results.

Oh, and PS - I use an external digital audio processor so the xbox cpu doesn't have to deal with that as well...
#7
BTW, the above was using xvid 1.1-final. As I recall, the profile parameters were were updated very late in the development / release cycle.
#8
Hey plugh,

Thanks for your input! Very helpful!
In my situation, I'm not encoding my own XviDs, so I'm wondering if you, or anybody else, can let me know if all the "HR HDTV" files commonly found on the internet play smoothly using XBMC?

These files, as I'm sure you know, are considered "half resolution HDTV", or "high resolution HDTV. They have 960x528 widescreen resolution.

Thanks for your help!

Cheers
#9
http://www.xboxmediacenter.com/wiki/inde...le_Formats
#10
Thank you very much!
#11
hohead - Yup, they play nicely and are a good option.

plugh - thanks for all the info! I did some simple conversions, using River Past Video Cleaner Pro 6.8. I didn't quite understand all the options though, and just re-encoded using XVid, single pass, default options, and set the bitrate slider. First I tried 1000 - played fine, lost a lot of quality, then 2500 - played fine, then 3500 which played a few seconds then paused, repeat. Mind you I didn't use 2-pass or the other options you gave - I'll try that next!
#12
Oh, and I just have the "HDTV" profile in the drop-down list in the XVid encoder configuration - is this the DXN Hardware profile or do I have to get that from somewhere?
#13
Yes, that's it.
Handheld / Portable / Home Theatre / Cinema Plus / HDTV
are the DivX Networks ( <= DXN ) hardware profiles.
(and you MUST do two pass for the 'vbv' to be applied).

Other developers have built on this and defined hardware profiles targetting ESS and MediaTek decoder-chip-based standalone players. This got me to thinking about parameterizing and defining a 'xbox / xbmc' profile.

For those interested in the nitty-gritty
http://cvs.xvid.org/cvs/chora/co.php/xvi...g.c?r=1.30
#14
XviD profile discussion=> http://forum.doom9.org/showthread.php?t=107897

Also see this (though it's for AVC/H.264 x264 profiles but might give some ideas):
http://forum.doom9.org/showthread.php?t=...light=xbmc
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.
#15
re that first link - yes I've seen and read that, but those aren't hardware targeted profiles, they are quality/compression/speed oriented. And that is the issue with most of the 720p xvids 'out in the wild' (even the 1280x544 2.35:1 'original aspect ratio' ones) - they are targetted at quality without considering playback platform constraints. It was the observation that many 1280x544 encodes came close to perfect playback that set me off on my investigations.

An interesting thread over there that comes to some of the same conclusions I did independantly (I *SWEAR* I only saw it a few days ago) is
http://forum.doom9.org/showthread.php?t=93973

There is also mention of using 2nd-pass 'Curve Compression' settings, which I've been recently experimenting with - those seem to have more of a 'broad brush' effect across a whole movie encode rather than the 'surgical knife' which the vbv settings apply to the bitrate spikes. In many cases I can reduce the average quant for a movie, but at the expense of an increase in the number of high quant frames. I think that 'tool' is going to be more of an as-needed or fine-tuning thing rather than part of my 'xbmc-hd' profile.

FYI - Problem I seem to keep running into at full-frame (now) isn't bitrate spikes but complex motion, which is saturating the cpu and/or display output. Until some bright person figures out how to do motion compensation on the GPU, I think we're stuck at 75% full frame (1280x544 or 960x720)
  • 1(current)
  • 2
  • 3
  • 4
  • 5
  • 15

Logout Mark Read Team Forum Stats Members Help
Viewing downloaded 720p (HDTV) video content?0