void MythDVDPlayer::CreateDecoder(char *testbuf, int testreadsize) { if (AvFormatDecoderDVD::CanHandle(testbuf, player_ctx->buffer->GetFilename(), testreadsize)) { SetDecoder(new AvFormatDecoderDVD(this, *player_ctx->playingInfo, playerFlags)); } }
void MythBDPlayer::CreateDecoder(char *testbuf, int testreadsize, bool allow_libmpeg2, bool no_accel) { if (AvFormatDecoderBD::CanHandle(testbuf, player_ctx->buffer->GetFilename(), testreadsize)) { SetDecoder(new AvFormatDecoderBD(this, *player_ctx->playingInfo, using_null_videoout, allow_libmpeg2, no_accel, player_ctx->GetSpecialDecode())); } }
CImage::~CImage() { // Освободить указатель на декодер SetDecoder(NULL); // И все, что осталось Close(); //_ASSERTE(mp_ImageContext == NULL); //_ASSERTE(mb_ImageOpened == FALSE); //_ASSERTE(pDraw == NULL); //if (mp_DecoderModule) // pData это ссылка на pPlugin, а они освобождаются в CPVDManager::UnloadPlugins2 // mp_DecoderModule = NULL; //SafeFree(mpb_DecoderFailed); mn_DecoderFailedCount = 0; }