summaryrefslogtreecommitdiff
path: root/include/gst/webrtc/webrtc_fwd.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/gst/webrtc/webrtc_fwd.h')
-rw-r--r--include/gst/webrtc/webrtc_fwd.h467
1 files changed, 467 insertions, 0 deletions
diff --git a/include/gst/webrtc/webrtc_fwd.h b/include/gst/webrtc/webrtc_fwd.h
new file mode 100644
index 0000000000..d181873884
--- /dev/null
+++ b/include/gst/webrtc/webrtc_fwd.h
@@ -0,0 +1,467 @@
+/* GStreamer
+ * Copyright (C) 2017 Matthew Waters <matthew@centricular.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __GST_WEBRTC_FWD_H__
+#define __GST_WEBRTC_FWD_H__
+
+#ifndef GST_USE_UNSTABLE_API
+#warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future."
+#warning "You can define GST_USE_UNSTABLE_API to avoid this warning."
+#endif
+
+#include <gst/gst.h>
+
+/**
+ * SECTION:webrtc_fwd.h
+ * @title: GstWebRTC Enumerations
+ */
+
+#ifndef GST_WEBRTC_API
+# ifdef BUILDING_GST_WEBRTC
+# define GST_WEBRTC_API GST_API_EXPORT /* from config.h */
+# else
+# define GST_WEBRTC_API GST_API_IMPORT
+# endif
+#endif
+
+#include <gst/webrtc/webrtc-enumtypes.h>
+
+/**
+ * GstWebRTCDTLSTransport:
+ */
+typedef struct _GstWebRTCDTLSTransport GstWebRTCDTLSTransport;
+typedef struct _GstWebRTCDTLSTransportClass GstWebRTCDTLSTransportClass;
+
+/**
+ * GstWebRTCICETransport:
+ */
+typedef struct _GstWebRTCICETransport GstWebRTCICETransport;
+typedef struct _GstWebRTCICETransportClass GstWebRTCICETransportClass;
+
+/**
+ * GstWebRTCRTPReceiver:
+ *
+ * An object to track the receiving aspect of the stream
+ *
+ * Mostly matches the WebRTC RTCRtpReceiver interface.
+ */
+typedef struct _GstWebRTCRTPReceiver GstWebRTCRTPReceiver;
+typedef struct _GstWebRTCRTPReceiverClass GstWebRTCRTPReceiverClass;
+
+/**
+ * GstWebRTCRTPSender:
+ *
+ * An object to track the sending aspect of the stream
+ *
+ * Mostly matches the WebRTC RTCRtpSender interface.
+ */
+typedef struct _GstWebRTCRTPSender GstWebRTCRTPSender;
+typedef struct _GstWebRTCRTPSenderClass GstWebRTCRTPSenderClass;
+
+typedef struct _GstWebRTCSessionDescription GstWebRTCSessionDescription;
+
+/**
+ * GstWebRTCRTPTransceiver:
+ *
+ * Mostly matches the WebRTC RTCRtpTransceiver interface.
+ */
+typedef struct _GstWebRTCRTPTransceiver GstWebRTCRTPTransceiver;
+typedef struct _GstWebRTCRTPTransceiverClass GstWebRTCRTPTransceiverClass;
+
+/**
+ * GstWebRTCDataChannel:
+ *
+ * Since: 1.18
+ */
+typedef struct _GstWebRTCDataChannel GstWebRTCDataChannel;
+typedef struct _GstWebRTCDataChannelClass GstWebRTCDataChannelClass;
+
+typedef struct _GstWebRTCSCTPTransport GstWebRTCSCTPTransport;
+typedef struct _GstWebRTCSCTPTransportClass GstWebRTCSCTPTransportClass;
+
+/**
+ * GstWebRTCDTLSTransportState:
+ * @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
+ */
+typedef enum /*< underscore_name=gst_webrtc_dtls_transport_state >*/
+{
+ GST_WEBRTC_DTLS_TRANSPORT_STATE_NEW,
+ GST_WEBRTC_DTLS_TRANSPORT_STATE_CLOSED,
+ GST_WEBRTC_DTLS_TRANSPORT_STATE_FAILED,
+ GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING,
+ GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED,
+} GstWebRTCDTLSTransportState;
+
+/**
+ * GstWebRTCICEGatheringState:
+ * @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>
+ */
+typedef enum /*< underscore_name=gst_webrtc_ice_gathering_state >*/
+{
+ GST_WEBRTC_ICE_GATHERING_STATE_NEW,
+ GST_WEBRTC_ICE_GATHERING_STATE_GATHERING,
+ GST_WEBRTC_ICE_GATHERING_STATE_COMPLETE,
+} GstWebRTCICEGatheringState; /*< underscore_name=gst_webrtc_ice_gathering_state >*/
+
+/**
+ * GstWebRTCICEConnectionState:
+ * @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>
+ */
+typedef enum /*< underscore_name=gst_webrtc_ice_connection_state >*/
+{
+ GST_WEBRTC_ICE_CONNECTION_STATE_NEW,
+ GST_WEBRTC_ICE_CONNECTION_STATE_CHECKING,
+ GST_WEBRTC_ICE_CONNECTION_STATE_CONNECTED,
+ GST_WEBRTC_ICE_CONNECTION_STATE_COMPLETED,
+ GST_WEBRTC_ICE_CONNECTION_STATE_FAILED,
+ GST_WEBRTC_ICE_CONNECTION_STATE_DISCONNECTED,
+ GST_WEBRTC_ICE_CONNECTION_STATE_CLOSED,
+} GstWebRTCICEConnectionState;
+
+/**
+ * GstWebRTCSignalingState:
+ * @GST_WEBRTC_SIGNALING_STATE_STABLE: stable
+ * @GST_WEBRTC_SIGNALING_STATE_CLOSED: closed
+ * @GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER: have-local-offer
+ * @GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER: have-remote-offer
+ * @GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_PRANSWER: have-local-pranswer
+ * @GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_PRANSWER: have-remote-pranswer
+ *
+ * See <http://w3c.github.io/webrtc-pc/#dom-rtcsignalingstate>
+ */
+typedef enum /*< underscore_name=gst_webrtc_signaling_state >*/
+{
+ GST_WEBRTC_SIGNALING_STATE_STABLE,
+ GST_WEBRTC_SIGNALING_STATE_CLOSED,
+ GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER,
+ GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER,
+ GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_PRANSWER,
+ GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_PRANSWER,
+} GstWebRTCSignalingState;
+
+/**
+ * GstWebRTCPeerConnectionState:
+ * @GST_WEBRTC_PEER_CONNECTION_STATE_NEW: new
+ * @GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTING: connecting
+ * @GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTED: connected
+ * @GST_WEBRTC_PEER_CONNECTION_STATE_DISCONNECTED: disconnected
+ * @GST_WEBRTC_PEER_CONNECTION_STATE_FAILED: failed
+ * @GST_WEBRTC_PEER_CONNECTION_STATE_CLOSED: closed
+ *
+ * See <http://w3c.github.io/webrtc-pc/#dom-rtcpeerconnectionstate>
+ */
+typedef enum /*< underscore_name=gst_webrtc_peer_connection_state >*/
+{
+ GST_WEBRTC_PEER_CONNECTION_STATE_NEW,
+ GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTING,
+ GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTED,
+ GST_WEBRTC_PEER_CONNECTION_STATE_DISCONNECTED,
+ GST_WEBRTC_PEER_CONNECTION_STATE_FAILED,
+ GST_WEBRTC_PEER_CONNECTION_STATE_CLOSED,
+} GstWebRTCPeerConnectionState;
+
+/**
+ * GstWebRTCICERole:
+ * @GST_WEBRTC_ICE_ROLE_CONTROLLED: controlled
+ * @GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling
+ */
+typedef enum /*< underscore_name=gst_webrtc_ice_role >*/
+{
+ GST_WEBRTC_ICE_ROLE_CONTROLLED,
+ GST_WEBRTC_ICE_ROLE_CONTROLLING,
+} GstWebRTCICERole;
+
+/**
+ * GstWebRTCICEComponent:
+ * @GST_WEBRTC_ICE_COMPONENT_RTP: RTP component
+ * @GST_WEBRTC_ICE_COMPONENT_RTCP: RTCP component
+ */
+typedef enum /*< underscore_name=gst_webrtc_ice_component >*/
+{
+ GST_WEBRTC_ICE_COMPONENT_RTP,
+ GST_WEBRTC_ICE_COMPONENT_RTCP,
+} GstWebRTCICEComponent;
+
+/**
+ * GstWebRTCSDPType:
+ * @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>
+ */
+typedef enum /*< underscore_name=gst_webrtc_sdp_type >*/
+{
+ GST_WEBRTC_SDP_TYPE_OFFER = 1,
+ GST_WEBRTC_SDP_TYPE_PRANSWER,
+ GST_WEBRTC_SDP_TYPE_ANSWER,
+ GST_WEBRTC_SDP_TYPE_ROLLBACK,
+} GstWebRTCSDPType;
+
+/**
+ * GstWebRTCRTPTransceiverDirection:
+ * @GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_NONE: none
+ * @GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_INACTIVE: inactive
+ * @GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDONLY: sendonly
+ * @GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_RECVONLY: recvonly
+ * @GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDRECV: sendrecv
+ */
+typedef enum /*< underscore_name=gst_webrtc_rtp_transceiver_direction >*/
+{
+ GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_NONE,
+ GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_INACTIVE,
+ GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDONLY,
+ GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_RECVONLY,
+ GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDRECV,
+} GstWebRTCRTPTransceiverDirection;
+
+/**
+ * GstWebRTCDTLSSetup:
+ * @GST_WEBRTC_DTLS_SETUP_NONE: none
+ * @GST_WEBRTC_DTLS_SETUP_ACTPASS: actpass
+ * @GST_WEBRTC_DTLS_SETUP_ACTIVE: sendonly
+ * @GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly
+ */
+typedef enum /*< underscore_name=gst_webrtc_dtls_setup >*/
+{
+ GST_WEBRTC_DTLS_SETUP_NONE,
+ GST_WEBRTC_DTLS_SETUP_ACTPASS,
+ GST_WEBRTC_DTLS_SETUP_ACTIVE,
+ GST_WEBRTC_DTLS_SETUP_PASSIVE,
+} GstWebRTCDTLSSetup;
+
+/**
+ * GstWebRTCStatsType:
+ * @GST_WEBRTC_STATS_CODEC: codec
+ * @GST_WEBRTC_STATS_INBOUND_RTP: inbound-rtp
+ * @GST_WEBRTC_STATS_OUTBOUND_RTP: outbound-rtp
+ * @GST_WEBRTC_STATS_REMOTE_INBOUND_RTP: remote-inbound-rtp
+ * @GST_WEBRTC_STATS_REMOTE_OUTBOUND_RTP: remote-outbound-rtp
+ * @GST_WEBRTC_STATS_CSRC: csrc
+ * @GST_WEBRTC_STATS_PEER_CONNECTION: peer-connectiion
+ * @GST_WEBRTC_STATS_DATA_CHANNEL: data-channel
+ * @GST_WEBRTC_STATS_STREAM: stream
+ * @GST_WEBRTC_STATS_TRANSPORT: transport
+ * @GST_WEBRTC_STATS_CANDIDATE_PAIR: candidate-pair
+ * @GST_WEBRTC_STATS_LOCAL_CANDIDATE: local-candidate
+ * @GST_WEBRTC_STATS_REMOTE_CANDIDATE: remote-candidate
+ * @GST_WEBRTC_STATS_CERTIFICATE: certificate
+ */
+typedef enum /*< underscore_name=gst_webrtc_stats_type >*/
+{
+ GST_WEBRTC_STATS_CODEC = 1,
+ GST_WEBRTC_STATS_INBOUND_RTP,
+ GST_WEBRTC_STATS_OUTBOUND_RTP,
+ GST_WEBRTC_STATS_REMOTE_INBOUND_RTP,
+ GST_WEBRTC_STATS_REMOTE_OUTBOUND_RTP,
+ GST_WEBRTC_STATS_CSRC,
+ GST_WEBRTC_STATS_PEER_CONNECTION,
+ GST_WEBRTC_STATS_DATA_CHANNEL,
+ GST_WEBRTC_STATS_STREAM,
+ GST_WEBRTC_STATS_TRANSPORT,
+ GST_WEBRTC_STATS_CANDIDATE_PAIR,
+ GST_WEBRTC_STATS_LOCAL_CANDIDATE,
+ GST_WEBRTC_STATS_REMOTE_CANDIDATE,
+ GST_WEBRTC_STATS_CERTIFICATE,
+} GstWebRTCStatsType;
+
+/**
+ * GstWebRTCFECType:
+ * @GST_WEBRTC_FEC_TYPE_NONE: none
+ * @GST_WEBRTC_FEC_TYPE_ULP_RED: ulpfec + red
+ *
+ * Since: 1.14.1
+ */
+typedef enum /*< underscore_name=gst_webrtc_fec_type >*/
+{
+ GST_WEBRTC_FEC_TYPE_NONE,
+ GST_WEBRTC_FEC_TYPE_ULP_RED,
+} GstWebRTCFECType;
+
+/**
+ * GstWebRTCSCTPTransportState:
+ * @GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW: new
+ * @GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTING: connecting
+ * @GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTED: connected
+ * @GST_WEBRTC_SCTP_TRANSPORT_STATE_CLOSED: closed
+ *
+ * See <http://w3c.github.io/webrtc-pc/#dom-rtcsctptransportstate>
+ *
+ * Since: 1.16
+ */
+typedef enum /*< underscore_name=gst_webrtc_sctp_transport_state >*/
+{
+ GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW,
+ GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTING,
+ GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTED,
+ GST_WEBRTC_SCTP_TRANSPORT_STATE_CLOSED,
+} GstWebRTCSCTPTransportState;
+
+/**
+ * GstWebRTCPriorityType:
+ * @GST_WEBRTC_PRIORITY_TYPE_VERY_LOW: very-low
+ * @GST_WEBRTC_PRIORITY_TYPE_LOW: low
+ * @GST_WEBRTC_PRIORITY_TYPE_MEDIUM: medium
+ * @GST_WEBRTC_PRIORITY_TYPE_HIGH: high
+ *
+ * See <http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype>
+ *
+ * Since: 1.16
+ */
+typedef enum /*< underscore_name=gst_webrtc_priority_type >*/
+{
+ GST_WEBRTC_PRIORITY_TYPE_VERY_LOW = 1,
+ GST_WEBRTC_PRIORITY_TYPE_LOW,
+ GST_WEBRTC_PRIORITY_TYPE_MEDIUM,
+ GST_WEBRTC_PRIORITY_TYPE_HIGH,
+} GstWebRTCPriorityType;
+
+/**
+ * GstWebRTCDataChannelState:
+ * @GST_WEBRTC_DATA_CHANNEL_STATE_NEW: new
+ * @GST_WEBRTC_DATA_CHANNEL_STATE_CONNECTING: connection
+ * @GST_WEBRTC_DATA_CHANNEL_STATE_OPEN: open
+ * @GST_WEBRTC_DATA_CHANNEL_STATE_CLOSING: closing
+ * @GST_WEBRTC_DATA_CHANNEL_STATE_CLOSED: closed
+ *
+ * See <http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate>
+ *
+ * Since: 1.16
+ */
+typedef enum /*< underscore_name=gst_webrtc_data_channel_state >*/
+{
+ GST_WEBRTC_DATA_CHANNEL_STATE_NEW,
+ GST_WEBRTC_DATA_CHANNEL_STATE_CONNECTING,
+ GST_WEBRTC_DATA_CHANNEL_STATE_OPEN,
+ GST_WEBRTC_DATA_CHANNEL_STATE_CLOSING,
+ GST_WEBRTC_DATA_CHANNEL_STATE_CLOSED,
+} GstWebRTCDataChannelState;
+
+/**
+ * GstWebRTCBundlePolicy:
+ * @GST_WEBRTC_BUNDLE_POLICY_NONE: none
+ * @GST_WEBRTC_BUNDLE_POLICY_BALANCED: balanced
+ * @GST_WEBRTC_BUNDLE_POLICY_MAX_COMPAT: max-compat
+ * @GST_WEBRTC_BUNDLE_POLICY_MAX_BUNDLE: max-bundle
+ *
+ * See https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-24#section-4.1.1
+ * for more information.
+ *
+ * Since: 1.16
+ */
+typedef enum /*<underscore_name=gst_webrtc_bundle_policy>*/
+{
+ GST_WEBRTC_BUNDLE_POLICY_NONE,
+ GST_WEBRTC_BUNDLE_POLICY_BALANCED,
+ GST_WEBRTC_BUNDLE_POLICY_MAX_COMPAT,
+ GST_WEBRTC_BUNDLE_POLICY_MAX_BUNDLE,
+} GstWebRTCBundlePolicy;
+
+/**
+ * GstWebRTCICETransportPolicy:
+ * @GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL: all
+ * @GST_WEBRTC_ICE_TRANSPORT_POLICY_RELAY: relay
+ *
+ * See https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-24#section-4.1.1
+ * for more information.
+ *
+ * Since: 1.16
+ */
+typedef enum /*<underscore_name=gst_webrtc_ice_transport_policy>*/
+{
+ GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL,
+ GST_WEBRTC_ICE_TRANSPORT_POLICY_RELAY,
+} GstWebRTCICETransportPolicy;
+
+/**
+ * GstWebRTCKind:
+ * @GST_WEBRTC_KIND_UNKNOWN: Kind has not yet been set
+ * @GST_WEBRTC_KIND_AUDIO: Kind is audio
+ * @GST_WEBRTC_KIND_VIDEO: Kind is audio
+ *
+ * https://w3c.github.io/mediacapture-main/#dom-mediastreamtrack-kind
+ *
+ * Since: 1.20
+ */
+typedef enum /*<underscore_name=gst_webrtc_kind>*/
+{
+ GST_WEBRTC_KIND_UNKNOWN,
+ GST_WEBRTC_KIND_AUDIO,
+ GST_WEBRTC_KIND_VIDEO,
+} GstWebRTCKind;
+
+
+GST_WEBRTC_API
+GQuark gst_webrtc_error_quark (void);
+
+/**
+ * GST_WEBRTC_ERROR:
+ *
+ * Since: 1.20
+ */
+#define GST_WEBRTC_ERROR gst_webrtc_error_quark ()
+
+/**
+ * GstWebRTCError:
+ * @GST_WEBRTC_ERROR_DATA_CHANNEL_FAILURE: data-channel-failure
+ * @GST_WEBRTC_ERROR_DTLS_FAILURE: dtls-failure
+ * @GST_WEBRTC_ERROR_FINGERPRINT_FAILURE: fingerprint-failure
+ * @GST_WEBRTC_ERROR_SCTP_FAILURE: sctp-failure
+ * @GST_WEBRTC_ERROR_SDP_SYNTAX_ERROR: sdp-syntax-error
+ * @GST_WEBRTC_ERROR_HARDWARE_ENCODER_NOT_AVAILABLE: hardware-encoder-not-available
+ * @GST_WEBRTC_ERROR_ENCODER_ERROR: encoder-error
+ * @GST_WEBRTC_ERROR_INVALID_STATE: invalid-state (part of WebIDL specification)
+ * @GST_WEBRTC_ERROR_INTERNAL_FAILURE: GStreamer-specific failure, not matching any other value from the specification
+ *
+ * See <https://www.w3.org/TR/webrtc/#dom-rtcerrordetailtype> for more information.
+ *
+ * Since: 1.20
+ */
+typedef enum /*<underscore_name=gst_webrtc_error>*/
+{
+ GST_WEBRTC_ERROR_DATA_CHANNEL_FAILURE,
+ GST_WEBRTC_ERROR_DTLS_FAILURE,
+ GST_WEBRTC_ERROR_FINGERPRINT_FAILURE,
+ GST_WEBRTC_ERROR_SCTP_FAILURE,
+ GST_WEBRTC_ERROR_SDP_SYNTAX_ERROR,
+ GST_WEBRTC_ERROR_HARDWARE_ENCODER_NOT_AVAILABLE,
+ GST_WEBRTC_ERROR_ENCODER_ERROR,
+ GST_WEBRTC_ERROR_INVALID_STATE,
+ GST_WEBRTC_ERROR_INTERNAL_FAILURE
+} GstWebRTCError;
+
+
+#endif /* __GST_WEBRTC_FWD_H__ */