AirenSoft / OvenMediaEngine

OvenMediaEngine (OME) is a Sub-Second Latency Live Streaming Server with Large-Scale and High-Definition. #WebRTC #LLHLS
https://airensoft.com/ome.html
GNU Affero General Public License v3.0
2.58k stars 1.06k forks source link

Unable to play / connect webrtc using OvenMediaPlayer #119

Closed deepsurvey closed 4 years ago

deepsurvey commented 4 years ago

Describe the bug A clear and concise description of what the bug is.

I have OME running as Origin and after restarting the Docker I am unable to connect clients. OBS studio is used to stream a video feed as /app/stream. OBS is streaming and working as expected.

In the server logs I see that the OBS feeds is registered and ready to stream.: id(797959020), name(stream_o), SourceType(Transcoder), Created Time (Wed May 27 12:30:56 2020)

Origin Stream Info id(105), name(stream), SourceType(Rtmp), Created Time (Wed May 27 12:30:56 2020)

Video Track #0: Bypass(true) Bitrate(2.50Mb) codec(1, avc) resolution(1920x1080) framerate(30.00fps) timebase(1/90000)
Audio Track #1: Bypass(true) Bitrate(160.00Kb) codec(5, aac) samplerate(44.1K) format(s16, 16) channel(stereo, 2) timebase(1/44100)
Audio Track #2: Bypass(false) Bitrate(128.00Kb) codec(7, opus) samplerate(48.0K) format(s16, 16) channel(stereo, 2) timebase(1/48000)

[2020-05-27 12:30:56.304] I 243 Monitor | application_metrics.cpp:56 | Create StreamMetrics(stream_o) for monitoring [2020-05-27 12:30:56.305] I 243 WebRTC | rtc_stream.cpp:181 | Unsupported codec(Audio/AAC) is being input from media track [2020-05-27 12:30:56.305] I 243 Publisher | stream.cpp:193 | WebRTC Publisher Application application has started [stream_o(797959020)] stream [2020-05-27 12:30:56.305] I 243 Publisher | stream.cpp:193 | HLS Publisher Application application has started [stream_o(797959020)] stream [2020-05-27 12:30:56.305] I 243 Publisher | stream.cpp:193 | DASH Publisher Application application has started [stream_o(797959020)] stream [2020-05-27 12:30:56.305] I 243 Publisher | stream.cpp:193 | LLDASH Publisher Application application has started [stream_o(797959020)] stream [2020-05-27 12:30:56.306] I 243 Publisher | stream.cpp:193 | OVTPublisher Application application has started [stream_o(797959020)] stream [2020-05-27 12:30:56.353] I 243 TranscodeCodec | transcode_codec_dec_aac.cpp:49 | [#default#app/stream(105)] input stream information: [audio] aac (LC), 44100 Hz, stereo, fltp, 158 kbps, timebase: 1/44100, frame_size: 1024 [2020-05-27 12:31:01.352] I 40 DASH | dash_packetizer.cpp:956 | [0x55e4edf0cc70] LLDASH segment is ready to stream [#default#app/stream_o], segment duration: 5.000000s, count: 1 [2020-05-27 12:31:06.355] I 39 DASH | dash_packetizer.cpp:956 | [0x55e4ede0c770] DASH segment is ready to stream [#default#app/stream_o], segment duration: 5.000000s, count: 3 [2020-05-27 12:31:11.365] I 38 HLS | hls_packetizer.cpp:292 | HLS segment is ready for stream [#default#app/stream_o], segment duration: 5.000000s, count: 3

When I change the name of the stream in OBS I do see the advertised stream name update in the logs, so the whole part till getting ready to stream works.

Expected behavior I expected to see some log information when I open the WebRTC stream in OvenMediaPlayer ( ws://172.26.134.111:3333/app/stream_o ) But nothing is entered in log. The player just advertised "Can not play due to unknown reasons"

A clear and concise description of what you expected to happen.

Logs Please upload the entire OvenMediaEngine.log. You may delete important personal information.

Server (please complete the following information):

Player (please complete the following information): Server (please complete the following information):

OS: Distributor ID: Ubuntu Description: Ubuntu 20.04 LTS Release: 20.04 Codename: focal

OvenMediaEngine Version: [e.g. v0.10.1]

Branch: [e.g. dev]

####################################################

AirenSoft Make System v0.63 ####################################################

Operating system : linux Core count : 8 GCC version : 8.3.0 Build option : RELEASE Paths for linker : /opt/ovenmediaengine/lib:/opt/ovenmediaengine/lib64 Paths for pkg-config : /opt/ovenmediaengine/lib/pkgconfig:/opt/ovenmediaengine/lib64/pkgconfig Total Projects count : 34 Additional context Add any other context about the problem here.

At the Origin I have the following docker compose: version: '3.7'

services: origin: build: context: . image: airensoft/ovenmediaengine:latest ports:

simply start both OME's with: docker-compose up -d and set your filewall settings to allow the used TCP and UDP ports.


Server XML:

/opt/ovenmediaengine/bin/origin_conf # cat Server.xml <?xml version="1.0" encoding="UTF-8" ?>

OvenMediaEngine origin * ${env:OME_RTMP_PROV_PORT:1935} ${env:OME_ORIGIN_PORT:9000} ${env:OME_HLS_STREAM_PORT:8080} ${env:OME_DASH_STREAM_PORT:8080} ${env:OME_SIGNALLING_PORT:3333} ${env:OME_ICE_CANDIDATES:*:10000-10005/udp} default * app live bypass opus ${OriginStreamName}_o bypass opus 4 30000 5 3 * 5 3 * 5 * /opt/ovenmediaengine/bin/origin_conf #
getroot commented 4 years ago

The player failed to connect to TCP 3333 port. Have you ever tried to play it at http://demo.ovenplayer.com? This can happen if you did it at https://demo.ovenplayer.com.

Is rtmp: //172.26.134.111/app/stream you entered in OBS? Since the IP is a private IP, is there a problem with the connection with the PC running the player?

deepsurvey commented 4 years ago

Hi,

YES !!! it was the https. For some reason I accedentely entered https instead of http. I could not get my head round why it was not working. Spend whole afternoon searching. So I just removed that one little "s" and all is working.

Thanks !!