# YouTube streaming - bitrate limit



## Deleted member 330497 (Jun 16, 2021)

Hello everyone!
I have been wondering: what is the current bitrate limit for YouTube live streaming for 1080p@60fps?
I would like to stream action games on YT with 1080p@60fps with NVENC codec. Which stream key should I use? The variable one or the 1080p (3-6Mbps)? On the other hand, the YT support page suggests the range of 4-9Mbps (https://support.google.com/youtube/answer/2853702). I think that streaming 1080@60 with 6 or 9Mbps bitrate is not enough for dynamic games. My upload speed is 30Mbps so I can safely stream with 15Mbps bitrate. However, will it make any difference for quality of the stream or YT just cuts the quality for 1080p streams at about 6-9Mbps? I have already been doing some streaming tests comparing 6Mbps and 12Mbps bitrate but I am unable to say for sure there is a difference between them.


----------



## Tomasz Góral (Jun 16, 2021)

Everything you send is reencoded to the standard values adopted by YT.
For 1080p60 resolution the typical stream is about 4.5Mb / s, so if you send 4.5Mb / s your data must be recoded anyway, and because the compression is lossy, each subsequent encoding may introduce losses in image quality.
I send 9 Mbps for 1080p50.
But by increasing the scaled resolution from 1080p to 4K, I send a stream of 20-25 Mb / s.


----------



## TryHD (Jun 16, 2021)

garbage in garbage out, stream the highest quality you can achieve with your limitations to youtube so they can make the best out of it. Best would be to deliver 1440p or higher to them because youtube encodes that resolutions with more bitrate than 1080p or lower.


----------



## Deleted member 330497 (Jun 16, 2021)

Are you guys aware if the max suggested bitrate for 1080@60 (which is 9 Mbps) includes audio bitrate? I mean is it 9 Mbps bitrate just for video or it also includes audio bitrate (my audio bitrate is 128 Kbps) leaving 8872 Kbps for video (9000 - 128 = 8872 Kbps)?
Does streaming with higher bitrate than the top recommended one (9 Mbps) actually provide any quality difference for 1080p at 60fps? Unfortunately I am unable to stream at 1440p because my display is 1080p and OBS does not allow me to upscale the output resolution to 1440p.


----------



## TryHD (Jun 17, 2021)

absolutelyrandom1234 said:


> Are you guys aware if the max suggested bitrate for 1080@60 (which is 9 Mbps) includes audio bitrate? I mean is it 9 Mbps bitrate just for video or it also includes audio bitrate (my audio bitrate is 128 Kbps) leaving 8872 Kbps for video (9000 - 128 = 8872 Kbps)?


doesn't matter ignore bitrate recommendations on youtube


absolutelyrandom1234 said:


> Does streaming with higher bitrate than the top recommended one (9 Mbps) actually provide any quality difference for 1080p at 60fps?


Yes, like i wrote garbage in garbage out, if you have artefacts because the bitrate was insufficient for your content it will also be in the youtube reencode.


absolutelyrandom1234 said:


> Unfortunately I am unable to stream at 1440p because my display is 1080p and OBS does not allow me to upscale the output resolution to 1440p.


You can stream whatever resolution you want, you can simply type your desired resolution in the Output (Scaled) Resolution field instead of using dropdown.


----------



## Deleted member 330497 (Jun 17, 2021)

@TryHD
Thanks for explanation! Are you aware if there's any real advantage (in terms of quality) by streaming 1080p@60 with the OBS output (scaled) resolution set at 1440p (2560x1440)?
I have found some information which state that streaming in 1440p makes YT use the newer, better codec - VP9. I have already tested it out and turns out it's true! If I stream with the output resolution set at 1080p YT uses AVC1. Once I changed the output resolution to 1440p YT used VP9. Is the difference in quality between these two significant? To put it simple: is my effort by changing the output resolution worth it? If so, what bitrate would you recommend for streaming 1440p@60fps for fast-paced action games?

YT suggestion:


> 1440p @60 fps
> 
> Resolution: 2560x1440
> Video Bitrate Range: 9,000-18,000 Kbps


----------



## TryHD (Jun 17, 2021)

It depends on the content you stream, for fast paced games like quake 3 it is worth, if you play chess or so not. Bitrate wise go as high as your connection can handle. The bitrates you quote are the recommended minimum so ignore them.


----------



## konsolenritter (Jun 17, 2021)

absolutelyrandom1234 said:


> I mean is it 9 Mbps bitrate just for video or it also includes audio bitrate (my audio bitrate is 128 Kbps) leaving 8872 Kbps for video (9000 - 128 = 8872 Kbps)?



Okay, so w're talking about 1,4% of the available bandwidth. Do you mean that 1,4% more or less makes a big deal to the video encoding, really? ;)

Why do you want to stream in 1440p (even upscaled, what makes it even worse...)? (Upscaled material is blurried by nature, what makes it harder to the encoder from frame to frame...) So for a slightly better downstream from yt to your viewers you make it even harder for your encoder and upstream. Uuummh.

Streaming at 1080p means more bits per resolution available (to your encoder) than streaming 1440p by the same bandwidth.


----------



## Tomasz Góral (Jun 17, 2021)

Upscaled material is reencoded diffrent codec (betters) like video sender as 1080p. 
And now comparing 1080p vs. 1440p or 2160p, better quality got on higher resolution if you compared the same resolution.


----------



## konsolenritter (Jun 17, 2021)

@Tomasz Góral
So upscaled 1080p material on 2160p should outcome of yt better than native 1080p, got it right?

I know that yt will need more bandwidth to just even compensate for the needs of higher resolution (2160 is four times the area of 1080). But i can't imagine that 1080p upscaled in 2160p should look even better then... :o Sounds very astonishing to me.


----------



## Tomasz Góral (Jun 17, 2021)

better is codec who compressed picture.


----------



## Deleted member 330497 (Jun 17, 2021)

konsolenritter said:


> Okay, so w're talking about 1,4% of the available bandwidth. Do you mean that 1,4% more or less makes a big deal to the video encoding, really? ;)


My point was: if theoretically YouTube has the max limit cap set at 9 Mbps (for 1080p) then sending any additional BIT would not be received/accepted by them causing loss of video or audio quality (because if you stream with video bitrate at 9 Mbps + 128 Kbps audio bitrate you exceed the limit). Alternatively, sending at bitrate higher than 9 Mbps would make no difference as their encoder would downscale everything to the cap of 9 Mbps. I am not aware if such a hard limit on YT-end exists or how their encoder works in practice, that's why I'm asking you guys to get some knowledge on how it all works :-).
It would be pointless to stream with let's 50 Mbps bitrate and find out you will get the same video quality as streaming with 10 Mbps bitrate.



