|
Ring Daemon
|
#include <media_decoder.h>


Public Types | |
| enum class | CurrentState : uint8_t { Demuxing , Finished } |
| enum class | Status : uint8_t { Success , EndOfFile , ReadBufferOverflow , ReadError , FallBack , RestartRequired } |
| using | StreamCallback = std::function< DecodeStatus(AVPacket &)> |
Public Member Functions | |
| Status | decode () |
| Status | demuxe () |
| bool | emitFrame (bool isAudio) |
| void | findStreamInfo (bool videoStream=false) |
| MediaDemuxer::CurrentState | getCurrentState () |
| int64_t | getDuration () const |
| AVStream * | getStream (unsigned stream) |
| MediaDemuxer () | |
| int | openInput (const DeviceParams &) |
| bool | seekFrame (int stream_index, int64_t timestamp) |
| int | selectStream (AVMediaType type) |
| void | setFileFinishedCb (std::function< void(bool)> cb) |
| void | setInterruptCallback (int(*cb)(void *), void *opaque) |
| void | setIOContext (MediaIOHandle *ioctx) |
| void | setKeyFrameRequestCb (std::function< void()> cb) |
| void | setNeedFrameCb (std::function< void()> cb) |
| void | setStreamCallback (unsigned stream, StreamCallback cb={}) |
| void | updateCurrentState (MediaDemuxer::CurrentState state) |
| ~MediaDemuxer () | |
Static Public Member Functions | |
| static const char * | getStatusStr (Status status) |
Definition at line 80 of file media_decoder.h.
| using jami::MediaDemuxer::StreamCallback = std::function<DecodeStatus(AVPacket&)> |
Definition at line 91 of file media_decoder.h.
|
strong |
| Enumerator | |
|---|---|
| Demuxing | |
| Finished | |
Definition at line 90 of file media_decoder.h.
|
strong |
| Enumerator | |
|---|---|
| Success | |
| EndOfFile | |
| ReadBufferOverflow | |
| ReadError | |
| FallBack | |
| RestartRequired | |
Definition at line 86 of file media_decoder.h.
| jami::MediaDemuxer::MediaDemuxer | ( | ) |
Definition at line 49 of file media_decoder.cpp.
| jami::MediaDemuxer::~MediaDemuxer | ( | ) |
Definition at line 54 of file media_decoder.cpp.
References jami::emitSignal().

| MediaDemuxer::Status jami::MediaDemuxer::decode | ( | ) |
Definition at line 402 of file media_decoder.cpp.
References JAMI_ERR, and jami::rational< I >::real().

| MediaDemuxer::Status jami::MediaDemuxer::demuxe | ( | ) |
Definition at line 351 of file media_decoder.cpp.
References av_packet_free(), and JAMI_ERR.

Definition at line 311 of file media_decoder.cpp.
Definition at line 217 of file media_decoder.cpp.
References jami::emitSignal(), jami::libav_utils::getError(), jami::Manager::instance(), and JAMI_ERROR.

|
inline |
Definition at line 114 of file media_decoder.h.
| int64_t jami::MediaDemuxer::getDuration | ( | ) | const |
Definition at line 200 of file media_decoder.cpp.
Definition at line 66 of file media_decoder.cpp.
References EndOfFile, FallBack, ReadBufferOverflow, ReadError, RestartRequired, and Success.
Referenced by jami::video::VideoReceiveThread::decodeFrame().
Definition at line 116 of file media_decoder.h.
References JAMI_ERR.
| int jami::MediaDemuxer::openInput | ( | const DeviceParams & | params | ) |
Definition at line 87 of file media_decoder.cpp.
References jami::emitSignal(), jami::libav_utils::getError(), JAMI_ERROR, JAMI_LOG, JAMI_WARN, jami::jitterBufferMaxDelay_, jami::jitterBufferMaxSize_, and jami::to_string().

Definition at line 206 of file media_decoder.cpp.
References jami::emitSignal().

| int jami::MediaDemuxer::selectStream | ( | AVMediaType | type | ) |
Definition at line 251 of file media_decoder.cpp.
References JAMI_DBG.
Definition at line 282 of file media_decoder.cpp.
Definition at line 266 of file media_decoder.cpp.
| void jami::MediaDemuxer::setIOContext | ( | MediaIOHandle * | ioctx | ) |
Definition at line 396 of file media_decoder.cpp.
References jami::MediaIOHandle::getContext().

Definition at line 288 of file media_decoder.cpp.
Definition at line 276 of file media_decoder.cpp.
|
inline |
Definition at line 103 of file media_decoder.h.
|
inline |
Definition at line 110 of file media_decoder.h.