Skip to content

Commit 8d314bc

Browse files
committed
18.0.0.0beta3 release
1 parent 22ba66c commit 8d314bc

File tree

12 files changed

+41
-282
lines changed

12 files changed

+41
-282
lines changed

.github/workflows/push-master.bak

Lines changed: 0 additions & 252 deletions
This file was deleted.

.github/workflows/push-master.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: HyperHDR CI Build
33
on: [push]
44

55
env:
6-
USE_CACHE: "1"
6+
USE_CACHE: "0"
77
RESET_CACHE: "0"
88

99
jobs:
@@ -122,7 +122,7 @@ jobs:
122122
# Install deps
123123
- name: Install deps
124124
shell: bash
125-
run: brew update && brew install qt@6 xz ccache protobuf
125+
run: brew update && brew install qt@6 xz ccache
126126

127127
# Build process
128128
- name: Build packages

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,15 @@ SSH and SPI are enabled on default.
6262
- Direct support for USB grabbers under Windows 10, Linux and macOS (really fast & of course multi-threaded)
6363
- Support for software screen grabbers: DirectX11, CoreGraphics, X11
6464
- New software grabber for Linux: Wayland (pipewire/portal) which also means support for **Ubuntu 22.04 LTS** :new:
65+
- Registering HyperHDR services with the MQTT broker :new:
66+
- Frame Buffer software screen grabber (Linux) :new:
67+
- Reworked network discovery service and added Windows support :new:
68+
- Improved Philips Hue wizard :new:
69+
- WLED Configuration Wizard can discover WLED devices on the network :new:
70+
- Protocol buffers HDR tone mapping :new:
71+
- Replaced protobuf with a lightweight nanopb library :new:
72+
- System event support: hibernation/sleep/wake up/resume :new:
73+
- Added WLED auto-resume initialization and improved existing Philips Hue auto-resume feature :new:
6574
- Wayland grabber: support for pipewire/portal version 4 protocol persistent authentication :new:
6675
- [New fully automatic LUT calibration for HDR/SDR/YUV](https://www.hyperhdr.eu/2022/04/usb-grabbers-hdr-to-sdr-quality-test.html) :new:
6776
- 30% improved performance for MJPEG HDR mode :new:

assets/webconfig/content/overview.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -101,21 +101,21 @@ <h3 class="page-header"><i class="fa fa-heartbeat fa-fw"></i><span data-i18n="ma
101101
</div>
102102
</div>
103103
</div>
104-
<div class="d-none" id="perf_grabber_data">
104+
<div class="d-none mt-2" id="perf_grabber_data">
105105
<div class="row border-bottom fw-bold text-primary col-12">
106106
<span data-i18n="perf_usb_grabber"></span>
107107
</div>
108-
<div class="col-12 pt-1 pb-1">
108+
<div class="col-12 pt-2 pb-1">
109109
<span id="perf_usb_data_holder"></span>
110110
</div>
111111
</div>
112-
<div class="row border-bottom fw-bold">
112+
<div class="row border-bottom fw-bold mt-2">
113113
<div id="perf_instance_header" class="col-12 col-md-6 text-primary">
114114
<div class="row">
115-
<div class="col-6">
115+
<div class="col-md-6 col-xs-12">
116116
<span data-i18n="perf_usb_instance">Instance</span>
117117
</div>
118-
<div class="col-6">
118+
<div class="col-md-6 col-xs-12">
119119
⇒&nbsp;<i><span data-i18n="general_comp_SMOOTHING">Smoothing</span></i>&nbsp;⇒
120120
</div>
121121
</div>
@@ -126,7 +126,7 @@ <h3 class="page-header"><i class="fa fa-heartbeat fa-fw"></i><span data-i18n="ma
126126
</div>
127127
<div id="perf_per_instance_data_holder" class="w-100">
128128
</div>
129-
<div id="perf_per_instance_data_row" class="row">
129+
<div id="perf_per_instance_data_row" class="row mt-1 pb-1">
130130
<div class="col-12 col-sm-6 pt-1 pb-1"></div>
131131
<div class="col-12 col-sm-6 pt-1 pb-1"></div>
132132
</div>

assets/webconfig/js/overview.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ $(document).ready(function ()
130130

131131
function renderReport()
132132
{
133-
const waitingSpinner = '<i class="fa fa-spinner fa-spin"></i> ' + $.i18n("perf_please_wait");
133+
const waitingSpinner = '<i class="fa fa-spinner fa-spin ms-1"></i> ' + $.i18n("perf_please_wait");
134134
const fpsTag = '<span class="card-tools"><span class="badge bg-secondary" style="font-weight: normal;">fps</span></span>';
135135

136136
for (var i = 0; i < performance.length; i++)
@@ -145,7 +145,7 @@ $(document).ready(function ()
145145
if (curElem.type == 1)
146146
{
147147
let render = (curElem.token <= 0) ? waitingSpinner :
148-
`<span class="card-tools"><span class="badge bg-secondary" style="font-size: .9em;font-weight: normal;">${curElem.param1.toFixed(2)} fps</span></span>` +
148+
`<span class="card-tools"><span class="badge bg-secondary" style="font-size: 1em;font-weight: normal;">${curElem.param1.toFixed(2)} fps</span></span>` +
149149
` <small>&nbsp;${curElem.param2}ms</small> <i class="fa fa-clock-o" aria-hidden="true"></i> <small>${curElem.param3}</small> <i class="fa fa-long-arrow-down" aria-hidden="true"></i><i class="fa fa-long-arrow-up" aria-hidden="true"></i>`+
150150
((curElem.param4 != 0)?`, ${$.i18n("perf_invalid_frames")}: <small>${curElem.param4}</small>`:``);
151151
render += ` <span class='perf_counter small text-muted'>(${curElem.refresh})</span>`;
@@ -184,9 +184,9 @@ $(document).ready(function ()
184184

185185
if (placer != null)
186186
{
187-
let render = (curElem.token <= 0) ? ((curElem.type == 2) ? `<span class="card-tools"><span class="badge bg-danger" style="font-size: .9em;font-weight: normal;">${curElem.name}</span></span>&nbsp;` : "") + waitingSpinner : (curElem.type == 2) ?
188-
`<span class="card-tools"><span class="badge bg-danger" style="font-size: .9em;font-weight: normal;">${curElem.name}</span></span> <span class="card-tools"><span class="badge bg-secondary" style="font-size: .9em;font-weight: normal;">${curElem.param1.toFixed(2)} fps</span></span> <small>${curElem.param2}</small> <i class="fa fa-long-arrow-down" aria-hidden="true"></i><i class="fa fa-long-arrow-up" aria-hidden="true"></i>` :
189-
`<span class="card-tools"><span class="badge bg-success" style="font-size: .9em;font-weight: normal;">${curElem.name}</span></span> <span class="card-tools"><span class="badge bg-secondary" style="font-size: .9em;font-weight: normal;">${curElem.param1.toFixed(2)} fps</span></span> <small>${curElem.param3} </small><i class="fa fa-long-arrow-down" aria-hidden="true"></i>  <small>${curElem.param2}</small> <i class="fa fa-long-arrow-up" aria-hidden="true"></i>`;
187+
let render = (curElem.token <= 0) ? ((curElem.type == 2) ? `<span class="card-tools"><span class="badge bg-danger" style="font-size: 1em;font-weight: normal;">${curElem.name}</span></span>&nbsp;` : "") + waitingSpinner : (curElem.type == 2) ?
188+
`<span class="card-tools"><span class="badge bg-danger" style="font-size: 1em;font-weight: normal;">${curElem.name}</span></span> <span class="card-tools me-1"><span class="badge bg-secondary" style="font-size: 1em;font-weight: normal;">${curElem.param1.toFixed(2)} fps</span></span> <small>${curElem.param2}</small> <i class="fa fa-long-arrow-down" aria-hidden="true"></i><i class="fa fa-long-arrow-up" aria-hidden="true"></i>` :
189+
`<span class="card-tools"><span class="badge bg-success" style="font-size: 1em;font-weight: normal;">${curElem.name}</span></span> <span class="card-tools me-1"><span class="badge bg-secondary" style="font-size: 1em;font-weight: normal;">${curElem.param1.toFixed(2)} fps</span></span> <small>${curElem.param3} </small><i class="fa fa-long-arrow-down" aria-hidden="true"></i>  <small>${curElem.param2}</small> <i class="fa fa-long-arrow-up" aria-hidden="true"></i>`;
190190
render += ` <span class='perf_counter small text-muted'>(${curElem.refresh})</span>`;
191191
placer.innerHTML = render;
192192
}

sources/api/JsonAPI.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1888,7 +1888,7 @@ void JsonAPI::handleTunnel(const QJsonObject& message, const QString& command, i
18881888

18891889
if (service == "hue")
18901890
{
1891-
if (path.indexOf("/api") != 0)
1891+
if (path.indexOf("/api") != 0 || ip.indexOf("/") >= 0)
18921892
{
18931893
sendErrorReply("Invalid path", full_command, tan);
18941894
return;

sources/base/HyperHdrIManager.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ void HyperHdrIManager::handleStarted()
273273

274274
_startQueue.removeAll(instance);
275275
_runningInstances.insert(instance, hyperhdr);
276-
emit instanceStateChanged(InstanceState::H_STARTED, instance);
276+
emit instanceStateChanged(InstanceState::H_STARTED, instance, _instanceTable->getNamebyIndex(instance));
277277
emit change();
278278

279279
if (_pendingRequests.contains(instance))

sources/hyperhdr/hyperhdr.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,11 @@ void HyperHdrDaemon::startNetworkServices()
366366
#endif
367367
}
368368

369+
quint16 HyperHdrDaemon::getWebPort()
370+
{
371+
return (quint16)getSetting(settings::type::WEBSERVER).object()["port"].toInt(8090);
372+
}
373+
369374
void HyperHdrDaemon::handleSettingsUpdateGlobal(settings::type settingsType, const QJsonDocument& config)
370375
{
371376
if (settingsType == settings::type::SYSTEMCONTROL || settingsType == settings::type::VIDEOCONTROL || settingsType == settings::type::VIDEOGRABBER)

sources/hyperhdr/hyperhdr.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ public slots:
139139
void freeObjects();
140140
void enableCEC(bool enabled, QString info);
141141
void keyPressedCEC(int keyCode);
142+
quint16 getWebPort();
142143

143144
signals:
144145

0 commit comments

Comments
 (0)