Click or drag to resize

VideoStream Class

A raster stream that streams from a video. The video can be read from a file, or streamed from an HTTP, RTP, UDP, or TCP source. See the Video Streams topic for a list of supported video formats and Uri usage.
Inheritance Hierarchy

Namespace:  AGI.Foundation.Graphics.Imaging
Assembly:  AGI.Foundation.Graphics (in AGI.Foundation.Graphics.dll) Version: 24.3.420.0 (24.3.420.0)
Syntax
public sealed class VideoStream : RasterStream

The VideoStream type exposes the following members.

Constructors
  NameDescription
Public methodVideoStream(String)
Initializes the video stream from a Uri, which can be a file, HTTP, RTP, UDP, or TCP source. See the Video Streams topic for a list of supported video formats and Uri usage.
Public methodVideoStream(Uri)
Initializes the video stream from a Uri, which can be a file, HTTP, RTP, UDP, or TCP source. See the Video Streams topic for a list of supported video formats and Uri usage.
Top
Properties
  NameDescription
Public propertyAllowFrameDrop
Gets or sets a value indicating if frames should be dropped if video processing can not keep up with a video stream. If this is set to false, the video quality may degrade when the processing load is too high. Alternatively, when set to true, frames will be dropped, but each frame that is processed should have an improved visual quality.
Public propertyAttributes
Gets the RasterAttributes that define the raster data.
(Inherited from Raster.)
Public propertyEndFrame
Gets or sets the end frame of the video. Changing the EndFrame property also changes the EndTime property to the time in the video that corresponds to the specified frame.
Public propertyEndTime
Gets or sets the end time of the video in seconds. Changing the EndTime property also changes the EndFrame property to the frame in the video that corresponds to the specified time.
Public propertyFrameRate
Gets or sets the frame rate of the video when the Playback property is set to RealTime. If this property is not set, the internal framerate of the video is used.
Public propertyHeight
Gets the height of the raster in pixels.
(Inherited from Raster.)
Public propertyIntervalEndTime
Gets or sets the SceneManager time at which the video will stop playing when the Playback property is set to TimeInterval.
Public propertyIntervalStartTime
Gets or sets the SceneManager time at which the video will begin playing when the Playback property is set to TimeInterval.
Public propertyIsPlaying
Public propertyLoop
Gets or sets whether the video will loop when it reaches its last frame when the Playback property is set to RealTime.
Public propertyPacketAcquirementYieldTime
Gets or sets the thread processing yield time for asynchronous streaming of video over common protocols like udp. Setting a high value may increase performance, but may cause frames or packets to drop, effecting visual quality. A lower value will ensure high priority processing of the stream, and thus less visual degradation, but may affect performance.
Public propertyPacketBufferLimit
Gets or sets a value indicating the buffering limit for packets when processing a video stream. Increasing this value will provide more buffering of the video stream when frame processing cannot keep up, but has memory implications and may result in the video falling behind, or eventual visual degradation, if the frame processing load is not lessened.
Public propertyPlayback
Gets or sets the VideoPlayback mode of the video.
Public propertyScan0
Gets the IntPtr associated with the first value of data in the raster.
(Inherited from Raster.)
Public propertyStartFrame
Gets or sets the start frame of the video. Changing the StartFrame property also changes the StartTime property to the time in the video that corresponds to the specified frame.
Public propertyStartTime
Gets or sets the start time of the video in seconds. Changing the StartTime property also changes the StartFrame property to the frame in the video that corresponds to the specified time.
Public propertyUpdateDelta
Gets or sets the update delta of the raster stream in seconds. The UpdateDelta defines the interval at which the Update(JulianDate, JulianDate) method will be called. The default UpdateDelta is 0, which will call the Update(JulianDate, JulianDate) method every time the SceneManager time changes. When animating, this means the Update(JulianDate, JulianDate) method would be called on every animation step.
(Inherited from RasterStream.)
Public propertyUri
Gets the Uri of the video.
Public propertyWidth
Gets the width of the raster in pixels.
(Inherited from Raster.)
Top
Methods
  NameDescription
Public methodApply
Applies a RasterFilter to the raster and returns a new raster with the results of the filtering. The current raster is not modified.
(Inherited from Raster.)
Public methodApplyInPlace
Applies a RasterFilter to the raster. The current raster will contain the results of the filtering.
(Inherited from Raster.)
Public methodCloseStreamAndResources
Closes the video stream and any associated resources.
Public methodCopyFromBitmap
Copies a .NET Bitmap with a supported PixelFormat into this raster. Format8bppIndexed, Format24bppRgb, Format32bppRgb, and Format32bppArgb bitmap data are supported.
(Inherited from Raster.)
Public methodCopyFromMemory(Byte, RasterAttributes)
Copies the given memory into the raster.
(Inherited from Raster.)
Public methodCopyFromMemory(IntPtr, RasterAttributes)
Copies the given memory into the raster.
(Inherited from Raster.)
Public methodCopyFromRaster
Copies the data associated with the given Raster into this raster.
(Inherited from Raster.)
Public methodDispose (Inherited from Raster.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodExtractBand(RasterBand)
Extracts the band of raster data associated with the given RasterBand.
(Inherited from Raster.)
Public methodExtractBand(RasterFormat)
Extracts the bands of raster data associated with the given RasterFormat.
(Inherited from Raster.)
Public methodFlip
Flips the raster along the given axis.
(Inherited from Raster.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodPause
Pauses the video when the Playback property is set to RealTime.
Public methodPlay
Begins playing the video when the Playback property is set to RealTime.
Public methodReinitializeWithStringUri
Reinitializes the video stream from a Uri, which can be a file, HTTP, RTP, UDP, or TCP source. See the Video Streams topic for a list of supported video formats and Uri usage.
Public methodReset
Seeks the video to its first frame and begins playing the video when the Playback property is set to RealTime.
Public methodRotate
Rotates the raster by the given angle.
(Inherited from Raster.)
Public methodStop
Stops the video when the Playback property is set to RealTime. Stopping the video will seek to the first frame and pause playback. Use the Play method to begin playing the video again.
Public methodToBitmap
Copies the raster to a .NET Bitmap if the RasterFormat is supported. RGB, RGBA, BGR, and BGRA raster data is supported.
(Inherited from Raster.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodUpdate
When overridden in a derived class, updates the raster data associated with the raster stream at the specified time. When the Update(JulianDate, JulianDate) method is called, the raster stream contains a raster data buffer defined by the current Attributes of the stream for updating the raster data. The time parameter provides the current and next SceneManager time. Return true if the raster data was updated, otherwise return false.
(Overrides RasterStreamUpdate(JulianDate, JulianDate).)
Top
See Also