webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Public Types | Public Member Functions | Static Public Member Functions | List of all members
webrtc::VideoCodingModule Class Referenceabstract

#include <video_coding.h>

Inheritance diagram for webrtc::VideoCodingModule:
webrtc::Module webrtc::Module

Public Types

enum  SenderNackMode {
  kNackNone, kNackAll, kNackSelective, kNackNone,
  kNackAll, kNackSelective
}
 
enum  ReceiverRobustness {
  kNone, kHardNack, kSoftNack, kReferenceSelection,
  kNone, kHardNack, kSoftNack, kReferenceSelection
}
 
enum  SenderNackMode {
  kNackNone, kNackAll, kNackSelective, kNackNone,
  kNackAll, kNackSelective
}
 
enum  ReceiverRobustness {
  kNone, kHardNack, kSoftNack, kReferenceSelection,
  kNone, kHardNack, kSoftNack, kReferenceSelection
}
 

Public Member Functions

virtual int32_t RegisterSendCodec (const VideoCodec *sendCodec, uint32_t numberOfCores, uint32_t maxPayloadSize)=0
 
virtual int32_t RegisterExternalEncoder (VideoEncoder *externalEncoder, uint8_t payloadType, bool internalSource=false)=0
 
virtual int Bitrate (unsigned int *bitrate) const =0
 
virtual int FrameRate (unsigned int *framerate) const =0
 
virtual int32_t SetChannelParameters (uint32_t target_bitrate, uint8_t lossRate, int64_t rtt)=0
 
virtual int32_t SetReceiveChannelParameters (int64_t rtt)=0
 
virtual int32_t RegisterProtectionCallback (VCMProtectionCallback *protection)=0
 
virtual int32_t SetVideoProtection (VCMVideoProtection videoProtection, bool enable)=0
 
virtual int32_t AddVideoFrame (const VideoFrame &videoFrame, const CodecSpecificInfo *codecSpecificInfo=NULL)=0
 
virtual int32_t IntraFrameRequest (size_t stream_index)=0
 
virtual int32_t EnableFrameDropper (bool enable)=0
 
virtual int32_t RegisterReceiveCodec (const VideoCodec *receiveCodec, int32_t numberOfCores, bool requireKeyFrame=false)=0
 
virtual void RegisterExternalDecoder (VideoDecoder *externalDecoder, uint8_t payloadType)=0
 
virtual int32_t RegisterReceiveCallback (VCMReceiveCallback *receiveCallback)=0
 
virtual int32_t RegisterReceiveStatisticsCallback (VCMReceiveStatisticsCallback *receiveStats)=0
 
virtual int32_t RegisterDecoderTimingCallback (VCMDecoderTimingCallback *decoderTiming)=0
 
virtual int32_t RegisterFrameTypeCallback (VCMFrameTypeCallback *frameTypeCallback)=0
 
virtual int32_t RegisterPacketRequestCallback (VCMPacketRequestCallback *callback)=0
 
virtual int32_t Decode (uint16_t maxWaitTimeMs=200)=0
 
virtual int32_t ReceiveCodec (VideoCodec *currentReceiveCodec) const =0
 
virtual VideoCodecType ReceiveCodec () const =0
 
virtual int32_t IncomingPacket (const uint8_t *incomingPayload, size_t payloadLength, const WebRtcRTPHeader &rtpInfo)=0
 
virtual int32_t SetMinimumPlayoutDelay (uint32_t minPlayoutDelayMs)=0
 
virtual int32_t SetRenderDelay (uint32_t timeMS)=0
 
virtual int32_t Delay () const =0
 
virtual uint32_t DiscardedPackets () const =0
 
virtual int SetReceiverRobustnessMode (ReceiverRobustness robustnessMode, VCMDecodeErrorMode errorMode)=0
 
virtual void SetDecodeErrorMode (VCMDecodeErrorMode decode_error_mode)=0
 
