49 virtual bool setSize(uint16_t width, uint16_t height);
50 virtual bool open(
const char *filename,
char *errmsg);
52 virtual bool writeFrame(
const uint8_t *frame, uint32_t nbytes, uint64_t timestamp);
67 bool allocateBuffers();
69 int theora_write_frame(
int last);
70 bool frac(
double fps, uint32_t &num, uint32_t &den);
72 th_ycbcr_buffer ycbcr;
73 ogg_uint32_t video_fps_numerator = 24;
74 ogg_uint32_t video_fps_denominator = 1;
75 ogg_uint32_t video_aspect_numerator = 0;
76 ogg_uint32_t video_aspect_denominator = 0;
78 int video_quality = -1;
80 ogg_uint32_t keyframe_frequency = 0;
82 int vp3_compatible = 0;
83 int chroma_format = TH_PF_420;
85 FILE *twopass_file =
nullptr;
89 FILE *ogg_fp =
nullptr;
90 ogg_stream_state ogg_os;
94 th_enc_ctx *td =
nullptr;