MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ VideoStreamContainer()

MayaFlux::Kakshya::VideoStreamContainer::VideoStreamContainer ( uint32_t  width = 0,
uint32_t  height = 0,
Portal::Graphics::ImageFormat  format = Portal::Graphics::ImageFormat::RGBA8,
double  frame_rate = 0.0 
)

Construct a VideoStreamContainer with specified parameters.

Parameters
widthFrame width in pixels.
heightFrame height in pixels.
formatPixel format; determines channel count, bytes per pixel, the DataVariant element type, and whether the structure is VIDEO_COLOR or VIDEO_DEPTH.
frame_rateTemporal rate in frames per second.

Definition at line 23 of file VideoStreamContainer.cpp.

27 : m_width(width)
31 , m_format(format)
32 , m_frame_rate(frame_rate)
33{
34 if (!format_has_variant_storage(format)) {
35 error<std::invalid_argument>(
38 std::source_location::current(),
39 "VideoStreamContainer: format has no DataVariant element type "
40 "(packed depth). Use DEPTH16 or DEPTH32F for CPU-resident range data");
41 }
42
43 m_processing_chain = std::make_shared<DataProcessingChain>();
48
49 if (width > 0 && height > 0)
51}
uint32_t width
uint32_t height
std::shared_ptr< DataProcessingChain > m_processing_chain
static size_t get_bytes_per_pixel(ImageFormat format)
Get bytes per pixel for a format.
static uint32_t get_channel_count(ImageFormat format)
Get the number of color channels for a given format.
@ ContainerProcessing
Container operations (Kakshya - file/stream/region processing)
@ Kakshya
Containers[Signalsource, Stream, File], Regions, DataProcessors.
@ VIDEO_DEPTH
[frames, height, width, components] - streaming range data
@ VIDEO_COLOR
4D video (time + 2D + color)
bool is_depth_format(ImageFormat format)
bool format_has_variant_storage(ImageFormat format)
static ContainerDataStructure image_interleaved()
Create structure for interleaved image data.

References MayaFlux::Journal::ContainerProcessing, MayaFlux::Kakshya::format_has_variant_storage(), height, MayaFlux::Kakshya::ContainerDataStructure::image_interleaved(), MayaFlux::Kakshya::is_depth_format(), MayaFlux::Journal::Kakshya, m_processing_chain, m_structure, MayaFlux::Kakshya::ContainerDataStructure::modality, setup_dimensions(), MayaFlux::Kakshya::VIDEO_COLOR, MayaFlux::Kakshya::VIDEO_DEPTH, and width.

+ Here is the call graph for this function: