Question / Help How to improve low-res streams?

gmontanola

New Member
Hello there,

I'm making 480~540p streams in order to most of my viewers watch the stream (Brazilian here, most of ISP's sucks big dinossaur balls) since I'm not a Twitch partner.

So this is my stream so far:

http://www.twitch.tv/m/18066

Quality Balance - 10
Max Bitrate - 1000
Buffer Size - 1500
Audio AAC - 128

Base Res: 1920x1080
Downscale: 2.00 (960x540)
Filter: Lanczos
FPS: 60

X264 Preset: Medium

Custom Settings:
Code:
tune=animation8x8dct=1 aq-mode=1 b-adapt=1 bframes=2 deblock=2:-2 direct=auto keyint=240 level=3.2 merange=32 mixed-refs no-mbtree=0 partitions=all qpmin=5 ref=2 subme=7 threads=4 trellis=2 weightb=1 weightp=2

So... Is there anyway I could improve it? Less pixelation or maybe a clear image?

Thanks in advance and mind the portuguese talkin' on the example stream.
 

FerretBomb

Active Member
I would drop to the Veryfast preset just as a matter of course... the image quality difference really doesn't justify anything slower unless you have GOBS of spare CPU laying around. Even then, I'd only go to Fast, to help avoid any kind of bottlenecking in the game.

Consider dropping to 30fps; more fps = more bandwidth needed. You can either use that bandwidth to make the stream look better (increase image fidelity) or to make the stream look smoother (higher framerate, more fluid motion while sacrificing sharpness and possibly introducing blocking/artifacts if a keyframe packet is missed). All about the tradeoffs. Lowering the framerate will consequently increase image fidelity, as you can now spend twice as much bandwidth on picture quality... since you're only sending one frame in the time period you used to send two.

By the same note, AAC can handle a LOT lower bitrate and still sound really good as compared to MP3. Consider going down to 96kbps (or lower, personal preference here on what's low but still 'acceptable audio' so test test test!); it'll free up 32 more for the video stream, and if you're targetting low-bandwidth users, every extra kilobit helps.

Quality setting depends on what kind of game you're playing/streaming. LoL/DotA/other MOBA? 10 should be fine. Same with Super Meat Boy, Super Crate Box, FTL, or any other low-fullscreen-motion game. If you're playing an FPS or MMO (something with a lot of full-screen motion) you may want to drop to an 8 quality setting, to help 'even out' the stream.

Your 'currency' is your bitrate. Spend it wisely. High framerates will cost a lot. High quality audio will cost too (but less than framerate).

Can't speak as to those custom x264 encoder settings, I don't use any on my own stream.

(edit) Just watched the stream example... that looks exceptionally good for a 540 stream. REALLY good. Text is less-than-clear on character names, but I wasn't seeing much/any blocking. I'd still give dropping to 30fps a try, and seeing if the image fidelity increase is going to be worth the slight decrease in fluid motion.
 

gmontanola

New Member
Thank you for your feedback! I'll try to lower FPS to 45 or 30 and check the results.

Anyone experienced on custom settings for x.264 could give me some advice on my settings?

Thanks
 
Top