konsolenritter said:


> Why do you want to stream in 1440p


To get the support of VP9 codec. Streaming in 1080p makes YT use AVC1 codec. I have already done some tests and there's a difference in video quality but I'm unable to determine if the rise in quality of the video is significant enough for all the downsides of upscaling (more load on the cpu or rather GPU in my case - NVENC, requirement of higher bitrate so higher bandwidth load, a risk of artifacts - I hope there're none to expect).


----------



## konsolenritter (Jun 17, 2021)

absolutelyrandom1234 said:


> My point was: if theoretically YouTube has the max limit cap set at 9 Mbps (for 1080p) then sending any additional BIT would not be received/accepted by them causing loss of video or audio quality (because if you stream with video bitrate at 9 Mbps + 128 Kbps audio bitrate you exceed the limit). Alternatively, sending at bitrate higher than 9 Mbps would make no difference as their encoder would downscale everything to the cap of 9 Mbps. I am not aware if such a hard limit on YT-end exists or how their encoder works in practice, that's why I'm asking you guys to get some knowledge on how it all works :-).


Aah. I see your point. But i can assure you that YT isn't dropping bits "the easy way". That is technical impossible. Simple dropping or truncation of data is only possible in the special event of totally-ordered bits, i.e. when all the bits are in a strong order from highest to lowest meaning or vice versa. That is not the case with multimedia codecs. What you send over, they must feed into their codec. Multiplexed video and audio streams are very complicated. So every bit, byte and kilobyte sent to youtube have to be processed by their servers. They can't just cap or cut (in terms of truncation) bits here and there. You have to know that Youtube completeley re-encodes your whole material. Going this way they are free to use an independent bitrate from yours (total decoupling their distribution network bandwidth from yours during the upload to them). The aim of Youtube is (understandably) to save bandwidth within their infrastructure (CDN) behind their ingestion (front) servers. If there is a hard limit, the solely possibility for YT would be to deny and break your upstream completely and enforce you to use a lower bitrate. You would know...



