MayaFlux 1.0.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 337 of file IOManager.cpp.

338{
339 std::unique_lock lock(m_readers_mutex);
340 auto it = m_video_readers.find(reader_id);
341
342 if (it == m_video_readers.end()) {
344 "IOManager::release_video_reader: unknown id={}", reader_id);
345 return;
346 }
347
348 m_video_readers.erase(it);
349
351 "IOManager: released VideoFileReader id={}", reader_id);
352}
#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: