1 #ifndef HAVE_A12_ENCODE
2 #define HAVE_A12_ENCODE
3 
4 /* hdr+ofs hacks should be moved to a factory */
5 #define PACK_ARGS \
6 	struct a12_state* S,\
7 	struct shmifsrv_vbuffer* vb, struct a12_vframe_opts opts,\
8 	uint32_t sid,\
9 	size_t x, size_t y, size_t w, size_t h,\
10 	size_t chunk_sz, int chid\
11 
12 #define FWD_ARGS S, vb, opts, sid, x, y, w, h, chunk_sz, chid
13 
14 void a12int_encode_rgb565(PACK_ARGS);
15 void a12int_encode_rgb(PACK_ARGS);
16 void a12int_encode_rgba(PACK_ARGS);
17 void a12int_encode_dpng(PACK_ARGS);
18 void a12int_encode_h264(PACK_ARGS);
19 void a12int_encode_tz(PACK_ARGS);
20 void a12int_encode_dzstd(PACK_ARGS);
21 void a12int_encode_ztz(PACK_ARGS);
22 void a12int_encode_drop(struct a12_state* S, int chid, bool failed);
23 
24 void a12int_encode_araw(struct a12_state* S,
25 	uint8_t chid,
26 	shmif_asample* buf,
27 	uint16_t n_samples,
28 	struct a12_aframe_cfg cfg,
29 	struct a12_aframe_opts opts, size_t chunk_sz
30 );
31 
32 #endif
33