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

Field Index

availableFrameQueueSpace: Integer

Finish Video: Trigger

selectedCodec: String

availCodecsList: String

fourcc: String

stencilBuffer: Bool

bgColor: Color

Frames Per Second: Integer

supported: Bool

bufferType: Enum

Image Format: String

update: Trigger

Create New Video: Trigger

isImageSourceValid: Bool

updateAvailableFrameQueueSpace: Trigger

Current Error: String

isVideoFileOpen: Bool

Write Frame: Trigger

Duration (in seconds): Float

pixelScale: Float

Write Images Instead Of Video: Bool

enableMultiSampling: Bool

quality: Float

writeFrameFPS: Double

Filename: String

renderFPS: Double

Written Frames: Integer

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