Projects
home:darix:branches:Multimedia
obs-studio
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 8
View file
obs-studio.changes
Changed
@@ -1,4 +1,19 @@ ------------------------------------------------------------------- +Thu Jul 16 21:26:16 UTC 2026 - darix <packman@nordisch.org> + +- Update to version 32.2.0~rc2: + * frontend: Adjustments to Add Source window + * frontend: Change source window button label + * frontend: Update recent sources text + * build-aux: Update Flatpak to 2026-07-15 deps + * CI: Update deps to 2026-07-15 release + * frontend: Add Image SAFER to DLL blocklist + * frontend: Add defunct Twitch Soundtrack plugin to DLL blocklist + * rtmp-services: Update Piczel.tv ingest servers + * CI: Provide GitHub token for gh usage + * mac-capture: Don't capture cursor for macOS Audio Capture sources + +------------------------------------------------------------------- Fri Jul 10 23:29:15 UTC 2026 - darix <packman@nordisch.org> - Update to version 32.2.0~rc1:
View file
obs-studio.spec
Changed
@@ -50,7 +50,7 @@ %endif Name: obs-studio -Version: 32.2.0~rc1 +Version: 32.2.0~rc2 Release: 0 Summary: A recording/broadcasting program Group: Productivity/Multimedia/Video/Editors and Convertors
View file
_service
Changed
@@ -1,7 +1,7 @@ <services> <service name="tar_scm" mode="manual"> <param name="versionformat">@PARENT_TAG@</param> - <param name="revision">32.2.0-rc1</param> + <param name="revision">32.2.0-rc2</param> <param name="url">https://github.com/obsproject/obs-studio.git</param> <param name="versionrewrite-pattern">(\.\d+)-(a-z.*)</param> <param name="versionrewrite-replacement">\1~\2</param>
View file
_servicedata
Changed
@@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/obsproject/obs-studio.git</param> - <param name="changesrevision">f2db0972ee3a3decd99b94458edf41be5be8e5ec</param> + <param name="changesrevision">f730063da39f2e6338629f526acb99c8d574ffa1</param> </service> </servicedata> \ No newline at end of file
View file
obs-studio-32.2.0~rc1.tar.xz/.github/workflows/publish.yaml -> obs-studio-32.2.0~rc2.tar.xz/.github/workflows/publish.yaml
Changed
@@ -278,6 +278,8 @@ - name: Set Up Environment 🔧 id: setup + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | : Set Up Environment 🔧 if (( ${+RUNNER_DEBUG} )) setopt XTRACE
View file
obs-studio-32.2.0~rc1.tar.xz/CMakePresets.json -> obs-studio-32.2.0~rc2.tar.xz/CMakePresets.json
Changed
@@ -27,28 +27,28 @@ "obsproject.com/obs-studio": { "dependencies": { "prebuilt": { - "version": "2026-06-25", + "version": "2026-07-15", "baseUrl": "https://github.com/obsproject/obs-deps/releases/download", "label": "Pre-Built obs-deps", "hashes": { - "macos-universal": "09ee1f53ef1b4464fd4f39f9aa3f3193b47e60d8c48b6ffc603f22a83814487e", - "windows-x64": "aea064cc550563d0095603385c22cc52b33de71e57ea3f6ff1ae1d54a0bb9d8a", - "windows-x86": "fde08f54707dbf57da24b21a5db4ccedd4c4eb09b9808a899f9068dc5f1a228d", - "windows-arm64": "53c13f0634ebe27b8fb2aa17378d780210936428514b7bd47f64040c3b30d750" + "macos-universal": "4ecb4c598dfa853168df6c2a0c4e0ffec8495a81fbd1ba051ef88ecd5e0f7e53", + "windows-x64": "6f90e9598fa10cff5ad23cdcfae49b87868c07bf896b02cd464582b4ce2f2ba9", + "windows-x86": "f33697d7e248b53f38893f02440454b91b0aab05c981c646830521335242fd08", + "windows-arm64": "4e7d6835ae36dbc569bf6f88646cb6c4f1f0319b5c13d9d37ba3d19b25b1e240" } }, "qt6": { - "version": "2026-06-25", + "version": "2026-07-15", "baseUrl": "https://github.com/obsproject/obs-deps/releases/download", "label": "Pre-Built Qt6", "hashes": { - "macos-universal": "1f3d2b8b3ddf980dfee527471f1f970889f8cdfd8fa0404d9992986034f16260", - "windows-x64": "b30ee3653d6381ca491daa5b30b3cff6deb1b3e7f149f4b087c2fb03a1432023", - "windows-arm64": "7c256175d00d85d062aea88ffbfd096c44c8ad53e10adbbf21b1fc5fb591f98f" + "macos-universal": "d4b8058612a7067e44b2205fe7925ee24e9ec6b15ac8c29d3e6230c70030b102", + "windows-x64": "7c7f985711d80467bdc1795b6592275a27d5b0e5a2c7a61db1f2c1d08d6a5579", + "windows-arm64": "6d5047a04cad3ecc2615bf8b3df6eb22ec953a458b6cd89253bf131ee4981b90" }, "debugSymbols": { - "windows-x64": "be7c1dbde4a8720fc5cf59bb7a4f2ad55ee8b5dc17702e51c347bd4eec24a8e3", - "windows-arm64": "d104eccc9f2457d22e9ddd9ce101b13025872b1d5ae08761b6ced284b773f648" + "windows-x64": "471d0b2191c424a520a51d064f3741084f117e1ff6ee5af1d16aabcdbacc6659", + "windows-arm64": "ffe5b46f6abc81355a4161efdef6cbb2e8862eb053bd2211808c4d4833fcee78" } }, "cef": {
View file
obs-studio-32.2.0~rc1.tar.xz/build-aux/com.obsproject.Studio.json -> obs-studio-32.2.0~rc2.tar.xz/build-aux/com.obsproject.Studio.json
Changed
@@ -48,7 +48,7 @@ { "type": "file", "dest-filename": "base.tar.xz", - "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-06-26/flatpak-base-x86_64-2026-06-26.tar.xz", + "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-07-15/flatpak-base-x86_64-2026-07-15.tar.xz", "sha256": "396522a370529c31bbec6de810aff8bd5ba4eef103b2218954ffa5d8847dc943" } @@ -63,7 +63,7 @@ { "type": "file", "dest-filename": "devel.tar.xz", - "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-06-26/flatpak-devel-x86_64-2026-06-26.tar.xz", + "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-07-15/flatpak-devel-x86_64-2026-07-15.tar.xz", "sha256": "2499b622f450f3ae6ea7e9d893d8063cdacd8aa2089ecd4b8462d16e970fbc43" } @@ -81,7 +81,7 @@ { "type": "file", "dest-filename": "devtools.tar.xz", - "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-06-26/flatpak-devtools-x86_64-2026-06-26.tar.xz", + "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-07-15/flatpak-devtools-x86_64-2026-07-15.tar.xz", "sha256": "557e5cf96a7118f1377b7eabe402621908f7ba6a9bc93fbb134ebc175d31a5d9" } @@ -96,8 +96,8 @@ { "type": "file", "dest-filename": "qt.tar.xz", - "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-06-26/flatpak-qt-x86_64-2026-06-26.tar.xz", - "sha256": "ff3ffdc54a3da6a4f656411d1a88e6484c64349dacf700fa5986c385aff23a17" + "url": "https://github.com/obsproject/obs-deps-buildstream/releases/download/2026-07-15/flatpak-qt-x86_64-2026-07-15.tar.xz", + "sha256": "231c5671173f7b6d33df457eb6991c5b6a76bccc59545b7e32d56f0e87b97872" } },
View file
obs-studio-32.2.0~rc1.tar.xz/frontend/data/locale/en-US.ini -> obs-studio-32.2.0~rc2.tar.xz/frontend/data/locale/en-US.ini
Changed
@@ -643,14 +643,16 @@ # add source dialog Basic.SourceSelect="Add Source" Basic.SourceSelect.SelectType="Source Type" -Basic.SourceSelect.Recent="Recently Added" -Basic.SourceSelect.NewSource="Create a New Source" -Basic.SourceSelect.Existing="Add an Existing Source" +Basic.SourceSelect.Recent="Recently Created" +Basic.SourceSelect.Description="Select which source(s) to add to your current scene." +Basic.SourceSelect.NewSource="Add a new %1" +Basic.SourceSelect.AddExisting="Add %1 existing" +Basic.SourceSelect.NoSelection="Add existing" Basic.SourceSelect.CreateButton="Create New" Basic.SourceSelect.AddVisible="Make source visible" -Basic.SourceSelect.NoExisting="No existing %1 sources" +Basic.SourceSelect.NoExisting="You have no existing %1 sources yet." Basic.SourceSelect.Accessible.SourceName="Source Name" -Basic.SourceSelect.Accessible.Existing="Add an Existing Source" +Basic.SourceSelect.Accessible.Existing="Add an existing source" Basic.SourceSelect.Deprecated.Create="This source type is marked as deprecated and may be removed in the future." # source box
View file
obs-studio-32.2.0~rc1.tar.xz/frontend/data/themes/Yami.obt -> obs-studio-32.2.0~rc2.tar.xz/frontend/data/themes/Yami.obt
Changed
@@ -2437,6 +2437,16 @@ } /* Add Source Dialog */ +.btn-create-new { + background: transparent; + padding: var(--padding_wide) var(--padding_large); + border-radius: var(--border_radius); + border: 2px dashed var(--grey3); + outline: none; + qproperty-icon: url(theme:Dark/plus.svg); + margin-bottom: var(--spacing_large); +} + SourceSelectButton { background: var(--grey5); padding: var(--padding_base) var(--padding_large);
View file
obs-studio-32.2.0~rc1.tar.xz/frontend/dialogs/OBSBasicSourceSelect.cpp -> obs-studio-32.2.0~rc2.tar.xz/frontend/dialogs/OBSBasicSourceSelect.cpp
Changed
@@ -255,9 +255,9 @@ connect(ui->existingScrollArea->horizontalScrollBar(), &QScrollBar::valueChanged, this, &OBSBasicSourceSelect::updateButtonVisibility); - ui->createNewFrame->setVisible(false); - ui->deprecatedCreateLabel->setVisible(false); - ui->deprecatedCreateLabel->setProperty("class", "text-muted"); + ui->createNewSource->setVisible(false); + ui->noExistingLabel->setVisible(false); + ui->deprecatedFrame->setVisible(false); rebuildSourceTypeList(); refreshSources(); @@ -272,16 +272,16 @@ connect(ui->sourceTypeList, &QListWidget::itemDoubleClicked, this, &OBSBasicSourceSelect::createNew); connect(ui->sourceTypeList, &QListWidget::currentItemChanged, this, &OBSBasicSourceSelect::sourceTypeSelected); - connect(ui->newSourceName, &QLineEdit::returnPressed, this, &OBSBasicSourceSelect::createNew); connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject); connect(ui->addExistingButton, &QAbstractButton::clicked, this, &OBSBasicSourceSelect::addSelectedSources); connect(this, &OBSBasicSourceSelect::selectedItemsChanged, this, this() { ui->addExistingButton->setEnabled(selectedItems.size() > 0); if (selectedItems.size() > 0) { - ui->addExistingButton->setText(QTStr("Add %1 Existing").arg(selectedItems.size())); + ui->addExistingButton->setText( + QTStr("Basic.SourceSelect.AddExisting").arg(selectedItems.size())); } else { - ui->addExistingButton->setText("Add Existing"); + ui->addExistingButton->setText(QTStr("Basic.SourceSelect.NoSelection")); } }); @@ -537,6 +537,13 @@ ui->sourceTypeList->sortItems(); + auto *deprecatedTitle = new QListWidgetItem(ui->sourceTypeList); + deprecatedTitle->setText(QTStr("Deprecated")); + deprecatedTitle->setFlags(deprecatedTitle->flags() & ~Qt::ItemIsEnabled); + deprecatedTitle->setFlags(deprecatedTitle->flags() & ~Qt::ItemIsSelectable); + + ui->sourceTypeList->addItem(deprecatedTitle); + // Shift Deprecated sources to the bottom QList<QListWidgetItem *> deprecatedItems; for (int i = 0; i < ui->sourceTypeList->count(); ++i) { @@ -732,10 +739,6 @@ { bool visible = ui->sourceVisible->isChecked(); - if (ui->newSourceName->text().isEmpty()) { - return; - } - if (selectedTypeId.compare(kRecentTypeId) == 0) { return; } @@ -746,7 +749,8 @@ std::string sourceType = selectedTypeId.toStdString(); const char *id = sourceType.c_str(); - std::string newName = ui->newSourceName->text().toStdString(); + QString placeholder = getDisplayNameForSourceType(selectedTypeId); + std::string newName = getNewSourceName(placeholder.toStdString().c_str()); std::optional<OBSSource> createResult = setupNewSource(this, id, newName.c_str()); if (!createResult.has_value()) { @@ -779,7 +783,7 @@ OBSDataAutoRelease wrapper = obs_data_create(); obs_data_set_string(wrapper, "id", id); obs_data_set_int(wrapper, "item_id", obs_sceneitem_get_id(item)); - obs_data_set_string(wrapper, "name", ui->newSourceName->text().toUtf8().constData()); + obs_data_set_string(wrapper, "name", newName.c_str()); obs_data_set_bool(wrapper, "visible", visible); auto redo = sceneUuid(const std::string &data) { @@ -808,7 +812,7 @@ obs_sceneitem_set_id(item, static_cast<int64_t>(obs_data_get_int(dat, "item_id"))); }; - undo_s.add_action(QTStr("Undo.Add").arg(ui->newSourceName->text()), undo, redo, + undo_s.add_action(QTStr("Undo.Add").arg(QString::fromStdString(newName)), undo, redo, std::string(obs_source_get_uuid(newSource)), std::string(obs_data_get_json(wrapper))); main->CreatePropertiesWindow(newSource); @@ -910,9 +914,15 @@ QVariant unversionedIdData = current->data(kUnversionedIdRole); QVariant deprecatedData = current->data(kDeprecatedRole); + bool isDeprecatedType = deprecatedData.toBool(); + ui->deprecatedFrame->setVisible(isDeprecatedType); + if (unversionedIdData.toString().compare(kRecentTypeId) == 0) { + ui->sourceSelectTitle->setText(QTStr("Basic.SourceSelect.Recent")); selectedTypeId = kRecentTypeId.toString(); - ui->createNewFrame->setVisible(false); + ui->noExistingLabel->setVisible(false); + ui->existingScrollArea->setVisible(true); + ui->createNewSource->setVisible(false); updateExistingSources(kRecentListLimit); return; } @@ -922,31 +932,21 @@ return; } - ui->createNewFrame->setVisible(true); - - bool isDeprecatedType = deprecatedData.toBool(); - ui->deprecatedCreateLabel->setVisible(isDeprecatedType); + ui->createNewSource->setVisible(type != "scene"); selectedTypeId = type; QString placeHolderText{getDisplayNameForSourceType(selectedTypeId)}; - QString text{placeHolderText}; - int i = 2; - OBSSourceAutoRelease source = nullptr; - while ((source = obs_get_source_by_name(QT_TO_UTF8(text)))) { - text = QString("%1 %2").arg(placeHolderText).arg(i++); - } - - ui->newSourceName->setText(text); + ui->createNewSource->setText( + QTStr("Basic.SourceSelect.NewSource").arg(getDisplayNameForSourceType(selectedTypeId))); + ui->sourceSelectTitle->setText(QString("%1").arg(getDisplayNameForSourceType(selectedTypeId))); updateExistingSources(); - if (existingFlowLayout->count() == 0) { - QLabel *noExisting = new QLabel(); - noExisting->setText( - QTStr("Basic.SourceSelect.NoExisting").arg(getDisplayNameForSourceType(selectedTypeId))); - noExisting->setProperty("class", "text-muted"); - existingFlowLayout->addWidget(noExisting); - } + ui->noExistingLabel->setText( + QTStr("Basic.SourceSelect.NoExisting").arg(getDisplayNameForSourceType(selectedTypeId))); + + ui->existingScrollArea->setVisible(existingFlowLayout->count() != 0); + ui->noExistingLabel->setVisible(existingFlowLayout->count() == 0); }
View file
obs-studio-32.2.0~rc1.tar.xz/frontend/forms/OBSBasicSourceSelect.ui -> obs-studio-32.2.0~rc2.tar.xz/frontend/forms/OBSBasicSourceSelect.ui
Changed
@@ -9,8 +9,8 @@ <rect> <x>0</x> <y>0</y> - <width>1010</width> - <height>614</height> + <width>1040</width> + <height>620</height> </rect> </property> <property name="sizePolicy"> @@ -151,6 +151,12 @@ <property name="lineWidth"> <number>0</number> </property> + <property name="verticalScrollBarPolicy"> + <enum>Qt::ScrollBarAlwaysOn</enum> + </property> + <property name="horizontalScrollBarPolicy"> + <enum>Qt::ScrollBarAlwaysOff</enum> + </property> <property name="sizeAdjustPolicy"> <enum>QAbstractScrollArea::AdjustToContentsOnFirstShow</enum> </property> @@ -235,7 +241,7 @@ <number>0</number> </property> <property name="class" stdset="0"> - <string/> + <string>dialog-container</string> </property> <layout class="QVBoxLayout" name="verticalLayout_2"> <property name="spacing"> @@ -254,7 +260,85 @@ <number>0</number> </property> <item> - <widget class="QFrame" name="selectExistingFrame"> + <widget class="QLabel" name="sourceSelectTitle"> + <property name="text"> + <string>Basic.SourceSelect.Recent</string> + </property> + <property name="class" stdset="0"> + <string>text-title</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="sourceSelectDescription"> + <property name="text"> + <string>Basic.SourceSelect.Description</string> + </property> + <property name="class" stdset="0"> + <string>text-small text-muted margin-y</string> + </property> + </widget> + </item> + <item> + <widget class="QFrame" name="deprecatedFrame"> + <property name="frameShape"> + <enum>QFrame::NoFrame</enum> + </property> + <property name="frameShadow"> + <enum>QFrame::Plain</enum> + </property> + <property name="lineWidth"> + <number>0</number> + </property> + <property name="class" stdset="0"> + <string>frame-notice</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <property name="spacing"> + <number>0</number> + </property> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <widget class="QLabel" name="deprecatedCreateLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="MinimumExpanding" vsizetype="Maximum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="frameShape"> + <enum>QFrame::NoFrame</enum> + </property> + <property name="frameShadow"> + <enum>QFrame::Plain</enum> + </property> + <property name="lineWidth"> + <number>0</number> + </property> + <property name="text"> + <string>Basic.SourceSelect.Deprecated.Create</string> + </property> + <property name="alignment"> + <set>Qt::AlignCenter</set> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QFrame" name="selectSourceFrame"> <property name="accessibleName"> <string>Basic.SourceSelect.AddExisting</string> </property> @@ -284,18 +368,40 @@ <number>0</number> </property> <item> - <widget class="QLabel" name="existingLabel"> + <widget class="QPushButton" name="createNewSource"> <property name="sizePolicy"> - <sizepolicy hsizetype="Preferred" vsizetype="Maximum"> + <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> + <property name="cursor"> + <cursorShape>PointingHandCursor</cursorShape> + </property> <property name="text"> - <string>Basic.SourceSelect.Existing</string> + <string>Basic.SourceSelect.NewSource</string> </property> <property name="class" stdset="0"> - <string>text-title</string> + <string>btn-create-new</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="noExistingLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Basic.SourceSelect.NoExisting</string> + </property> + <property name="alignment"> + <set>Qt::AlignCenter</set> + </property> + <property name="class" stdset="0"> + <string>text-muted</string> </property> </widget> </item> @@ -313,6 +419,9 @@ <property name="lineWidth"> <number>0</number> </property> + <property name="verticalScrollBarPolicy"> + <enum>Qt::ScrollBarAlwaysOn</enum> + </property> <property name="horizontalScrollBarPolicy"> <enum>Qt::ScrollBarAlwaysOff</enum> </property> @@ -327,8 +436,8 @@ <rect> <x>0</x> <y>0</y> - <width>800</width> - <height>510</height> + <width>819</width> + <height>250</height> </rect> </property> <property name="autoFillBackground"> @@ -402,32 +511,6 @@ <number>0</number> </property> <item> - <spacer name="horizontalSpacer_4"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>10</height> - </size> - </property>
View file
obs-studio-32.2.0~rc1.tar.xz/frontend/utility/win-dll-blocklist.c -> obs-studio-32.2.0~rc2.tar.xz/frontend/utility/win-dll-blocklist.c
Changed
@@ -191,6 +191,16 @@ // Different versions seem to be installed in different places, so we have to match on DLL only. // Reference: https://www.hanselman.com/blog/webcam-randomly-pausing-in-obs-discord-and-websites-lsvcam-and-tiktok-studio {L"\\lsvcam.dll", 0, 0, TS_IGNORE}, + + // Twitch Soundtrack plugin, causes issues with VOD track. + // The app is defunct as of July 2023 and the plugin no longer has a purpose. + // Reference: https://github.com/obsproject/obs-studio/issues/13636 + {L"\\soundtrack-plugin.dll", 0, 0, TS_IGNORE}, + + // More Korean banking anti-screenshot "security" software that injects and crashes OBS. + // Found via internal crash reports. Classified as malware by some vendors. + // Reference: https://vms.drweb.com/virus/?i=32005995 + {L"\\imgsf50dxfilter_x64.dll", 0, 0, TS_IGNORE}, }; static bool is_module_blocked(wchar_t *dll, uint32_t timestamp)
View file
obs-studio-32.2.0~rc1.tar.xz/plugins/mac-capture/mac-sck-audio-capture.m -> obs-studio-32.2.0~rc2.tar.xz/plugins/mac-capture/mac-sck-audio-capture.m
Changed
@@ -106,6 +106,7 @@ sc->stream_properties setCapturesAudio:TRUE; sc->stream_properties setExcludesCurrentProcessAudio:TRUE; + sc->stream_properties setShowsCursor:FALSE; struct obs_audio_info audio_info; BOOL did_get_audio_info = obs_get_audio_info(&audio_info);
View file
obs-studio-32.2.0~rc1.tar.xz/plugins/rtmp-services/data/package.json -> obs-studio-32.2.0~rc2.tar.xz/plugins/rtmp-services/data/package.json
Changed
@@ -1,11 +1,11 @@ { "$schema": "schema/package-schema.json", "url": "https://obsproject.com/obs2_update/rtmp-services/v5", - "version": 285, + "version": 286, "files": { "name": "services.json", - "version": 285 + "version": 286 } }
View file
obs-studio-32.2.0~rc1.tar.xz/plugins/rtmp-services/data/services.json -> obs-studio-32.2.0~rc2.tar.xz/plugins/rtmp-services/data/services.json
Changed
@@ -1495,8 +1495,20 @@ "name": "Piczel.tv", "servers": { - "name": "Default", - "url": "rtmp://piczel.tv:1935/live" + "name": "US East: 1", + "url": "rtmp://boston.piczel.tv/live" + }, + { + "name": "US East: 2", + "url": "rtmp://boston-2.piczel.tv/live" + }, + { + "name": "France", + "url": "rtmp://france.piczel.tv/live" + }, + { + "name": "Brazil", + "url": "rtmp://brazil.piczel.tv/live" } , "recommended": {
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.