Пример #1
0
eServiceDVD::~eServiceDVD()
{
	eDebug("[eServiceDVD] destruct");
	kill();
	saveCuesheet();
	ddvd_close(m_ddvdconfig);
	disableSubtitles();
}
Пример #2
0
eServiceDVD::~eServiceDVD()
{
	eDebug("SERVICEDVD destruct!");
	kill();
	saveCuesheet();
	ddvd_close(m_ddvdconfig);
	disableSubtitles(0);
}
RESULT eServiceMP3::stop()
{
	if (m_state == stIdle)
	{
		eDebug("[eServiceMP3::%s] m_state == stIdle", __func__);
		return -1;
	}

	if (m_state == stStopped)
		return -1;

	eDebug("[eServiceMP3::%s] stop %s", __func__, m_ref.path.c_str());

	if (player && player->playback && player->output)
	{
		player->playback->Command(player, PLAYBACK_STOP, NULL);
		player->output->Command(player, OUTPUT_CLOSE, NULL);
	}

	if (player && player->output)
	{
		player->output->Command(player,OUTPUT_DEL, (void*)"audio");
		player->output->Command(player,OUTPUT_DEL, (void*)"video");
		player->output->Command(player,OUTPUT_DEL, (void*)"subtitle");
	}

	if (player && player->playback)
		player->playback->Command(player,PLAYBACK_CLOSE, NULL);

	if (player)
		free(player);

	if (player != NULL)
		player = NULL;

	m_state = stStopped;
	saveCuesheet();
	m_nownext_timer->stop();
	return 0;
}