Boston Linux & Unix (BLU) Home | Calendar | Mail Lists | List Archives | Desktop SIG | Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings
Linux Cafe | Meeting Notes | Blog | Linux Links | Bling | About BLU

BLU Discuss list archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Tuning X window server for high definition

David Backeberg wrote:

> On Fri, 3 Dec 2004, Robert La Ferla wrote:
>> 1.  How can I set the priority of the X window and font servers so 
>> that they are run at nice -10 every time they are started?
> How did you decide this is desirable?

It is desirable in a HTPC but not desirable in a general purpose system 
because the window server needs to keep up with the video frames.  I 
decided this because Ingo Molnar suggested it.  Given that he wrote the 
O(1) scheduler in the 2.6 kernel, I think it's probably good advice.  He 
just didn't say how to do it.  My question is really a detail in that I 
am asking where to best make the modification: (a) in the rc scripts or 
(b) in another configuration file.  If it is in the rc scripts, where is 
X started?  Should I just replace the command with "nice -10 command"?

>> 2.  Has anyone succesfully played a full-screen WMV-HD movie using 
>> mplayer? I tried some small clips but it dropped frames and then the 
>> audio quit out. It takes a lot of CPU to handle 1080 lines of 
>> progessive video.
> How did you create the video? Perhaps mplayer could convert it to a 
> friendlier format first, and then play it just fine. I don't know 
> anything about WMV format, and I don't really know what HD means 
> affixed to it, other than it was probably a high-res capture.

I didn't create it.  I bought it on DVD from my local Suncoast store.  
WMV-HD is a sort of a precursor to HD-DVD.  HD = High Definition as in 
HDTV.  You can purchase say Terminator 2 Extreme DVD which has a HDTV 
version of the movie on a 2nd disc as a WMV file.  mplayer does play WMV 
format-  it's just that it takes a lot of processing to handle the video 
scaling, color space conversion, and frames.  You are talking 30 frames 
of 1440x1080 video that is synchronized to two channels of 48KHz audio.  
That's a lot of processing amongst multiple threads to sync and play the 
video and audio.  Fortunately, there's no de-interlacing (algorithms 
like Greedy2Frame take lots of CPU) because it's already in progressive 
format.  But it does have to scale the video to 1024x768 which is just 
as cpu intensive.

>> 3.  Any other performance tips?  I am running Fedora Core 3.
> What are the specs of the system? Your video card drivers might be 
> something you could improve, and you might want to run some hdparm 
> tests to make sure you have DMA enabled, etc. Roughly how big is this 
> video you're trying to play, how is your screen resolution set, etc?

It's a Shuttle SN41G2 XPC with Athlon 2800 and 384MB RAM.  DMA is 
enabled.  The screen resolution is 1024x768 and the video is 1440x1080.  
I will upgrade the RAM but I first want to tune the software.

> Are you trying to play the file directly from a 4x cdrom, or have you 
> copied the file to your hard drive with no improvement?

I am playing the file off the hard drive. DMA is enabled.  It's only a 2 
minute sample clip.  The real thing is a 45 minute WMV file on a DVD.  
The DVD player is a LG DVD-RAM drive.

> If the video is huge, and your physical ram is small, your system 
> might be swapping and thrashing. Did mplayer bring the whole system to 
> its knees?
> Can you slice the film into chunks with cinelara or dd and see if a 
> short ten-second or so segment plays okay? I don't know if a wmv 
> format file can take the abuse of a dd or not.

I tried "mplayer -ss" to play different segments and it plays for a 
10-15 seconds or so and then the frames drop and the audio either drops 
or the video slows or both.

BLU is a member of BostonUserGroups
BLU is a member of BostonUserGroups
We also thank MIT for the use of their facilities.

Valid HTML 4.01! Valid CSS!

Boston Linux & Unix /