Ошибки в обс WriteN, RTMP send error 10060 10038 10054

Max

Administrator
Staff member
Единственное, что отметили - на Origin в РФ эта проблема возникает реже, чем в Польше.
Уточните, а клиенты, для которых возникает эта проблема, публикуют из РФ?
 

Max

Administrator
Staff member
Здравствуйте.

Текущая идея в том, что RTMP трафик фильтруется по этому направлению.
Предложение - настроить nginx как reverse-proxy для RTMPS потоков и публиковать с OBS поток RTMPS на nginx и далее на WCS

OBS > rtmps://nginx:1936 > rtmp://localhost:1935

Таким образом, отправляем зашифрованный поток и смотрим будут ли проблемы в этом случае.

Мы у себя настроим nginx и проверим этот кейс.
Можете сделать это параллельно или подождать наших результатов.
 

ser

Member
добавили в nginx
Code:
stream {
  server {
    listen            1937 ssl;
    proxy_pass        127.0.0.1:1935;
    ssl_certificate /cert/cert.crt;
    ssl_certificate_key /cert/cert.key;
  }
}
в обсе получил ошибку
1727179018010.png


при эти публикация через ffmpeg работает

почему обс не доверяет сертификату ?
я пробовал менять серт не помогло
 

Max

Administrator
Staff member
Cтрим через домен идет?
rtmps://my.domain.com:1937
Сертификат cert.crt должен быть для домена my.domain.com
 

ser

Member
Cтрим через домен идет?
пробовали по-разному
в обсе никак не хочет

может из-за доверия к серту ?

через ффмег работает по ип и домену одинаково
Code:
ffmpeg -re -stream_loop -1 -i 2.mp4 \
  -vcodec copy -acodec copy \
  -f mpegts  -f flv rtmps://82.00.00.111:1937/app/stream
 
Last edited:

Max

Administrator
Staff member
Выглядит так, что корневой сертификат вашего провайдера AlphaSSL CA не известен на этой операционной системе и его надо руками импортировать в "Trusted Root Certification Authorities" чтобы это заработало. И это проблема, т.к. операционные системы часто имеют определенный список корневых сертификатов, и новые подтягивают только при обновлении.

Мы предполагали что Facebook предоставляет только rtmps:// эндпоинт для стриминга и поэтому OBS должна поддерживать стриминг с доверенными сертификатами и без (как ffmpeg, который похоже не проверяет сертификат).
 

Max

Administrator
Staff member
Здесь пишут что OBS можно запустить с флагом
--ignore-certificate-errors

к сожалению, это только запрос на фичу.
На форуме OBS пишут, что в таких случаях помогает только обновление или импорт корневых сертификатов.
 
Last edited:

ser

Member
по итогу сделали
rtp_activity_timeout=10

и добавили таймаут с нашей стороны для переподключения когда был обрыв обса.
понять что это обрыв можно по рест запросу от медиа сервера: "mediaProvider": "Flash", "status": "FAILED"
 
Top