diff --git a/docs/gstreamer-sdp/docs.md b/docs/gstreamer-sdp/docs.md index 19d475bf0..d4d349159 100644 --- a/docs/gstreamer-sdp/docs.md +++ b/docs/gstreamer-sdp/docs.md @@ -39,10 +39,442 @@ HMAC-SHA-1-160 Specifies the method of uniquely mapping Crypto Sessions to the security protocol sessions. + +Structure holding the information of the MIKEY message + +Make a new MIKEY message. + +# Returns + +a new `MIKEYMessage` on success + +Make a new `MIKEYMessage` from `bytes`. +## `bytes` +a `glib::Bytes` +## `info` +a `MIKEYDecryptInfo` + +# Returns + +a new `MIKEYMessage` + +Makes mikey message including: + - Security Policy Payload + - Key Data Transport Payload + - Key Data Sub-Payload +## `caps` +a `gst::Caps`, including SRTP parameters (srtp/srtcp cipher, authorization, key data) + +# Returns + +a `MIKEYMessage`, +or `None` if there is no srtp information in the caps. + +Parse `size` bytes from `data` into a `MIKEYMessage`. `info` contains the +parameters to decrypt and verify the data. +## `data` +bytes to read +## `size` +length of `data` +## `info` +`MIKEYDecryptInfo` + +# Returns + +a `MIKEYMessage` on success or `None` when parsing failed and +`error` will be set. + +Add a Crypto policy for SRTP to `self`. +## `policy` +The security policy applied for the stream with `ssrc` +## `ssrc` +the SSRC that must be used for the stream +## `roc` +current rollover counter + +# Returns + +`true` on success + +Add a new payload to `self`. +## `payload` +a `MIKEYPayload` + +# Returns + +`true` on success + +Add a new PKE payload to `self` with the given parameters. +## `C` +envelope key cache indicator +## `data_len` +the length of `data` +## `data` +the encrypted envelope key + +# Returns + +`true` on success + +Add a new RAND payload to `self` with the given parameters. +## `len` +the length of `rand` +## `rand` +random data + +# Returns + +`true` on success + +Add a new RAND payload to `self` with `len` random bytes. +## `len` +length + +# Returns + +`true` on success + +Add a new T payload to `self` with the given parameters. +## `type_` +specifies the timestamp type used +## `ts_value` +The timestamp value of the specified `type_` + +# Returns + +`true` on success + +Add a new T payload to `self` that contains the current time +in NTP-UTC format. + +# Returns + +`true` on success + + +# Returns + +a `gchar`, base64-encoded data + +Find the `nth` occurence of the payload with `type_` in `self`. +## `type_` +a `MIKEYPayloadType` +## `nth` +payload to find + +# Returns + +the `nth` `MIKEYPayload` of `type_`. + +Get the policy information of `self` at `idx`. +## `idx` +an index + +# Returns + +a `MIKEYMapSRTP` + +Get the number of crypto sessions in `self`. + +# Returns + +the number of crypto sessions + +Get the number of payloads in `self`. + +# Returns + +the number of payloads in `self` + +Get the `MIKEYPayload` at `idx` in `self` +## `idx` +an index + +# Returns + +the `MIKEYPayload` at `idx`. The payload +remains valid for as long as it is part of `self`. + +Insert a Crypto Session map for SRTP in `self` at `idx` + +When `idx` is -1, the policy will be appended. +## `idx` +the index to insert at +## `map` +the map info + +# Returns + +`true` on success + +Insert the `payload` at index `idx` in `self`. If `idx` is -1, the payload +will be appended to `self`. +## `idx` +an index +## `payload` +a `MIKEYPayload` + +# Returns + +`true` on success + +Remove the SRTP policy at `idx`. +## `idx` +the index to remove + +# Returns + +`true` on success + +Remove the payload in `self` at `idx` +## `idx` +an index + +# Returns + +`true` on success + +Replace a Crypto Session map for SRTP in `self` at `idx` with `map`. +## `idx` +the index to insert at +## `map` +the map info + +# Returns + +`true` on success + +Replace the payload at `idx` in `self` with `payload`. +## `idx` +an index +## `payload` +a `MIKEYPayload` + +# Returns + +`true` on success + +Set the information in `self`. +## `version` +a version +## `type_` +a `MIKEYType` +## `V` +verify flag +## `prf_func` +the `MIKEYPRFFunc` function to use +## `CSB_id` +the Crypto Session Bundle id +## `map_type` +the `GstMIKEYCSIDMapType` + +# Returns + +`true` on success + +Convert `self` to a `glib::Bytes`. +## `info` +a `MIKEYEncryptInfo` + +# Returns + +a new `glib::Bytes` for `self`. + + +Feature: `v1_8_1` + +## `caps` +a `gst::Caps` to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data) + +# Returns + +`true` on success The PRF function that has been/will be used for key derivation MIKEY-1 PRF function + +Hold the common fields for all payloads + +Make a new `MIKEYPayload` with `type_`. +## `type_` +a `MIKEYPayloadType` + +# Returns + +a new `MIKEYPayload` or `None` on failure. + +Add a new sub payload to `self`. +## `newpay` +a `MIKEYPayload` to add + +# Returns + +`true` on success. + +Get the number of sub payloads of `self`. `self` should be of type +`MIKEYPayloadType::Kemac`. + +# Returns + +the number of sub payloads in `self` + +Get the sub payload of `self` at `idx`. `self` should be of type +`MIKEYPayloadType::Kemac`. +## `idx` +an index + +# Returns + +the `MIKEYPayload` at `idx`. + +Remove the sub payload at `idx` in `self`. +## `idx` +the index to remove + +# Returns + +`true` on success. + +Set the KEMAC parameters. `self` should point to a `MIKEYPayloadType::Kemac` +payload. +## `enc_alg` +the `MIKEYEncAlg` +## `mac_alg` +a `MIKEYMacAlg` + +# Returns + +`true` on success + +Set the key validity period in the `MIKEYPayloadType::KeyData` `self`. +## `vf_len` +the length of `vf_data` +## `vf_data` +the Valid From data +## `vt_len` +the length of `vt_data` +## `vt_data` +the Valid To data + +# Returns + +`true` on success + +Set `key_len` bytes of `key_data` of type `key_type` as the key for the +`MIKEYPayloadType::KeyData` `self`. +## `key_type` +a `MIKEYKeyDataType` +## `key_len` +the length of `key_data` +## `key_data` +the key of type `key_type` + +# Returns + +`true` on success + +Set the salt key data. If `salt_len` is 0 and `salt_data` is `None`, the +salt data will be removed. +## `salt_len` +the length of `salt_data` +## `salt_data` +the salt + +# Returns + +`true` on success + +Set the SPI/MKI validity in the `MIKEYPayloadType::KeyData` `self`. +## `spi_len` +the length of `spi_data` +## `spi_data` +the SPI/MKI data + +# Returns + +`true` on success + +Set the PKE values in `self`. `self` must be of type +`MIKEYPayloadType::Pke`. +## `C` +envelope key cache indicator +## `data_len` +the length of `data` +## `data` +the encrypted envelope key + +# Returns + +`true` on success + +Set the random values in a `MIKEYPayloadType::Rand` `self`. +## `len` +the length of `rand` +## `rand` +random values + +# Returns + +`true` on success + +Add a new parameter to the `MIKEYPayloadType::Sp` `self` with `type_`, `len` +and `val`. +## `type_` +a type +## `len` +a length +## `val` +`len` bytes of data + +# Returns + +`true` on success + +Get the number of security policy parameters in a `MIKEYPayloadType::Sp` +`self`. + +# Returns + +the number of parameters in `self` + +Get the Security Policy parameter in a `MIKEYPayloadType::Sp` `self` +at `idx`. +## `idx` +an index + +# Returns + +the `MIKEYPayloadSPParam` at `idx` in `self` + +Remove the Security Policy parameters from a `MIKEYPayloadType::Sp` +`self` at `idx`. +## `idx` +an index + +# Returns + +`true` on success + +Set the Security Policy parameters for `self`. +## `policy` +the policy number +## `proto` +a `MIKEYSecProto` + +# Returns + +`true` on success + +Set the timestamp in a `MIKEYPayloadType::T` `self`. +## `type_` +the `MIKEYTSType` +## `ts_value` +the timestamp value + +# Returns + +`true` on success Different MIKEY Payload types. @@ -131,9 +563,3 @@ Initiator's DH exchange message Responder's DH exchange message Error message - -Return values for the SDP functions. - -A successful return value - -a function was given invalid parameters diff --git a/docs/gstreamer-webrtc/docs.md b/docs/gstreamer-webrtc/docs.md new file mode 100644 index 000000000..2e3f5deb7 --- /dev/null +++ b/docs/gstreamer-webrtc/docs.md @@ -0,0 +1,83 @@ + + + + +# Implements + +[`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html) + +GST_WEBRTC_DTLS_TRANSPORT_STATE_NEW: new +GST_WEBRTC_DTLS_TRANSPORT_STATE_CLOSED: closed +GST_WEBRTC_DTLS_TRANSPORT_STATE_FAILED: failed +GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING: connecting +GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED: connected + +GST_WEBRTC_ICE_COMPONENT_RTP, +GST_WEBRTC_ICE_COMPONENT_RTCP, + +GST_WEBRTC_ICE_CONNECTION_STATE_NEW: new +GST_WEBRTC_ICE_CONNECTION_STATE_CHECKING: checking +GST_WEBRTC_ICE_CONNECTION_STATE_CONNECTED: connected +GST_WEBRTC_ICE_CONNECTION_STATE_COMPLETED: completed +GST_WEBRTC_ICE_CONNECTION_STATE_FAILED: failed +GST_WEBRTC_ICE_CONNECTION_STATE_DISCONNECTED: disconnected +GST_WEBRTC_ICE_CONNECTION_STATE_CLOSED: closed +See http://w3c.github.io/webrtc-pc/`dom`-rtciceconnectionstate`` + +GST_WEBRTC_ICE_GATHERING_STATE_NEW: new +GST_WEBRTC_ICE_GATHERING_STATE_GATHERING: gathering +GST_WEBRTC_ICE_GATHERING_STATE_COMPLETE: complete +See http://w3c.github.io/webrtc-pc/`dom`-rtcicegatheringstate`` + +GST_WEBRTC_ICE_ROLE_CONTROLLED: controlled +GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling + + + +# Implements + +[`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html) + + + +# Implements + +[`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html) + + + +# Implements + +[`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html) + + + +# Implements + +[`glib::object::ObjectExt`](../glib/object/trait.ObjectExt.html) + +GST_WEBRTC_SDP_TYPE_OFFER: offer +GST_WEBRTC_SDP_TYPE_PRANSWER: pranswer +GST_WEBRTC_SDP_TYPE_ANSWER: answer +GST_WEBRTC_SDP_TYPE_ROLLBACK: rollback +See http://w3c.github.io/webrtc-pc/`rtcsdptype``` + +sdp: the `gst_sdp::SDPMessage` of the description +See https://www.w3.org/TR/webrtc/`rtcsessiondescription`-class`` + +## `type_` +a `WebRTCSDPType` +## `sdp` +a `gst_sdp::SDPMessage` + +# Returns + +a new `WebRTCSessionDescription` from `type_` + and `sdp` + + +# Returns + +a new copy of `self` + +Free `self` and all associated resources