webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
webrtc::AudioEncoderOpus Class Referencefinal

#include <audio_encoder_opus.h>

Inheritance diagram for webrtc::AudioEncoderOpus:
webrtc::AudioEncoder webrtc::AudioEncoder

Classes

struct  Config
 
class  PacketLossFractionSmoother
 

Public Types

enum  ApplicationMode { kVoip = 0, kAudio = 1, kVoip = 0, kAudio = 1 }
 
enum  ApplicationMode { kVoip = 0, kAudio = 1, kVoip = 0, kAudio = 1 }
 
using AudioNetworkAdaptorCreator = std::function< std::unique_ptr< AudioNetworkAdaptor >(const std::string &, RtcEventLog *, const Clock *)>
 
using AudioNetworkAdaptorCreator = std::function< std::unique_ptr< AudioNetworkAdaptor >(const std::string &, RtcEventLog *, const Clock *)>
 
- Public Types inherited from webrtc::AudioEncoder
enum  CodecType {
  CodecType::kOther = 0, CodecType::kOpus = 1, CodecType::kIsac = 2, CodecType::kPcmA = 3,
  CodecType::kPcmU = 4, CodecType::kG722 = 5, CodecType::kIlbc = 6, CodecType::kMaxLoggedAudioCodecTypes,
  CodecType::kOther = 0, CodecType::kOpus = 1, CodecType::kIsac = 2, CodecType::kPcmA = 3,
  CodecType::kPcmU = 4, CodecType::kG722 = 5, CodecType::kIlbc = 6, CodecType::kMaxLoggedAudioCodecTypes
}
 
enum  Application { Application::kSpeech, Application::kAudio, Application::kSpeech, Application::kAudio }
 
enum  CodecType {
  CodecType::kOther = 0, CodecType::kOpus = 1, CodecType::kIsac = 2, CodecType::kPcmA = 3,
  CodecType::kPcmU = 4, CodecType::kG722 = 5, CodecType::kIlbc = 6, CodecType::kMaxLoggedAudioCodecTypes,
  CodecType::kOther = 0, CodecType::kOpus = 1, CodecType::kIsac = 2, CodecType::kPcmA = 3,
  CodecType::kPcmU = 4, CodecType::kG722 = 5, CodecType::kIlbc = 6, CodecType::kMaxLoggedAudioCodecTypes
}
 
enum  Application { Application::kSpeech, Application::kAudio, Application::kSpeech, Application::kAudio }
 

Public Member Functions

 AudioEncoderOpus (const Config &config, AudioNetworkAdaptorCreator &&audio_network_adaptor_creator=nullptr, std::unique_ptr< SmoothingFilter > bitrate_smoother=nullptr)
 
 AudioEncoderOpus (const CodecInst &codec_inst)
 
 ~AudioEncoderOpus () override
 
int SampleRateHz () const override
 
size_t NumChannels () const override
 
size_t Num10MsFramesInNextPacket () const override
 
size_t Max10MsFramesInAPacket () const override
 
int GetTargetBitrate () const override
 
void Reset () override
 
bool SetFec (bool enable) override
 
bool SetDtx (bool enable) override
 
bool GetDtx () const override
 
bool SetApplication (Application application) override
 
void SetMaxPlaybackRate (int frequency_hz) override
 
bool EnableAudioNetworkAdaptor (const std::string &config_string, RtcEventLog *event_log, const Clock *clock) override
 
void DisableAudioNetworkAdaptor () override
 
void OnReceivedUplinkPacketLossFraction (float uplink_packet_loss_fraction) override
 
void OnReceivedUplinkBandwidth (int target_audio_bitrate_bps, rtc::Optional< int64_t > probing_interval_ms) override
 
void OnReceivedRtt (int rtt_ms) override
 
void OnReceivedOverhead (size_t overhead_bytes_per_packet) override
 
void SetReceiverFrameLengthRange (int min_frame_length_ms, int max_frame_length_ms) override
 
rtc::ArrayView< const int > supported_frame_lengths_ms () const
 
float packet_loss_rate () const
 
ApplicationMode application () const
 
bool fec_enabled () const
 
size_t num_channels_to_encode () const
 
int next_frame_length_ms () const
 
 AudioEncoderOpus (const Config &config, AudioNetworkAdaptorCreator &&audio_network_adaptor_creator=nullptr, std::unique_ptr< SmoothingFilter > bitrate_smoother=nullptr)
 
 AudioEncoderOpus (const CodecInst &codec_inst)
 
 ~AudioEncoderOpus () override
 
int SampleRateHz () const override
 
size_t NumChannels () const override
 
size_t Num10MsFramesInNextPacket () const override
 
size_t Max10MsFramesInAPacket () const override
 
int GetTargetBitrate () const override
 
void Reset () override
 
bool SetFec (bool enable) override
 
bool SetDtx (bool enable) override
 
bool GetDtx () const override
 
bool SetApplication (Application application) override
 
void SetMaxPlaybackRate (int frequency_hz) override
 
bool EnableAudioNetworkAdaptor (const std::string &config_string, RtcEventLog *event_log, const Clock *clock) override
 
void DisableAudioNetworkAdaptor () override
 
void OnReceivedUplinkPacketLossFraction (float uplink_packet_loss_fraction) override
 
void OnReceivedUplinkBandwidth (int target_audio_bitrate_bps, rtc::Optional< int64_t > probing_interval_ms) override
 
void OnReceivedRtt (int rtt_ms) override
 
void OnReceivedOverhead (size_t overhead_bytes_per_packet) override
 
void SetReceiverFrameLengthRange (int min_frame_length_ms, int max_frame_length_ms) override
 
rtc::ArrayView< const int > supported_frame_lengths_ms () const
 
float packet_loss_rate () const
 
ApplicationMode application () const
 
bool fec_enabled () const
 
size_t num_channels_to_encode () const
 
int next_frame_length_ms () const
 
- Public Member Functions inherited from webrtc::AudioEncoder
virtual ~AudioEncoder ()=default
 
virtual int RtpTimestampRateHz () const
 
EncodedInfo Encode (uint32_t rtp_timestamp, rtc::ArrayView< const int16_t > audio, rtc::Buffer *encoded)
 
virtual rtc::ArrayView< std::unique_ptr< AudioEncoder > > ReclaimContainedEncoders ()
 
virtual void OnReceivedTargetAudioBitrate (int target_bps)
 
virtual ~AudioEncoder ()=default
 
virtual int RtpTimestampRateHz () const
 
EncodedInfo Encode (uint32_t rtp_timestamp, rtc::ArrayView< const int16_t > audio, rtc::Buffer *encoded)
 
virtual rtc::ArrayView< std::unique_ptr< AudioEncoder > > ReclaimContainedEncoders ()
 
virtual void OnReceivedTargetAudioBitrate (int target_bps)
 

Protected Member Functions

EncodedInfo EncodeImpl (uint32_t rtp_timestamp, rtc::ArrayView< const int16_t > audio, rtc::Buffer *encoded) override
 
EncodedInfo EncodeImpl (uint32_t rtp_timestamp, rtc::ArrayView< const int16_t > audio, rtc::Buffer *encoded) override
 

Member Typedef Documentation

◆ AudioNetworkAdaptorCreator [1/2]

◆ AudioNetworkAdaptorCreator [2/2]

Member Enumeration Documentation

◆ ApplicationMode [1/2]

Enumerator
kVoip 
kAudio 
kVoip 
kAudio 

◆ ApplicationMode [2/2]

Enumerator
kVoip 
kAudio 
kVoip 
kAudio 

Constructor & Destructor Documentation

◆ AudioEncoderOpus() [1/4]

webrtc::AudioEncoderOpus::AudioEncoderOpus ( const Config config,
AudioNetworkAdaptorCreator &&  audio_network_adaptor_creator = nullptr,
std::unique_ptr< SmoothingFilter bitrate_smoother = nullptr 
)

◆ AudioEncoderOpus() [2/4]

webrtc::AudioEncoderOpus::AudioEncoderOpus ( const CodecInst codec_inst)
explicit

◆ ~AudioEncoderOpus() [1/2]

webrtc::AudioEncoderOpus::~AudioEncoderOpus ( )
override

◆ AudioEncoderOpus() [3/4]

webrtc::AudioEncoderOpus::AudioEncoderOpus ( const Config config,
AudioNetworkAdaptorCreator &&  audio_network_adaptor_creator = nullptr,
std::unique_ptr< SmoothingFilter bitrate_smoother = nullptr 
)

◆ AudioEncoderOpus() [4/4]

webrtc::AudioEncoderOpus::AudioEncoderOpus ( const CodecInst codec_inst)
explicit

◆ ~AudioEncoderOpus() [2/2]

webrtc::AudioEncoderOpus::~AudioEncoderOpus ( )
override

Member Function Documentation

◆ application() [1/2]

ApplicationMode webrtc::AudioEncoderOpus::application ( ) const
inline

◆ application() [2/2]

ApplicationMode webrtc::AudioEncoderOpus::application ( ) const
inline

◆ DisableAudioNetworkAdaptor() [1/2]

void webrtc::AudioEncoderOpus::DisableAudioNetworkAdaptor ( )
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ DisableAudioNetworkAdaptor() [2/2]

void webrtc::AudioEncoderOpus::DisableAudioNetworkAdaptor ( )
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ EnableAudioNetworkAdaptor() [1/2]

bool webrtc::AudioEncoderOpus::EnableAudioNetworkAdaptor ( const std::string config_string,
RtcEventLog event_log,
const Clock clock 
)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ EnableAudioNetworkAdaptor() [2/2]

bool webrtc::AudioEncoderOpus::EnableAudioNetworkAdaptor ( const std::string config_string,
RtcEventLog event_log,
const Clock clock 
)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ EncodeImpl() [1/2]

AudioEncoder::EncodedInfo webrtc::AudioEncoderOpus::EncodeImpl ( uint32_t  rtp_timestamp,
rtc::ArrayView< const int16_t audio,
rtc::Buffer encoded 
)
overrideprotectedvirtual

Implements webrtc::AudioEncoder.

◆ EncodeImpl() [2/2]

EncodedInfo webrtc::AudioEncoderOpus::EncodeImpl ( uint32_t  rtp_timestamp,
rtc::ArrayView< const int16_t audio,
rtc::Buffer encoded 
)
overrideprotectedvirtual

Implements webrtc::AudioEncoder.

◆ fec_enabled() [1/2]

bool webrtc::AudioEncoderOpus::fec_enabled ( ) const
inline

◆ fec_enabled() [2/2]

bool webrtc::AudioEncoderOpus::fec_enabled ( ) const
inline

◆ GetDtx() [1/2]

bool webrtc::AudioEncoderOpus::GetDtx ( ) const
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ GetDtx() [2/2]

bool webrtc::AudioEncoderOpus::GetDtx ( ) const
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ GetTargetBitrate() [1/2]

int webrtc::AudioEncoderOpus::GetTargetBitrate ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ GetTargetBitrate() [2/2]

int webrtc::AudioEncoderOpus::GetTargetBitrate ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ Max10MsFramesInAPacket() [1/2]

size_t webrtc::AudioEncoderOpus::Max10MsFramesInAPacket ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ Max10MsFramesInAPacket() [2/2]

size_t webrtc::AudioEncoderOpus::Max10MsFramesInAPacket ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ next_frame_length_ms() [1/2]

int webrtc::AudioEncoderOpus::next_frame_length_ms ( ) const
inline

◆ next_frame_length_ms() [2/2]

int webrtc::AudioEncoderOpus::next_frame_length_ms ( ) const
inline

◆ Num10MsFramesInNextPacket() [1/2]

size_t webrtc::AudioEncoderOpus::Num10MsFramesInNextPacket ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ Num10MsFramesInNextPacket() [2/2]

size_t webrtc::AudioEncoderOpus::Num10MsFramesInNextPacket ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ num_channels_to_encode() [1/2]

size_t webrtc::AudioEncoderOpus::num_channels_to_encode ( ) const
inline

◆ num_channels_to_encode() [2/2]

size_t webrtc::AudioEncoderOpus::num_channels_to_encode ( ) const
inline

◆ NumChannels() [1/2]

size_t webrtc::AudioEncoderOpus::NumChannels ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ NumChannels() [2/2]

size_t webrtc::AudioEncoderOpus::NumChannels ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ OnReceivedOverhead() [1/2]

void webrtc::AudioEncoderOpus::OnReceivedOverhead ( size_t  overhead_bytes_per_packet)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedOverhead() [2/2]

void webrtc::AudioEncoderOpus::OnReceivedOverhead ( size_t  overhead_bytes_per_packet)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedRtt() [1/2]

void webrtc::AudioEncoderOpus::OnReceivedRtt ( int  rtt_ms)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedRtt() [2/2]

void webrtc::AudioEncoderOpus::OnReceivedRtt ( int  rtt_ms)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedUplinkBandwidth() [1/2]

void webrtc::AudioEncoderOpus::OnReceivedUplinkBandwidth ( int  target_audio_bitrate_bps,
rtc::Optional< int64_t probing_interval_ms 
)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedUplinkBandwidth() [2/2]

void webrtc::AudioEncoderOpus::OnReceivedUplinkBandwidth ( int  target_audio_bitrate_bps,
rtc::Optional< int64_t probing_interval_ms 
)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedUplinkPacketLossFraction() [1/2]

void webrtc::AudioEncoderOpus::OnReceivedUplinkPacketLossFraction ( float  uplink_packet_loss_fraction)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ OnReceivedUplinkPacketLossFraction() [2/2]

void webrtc::AudioEncoderOpus::OnReceivedUplinkPacketLossFraction ( float  uplink_packet_loss_fraction)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ packet_loss_rate() [1/2]

float webrtc::AudioEncoderOpus::packet_loss_rate ( ) const
inline

◆ packet_loss_rate() [2/2]

float webrtc::AudioEncoderOpus::packet_loss_rate ( ) const
inline

◆ Reset() [1/2]

void webrtc::AudioEncoderOpus::Reset ( )
overridevirtual

Implements webrtc::AudioEncoder.

◆ Reset() [2/2]

void webrtc::AudioEncoderOpus::Reset ( )
overridevirtual

Implements webrtc::AudioEncoder.

◆ SampleRateHz() [1/2]

int webrtc::AudioEncoderOpus::SampleRateHz ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ SampleRateHz() [2/2]

int webrtc::AudioEncoderOpus::SampleRateHz ( ) const
overridevirtual

Implements webrtc::AudioEncoder.

◆ SetApplication() [1/2]

bool webrtc::AudioEncoderOpus::SetApplication ( Application  application)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetApplication() [2/2]

bool webrtc::AudioEncoderOpus::SetApplication ( Application  application)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetDtx() [1/2]

bool webrtc::AudioEncoderOpus::SetDtx ( bool  enable)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetDtx() [2/2]

bool webrtc::AudioEncoderOpus::SetDtx ( bool  enable)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetFec() [1/2]

bool webrtc::AudioEncoderOpus::SetFec ( bool  enable)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetFec() [2/2]

bool webrtc::AudioEncoderOpus::SetFec ( bool  enable)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetMaxPlaybackRate() [1/2]

void webrtc::AudioEncoderOpus::SetMaxPlaybackRate ( int  frequency_hz)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetMaxPlaybackRate() [2/2]

void webrtc::AudioEncoderOpus::SetMaxPlaybackRate ( int  frequency_hz)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetReceiverFrameLengthRange() [1/2]

void webrtc::AudioEncoderOpus::SetReceiverFrameLengthRange ( int  min_frame_length_ms,
int  max_frame_length_ms 
)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ SetReceiverFrameLengthRange() [2/2]

void webrtc::AudioEncoderOpus::SetReceiverFrameLengthRange ( int  min_frame_length_ms,
int  max_frame_length_ms 
)
overridevirtual

Reimplemented from webrtc::AudioEncoder.

◆ supported_frame_lengths_ms() [1/2]

rtc::ArrayView<const int> webrtc::AudioEncoderOpus::supported_frame_lengths_ms ( ) const
inline

◆ supported_frame_lengths_ms() [2/2]

rtc::ArrayView<const int> webrtc::AudioEncoderOpus::supported_frame_lengths_ms ( ) const
inline

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