paulpacifico / shutter-encoder

A professional video compression tool accessible to all, mostly based on FFmpeg.
https://www.shutterencoder.com
GNU General Public License v3.0
1.01k stars 61 forks source link

Keep sub-black and super-white data #81

Closed DesertCookie closed 2 years ago

DesertCookie commented 2 years ago

Is there an option to keep sub-black and super-white data like in DaVinci Resolve?

Does ShutterEncoder keep this data by default? I am especially interested in that for H.264, H.264, and VP9.

Edit: Here's a great article about what I am talking. There are many different names for it: thepostprocess.com.

paulpacifico commented 2 years ago

I think you're looking for 'Force output:' '0-255', this option is only available for H.264 & H.265 codecs.

Paul.

DesertCookie commented 2 years ago

I am trying to convert a DNxHR HQX source which is 12bit 4:2:2 with sub-blacks and super-whites written to the file.

When trying to render H.264 or H.265 with the Force outpue: 0-255 toggle I always get the following error:

FFprobe: Unsupported codec with id 0 for input stream 1
FFmpeg: Unknown pixel format requested: yuvj420p10le.
paulpacifico commented 2 years ago

Sorry for the delay I was on holiday.

This happens because you can't force the 0-255 levels with the 10bits colorpsace.

Paul.

DesertCookie commented 2 years ago

No worries.

Interesting. Does 10bit always have 0-255 levels then? I know my camera encodes 10bit H.265 with 0-255 levels - I'd like to keep it that way through re-encoding.

paulpacifico commented 2 years ago

No 10bit does not mean 0-255 levels. This is a limitation from Shutter Encoder itself but using 'Convert levels' from '16-235' to '0-255' inside 'Colorimetry' section should work. Paul.

DesertCookie commented 8 months ago

Coming back to this, I've noticed some brightness shifting with Convert levels. The footage gets quite a bit darker and does not correspond to what I color graded and exported. The exported footage does use 0-1023 levels.

With level convert: with level convert Without level convert: no level convert

Overall, the level converted image looks better in a sense. However, it should be log footage, purposely graded to not lose anything in the dark areas, which, for other clips, it does (here there's not enough darkness to really come close to underexposure after the level conversion).

Is there a way to go about fixing this, potentially by addressing this limitation within Shutter Encoder?