int64_t output_pts;
enum Type { ORIGINAL, FADED, INTERPOLATED, FADED_INTERPOLATED, REFRESH } type;
- FrameOnDisk frame1; // The only frame for original frames.
+
+ // For original frames only. Made move-only so we know explicitly
+ // we don't copy these ~200 kB files around inadvertedly.
+ std::unique_ptr<std::string> encoded_jpeg;
+
+ // For everything except original frames.
+ FrameOnDisk frame1;
// For fades only (including fades against interpolated frames).
FrameOnDisk secondary_frame;
GLuint last_flow_tex = 0;
FrameOnDisk last_frame1, last_frame2;
- std::vector<uint8_t> last_frame;
+ std::string last_frame;
};
#endif // !defined(_VIDEO_STREAM_H)