From 65c1da81a181c9fa912511f44f812b76b4c4150c Mon Sep 17 00:00:00 2001 From: Dele Olajide Date: Wed, 30 Dec 2020 22:53:00 +0000 Subject: [PATCH] fix #163 - Support VP9 codec --- .../openfire/plugin/ofmeet/JitsiJicofoWrapper.java | 6 +++++- pade/changelog.html | 7 ++++--- pade/src/i18n/pade_i18n.properties | 1 + pade/src/web/ofmeet-settings.jsp | 14 +++++++++++--- 4 files changed, 21 insertions(+), 7 deletions(-) diff --git a/ofmeet/src/main/java/org/jivesoftware/openfire/plugin/ofmeet/JitsiJicofoWrapper.java b/ofmeet/src/main/java/org/jivesoftware/openfire/plugin/ofmeet/JitsiJicofoWrapper.java index 65f98d70..b18faa62 100644 --- a/ofmeet/src/main/java/org/jivesoftware/openfire/plugin/ofmeet/JitsiJicofoWrapper.java +++ b/ofmeet/src/main/java/org/jivesoftware/openfire/plugin/ofmeet/JitsiJicofoWrapper.java @@ -88,8 +88,8 @@ public synchronized void initialize( File pluginDirectory) throws Exception final String jicofoHomePath = pluginDirectory.getPath() + File.separator + "classes" + File.separator + "jicofo"; final File props_file = new File(jicofoHomePath + File.separator + "config" + File.separator + "sip-communicator.properties"); Properties props = new Properties(); - props.load(new FileInputStream(props_file)); + props.setProperty("org.jitsi.jicofo.BRIDGE_MUC", "ofmeet@" + MAIN_MUC); props.setProperty("org.jitsi.jicofo.jigasi.BREWERY", "ofgasi@" + MAIN_MUC); props.setProperty( "org.jitsi.jicofo.ALWAYS_TRUST_MODE_ENABLED", "true" ); @@ -97,6 +97,10 @@ public synchronized void initialize( File pluginDirectory) throws Exception props.setProperty( "org.jitsi.jicofo.SERVICE_REDISCOVERY_INTERVAL", "60000" ); props.setProperty( "org.jitsi.jicofo.DISABLE_AUTO_OWNER", Boolean.toString( !JiveGlobals.getBooleanProperty( "ofmeet.conference.auto-moderator", true ) ) ); + props.setProperty( "org.jitsi.jicofo.ENABLE_H264", Boolean.toString( !JiveGlobals.getBooleanProperty( "ofmeet.jicofo.force.vp9", false ) ) ); + props.setProperty( "org.jitsi.jicofo.ENABLE_VP8", Boolean.toString( !JiveGlobals.getBooleanProperty( "ofmeet.jicofo.force.vp9", false ) ) ); + props.setProperty( "org.jitsi.jicofo.ENABLE_VP9", Boolean.toString( JiveGlobals.getBooleanProperty( "ofmeet.jicofo.force.vp9", false ) ) ); + Log.debug("sip-communicator.properties"); for (Object key: props.keySet()) { diff --git a/pade/changelog.html b/pade/changelog.html index 8a422d5f..6dad5e56 100644 --- a/pade/changelog.html +++ b/pade/changelog.html @@ -46,15 +46,16 @@

1.3.0 -- December 31, 2020

1.2.2 -- December 20, 2020

diff --git a/pade/src/i18n/pade_i18n.properties b/pade/src/i18n/pade_i18n.properties index 412262d3..2ed7f305 100644 --- a/pade/src/i18n/pade_i18n.properties +++ b/pade/src/i18n/pade_i18n.properties @@ -145,6 +145,7 @@ config.page.configuration.ofmeet.title=Application Configuration config.page.configuration.ofmeet.webinar.enabled_desc=Enable Webinar Mode - Everyone is a listener by default. Use config.webinar=false in URL to become a presenter config.page.configuration.ofmeet.websockets.enabled=Enable support for WebSocket connections instead of default Bidirectional-streams Over Synchronous HTTP (BOSH). config.page.configuration.ofmeet.disableRtx.enabled_desc=Enable RTX +config.page.configuration.ofmeet.jicofo.force.vp9=Force VP9 Codec. Please note that this will disable H264 and VP8 config.page.configuration.ofmeet.useipv6.enabled=Enable IPv6 config.page.configuration.ofmeet.useipv6.enabled_desc=Enable webrtc to use IPv6 config.page.configuration.ofmeet.useipv6.disabled=Disable IPv6 diff --git a/pade/src/web/ofmeet-settings.jsp b/pade/src/web/ofmeet-settings.jsp index 1043d8ca..dd56859b 100644 --- a/pade/src/web/ofmeet-settings.jsp +++ b/pade/src/web/ofmeet-settings.jsp @@ -44,6 +44,7 @@ final boolean conferenceadmin = ParamUtils.getBooleanParameter( request, "conferenceadmin" ); final boolean securityenabled = ParamUtils.getBooleanParameter( request, "securityenabled" ); final boolean disableRtx = !ParamUtils.getBooleanParameter( request, "enableRtx" ); + final boolean forceVp9 = ParamUtils.getBooleanParameter( request, "forceVp9" ); final String authusername = request.getParameter( "authusername" ); final String sippassword = request.getParameter( "sippassword" ); final String server = request.getParameter( "server" ); @@ -165,7 +166,7 @@ JiveGlobals.setProperty( "voicebridge.default.proxy.sipserver", server ); JiveGlobals.setProperty( "voicebridge.default.proxy.outboundproxy", outboundproxy ); JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.websockets", Boolean.toString( websockets ) ); - JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.useipv6", Boolean.toString( useIPv6 ) ); + JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.useipv6", Boolean.toString( useIPv6 ) ); JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.usenicks", Boolean.toString( useNicks ) ); JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.sip.username", clientusername ); JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.sip.password", clientpassword ); @@ -182,7 +183,8 @@ JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.jvb.jvm.customOptions", jvmJvb ); JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.focus.jvm.customOptions", jvmJicofo ); JiveGlobals.setProperty( "org.jitsi.videobridge.ofmeet.jigasi.jvm.customOptions", jvmJigasi ); - + + JiveGlobals.setProperty( "ofmeet.jicofo.force.vp9", Boolean.toString( forceVp9 ) ); JiveGlobals.setProperty( "ofmeet.max.full.resolution.participants", maxFullResolutionParticipants ); JiveGlobals.setProperty( "ofmeet.min.height.for.quality.level.low", minHeightForQualityLow ); JiveGlobals.setProperty( "ofmeet.min.height.for.quality.level.std", minHeightForQualityStd ); @@ -299,7 +301,13 @@ - + + + + + + +