diff png.h @ 2295:eb45ad9d8a3f

WIP "video" recording in APNG format
author Michael Pavone <pavone@retrodev.com>
date Fri, 10 Feb 2023 23:17:43 -0800
parents 0ec89dadb36d
children
line wrap: on
line diff
--- a/png.h	Fri Feb 10 21:37:59 2023 -0800
+++ b/png.h	Fri Feb 10 23:17:43 2023 -0800
@@ -1,8 +1,19 @@
 #ifndef PNG_H_
 #define PNG_H_
 
+typedef struct {
+	uint32_t sequence_number;
+	uint32_t num_frames;
+	uint32_t num_frame_offset;
+	uint16_t delay_num;
+	uint16_t delay_den;
+} apng_state;
+
+void save_png24_frame(FILE *f, uint32_t *buffer, apng_state *apng, uint32_t width, uint32_t height, uint32_t pitch);
 void save_png24(FILE *f, uint32_t *buffer, uint32_t width, uint32_t height, uint32_t pitch);
 void save_png(FILE *f, uint32_t *buffer, uint32_t width, uint32_t height, uint32_t pitch);
+apng_state* start_apng(FILE *f, uint32_t width, uint32_t height, float frame_rate);
+void end_apng(FILE *f, apng_state *apng);
 uint32_t *load_png(uint8_t *buffer, uint32_t buf_size, uint32_t *width, uint32_t *height);
 
 #endif //PNG_H_