-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
H264 SPS / PPS are not received correctly if pushed as separate packets #177
Comments
I guess I just gotta do these tests again with DCMAKE_BUILD_TYPE=Debug and see if I get something in the log ? |
not sure if the issue is the fact there is an SPS / PPS inside, could also be 2 successive non-aggregate packets containing anything. But I noticed the issue with the PPS only so far. Btw, I don't think it'l help but this is the dirty rtp parser we wanna replace - both single and aggregate packets are quite easy to do. |
@Consti10 Did you say you were using uvgRTP also for sending? I added support for NAL units with size 8 to start code lookup. Sizes smaller than 8 are not yet supported, but would probably be trivial to add. I was unable to find any issues with specific NAL types in H264. Does d7f0af7 fix your issue? |
Now also sizes smaller than 8 should work in 5ca3c13. |
That sounds like it might be the solution - the PPS NALUs were of size 9 (I think that was without a long NALU start code, so could be called size 8 as well). I'l check it out. |
Hm, this seems to have made it worse, I am now only getting packets of size 6. I've changed 2 lines in examples/receiving_hoock.cc:
and changed udp input port to 5600 with the following gstreamer pipeline as tx:
I am exclusively getting: which cannot be correct (e.g. the above pipeline definitely creates NALUs bigger than 6 bytes) |
The previous fixes were only for the sending side. Based on that debug print, I think I know what is going on in the receiving side: There is a discarding of duplicated packets in uvgRTP based on timestamps, but I would guess GStreamer puts all those different NAL units in non-aggregate packets with same timestamps, leading uvgRTP to discard the later NAL units as it thinks they have been duplicated. Does c07a8c2 fix receiving video from GStreamer? I also created a new issue for duplicate discarding, but this is not a high priority: #179 |
Yeah, that makes sense. Just tested gstreamer sending and uvgRTP receive (h264), and the issue(s) seem to be gone. |
@Consti10 Great! Thanks for bringing up this issue! I've been trying to fix all issues related to basic RTP/SRTP streaming for some time now. BR, Joni |
Description in #174:
The text was updated successfully, but these errors were encountered: