Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

RTP activity can be checked for publishing streams only, not for playing streams.

Disable tracks activity checking by stream name

Since build 5.2.1784 it is possible to disable video and audio tracks activity checking for the streams with names matching a regular expression

Code Block
themeRDark
rtp_activity_audio_exclude=stream1
rtp_activity_video_exclude=stream1

The feature may be useful for streams in which a media traffic can stop for a long time, for example, screen sharing streams from an application window

Code Block
themeRDark
rtp_activity_audio_exclude=.*-screen$
rtp_activity_video_exclude=.*-screen$

In this case tracks activity checking will not be applied to the tracks named like conference-123-user-456-screen 

If Chrome browser sends empty video due to web camera conflict

...

Code Block
languagejs
themeRDark
    session.createStream({
        name: streamName,
        display: localVideo,
        cacheLocalResources: true,
        receiveVideo: false,
        receiveAudio: false,
        videoContentHint: "detail"
        ...
    }).publish();

By default, this In WebSDK builds before 2.0.242 this option is set to detail by default and forces browsers to keep the publishing resolution as set in constraints. However, browser can drop FPS in this case when publishing stream from som USB web cameras. If FPS should be kept mo matter to resolution, the option should be set to to motion

Code Block
languagejs
themeRDark
    session.createStream({
        name: streamName,
        display: localVideo,
        cacheLocalResources: true,
        receiveVideo: false,
        receiveAudio: false,
        videoContentHint: "motion"
        ...
    }).publish();...
    }).publish();

Since WebSDK build 2.0.242, videoContentHint  is set to motion by default. The detail or text values should be set only for screen sharing streaming in browser.

Since WebSDK build 2.0.204 videoContentHint selection is available in Media Device example

...

Symptoms: webpage crashes in iOS Safari 15.1 when stream publishing is started (Webkit bugs https://bugs.webkit.org/show_bug.cgi?id=232381 and https://bugs.webkit.org/show_bug.cgi?id=231505)

Solution:

a) enable image orientation extension support on client side in iOS Safari

Code Block
languagejs
themeRDark
session.createStream({
    name: streamName,
    ...
    cvoExtension: true
}).publish();

and in WCS builds before 5.2.1074 disable RTP bundle support

Code Block
themeRDark
rtp_bundle=false

Since WCS build 5.2.1074RTP bundle may not be disabledb) use VP8 to publish a streamin iOS Safari 15.1 when stream publishing is started (Webkit bugs https://bugs.webkit.org/show_bug.cgi?id=232381 and https://bugs.webkit.org/show_bug.cgi?id=231505)

Solution:

a) enable image orientation extension support on client side in iOS Safari

Code Block
languagejs
themeRDark
session.createStream({
    name: streamName,
    ...
    stripCodecscvoExtension: "H264"true
}).publish();

18. In Safari 16 video can be switched to a full screen mode only if a standard video controls are enabled for HTML5 video element

Symptoms: video is not displaying when switched to full screen mode, but audio still playing, after a couple of subsequents switches the page may hang

Solution: update Web SDK to build 2.0.224 and enable standard controls in player with useControls stream option:and in WCS builds before 5.2.1074 disable RTP bundle support

Code Block
themeRDark
rtp_bundle=false

Since WCS build 5.2.1074RTP bundle may not be disabled

b) use VP8 to publish a stream

Code Block
languagejs
themeRDark
function playStream(session) {
    var streamName = $('#streamName').val();
    var options = .createStream({
        name: streamName,
        display: remoteVideo,
        useControls: true
    };
    ...
    stream = session.createStream(options).on(STREAM_STATUS.PENDING, function (stream) {
        ...
    });
    stream.play();
}stripCodecs: "H264"
}).publish();