Replies: 7 comments 6 replies
-
Hello, provide a server log and also a network dump of the traffic exchanged between GStreamer and the server, or alternatively a file that contains a sample stream generated with nvv4l2h264enc. You can generate a network dump in this way: If the bug arises when using MediaMTX with an external hardware or software, the most helpful content you can provide is a dump of the data exchanged between the server and the target (network dump), that can be generated in this way:
|
Beta Was this translation helpful? Give feedback.
-
Hello, attached the mediamtx debug log and pcapng record between the gstreamer, mediamtx and client. |
Beta Was this translation helpful? Give feedback.
-
WebRTC by design works on H264 baseline and main profiles, messing streams with Iframes and PFrames only. This is because webrtc is designed for low latency, and bframes forces latency in order to wait for a future frame. Transcode ur file with ffmpeg or gstreamer and remove the bframes. |
Beta Was this translation helpful? Give feedback.
-
I admit that I never had any problems with B-Frames in the past, even though I have a long WebRTC experience. I also don't believe, that WebRTC generally has a problem with B-Frames at all, otherwise I should have seen that in other scenarios, maybe. So I checked the part, which is responsible for the abort and changed it in
I'm still seeing the message very rarely, but the WebRTC connection now no longer terminates. I'm also asking myself, if this problem couldn't just be caused by an mis-order in the RTP receive stream... At least I cannot see any negative impact when I'm just ignoring that... |
Beta Was this translation helpful? Give feedback.
-
Yes, I did that. I removed the "fatal" and made it a warning. I'm forwarding the packets to a Chrome instance, which receives via WHEP. There is no issue.. |
Beta Was this translation helpful? Give feedback.
-
When there are frequent B-frames, the fix above freezes the video time to time.
|
Beta Was this translation helpful? Give feedback.
-
You can get rid of b-frames altogether by transcoding but that adds a bit latency and incorporates ffmpeg. In mediamtx.yml:
|
Beta Was this translation helpful? Give feedback.
-
Question
I tried restreaming a H265 RTSP via a Jetson Nano and gstreamer.
When I use omx264enc is working fine.
When I use nvv4l2h264enc the webrtc server drop the stream with "WebRTC doesn't support H264 streams with B-frames".
I checked the both RTSP stream with ffprobe -show_frames, the stream dosn't have B frames only has I and P.
Where/Why sees mediamtx the "B-frames", how can I check that?
Beta Was this translation helpful? Give feedback.
All reactions