+++ /dev/null
-#ifndef _TIMECODE_RENDERER_H
-#define _TIMECODE_RENDERER_H 1
-
-#include <memory>
-#include <string>
-
-#include <epoxy/gl.h>
-
-// A class to render a simple text string onto the picture using Qt and OpenGL.
-
-namespace movit {
-
-class ResourcePool;
-
-} // namespace movit
-
-class QImage;
-
-class TimecodeRenderer {
-public:
- TimecodeRenderer(movit::ResourcePool *resource_pool, unsigned display_width, unsigned display_height);
- ~TimecodeRenderer();
-
- // Return a string with the current wall clock time and the
- // logical stream time.
- static std::string get_timecode_text(double pts, unsigned frame_num);
-
- // The FBO is assumed to contain three outputs (Y', Cb/Cr and RGBA).
- void render_timecode(GLuint fbo, const std::string &text);
-
-private:
- void render_string_to_buffer(const std::string &text);
- void render_buffer_to_fbo(GLuint fbo);
-
- movit::ResourcePool *resource_pool;
- unsigned display_width, display_height, height;
-
- GLuint vbo; // Holds position and texcoord data.
- GLuint tex;
- //std::unique_ptr<unsigned char[]> pixel_buffer;
- std::unique_ptr<QImage> image;
-
- GLuint program_num; // Owned by <resource_pool>.
- GLuint texture_sampler_uniform;
- GLuint position_attribute_index, texcoord_attribute_index;
-};
-
-#endif