Valkka
1.6.1
OpenSource Video Management
|
A frame, signaling internal thread commands, states of recorded video, etc. More...
#include <frame.h>
Public Member Functions | |
SignalFrame () | |
Default ctor. | |
virtual | ~SignalFrame () |
Default virtual dtor. | |
frame_essentials (FrameClass::signal, SignalFrame) | |
frame_clone (FrameClass::signal, SignalFrame) | |
virtual void | reset () |
Reset the internal data. | |
Public Member Functions inherited from Frame | |
Frame () | |
Default ctor. | |
virtual | ~Frame () |
Default virtual dtor. | |
frame_essentials (FrameClass::none, Frame) | |
frame_clone (FrameClass::none, Frame) | |
virtual void | print (std::ostream &os) const |
Produces frame output. | |
virtual std::string | dumpPayload () |
Dumps internal payload data. | |
virtual void | dumpPayloadToFile (std::ofstream &fout) |
Dumps internal payload data into a file. | |
virtual void | updateAux () |
Update internal auxiliary state variables. | |
virtual void | update () |
Update helper points (call always) | |
virtual bool | isSeekable () |
Can we seek to this frame? (e.g. is it a key-frame .. for H264 sps packets are used as seek markers) | |
void | copyMetaFrom (Frame *f) |
Copy metadata (slot, subsession index, timestamp) to this frame. | |
Public Attributes | |
unsigned | signaltype |
OpenGLSignalContext | opengl_signal_ctx |
< For making correct typecast of custom_ctx_buf. See also threadsignal.h More... | |
AVSignalContext | av_signal_ctx |
Thread commands to AVThread. | |
ValkkaFSWriterSignalContext | valkkafswriter_signal_ctx |
Thread commands to ValkkFSWriterThread. | |
ValkkaFSReaderSignalContext | valkkafsreader_signal_ctx |
Thread commands to ValkkaFSReaderThread. | |
std::vector< uint8_t > | signal_ctx_buf |
A byte-buffer where the signal context is serialized. | |
Public Attributes inherited from Frame | |
SlotNumber | n_slot |
Slot number identifying the media source. | |
int | subsession_index |
Media subsession index. | |
long int | mstimestamp |
Presentation time stamp (PTS) in milliseconds. | |
Additional Inherited Members | |
Protected Attributes inherited from Frame | |
FrameClass | frameclass |
Declares frametype for correct typecast. Used by Frame::getFrameClass() | |
A frame, signaling internal thread commands, states of recorded video, etc.
libValkka threads read a single fifo. From this fifo they receive both the media frames (payload) and frames representing API commands given to them.
The "frontend" (API) part inserts a SignalFrame into their fifo, which they then process (most of the libValkka threads have been updated to this technique)
SignalFrames are also used to send additional information between threads and along the downstream pipeline.
This should also be generalizable for extension modules (new threads, custom signals send downstream, etc.)
SignalFrames must be copyable when they are placed into fifos (copy-on-write)
OpenGLSignalContext SignalFrame::opengl_signal_ctx |
< For making correct typecast of custom_ctx_buf. See also threadsignal.h
Thread commands to OpenGLThread