An ogg/theora+irct encoder class; accepts argb32 images and binary text, outputs an ogg stream.
More...
#include <KviOggTheoraEncoder.h>
|
static int | ilog (unsigned _v) |
| Internal function used to calculate our granule shift. More...
|
|
An ogg/theora+irct encoder class; accepts argb32 images and binary text, outputs an ogg stream.
KviOggTheoraEncoder::KviOggTheoraEncoder |
( |
KviDataBuffer * |
stream, |
|
|
int |
iWidth = 320 , |
|
|
int |
iHeight = 240 , |
|
|
int |
iFpsN = 5 , |
|
|
int |
iFpsD = 1 , |
|
|
int |
iParN = 4 , |
|
|
int |
iParD = 3 |
|
) |
| |
KviOggTheoraEncoder::~KviOggTheoraEncoder |
( |
| ) |
|
|
virtual |
void KviOggTheoraEncoder::addTextFrame |
( |
unsigned char * |
textPkt, |
|
|
int |
textSize |
|
) |
| |
void KviOggTheoraEncoder::addVideoFrame |
( |
QRgb * |
rgb32, |
|
|
int |
videoSize |
|
) |
| |
int KviOggTheoraEncoder::fetch_and_process_video |
( |
quint8 * |
videoYuv, |
|
|
ogg_page * |
videopage, |
|
|
ogg_stream_state * |
to, |
|
|
th_enc_ctx * |
td, |
|
|
int |
videoflag |
|
) |
| |
|
private |
Internal function that processes a video frame to create an ogg page.
- Returns
- int
int KviOggTheoraEncoder::fetch_and_process_video_packet |
( |
quint8 * |
videoYuv, |
|
|
th_enc_ctx * |
td, |
|
|
ogg_packet * |
op |
|
) |
| |
|
private |
Internal function that processes a video frame to create an ogg packet.
- Returns
- int
int KviOggTheoraEncoder::ilog |
( |
unsigned |
_v | ) |
|
|
staticprivate |
Internal function used to calculate our granule shift.
- Returns
- int
int KviOggTheoraEncoder::frame_state |
|
private |
Internal flag used in video frame processing
Stream geometry definition
ogg_page KviOggTheoraEncoder::og |
|
private |
One Ogg bitstream page. Vorbis packets are inside
ogg_packet KviOggTheoraEncoder::op |
|
private |
One raw packet of encoded data
th_comment KviOggTheoraEncoder::tc |
|
private |
Theora stream comments struct
th_enc_ctx* KviOggTheoraEncoder::td |
|
private |
Theora stream encoding struct
ogg_int64_t KviOggTheoraEncoder::text_sofar |
|
private |
Number of transmitted text frames
int KviOggTheoraEncoder::textflag |
|
private |
Internal flag used in text frame processing
th_info KviOggTheoraEncoder::ti |
|
private |
Theora stream info struct
ogg_stream_state KviOggTheoraEncoder::to |
|
private |
Take physical pages, weld into a logical stream of theora packets
int KviOggTheoraEncoder::videoflag |
|
private |
Internal flag used in video frame processing
quint8* KviOggTheoraEncoder::videoYuv |
|
private |
Yuv encoded surface pointer
size_t KviOggTheoraEncoder::y4m_aux_buf_read_sz |
|
private |
The amount to read into the auxiliary buffer
size_t KviOggTheoraEncoder::y4m_aux_buf_sz |
|
private |
The size of the auxiliary buffer
size_t KviOggTheoraEncoder::y4m_dst_buf_read_sz |
|
private |
The amount to read directly into the converted frame buffer
size_t KviOggTheoraEncoder::y4m_dst_buf_sz |
|
private |
The size of each converted frame buffer
unsigned char* KviOggTheoraEncoder::yuvframe[3] |
|
private |
Internal struct used in video frame processing
ogg_stream_state KviOggTheoraEncoder::zo |
|
private |
Take physical pages, weld into a logical stream of irct packets
The documentation for this class was generated from the following files: