Hello,
If I force the videoroom codec to h264 or h265, the stream does not work.
How can I enable h264 and h265 on the server, so that the client can retrieve it?
- Jesse
Hello,
If I force the videoroom codec to h264 or h265, the stream does not work.
How can I enable h264 and h265 on the server, so that the client can retrieve it?
What do you mean by “force the videoroom codec to h264 or h265”? In the videocodec
setting when creating a new room? In that case, that just tells Janus to only negotiate video if that codec is offered. Of course, that will only work if the client offers them in the first place, and H.265 is not supported by any browser I know of.
If we use h264 as a codec (when we create a room), every stream is not working. When we use vp8, it is. Do we need to enable something in the server to be able to use h264?
Make sure the browsers do support H.264, you can test that using the EchoTest demo. If they do, then problems with H.264 are usually caused by weird profiles, so you can try forcing a basic one (e.g., 42e01f
).
Hi! So have you succeed? What did you do finally?
This is a great thread on the topic of HEVC in Chrome & Safari over WebRTC
https://issues.chromium.org/issues/341986313
Essentially, it is supported on all Safari, and on Chrome with flags, as long as the machine has hardware decode support (such as recent intel machines) .
This issue tracker is opened to track the launch test status of enabling HEVC for WebRTC.
Currently the capability of supporting sending HEVC streams in WebRTC is behind flag --enable-features=PlatformHEVCEncoderSupport,WebRtcAllowH265Send.
In Chrome the capability of receiving WebRTC steam is behind 2 flags:
–force-fieldtrials=WebRTC-Video-H26xPacketBuffer // The launch test has been started. This is to switch jitter buffer implementation to H.26x specific where parameter sets will be specially handled.
–enable-features=WebRtcAllowH265Receive // This enables negotiation of receiving H.265 streams in WebRTC.
Platform support wise,
Receive-only: This is supported on macOS, Linux, Android, ChromeOS and Windows when platform supports hardware decoding of HEVC streams.
Send: This is supported on Windows, Android & macOS.
PlatformHEVCEncoderSupport is by default turned on now.
Hey Lorenzo, I made a webrtc app in MacOS, would H265 work then if I don’t use browsers but Janus as the webrtc engine?