Example #1
0
def script_properties():
    global props
    props = obs.obs_properties_create()
    d = obs.obs_properties_add_list(props, "device_ip", "Device IP:",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_properties_add_button(props, "find_nanoleafs",
                                  "Find Nanoleafs Devices", find_nanoleafs)
    a = obs.obs_properties_add_list(props, "auth_key", "Authorization Key:",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_properties_add_button(props, "authorize", "Get Authorization Key",
                                  authorize_device)
    s1 = obs.obs_properties_add_list(props, "scene_on", "Activate Scene:",
                                     obs.OBS_COMBO_TYPE_EDITABLE,
                                     obs.OBS_COMBO_FORMAT_STRING)
    s2 = obs.obs_properties_add_list(props, "scene_off", "Deactivate Scene:",
                                     obs.OBS_COMBO_TYPE_EDITABLE,
                                     obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_properties_add_bool(props, "use_last_light_scene",
                                "Use Last Scene")
    obs.obs_properties_add_button(props, "get_scenes", "Get Scenes",
                                  get_scenes)
    obs.obs_properties_add_bool(props, "use_last_light_scene",
                                "Use Last Scene")
    return props
def script_properties():
    props = obs.obs_properties_create()
    obs.obs_properties_add_int(props, "xMaxSize", "Max x size:", 0, 10000, 1)
    obs.obs_properties_add_int(props, "yMaxSize", "Max y size:", 0, 10000, 1)
    obs.obs_properties_add_int(props, "followRate", "Follow speed %:", 0, 100,
                               1)
    obs.obs_properties_add_int(props, "zoomRate", "Zoom speed %:", 0, 100, 1)
    obs.obs_properties_add_bool(props, "keepAspectRatio",
                                "Keep aspect ratio on select rectangle:")
    sourceList1 = obs.obs_properties_add_list(props, "sourceName1",
                                              "Screen source 1:",
                                              obs.OBS_COMBO_TYPE_EDITABLE,
                                              obs.OBS_COMBO_FORMAT_STRING)
    sourceList2 = obs.obs_properties_add_list(props, "sourceName2",
                                              "Screen source 2:",
                                              obs.OBS_COMBO_TYPE_EDITABLE,
                                              obs.OBS_COMBO_FORMAT_STRING)
    sources = obs.obs_enum_sources()
    obs.obs_property_list_add_string(sourceList1, "", "")
    obs.obs_property_list_add_string(sourceList2, "", "")
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_unversioned_id(source)
            if source_id == "monitor_capture":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(sourceList1, name, name)
                obs.obs_property_list_add_string(sourceList2, name, name)
        obs.source_list_release(sources)
    return props
Example #3
0
def script_properties():
    props = obs.obs_properties_create()
    
    rf = obs.obs_properties_add_text(props, "rf", "Recording folder", obs.OBS_TEXT_DEFAULT)
    obs.obs_property_set_long_description(rf, "The recording folder in your settings (must be the same). OBS doesn't allow the script to get it")
    
    wf = obs.obs_properties_add_text(props, "wf", "Watch folder", obs.OBS_TEXT_DEFAULT)
    obs.obs_property_set_long_description(wf, "The folder where bench outputs. Usually TF2_FOLDER/tf/results")

    # Auto-move completed demos
    cb_b = obs.obs_properties_add_bool(props, "cb", "Auto-move completed demos?")
    obs.obs_property_set_long_description(cb_b, "Enabling will move recorded .dem, .json, & .vdm files to the archive folder directory to avoid double recording")
    obs.obs_property_set_modified_callback(cb_b, cb_pressed)
    
    # Auto restart
    al_b = obs.obs_properties_add_bool(props, "al", "(LINUX ONLY) Auto relaunch TF2 demo recording on crash?")
    obs.obs_property_set_long_description(al_b, "Currently only supports GNU/Linux. Will attempt to auto restart demo recording if TF2 crashes on the next clip")
    obs.obs_property_set_modified_callback(al_b, al_pressed)
    
    df = obs.obs_properties_add_text(props, "df", "Demo folder", obs.OBS_TEXT_DEFAULT)
    obs.obs_property_set_long_description(df, "The folder containing your .dem files")
    visible_prop(props, "df", al or cb)

    af = obs.obs_properties_add_text(props, "af", "Archive folder", obs.OBS_TEXT_DEFAULT)
    obs.obs_property_set_long_description(af, "The folder to move completed .dem files")
    visible_prop(props, "af", cb)

    obs.obs_properties_add_button(props,"b1","Start", b_start)

    return props
Example #4
0
def script_properties():
	logger.debug('script_properties')
	props = obs.obs_properties_create()
	enabled = obs.obs_properties_add_bool(props, "enabled", "Enabled")
	obs.obs_property_set_long_description(enabled, "Whether to save the file when recording or not.")

	long_default_fps_description = "Use this option to achieve higher accuracy than every video frame."

	default_fps = obs.obs_properties_add_bool(props, "use_default_fps", "Use video's FPS to capture cursor")
	obs.obs_property_set_long_description(default_fps, long_default_fps_description)

	custom_fps = obs.obs_properties_add_int_slider(props, "custom_fps", "Custom FPS", 1, 200, 1)
	obs.obs_property_set_long_description(custom_fps, long_default_fps_description)

	install_modules = obs.obs_properties_add_button(
		props,
		"install_modules",
		"Install Python modules",
		install_modules_button_click
	)

	obs.obs_property_set_long_description(
		install_modules,
		"Installs pip, pyautogui and keyboard Python modules in your specified Python interpreter."
	)

	return props
Example #5
0
def script_properties():
    props = obs.obs_properties_create()
    p = obs.obs_properties_add_list(
        props,
        'source',
        'Text Source:',
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )

    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_unversioned_id(source)
            if source_id == 'text_gdiplus' or source_id == 'text_ft2_source':
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)

        obs.source_list_release(sources)

    obs.obs_properties_add_text(props, 'format', 'Text Format:', obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_button(props, 'start_button', 'Start Timer', start_pressed)
    obs.obs_properties_add_bool(props, 'auto_start', 'Start Automatically with Stream')

    return props
Example #6
0
def script_properties():
    #global props
    props = obs.obs_properties_create()

    text1 = obs.obs_properties_add_list(props, "source 1", "Text Source 1", obs.OBS_COMBO_TYPE_LIST, obs.OBS_COMBO_FORMAT_STRING)
    text2 = obs.obs_properties_add_list(props, "source 2", "Text Source 2", obs.OBS_COMBO_TYPE_LIST, obs.OBS_COMBO_FORMAT_STRING)

    background = obs.obs_properties_add_list(props, "background", "Background for Transition", obs.OBS_COMBO_TYPE_LIST, obs.OBS_COMBO_FORMAT_STRING)

    obs.obs_property_list_add_string(text1, "None", "")
    obs.obs_property_list_add_string(text2, "None", "")
    obs.obs_property_list_add_string(background, "None", "")

    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_id(source)
            if source_id == "text_gdiplus" or source_id == "text_ft2_source" or source_id == "text_gdiplus_v2":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(text1, name, name)
                obs.obs_property_list_add_string(text2, name, name)
            if source_id == "color_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(background, name, name)
    obs.source_list_release(sources)

    obs.obs_properties_add_float_slider(props, "transition_time", "Transition time (S)", 0.1, 5.0, 0.1)

    obs.obs_properties_add_text(props, "host", "Host ip", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "port", "Port", 1, 100000, 1)
    obs.obs_properties_add_text(props, "password", "Password", obs.OBS_TEXT_PASSWORD)
    obs.obs_properties_add_button(props, "connect_button", "Connect to server", connect_button_clicked)
    obs.obs_properties_add_bool(props, "autoconnect", "Automatically try to (re)connect to server")

    return props
def script_properties():
    """
    Create properties for script settings dialog
    """

    props = obs.obs_properties_create()

    for _k, _v in script_state.properties.items():

        if _v.type == script_state.OBS_COMBO:

            _p = obs.obs_properties_add_list(props, _k, _v.name, _v.type,
                                             obs.OBS_COMBO_FORMAT_STRING)

            for _item in _v.items:
                obs.obs_property_list_add_string(_p, _item, _item)

        elif _v.type == script_state.OBS_BOOLEAN:

            obs.obs_properties_add_bool(props, _k, _v.name)

        else:

            obs.obs_properties_add_text(props, _k, _v.name, _v.type)

    obs.obs_properties_add_button(props, 'reset', 'Reset',
                                  reset_button_clicked)

    script_state.obs_properties = props

    return props
Example #8
0
def script_properties():
    props = obs.obs_properties_create()

    # True/False checkbox (checked == True)
    obs.obs_properties_add_bool(props, "clock_24hr", "Use 24-hour clock")

    # Text field entry
    obs.obs_properties_add_text(props, "timezone_text", "Timezone (optional)",
                                obs.OBS_TEXT_DEFAULT)

    # Drop down menu of Text sources
    p = obs.obs_properties_add_list(props, "source_name", "Text Source",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)
    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_id(source)
            if source_id == "text_gdiplus" or source_id == "text_ft2_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)

        obs.source_list_release(sources)

    # Button in OBS script menu to interact with script
    obs.obs_properties_add_button(props, "button", "Refresh", refresh_pressed)

    return props
Example #9
0
def script_properties():
    # if Debug_Mode: print("Calling properties")

    props = obs.obs_properties_create()
    obs.obs_properties_add_bool(props, "enabled", "Enabled")

    obs.obs_properties_add_bool(props, "debug_mode", "Debug Mode")
    return props
Example #10
0
def script_properties():
    #global props 
    props = obs.obs_properties_create()
    obs.obs_properties_add_text(props, "host", "Host IP", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "port", "Host port", 1, 400000, 1)
    obs.obs_properties_add_bool(props, "logOscOutput", "Log OSC output")
    # obs.obs_properties_add_int(props, "serverPort", "Listen port", 1, 400000, 1)
    return props
def script_properties():
    global Debug_Mode
    if Debug_Mode: print("Calling properties")

    props = obs.obs_properties_create()
    obs.obs_properties_add_bool(props, "enabled", "Enabled")
    obs.obs_properties_add_path(props, "interval_path", "Interval Path Txt")

    return props
Example #12
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "config_path", "Path to config file",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_bool(props, "verbose", "Verbose logging")
    obs.obs_properties_add_button(props, "reload", "Reload config",
                                  reload_pressed)

    return props
Example #13
0
def script_properties():
    props = obs.obs_properties_create()
    p = obs.obs_properties_add_list(
        props,
        "source",
        "Text Source:",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )

    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_unversioned_id(source)
            if source_id == "text_gdiplus" or source_id == "text_ft2_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)

        obs.source_list_release(sources)

    obs.obs_properties_add_text(props, "format", "Text Format:",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_button(props, "reset_button", "Reset/Stop Timer",
                                  reset_pressed)
    obs.obs_properties_add_button(props, "start_button", "Start Timer",
                                  start_pressed)
    obs.obs_properties_add_bool(props, "auto_start",
                                "Start Automatically with Stream/Recording")
    obs.obs_properties_add_bool(props, "auto_stop",
                                "Stop Automatically with Stream/Recording")
    obs.obs_properties_add_bool(props, "recording", "Enable for Recording")
    obs.obs_properties_add_bool(props, "visible",
                                "Text Visible Only While Timer Running")

    return props
Example #14
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, datetime_property,
                                "Countdown Date/Time", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, text_propery, "Text to display",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, expired_text_property, "Expired text",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_button(props, "copypath", "Copy file path",
                                  copy_path)
    obs.obs_properties_add_bool(props, debug_value_property, "Debug")

    return props
Example #15
0
def script_properties():
    props = obs.obs_properties_create()
    devicesList = obs.obs_properties_add_list(props, "midiDevice",
                                              "MIDI Device",
                                              obs.OBS_COMBO_TYPE_LIST,
                                              obs.OBS_COMBO_FORMAT_STRING)
    midiIn = rtmidi.MidiIn()
    availablePorts = midiIn.get_ports()
    obs.obs_property_list_add_string(devicesList, "", "")
    for port in availablePorts:
        obs.obs_property_list_add_string(devicesList, port, port)

    transitionMidiType = obs.obs_properties_add_list(
        props, "transitionMidiType", "Transition midi type",
        obs.OBS_COMBO_TYPE_LIST, obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_property_list_add_string(transitionMidiType, "Control Change",
                                     "CC")
    obs.obs_property_list_add_string(transitionMidiType, "Note On", "Note")

    transitionAddress = obs.obs_properties_add_int(props,
                                                   "transitionMidiAddress",
                                                   "Transition Midi Address",
                                                   0, 127, 1)

    scenesMidiType = obs.obs_properties_add_list(props, "scenesMidiType",
                                                 "Scene set midi type",
                                                 obs.OBS_COMBO_TYPE_LIST,
                                                 obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_property_list_add_string(scenesMidiType, "Control Change", "CC")
    obs.obs_property_list_add_string(scenesMidiType, "Note On", "Note")

    scenesAddress = obs.obs_properties_add_int(props, "scenesMidiAddress",
                                               "First scene midi address", 0,
                                               127, 1)

    transitionsMidiType = obs.obs_properties_add_list(
        props, "transitionsMidiType", "Transition set midi type",
        obs.OBS_COMBO_TYPE_LIST, obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_property_list_add_string(transitionsMidiType, "Control Change",
                                     "CC")
    obs.obs_property_list_add_string(transitionsMidiType, "Note On", "Note")

    transitionsAddress = obs.obs_properties_add_int(
        props, "transitionsMidiAddress", "First transition Midi Address", 0,
        127, 1)

    obs.obs_properties_add_bool(props, "logMidiInput", "Log MIDI input")

    return props
def script_properties():
    """
    Called to define user properties associated with the script. These
    properties are used to define how to show settings properties to a user.
    """
    props = obs.obs_properties_create()

    mh = obs.obs_properties_add_bool(props, "match_history",
                                     "Show Match History")

    p = obs.obs_properties_add_list(props, "source", "Text Source",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)

    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_id(source)
            if source_id == "text_gdiplus" or source_id == "text_ft2_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)

        obs.source_list_release(sources)

    obs.obs_properties_add_int(props, "blink_rate", "Blink Rate(ms)", 1000,
                               10000, 1)
    obs.obs_properties_add_button(props, "button", "Reset Match History",
                                  refresh_pressed)

    return props
Example #17
0
def script_qualifier_settings(props, rtgg_obs: RacetimeObs):
    lang = gettext.translation("racetime-obs",
                               localedir=os.environ['LOCALEDIR'])
    _ = lang.gettext

    p = obs.obs_properties_add_bool(
        props, "use_qualifier",
        _("Display race results as tournament qualifier?"))
    obs.obs_property_set_modified_callback(p, qualifier_toggled)
    qualifier_group = obs.obs_properties_create()
    obs.obs_properties_add_group(props, "qualifier_group", _("Qualifier Mode"),
                                 obs.OBS_GROUP_NORMAL, qualifier_group)
    obs.obs_property_set_visible(
        obs.obs_properties_get(props, "qualifier_group"),
        rtgg_obs.qualifier.enabled)
    p = obs.obs_properties_add_int_slider(qualifier_group, "qualifier_cutoff",
                                          _("Use Top X as par time, where X="),
                                          3, 10, 1)
    p = obs.obs_properties_add_list(qualifier_group, "qualifier_par_source",
                                    _("Qualifier Par Time Source"),
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)
    fill_source_list(p)
    p = obs.obs_properties_add_list(qualifier_group, "qualifier_score_source",
                                    _("Qualifier Score Source"),
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)
    fill_source_list(p)
def script_properties():
    global props
    props = obs.obs_properties_create()
    checkbox = obs.obs_properties_add_bool(props, "use_user_config",
                                           "Use Saved Config")
    obs.obs_property_set_modified_callback(checkbox, is_user_config)
    del (checkbox)
    obs.obs_properties_add_path(
        props, "user_config", "Saved Config Path", obs.OBS_PATH_FILE, "*.json",
        os.path.join(os.path.dirname(__file__), 'config'))
    obs.obs_properties_add_editable_list(props, "score_names",
                                         "Scores To Track",
                                         obs.OBS_EDITABLE_LIST_TYPE_STRINGS,
                                         "", "")
    obs.obs_properties_add_int(props, "score_count", "Count per Score", 0, 10,
                               1)
    obs.obs_properties_add_font(props, "font", "Scores Font")
    obs.obs_properties_add_color(props, "fgcolor", "Text Color")
    obs.obs_properties_add_color(props, "bgcolor", "Background Color")
    obs.obs_properties_add_button(props, "deploy",
                                  "Deploy Browser Source Server",
                                  deploy_browser_source_server)
    obs.obs_properties_add_button(props, "remove",
                                  "Remove Browser Source Server",
                                  remove_browser_source_server)
    obslog(obs.LOG_INFO, "properties loaded")

    #TODO checkbox to add to create browser source
    #TODO browser source name
    return props
def script_properties():
    props = obs.obs_properties_create()

    # Create list of audio sources and add them to properties list
    audio_sources = list_audio_sources()

    source_list = obs.obs_properties_add_list(props, "source", "Audio Source",
                                              obs.OBS_COMBO_TYPE_LIST,
                                              obs.OBS_COMBO_FORMAT_STRING)

    for name in audio_sources:
        obs.obs_property_list_add_string(source_list, name, name)

    # Create list of available serial ports
    port_list = obs.obs_properties_add_list(props, "port", "Serial Port",
                                            obs.OBS_COMBO_TYPE_LIST,
                                            obs.OBS_COMBO_FORMAT_STRING)

    obs.obs_property_list_add_string(
        port_list, "(Disconnect)",
        "Disconnected")  # include blank option at top
    com_ports = serial.tools.list_ports.comports()
    for port in com_ports:
        obs.obs_property_list_add_string(port_list, port.device, port.device)

    # Create a list of selectable baud rates
    baudrates = [
        115200, 57600, 38400, 31250, 28800, 19200, 14400, 9600, 4800, 2400,
        1200, 600, 300
    ]
    baud_list = obs.obs_properties_add_list(props, "baud", "Baudrate",
                                            obs.OBS_COMBO_TYPE_LIST,
                                            obs.OBS_COMBO_FORMAT_INT)

    for rate in baudrates:
        obs.obs_property_list_add_int(baud_list, str(rate), rate)

    # Add testing buttons and debug toggle
    obs.obs_properties_add_button(props, "test_mute", "Test Mute Message",
                                  test_mute)
    obs.obs_properties_add_button(props, "test_unmute", "Test Unmute Message",
                                  test_unmute)

    obs.obs_properties_add_bool(props, "debug", "Print Debug Messages")

    return props
Example #20
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "starturl", "Start URL",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "stopurl", "Stop URL",
                                obs.OBS_TEXT_DEFAULT)

    obs.obs_properties_add_bool(props, "enablerec", "Enable for Recording")
    obs.obs_properties_add_bool(props, "enablestream", "Enable for Streaming")

    obs.obs_properties_add_button(props, "startbutton", "Test Start URL",
                                  test_start_url)
    obs.obs_properties_add_button(props, "stopbutton", "Test Stop URL",
                                  test_stop_url)

    obs.obs_properties_add_int(props, "interval", "Check Interval", 1, 60, 1)

    return props
Example #21
0
def script_properties():
    global debug_mode
    if debug_mode: print("OBSBuffer Loaded properties.")

    props = obs.obs_properties_create()
    obs.obs_properties_add_bool(props, "enabled", "Enabled")
    obs.obs_properties_add_bool(props, "debug_mode", "Debug Mode")
    obs.obs_properties_add_int(props, "check_frequency", "Check frequency",
                               150, 10000, 100)
    obs.obs_properties_add_text(props, "source_title", "Text Title",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "source_presenter", "Text Presenter",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "source_time", "Text Time",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "json_filename", "Text Title",
                                obs.OBS_TEXT_DEFAULT)

    return props
Example #22
0
def script_properties():
    props = obs.obs_properties_create()

    s = obs.obs_properties_add_list(props, "scene", "Scene",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)
    p = obs.obs_properties_add_list(props, "source", "Text Source",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)

    obs.obs_properties_add_bool(props, "reset_time",
                                "Reset time on scene switch")

    obs.obs_properties_add_int(props, "stop_stream_time",
                               "Stop stream/record after (seconds):", 10, 7200,
                               1)
    obs.obs_properties_add_bool(props, "stop_stream", "Enabled")
    sources = obs.obs_enum_sources()

    if sources is not None:

        for source in sources:
            name = obs.obs_source_get_name(source)
            source_id = obs.obs_source_get_unversioned_id(source)
            if source_id == "text_gdiplus" or source_id == "text_ft2_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)

        obs.source_list_release(sources)

    scenes = obs.obs_frontend_get_scenes()
    if scenes is not None:
        for scene in scenes:
            name = obs.obs_source_get_name(scene)
            obs.obs_property_list_add_string(s, name, name)

        obs.source_list_release(scenes)

    obs.obs_properties_add_button(props, "reset_button", "Reset Stopwatch",
                                  reset_stopwatch_pressed)
    obs.obs_properties_add_button(props, "button", "Refresh", refresh_pressed)
    return props
Example #23
0
def script_media_player_settings(props, rtgg_obs: RacetimeObs,
                                 media_player_toggled):
    lang = gettext.translation("racetime-obs",
                               localedir=os.environ['LOCALEDIR'])
    _ = lang.gettext

    p = obs.obs_properties_add_bool(props, "use_media_player",
                                    _("Enable sounds?"))
    obs.obs_property_set_modified_callback(p, media_player_toggled)
    media_player_group = obs.obs_properties_create()
    obs.obs_properties_add_group(props, "media_player_group",
                                 _("Media Player Mode"), obs.OBS_GROUP_NORMAL,
                                 media_player_group)
    obs.obs_property_set_visible(
        obs.obs_properties_get(props, "media_player_group"),
        rtgg_obs.media_player.enabled)
    monitoring_list = obs.obs_properties_add_list(media_player_group,
                                                  "monitoring_type",
                                                  _("Monitoring Type"),
                                                  obs.OBS_COMBO_TYPE_LIST,
                                                  obs.OBS_COMBO_FORMAT_INT)
    obs.obs_property_list_add_int(monitoring_list, _("Listen Only"),
                                  obs.OBS_MONITORING_TYPE_MONITOR_ONLY)
    obs.obs_property_list_add_int(monitoring_list, _("Stream Only"),
                                  obs.OBS_MONITORING_TYPE_NONE)
    obs.obs_property_list_add_int(monitoring_list, _("Listen and Stream"),
                                  obs.OBS_MONITORING_TYPE_MONITOR_AND_OUTPUT)
    p = obs.obs_properties_add_bool(media_player_group, "use_chat_pings",
                                    _("Chat Pings"))
    obs.obs_property_set_long_description(
        p,
        _("Enable this and set choose a sound file to play when a bot posts"
          " or when someone @s you in racetime.gg chat"))
    p = obs.obs_properties_add_path(media_player_group, "chat_ping_sound",
                                    _("Chat media file"), obs.OBS_PATH_FILE,
                                    "Audio Files (*.mp3 *.aac *.wav *.wma)",
                                    None)
    obs.obs_properties_add_path(media_player_group, "first_place_sound",
                                _("First Place Sound"), obs.OBS_PATH_FILE,
                                "Audio Files (*.mp3 *.aac *.wav *.wma)", None)
    obs.obs_property_set_long_description(
        p, _("Sound file to play when you finish first."))
Example #24
0
def script_properties():
    props = obs.obs_properties_create()

    # Create list of audio sources and add them to properties list
    audio_sources = list_audio_sources()

    source_list = obs.obs_properties_add_list(
        props,
        "source",
        "Audio Source",
        obs.OBS_COMBO_TYPE_LIST,
        obs.OBS_COMBO_FORMAT_STRING,
    )

    for name in audio_sources:
        obs.obs_property_list_add_string(source_list, name, name)

    obs.obs_properties_add_bool(props, "debug", "Print Debug Messages")

    return props
Example #25
0
def script_properties():  # ui
    props = obs.obs_properties_create()
    p = obs.obs_properties_add_list(
        props,
        "source",
        "Text Source",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )
    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_unversioned_id(source)
            if source_id == "text_gdiplus" or source_id == "text_ft2_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)

        obs.source_list_release(sources)
    obs.obs_properties_add_bool(props, "_obs_bool", "Words")
    obs.obs_properties_add_button(props, "button", "Refresh", refresh_pressed)
    return props
Example #26
0
def script_properties():
    global debug_mode
    if debug_mode: print("Loaded properties for Corvinus Now Playing")

    props = obspython.obs_properties_create()
    obspython.obs_properties_add_bool(props, "enabled", "Enabled")
    obspython.obs_properties_add_text(props, "source_name",
                                      "Text (GDI+) Target's Name",
                                      obspython.OBS_TEXT_DEFAULT)
    obspython.obs_properties_add_int(props, "latency", "Check Frequency (ms)",
                                     150, 10000, 100)
    obspython.obs_properties_add_text(props, "display_text", "Display Text",
                                      obspython.OBS_TEXT_DEFAULT)
    obspython.obs_properties_add_text(props, "alt_display_text",
                                      "Fallback Display Text",
                                      obspython.OBS_TEXT_DEFAULT)
    obspython.obs_properties_add_int(props, "output_buffer",
                                     "Display Text Buffer Space", 1, 10, 1)
    obspython.obs_properties_add_bool(props, "debug_mode", "Debug Mode")

    return props
Example #27
0
def script_properties():
    debug("[CS] Loaded properties.")

    props = obs.obs_properties_create()
    obs.obs_properties_add_bool(props, "enabled", "Enabled")
    obs.obs_properties_add_bool(props, "debug_mode", "Debug Mode")
    obs.obs_properties_add_int(props, "check_frequency", "Check frequency",
                               150, 10000, 100)
    obs.obs_properties_add_text(props, "display_text", "Display text",
                                obs.OBS_TEXT_DEFAULT)
    for i in filter(lambda x: not x.startswith('_'), calcingfunc.keys()):
        obs.obs_properties_add_bool(props,
                                    globals()[i].id,
                                    globals()[i].display_name)

    p = obs.obs_properties_add_list(props, "source_name", "Text source",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)

    sources = obs.obs_enum_sources()
    if sources:
        for source in sources:
            source_id = obs.obs_source_get_unversioned_id(source)
            if source_id in ("text_gdiplus", "text_ft2_source"):
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)
    obs.source_list_release(sources)

    return props
Example #28
0
def script_properties():
    global Debug_Mode
    if Debug_Mode: print("Calling properties")

    now = datetime(2018, 1, 1, 0, 0)
    props = obs.obs_properties_create()
    obs.obs_properties_add_bool(props, "enabled", "Enabled")
    obs.obs_properties_add_int(props, "duration",
                               "Recording Duration (Minutes)", 1, 120, 1)
    st = obs.obs_properties_add_list(props, "start_time", "Record Start Time",
                                     obs.OBS_COMBO_TYPE_LIST,
                                     obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_property_list_add_string(st, "None", "None")
    et = obs.obs_properties_add_list(props, "end_time", "Record End Time",
                                     obs.OBS_COMBO_TYPE_LIST,
                                     obs.OBS_COMBO_FORMAT_STRING)
    dy = obs.obs_properties_add_list(props, "avoid_days",
                                     "Avoid Recording Day(s)",
                                     obs.OBS_COMBO_TYPE_EDITABLE,
                                     obs.OBS_COMBO_FORMAT_STRING)
    for x in range(96):
        obs.obs_property_list_add_string(
            st, str(datetime.time(now).strftime("%I:%M %p")),
            str(datetime.time(now)))
        obs.obs_property_list_add_string(
            et, str(datetime.time(now).strftime("%I:%M %p")),
            str(datetime.time(now)))
        now += timedelta(minutes=15)

    obs.obs_properties_add_bool(props, "enabled_stream", "Include Streaming")
    obs.obs_properties_add_bool(props, "debug_mode", "Debug Mode")
    return props
Example #29
0
def script_properties():
    global Debug_Mode
    if Debug_Mode: print("Calling properties")

    props = obs.obs_properties_create()
    obs.obs_properties_add_int(props, "x_coord", "Ширина", 100, 1920, 1)
    obs.obs_properties_add_int(props, "y_coord", "Высота", 100, 1080, 1)
    obs.obs_properties_add_int(props, "width_count",
                               "Количество по горизонтали", 1, 1000, 1)
    obs.obs_properties_add_int(props, "height_count",
                               "Количество по вертикали", 1, 1000, 1)
    obs.obs_properties_add_button(props, "start",
                                  "Построить сетку по ширине/высоте",
                                  startClick)
    obs.obs_properties_add_button(props, "start_count",
                                  "Построить сетку по количеству",
                                  startCountClick)
    obs.obs_properties_add_button(props, "delete", "Удалить сетку",
                                  deleteGridClick)
    obs.obs_properties_add_bool(props, "debug_mode", "Режим отладки")

    return props
def script_properties():  # ui
    props = obs.obs_properties_create()
    number = obs.obs_properties_add_int(props, "refresh_rate",
                                        "Refresh rate (ms)", 15, 300, 5)
    p = obs.obs_properties_add_list(
        props,
        "source",
        "Select cursor source",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )
    sources = obs.obs_enum_sources()
    if sources is not None:
        for source in sources:
            source_id = obs.obs_source_get_unversioned_id(source)
            name = obs.obs_source_get_name(source)
            obs.obs_property_list_add_string(p, name, name)
        obs.source_list_release(sources)
    obs.obs_properties_add_button(props, "button", "Stop", stop_pressed)
    obs.obs_properties_add_button(props, "button2", "Start", start_pressed)
    obs.obs_properties_add_bool(props, "bool_yn", "Update crop")
    return props