IPhone iOS 15.5 issue

Arif Butt

Member
Hi there
The customer is experiencing issue in video chat api with one side voice/video on different models of iPhone with updated iOS 15.5.

Kindly assist on how to fix this.. new WCS build is being used.

Thnx
AB
 

Max

Administrator
Staff member
Good day.
The customer is experiencing issue in video chat api with one side voice/video on different models of iPhone with updated iOS 15.5.
We've tested Video Chat example with WCS build 5.2.1249 and WebSDK build 2.0.219 (the latest available public builds), and it's working between iOS Safari 15.5 and Win 10 Chrome 102: both streams are playing (from Safari and from Chrome) on both sides.
Please check if the problem is reproducing in Video Chat example. If not, please modify example code minimally to reproduce the issue and send using this form.
 

Arif Butt

Member
It seems like on some less bandwidth connectivity the iPhone safari behaves differently and causes streaming issues where as chrome works ok in same situations. .

Is there any way to control/optimize this behaviour?

Thnx
AB
 

Max

Administrator
Staff member
It seems like on some less bandwidth connectivity the iPhone safari behaves differently and causes streaming issues where as chrome works ok in same situations.
If Chrome works normally on PC using wired connection or a stable WiFi, and Safari on iPhone has issues, please change a network used on mobile device (from 3G to 4G/LTE, from LTE to WiFi). If this is not possible, you have to use TCP transport to reduce packet loss:
Code:
    room.publish({
        display: display,
        constraints: constraints,
        record: false,
        receiveVideo: false,
        receiveAudio: false,
        transport: "TCP"
        ...
    });
Code:
        var options = {
            unmutePlayOnStart: true,
            constraints: {
                audio: {
                    deviceId: 'default'
                }
            },
            transport: "TCP"
        };
        ...
        participant.getStreams()[0].play(display, options).on(STREAM_STATUS.PLAYING, function (playingStream) {
            ...
        });
Also, you can use a lower publishing resolution and bitrate
Code:
    var constraints = {
        audio: true,
        video: {
            width: 640,
            height: 360,
            maxBitrate: 500
        }
    };
    ...
    room.publish({
        display: display,
        constraints: constraints,
        record: false,
        receiveVideo: false,
        receiveAudio: false,
        transport: "TCP"
        ...
    });
 

Arif Butt

Member
Hi there

We have tried the TCP transport earlier and it did not help, here is the config values we are using, kindly suggest any improvements if possible related to iPhone - iOS ...

#codecs
codecs =opus,alaw,ulaw,g729,speex16,g722,mpeg4-generic,telephone-event,vp8,h264,flv,mpv
codecs_exclude_sip =mpeg4-generic,flv,mpv
codecs_exclude_streaming =flv,telephone-event
codecs_exclude_sip_rtmp =opus,g729,g722,mpeg4-generic,vp8,mpv
record_mixer_streams=true
#websocket ports
ws.port =8080
wss.port =8443

rtc_ice_add_local_interface=true

stream_record_policy=template
stream_record_policy_template={mediaSessionId}

# webrtc_cc_min_bitrate=500000
# webrtc_cc_max_bitrate=1000000

webrtc_cc2_twcc=false

streaming_video_decoder_fast_start=false

enable_empty_shift_writer=true

mixer_auto_start=true
mixer_mcu_audio=true
mixer_mcu_video=true

record_mixer_streams=true
mixer_video_width=640
mixer_video_height=480
mixer_video_bitrate_kbps=500
mixer_voice_activity=false

mp4_container_moov_first_reserve_space=true
mp4_container_moov_reserved_space_size=2048
file_recorder_thread_pool_max_size=4


Thnx
AB
 

Max

Administrator
Staff member
We have tried the TCP transport earlier and it did not help
Then, you have to use a better channel or a lower resolution (no more than 360p, 240p or 180p)
here is the config values we are using, kindly suggest any improvements if possible related to iPhone - iOS
This is publishing and playing client channel problem. Unfortunately, there are no server settings to tune in this case.
 
Top