Export only annotation, not composite of frame+annotation

Hey David,

Unfortunately it’s not easy but it’s certainly possible. We don’t support exporting annotations over alpha, and I’m not quite sure why. I’ll put in a feature request to add that support.

Meanwhile, if you’re not averse to scripting, you can build a package that will do it for you.

Here’s the spec for it:

  1. You’ll need to use a movieproc as a blank placeholder in the background of your annotations. You can use commands.setSourceMedia command to achieve that. Here’s a rough example:

from rv import commands, extra_commands
frame = commands.frameStart()
source = commands.sourcesAtFrame(commands.frame())[0]
commands.setSourceMedia(source, [“solid,red=0,green=0,blue=0,alpha=0,start=1,end=10.movieproc”])

  1. You can get the annotated frames number via commands.markedFrames().Then you can take a look at export_utils.exportMarkedFrames under RV_INSTALL_PATH/PlugIns/Mu/export_utils.mu to see how RV exports the annotations.

  2. RV exports annotations in a flattened format, which won’t maintain your alpha channel and will render annotations with black background instead of alpha composite. This isn’t entirely useful, so you’ll need to write your own exporter. This can be part of the same plugin as your annotations. We already have an exporter example here, if you export annotations as pngs that should be suitable though:

If you don’t know how to get started with our packages, you can read our post here:

A couple of gotchas:

  • You’ll need to specify the start and end frame for the movieproc that matches your media length, otherwise movieproc will replace the length and chop off your annotated frames. This means that you’ll need to cycle through all of your sources to see which one has the longest frame range, or you can be lazy and set end to something really long like 10000.
  • You may want to replace the media back to what it was after you’re done exporting.

Hope this helps!

Thanks,
Alexa

3 Likes