ex_webrtc icon indicating copy to clipboard operation
ex_webrtc copied to clipboard

WHIP/WHEP example not working with OpenH264 encoder

Open kevinschweikert opened this issue 1 year ago • 3 comments

Hi, i tried out the WHIP/WHEP example with a Fedora 40 Workstation OS and OBS which uses the Cisco OpenH264 encoder by default. The video player gets stuck in the loading state but no image is shown. After switching to x264 the stream worked flawlessly. Let me know if you need more information or if i should open this issue somewhere else in the Membrane space. Cheers and thanks for all your work!

kevinschweikert avatar Oct 17 '24 09:10 kevinschweikert

Hi @kevinschweikert!

Thanks for the report. We are OOF until Monday but will take a look once we come back :)

mickel8 avatar Oct 17 '24 12:10 mickel8

Hi @kevinschweikert, I completely forgot about this issue. I check and indeed, streaming from OBS using openH264 does not work. It looks like browser drops all the packets. What I noticed is that OBS always offers 42e01f profile level id, no matter I select constrained baseline, main or high profile. I don't think the issue is on our side, more on OBS/browser incompatibility. I asked on video-dev slack. Will also check browser logs

mickel8 avatar Dec 05 '24 17:12 mickel8

We might have been chosing wrong codec (H264 with wrong profile id) but even after setting it to 0x42e01f (the one offered by the obs), web browser still cannot decode the stream. It logs "no decodable frame in ... requesting keyframe".

Checked with broadcast-box and there is the same behaviour so after merging #179, I don't think the problem is in Elixir WebRTC :thinking:

mickel8 avatar Dec 06 '24 18:12 mickel8