bool obs_module_load(void) { obs_register_source(&coreaudio_input_capture_info); obs_register_source(&coreaudio_output_capture_info); obs_register_source(&display_capture_info); return true; }
bool obs_module_load(uint32_t libobs_ver) { obs_register_source(&monitor_capture_info); obs_register_source(&window_capture_info); UNUSED_PARAMETER(libobs_ver); return true; }
bool obs_module_load(void) { obs_register_source(&cut_transition); obs_register_source(&fade_transition); obs_register_source(&swipe_transition); obs_register_source(&slide_transition); obs_register_source(&fade_to_color_transition); return true; }
bool obs_module_load(uint32_t libobs_version) { obs_register_source(&coreaudio_input_capture_info); obs_register_source(&coreaudio_output_capture_info); obs_register_source(&display_capture_info); UNUSED_PARAMETER(libobs_version); return true; }
bool obs_module_load(uint32_t libobs_version) { obs_register_source(&test_random); obs_register_source(&test_sinewave); obs_register_source(&test_filter); #ifdef __APPLE__ obs_register_source(&osx_desktop); #endif UNUSED_PARAMETER(libobs_version); return true; }
bool obs_module_load(void) { if (!XCompcapMain::init()) return false; obs_source_info sinfo; memset(&sinfo, 0, sizeof(obs_source_info)); sinfo.id = "xcomposite_input"; sinfo.output_flags = OBS_SOURCE_VIDEO; sinfo.get_name = xcompcap_getname; sinfo.create = xcompcap_create; sinfo.destroy = xcompcap_destroy; sinfo.get_properties = xcompcap_props; sinfo.get_defaults = xcompcap_defaults; sinfo.update = xcompcap_update; sinfo.video_tick = xcompcap_video_tick; sinfo.video_render = xcompcap_video_render; sinfo.get_width = xcompcap_getwidth; sinfo.get_height = xcompcap_getheight; obs_register_source(&sinfo); blog(LOG_INFO, "Xcomposite capture plugin loaded"); return true; }
bool obs_module_load(uint32_t libobs_version) { obs_register_source(&image_source_info); UNUSED_PARAMETER(libobs_version); return true; }
bool obs_module_load(void) { browser_source_info = create_browser_source_info(); BrowserManager::Instance()->SetModulePath( obs_get_module_binary_path(obs_current_module())); BrowserManager::Instance()->Startup(); obs_register_source(&browser_source_info); return true; }
bool obs_module_load(void) { da_init(active_log_contexts); da_init(cached_log_contexts); //av_log_set_callback(ffmpeg_log_callback); obs_register_source(&ffmpeg_source); obs_register_output(&ffmpeg_output); obs_register_output(&ffmpeg_muxer); obs_register_encoder(&aac_encoder_info); return true; }
bool obs_module_load(void) { struct win_version_info ver; bool win8_or_above = false; char *config_dir; config_dir = obs_module_config_path(NULL); if (config_dir) { os_mkdirs(config_dir); bfree(config_dir); } get_win_ver(&ver); win8_or_above = ver.major > 6 || (ver.major == 6 && ver.minor >= 2); obs_enter_graphics(); if (win8_or_above && gs_get_device_type() == GS_DEVICE_DIRECT3D_11) obs_register_source(&duplicator_capture_info); else obs_register_source(&monitor_capture_info); obs_leave_graphics(); obs_register_source(&window_capture_info); if (/*cached_versions_match() &&*/ load_cached_graphics_offsets(IS32BIT)) { load_cached_graphics_offsets(!IS32BIT); obs_register_source(&game_capture_info); } else if (load_graphics_offsets(IS32BIT)) { load_graphics_offsets(!IS32BIT); obs_register_source(&game_capture_info); } return true; }
bool obs_module_load() { FT_Init_FreeType(&ft2_lib); if (ft2_lib == NULL) { blog(LOG_WARNING, "FT2-text: Failed to initialize FT2."); return false; } load_os_font_list(); obs_register_source(&freetype2_source_info); return true; }
bool obs_module_load(void) { blog(LOG_INFO, "[browser_source: 'Version: %s']", OBS_BROWSER_VERSION); browser_source_info = create_browser_source_info(); BrowserManager::Instance()->SetModulePath( obs_get_module_binary_path(obs_current_module())); BrowserManager::Instance()->Startup(); obs_register_source(&browser_source_info); obs_frontend_add_event_callback(handle_obs_frontend_event, nullptr); return true; }
static bool obs_init(const char *locale) { obs = bzalloc(sizeof(struct obs_core)); log_system_info(); if (!obs_init_data()) return false; if (!obs_init_handlers()) return false; obs->locale = bstrdup(locale); obs_register_source(&scene_info); return true; }
bool obs_module_load(void) { obs_register_source(&mask_filter); obs_register_source(&crop_filter); obs_register_source(&color_filter); obs_register_source(&color_key_filter); obs_register_source(&chroma_key_filter); obs_register_source(&async_delay_filter); return true; }
void obstudio_infowriter_setup() { obstudio_infowriter_source.id = infowriter_idname; obstudio_infowriter_source.type = OBS_SOURCE_TYPE_INPUT; obstudio_infowriter_source.get_name = obstudio_infowriter_get_name; obstudio_infowriter_source.create = obstudio_infowriter_create; obstudio_infowriter_source.destroy = obstudio_infowriter_destroy; obstudio_infowriter_source.get_width = obstudio_infowriter_get_width; obstudio_infowriter_source.get_height = obstudio_infowriter_get_height; obstudio_infowriter_source.get_properties = obstudio_infowriter_properties; obstudio_infowriter_source.update = obstudio_infowriter_update; obstudio_infowriter_source.load = obstudio_infowriter_update; obstudio_infowriter_source.get_defaults = obstudio_infowriter_get_defaults; obs_register_source(&obstudio_infowriter_source); }
bool obs_module_load(void) { if (!load_libvlc_module()) { blog(LOG_INFO, "Couldn't find VLC installation, VLC video " "source disabled"); return true; } if (!load_vlc_funcs()) return true; blog(LOG_INFO, "VLC found, VLC video source enabled"); obs_register_source(&vlc_source_info); return true; }
bool obs_module_load(void) { destiny_detail_info.id = "destiny_detail_source"; destiny_detail_info.type = OBS_SOURCE_TYPE_INPUT; destiny_detail_info.output_flags = OBS_SOURCE_VIDEO; destiny_detail_info.get_name = destiny_detail_get_name; destiny_detail_info.create = destiny_detail_create; destiny_detail_info.destroy = destiny_detail_destroy; destiny_detail_info.update = destiny_detail_update; destiny_detail_info.get_defaults = destiny_detail_get_defaults; destiny_detail_info.show = destiny_detail_show; destiny_detail_info.hide = destiny_detail_hide; destiny_detail_info.get_width = destiny_detail_get_width; destiny_detail_info.get_height = destiny_detail_get_height; destiny_detail_info.video_render = destiny_detail_render; destiny_detail_info.get_properties = destiny_detail_properties; obs_register_source(&destiny_detail_info); return true; }
bool obs_module_load(void) { struct obs_source_info info = {}; info.id = "qtwebkit-source"; info.type = OBS_SOURCE_TYPE_INPUT; info.output_flags = OBS_SOURCE_VIDEO; info.get_name = qtwebkit_get_name; info.create = qtwebkit_create; info.destroy = qtwebkit_destroy; info.update = qtwebkit_update; info.get_width = qtwebkit_get_width; info.get_height = qtwebkit_get_height; info.get_properties = qtwebkit_get_properties; info.get_defaults = qtwebkit_get_defaults; info.video_tick = qtwebkit_tick; info.video_render = qtwebkit_render; obs_register_source(&info); return true; }
bool obs_module_load() { char *config_dir = obs_module_config_path(NULL); if (config_dir) { os_mkdirs(config_dir); bfree(config_dir); } FT_Init_FreeType(&ft2_lib); if (ft2_lib == NULL) { blog(LOG_WARNING, "FT2-text: Failed to initialize FT2."); return false; } if (!load_cached_os_font_list()) load_os_font_list(); obs_register_source(&freetype2_source_info); return true; }
bool obs_module_load(void) { deviceEnum = new DeckLinkDeviceDiscovery(); if (!deviceEnum->Init()) return true; struct obs_source_info info = {}; info.id = "decklink-input"; info.type = OBS_SOURCE_TYPE_INPUT; info.output_flags = OBS_SOURCE_ASYNC_VIDEO | OBS_SOURCE_AUDIO | OBS_SOURCE_DO_NOT_DUPLICATE; info.create = decklink_create; info.destroy = decklink_destroy; info.get_defaults = decklink_get_defaults; info.get_name = decklink_get_name; info.get_properties = decklink_get_properties; info.update = decklink_update; obs_register_source(&info); return true; }
extern "C" void xcomposite_load(void) { if (!XCompcapMain::init()) return; obs_source_info sinfo; memset(&sinfo, 0, sizeof(obs_source_info)); sinfo.id = "xcomposite_input"; sinfo.output_flags = OBS_SOURCE_VIDEO; sinfo.get_name = xcompcap_getname; sinfo.create = xcompcap_create; sinfo.destroy = xcompcap_destroy; sinfo.get_properties = xcompcap_props; sinfo.get_defaults = xcompcap_defaults; sinfo.update = xcompcap_update; sinfo.video_tick = xcompcap_video_tick; sinfo.video_render = xcompcap_video_render; sinfo.get_width = xcompcap_getwidth; sinfo.get_height = xcompcap_getheight; obs_register_source(&sinfo); }
bool obs_module_load(uint32_t obs_version) { UNUSED_PARAMETER(obs_version); obs_register_source(&xshm_input); return true; }
bool obs_module_load(void) { obs_register_source(&filter1_filter); return true; }
bool obs_module_load() { blog(LOG_INFO, "obs_module_load"); //Need to init python here //load the swig Py_Initialize(); PyEval_InitThreads(); /*Must set arguments for guis to work*/ wchar_t* argv[] = { L"", NULL }; int argc = sizeof(argv) / sizeof(wchar_t*) - 1; //SWIG_init(); PySys_SetArgv(argc, argv); //need to add to directory PyRun_SimpleString("import os"); PyRun_SimpleString("import sys"); PyRun_SimpleString("os.environ['PYTHONUNBUFFERED'] = '1'"); PyRun_SimpleString("sys.stdout = open('/dev/shm/stdOut.txt','w',1)"); PyRun_SimpleString("sys.stderr = open('/dev/shm/stdErr.txt','w',1)"); PyRun_SimpleString("print(sys.version)"); /*Load a file*/ PyObject* pName, *pModule, *pFunc,*argList; pName = PyUnicode_FromString("source"); char script[] = "/scripts"; const char *data_path = obs_get_module_data_path(obs_current_module()); char *scripts_path = bzalloc(strlen(data_path)+strlen(script)); strcpy(scripts_path,data_path); strcat(scripts_path,script); //Add the path to env add_to_python_path(scripts_path); bfree(scripts_path); //PyImport_AppendInittab("_libobs", PyInit_libobs); /*Import libobs*/ //Py_XDECREF(main_module); //Add our custom stuff to libobs //import the script pModule = PyImport_Import(pName); pyHasError(); //get the function by name if(pModule != NULL) { PyObject *ns = PyModule_GetDict(pModule); Py_INCREF(ns); PyObject *py_libobs = PyImport_ImportModuleEx("obspython",ns,ns,NULL); Py_INCREF(py_libobs); extend_swig_libobs(py_libobs); PyModule_AddObject(pModule,"obspython",py_libobs); pFunc = PyObject_GetAttr(pModule, PyUnicode_FromString("register")); if(pFunc != NULL) { argList = Py_BuildValue("()"); PyObject_CallObject(pFunc,argList); pyHasError(); Py_XDECREF(pFunc); Py_XDECREF(argList); } Py_XDECREF(pModule); } Py_XDECREF(pName); //Not implemented yet? //obs_register_modal_ui(&myui); //Register this base class here obs_register_source(&python_source_info); //Release the thread gill PyThreadState* pts = PyGILState_GetThisThreadState(); PyEval_ReleaseThread(pts); return true; }
bool obs_module_load(void) { obs_register_source(&v4l2_input); return true; }
bool obs_module_load(void) { obs_register_source(&syphon_info); return true; }
bool obs_module_load(void) { obs_register_source(&mask_filter); obs_register_source(&crop_filter); obs_register_source(&gain_filter); obs_register_source(&color_filter); obs_register_source(&scale_filter); obs_register_source(&scroll_filter); obs_register_source(&gpu_delay_filter); obs_register_source(&color_key_filter); obs_register_source(&color_grade_filter); obs_register_source(&sharpness_filter); obs_register_source(&chroma_key_filter); obs_register_source(&async_delay_filter); #if SPEEXDSP_ENABLED obs_register_source(&noise_suppress_filter); #endif obs_register_source(&invert_polarity_filter); obs_register_source(&noise_gate_filter); obs_register_source(&compressor_filter); obs_register_source(&limiter_filter); return true; }
bool obs_module_load(void) { obs_register_source(&mask_filter); obs_register_source(&crop_filter); obs_register_source(&gain_filter); obs_register_source(&forcemono_filter); obs_register_source(&color_filter); obs_register_source(&scroll_filter); obs_register_source(&color_key_filter); obs_register_source(&sharpness_filter); obs_register_source(&chroma_key_filter); obs_register_source(&async_delay_filter); obs_register_source(&noise_gate_filter); obs_register_source(&beauty_filter); return true; }
bool obs_module_load(void) { obs_register_source(&image_source_info); return true; }