virtual void SetNackSettings (size_t max_nack_list_size, int max_packet_age_to_nack, int max_incomplete_time_ms)=0
 
virtual int SetMinReceiverDelay (int desired_delay_ms)=0
 
virtual void RegisterPostEncodeImageCallback (EncodedImageCallback *post_encode_callback)=0
 
virtual void TriggerDecoderShutdown ()=0
 
virtual int32_t RegisterSendCodec (const VideoCodec *sendCodec, uint32_t numberOfCores, uint32_t maxPayloadSize)=0
 
virtual int32_t RegisterExternalEncoder (VideoEncoder *externalEncoder, uint8_t payloadType, bool internalSource=false)=0
 
virtual int Bitrate (unsigned int *bitrate) const =0
 
virtual int FrameRate (unsigned int *framerate) const =0
 
virtual int32_t SetChannelParameters (uint32_t target_bitrate, uint8_t lossRate, int64_t rtt)=0
 
virtual int32_t SetReceiveChannelParameters (int64_t rtt)=0
 
virtual int32_t RegisterProtectionCallback (VCMProtectionCallback *protection)=0
 
virtual int32_t SetVideoProtection (VCMVideoProtection videoProtection, bool enable)=0
 
virtual int32_t AddVideoFrame (const VideoFrame &videoFrame, const CodecSpecificInfo *codecSpecificInfo=NULL)=0
 
virtual int32_t IntraFrameRequest (size_t stream_index)=0
 
virtual int32_t EnableFrameDropper (bool enable)=0
 
virtual int32_t RegisterReceiveCodec (const VideoCodec *receiveCodec, int32_t numberOfCores, bool requireKeyFrame=false)=0
 
virtual void RegisterExternalDecoder (VideoDecoder *externalDecoder, uint8_t payloadType)=0
 
virtual int32_t RegisterReceiveCallback (VCMReceiveCallback *receiveCallback)=0
 
virtual int32_t RegisterReceiveStatisticsCallback (VCMReceiveStatisticsCallback *receiveStats)=0
 
virtual int32_t RegisterDecoderTimingCallback (VCMDecoderTimingCallback *decoderTiming)=0
 
virtual int32_t RegisterFrameTypeCallback (VCMFrameTypeCallback *frameTypeCallback)=0
 
virtual int32_t RegisterPacketRequestCallback (VCMPacketRequestCallback *callback)=0
 
virtual int32_t Decode (uint16_t maxWaitTimeMs=200)=0
 
virtual int32_t ReceiveCodec (VideoCodec *currentReceiveCodec) const =0
 
virtual VideoCodecType ReceiveCodec () const =0
 
virtual int32_t IncomingPacket (const uint8_t *incomingPayload, size_t payloadLength, const WebRtcRTPHeader &rtpInfo)=0
 
virtual int32_t SetMinimumPlayoutDelay (uint32_t minPlayoutDelayMs)=0
 
virtual int32_t SetRenderDelay (uint32_t timeMS)=0
 
virtual int32_t Delay () const =0
 
virtual uint32_t DiscardedPackets () const =0
 
virtual int SetReceiverRobustnessMode (ReceiverRobustness robustnessMode, VCMDecodeErrorMode errorMode)=0
 
virtual void SetDecodeErrorMode (VCMDecodeErrorMode decode_error_mode)=0
 
virtual void SetNackSettings (size_t max_nack_list_size, int max_packet_age_to_nack, int max_incomplete_time_ms)=0
 
virtual int SetMinReceiverDelay (int desired_delay_ms)=0
 
virtual void RegisterPostEncodeImageCallback (EncodedImageCallback *post_encode_callback)=0
 
virtual void TriggerDecoderShutdown ()=0
 
- Public Member Functions inherited from webrtc::Module
virtual int64_t TimeUntilNextProcess ()=0
 
virtual void Process ()=0
 
virtual void ProcessThreadAttached (ProcessThread *)
 
virtual int64_t TimeUntilNextProcess ()=0
 
