Ring Daemon 16.0.0
|
#include <media_encoder.h>
Public Member Functions | |
int | addStream (const SystemCodecInfo &codec) |
int | encode (AVFrame *frame, int streamIdx) |
int | encodeAudio (AudioFrame &frame) |
int | flush () |
const std::string & | getAudioCodec () const |
int | getHeight () const |
uint16_t | getLastSeqValue () |
MediaStream | getStream (const std::string &name, int streamIdx=-1) const |
unsigned | getStreamCount () const |
const std::string & | getVideoCodec () const |
int | getWidth () const |
MediaEncoder () | |
void | openOutput (const std::string &filename, const std::string &format="") |
std::string | print_sdp () |
void | resetStreams (int width, int height) |
bool | send (AVPacket &packet, int streamIdx=-1) |
int | setBitrate (uint64_t br) |
void | setInitSeqVal (uint16_t seqVal) |
void | setIOContext (AVIOContext *ioctx) |
void | setMetadata (const std::string &title, const std::string &description) |
void | setOptions (const MediaDescription &args) |
void | setOptions (const MediaStream &opts) |
int | setPacketLoss (uint64_t pl) |
~MediaEncoder () | |
Static Public Member Functions | |
static std::string | testH265Accel () |
Protected Member Functions | |
void | readConfig (AVCodecContext *encoderCtx) |
Protected Attributes | |
std::string | audioCodec_ |
MediaStream | audioOpts_ |
AVDictionary * | options_ = nullptr |
std::string | videoCodec_ |
MediaStream | videoOpts_ |
Definition at line 64 of file media_encoder.h.
jami::MediaEncoder::MediaEncoder | ( | ) |
Definition at line 59 of file media_encoder.cpp.
References JAMI_DBG.
jami::MediaEncoder::~MediaEncoder | ( | ) |
Definition at line 65 of file media_encoder.cpp.
References jami::emitSignal(), JAMI_DBG, and options_.
int jami::MediaEncoder::addStream | ( | const SystemCodecInfo & | codec | ) |
Definition at line 174 of file media_encoder.cpp.
References audioCodec_, audioOpts_, jami::emitSignal(), jami::MediaStream::isValid(), JAMI_DBG, JAMI_ERR, jami::MEDIA_AUDIO, and videoCodec_.
Definition at line 478 of file media_encoder.cpp.
References jami::emitSignal(), jami::libav_utils::getError(), jami::MediaStream::isValid(), JAMI_ERR, send(), videoCodec_, and videoOpts_.
Referenced by encodeAudio(), and flush().
int jami::MediaEncoder::encodeAudio | ( | AudioFrame & | frame | ) |
Definition at line 462 of file media_encoder.cpp.
References jami::emitSignal(), encode(), jami::MediaStream::isValid(), and videoOpts_.
int jami::MediaEncoder::flush | ( | ) |
Definition at line 560 of file media_encoder.cpp.
References jami::emitSignal(), encode(), and JAMI_ERR.
Referenced by resetStreams().
|
inline |
Definition at line 101 of file media_encoder.h.
References audioCodec_.
|
inline |
Definition at line 96 of file media_encoder.h.
References jami::MediaStream::height, and videoOpts_.
uint16_t jami::MediaEncoder::getLastSeqValue | ( | ) |
Definition at line 152 of file media_encoder.cpp.
References jami::emitSignal().
MediaStream jami::MediaEncoder::getStream | ( | const std::string & | name, |
int | streamIdx = -1 |
||
) | const |
Definition at line 759 of file media_encoder.cpp.
References jami::emitSignal(), and getStreamCount().
unsigned jami::MediaEncoder::getStreamCount | ( | ) | const |
Definition at line 753 of file media_encoder.cpp.
References audioOpts_, jami::MediaStream::isValid(), and videoOpts_.
Referenced by getStream().
|
inline |
Definition at line 102 of file media_encoder.h.
References videoCodec_.
|
inline |
Definition at line 95 of file media_encoder.h.
References videoOpts_, and jami::MediaStream::width.
void jami::MediaEncoder::openOutput | ( | const std::string & | filename, |
const std::string & | format = "" |
||
) |
Definition at line 162 of file media_encoder.cpp.
References jami::emitSignal(), jami::libav_utils::getError(), and JAMI_ERR.
std::string jami::MediaEncoder::print_sdp | ( | ) |
Definition at line 573 of file media_encoder.cpp.
References jami::emitSignal(), jami::getline(), and JAMI_DBG.
|
protected |
Definition at line 1139 of file media_encoder.cpp.
References jami::emitSignal(), jami::fileutils::get_config_dir(), jami::libav_utils::getError(), JAMI_ERR, and JAMI_WARN.
Definition at line 1340 of file media_encoder.cpp.
References jami::emitSignal(), flush(), jami::MediaStream::height, videoOpts_, and jami::MediaStream::width.
Definition at line 530 of file media_encoder.cpp.
References jami::emitSignal(), jami::libav_utils::getError(), JAMI_ERR, and videoCodec_.
Referenced by encode().
Definition at line 855 of file media_encoder.cpp.
References jami::emitSignal().
Definition at line 144 of file media_encoder.cpp.
References jami::emitSignal().
|
inline |
Definition at line 75 of file media_encoder.h.
References jami::emitSignal().
Definition at line 135 of file media_encoder.cpp.
References jami::emitSignal(), and jami::libav_utils::setDictValue().
void jami::MediaEncoder::setOptions | ( | const MediaDescription & | args | ) |
Definition at line 115 of file media_encoder.cpp.
References jami::emitSignal(), jami::libav_utils::getError(), JAMI_ERR, options_, and jami::libav_utils::setDictValue().
void jami::MediaEncoder::setOptions | ( | const MediaStream & | opts | ) |
Definition at line 90 of file media_encoder.cpp.
References audioOpts_, jami::MediaStream::bitrate, jami::SystemCodecInfo::DEFAULT_VIDEO_BITRATE, jami::emitSignal(), jami::MediaStream::frameRate, jami::MediaStream::height, JAMI_ERR, videoOpts_, and jami::MediaStream::width.
Definition at line 889 of file media_encoder.cpp.
References jami::emitSignal().
|
static |
Definition at line 1188 of file media_encoder.cpp.
References jami::CODEC_ENCODER, jami::SystemCodecInfo::DEFAULT_VIDEO_BITRATE, jami::emitSignal(), jami::video::HardwareAccel::getCompatibleAccel(), jami::Manager::instance(), and JAMI_WARN.
|
protected |
Definition at line 178 of file media_encoder.h.
Referenced by addStream(), and getAudioCodec().
|
protected |
Definition at line 176 of file media_encoder.h.
Referenced by addStream(), getStreamCount(), and setOptions().
|
protected |
Definition at line 174 of file media_encoder.h.
Referenced by setOptions(), and ~MediaEncoder().
|
protected |
Definition at line 177 of file media_encoder.h.
Referenced by addStream(), encode(), getVideoCodec(), and send().
|
protected |
Definition at line 175 of file media_encoder.h.
Referenced by encode(), encodeAudio(), getHeight(), getStreamCount(), getWidth(), resetStreams(), and setOptions().