diff --git a/web/kvm/index.html b/web/kvm/index.html
index f35cc4ce..c06f0b3d 100644
--- a/web/kvm/index.html
+++ b/web/kvm/index.html
@@ -118,7 +118,7 @@
- | Image quality: |
+ JPEG quality: |
|
@@ -131,6 +131,17 @@
0 |
+
+ | Video mode: |
+
+
+
+
+
+
+
+ |
+
@@ -1745,6 +1756,7 @@
Stefan Bautz
Stefan Müller
Stefan Stemmer
+ Stefan Vaillant
Stephan Schmidt
Steve Kerr
Steve Ovens
diff --git a/web/kvm/navbar-system.pug b/web/kvm/navbar-system.pug
index 186bdef7..aa273ff5 100644
--- a/web/kvm/navbar-system.pug
+++ b/web/kvm/navbar-system.pug
@@ -15,13 +15,21 @@ li(class="right")
td Resolution:
td #[select(disabled data-dont-hide-menu id="stream-resolution-selector")]
tr(id="stream-quality" class="feature-disabled")
- td Image quality:
+ td JPEG quality:
td #[input(disabled type="range" id="stream-quality-slider" class="slider")]
td(id="stream-quality-value" class="value") 80%
tr
td Max FPS:
td #[input(disabled type="range" id="stream-desired-fps-slider" class="slider")]
td(id="stream-desired-fps-value" class="value") 0
+ tr(id="stream-mode" class="feature-disabled")
+ td Video mode:
+ td
+ div(class="radio-box")
+ input(checked type="radio" id="stream-mode-radio-mjpeg" name="stream-mode-radio" value="mjpeg")
+ label(for="stream-mode-radio-mjpeg") MJPEG / HTTP
+ input(type="radio" id="stream-mode-radio-janus" name="stream-mode-radio" value="janus")
+ label(for="stream-mode-radio-janus") H.264 / WebRTC
hr
div(class="buttons buttons-row")
button(data-force-hide-menu id="show-stream-button" class="row33") • Show stream
diff --git a/web/share/js/kvm/stream.js b/web/share/js/kvm/stream.js
index 7371c2e5..7f5e5207 100644
--- a/web/share/js/kvm/stream.js
+++ b/web/share/js/kvm/stream.js
@@ -25,6 +25,8 @@
import {tools, $} from "../tools.js";
import {wm} from "../wm.js";
+
+
var _Janus = null;
@@ -213,6 +215,7 @@ export function Streamer() {
let supported = !!window.RTCPeerConnection;
let set_enabled = function() {
__janus_enabled = (enabled && supported && _Janus !== null);
+ tools.featureSetEnabled($("stream-mode"), __janus_enabled);
tools.info(`Stream: Janus WebRTC state: enabled=${enabled}, supported=${supported}, imported=${!!_Janus}`);
self.setState(__state);
};