virtual void Process ()=0
 
virtual void ProcessThreadAttached (ProcessThread *)
 

Static Public Member Functions

static VideoCodingModuleCreate (Clock *clock, EventFactory *event_factory)
 
static VideoCodingModuleCreate (Clock *clock, VCMQMSettingsCallback *qm_settings_callback, NackSender *nack_sender, KeyFrameRequestSender *keyframe_request_sender, EncodedImageCallback *pre_decode_image_callback)
 
static VideoCodingModuleCreate (Clock *clock, EventFactory *event_factory, NackSender *nack_sender, KeyFrameRequestSender *keyframe_request_sender)
 
static void Codec (VideoCodecType codecType, VideoCodec *codec)
 
static VideoCodingModuleCreate (Clock *clock, EventFactory *event_factory)
 
static VideoCodingModuleCreate (Clock *clock, VCMQMSettingsCallback *qm_settings_callback, NackSender *nack_sender, KeyFrameRequestSender *keyframe_request_sender, EncodedImageCallback *pre_decode_image_callback)
 
static VideoCodingModuleCreate (Clock *clock, EventFactory *event_factory, NackSender *nack_sender, KeyFrameRequestSender *keyframe_request_sender)
 
static void Codec (VideoCodecType codecType, VideoCodec *codec)
 

Additional Inherited Members

- Protected Member Functions inherited from webrtc::Module
virtual ~Module ()
 
virtual ~Module ()
 

Member Enumeration Documentation

◆ ReceiverRobustness [1/2]

Enumerator
kNone 
kHardNack 
kSoftNack 
kReferenceSelection 
kNone 
kHardNack 
kSoftNack 
kReferenceSelection 

◆ ReceiverRobustness [2/2]

Enumerator
kNone 
kHardNack 
kSoftNack 
kReferenceSelection 
kNone 
kHardNack 
kSoftNack 
kReferenceSelection 

◆ SenderNackMode [1/2]

Enumerator
kNackNone 
kNackAll 
kNackSelective 
kNackNone 
kNackAll 
kNackSelective 

◆ SenderNackMode [2/2]

Enumerator
kNackNone 
kNackAll 
kNackSelective 
kNackNone 
kNackAll 
kNackSelective 

Member Function Documentation

◆ AddVideoFrame() [1/2]

virtual int32_t webrtc::VideoCodingModule::AddVideoFrame ( const VideoFrame videoFrame,
const CodecSpecificInfo codecSpecificInfo = NULL 
)
pure virtual

◆ AddVideoFrame() [2/2]

virtual int32_t webrtc::VideoCodingModule::AddVideoFrame ( const VideoFrame videoFrame,
const CodecSpecificInfo codecSpecificInfo = NULL 
)
pure virtual

◆ Bitrate() [1/2]

virtual int webrtc::VideoCodingModule::Bitrate ( unsigned int *  bitrate) const
pure virtual

◆ Bitrate() [2/2]

virtual int webrtc::VideoCodingModule::Bitrate ( unsigned int *  bitrate) const
pure virtual

◆ Codec() [1/2]

static void webrtc::VideoCodingModule::Codec ( VideoCodecType  codecType,
VideoCodec codec 
)
static

◆ Codec() [2/2]

void webrtc::VideoCodingModule::Codec ( VideoCodecType  codecType,
VideoCodec codec 
)
static

◆ Create() [1/6]

static VideoCodingModule* webrtc::VideoCodingModule::Create ( Clock clock,
EventFactory event_factory 
)
static

◆ Create() [2/6]

VideoCodingModule * webrtc::VideoCodingModule::Create ( Clock clock,
EventFactory event_factory 
)
static

◆ Create() [3/6]

VideoCodingModule * webrtc::VideoCodingModule::Create ( Clock clock,
VCMQMSettingsCallback *  qm_settings_callback,
NackSender nack_sender,
KeyFrameRequestSender keyframe_request_sender,
EncodedImageCallback pre_decode_image_callback 
)
static

