VideoWriterInventor

MLModule
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll MLVideoWriter
definition MLVideoWriter.def
see also VideoWriterML
inherits from OffscreenRenderer
keywords video, movie

Purpose

The VideoWriterInventor module is derived from the OffscreenRenderer module. It renders a given Open Inventor scenes and writes the resulting images to a video stream.

Usage

Connect an Open Inventor scene to the input of the VideoWriterInventor module. Specify the size and frame rate for the target video. Use the Create New Video field to open a video stream. Trigger the Write Frame field to render the attached scene and write a single frame into the video stream. When finished, trigger the Finish Video field to close the video stream.

Details

Due to Unicode limitations of the underlying OpenCV video file handling, a temporary file is used for recording under Windows. The resulting video file is renamed to the Filename after recording is finished.

Additionally, if one of the parent directories contains non-ASCII characters, the current working directory of the main application process is changed to the directory used in Filename intermediately.

Windows

Default Panel

../../../Modules/ML/MLVideoWriter/mhelp/Images/Screenshots/VideoWriterInventor._default.png

Input Fields

sceneGraph

name: sceneGraph, type: SoNode

The field for connecting the input scene.

Parameter Fields

Visible Fields

Current Error

name: currentError, type: String, persistent: no

Shows the current error or an empty string if no error occurred.

Written Frames

name: frameCounter, type: Integer, persistent: no

Shows the number of written frames.

Duration (in seconds)

name: duration, type: Float, persistent: no

Shows the duration of the video in seconds.

Frames Per Second

name: framesPerSecond, type: Integer, default: 30

Sets the frame rate in frames per second.

Create New Video

name: createNewVideo, type: Trigger

When pressed, a new video stream is opened.

Finish Video

name: finishVideo, type: Trigger

When pressed, the current (open) video stream is closed.

Filename

name: filename, type: String

Sets the filename of the video file.

Write Frame

name: writeFrame, type: Trigger

When pressed, the scene is rendered and written as a single frame into the video stream.

Write Images Instead Of Video

name: writeImagesInsteadOfVideo, type: Bool, default: FALSE

Image Format

name: imageFormat, type: String, default: png

Hidden Fields

bufferType

name: bufferType, type: Enum, default: AUTO

see OffscreenRenderer.bufferType

supported

name: supported, type: Bool, default: TRUE

see OffscreenRenderer.supported

stencilBuffer

name: stencilBuffer, type: Bool, default: FALSE

see OffscreenRenderer.stencilBuffer

pixelScale

name: pixelScale, type: Float, default: 1

see OffscreenRenderer.pixelScale

bgColor

name: bgColor, type: Color, default: 0 0 0

see OffscreenRenderer.bgColor

update

name: update, type: Trigger

see OffscreenRenderer.update

enableMultiSampling

name: enableMultiSampling, type: Bool, default: FALSE

see OffscreenRenderer.enableMultiSampling

isImageSourceValid

name: isImageSourceValid, type: Bool, persistent: no

Shows whether the image source is valid, i.e., if an Open Inventor scene is connected.

availCodecsList

name: availCodecsList, type: String, persistent: no

selectedCodec

name: selectedCodec, type: String, persistent: no

fourcc

name: fourcc, type: String, default: H264

Sets the four character code of the used codec.

quality

name: quality, type: Float, default: 30

Sets the encoding quality (this depends on the chosen codec).

renderFPS

name: renderFPS, type: Double, persistent: no

writeFrameFPS

name: writeFrameFPS, type: Double, persistent: no

isVideoFileOpen

name: isVideoFileOpen, type: Bool, persistent: no

Shows whether a video stream is open.

updateAvailableFrameQueueSpace

name: updateAvailableFrameQueueSpace, type: Trigger

availableFrameQueueSpace

name: availableFrameQueueSpace, type: Integer, persistent: no