Не работает стрим на ios девайсах

Viktor

New Member
Скажите пожалуйста что сделать чтобы на ios устройствах работал стрим. Сейчас на сафари запрашивает разрешение на камеру но ничего не показывает. На хром даже не спрашивает разрешения.
Но на андроид устройствах все работает хорошо.
Спасибо
 

Max

Administrator
Staff member
Добрый день.
Сегодня тестировали здесь: https://demo.flashphoner.com/client...ming/two_way_streaming/two_way_streaming.html
Все работало в iOS Safari 11.

В iOS Safari 9 и 10 работать не будет, т.к. там не поддерживается WebRTC - технология захвата видео.
В Chrome под iOS также работать не будет потому что не поддерживается WebRTC.
Будет работать только в Safari 11.
 

Viktor

New Member
Добрый день.
Сегодня тестировали здесь: https://demo.flashphoner.com/client...ming/two_way_streaming/two_way_streaming.html
Все работало в iOS Safari 11.

В iOS Safari 9 и 10 работать не будет, т.к. там не поддерживается WebRTC - технология захвата видео.
В Chrome под iOS также работать не будет потому что не поддерживается WebRTC.
Будет работать только в Safari 11.
Вот и мы пробовали на iOS 11 - не работает. Какие есть варианты решения?
 

Max

Administrator
Staff member
На iOS 11.4.1 Safari также нет проблем. Стримы работают.
 

Viktor

New Member
Last edited:

Viktor

New Member
Проводили дебагинг. И вот что нашли. Подскажите пожалуйста что с этим делать?
По факту стрим отображается на тестовой страничке (то есть он идет), но не отображается на iPhone.
 

Attachments

Max

Administrator
Staff member

Viktor

New Member
На скриншоте модифицированный код.
Дайте пожалуйста скриншот с дебагом немодифицированного кода нашего примера Two Way Steraming
https://demo.flashphoner.com/client...ming/two_way_streaming/two_way_streaming.html
https://demo.flashphoner.com/client2/examples/demo/streaming/two_way_streaming/two_way_streaming.js
Или с вашего сервера: https://host:8888 Demo Two Way Streaming.
 

Attachments

Max

Administrator
Staff member
Этот скрин был снят когда демо-сервер был в нерабочем состоянии.
Сейчас он выглядит так:

upload_2018-8-15_17-45-33.png
 

Viktor

New Member
Вот еще что нашли. По ссылке которую Вы дали прописано атрибут playsinline....
У нас же его в Сафари на iOS нет. В чем может быть причина? это же должно быть оп умолчанию при инициализации плагина...
 

Attachments

Max

Administrator
Staff member
Возможно у вас старая версия Web SDK, в которой этот параметр не проставлялся.
В последних версиях он везде должен проставляться. И да, он необходим для воспроизведения на iOS Safari 11.
Последние сборки Web SDK
https://flashphoner.com/downloads/builds/flashphoner_client/wcs_api-2.0/?C=M;O=D
Исходники:
https://github.com/flashphoner/flashphoner_client/commits/wcs_api-2.0
Code:
var playFirstVideo = function (display, isLocal, src) {
    if (!getCacheInstance(display)) {
        var video = document.createElement('video');
        video.setAttribute("playsinline", "");
        video.setAttribute("webkit-playsinline", "");
        display.appendChild(video);
        video.id = uuid_v1() + (isLocal ? LOCAL_CACHED_VIDEO : REMOTE_CACHED_VIDEO);
        if (src) {
            video.src = src;
        } else {
            video.src = "../../dependencies/media/preloader.mp4";
        }
        video.play();
    }
};
https://github.com/flashphoner/flashphoner_client/blob/wcs_api-2.0/src/webrtc-media-provider.js#L963

Метод playFirstVideo обязательно вызывать по клику (действиям пользователя).
Это видно в нашем примере. Без клика iOS не даст запустить видео.
 
Top