◆ Create() [4/6]

static VideoCodingModule* webrtc::VideoCodingModule::Create ( Clock clock,
VCMQMSettingsCallback *  qm_settings_callback,
NackSender nack_sender,
KeyFrameRequestSender keyframe_request_sender,
EncodedImageCallback pre_decode_image_callback 
)
static

◆ Create() [5/6]

static VideoCodingModule* webrtc::VideoCodingModule::Create ( Clock clock,
EventFactory event_factory,
NackSender nack_sender,
KeyFrameRequestSender keyframe_request_sender 
)
static

◆ Create() [6/6]

VideoCodingModule * webrtc::VideoCodingModule::Create ( Clock clock,
EventFactory event_factory,
NackSender nack_sender,
KeyFrameRequestSender keyframe_request_sender 
)
static

◆ Decode() [1/2]

virtual int32_t webrtc::VideoCodingModule::Decode ( uint16_t  maxWaitTimeMs = 200)
pure virtual

◆ Decode() [2/2]

virtual int32_t webrtc::VideoCodingModule::Decode ( uint16_t  maxWaitTimeMs = 200)
pure virtual

◆ Delay() [1/2]

virtual int32_t webrtc::VideoCodingModule::Delay ( ) const
pure virtual

◆ Delay() [2/2]

virtual int32_t webrtc::VideoCodingModule::Delay ( ) const
pure virtual

◆ DiscardedPackets() [1/2]

virtual uint32_t webrtc::VideoCodingModule::DiscardedPackets ( ) const
pure virtual

◆ DiscardedPackets() [2/2]

virtual uint32_t webrtc::VideoCodingModule::DiscardedPackets ( ) const
pure virtual

◆ EnableFrameDropper() [1/2]

virtual int32_t webrtc::VideoCodingModule::EnableFrameDropper ( bool  enable)
pure virtual

◆ EnableFrameDropper() [2/2]

virtual int32_t webrtc::VideoCodingModule::EnableFrameDropper ( bool  enable)
pure virtual

◆ FrameRate() [1/2]

virtual int webrtc::VideoCodingModule::FrameRate ( unsigned int *  framerate) const
pure virtual

◆ FrameRate() [2/2]

virtual int webrtc::VideoCodingModule::FrameRate ( unsigned int *  framerate) const
pure virtual

◆ IncomingPacket() [1/2]

virtual int32_t webrtc::VideoCodingModule::IncomingPacket ( const uint8_t incomingPayload,
size_t  payloadLength,
const WebRtcRTPHeader rtpInfo 
)
pure virtual

◆ IncomingPacket() [2/2]

virtual int32_t webrtc::VideoCodingModule::IncomingPacket ( const uint8_t incomingPayload,
size_t  payloadLength,
const WebRtcRTPHeader rtpInfo 
)
pure virtual

◆ IntraFrameRequest() [1/2]

virtual int32_t webrtc::VideoCodingModule::IntraFrameRequest ( size_t  stream_index)
pure virtual

◆ IntraFrameRequest() [2/2]

virtual int32_t webrtc::VideoCodingModule::IntraFrameRequest ( size_t  stream_index)
pure virtual

◆ ReceiveCodec() [1/4]

virtual int32_t webrtc::VideoCodingModule::ReceiveCodec ( VideoCodec currentReceiveCodec) const
pure virtual

◆ ReceiveCodec() [2/4]

virtual int32_t webrtc::VideoCodingModule::ReceiveCodec ( VideoCodec currentReceiveCodec) const
pure virtual

◆ ReceiveCodec() [3/4]

virtual VideoCodecType webrtc::VideoCodingModule::ReceiveCodec ( ) const
pure virtual

◆ ReceiveCodec() [4/4]

virtual VideoCodecType webrtc::VideoCodingModule::ReceiveCodec ( ) const
pure virtual