> It would be pointless to stream with let's 50 Mbps bitrate and find out you will get the same video quality as streaming with 10 Mbps bitrate.


Anyway you are right on that. Due to the total decoupling by re-encoding the material YT is free to set their final demand on quality maximum. You are encouraged to send best possible material anyway, because every process of re-encoding brings a slight degradation in video (or audio) quality, ever! 

The strict inequality (unfortunately) says: 
- If you send already degraded material, youtubes re-encoding doesn't make it any better (gain of quality impossible due to physics),
- If they demand low bitrate as output of their re-encoders, your material will degrade anyway (you can't avoid that),

Conclusion: You should send over material as good as possible, but you can't prevent YT from any degradation, if they will (save bandwidth on their side).

Regarding their VP9 stuff i'm not sure. You are surely right on that. But as i wrote: To encode the squared (due to increased resolution in x and y) a huge amount of the additional bandwidth is needed to compensate against lower resolution. If there is more bandwidth available to get even better encoding of the material itself, ...i don't know...
Yes, it would be definitely interesting to test this. But rethink: Not all visitors and viewers of YT streams are capable to handle 2k or 4k on their own side. Resulting in the YT viewer to downsize and shrink the material to the viewers window. Even more a thing that YT does have under their control, not yours. :)


----------



## TryHD (Jun 17, 2021)

konsolenritter said:


> But rethink: Not all visitors and viewers of YT streams are capable to handle 2k or 4k on their own side. Resulting in the YT viewer to downsize and shrink the material to the viewers window. Even more a thing that YT does have under their control, not yours. :)


What do you try to say with that?


----------



## Deleted member 330497 (Jun 17, 2021)

One of the arguments against streaming above the YT-recommended bitrate I have read numerous times over the internet is that streaming at higher bitrate (much higher than the recommended) causes an issue with video buffering for low-end users/devices (like phones, tablets or budget laptops). Any idea if it's true?


----------



## konsolenritter (Jun 17, 2021)

TryHD said:


> What do you try to say with that?


Its about the youtube web player (the clients side). As streaming people we don't have control or influence of the viewers side. You can send 2K or 4K, but if the viewport on clients side is smaller, then YT controls how to downscale into that. I don't know if its bilinear, lancosz or something else. It's up to decisions made by YT. And if client-side settings to default, YT chooses the next "fitting" bandwidth/resolution for us.


----------



## konsolenritter (Jun 17, 2021)

absolutelyrandom1234 said:


> One of the arguments against streaming above the YT-recommended bitrate I have read numerous times over the internet is that streaming at higher bitrate (much higher than the recommended) causes an issue with video buffering for low-end users/devices (like phones, tablets or budget laptops). Any idea if it's true?



YT re-encodes the upstream simultaneously to different (smaller) bandwidth settings. So if you upstream in 1080p, YT provides 720p, 480p aso. additionally. By default the player on client side measures and guesses the available bandwidth. If they detect a bottleneck, the video will be switched to a lower bandwidth stream after short lag. To be fair: YT is good at these things. So are their developers of the webplayer technology, to be honest.


----------



## Deleted member 330497 (Jun 17, 2021)

konsolenritter said:


> YT re-encodes the upstream simultaneously to different (smaller) bandwidth settings. So if you upstream in 1080p, YT provides 720p, 480p aso. additionally. By default the player on client side measures and guesses the available bandwidth. If they detect a bottleneck, the video will be switched to a lower bandwidth stream after short lag. To be fair: YT is good at these things. So are their developers of the webplayer technology, to be honest.


So it turns out that the theory about video buffering issue is more of a myth than an actual thing?

Also, one more thing I would like to ask you guys about is *Downscale Filter*. In my case i do upscaling (1080p to 1440p), so does the Downscale Filter take part in it? If so, which one would you suggest for game streaming? I have read that Bicubic is (for some reason) more suitable for games while Lanczos is useful for streaming people, real world and such.


----------



## TryHD (Jun 17, 2021)

konsolenritter said:


> YT re-encodes the upstream simultaneously to different (smaller) bandwidth settings. So if you upstream in 1080p, YT provides 720p, 480p aso. additionally. By default the player on client side measures and guesses the available bandwidth. If they detect a bottleneck, the video will be switched to a lower bandwidth stream after short lag. To be fair: YT is good at these things. So are their developers of the webplayer technology, to be honest.


How does that matter at all for the streamer? Like why bring it even up? It is not in your controll. Also you won't stream in a lower resolution because of it.


absolutelyrandom1234 said:


> So it turns out that the theory about video buffering issue is more of a myth than an actual thing?
> 
> Also, one more thing I would like to ask you guys about is *Downscale Filter*. In my case i do upscaling (1080p to 1440p), so does the Downscale Filter take part in it? If so, which one would you suggest for game streaming? I have read that Bicubic is (for some reason) more suitable for games while Lanczos is useful for streaming people, real world and such.


I prefer bicubic, lanczos has to many ringing for me.


----------



## Deleted member 330497 (Jun 18, 2021)

What do you guys think about *Psycho Visual Tuning*? Is it worth enabling? NVENC OBS Guide recommends to enable it but I have found some posts here on the forum that suggest to disable it. What is your experience with that feature?


----------



## R1CH (Jun 18, 2021)

If you have the GPU to spare, enabling will give higher quality. Some prefer it disabled so it has less of an impact on game FPS.


----------



## Deleted member 330497 (Jun 18, 2021)

R1CH said:


> If you have the GPU to spare, enabling will give higher quality. Some prefer it disabled so it has less of an impact on game FPS.


Ah, I see, thanks for explanation! Thankfully my current streaming settings don't impact in-game framerate in any significant way.

By the way, what is this all about with YouTube stream keys? I use the default variable stream key but I can create additional ones for specific resolution/framerate/bitrate. Is there any point in using other than the default variable one? For what reason were they introduced? I'm trying to understand if they might be of any use for me. After reading the official entry page the only reason behind their introduction that comes to my mind is to make it possible for other users (let's say some friends) to stream at (as) my YT channel. Unless there's other reason I'm not aware of.


----------



## konsolenritter (Jun 18, 2021)

TryHD said:


> How does that matter at all for the streamer? Like why bring it even up? It is not in your controll. Also you won't stream in a lower resolution because of it.



Please read it in the context of the whole thread. On a former post it was asked wether it makes sense to upscale and send 1080p material encoded as 2160p (the idea seemed to be that yt allows/reserves more bandwidth for that). I argued that the additional bandwidth merely compensates for the risen resolution of the envelope, not for better encoding of the 1080p message within that 2160p hull.

Finally i argued that (as you said) we don't have control over screen resolution and algorithm on the player/client side. So the whole question and chain of arguments was if it makes sense to upscale and downscale for the hope that the encapsulated 1080p material would benefit in any way.

I don't think so.
- every up- and downscale brings in noise and degradation of the material,
- benefit from more bandwidth that way is - at least - doubtful.

I agree to a certain degree that there may be a benefit when YT switches to VP9. But if that prevails all the downside of the artificial complicated process? Finally i don't know.


----------



## konsolenritter (Jun 18, 2021)

absolutelyrandom1234 said:


> So it turns out that the theory about video buffering issue is more of a myth than an actual thing?



In the case of Youtube and the downlink from YT's Content Delivery Network to the viewers: YES. A myth.
But there may be buffering issues on your side regarding your upstream capabilities, of course.

