-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Added support for RTP abs-capture-time header #761
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks.
Running CI checks before merging. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
clang linter complains: https://github.com/versatica/mediasoup/runs/4951301699?check_suite_focus=true
Please run make format
in worker/
folder, and ensure everything is ok by running npm run lint
and npm test
, and then push changes.
8d55957
to
8a8b5d1
Compare
Should be ok now. |
Can you also make similar changes to Rust side, please? |
I tried to add support also for rust, but I never programmed in rust. In producer.rs I did not find any equivalent of MangleRtpPacket (like in Producer.cpp). So I dont know if the changes are sufficient. Also I did not tested it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you approve @nazar-pc?
The Rust part is equivalent to the Node part. C++ code is just for the worker. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine to me
Looks like tests need to be updated accordingly |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yup, tests failing. This is in both Node tests and Rust tests.
7cc19f1
to
eca21d5
Compare
eca21d5
to
7cd9b6a
Compare
Ok I fixed tests both node and rust (good to know that you must run "npm run typescript:build" before running tests - my test was successful but with old code) |
Ok last error in rust: Failed to create Pipe transport: Response { reason: "uv_udp_bind() failed [transport:udp, ip:'127.0.0.1', port:60000]: permission denied. I dont know how to fix that. |
I just restarted it. Port is hardcoded, maybe it happened to be used on that particular run (never happened before, but probable). |
Merging this. Thanks a lot. |
Released in mediasoup 3.9.6. |
Based on other RTP headers, I added support also for http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time . This is useful for getting to know when exactly was RTP media frame captured.
We already talked about this modification: https://mediasoup.discourse.group/t/forwarding-ntp-timestamp-from-source/3427/3
I made some changes and I test it with wireshark that it passes through this RTP header. You told me that I should add test into TestRtpPacket.cpp file, But I did not make any changes to RtpPacket class. So any additional test will be pointless. Should some other things be modificated?