◆ RegisterDecoderTimingCallback() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterDecoderTimingCallback ( VCMDecoderTimingCallback decoderTiming)
pure virtual

◆ RegisterDecoderTimingCallback() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterDecoderTimingCallback ( VCMDecoderTimingCallback decoderTiming)
pure virtual

◆ RegisterExternalDecoder() [1/2]

virtual void webrtc::VideoCodingModule::RegisterExternalDecoder ( VideoDecoder externalDecoder,
uint8_t  payloadType 
)
pure virtual

◆ RegisterExternalDecoder() [2/2]

virtual void webrtc::VideoCodingModule::RegisterExternalDecoder ( VideoDecoder externalDecoder,
uint8_t  payloadType 
)
pure virtual

◆ RegisterExternalEncoder() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterExternalEncoder ( VideoEncoder externalEncoder,
uint8_t  payloadType,
bool  internalSource = false 
)
pure virtual

◆ RegisterExternalEncoder() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterExternalEncoder ( VideoEncoder externalEncoder,
uint8_t  payloadType,
bool  internalSource = false 
)
pure virtual

◆ RegisterFrameTypeCallback() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterFrameTypeCallback ( VCMFrameTypeCallback frameTypeCallback)
pure virtual

◆ RegisterFrameTypeCallback() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterFrameTypeCallback ( VCMFrameTypeCallback frameTypeCallback)
pure virtual

◆ RegisterPacketRequestCallback() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterPacketRequestCallback ( VCMPacketRequestCallback callback)
pure virtual

◆ RegisterPacketRequestCallback() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterPacketRequestCallback ( VCMPacketRequestCallback callback)
pure virtual

◆ RegisterPostEncodeImageCallback() [1/2]

virtual void webrtc::VideoCodingModule::RegisterPostEncodeImageCallback ( EncodedImageCallback post_encode_callback)
pure virtual

◆ RegisterPostEncodeImageCallback() [2/2]

virtual void webrtc::VideoCodingModule::RegisterPostEncodeImageCallback ( EncodedImageCallback post_encode_callback)
pure virtual

◆ RegisterProtectionCallback() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterProtectionCallback ( VCMProtectionCallback protection)
pure virtual

◆ RegisterProtectionCallback() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterProtectionCallback ( VCMProtectionCallback protection)
pure virtual

◆ RegisterReceiveCallback() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterReceiveCallback ( VCMReceiveCallback receiveCallback)
pure virtual

◆ RegisterReceiveCallback() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterReceiveCallback ( VCMReceiveCallback receiveCallback)
pure virtual

◆ RegisterReceiveCodec() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterReceiveCodec ( const VideoCodec receiveCodec,
int32_t  numberOfCores,
bool  requireKeyFrame = false 
)
pure virtual

◆ RegisterReceiveCodec() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterReceiveCodec ( const VideoCodec receiveCodec,
int32_t  numberOfCores,
bool  requireKeyFrame = false 
)
pure virtual

◆ RegisterReceiveStatisticsCallback() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterReceiveStatisticsCallback ( VCMReceiveStatisticsCallback receiveStats)
pure virtual

◆ RegisterReceiveStatisticsCallback() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterReceiveStatisticsCallback ( VCMReceiveStatisticsCallback receiveStats)
pure virtual

◆ RegisterSendCodec() [1/2]

virtual int32_t webrtc::VideoCodingModule::RegisterSendCodec ( const VideoCodec sendCodec,
uint32_t  numberOfCores,
uint32_t  maxPayloadSize 
)
pure virtual

◆ RegisterSendCodec() [2/2]

virtual int32_t webrtc::VideoCodingModule::RegisterSendCodec ( const VideoCodec sendCodec,
uint32_t  numberOfCores,
uint32_t  maxPayloadSize 
)
pure virtual

◆ SetChannelParameters() [1/2]

virtual int32_t webrtc::VideoCodingModule::SetChannelParameters ( uint32_t  target_bitrate,
uint8_t  lossRate,
int64_t  rtt 
)
pure virtual

