Why does nvenc encoder use so much storage

Zipibu

New Member
So I have a new rtx 2060 I got some weeks ago and I tried to record somewhat of an hour session of gameplay and when I went to go take a look the file size was around 40gb what's up with that luckily I have a 2tb hard drive but still what's up with that.
 

Zipibu

New Member
The file size is entirely dependent on the quality / bitrate you have set.
so what quality would you suggest for me because i want to be able to record long sessions and stuff i want ok-good quality with low storage
 

R@de

Member
Its one of those things that you need to experiment to work out what you feel is acceptable.

I personally use H.265/HVEC AMD AMF or H.265/HVEC Nvidia NVENC, Constant Bitrate (CBR) at 40M/Bit, for 2K/60FPS to record PS5 4K/60FPS gameplay to a HDD. This results in 16GB to 18GB per hour and I am happy with the quality.
 

Lawrence_SoCal

Active Member
so what quality would you suggest for me because i want to be able to record long sessions and stuff i want ok-good quality with low storage
That comment isn't really answerable
What do you mean by low storage? what do you define as ok quality? what is 'long'?
like so much in life, there is no free lunch. Higher quality requires either more storage, or more compute to drive compression.
What one person considers ok quality, another won't. What you mean by low storage vs what I or others consider reasonable storage will vary (possibly widely). For me, I locally record 80->90 minute livestream sessions at around 12GB per session, and that is fine for my use case [from NVENC on a GTX 1660 Super]. But what will drive that quality is determined by how and on what you'll use those videos

So, I'm guessing (as you ignored the only pinned post in this forum about posting an OBS log, so we can't see your OBS settings to comment), that you adjusted the default NVENC recording quality. And that is why you file size is so large. Or you changed the color range? or this was a recording for many, many hours?

Like the old axiom of choosing between quality speed and price, where you get to pick 2 and the 3rd (leg of a triangle) becomes a given (not something you can control), meaning in this case, pick what is important to you. Usually, people don't want to get a new computer, so encoding quality will be driven by your existing CPU and GPU. HDDs, on the other hand, are relatively cheap, so storage is cheapest item to add extra of. So, if spending money on storage is needed and possible, then pick best recording quality your system can handle that you find acceptable. Then move recordings as required if internal storage is limited. For example, if getting more storage isn't an option, then you optimize your recordings for storage space (as limited by CPU/GPU), and you'll have to accept whatever quality that results in.
 

Zipibu

New Member
I don't see h.265 or HVEC?

That comment isn't really answerable
What do you mean by low storage? what do you define as ok quality? what is 'long'?
like so much in life, there is no free lunch. Higher quality requires either more storage, or more compute to drive compression.
What one person considers ok quality, another won't. What you mean by low storage vs what I or others consider reasonable storage will vary (possibly widely). For me, I locally record 80->90 minute livestream sessions at around 12GB per session, and that is fine for my use case [from NVENC on a GTX 1660 Super]. But what will drive that quality is determined by how and on what you'll use those videos

So, I'm guessing (as you ignored the only pinned post in this forum about posting an OBS log, so we can't see your OBS settings to comment), that you adjusted the default NVENC recording quality. And that is why you file size is so large. Or you changed the color range? or this was a recording for many, many hours?

Like the old axiom of choosing between quality speed and price, where you get to pick 2 and the 3rd (leg of a triangle) becomes a given (not something you can control), meaning in this case, pick what is important to you. Usually, people don't want to get a new computer, so encoding quality will be driven by your existing CPU and GPU. HDDs, on the other hand, are relatively cheap, so storage is cheapest item to add extra of. So, if spending money on storage is needed and possible, then pick best recording quality your system can handle that you find acceptable. Then move recordings as required if internal storage is limited. For example, if getting more storage isn't an option, then you optimize your recordings for storage space (as limited by CPU/GPU), and you'll have to accept whatever quality that results in.
Reasonable storage like I have a 2tb hard drive but if I keep recording about 40gb of gaming footage which is about an hour I would want to lower that by a lot. Ok quality as in watchable of course but not looking like dog crap. Also I will be getting my obs log so you can look at it but thanks for this i guess?
 

Zipibu

New Member
(OBS LOG) Also I am sorta new to obs I understand it but not a whole lot.
 

