api目录下封装了webrtc相关的供外部调用接口.
datachannel.h
1 | // Including this file is deprecated. It is no longer part of the public API. |
datachannelinterface.h
- DataChannelObserver:Used to implement RTCDataChannel events.The code responding to these callbacks should unwind the stack before using any other webrtc APIs; re-entrancy is not supported.
- DataChannelInterface:
dtmfsenderinterface.h
- DtmfSenderObserverInterface:DtmfSender callback interface, used to implement RTCDtmfSender events.Applications should implement this interface to get notifications from the DtmfSender.
- DtmfSenderInterface:The interface of native implementation of the RTCDTMFSender defined by the WebRTC W3C Editor’s Draft.
fakemetricsobserver.h/cc
- FakeMetricsObserver
jsep.h
- IceCandidateInterface:Class representation of an ICE candidate.An instance of this interface is supposed to be owned by one class at a time and is therefore not expected to be thread safe.An instance can be created by CreateIceCandidate.
- IceCandidateCollection:This class represents a collection of candidates for a specific m= section.Used in SessionDescriptionInterface.
- SessionDescriptionInterface:Class representation of an SDP session description.An instance of this interface is supposed to be owned by one class at a time and is therefore not expected to be thread safe.An instance can be created by CreateSessionDescription.
- CreateSessionDescriptionObserver:CreateOffer and CreateAnswer callback interface.
- SetSessionDescriptionObserver:SetLocalDescription and SetRemoteDescription callback interface.
jsepicecandidate.h
- JsepIceCandidate:继承自IceCandidateInterface
- JsepCandidateCollection:继承自IceCandidateCollection
jsepsessiondescription.h
- JsepSessionDescription:Implementation of SessionDescriptionInterface.
mediaconstraintsinterface.h/cc
- MediaConstraintsInterface:Interface used for passing arguments about media constraints to the MediaStream and PeerConnection implementation.Constraints may be either “mandatory”, which means that unless satisfied,the method taking the constraints should fail, or “optional”, which means they may not be satisfied..
mediastream.h
1 | // Including this file is deprecated. It is no longer part of the public API. |
mediastreaminterface.h/cc
- OberverInterface
- NotifierInterface
- MediaSourceInterface:Base class for sources. A MediaStreamTrack has an underlying source that provides media. A source can be shared by multiple tracks.继承自notifierInterface
- MediaStreamTrackInterface:继承自notifierInterface
- VideoTrackSourceInterface:VideoTrackSourceInterface is a reference counted source used for VideoTracks. The same source can be used by multiple VideoTracks.继承自MediaSourceinterface与VideoSourceInterface
- VideoTrackInterface: 继承自MediaStreamTrackInterface与VideoSourceInterface
- AudioTrackSinkinterface:
- AudioSourceInterface:AudioSourceInterface is a reference counted source used for AudioTracks.The same source can be used by multiple AudioTracks.继承自MediaSourceInterface.
- AudioProcessorInterface:Interface of the audio processor used by the audio track to collect statistics.
- AudioTrackInterface:继承自MediaStreamTrackInterface
- MediaStreamInterface: A major difference is that remote audio/video tracks (received by a PeerConnection/RtpReceiver) are not synchronized simply by adding them to the same stream; a session description with the correct “a=msid” attributes must be pushed down.Thus, this interface acts as simply a container for tracks.
mediastreamproxy.h
Move this to .cc file and out of api/. What threads methods // are called on is an implementation detail.
mediastreamtrack.h
1 | // Including this file is deprecated. It is no longer part of the public API. |
mediatypes.h/cc
mediatype到string转换
notifier.h
- Notifier:
peerconnectionfactoryproxy.h
peerconnectioninterface.h
1 | // This file contains the PeerConnection interface as defined in |
- StreamCollectionInterface
- StatsObserver
- PeerConnectionInterface
- PeerConnectionObserver:PeerConnection callback interface, used for RTCPeerConnection events. Application should implement these methods.
- PeerConnectionFactoryInterface:PeerConnectionFactoryInterface is the factory interface used for creating PeerConnection, MediaStream and MediaStreamTrack objects.The simplest method for obtaiing one, CreatePeerConnectionFactory will create the required libjingle threads, socket and network manager factory classes for networking if none are provided, though it requires that the application runs a message loop on the thread that called the method (see explanation below) If an application decides to provide its own threads and/or implementation of networking classes, it should use the alternate CreatePeerConnectionFactory method which accepts threads as input, and use the CreatePeerConnection version that takes a PortAllocator as an argument.
peerconnectionproxy.h
proxy.h
1 | // This file contains Macros for creating proxies for webrtc MediaStream and |
rtcerror.h/cc
rtcerror_unittest.cc
rtpparameters.h
rtpreceiverinterface.h
rtpsender.h
rtpsenderinterface.h
statstypes.h/cc
streamcollection.h
umametrics.h
videosourceproxy.h
videotracksource.h
webrtcsdp.h
audio/audio_mixer.h
- AudioMixer:This class is under development and is not yet intended for for use outside of WebRtc/Libjingle.
audio_codecs/audio_decoder.h/cc
- AudioDecoder
audio_codecs/audio_decoder_factory.h
- AudioDecoderFactory
audio_codecs/audio_encoder.h/cc
-AudioEncoder: his is the interface class for encoders in AudioCoding module. Each codec type must have an implementation of this class.
audio_codecs/audio_encoder_factory.h
- AudioEncoderFactory