◆ SetChannelParameters() [2/2]

virtual int32_t webrtc::VideoCodingModule::SetChannelParameters ( uint32_t  target_bitrate,
uint8_t  lossRate,
int64_t  rtt 
)
pure virtual

◆ SetDecodeErrorMode() [1/2]

virtual void webrtc::VideoCodingModule::SetDecodeErrorMode ( VCMDecodeErrorMode  decode_error_mode)
pure virtual

◆ SetDecodeErrorMode() [2/2]

virtual void webrtc::VideoCodingModule::SetDecodeErrorMode ( VCMDecodeErrorMode  decode_error_mode)
pure virtual

◆ SetMinimumPlayoutDelay() [1/2]

virtual int32_t webrtc::VideoCodingModule::SetMinimumPlayoutDelay ( uint32_t  minPlayoutDelayMs)
pure virtual

◆ SetMinimumPlayoutDelay() [2/2]

virtual int32_t webrtc::VideoCodingModule::SetMinimumPlayoutDelay ( uint32_t  minPlayoutDelayMs)
pure virtual

◆ SetMinReceiverDelay() [1/2]

virtual int webrtc::VideoCodingModule::SetMinReceiverDelay ( int  desired_delay_ms)
pure virtual

◆ SetMinReceiverDelay() [2/2]

virtual int webrtc::VideoCodingModule::SetMinReceiverDelay ( int  desired_delay_ms)
pure virtual

◆ SetNackSettings() [1/2]

virtual void webrtc::VideoCodingModule::SetNackSettings ( size_t  max_nack_list_size,
int  max_packet_age_to_nack,
int  max_incomplete_time_ms 
)
pure virtual

◆ SetNackSettings() [2/2]

virtual void webrtc::VideoCodingModule::SetNackSettings ( size_t  max_nack_list_size,
int  max_packet_age_to_nack,
int  max_incomplete_time_ms 
)
pure virtual

◆ SetReceiveChannelParameters() [1/2]

virtual int32_t webrtc::VideoCodingModule::SetReceiveChannelParameters ( int64_t  rtt)
pure virtual

◆ SetReceiveChannelParameters() [2/2]

virtual int32_t webrtc::VideoCodingModule::SetReceiveChannelParameters ( int64_t  rtt)
pure virtual

◆ SetReceiverRobustnessMode() [1/2]

virtual int webrtc::VideoCodingModule::SetReceiverRobustnessMode ( ReceiverRobustness  robustnessMode,
VCMDecodeErrorMode  errorMode 
)
pure virtual

◆ SetReceiverRobustnessMode() [2/2]

virtual int webrtc::VideoCodingModule::SetReceiverRobustnessMode ( ReceiverRobustness  robustnessMode,
VCMDecodeErrorMode  errorMode 
)
pure virtual

◆ SetRenderDelay() [1/2]

virtual int32_t webrtc::VideoCodingModule::SetRenderDelay ( uint32_t  timeMS)
pure virtual

◆ SetRenderDelay() [2/2]

virtual int32_t webrtc::VideoCodingModule::SetRenderDelay ( uint32_t  timeMS)
pure virtual

◆ SetVideoProtection() [1/2]

virtual int32_t webrtc::VideoCodingModule::SetVideoProtection ( VCMVideoProtection  videoProtection,
bool  enable 
)
pure virtual

◆ SetVideoProtection() [2/2]

virtual int32_t webrtc::VideoCodingModule::SetVideoProtection ( VCMVideoProtection  videoProtection,
bool  enable 
)
pure virtual

◆ TriggerDecoderShutdown() [1/2]

virtual void webrtc::VideoCodingModule::TriggerDecoderShutdown ( )
pure virtual

◆ TriggerDecoderShutdown() [2/2]

virtual void webrtc::VideoCodingModule::TriggerDecoderShutdown ( )
pure virtual

The documentation for this class was generated from the following files: