Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
roc::fec::OpenfecEncoder Class Reference

Encoder implementation using OpenFEC library. More...

#include <openfec_encoder.h>

Inheritance diagram for roc::fec::OpenfecEncoder:
Collaboration diagram for roc::fec::OpenfecEncoder:

Public Member Functions

 OpenfecEncoder (const CodecConfig &config, core::BufferFactory< uint8_t > &buffer_factory, core::IArena &arena)
 Initialize. More...
 
bool is_valid () const
 Check if object is successfully constructed. More...
 
virtual size_t alignment () const
 Get buffer alignment requirement. More...
 
virtual size_t max_block_length () const
 Get the maximum number of encoding symbols for the scheme being used. More...
 
virtual bool begin (size_t sblen, size_t rblen, size_t payload_size)
 Start block. More...
 
virtual void set (size_t index, const core::Slice< uint8_t > &buffer)
 Store packet data for current block. More...
 
virtual void fill ()
 Fill repair packets. More...
 
virtual void end ()
 Finish block. More...
 

Detailed Description

Encoder implementation using OpenFEC library.

Definition at line 40 of file openfec_encoder.h.

Constructor & Destructor Documentation

◆ OpenfecEncoder()

roc::fec::OpenfecEncoder::OpenfecEncoder ( const CodecConfig config,
core::BufferFactory< uint8_t > &  buffer_factory,
core::IArena arena 
)
explicit

Initialize.

Member Function Documentation

◆ alignment()

virtual size_t roc::fec::OpenfecEncoder::alignment ( ) const
virtual

Get buffer alignment requirement.

Implements roc::fec::IBlockEncoder.

◆ begin()

virtual bool roc::fec::OpenfecEncoder::begin ( size_t  sblen,
size_t  rblen,
size_t  payload_size 
)
virtual

Start block.

Remarks
Performs an initial setup for a block. Should be called before any operations for the block.

Implements roc::fec::IBlockEncoder.

◆ end()

virtual void roc::fec::OpenfecEncoder::end ( )
virtual

Finish block.

Remarks
Cleanups the resources allocated for the block. Should be called after all operations for the block.

Implements roc::fec::IBlockEncoder.

◆ fill()

virtual void roc::fec::OpenfecEncoder::fill ( )
virtual

Fill repair packets.

Implements roc::fec::IBlockEncoder.

◆ is_valid()

bool roc::fec::OpenfecEncoder::is_valid ( ) const

Check if object is successfully constructed.

◆ max_block_length()

virtual size_t roc::fec::OpenfecEncoder::max_block_length ( ) const
virtual

Get the maximum number of encoding symbols for the scheme being used.

Implements roc::fec::IBlockEncoder.

◆ set()

virtual void roc::fec::OpenfecEncoder::set ( size_t  index,
const core::Slice< uint8_t > &  buffer 
)
virtual

Store packet data for current block.

Implements roc::fec::IBlockEncoder.


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