DMX Work Studio — Third-Party Licenses
DMX Work Studio includes software components licensed under open-source licenses. This page lists them, tells you where to get their source code, and explains how to replace the Qt libraries as permitted by the LGPL.
The same information ships inside the application: Settings > About > "Open source notices…" opens THIRD_PARTY_NOTICES.txt and QT_REPLACEMENT_GUIDE.txt for the version you have installed. If this page and the files in your copy differ, the files in your copy describe your copy.
Components and licenses
| Component | License | Copyright |
|---|---|---|
| Qt 6 | LGPL-3.0 | The Qt Company Ltd. |
| Qt for Python (PySide6, shiboken6) | LGPL-3.0 | The Qt Company Ltd. |
| Python | PSF License | Python Software Foundation |
| psutil | BSD-3-Clause | Giampaolo Rodola |
| Rust crates used by the core engine | MIT / Apache-2.0 (see notices file) | respective authors |
| IBM Plex Sans / IBM Plex Sans JP | SIL Open Font License 1.1 | IBM Corp. |
Source code for the LGPL components
| DMX Work Studio | Qt / PySide6 | Qt source | PySide6 / shiboken6 source |
|---|---|---|---|
| 0.8.9 (macOS) | 6.11.1 | Official source — https://download.qt.io/official_releases/qt/6.11/6.11.1/single/ | Official source — https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-6.11.1-src/ |
| 0.8.9 (Windows) | 6.11.1 | Official source — https://download.qt.io/official_releases/qt/6.11/6.11.1/single/ | Modified build — https://github.com/rise-co-ltd/dmxworkstudio-pyside6-source (release pyside6-6.11.1-limitedapi312) |
Each row records the versions actually shipped in that release. Older rows are kept.
On Windows (from version 0.8.9), the PySide6 and shiboken6 libraries were rebuilt by RISE CO., LTD. from the official Qt for Python source with a small modification: the Python Limited API level used for the build was raised from 3.10 to 3.12 (four one-line changes in the build configuration, made on 2026-10-04). The complete corresponding source, including the modification and the build instructions, is available at: https://github.com/rise-co-ltd/dmxworkstudio-pyside6-source The Qt libraries themselves are unmodified official binaries from The Qt Company. The macOS version uses the official PySide6 without modification.
Replacing the Qt libraries
Before you start
----------------
- Replace the whole PySide6 set together, all of one matching version:
the Qt libraries, the Qt plug-ins, the PySide6 binaries (Qt*.abi3.so /
*.pyd, libpyside6 / pyside6*.dll) and the shiboken6 binaries.
Qt 6 embeds its patch version in its symbol names, so replacing only the Qt
libraries with a different version (e.g. 6.11.1 into a 6.11.2 build) does
not start. A Qt you rebuilt from the same version's source can replace the
Qt libraries alone.
- Choose a PySide6 set that supports the Python version bundled in the
application (macOS: Contents/Frameworks/Python.framework, Windows:
_internal/python3XX.dll). The PyPI wheels of PySide6 6.x ("abi3") support
Python 3.10 and later.
- Work on a copy of the application. Keep the original.
- A replaced build is not covered by RISE Co., Ltd. support. If something goes
wrong, go back to the original application.
- Windows version: replacing the PySide6 / shiboken6 of this distribution with the
official Qt for Python binaries removes the workaround for a known issue
(PYSIDE-3424) that this build includes.
macOS
-----
Only Apple's standard command-line tools are needed (Terminal, codesign,
xattr). No developer account and no Xcode.
Where the files are (inside DMXworkStudio.app):
1. Contents/Frameworks/PySide6/Qt/lib/<Name>.framework/Versions/A/<Name>
2. Contents/Frameworks/PySide6/Qt/plugins/**/*.dylib
3. Contents/Frameworks/PySide6/Qt*.abi3.so
4. Contents/Frameworks/PySide6/libpyside6.abi3.*.dylib
5. Contents/Frameworks/shiboken6/libshiboken6.abi3.*.dylib and Shiboken.abi3.so
Overwrite the FILES only. Do not replace whole .framework folders: the
framework folders in PyPI wheels are incomplete bundles, and signing them
afterwards does not put a signature into the library itself (it will not
start).
Steps (example using the PyPI wheels; replace <version> with the version you
want):
# 1. Copy the application
cp -R /Applications/DMXworkStudio.app ~/Desktop/DMXworkStudio-mine.app
# 2. Get the replacement set and unpack it
cd ~/Desktop
python3 -m pip download --no-deps PySide6_Essentials==<version> -d qt_src
python3 -m pip download --no-deps PySide6_Addons==<version> -d qt_src
python3 -m pip download --no-deps shiboken6==<version> -d qt_src
mkdir qt_x && cd qt_x && for w in ../qt_src/*.whl; do unzip -qo "$w"; done
# 3. Overwrite the files
APP=~/Desktop/DMXworkStudio-mine.app
W=~/Desktop/qt_x
for fw in "$APP/Contents/Frameworks/PySide6/Qt/lib/"*.framework; do
n=$(basename "$fw" .framework)
cp -f "$W/PySide6/Qt/lib/$n.framework/Versions/A/$n" "$fw/Versions/A/$n"
done
cd "$APP/Contents/Frameworks/PySide6/Qt/plugins"
for f in $(find . -type f -name '*.dylib'); do cp -f "$W/PySide6/Qt/plugins/${f#./}" "$f"; done
cd "$APP/Contents/Frameworks/PySide6"
for f in *.abi3.so libpyside6.abi3.*.dylib; do cp -f "$W/PySide6/$f" "$f"; done
cp -f "$W/shiboken6/libshiboken6.abi3."*.dylib "$APP/Contents/Frameworks/shiboken6/"
cp -f "$W/shiboken6/Shiboken.abi3.so" "$APP/Contents/Frameworks/shiboken6/"
# 4. Write the entitlements file (same as the shipped application, plus
# disable-library-validation so that your own Qt may be loaded)
cat > ~/Desktop/ent.plist <<'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"><dict>
<key>com.apple.security.app-sandbox</key><true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key><true/>
<key>com.apple.security.cs.disable-library-validation</key><true/>
<key>com.apple.security.files.user-selected.read-write</key><true/>
<key>com.apple.security.network.client</key><true/>
<key>com.apple.security.network.server</key><true/>
</dict></plist>
EOF
(The shipped entitlements can be shown with:
codesign -d --entitlements - /Applications/DMXworkStudio.app)
# 5. Remove the download mark and sign again (ad hoc, no account needed)
xattr -cr ~/Desktop/DMXworkStudio-mine.app
codesign --force --deep --options runtime \
--entitlements ~/Desktop/ent.plist -s - ~/Desktop/DMXworkStudio-mine.app
# 6. Start it
open ~/Desktop/DMXworkStudio-mine.app
- When macOS asks "Allow DMX Work Studio to find devices on local networks?",
choose Allow. Without it Art-Net / sACN cannot be sent or received. (A
re-signed application is a different application to macOS, so this question
appears again.)
- If macOS says the application "is not opened" / "cannot be verified", run
step 5 again. If it still appears, press Done, open System Settings >
Privacy & Security and press "Open Anyway" near the bottom. Do not press
"Move to Trash".
- The re-signed application is no longer notarized by Apple. This is expected.
Check the result: open ⚙ > Settings > About. "Built with Qt(R) ..." shows the
Qt version that is actually loaded.
Windows
-------
ZIP version (folder DMXworkStudio\ with DMXworkStudio.exe):
The Qt / PySide6 files are in DMXworkStudio\_internal\PySide6\ (Qt6*.dll,
plugins\, *.pyd, pyside6*.dll) and DMXworkStudio\_internal\shiboken6\.
1. Copy the whole DMXworkStudio folder.
2. Get the replacement set (e.g. the PyPI wheels as in the macOS steps, the
"win_amd64" wheels) and unpack them (a .whl file is a ZIP archive).
3. Overwrite the files of the same names in the copy.
4. Start DMXworkStudio.exe in the copy. No signing step is needed.
A copied folder may show the Windows network permission prompt again
on first start or when sending a test signal.
5. Check ⚙ > Settings > About as above. About shows the Qt version
number only; replacing with libraries of the same version does not
change it.
Microsoft Store / MSIX version:
An installed MSIX package cannot be modified in place. Use the ZIP version
to run with replaced libraries.
Store versions (App Store, TestFlight, Microsoft Store)
Apps installed from a store cannot be modified in place. If you want to replace the Qt libraries, please contact us at the address on the /support page. We will provide, free of charge, a copy of the same version in a form that allows the libraries to be replaced. Please include the version number shown in About and the store you installed the app from (App Store, TestFlight or Microsoft Store). The replacement steps are described in "Replacing the Qt libraries" on this page.
Full license texts
- GNU Lesser General Public License v3: https://www.gnu.org/licenses/lgpl-3.0.html
- GNU General Public License v3: https://www.gnu.org/licenses/gpl-3.0.html
- Other license texts are included in THIRD_PARTY_NOTICES.txt inside the application.
DMX Work Studio — 第三者ライセンス
DMX Work Studio には、オープンソースライセンスのソフトウェア部品が含まれます。このページでは部品の一覧、ソースコードの入手先、LGPL に基づく Qt ライブラリの差し替え方法を案内します。
同じ情報はアプリの中にもあります。Settings > About >「Open source notices…」で、お使いの版の THIRD_PARTY_NOTICES.txt と QT_REPLACEMENT_GUIDE.txt が開きます。このページとお使いの版のファイルに違いがある場合は、お使いの版のファイルが正です。
部品とライセンス
| 部品 | ライセンス | 著作権者 |
|---|---|---|
| Qt 6 | LGPL-3.0 | The Qt Company Ltd. |
| Qt for Python (PySide6, shiboken6) | LGPL-3.0 | The Qt Company Ltd. |
| Python | PSF License | Python Software Foundation |
| psutil | BSD-3-Clause | Giampaolo Rodola |
| Rust コアエンジンが使用する crates | MIT / Apache-2.0(notices file 参照) | 各著作者 |
| IBM Plex Sans/IBM Plex Sans JP | SIL Open Font License 1.1 | IBM Corp. |
LGPL 部品のソースコード
| DMX Work Studio | Qt / PySide6 | Qt ソース | PySide6 / shiboken6 ソース |
|---|---|---|---|
| 0.8.9(macOS) | 6.11.1 | 公式のソース — https://download.qt.io/official_releases/qt/6.11/6.11.1/single/ | 公式のソース — https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-6.11.1-src/ |
| 0.8.9(Windows) | 6.11.1 | 公式のソース — https://download.qt.io/official_releases/qt/6.11/6.11.1/single/ | 変更版 — https://github.com/rise-co-ltd/dmxworkstudio-pyside6-source(リリース pyside6-6.11.1-limitedapi312) |
各行は、その版に実際に入っている Qt/PySide6 の版と入手先を記録します。古い行は残します。
Windows 版(0.8.9 以降)に含まれる PySide6 と shiboken6 は、当社が Qt for Python の 公式ソースに小さな変更を加えて組み直したものです。変更点は、組み立て時に使う Python の Limited API の水準を 3.10 から 3.12 に引き上げたことです (組み立て設定の 4 か所・各 1 行、2026-10-04 に変更)。 変更内容と組み方を含むソース一式は、次の場所で公開しています。 https://github.com/rise-co-ltd/dmxworkstudio-pyside6-source Qt ライブラリ本体は、The Qt Company の公式のものを変更せずに使っています。 Mac 版は、公式の PySide6 を変更せずに使っています。
Qt ライブラリを差し替えて使う方法
始める前に(ここを外すと動きません)
- PySide6 一式をまとめて、同じ版で入れ替えてください。一式とは、Qt ライブラリ、
Qt のプラグイン、PySide6 のバイナリ(Qt*.abi3.so / *.pyd、libpyside6 /
pyside6*.dll)、shiboken6 のバイナリです。
Qt 6 はシンボル名に版の末尾の数字まで埋め込んでいるため、Qt ライブラリだけを
別の版(例: 6.11.2 の箱に 6.11.1)に替えると起動しません。同じ版のソースから
自分でビルドした Qt なら、Qt ライブラリだけの差し替えもできます。
- アプリに入っている Python の版(macOS = Contents/Frameworks/Python.framework、
Windows = _internal/python3XX.dll)に合う PySide6 一式を選んでください。
PyPI の PySide6 6.x(abi3)は Python 3.10 以降に対応しています。
- 作業はアプリの複製で行い、元のアプリは残してください。
- 差し替えた版の動作は、当社(有限会社ライズ)の保証・サポートの対象外です。
うまく動かないときは元のアプリに戻してください。
- Windows 版:同梱の PySide6/shiboken6 を公式の Qt for Python に差し替えると、
この版に入っている不具合(PYSIDE-3424)の回避が外れます。
macOS
Apple の標準コマンド(ターミナル、codesign、xattr)だけで行えます。
開発者登録も Xcode も要りません。
入れ替える場所(DMXworkStudio.app の中)
1. Contents/Frameworks/PySide6/Qt/lib/<名前>.framework/Versions/A/<名前>
2. Contents/Frameworks/PySide6/Qt/plugins/**/*.dylib
3. Contents/Frameworks/PySide6/Qt*.abi3.so
4. Contents/Frameworks/PySide6/libpyside6.abi3.*.dylib
5. Contents/Frameworks/shiboken6/libshiboken6.abi3.*.dylib と Shiboken.abi3.so
★ファイル(中身)だけを上書きしてください。.framework のフォルダごと置き換えると、
あとの署名がライブラリ本体に入らず、起動しません(PyPI のホイールに入っている
.framework フォルダは、macOS の形式として不完全なためです)。
手順は英語の部分の 1〜6 と同じです(コマンドは共通)。
- 「ローカルネットワーク上のデバイスを見つけることを許可しますか?」が出たら[許可]。
許可しないと Art-Net / sACN の送受信ができません(署名し直したアプリは macOS から
別アプリと見なされるため、もう一度聞かれます)。
- 「開いていません/検証できませんでした」が出たら、手順 5 をやり直してください。
それでも出る場合は[完了]を押してから、システム設定 > プライバシーとセキュリティ
を開き、下の方に出る「このまま開く」を押してください。[ゴミ箱に入れる]は
押さないでください。
- 署名し直したアプリは Apple の公証(notarization)が外れます。これは正常です。
確かめ方: ⚙ > Settings > About の「Built with Qt(R) …」の数字が、実際に読み込まれて
いる Qt の版です。
Windows
ZIP 版(DMXworkStudio.exe が入った DMXworkStudio フォルダ)
Qt / PySide6 のファイルは DMXworkStudio\_internal\PySide6\(Qt6*.dll、plugins\、
*.pyd、pyside6*.dll)と DMXworkStudio\_internal\shiboken6\ にあります。
1. DMXworkStudio フォルダを丸ごと複製します。
2. 入れ替える一式を用意して展開します(PyPI のホイールなら win_amd64 のもの。
.whl は ZIP 形式です)。
3. 複製の中の同じ名前のファイルを上書きします。
4. 複製の DMXworkStudio.exe を起動します。署名し直す手順は要りません。
フォルダを別の場所へ複製すると、初回の起動やテスト送信の時に、Windows の
通信許可画面が改めて出ることがあります。
5. 上と同じく About で版を確かめます。About で確認できるのは Qt の版番号です。
同じ版の部品に差し替えた場合、版番号の表示は変わりません。
Microsoft Store / MSIX 版
インストールされた MSIX パッケージはその場で書き換えられません。差し替えて
使う場合は ZIP 版を使ってください。
ストア版(App Store・TestFlight・Microsoft Store)
ストアからインストールしたアプリは、その場で書き換えることができません。Qt ライブラリを差し替えてお使いになりたい場合は、/support に記載の連絡先までご連絡ください。お使いの版と同じ版の、差し替えが可能な形式のアプリを無償でお渡しします。ご連絡の際は、About に表示されている版番号と、インストールしたストア(App Store/TestFlight/Microsoft Store)をお知らせください。差し替えの手順は、このページの「Qt ライブラリを差し替えて使う方法」のとおりです。
ライセンス全文
- GNU Lesser General Public License v3:https://www.gnu.org/licenses/lgpl-3.0.html
- GNU General Public License v3:https://www.gnu.org/licenses/gpl-3.0.html
- その他のライセンス全文は、アプリ内の THIRD_PARTY_NOTICES.txt に収録しています。