Skip to content

Commit 23a1543

Browse files
authored
Merge branch 'master' into feature/get-stream-screenshot
2 parents 3fd1334 + c8cf2d9 commit 23a1543

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+2047
-544
lines changed

.github/workflows/crowdin_upload.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
if: github.repository_owner == 'obsproject'
1212
runs-on: ubuntu-22.04
1313
steps:
14-
- uses: actions/checkout@v3
14+
- uses: actions/checkout@v4
1515
with:
1616
fetch-depth: 100
1717
- name: Upload US English Language Files 🇺🇸

.github/workflows/generate_docs.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
IS_CI: "true"
1919
steps:
2020
- name: 'Checkout'
21-
uses: actions/checkout@v2
21+
uses: actions/checkout@v4
2222
with:
2323
path: ${{ github.workspace }}/obs-websocket
2424
- name: 'Generate docs'

.github/workflows/lint.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
if: contains(github.event.head_commit.message, '[skip ci]') != true
1616
steps:
1717
- name: Checkout repository
18-
uses: actions/checkout@v2
18+
uses: actions/checkout@v4
1919
- name: Generate docs
2020
run: cd docs && ./build_docs.sh
2121
- name: Run markdownlint-cli

CMakeLists.txt

+41-31
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,19 @@ cmake_minimum_required(VERSION 3.16...3.25)
22

33
legacy_check()
44

5-
set(obs-websocket_VERSION 5.3.4)
5+
set(obs-websocket_VERSION 5.4.2)
66
set(OBS_WEBSOCKET_RPC_VERSION 1)
77

8+
include(cmake/obs-websocket-api.cmake)
9+
810
option(ENABLE_WEBSOCKET "Enable building OBS with websocket plugin" ON)
911
if(NOT ENABLE_WEBSOCKET)
1012
target_disable(obs-websocket)
1113
return()
1214
endif()
1315

1416
# Find Qt
15-
find_qt(COMPONENTS Core Widgets Svg Network)
17+
find_package(Qt6 REQUIRED Core Widgets Svg Network)
1618

1719
# Find nlohmann JSON
1820
find_package(nlohmann_json 3 REQUIRED)
@@ -31,51 +33,52 @@ find_package(Asio 1.12.1 REQUIRED)
3133
add_library(obs-websocket MODULE)
3234
add_library(OBS::websocket ALIAS obs-websocket)
3335

34-
target_sources(obs-websocket PRIVATE)
35-
3636
target_sources(
3737
obs-websocket
38-
PRIVATE src/obs-websocket.cpp
39-
src/obs-websocket.h
38+
PRIVATE # cmake-format: sortable
4039
src/Config.cpp
4140
src/Config.h
42-
lib/obs-websocket-api.h
4341
src/forms/ConnectInfo.cpp
4442
src/forms/ConnectInfo.h
4543
src/forms/resources.qrc
4644
src/forms/SettingsDialog.cpp
4745
src/forms/SettingsDialog.h
46+
src/obs-websocket.cpp
47+
src/obs-websocket.h
4848
src/WebSocketApi.cpp
4949
src/WebSocketApi.h)
5050

5151
target_sources(
5252
obs-websocket
53-
PRIVATE src/websocketserver/WebSocketServer.cpp
54-
src/websocketserver/WebSocketServer_Protocol.cpp
55-
src/websocketserver/WebSocketServer.h
53+
PRIVATE # cmake-format: sortable
5654
src/websocketserver/rpc/WebSocketSession.h
5755
src/websocketserver/types/WebSocketCloseCode.h
58-
src/websocketserver/types/WebSocketOpCode.h)
56+
src/websocketserver/types/WebSocketOpCode.h
57+
src/websocketserver/WebSocketServer.cpp
58+
src/websocketserver/WebSocketServer.h
59+
src/websocketserver/WebSocketServer_Protocol.cpp)
5960

6061
target_sources(
6162
obs-websocket
62-
PRIVATE src/eventhandler/EventHandler.cpp
63+
PRIVATE # cmake-format: sortable
64+
src/eventhandler/EventHandler.cpp
6365
src/eventhandler/EventHandler.h
6466
src/eventhandler/EventHandler_Config.cpp
65-
src/eventhandler/EventHandler_General.cpp
6667
src/eventhandler/EventHandler_Filters.cpp
68+
src/eventhandler/EventHandler_General.cpp
6769
src/eventhandler/EventHandler_Inputs.cpp
6870
src/eventhandler/EventHandler_MediaInputs.cpp
6971
src/eventhandler/EventHandler_Outputs.cpp
70-
src/eventhandler/EventHandler_Scenes.cpp
7172
src/eventhandler/EventHandler_SceneItems.cpp
73+
src/eventhandler/EventHandler_Scenes.cpp
7274
src/eventhandler/EventHandler_Transitions.cpp
7375
src/eventhandler/EventHandler_Ui.cpp
7476
src/eventhandler/types/EventSubscription.h)
7577

7678
target_sources(
7779
obs-websocket
78-
PRIVATE src/requesthandler/RequestBatchHandler.cpp
80+
PRIVATE # cmake-format: sortable
81+
src/requesthandler/RequestBatchHandler.cpp
7982
src/requesthandler/RequestBatchHandler.h
8083
src/requesthandler/RequestHandler.cpp
8184
src/requesthandler/RequestHandler.h
@@ -85,10 +88,10 @@ target_sources(
8588
src/requesthandler/RequestHandler_Inputs.cpp
8689
src/requesthandler/RequestHandler_MediaInputs.cpp
8790
src/requesthandler/RequestHandler_Outputs.cpp
88-
src/requesthandler/RequestHandler_Sources.cpp
8991
src/requesthandler/RequestHandler_Record.cpp
90-
src/requesthandler/RequestHandler_Scenes.cpp
9192
src/requesthandler/RequestHandler_SceneItems.cpp
93+
src/requesthandler/RequestHandler_Scenes.cpp
94+
src/requesthandler/RequestHandler_Sources.cpp
9295
src/requesthandler/RequestHandler_Stream.cpp
9396
src/requesthandler/RequestHandler_Transitions.cpp
9497
src/requesthandler/RequestHandler_Ui.cpp
@@ -98,12 +101,13 @@ target_sources(
98101
src/requesthandler/rpc/RequestBatchRequest.h
99102
src/requesthandler/rpc/RequestResult.cpp
100103
src/requesthandler/rpc/RequestResult.h
101-
src/requesthandler/types/RequestStatus.h
102-
src/requesthandler/types/RequestBatchExecutionType.h)
104+
src/requesthandler/types/RequestBatchExecutionType.h
105+
src/requesthandler/types/RequestStatus.h)
103106

104107
target_sources(
105108
obs-websocket
106-
PRIVATE src/utils/Compat.cpp
109+
PRIVATE # cmake-format: sortable
110+
src/utils/Compat.cpp
107111
src/utils/Compat.h
108112
src/utils/Crypto.cpp
109113
src/utils/Crypto.h
@@ -115,8 +119,8 @@ target_sources(
115119
src/utils/Obs_ArrayHelper.cpp
116120
src/utils/Obs_NumberHelper.cpp
117121
src/utils/Obs_ObjectHelper.cpp
118-
src/utils/Obs_StringHelper.cpp
119122
src/utils/Obs_SearchHelper.cpp
123+
src/utils/Obs_StringHelper.cpp
120124
src/utils/Obs_VolumeMeter.cpp
121125
src/utils/Obs_VolumeMeter.h
122126
src/utils/Obs_VolumeMeter_Helpers.h
@@ -133,19 +137,25 @@ target_compile_definitions(
133137

134138
target_compile_options(
135139
obs-websocket
136-
PRIVATE
137-
$<$<PLATFORM_ID:Windows>:/wd4267>
138-
$<$<PLATFORM_ID:Windows>:/wd4996>
139-
$<$<PLATFORM_ID:Darwin,Linux,FreeBSD>:-Wall>
140-
$<$<COMPILE_LANG_AND_ID:CXX,GNU,AppleClang,Clang>:-Wno-error=float-conversion;-Wno-error=shadow>
141-
$<$<COMPILE_LANG_AND_ID:CXX,GNU>:-Wno-error=format-overflow;-Wno-error=int-conversion;-Wno-error=comment>
142-
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-error=null-pointer-subtraction;-Wno-error=deprecated-declarations;-Wno-error=implicit-int-conversion;-Wno-error=shorten-64-to-32;-Wno-comma;-Wno-quoted-include-in-framework-header>
143-
)
140+
PRIVATE $<$<PLATFORM_ID:Windows>:/wd4267>
141+
$<$<COMPILE_LANG_AND_ID:CXX,GNU,AppleClang,Clang>:-Wall>
142+
$<$<COMPILE_LANG_AND_ID:CXX,GNU,AppleClang,Clang>:-Wno-error=float-conversion>
143+
$<$<COMPILE_LANG_AND_ID:CXX,GNU,AppleClang,Clang>:-Wno-error=shadow>
144+
$<$<COMPILE_LANG_AND_ID:CXX,GNU>:-Wno-error=format-overflow>
145+
$<$<COMPILE_LANG_AND_ID:CXX,GNU>:-Wno-error=int-conversion>
146+
$<$<COMPILE_LANG_AND_ID:CXX,GNU>:-Wno-error=comment>
147+
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-error=null-pointer-subtraction>
148+
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-error=deprecated-declarations>
149+
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-error=implicit-int-conversion>
150+
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-error=shorten-64-to-32>
151+
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-comma>
152+
$<$<COMPILE_LANG_AND_ID:CXX,AppleClang,Clang>:-Wno-quoted-include-in-framework-header>)
144153

145154
target_link_libraries(
146155
obs-websocket
147156
PRIVATE OBS::libobs
148157
OBS::frontend-api
158+
OBS::websocket-api
149159
Qt::Core
150160
Qt::Widgets
151161
Qt::Svg
@@ -155,6 +165,8 @@ target_link_libraries(
155165
Asio::Asio
156166
qrcodegencpp::qrcodegencpp)
157167

168+
target_link_options(obs-websocket PRIVATE $<$<PLATFORM_ID:Windows>:/IGNORE:4099>)
169+
158170
set_target_properties_obs(
159171
obs-websocket
160172
PROPERTIES FOLDER plugins
@@ -168,6 +180,4 @@ if(OS_WINDOWS)
168180
TARGET obs-websocket
169181
APPEND
170182
PROPERTY AUTORCC_OPTIONS --format-version 1)
171-
172-
target_link_options(obs-websocket PRIVATE /IGNORE:4099)
173183
endif()

README.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ It is **highly recommended** to keep obs-websocket protected with a password aga
4141
- [Aitum](https://aitum.tv/)
4242
- [Kruiz Control](https://github.com/Kruiser8/Kruiz-Control)
4343
- [Bitfocus Companion Module](https://bitfocus.io/companion/)
44+
- [MacroGraph](https://github.com/Brendonovich/macrograph) - hosted client [here](https://macrograph.brendonovich.dev/)
45+
- [MATRIC](https://matricapp.com/)
4446

4547
### Client libraries (for developers)
4648

@@ -49,7 +51,7 @@ Here's a list of available language APIs for obs-websocket:
4951
- Python 3.7+ (Asyncio): [simpleobsws](https://github.com/IRLToolkit/simpleobsws/tree/master) by IRLToolkit
5052
- Python 3.10+ (Non-Asyncio): [obsws-python](https://pypi.org/project/obsws-python) by aatikturk and onyx-and-iris
5153
- Rust: [obws](https://github.com/dnaka91/obws) by dnaka91
52-
- Godot 3.4.x: [obs-websocket-gd](https://github.com/you-win/obs-websocket-gd) by you-win
54+
- Godot 4.0.x: [obs-websocket-gd](https://github.com/you-win/obs-websocket-gd) by you-win
5355
- Javascript (Node and web): [obs-websocket-js](https://github.com/obs-websocket-community-projects/obs-websocket-js) by OBS Websocket Community
5456
- C (uses obs-websocket-js): [v8-libwebsocket-obs-websocket](https://github.com/dgatwood/v8-libwebsocket-obs-websocket)
5557
- Go: [goobs](https://github.com/andreykaipov/goobs) by andreykaipov

cmake/legacy.cmake

+17-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,23 @@
1-
project(obs-websocket VERSION 5.3.4)
1+
project(obs-websocket VERSION 5.4.2)
22
set(OBS_WEBSOCKET_RPC_VERSION 1)
33

44
option(ENABLE_WEBSOCKET "Enable building OBS with websocket plugin" ON)
55

6+
add_library(obs-websocket-api INTERFACE)
7+
add_library(OBS::websocket-api ALIAS obs-websocket-api)
8+
9+
target_sources(obs-websocket-api INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/lib/obs-websocket-api.h>
10+
$<INSTALL_INTERFACE:${OBS_INCLUDE_DESTINATION}/obs-websocket-api.h>)
11+
12+
target_link_libraries(obs-websocket-api INTERFACE OBS::libobs)
13+
14+
target_include_directories(obs-websocket-api INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/lib>
15+
$<INSTALL_INTERFACE:${OBS_INCLUDE_DESTINATION}>)
16+
17+
set_target_properties(obs-websocket-api PROPERTIES PUBLIC_HEADER lib/obs-websocket-api.h)
18+
19+
export_target(obs-websocket-api)
20+
621
if(NOT ENABLE_WEBSOCKET OR NOT ENABLE_UI)
722
message(STATUS "OBS: DISABLED obs-websocket")
823
return()
@@ -56,7 +71,6 @@ target_sources(
5671
src/obs-websocket.h
5772
src/Config.cpp
5873
src/Config.h
59-
lib/obs-websocket-api.h
6074
src/forms/SettingsDialog.cpp
6175
src/forms/SettingsDialog.h
6276
src/forms/ConnectInfo.cpp
@@ -133,6 +147,7 @@ target_link_libraries(
133147
obs-websocket
134148
PRIVATE OBS::libobs
135149
OBS::frontend-api
150+
OBS::websocket-api
136151
Qt::Core
137152
Qt::Widgets
138153
Qt::Svg

cmake/obs-websocket-api.cmake

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
add_library(obs-websocket-api INTERFACE)
2+
add_library(OBS::websocket-api ALIAS obs-websocket-api)
3+
4+
target_sources(obs-websocket-api INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/lib/obs-websocket-api.h>
5+
$<INSTALL_INTERFACE:${OBS_INCLUDE_DESTINATION}/obs-websocket-api.h>)
6+
7+
target_link_libraries(obs-websocket-api INTERFACE OBS::libobs)
8+
9+
target_include_directories(obs-websocket-api INTERFACE "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/lib>"
10+
"$<INSTALL_INTERFACE:${OBS_INCLUDE_DESTINATION}>")
11+
12+
set_target_properties(obs-websocket-api PROPERTIES PREFIX "" PUBLIC_HEADER lib/obs-websocket-api.h)
13+
14+
target_export(obs-websocket-api)
+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
@PACKAGE_INIT@
2+
3+
include(CMakeFindDependencyMacro)
4+
5+
find_dependency(libobs REQUIRED)
6+
7+
include("${CMAKE_CURRENT_LIST_DIR}/@[email protected]")
8+
check_required_components("@PROJECT_NAME@")

data/locale/be-BY.ini

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
OBSWebSocket.Plugin.Description="Аддаленае кіраванне OBS Studio праз WebSocket"
2+
OBSWebSocket.Settings.DialogTitle="Налады сервера WebSocket"
3+
OBSWebSocket.Settings.PluginSettingsTitle="Налады плагіна"
4+
OBSWebSocket.Settings.ServerEnable="Уключыць сервер WebSocket"
5+
OBSWebSocket.Settings.AlertsEnable="Уключыць апавяшчэнні ў вобласці апавяшчэнняў"
6+
OBSWebSocket.Settings.DebugEnable="Уключыць журнал адладкі"
7+
OBSWebSocket.Settings.DebugEnableHoverText="Уключае журнал адладкі толькі для бягучага сеансу OBS. Пасля перазапуску будзе выключана.\nКаб праграма запускалася з уключанай наладай, выкарыстайце параметр --websocket_debug"
8+
OBSWebSocket.Settings.ServerSettingsTitle="Налады сервера"
9+
OBSWebSocket.Settings.AuthRequired="Уключыць аўтэнтыфікацыю"
10+
OBSWebSocket.Settings.Password="Пароль сервера"
11+
OBSWebSocket.Settings.GeneratePassword="Згенераваць"
12+
OBSWebSocket.Settings.ServerPort="Порт сервера"
13+
OBSWebSocket.Settings.ShowConnectInfo="Паказаць звесткі пра злучэнне"
14+
OBSWebSocket.Settings.ShowConnectInfoWarningTitle="Увага: ідзе трансляцыя"
15+
OBSWebSocket.Settings.ShowConnectInfoWarningMessage="Выглядае, што ў бягучы момант ідзе вывад (стрым, запіс і г. д.)."
16+
OBSWebSocket.Settings.ShowConnectInfoWarningInfoText="Вы ўпэўненыя, што хочаце паказаць вашы звесткі пра злучэнне?"
17+
OBSWebSocket.Settings.Save.UserPasswordWarningTitle="Увага: магчымая небяспека"
18+
OBSWebSocket.Settings.Save.UserPasswordWarningMessage="obs-websocket захоўвае пароль сервера ў выглядзе звычайнага тэксту. Настойліва рэкамендуецца выкарыстоўваць пароль, які згенеруе obs-websocket."
19+
OBSWebSocket.Settings.Save.UserPasswordWarningInfoText="Вы ўпэўненыя, што хочаце карыстацца сваім паролем?"
20+
OBSWebSocket.Settings.Save.PasswordInvalidErrorTitle="Увага: памылковая канфігурацыя"
21+
OBSWebSocket.Settings.Save.PasswordInvalidErrorMessage="Пароль павінен утрымліваць 6 або больш сімвалаў."
22+
OBSWebSocket.SessionTable.Title="Злучаныя сеансы WebSocket"
23+
OBSWebSocket.SessionTable.RemoteAddressColumnTitle="Аддалены адрас"
24+
OBSWebSocket.SessionTable.SessionDurationColumnTitle="Даўжыня сеансу"
25+
OBSWebSocket.SessionTable.MessagesInOutColumnTitle="Паведамленні I/O"
26+
OBSWebSocket.SessionTable.IdentifiedTitle="Ідэнтыфікавана"
27+
OBSWebSocket.SessionTable.KickButtonColumnTitle="Выгнаць?"
28+
OBSWebSocket.SessionTable.KickButtonText="Выгнаць"
29+
OBSWebSocket.ConnectInfo.DialogTitle="Звесткі пра злучэнне WebSocket"
30+
OBSWebSocket.ConnectInfo.CopyText="Скапіяваць"
31+
OBSWebSocket.ConnectInfo.ServerIp="IP сервера (найлепшая здагадка)"
32+
OBSWebSocket.ConnectInfo.ServerPort="Порт сервера"
33+
OBSWebSocket.ConnectInfo.ServerPassword="Пароль сервера"
34+
OBSWebSocket.ConnectInfo.ServerPasswordPlaceholderText="[аўтэнтыфікацыя адкл.]"
35+
OBSWebSocket.ConnectInfo.QrTitle="QR-код злучэння"
36+
OBSWebSocket.TrayNotification.Identified.Title="Новае злучэнне WebSocket"
37+
OBSWebSocket.TrayNotification.Identified.Body="Кліент %1 ідэнтыфікаваны."
38+
OBSWebSocket.TrayNotification.AuthenticationFailed.Title="Збой аўтэнтыфікацыі WebSocket"
39+
OBSWebSocket.TrayNotification.AuthenticationFailed.Body="Кліент %1 не прайшоў аўтэнтыфікацыю."
40+
OBSWebSocket.TrayNotification.Disconnected.Title="Кліент WebSocket адключаны"
41+
OBSWebSocket.TrayNotification.Disconnected.Body="Кліент %1 адключаны."

data/locale/da-DK.ini

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
OBSWebSocket.Plugin.Description="Fjernstyring af OBS Studio via WebSocket"
2+
OBSWebSocket.Settings.DialogTitle="WebSocket-serverindstillinger"
23
OBSWebSocket.Settings.PluginSettingsTitle="Plugin-indstillinger"
34
OBSWebSocket.Settings.ServerEnable="Aktivér WebSocket-server"
45
OBSWebSocket.Settings.AlertsEnable="Aktivér Systembakke Alarmer"

data/locale/id-ID.ini

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ OBSWebSocket.Settings.DebugEnableHoverText="Aktifkan pencatatan awakutu untuk pe
88
OBSWebSocket.Settings.ServerSettingsTitle="Pengaturan Server"
99
OBSWebSocket.Settings.AuthRequired="Aktifkan Autentikasi"
1010
OBSWebSocket.Settings.Password="Kata Sandi Server"
11-
OBSWebSocket.Settings.GeneratePassword="Ciptakan Kata Sandi"
11+
OBSWebSocket.Settings.GeneratePassword="Buat Kata Sandi"
1212
OBSWebSocket.Settings.ServerPort="Port Server"
1313
OBSWebSocket.Settings.ShowConnectInfo="Tampilkan Informasi Koneksi"
1414
OBSWebSocket.Settings.ShowConnectInfoWarningTitle="Peringatan: Saat Ini Siaran Langsung"
1515
OBSWebSocket.Settings.ShowConnectInfoWarningMessage="Sepertinya sebuah output (stream, rekaman, dll.) sedang aktif."
1616
OBSWebSocket.Settings.ShowConnectInfoWarningInfoText="Anda yakin ingin melihat informasi koneksi Anda?"
1717
OBSWebSocket.Settings.Save.UserPasswordWarningTitle="Peringatan: Potensi Masalah Keamanan"
1818
OBSWebSocket.Settings.Save.UserPasswordWarningMessage="obs-websocket menyimpan kata sandi server sebagai teks biasa. Sangat disarankan untuk menggunakan kata sandi yang diciptakan oleh obs-websocket."
19-
OBSWebSocket.Settings.Save.UserPasswordWarningInfoText="Anda yakin ingin menggunakan kata sandi Anda sendiri?"
19+
OBSWebSocket.Settings.Save.UserPasswordWarningInfoText="Apakah Anda yakin ingin menggunakan kata sandi sendiri?"
2020
OBSWebSocket.Settings.Save.PasswordInvalidErrorTitle="Galat: Konfigurasi Tidak Berlaku"
2121
OBSWebSocket.Settings.Save.PasswordInvalidErrorMessage="Anda harus menggunakan kata sandi yang minimal 6 karakter atau lebih."
2222
OBSWebSocket.SessionTable.Title="Sesi WebSocket yang Terhubung"

data/locale/pl-PL.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ OBSWebSocket.Settings.Save.UserPasswordWarningTitle="Ostrzeżenie: Potencjalny p
1818
OBSWebSocket.Settings.Save.UserPasswordWarningMessage="obs-websocket przechowuje hasło serwera jako zwykły tekst. Wysoce zalecane jest użycie hasła generowanego przez obs-websocket."
1919
OBSWebSocket.Settings.Save.UserPasswordWarningInfoText="Czy na pewno chcesz użyć własnego hasła?"
2020
OBSWebSocket.Settings.Save.PasswordInvalidErrorTitle="Błąd: Nieprawidłowa konfiguracja"
21-
OBSWebSocket.Settings.Save.PasswordInvalidErrorMessage="Musisz użyć hasła, które ma 6 lub więcej znaków."
21+
OBSWebSocket.Settings.Save.PasswordInvalidErrorMessage="Hasło musi zawierać 6 lub więcej znaków."
2222
OBSWebSocket.SessionTable.Title="Podłączone sesje WebSocket"
2323
OBSWebSocket.SessionTable.RemoteAddressColumnTitle="Adres zdalny"
2424
OBSWebSocket.SessionTable.SessionDurationColumnTitle="Czas trwania sesji"

data/locale/ug-CN.ini

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
OBSWebSocket.Settings.GeneratePassword="ئىم ھاسىللا"
2+
OBSWebSocket.ConnectInfo.CopyText="كۆچۈر"

0 commit comments

Comments
 (0)