Using RVOverlay nodes to create virtual burn-ins

RVOverlay nodes can be used to place text and rectangles over any input source.  They can also be used to create custom mattes for sources. You can see information about the RVOverlay properties in the Reference Documentation.

Attached are two example session files that make use of the RVOverlay node. In overlay_colors.rv you will find an example of drawing various colored rectangles along with some text annotations. In overlay_coords.rv you will see an example of how RVOverlays use "Normalized Coordinates" to place the paint components.

RV works resolution agnostic. We call the image coordinate system Normalized Coordinates. The center of the image is at 0, 0. The float values that make up the horizontal and vertical positions are measured in units of the height of the image. So are the width and height size values of RVOverlay rectangles.

In order to place something on the left hand side, you will have to set the position of the overlay to:

-1 * ( source width / source height ) / 2

Note that the divide by 2 above is for each half of the coordinate system.

The right hand side would be:

( source width / source height ) / 2 - width of your rectangle

Again, you can see examples of this in the attached session files.

Follow

11 Comments

  • 0
    Avatar
    Jon Morley

    I have been getting a lot of questions about how to do a heads-up-display using RVOverlay nodes so I decided to additionally post a proof of concept example package that shows one approach for doing exactly that. Please take a look at the following if you find yourself working on not so burned in burn-ins. (NOTE: Writing information into the render graph this way will be picked up if you process the resulting session with RVIO)

    Attached in the original post above as overlay_hud

  • 0
    Avatar
    Felixclement

    Quick question! Is there a way to specify text justification like align right and center?

  • 0
    Avatar
    Jon Morley

    Hi Felix,

    Unfortunately, no. Not at this time.

    Thanks,Jon

  • 0
    Avatar
    Paolo Furini

    I've got a question about this package. I customized it to show the information i wanted to show, but i'm not able to make them refresh for each frame....

    The only thing changing is the frame number...am i missing something, or this feature is not working with this overlay?

    Can you give me some clue on how to make this work please?

    Thank you so much

  • 0
    Avatar
    Paolo Furini

    I've got a question about this package. I customized it to show the information i wanted to show, but i'm not able to make them refresh for each frame....

    The only thing changing is the frame number...am i missing something, or this feature is not working with this overlay?

    Can you give me some clue on how to make this work please?

    Thank you so much

  • 0
    Avatar
    Paolo Furini

    I've got a question about this package. I customized it to show the information i wanted to show, but i'm not able to make them refresh for each frame....

    The only thing changing is the frame number...am i missing something, or this feature is not working with this overlay?

    Can you give me some clue on how to make this work please?

    Thank you so much

  • 0
    Avatar
    Felixclement

    Use the frame changed event to trigger whatever you want!

  • 0
    Avatar
    Paolo Furini

    Ok thank you, i did it!

    Now i've got another question! I'm not able in python, to draw a black square with a little opacity under the text (as the one that appears showing the metadatas of the file, pressing F4)

    Can you give me any clue about how to do that? 

    Thank you

  • 0
    Avatar
    Jon Morley

    Hi Paolo,

    That capability is currently only included out of the box with the Mu + OpenGL bindings. If you want to create one of those floating windows you will either have to use Mu or create your own from scratch with PyOpenGL (which we do not currently include).

    Thanks,

    Jon

  • 0
    Avatar
    Dave Lajoie

    Hello Jon,

    overlay_hud-1.1.rvpkg is really neat. I was able to use it to pass "per-source" data via command line

     

    rv [ source0.*.exr ] [ source1.*.exr ] -flags "aaStatusList=Approved,Rejected"

    The only issue I have found is that -wipe option somehow shows both source overlays at the same time.

    Anyway, just want to tell you this is pretty cool rvpkg.

    Is there any repository of those demo/prototype?

    Cheers

    Dave.

     

  • 0
    Avatar
    Jon Morley

    Hi Dave!

        There isn't at this moment, but it is something that we have wanted

        to assemble for some time. As a side effect of the ongoing efforts

        to move our support system over into Shotgun's I had to recollect

        all of the attachments from our forums. I think as the dust settles

        I have a new idea about how to add some packages to one central post

        and then link back to the discussions that gave rise to their being.

        Stay tuned.

        Thanks,

        Jon

Please sign in to leave a comment.