Recently i managed to stream over an self-managed RTMP server with no re-encoding, just re-distributing to the viewers. Then its totally up to you, because exactly the bandwidth you choose is the bandwidth the viewer must provide, too. If you send video with 4 or 8 mbps, every of your viewers must be capable to downstream the same amount. If some viewers have weak links, they will suffer from your "great" bandwidth.

So i experimented with (additional) on-the-fly downscaling and re-encoding (from 1080p to 720p with lower bandwidth) on my server (thus providing a second stream for weak viewers). The outcome is viewable for normal purposes (church transmission), but definitely not for fast gaming (where people tend to be unhappy with framerate below 60) . ^^ **grin**


----------



## TryHD (Jun 18, 2021)

konsolenritter said:


> Please read it in the context of the whole thread. On a former post it was asked wether it makes sense to upscale and send 1080p material encoded as 2160p (the idea seemed to be that yt allows/reserves more bandwidth for that). I argued that the additional bandwidth merely compensates for the risen resolution of the envelope, not for better encoding of the 1080p message within that 2160p hull.
> 
> Finally i argued that (as you said) we don't have control over screen resolution and algorithm on the player/client side. So the whole question and chain of arguments was if it makes sense to upscale and downscale for the hope that the encapsulated 1080p material would benefit in any way.
> 
> ...


I don't think you understand how youtube works. With increasing the resolution to atleast 1440p you get vp9 for all resolution that youtube delivers + that the stream that youtube delivers at 1440p and 2160 gives you not only more bitrate in total but higher bits per pixel ratio.
So your thinking is wrong because of lack of information.


----------



## konsolenritter (Jun 18, 2021)

absolutelyrandom1234 said:


> By the way, what is this all about with YouTube stream keys? I use the default variable stream key but I can create additional ones for specific resolution/framerate/bitrate. Is there any point in using other than the default variable one? For what reason were they introduced?



They were mainly introduced due to some (former) faulty encoders. There is a world outside OBS. ^^  For instance i choosed to stream from a chinese drone a while ago. And some of the exotic encoders make false assumptions about resolution, bitrate aso. YT ingestion servers then may have problems to detect the right stream settings from the stream itself. With the specific streamkeys you could/can bind specific settings. In practice it only worked for the resolution for me, not even the framerate. Well then...


----------



## konsolenritter (Jun 18, 2021)

TryHD said:


> I don't think you understand how youtube works.


That is exactly what i admitted in former posts regarding inner secrets of VP9 (that i don't know). All other said should be right.
Thank you anyway. Do you have web resources/links regarding these background information? I would be pleased to...


----------



## TryHD (Jun 18, 2021)

konsolenritter said:


> Thank you anyway. Do you have web resources/links regarding these background information? I would be pleased to...


Not really, I simply tested that stuff myself and that is what I observed.


----------



## ixthUA (Jun 18, 2021)

For high popularity channels youtube enables vp9 codec for all resolutions. I am at 4.5k subs and still have to upscale from 1080p to 1440p to get good video quality, otherwise high motion + detail scenes become "pixelated".
While upscaling makes video blurry (i use lanczos 32 samples), when downscaled in web video player image becomes very sharp, while native 1080p videos become blurry due to low bitrate avc1 codec.


----------



## Deleted member 330497 (Jun 18, 2021)

ixthUA said:


> While upscaling makes video blurry (i use lanczos 32 samples)


I don't know what content you stream but is it some gaming streams? If so, wouldn't Bicubic filter be more appropriate for it? I have already mentioned the matter of the downscale/upscale filters on the previous page. Since that time i have done some more reading across the forum (and outside of it) and I've found out that Bicubic filter is more suitable for gaming streams than Lanczos. I'm curious what are opinions about it. I've done some comparison of Bicubic and Lanczos on my own stream but I can't make a decision which one is 'better' as I don't see much difference.


----------



## ixthUA (Jun 19, 2021)

I just compared image quality of bicubic 16 samples vs lanczos 32 samples and didn't notice a difference. My screen is not 1440p though, so i used a video player and set image zoom at 100%.


----------

