void add_audio(int64_t pts, std::vector<float> audio); // Needs to come before end_frame() of same pts.
bool begin_frame(GLuint *y_tex, GLuint *cbcr_tex);
void end_frame(RefCountedGLsync fence, int64_t pts, const std::vector<RefCountedFrame> &input_frames);
+ void shutdown(); // Blocking.
private:
std::unique_ptr<H264EncoderImpl> impl;