void CDVDVideoCodecAmlogic::Reset(void) { while (m_queue_depth) FrameQueuePop(); m_Codec->Reset(); m_mpeg2_sequence_pts = 0; }
void CDVDVideoCodecAmlogic::Dispose(void) { if (m_Codec) m_Codec->CloseDecoder(), m_Codec = NULL; if (m_videobuffer.iFlags) m_videobuffer.iFlags = 0; if (m_mpeg2_sequence) delete m_mpeg2_sequence, m_mpeg2_sequence = NULL; while (m_queue_depth) FrameQueuePop(); }
void CDVDVideoCodecAmlogic::Dispose(void) { if (m_Codec) m_Codec->CloseDecoder(), m_Codec = NULL; if (m_videobuffer.iFlags) m_videobuffer.iFlags = 0; if (m_mpeg2_sequence) delete m_mpeg2_sequence, m_mpeg2_sequence = NULL; while (m_queue_depth) FrameQueuePop(); // let thumbgen jobs resume. CJobManager::GetInstance().UnPause(kJobTypeMediaFlags); }
void CDVDVideoCodecAmlogic::Dispose(void) { { CSingleLock lock(m_secure); for (std::set<CDVDAmlogicInfo*>::iterator it = m_inflight.begin(); it != m_inflight.end(); ++it) (*it)->invalidate(); } if (m_Codec) m_Codec->CloseDecoder(), delete m_Codec, m_Codec = NULL; if (m_videobuffer.iFlags) m_videobuffer.iFlags = 0; if (m_mpeg2_sequence) delete m_mpeg2_sequence, m_mpeg2_sequence = NULL; if (m_bitstream) delete m_bitstream, m_bitstream = NULL; if (m_bitparser) delete m_bitparser, m_bitparser = NULL; while (m_queue_depth) FrameQueuePop(); }