コード例 #1
0
ファイル: plugin-main.c プロジェクト: LiquidityC/obs-studio
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;
}
コード例 #2
0
ファイル: plugin-main.c プロジェクト: Arkkis/obs-studio
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;
}
コード例 #3
0
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;
}
コード例 #4
0
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;
}
コード例 #5
0
ファイル: test-input.c プロジェクト: GamingAtheist/obs-studio
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;
}
コード例 #6
0
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;
}
コード例 #7
0
ファイル: image-source.c プロジェクト: NHDaly/obs-studio
bool obs_module_load(uint32_t libobs_version)
{
	obs_register_source(&image_source_info);

	UNUSED_PARAMETER(libobs_version);
	return true;
}
コード例 #8
0
ファイル: main.cpp プロジェクト: Waquo/obs-browser
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;
}
コード例 #9
0
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;
}
コード例 #10
0
ファイル: plugin-main.c プロジェクト: compumatrix/obs-studio
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;
}
コード例 #11
0
ファイル: text-freetype2.c プロジェクト: Demiguise/obs-studio
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;
}
コード例 #12
0
ファイル: main.cpp プロジェクト: Archomeda/obs-browser
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;
}
コード例 #13
0
ファイル: obs.c プロジェクト: kmdtukl/obs-studio
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;
}
コード例 #14
0
ファイル: obs-filters.c プロジェクト: AlexNe/obs-studio
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;
}
コード例 #15
0
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);
}
コード例 #16
0
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;
}
コード例 #17
0
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;
}
コード例 #18
0
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;
}
コード例 #19
0
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;
}
コード例 #20
0
ファイル: plugin-main.cpp プロジェクト: mrasmus/obs-studio
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;
}
コード例 #21
0
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);
}
コード例 #22
0
ファイル: linux-xshm.c プロジェクト: GamingAtheist/obs-studio
bool obs_module_load(uint32_t obs_version)
{
    UNUSED_PARAMETER(obs_version);
    obs_register_source(&xshm_input);
    return true;
}
コード例 #23
0
ファイル: main.c プロジェクト: sam8641/filters-for-OBS-Studio
bool obs_module_load(void)
{
	obs_register_source(&filter1_filter);
	return true;
}
コード例 #24
0
ファイル: obs-python-module.c プロジェクト: zenny/obs-python
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;
}
コード例 #25
0
ファイル: linux-v4l2.c プロジェクト: Dead133/obs-studio
bool obs_module_load(void)
{
	obs_register_source(&v4l2_input);
	return true;
}
コード例 #26
0
ファイル: plugin-main.c プロジェクト: OsirisNL/obs-studio
bool obs_module_load(void)
{
	obs_register_source(&syphon_info);
	return true;
}
コード例 #27
0
ファイル: obs-filters.c プロジェクト: OsirisNL/obs-studio
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;
}
コード例 #28
0
ファイル: obs-filters.c プロジェクト: dourgulf/biliobs
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;
}
コード例 #29
0
ファイル: image-source.c プロジェクト: Birdboat/obs-studio
bool obs_module_load(void)
{
	obs_register_source(&image_source_info);
	return true;
}