Attachments

  • 2022-07-13 16-20-11.txt
    10.4 KB · Views: 37

koala

Active Member
The lower the cq level, the higher the quality and the higher the file size.
Changing the cq level up/down by 3-4 about halves/doubles the file size.
 

Zipibu

New Member
The lower the cq level, the higher the quality and the higher the file size.
Changing the cq level up/down by 3-4 about halves/doubles the file size.
I have 30 as my cqp because that's the only thing that will help me use as little storage as possible.
 

koala

Active Member
cq=30 is somewhat medium quality. It has visible compression artifacts. Not suited for postprocessing and later upload to some video service to fill a video channel, but if you just want to revisit and check your gameplay for yourself, definitely a way to go to keep file size low.
 

Zipibu

New Member
cq=30 is somewhat medium quality. It has visible compression artifacts. Not suited for postprocessing and later upload to some video service to fill a video channel, but if you just want to revisit and check your gameplay for yourself, definitely a way to go to keep file size low.
yeah still tho it's sorta what I'm looking for but yeah for now I think that's fine unless I figure out something else in my obs setting is making it use more storage.
 

FerretBomb

Active Member
Its one of those things that you need to experiment to work out what you feel is acceptable.

I personally use H.265/HVEC AMD AMF or H.265/HVEC Nvidia NVENC, Constant Bitrate (CBR) at 40M/Bit, for 2K/60FPS to record PS5 4K/60FPS gameplay to a HDD. This results in 16GB to 18GB per hour and I am happy with the quality.
You really should never record locally with CBR. It's necessary while streaming to be compatible with HLS and the chunking/replication infrastructure. It is hands-down the absolute WORST method when recording locally, prone both to bitrate wastage on simple/low-motion scenes, and bitrate-choke on high complexity and fast-motion scenes.
For local recording, you should be using CQP or CRF, depending on which encoder you're using. It does mean more variable storage use (depending on the content being recorded), but results in consistent image quality. By design, as that is its primary metric and focus.
 

R@de

Member
You really should never record locally with CBR. It's necessary while streaming to be compatible with HLS and the chunking/replication infrastructure. It is hands-down the absolute WORST method when recording locally, prone both to bitrate wastage on simple/low-motion scenes, and bitrate-choke on high complexity and fast-motion scenes.
For local recording, you should be using CQP or CRF, depending on which encoder you're using. It does mean more variable storage use (depending on the content being recorded), but results in consistent image quality. By design, as that is its primary metric and focus.
And that is why I am using CBR. Additionally by the time youtube has finished butchering the image quality after I upload my videos CQP literally is a waste of space. Im happy with the resulting image quality using CBR, it works for my needs.
 

koala

Active Member
And that is why I am using CBR. Additionally by the time youtube has finished butchering the image quality after I upload my videos CQP literally is a waste of space. Im happy with the resulting image quality using CBR, it works for my needs.
That's ok, if you directly upload your recordings without any postprocessing. Postprocessing means any type of work that recodes the video data, which usually takes place if you cut or edit the video.
Make sure the bitrate you record with is not lower than the bitrate Youtube will recode ("butcher") the video to.
However, if you locally process your video before upload, and your raw source is cbr with visible compression artefacts, keep in mind the compression artefacts will be encoded as real video by the video editor, so the quality that reaches Youtube is already bad. Every intermediate encoding step will exponentially increase the compression artefacts. The recommendations from FerretBomb aim to keep this distortion as low as possible.
 

FerretBomb

Active Member
Problem being, with YouTube's mangl^H^H^H^H^Hprocessing, the quality is indeed lowered... but a poor-quality source going in means an even worse-quality result coming out.

If you're happy with it, that's your call. Chicken wire and chewing gum works for some people.
 

R@de

Member
@FerretBomb

To put some context to it, first 2 vids are with OBS, last one with Bandicam. All CBR 40M/bit, H265/HEVC AMD AMF.

 

R@de

Member
@Zipibu Apologies and that was not my intention. However, you can use CBR for local recordings, no harm in doing so and if you need to target a specific file size per hour etc CBR will help you achieve this, there will be compromises in quality and we could go on about pedantic issues associated with CBR. Don't be afraid to experiment and see what works for you.
 
Top