RGB levels problem with Vegas Pro & HitFilm integration

Hi,

I noticed an annoying problem when using HitFilm projects in Vegas Pro:

1. Drag a HitFilm project onto the Vegas Pro (version 15) timeline -> levels are changed (contrast increases - can easily be seen in the histogram)

2. Use Add "HitFilm effect" in Vegas Pro -> the same thing happens

3. Render the file in HitFilm (H.264 MP4) and drag it onto the Vegas Pro timeline -> levels are okay

This makes the integration of HitFilm into Vegas Pro (which is simple but handy) virtually useless. There was a discussion about the same thing here - but I don't see a solution...

Any ideas?

Thanks

FrancisFord

Comments

  • Add a Vegas Levels plugin to the clip. It's been like that so long it's not getting fixed. 

  • Thanks. Sound like a Vegas Pro solution: Live with it and find a workaround. I am doing my current project with Davinci Resolve 14 and I think I like it...

  • Triem23Triem23 Moderator

    My prior post vanished! 

    Anyways, Hitfilm always operates 0-255 levels. Vegas tends to be 16-235 broadcast levels. 

    I think the other thread you linked links to a discussion on Vegas color space. I think setting Vegas Project Preferences to 32-bit linear forces Vegas into 0-255 space. Otherwise, yeah, the broadcast levels filter. 

  • I still don't get it. I tried 32 bit in the Vegas Pro project settings and various filters. The preview in Vegas Pro seems to match the preview in HitFilm better but the rendered video has much more saturated colors than it should have.

  • @FrancisFord "The preview in Vegas Pro seems to match the preview in HitFilm better but the rendered video has much more saturated colors than it should have."

    Which rendered file and in what playback? Vegas or Hitfilm render. Vegas or Hitfilm or media player playback.

    The Vegas preview only looks "correct" (like a media player) if the video data is full range. Computer displays always expect full range.

    In Vegas if your video data is full range and you render to MP4 for example, then your media file will look bad in a player. You must send studio video levels to the encoder in Vegas.

    In Vegas it is always 100% your responsibility to know what your media input levels are, what your display levels need to be and what your output/export levels need to be. Vegas does not touch levels on import or export or display. If/when it is wrong it is you that needs to make the appropriate adjustment and the proper time/place.

    Hitfilm tries to eliminate most of this confusion. Internally Hitfilm is always full range so your preview is always good. Hitfilm will do a studio to full range adjustment on import for many media types, but not all. Mostly camera media types get a levels adjustment when not explicitly marked as full range (like most DSLRs). Hitfilm will do a full range to studio adjustment when exporting to MP4 so video players will look correct.

    I don't know what the Hitfilm to Vegas link does but I would expect it is RGB data straight from Hitfilm which should be full range. Thus a Vegas encode to MP4 without a levels adjust will have a problem.

     

  • edited October 31

    @NormanPCN: Thanks. I hoped there was a simple thing that I am doing wrong. That doesn't seem to be case. I will try to break down the whole problem into easy-to-reproduce steps. The little video contains a 3D model of a Ferrari (red of course) - the hue and saturation changes are very obvious. I hope I can reproduce it using some simple test patterns. Please give me a day or two...

  • Okay - here is what I did:

    1) Create a HitFilm project with a comp that is made of 6 colour patches (planes) with RGB values (decimal):
    100,40,30
    215,100,75
    5,5,5
    30,30,30
    225,225,225
    250,250,250

    2) Export a PNG from HitFilm and check RGB values with Photoshop -> all okay

    3) Render MP4 from HitFilm and check RGB values -> reds slightly changed 101,40,31 and 215,101,75

    4) Drag HFP file into Vegas timeline (8 bit per pixel in project settings), export PNG and check RGB -> all okay

    5) Drag MP4 file from step 3 into Vegas timeline (8 bit per pixel in project settings), export PNG and check RGB:
    103,50,43
    201,103,80
    20,20,20
    42,42,42
    209,209,209
    231,231,231

    6) Render Vegas project with HPF file, template "MAGIX AVC/AAC MP4 / Internet HD 1080p 29,97 fps (NVidia NVENC)" and check RGB:
    97,28,17
    232,98,70
    0,0,0
    16,16,16
    243,243,243
    255,255,255

    7) Render Vegas project with MP4 file from step 3, template "Internet HD 1080p 29,97 fps (NVidia NVENC)" and check RGB:
    103,39,33
    215,101,75
    5,5,5
    30,30,30
    225,225,225
    250,250,250

    8) Change project settings to "32 bit float (full range)" and "Display transformation: Off" (I am using the German version so my translation might not be identical to English version) -> colours almost spot-on, MP4 file is much larger

    So it definitely has to do with the handling of video levels. Obvious workaround seems to be: do not use the Vegas-HitFilm integration...

  • Just some quick notes.

    In Hitfilm exporting any image sequence type file. PNG, JPG, EXR will not have levels altered. Full range export.

    In Hitfilm exporting an AVC/MP4 file, the full range levels will be altered to studio levels. This is expected and desired.

    As stated, Vegas does not mess with levels. 8-bit. I've not played with 32-bit modes but there are two. One where data is interpreted as full range and the other is studio/video levels.

    AVC/MP4 renders in Vegas expect you to give them studio levels. They will encode what you give them and mark the resulting file as studio/normal video levels. If you give them full range then a video player will clip the levels on playback. I don't have Vegas 15 to test any of the new AVC encoders but I would expect them to operate as the AVC encoders have previously.

    Image types (PNG, EXR, etc) export on Vegas expect, can properly use, full range levels. (Your #4)

    As stated, it's your responsibility in Vegas to know what your media input levels are, what levels your display device requires and what levels the encoder (render as) requires. You have to use the levels effect as/when necessary.

    I've found it easiest to just do everything full range in Vegas. This works for the preview window on computer monitors. I don't have "video" display monitor(s). So I just worry about things looking good/proper on my Vegas preview. Then on export to AVC/MP4 do a levels conversion to studio/video levels (on the video output bus). The playback will look like the preview. No levels worries.

    This is kinda how Hitfilm operates except that Hitfilm does automatic levels expansion on many camera media type imports and Hitfilm does automatic levels compression on export to AVC/MP4.

Sign in to comment

Leave a Comment