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

◆ get_frames_impl()

void MayaFlux::Kakshya::VideoStreamContainer::get_frames_impl ( void *  output,
size_t  count,
uint64_t  start_frame,
uint64_t  num_frames,
const std::type_info &  type 
) const
overrideprotectedvirtual

Implementation-specific method to retrieve multiple frames.

Implementations write up to count * frame_size elements into output, starting from start_frame. The type parameter indicates the expected element type; implementations may choose to support or reject it based on their native data type, but must not write past the output buffer regardless.

Parameters
outputPointer to caller-owned buffer for frame data
countNumber of frames to retrieve (output buffer size in frames)
start_frameFirst frame index to retrieve
num_framesNumber of frames to retrieve
typeType information for the expected element type (e.g. float, uint8_t)

Implements MayaFlux::Kakshya::NDDataContainer.

Definition at line 491 of file VideoStreamContainer.cpp.

497{
498 if (type != typeid(uint8_t)) {
499 error<std::runtime_error>(Journal::Component::Kakshya, Journal::Context::Runtime, std::source_location::current(), "VideoStreamContainer only supports uint8_t");
500 }
501
502 auto* out = static_cast<uint8_t*>(output);
503 get_frames_typed(std::span<uint8_t>(out, count), start_frame, num_frames);
504}
size_t count
std::shared_ptr< Core::VKImage > output
void get_frames_typed(std::span< uint8_t > output, uint64_t start_frame, uint64_t num_frames) const
@ Runtime
General runtime operations (default fallback)
@ Kakshya
Containers[Signalsource, Stream, File], Regions, DataProcessors.

References count, get_frames_typed(), MayaFlux::Journal::Kakshya, output, and MayaFlux::Journal::Runtime.

+ Here is the call graph for this function: