예제 #1
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(
        props, "username", "Showdown Username", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(
        props, "interval", "Update interval (seconds)", 5, 3600, 1)

    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_gdiplus_v2" 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", "Format (OU, UU etc.)", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(
        props, "str_format", "Text format (see website for details)", obs.OBS_TEXT_DEFAULT)
    return props
예제 #2
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_path(props, "filetowatch", "File to Watch",
                                obs.OBS_PATH_FILE, '*.txt', "")
    obs.obs_properties_add_path(props, "images_path", "Images Folder",
                                obs.OBS_PATH_DIRECTORY, '', "")
    obs.obs_properties_add_int(props, "interval", "Update Interval (seconds)",
                               1, 3600, 1)

    p = obs.obs_properties_add_list(props, "source", "Image 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 == "Image":
            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", "Refresh", refresh_pressed)
    return props
예제 #3
0
def script_properties():

    props = obs.obs_properties_create()

    #campo de directorio
    obs.obs_properties_add_path(props, "file", "Archivo de frases",
                                obs.OBS_PATH_FILE, "*.txt", "")

    #campo de lectura d enumeros enteros
    obs.obs_properties_add_int(props, "interval",
                               "Intervalo de \nactualizacion (segundos)", 5,
                               3600, 1)

    #una combo list que meustra todas las fuentes de tipo texto
    p = obs.obs_properties_add_list(props, "source", "Fuente de texto",
                                    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)
    #un boton que lanza la funcion update_text cuando se presiona
    obs.obs_properties_add_button(props, "button", "Refrescar",
                                  refresh_pressed)
    return props
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
예제 #5
0
def script_properties():
    properties = obs.obs_properties_create()

    obs.obs_properties_add_text(properties, "api_base",
                                "Biliomi's Api base url", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(properties, "username", "Username",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(properties, "password", "Password",
                                obs.OBS_TEXT_PASSWORD)
    obs.obs_properties_add_int(properties, "update_interval",
                               "Update Interval (seconds)", 30, 3600, 1)

    follower_source = obs.obs_properties_add_list(properties,
                                                  "latest_follower_source",
                                                  "Latest Follower Source",
                                                  obs.OBS_COMBO_TYPE_EDITABLE,
                                                  obs.OBS_COMBO_FORMAT_STRING)

    obs.obs_properties_add_text(properties, "prefix", "Prefix",
                                obs.OBS_TEXT_DEFAULT)

    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(follower_source, name, name)

        obs.source_list_release(sources)

    return properties
예제 #6
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
예제 #7
0
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
예제 #8
0
파일: live2d.py 프로젝트: guansss/toybox
def script_properties():
    # print('script_properties')

    props = obs.obs_properties_create()

    model_p = obs.obs_properties_add_path(props, 'live2d_model',
                                          'Live2D Model', obs.OBS_PATH_FILE,
                                          'Live2D Model(*.json)', '')

    level_p = obs.obs_properties_add_int(props, 'root_level',
                                         'Server Root Level', 1,
                                         total_levels(LIVE2D_FULL_PATH), 1)

    port_p = obs.obs_properties_add_int(props, 'port', 'Server Port', 1024,
                                        65535, 1)
    ws_port_p = obs.obs_properties_add_int(props, 'ws_port', 'Websocket Port',
                                           1024, 65535, 1)

    info_p = obs.obs_properties_add_text(props, 'info', 'Info',
                                         obs.OBS_TEXT_MULTILINE)
    obs.obs_property_set_enabled(info_p, False)

    obs.obs_properties_add_button(props, 'start', 'Apply Settings',
                                  apply_settings)

    obs.obs_property_set_modified_callback(model_p, prop_modified)
    obs.obs_property_set_modified_callback(level_p, prop_modified)
    obs.obs_property_set_modified_callback(port_p, prop_modified)
    obs.obs_property_set_modified_callback(ws_port_p, prop_modified)

    return props
def script_properties():
    """Adds elements to script configuration panel"""

    props = obs.obs_properties_create()

    serv_l = obs.obs_properties_add_list(props, "world", "Server",
                                         obs.OBS_COMBO_TYPE_LIST,
                                         obs.OBS_COMBO_FORMAT_STRING)
    obs.obs_property_list_add_string(serv_l, "Connery",
                                     "Connery")  # Server list
    obs.obs_property_list_add_string(serv_l, "Miller", "Miller")
    obs.obs_property_list_add_string(serv_l, "Cobalt", "Cobalt")
    obs.obs_property_list_add_string(serv_l, "Emerald", "Emerald")
    obs.obs_property_list_add_string(serv_l, "Jaeger", "Jaeger")
    obs.obs_property_list_add_string(serv_l, "Apex", "Apex")
    obs.obs_property_list_add_string(serv_l, "Soltech", "Soltech")

    obs.obs_properties_add_int(props, "target_zone",
                               "Desolation Instance Zone ID", 0, 999999, 1)

    obs.obs_properties_add_button(props, "button2", "Start Tracker",
                                  start_tracker)  # Buttons
    obs.obs_properties_add_button(props, "button3", "Stop Tracker",
                                  stop_tracker)
    obs.obs_properties_add_button(props, "button", "Reset Relics",
                                  reset_relics)

    return props
예제 #10
0
def script_properties():
    props = obs.obs_properties_create()
    obs.obs_properties_add_text(props, "_text", "text", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "_int", "int", 1, 100, 1)

    obs.obs_properties_add_button(props, "save", "Save", save)
    return props
def script_properties():
    print('script_properties')
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "stream_url", "Stream URL",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "interval",
                               "Update Interval (milliseconds)", 1, 500, 1)

    p = obs.obs_properties_add_list(props, "source", "Media 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 == "ffmpeg_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(p, name, name)
            elif source_id == "vlc_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", "Refresh", refresh_pressed)
    return props
예제 #12
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "host", "MPD Host Address",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "port", "Port", 0, 65535, 1)
    obs.obs_properties_add_text(props, "password", "Password",
                                obs.OBS_TEXT_PASSWORD)
    obs.obs_properties_add_int(props, "interval",
                               "Update Interval (milliseconds)", 1, 30000, 1)

    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_button(props, "refresh_button", "Refresh",
                                  refresh_pressed)

    return props
예제 #13
0
def script_properties():
    if debug_mode:
        print("[CS] 配置已加载。")

    props = obs.obs_properties_create()
    obs.obs_properties_add_bool(props, "enabled", "启用该脚本")
    obs.obs_properties_add_bool(props, "debug_mode", "调试模式")
    obs.obs_properties_add_int(
        props, "check_frequency", "检查频率(毫秒)", 150, 10000, 100)
    obs.obs_properties_add_text(
        props, "display_text", "显示文本", obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_bool(props, "spotify", "Spotify")
    obs.obs_properties_add_bool(props, "vlc", "VLC")
    obs.obs_properties_add_bool(props, "yt_firefox", "Youtube for Firefox")
    obs.obs_properties_add_bool(props, "yt_chrome", "Youtube for Chrome")
    obs.obs_properties_add_bool(props, "foobar2000", "Foobar2000")
    obs.obs_properties_add_bool(props, "necloud", "网易云音乐")
    obs.obs_properties_add_bool(props, 'aimp', 'AIMP')

    p = obs.obs_properties_add_list(
        props, "source_name", "使用文本框",
        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
예제 #14
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
예제 #15
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
예제 #16
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():
    props = obs.obs_properties_create()
    obs.obs_properties_add_text(props, "data folder", "Data folder",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "save period", "Save period (minutes)",
                               1, 20, 1)

    return props
예제 #18
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "scripted_text", "Scripted text",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "refresh_rate", "Refresh rate(ms)", 15,
                               5 * 1000, 1)
    obs.obs_properties_add_int(props, "duration", "Duration shown(ms)",
                               1 * 1000, 3600 * 1000, 1)

    p = obs.obs_properties_add_list(
        props,
        "source",
        "Text Source",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )
    sp = obs.obs_properties_add_list(
        props,
        "playsound",
        "Media Source",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )
    tp = obs.obs_properties_add_list(
        props,
        "text_effect",
        "Text effect",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )

    for i in scripted_text_driver.txt_efcts.keys():
        obs.obs_property_list_add_string(tp, i, i)

    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)
            if source_id == "ffmpeg_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(sp, name, name)

        obs.source_list_release(sources)

    obs.obs_properties_add_button(
        props, "button1", "PREVIEW",
        lambda *props: scripted_text_driver.hotkey_hook())

    obs.obs_properties_add_button(
        props, "button2", "RESET",
        lambda *props: scripted_text_driver.reset_duration())

    return props
예제 #19
0
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()

    obs.obs_properties_add_int(props, "cycle_rate", "Cycle Rate(ms)",
                               1000, 1000000, 1000)
    return props
예제 #20
0
def script_properties():
    "https://obsproject.com/docs/reference-properties.html"
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "scripted_text", "Scripted text",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "refresh_rate", "Refresh rate(ms)", 50,
                               5000, 1)
    obs.obs_properties_add_int(props, "duration", "Duration shown(ms)", 5000,
                               15000, 1)

    p = obs.obs_properties_add_list(
        props,
        "source",
        "Text Source",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )
    sp = obs.obs_properties_add_list(
        props,
        "playsound",
        "Media Source",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )
    tp = obs.obs_properties_add_list(
        props,
        "text_effect",
        "Text effect",
        obs.OBS_COMBO_TYPE_EDITABLE,
        obs.OBS_COMBO_FORMAT_STRING,
    )

    for i in ["rainbow", "static", "random_chars", "blink"]:
        obs.obs_property_list_add_string(tp, i, i)

    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)
            if source_id == "ffmpeg_source":
                name = obs.obs_source_get_name(source)
                obs.obs_property_list_add_string(sp, name, name)
                print(name)

        obs.source_list_release(sources)

    obs.obs_properties_add_button(props, "button", "Refresh and preview(5s)",
                                  refresh)
    return props
예제 #21
0
def finish_media_trigger_settings(props, index: int):
    """
    Settings for a media trigger based on what place the entrant finishes
    """
    lang = gettext.translation("racetime-obs",
                               localedir=os.environ['LOCALEDIR'])
    _ = lang.gettext

    obs.obs_properties_add_int(props, f"trigger_finish_place_#{index}",
                               _("Finish Place <="), 1, 10, 1)
    obs.obs_properties_add_int(props, f"trigger_finish_entrants_#{index}",
                               _("Num. Entrants >="), 2, 255, 1)
예제 #22
0
def script_properties():
    """
    Define the configuration properties for the script.
    """
    props = obs.obs_properties_create()

    p = obs.obs_properties_add_list(props, "executables", "Game executable",
                                    obs.OBS_COMBO_TYPE_EDITABLE,
                                    obs.OBS_COMBO_FORMAT_STRING)

    obs.obs_properties_add_int(props, "interval",
                               "Game scan interval (seconds)", 1, 60, 1)

    return props
예제 #23
0
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
예제 #24
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
예제 #25
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_text(props, "sourcename", "Media Source Name",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "audiofolder", "Audio Folder",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "testfile", "Test File",
                                obs.OBS_TEXT_DEFAULT)

    obs.obs_properties_add_button(props, "testbutton", "Test Playback",
                                  testplay)

    obs.obs_properties_add_int(props, "portnum", "Port Number", 1000, 10000, 1)

    return props
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)
    number = obs.obs_properties_add_int(props, "_int", "Number", 1, 100, 1)
    text_value = obs.obs_properties_add_text(props, "_text",
                                             "Additional input:",
                                             obs.OBS_TEXT_DEFAULT)
    obs.obs_property_set_visible(text_value, False)
    obs.obs_property_set_modified_callback(number, callback)
    return props
예제 #27
0
    def addConfig(cls, props):
        addMidiTypeProp(props, cls.Keys.cmdType, "Transition to Scene midi type")
        addNoteProp(props, cls.Keys.transitionFirst, "First Transition to Scene Midi Note/Address")
        transition_prop = obs.obs_properties_add_int(props, cls.Keys.duration, "Base transition time (MS) -- multiplied by Midi Value/100", 0, 5000, 1)
        obs.obs_property_set_long_description(transition_prop, """This value will be multiplied by the MIDI value/100.
e.g. if the MIDI note comes with a value/velocity of 100, then the base transition time will be used.
If the note comes with a value/velocity of 50, then then the transition will take half the base transition time.
If the note comes with a value/velocity of 0, then then there will be no transition time.""")
예제 #28
0
def script_properties():
    global monitor_left_list, monitor_right_list
    props = obs.obs_properties_create()
    active = obs.obs_properties_add_bool(props, "is_active", "Active")
    refresh_lists = obs.obs_properties_add_button(
            props,
            "refresh_lists",
            "Refresh scene lists",
            refresh_lists_callback
            )

    monitor_left_list = obs.obs_properties_add_list(
            props,
            "scene_for_left_mon",
            "Scene for left monitor",
            obs.OBS_COMBO_TYPE_EDITABLE,
            obs.OBS_COMBO_FORMAT_STRING
            )

    monitor_right_list = obs.obs_properties_add_list(
            props,
            "scene_for_right_mon",
            "Scene for right monitor",
            obs.OBS_COMBO_TYPE_EDITABLE,
            obs.OBS_COMBO_FORMAT_STRING
            )

    check_freq_prop = obs.obs_properties_add_int(
            props,
            "check_freq",
            "Check for active monitor every (ms)",
            2,
            30000,
            50
            )

    left_width_prop = obs.obs_properties_add_int(
            props,
            "left_width",
            "Left monitor width (px)",
            144,
            3840,
            10
            )

    return props
예제 #29
0
def script_properties():
    props = obs.obs_properties_create()

    obs.obs_properties_add_int(props, "interval", "Update Interval (seconds)", 1, 3600, 1)

    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_button(props, "button", "Refresh", refresh_pressed)
    return props
def script_properties():
    """
    Makes this script's settings configurable via OBS's Scripts GUI.
    """
    props = obs.obs_properties_create()
    obs.obs_properties_add_text(props, "mqtt_host", "MQTT server hostname",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_text(props, "mqtt_channel", "MQTT channel",
                                obs.OBS_TEXT_DEFAULT)
    obs.obs_properties_add_int(props, "mqtt_port", "MQTT TCP/IP port",
                               MQTT_PORT, 65535, 1)
    obs.obs_properties_add_int(props, "interval", "Update Interval (seconds)",
                               1, 3600, 1)
    obs.obs_properties_add_editable_list(props, "tally_sources",
                                         "Tally Sources",
                                         obs.OBS_EDITABLE_LIST_TYPE_STRINGS,
                                         "", "")
    return props
예제 #31
0
def script_properties():
	props = obs.obs_properties_create()

	obs.obs_properties_add_text(props, "url", "URL", obs.OBS_TEXT_DEFAULT)
	obs.obs_properties_add_int(props, "interval", "Update Interval (seconds)", 5, 3600, 1)

	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_button(props, "button", "Refresh", refresh_pressed)
	return props