Stream replace

R2D2

Member
Побывали на различных устройствах (xiaomi mi5, xiaomi mi8se, huawei, lumigon и других) со своим приложением, а так же приложением Streaming-min(из магазина приложений), а так же в скомпилированом примере media-devices, плюс на компьютере при помощи VLC - везде накапливается задержка.
Могу написать в личку ip адрес сервера - для вашей проверки (возможно к нас какие то настройки не такие как у вас)
 

R2D2

Member
После установки и снятия флагов :
#disable_streaming_proxy=true
#video_encoder_h264_gop=60
задержка исчезла....не понимаю...

кстати, почему то теперь два файла phlashphone.properties:
* один в каталоге \cong
* другой в каталоге \server\conf
какой за что отвечает?

Дело в том что нам нужно чтоб у нас желательно не было транскодирования, и создавался стрим с приложения webrtc H264б,PCMA.
вроде мы все запрещаем, а все равно с приложения создается поток, то в VP8 c G722, то еще как нибудь....до экспериментов и обновления до последней версии все работало хорошо но с задержкой....
 

Max

Administrator
Staff member
Мы заметили при проверке, что задержки нет как при публикации WebRTC из Android-приложения, так и при публикации из веб-приложения Two Way Streaming.
кстати, почему то теперь два файла phlashphone.properties:
Попробуйте сделать чистую установку последней версии без удаления предыдущей установки, как описано здесь, и проверить, будет ли воспроизводиться проблема на чистой установке. Возможно, при обновлении поверх установленной версии что-то пошло не так.
Дело в том что нам нужно чтоб у нас желательно не было транскодирования, и создавался стрим с приложения webrtc H264,PCMA.
Попробуйте явно запретить использование любых кодеков при стриминге, кроме нужных
Code:
codecs_exclude_streaming =opus,ulaw,g729,speex16,g722,mpeg4-generic,telephone-event,vp8,flv,mpv
 

R2D2

Member
Я не могу просто так взять и поставить чистую новую последнюю версию - т.к у нас помимо WCS крутится довольно тяжелая собственная часть, которая общается с WCS постредством REST и RTMP. Установка настройка достаточно тяжелый процесс....
Надо разобраться что за каталог server и что за файл настроек в нем???
 
Last edited:

R2D2

Member
Кодеки мы и так все запретили кроме

codecs =alaw,h264,vp8,flv,mpv
codecs_exclude_streaming =flv

раньше работало, а сейчас видимо что то не так работает, и WEBRTC стрим бывает G722...почему неизвестно....
 

Max

Administrator
Staff member
Надо разобраться что за каталог server и что за файл настроек в нем???
Этот каталог - часть установочного пакета WCS, его содержимое скрипт установки копирует в целевой каталог установки (/usr/local/FlashphonerWebCallServer). Возможно, при очередном обновлении Вы распаковали установочный пакет в целевой каталог.
Во время работы сервер ищет конфиги только в каталоге /usr/local/FlashphonerWebCallServer/conf, обо всем прочем он не знает.
и WEBRTC стрим бывает G722
Разобраться в таких случаях обычно помогает дамп трафика, здесь описывается, как анализировать WebRTC трафик. Поле RTP пакета Payload type однозначно отображает, какой кодек был использован.
Использование кодеков можно ограничивать на стороне клиента при помощи параметра stripCodecs в WebSDK или аналогичного метода в AndroidSDK. пример в коде приложения Media Devices:
Code:
StreamOptions streamOptions = new StreamOptions(streamName);
...
String[] stripCodec = {(String) mStripPlayerCodec.getSpinner().getSelectedItem()};
streamOptions.setStripCodecs(stripCodec);
/**
* Stream is created with method Session.createStream().
*/
playStream = session.createStream(streamOptions);
 ...
 

R2D2

Member
Да я пробывал ограничить со стороны приложения через
streamOptions.setStripCodecs(stripCodec);
но стрим не публиковался....
 
Last edited:

R2D2

Member
Как сделать чтобы Android приложение знало с каким кодеком произведена публикация?
 

Max

Administrator
Staff member
Как сделать чтобы Android приложение знало с каким кодеком произведена публикация?
При помощи REST API запроса /rest-api/stream/find, например:
- запрос
Code:
http://wcs:8081/rest-api/stream/find
{"name":"test"}
- ответ
Code:
[
    {
        "appKey": "defaultApp",
        "sessionId": "sessionId",
        "mediaSessionId": "6650f550-e7c7-11e8-a07d-835676b367f1",
        "name": "test",
        "published": true,
        "hasVideo": true,
        "hasAudio": true,
        "status": "PUBLISHING",
        "sdp": "sdp",
        "audioCodec": "opus",
        "videoCodec": "H264",
        "record": false,
        "width": 320,
        "height": 240,
        "bitrate": 0,
        "minBitrate": 0,
        "maxBitrate": 0,
        "quality": 0,
        "createDate": 1542170424884,
        "mediaProvider": "WebRTC",
        "origin": "https://wcs:8888"
    }
]
 
Top