Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Best Resolution for Streaming

Rosco Teardrop
PookyMedia
Join date: 28 Nov 2008
Posts: 61
05-15-2009 04:13
Can anyone advise the best resolution for streaming into SL - for max quality and min lag (or the best compromise between the those).

All video I've seen in SL looks to be about 320x240, but can that quality be improved?

I've tried streaming in HD but that just kills the sim's fps. 640x480 doesn't have such a drag on the sim on testing, but that may change if the sim gets full of avatars.

However, even the 640x480 stream seems to get sized down to a much lower res.
_____________________
http://weebitfilms.blogspot.com
http://www.pookymediafilms.com
Toxic Menges
Time Lady
Join date: 4 Jul 2007
Posts: 206
05-16-2009 08:40
720 x 480 is a good size, and the lowest you can get HD at I believe?
_____________________
I'm bumping you to an 8.3. You obviously have a strong sense of self and you are very much in control of your sensual side. You're the kind of girl that guys are willing to beat each other senseless over, just hoping for a few moments of attention from you. Congratulations and shame on you. you are a slut in the very best possible meaning of the word!

Trout Re-Certified
Robustus Hax
Registered User
Join date: 4 Feb 2007
Posts: 231
05-17-2009 11:24
Codewarrior Carling once told me that he tested a bunch of different resolutions, and 500x500 an exact square was handled the best by SL. I could be wrong, if I see him online I'll tell him to come verify in this thread.
Rosco Teardrop
PookyMedia
Join date: 28 Nov 2008
Posts: 61
05-17-2009 12:55
Cheers, would be good to know the results from more tests.

I tried a few out. Toxic, HD is min 1280x720, and needs about 2mbps bitrate to look good and that is what kills fps as SL can't handle that.

I did some tests at 320x180, 640x360 and 856x480 (all rendered at medium quality in QT) and it does seem that the higher resolutions and bitrates give a better quality image, though I can't determine that actual res inworld. Will need to do more tests to figure that out maybe with a test pattern.

All three of those res's streamed OK as well, but I was tesing on a quiet sim.
_____________________
http://weebitfilms.blogspot.com
http://www.pookymediafilms.com
AWM Mars
Scarey Dude :¬)
Join date: 10 Apr 2004
Posts: 3,398
05-22-2009 09:49
Streaming resolutions in SL are not the same as streaming/watching on your TV.. and forget HD, unless your PC Monitor can support it. The pixels on your TV screen are fixed and can only show media of that exact size (PAL/NTSC).

The SL client, using the QT pluggin within a VR environment, streaming/displaying onto a texture, handles the rendering differently, then say watching the same movie on a webpage. The differences can be seen if the texture is of low quality for instance, or the wrong size... SL textures are sized upon fixed grids 128, 256, 512, 1024. Stretching the texture onto a prim, and then play a movie on that stretched texture, means the rendering engine of the SL client, has a lot more work to do. Add to that, on a webpage, you get to only see the movie on a single plane, whereas in a VR environment, you have perspectives (longer and shorter sides to the prim, depending on view perspective).. hence why some platforms include the use of 'Billboard' prims, so the playing face is always at 90 degrees to each viewer.

Now, also consider pixel shape and size, forget again the PAL and NTSC formats, you are not viewing SL on a TV screen (are you?). In short, you have greater freedom of sizes/resolutions/pixel shape/size, that you can use.. sooo.. try chosing a format that fits SL's texture grid format :)

Due to the way the rendering engine works... providing your media isnt too small a size (keep above 240), you can get good results by rescaling the playing screen (increase using the same aspect ratio) in whole numbers. Example 512x256 = native playing screen size texture of 5.120x2.560 mtrs, increase the screen size by a factor of 2, will get you a 10.240x5.120 screen (you have to map the texture over more than one prim), this will ensure that the rendering engine can interpolate the pixels using whole numbers (factor of 2 in this case) for a sharp result.
Remember, big isnt always good, as the viewer will have to zoom back to fit the screen onto their screen... at native size, they can zoom in :) .

On 'screens' you have to align the texture to allow for the black lines. These lines are the carrier portion of the stream that hold audio. One is for Mono, the other is for the left channel. The left channel is subtracted from the mono channel, to form the right channel for stereo. Fortunately, there is an automated method of doing this, providing you are only using a single prim screen. When the media is playing, edit the screen (use single texture check, if you only want to align just the playing surface of the prim), go to the Texture tab of the edit window, and click the Auto Align button and you are done.

In most quality media players, this is done automatically for you, by the player script. However, most systems, you have to use AutoScale on the land media setting. Autoscale adds around 25+% work for the rendering pipelines of the SL client and subsequent lag.

To test this out, use the auto align method (with autoscaling turnned off), Press Ctrl+Shift+2, look at the ImageUpdate portion of the scale. Movies that are correctly formatted and have well made/aligned textures, will load the client between 20-35%. Now reset the texture by zeroing the offsets of the screen texture, and play the same movie with AutoScale enabled, the loadings can jump as high as 90% and almost crash you.

Lets look at Pixel size and shape. Depending on your movie editing programme, you can set the pixel size and shape, independently of the resolution (height/width of the movie). By choosing different pixel shapes, you can reshape the viewing screen, without changing the movie size. Then you can adjust the viewing resolution to suit the output you require, which may require some cropping to get it looking right.
Choosing the wrong pixel size and shape, will not only limit your output resolution, but also the ability of the rendering engine to resolve sharpness, as pixels can overlap in certain areas, giving you the apperance of banding or exagerated seesaw edges between adjacent contrasting edges.

Also consider the playing texture. If you movie is say 640x480, that wont resolve sharply onto a texture in SL which is grid based at multiples of 128. So create a texture that matches your movie, and make the canvas that suits SL's resolutions. The canvas can simply have a solid colour to reduce size in kbs for rezzing. In this case. it can be 1024x512 to suit your movie. That way, when the movie plays on that texture, the pixels will match up, giving better clarity and contrast. Also make sure you check the All Bright box in the texture tab of the edit box, to the playing face of the screen prim, this will maintain luminance of the media as you intended it and not lighten/darken with the atmospherics of the SL platform.
_____________________
*** Politeness is priceless when received, cost nothing to own or give, yet many cannot afford -

Why do you only see typo's AFTER you have clicked submit? **
http://www.wba-advertising.com
http://www.nex-core-mm.com
http://www.eml-entertainments.com
http://www.v-innovate.com
Rosco Teardrop
PookyMedia
Join date: 28 Nov 2008
Posts: 61
05-23-2009 09:16
Great info, thanks AWM, I'll experiment with some of those settings.

And I never twigged about the fixed grid sizes, cheers.
_____________________
http://weebitfilms.blogspot.com
http://www.pookymediafilms.com