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

◆ store_metadata()

void FrameAccessProcessor::store_metadata ( const std::shared_ptr< SignalSourceContainer > &  container)
private

Cache dimension metadata and frame geometry from the container.

Parameters
containerThe SignalSourceContainer to query.

Definition at line 58 of file FrameAccessProcessor.cpp.

59{
60 m_structure = container->get_structure();
61
62 const auto& dims = m_structure.dimensions;
63
68
70
71 if (auto stream = std::dynamic_pointer_cast<StreamContainer>(container)) {
72 m_looping_enabled = stream->is_looping();
73 m_loop_region = stream->get_loop_region();
74
75 const auto& stream_positions = stream->get_read_position();
76 if (!stream_positions.empty()) {
77 m_current_frame = stream_positions[0];
78 }
79 }
80
81 if (auto vc = std::dynamic_pointer_cast<VideoStreamContainer>(container))
82 m_frame_rate = vc->get_frame_rate();
83}
double m_frame_rate
Cached video frame rate in frames per second.

References MayaFlux::Kakshya::ContainerDataStructure::dimensions, MayaFlux::Kakshya::ContainerDataStructure::get_channel_count(), MayaFlux::Kakshya::ContainerDataStructure::get_frame_count(), MayaFlux::Kakshya::ContainerDataStructure::get_height(), MayaFlux::Kakshya::ContainerDataStructure::get_width(), m_channels, m_current_frame, m_frame_byte_size, m_frame_rate, m_height, m_loop_region, m_looping_enabled, m_structure, m_total_frames, and m_width.

Referenced by on_attach().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: