Esempio n. 1
0
static int tc_x11_stop(TCModuleInstance *self)
{
    TCX11PrivateData *priv = NULL;
    int ret = 0;

    TC_MODULE_SELF_CHECK(self, "stop");

    priv = self->userdata;

    ret = tc_x11source_close(&priv->src);
    if (ret != 0) {
        tc_log_error(MOD_NAME, "stop: failed to close X11 connection");
        return TC_ERROR;
    }

    ret = tc_timer_fini(&priv->timer);
    if (ret != 0) {
        tc_log_error(MOD_NAME, "stop: failed to stop timer");
        return TC_ERROR;
    }

    if (verbose >= TC_DEBUG) {
        tc_log_info(MOD_NAME, "expired frames count: %lu",
                              (unsigned long)priv->expired);
    }
    return TC_OK;
}
Esempio n. 2
0
void probe_x11(info_t *ipipe)
{
#ifdef HAVE_X11
    TCX11Source xsrc;
    int err = tc_x11source_open(&xsrc, ipipe->name,
                                TC_X11_MODE_PLAIN, TC_CODEC_RGB);
    /* performances and colorspaces doesn't really matters here */
    if (err == 0) {
        tc_x11source_probe(&xsrc, ipipe->probe_info);
        tc_x11source_close(&xsrc);
    }
#else /* HAVE_x11 */
    tc_log_error(__FILE__, "No support for X11 compiled in");
    ipipe->probe_info->codec = TC_CODEC_UNKNOWN;
    ipipe->probe_info->magic = TC_MAGIC_UNKNOWN;
#endif /* HAVE_X11 */
    return;
}