#include <memory>
#include <mutex>
#include <thread>
-#include <thread>
-#include <thread>
-#include <thread>
#include <condition_variable>
#include "pbo_frame_allocator.h"
#include "context.h"
+#include "ref_counted_gl_sync.h"
#define SURFACE_NUM 16 /* 16 surfaces for source YUV */
void
#endif
bool begin_frame(GLuint *y_tex, GLuint *cbcr_tex);
- void end_frame(GLsync fence, const std::vector<FrameAllocator::Frame> &input_frames_to_release);
+ void end_frame(RefCountedGLsync fence, const std::vector<FrameAllocator::Frame> &input_frames_to_release);
private:
struct storage_task {
int current_storage_frame;
struct PendingFrame {
- GLsync fence;
+ RefCountedGLsync fence;
std::vector<FrameAllocator::Frame> input_frames_to_release;
};
std::map<int, PendingFrame> pending_frames;