Skip to main content
eladarling
Participating Frequently
May 31, 2019
Question

Software Encoding and YUV420p

  • May 31, 2019
  • 9 replies
  • 3629 views

I'm having trouble balancing two needs when exporting videos: I need them to be at a low bitrate (<4mpbs) in yuv420p format.

​If I export a video using hardware encoding, the final video is exported using yuv420p, which is what I need for the final product. Unfortunately, I can't set a maximum bitrate (only a target bitrate) when using hardware encoding, so the videos end up being a much higher bitrate than I can support for playback on my app.

​If I export a video using software encoding, I can set a bitrate cap, but every time I use software encoding, the file exports in yuv420p tv.

​Does anyone know of any way to export using software encoding without it exporting in tv range? I've experimented with Adobe Media Encoder but it hasn't helped the process.

This topic has been closed for replies.

9 replies

Legend
June 1, 2019

Oh, I didn't mean that you were 'wasting my time' or anything like that. Just that your initial post didn't have all the info that you eventually ended up providing, due to my responses. I like the post you made with pictures of your export specs, using hardware and software. And I also really liked that you expressed the meaning of TV ( rec 709 16-235 ) as opposed to what you'd like to get ( 0-255 sRGB ).   In the long run a lot of info was exchanged and I surely didn't mean to suggest 'saving my time' meant I didn't enjoy trying to help.

I'm sure someone will be able to give you the solution you want using software encoding, so good luck and thank you for giving so much info !!!!

Legend
June 1, 2019

not to further complicate things.. but are you aware that the program monitor is adobe shows you only rec 709 ??

eladarling
Participating Frequently
June 1, 2019

That really doesn't address any of my questions and as you've mentioned previously that you would like it if i could save you time, it doesn't seem like you have an answer for this in particular so you can use your time elsewhere I think. But thanks again for your contributions.

Legend
June 1, 2019

hehe... well, good luck !

you coulda said that to begin with and saved me some time ….hehe...

eladarling
Participating Frequently
June 1, 2019

I thought I was fairly clear, but thanks for making some attempt at explaining my work for me deeply appreciated, Rodney.

I would really love any input or suggestions from anyone else who might have some insight on how to move forward given the data provided.

Legend
June 1, 2019

I kinda doubt you have that kind of control using adobe software … you have to live with what you are getting and work with it.

maybe someone else has a better solution but I kinda doubt it.

adobe loves rec 709

Legend
June 1, 2019

Try making a note of what your target bitrate(s) are for hardware encoding and just keep lowering it until you get what you want.

Do small tests ( don't need to export entire timeline.. just a few seconds ).. and then make a note of what worked and go with it.

eladarling
Participating Frequently
June 1, 2019

Thanks Rodney, I've actually already done those things so I'm looking for advice on how to move beyond those workarounds.

Legend
June 1, 2019

If you're talking about 0-255 vs. 16-235 ( or whatever that stuff is ) .. then that's a setting on your graphics card I think... like for the web you might want 0-255 ???    So that's in your graphic card settings or whatever you have for monitor and driver for it...

??

Legend
June 1, 2019

I guess what I'm suggesting is that EVERYTHING out of adobe is tv range ( basically ) and I have no clue where you're getting some message that one thing is TV range and the other thing is NOT TV range. It's all the same thing.

???

Legend
June 1, 2019

I'm not sure what you mean by TV range. Nothing you export from Adobe is going to be anything more than Rec 709 ( tv range) unless you jump through some hoops and have source that it HDR and export to HDR, which isn't going to be 420p... cause that stuff is UHD basically ( ultra high definition ).

????

eladarling
Participating Frequently
June 1, 2019

It's possible I'm not explaining myself correctly. This is what I get when i export using hardware encoding:

So the bitrate is a bit higher than I would like to use in my app but it is yuv420p, which is key.

This is what I get when I export using software encoding (2 pass I believe):

Much more manageable bitrate, but as you see it's yuv420p(tv, bt709).

Using yuv420p tv limits the range of the data so it displays something like 16-235 instead of 0-255 which is what I'm seeking for this particular application.

I know it's not the standard but we make the camera and do the debayering ourselves in CUDA so the initial file is definitely 0-255 yuv420p, not yuv420p tv. I can show similar metadata on the source file if it helps find a solution.

eladarling
Participating Frequently
June 1, 2019

Also this was all done on the same computer, same graphics card, same everything except the export settings in Premiere.

Edit: by which I mean the difference between exporting a file that is yuv420p and exporting a file that is yuv420p tv is that one is the result of exporting with hardware encoding and the other is the result of exporting using software encoding.

I simply cannot figure out how to get yuv420p with software encoding. That's my primary question that I'm seeking an answer to, if there is one.

Legend
June 1, 2019

Not sure what's up, but I'll just guess.

If you use variable bit rate export ( VBR) 2 pass and set both the min and max at 4mbps using H264 (which will end up being an MP4 file extension ) you might get what you want.

eladarling
Participating Frequently
June 1, 2019

Ah, I should have mentioned that I tried this but while it did export in an acceptable bitrate, it was still in yuv420p tv range instead of just yuv420p.