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

◆ release_video_reader()

void MayaFlux::IO::IOManager::release_video_reader ( uint64_t  reader_id)

Release ownership of the reader identified by reader_id.

When the last shared_ptr to the reader is released its decode thread is joined. Safe to call from a container state-change callback. No-op with a warning if reader_id is unknown.

Parameters
reader_idId returned by register_video_reader().

Definition at line 171 of file IOManager.cpp.

172{
173 std::unique_lock lock(m_readers_mutex);
174 auto it = m_video_readers.find(reader_id);
175
176 if (it == m_video_readers.end()) {
178 "IOManager::release_video_reader: unknown id={}", reader_id);
179 return;
180 }
181
182 m_video_readers.erase(it);
183
185 "IOManager: released VideoFileReader id={}", reader_id);
186}
#define MF_WARN(comp, ctx,...)
#define MF_DEBUG(comp, ctx,...)
std::shared_mutex m_readers_mutex
std::unordered_map< uint64_t, std::shared_ptr< VideoFileReader > > m_video_readers
@ FileIO
Filesystem I/O operations.
@ Core
Core engine, backend, subsystems.

References MayaFlux::Journal::Core, MayaFlux::Journal::FileIO, m_readers_mutex, m_video_readers, MF_DEBUG, and MF_WARN.

Referenced by load_video().

+ Here is the caller graph for this function: