15 if (
auto e = std::shared_ptr<MythDRMEncoder>(
new MythDRMEncoder(FD, Id)); e.get() && e->m_id)
34 for (
auto i = 0; i < resources->count_encoders; ++i)
35 if (
auto encoder =
Create(FD, resources->encoders[i]); encoder.get())
36 result.emplace_back(encoder);
43 if (
auto * encoder = drmModeGetEncoder(FD, Id); encoder)
45 m_id = encoder->encoder_id;
46 m_type = encoder->encoder_type;
49 drmModeFreeEncoder(encoder);
static DRMEncs GetEncoders(int FD)
MythDRMEncoder(int FD, uint32_t Id)
static DRMEnc Create(int FD, uint32_t Id)
static DRMEnc GetEncoder(const DRMEncs &Encoders, uint32_t Id)
A simple wrapper around a drmModeResPtr that ensures proper cleanup.
static pid_list_t::iterator find(const PIDInfoMap &map, pid_list_t &list, pid_list_t::iterator begin, pid_list_t::iterator end, bool find_open)
std::vector< uint32_t > Encoders
std::vector< DRMEnc > DRMEncs
std::shared_ptr< class MythDRMEncoder > DRMEnc