Skip to content

Commit

Permalink
Websockets update Stream Server + Russian translation (#10)
Browse files Browse the repository at this point in the history
  • Loading branch information
350d authored Oct 30, 2023
1 parent a64eeed commit 605dac3
Show file tree
Hide file tree
Showing 3 changed files with 94 additions and 2 deletions.
50 changes: 50 additions & 0 deletions data/locale/ru-RU.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
Vertical="Vertical"
VerticalCanvas="Vertical Canvas"
Description="Vertical Canvas"
Canvas="Холст"
VirtualCam="Виртуальная камера"
LinkedScenes="Связанные сцены"
OnMainCanvas="Показать на главном холсте"
SceneName="Название сцены"
SourceName="Название источника"
TransitionName="Название перехода"
Saving="Backtrack сохранение..."
Saved="Backtrack сохранен!"
VerticalSettings="Vertical Настройки"
General="Основные"
Resolution="Разрешение"
ShowScenes="Показать вертикальные сцены в основном списке"
Backtrack="Backtrack"
BacktrackEnable="Backtrack будет включен во время трансляции/записи"
BacktrackAlwaysOn="Backtrack всегда включен"
BacktrackDuration="Backtrack продолжительность записи"
BacktrackPath="Backtrack путь до записи"
SaveBacktrackHotkey="Горячая клавиша сохранения Backtrack"
Streaming="Трансляция"
Server="Сервер"
Key="Ключ"
StartStreamingHotkey="Горячая клавиша запуска трансляции"
StopStreamingHotkey="Горячая клавиша остановки трансляции"
Recording="Запись"
StartRecordingHotkey="Горячая клавиша начала записи"
StopRecordingHotkey="Горячая клавиша остановки записи"
Version="Версия"
MadeBy="сделано с ♡ в "
AddVerticalScene="Добавить вертикальную сцену"
RemoveVerticalScene="Удалить вертикальную сцену"
StreamVertical="Vertical Трансляция"
RecordVertical="Vertical Запись"
BacktrackClipVertical="Backtrack клип"
VirtualCameraVertical="Vertical виртуальная камера"
VerticalScene="Vertical Сцена"
tiktokError="Пожалуйста, убедитесь, что ключ странсляции обновлен! TikTok обновляет ключ для каждой новой трансляции!"
backtrackStartFail="Backtrack ошибка запуска"
backtrackCustomFfmpeg="Невозможно запустить Backtrack пока запись настроена с ffmpeg"
backtrackNoReplayBuffer="Нельзя запусть Backtrack если нет буфера повтора"
UseMain="Использовать основные настройки OBS"
NewVersion="Доступна <a href='https://aitum.tv/download/vertical/'>новая версия</a> (%1)"
RecordPathError="Указанный путь для записи пуст. Пожалуйста, проверьте путь в разделе Vertical Настройки → Запись."
Help="Помощь"
HelpSupport="Подключиться к Discord серверу Aitum"
CopyFromMain="Скопировать из основного"
VirtualCameraWarning="После запуска Vertical виртуальной камеры вы не сможете изменить некоторые настройки OBS без перезапуска OBS."
44 changes: 43 additions & 1 deletion vertical-canvas.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -423,10 +423,41 @@ void vendor_request_update_stream_key(obs_data_t *request_data,
obs_data_set_bool(response_data, "success", true);
return;
}

obs_data_set_bool(response_data, "success", false);
}

void vendor_request_update_stream_server(obs_data_t *request_data,
obs_data_t *response_data, void *)
{
// Parse request_data to get the new stream_server
const char *new_stream_server = obs_data_get_string(request_data, "stream_server");
const auto width = obs_data_get_int(request_data, "width");
const auto height = obs_data_get_int(request_data, "height");

if (!new_stream_server || !strlen(new_stream_server)) {
obs_data_set_string(response_data, "error", "'stream_server' not set");
obs_data_set_bool(response_data, "success", false);
return;
}

// Loop through each CanvasDock to find the right one
for (const auto &it : canvas_docks) {
if ((width && it->GetCanvasWidth() != width) ||
(height && it->GetCanvasHeight() != height))
continue;

// Update stream_server using the UpdateStreamServer method of CanvasDock
QMetaObject::invokeMethod(
it, "UpdateStreamServer",
Q_ARG(QString, QString::fromUtf8(new_stream_server)));

obs_data_set_bool(response_data, "success", true);
return;
}

obs_data_set_bool(response_data, "success", false);
}

update_info_t *verison_update_info = nullptr;

bool version_info_downloaded(void *param, struct file_download_data *file)
Expand Down Expand Up @@ -569,6 +600,9 @@ void obs_module_post_load(void)
obs_websocket_vendor_register_request(vendor, "update_stream_key",
vendor_request_update_stream_key,
(void *)"UpdateStreamKey");
obs_websocket_vendor_register_request(vendor, "update_stream_server",
vendor_request_update_stream_server,
(void *)"UpdateStreamServer");

verison_update_info = update_info_create_single(
"[vertical-canvas]", "OBS", "https://api.aitum.tv/vertical",
Expand Down Expand Up @@ -608,6 +642,8 @@ void obs_module_unload(void)
"stop_virtual_camera");
obs_websocket_vendor_unregister_request(vendor,
"update_stream_key");
obs_websocket_vendor_unregister_request(vendor,
"update_stream_server");
}
obs_frontend_remove_event_callback(frontend_event, nullptr);
update_info_destroy(verison_update_info);
Expand Down Expand Up @@ -7493,6 +7529,12 @@ void CanvasDock::updateStreamKey(const QString &newStreamKey)
// any additional actions needed to apply the new stream key
}

void CanvasDock::updateStreamServer(const QString& newStreamServer) {
// Your code to update the stream_server, assuming stream_server is a member variable
this->stream_server = newStreamServer.toStdString();
// any additional actions needed to apply the new stream server
}

LockedCheckBox::LockedCheckBox() {}

LockedCheckBox::LockedCheckBox(QWidget *parent) : QCheckBox(parent) {}
Expand Down
2 changes: 1 addition & 1 deletion vertical-canvas.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -413,7 +413,7 @@ private slots:
obs_data_t *SaveSettings();

void updateStreamKey(const QString& newStreamKey);

void updateStreamServer(const QString& newStreamServer);

obs_scene_t *GetCurrentScene();
std::vector<QString> GetScenes();
Expand Down

0 comments on commit 605dac3

Please sign in to comment.