File
Blob: firmware/vendor/str0m/src/change/mod.rs
| 1 | //! Ways to change the [`Rtc`][crate::Rtc] session. SDP or Direct. |
| 2 | //! |
| 3 | //! str0m has two main APIs for changing the WebRTC session. |
| 4 | //! |
| 5 | //! 1. SDP API. The common way to talk to browsers using SDP OFFER/ANSWER negotiations. |
| 6 | //! [`Rtc::sdp_api()`][crate::Rtc::sdp_api] |
| 7 | //! 2. Direct API. Makes changes directly to the session without any negotiation. |
| 8 | //! [`Rtc::direct_api()`][crate::Rtc::direct_api] |
| 9 | //! |
| 10 | //! ## Direct API |
| 11 | //! |
| 12 | //! The direct API is a lower level API which typically can't be mixed with the SDP API. If you make |
| 13 | //! changes directly to the session, the remote side would not be aware of them unless you construct |
| 14 | //! some "other way" keeping the two peers in sync. |
| 15 | mod sdp; |
| 16 | pub(crate) use sdp::AddMedia; |
| 17 | pub use sdp::{SdpAnswer, SdpApi, SdpOffer, SdpPendingOffer}; |
| 18 | |
| 19 | mod direct; |
| 20 | pub use direct::DirectApi; |