void frame_ready()
	{
		Glib::Mutex::Lock lock(mutex);
		if(alive_flag)
			alive_flag=warm_target->put_surface(surface, callback);
#ifdef SINGLE_THREADED
		if (!single_threaded())
#endif
			cond_frame_queue_empty.signal();
		ready_next=true;
	}