Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
Loading...
Searching...
No Matches
roc::fec::OpenfecEncoder Class Reference

Encoder implementation using OpenFEC library. More...

#include <openfec_encoder.h>

Inheritance diagram for roc::fec::OpenfecEncoder:
roc::fec::IBlockEncoder roc::core::NonCopyable< Tag >

Public Member Functions

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

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,
packet::PacketFactory & packet_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.

Member Data Documentation

◆ ldpc_params_

of_ldpc_parameters roc::fec::OpenfecEncoder::ldpc_params_

Definition at line 95 of file openfec_encoder.h.

◆ rs_params_

of_rs_2_m_parameters_t roc::fec::OpenfecEncoder::rs_params_

Definition at line 96 of file openfec_encoder.h.


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