TheoraEncoder Class Reference

#include <TheoraEncoder.h>

Collaboration diagram for TheoraEncoder:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TheoraEncoder (void)
 ~TheoraEncoder (void)
StampedOggPacket ** initCodec (theora_info inTheoraInfo)
 Initialise the code, We get back three packets we must delete.
StampedOggPacketencodeTheora (yuv_buffer *inYUVBuffer)
 Encode the frame buffer. We get back a packet to delete or NULL.

Protected Member Functions

StampedOggPacketoldToNewPacket (ogg_packet *inPacket)
 Converts an xiph like ogg packet into a StampedOggPacket.

Protected Attributes

theora_info mTheoraInfo
theora_comment mTheoraComment
theora_state mTheoraState
unsigned long mHeadersSeen
bool mFirstPacket
bool mFirstHeader
unsigned long mPacketCount

Constructor & Destructor Documentation

TheoraEncoder::TheoraEncoder void   ) 
 

Definition at line 35 of file TheoraEncoder.cpp.

TheoraEncoder::~TheoraEncoder void   ) 
 

Definition at line 39 of file TheoraEncoder.cpp.


Member Function Documentation

StampedOggPacket * TheoraEncoder::encodeTheora yuv_buffer inYUVBuffer  ) 
 

Encode the frame buffer. We get back a packet to delete or NULL.

Returns a packet you must delete, otherwise returns NULL if it fails. Pass it a yuv frame buffer which you own.

Definition at line 89 of file TheoraEncoder.cpp.

References mTheoraState, oldToNewPacket(), theora_encode_packetout(), and theora_encode_YUVin().

Referenced by TheoraEncodeInputPin::TransformData().

Here is the call graph for this function:

StampedOggPacket ** TheoraEncoder::initCodec theora_info  inTheoraInfo  ) 
 

Initialise the code, We get back three packets we must delete.

Returns three header packets which you must delete when done. Give it a theora_info.

Definition at line 45 of file TheoraEncoder.cpp.

References mTheoraComment, mTheoraInfo, mTheoraState, oldToNewPacket(), theora_comment_init(), theora_encode_comment(), theora_encode_header(), theora_encode_init(), and theora_encode_tables().

Referenced by TheoraEncodeInputPin::TransformData().

Here is the call graph for this function:

StampedOggPacket * TheoraEncoder::oldToNewPacket ogg_packet *  inOldPacket  )  [protected]
 

Converts an xiph like ogg packet into a StampedOggPacket.

Converts our StampedOggPacket into a packet that the theora library will accept. You still own the old packet. But you must delete the returned packet.

Definition at line 74 of file TheoraEncoder.cpp.

Referenced by encodeTheora(), and initCodec().


Member Data Documentation

bool TheoraEncoder::mFirstHeader [protected]
 

Definition at line 72 of file TheoraEncoder.h.

bool TheoraEncoder::mFirstPacket [protected]
 

Definition at line 71 of file TheoraEncoder.h.

unsigned long TheoraEncoder::mHeadersSeen [protected]
 

Definition at line 70 of file TheoraEncoder.h.

unsigned long TheoraEncoder::mPacketCount [protected]
 

Definition at line 73 of file TheoraEncoder.h.

theora_comment TheoraEncoder::mTheoraComment [protected]
 

Definition at line 63 of file TheoraEncoder.h.

Referenced by initCodec().

theora_info TheoraEncoder::mTheoraInfo [protected]
 

Definition at line 62 of file TheoraEncoder.h.

Referenced by initCodec().

theora_state TheoraEncoder::mTheoraState [protected]
 

Definition at line 64 of file TheoraEncoder.h.

Referenced by encodeTheora(), and initCodec().


The documentation for this class was generated from the following files:
Generated on Tue Feb 15 15:05:15 2005 for oggdsf by  doxygen 1.3.9