summaryrefslogtreecommitdiff
path: root/modules/vp8/vp8.h
blob: c0e262a76ba90244b26d1b4295b4af73805dbfa6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/**
 * @file vp8.h Private VP8 Interface
 *
 * Copyright (C) 2010 Creytiv.com
 */

struct vp8_vidcodec {
	struct vidcodec vc;
	uint32_t max_fs;
};

/* Encode */
int vp8_encode_update(struct videnc_state **vesp, const struct vidcodec *vc,
		      struct videnc_param *prm, const char *fmtp,
		      videnc_packet_h *pkth, void *arg);
int vp8_encode(struct videnc_state *ves, bool update,
	       const struct vidframe *frame);


/* Decode */
int vp8_decode_update(struct viddec_state **vdsp, const struct vidcodec *vc,
		      const char *fmtp);
int vp8_decode(struct viddec_state *vds, struct vidframe *frame,
	       bool *intra, bool marker, uint16_t seq, struct mbuf *mb);


/* SDP */
uint32_t vp8_max_fs(const char *fmtp);
int  vp8_fmtp_enc(struct mbuf *mb, const struct sdp_format *fmt,
		  bool offer, void *arg);