diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2004-10-04 16:53:48 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2004-10-04 16:53:48 +0000 |
commit | b90716dd184e3a270fc31ab39307548fe16337cc (patch) | |
tree | e204108290be35fe11b3ecde34ebbc60396cdb5a /ext/jpeg/smokecodec.h | |
parent | d2ba80e45ee0a5b90aa2be7571efb92a560bd1c0 (diff) |
ext/jpeg/: Updated smoke, new bitstream, allows embedding in ogg.
Original commit message from CVS:
* ext/jpeg/gstjpeg.c: (smoke_type_find), (plugin_init):
* ext/jpeg/gstsmokedec.c: (gst_smokedec_init),
(gst_smokedec_chain):
* ext/jpeg/gstsmokedec.h:
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_class_init),
(gst_smokeenc_init), (gst_smokeenc_resync), (gst_smokeenc_chain):
* ext/jpeg/gstsmokeenc.h:
* ext/jpeg/smokecodec.c: (smokecodec_encode_new),
(smokecodec_decode_new), (smokecodec_info_free),
(smokecodec_set_quality), (smokecodec_get_quality),
(smokecodec_set_threshold), (smokecodec_get_threshold),
(smokecodec_set_bitrate), (smokecodec_get_bitrate),
(find_best_size), (abs_diff), (put), (smokecodec_encode_id),
(smokecodec_encode), (smokecodec_parse_id),
(smokecodec_parse_header), (smokecodec_decode):
* ext/jpeg/smokecodec.h:
* ext/jpeg/smokeformat.h:
Updated smoke, new bitstream, allows embedding in ogg.
Diffstat (limited to 'ext/jpeg/smokecodec.h')
-rw-r--r-- | ext/jpeg/smokecodec.h | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/ext/jpeg/smokecodec.h b/ext/jpeg/smokecodec.h index 6ffc5ef8..6c428068 100644 --- a/ext/jpeg/smokecodec.h +++ b/ext/jpeg/smokecodec.h @@ -30,11 +30,12 @@ extern "C" { typedef struct _SmokeCodecInfo SmokeCodecInfo; typedef enum { + SMOKECODEC_WRONGVERSION = -5, SMOKECODEC_WRONGSIZE = -4, SMOKECODEC_ERROR = -3, SMOKECODEC_NOMEM = -2, SMOKECODEC_NULLPTR = -1, - SMOKECODEC_OK = 0, + SMOKECODEC_OK = 0 } SmokeCodecResult; typedef enum { @@ -42,11 +43,21 @@ typedef enum { SMOKECODEC_MOTION_VECTORS = (1<<1) } SmokeCodecFlags; +#define SMOKECODEC_ID_STRING "smoke" + +typedef enum { + SMOKECODEC_TYPE_ID = 0x80, + SMOKECODEC_TYPE_COMMENT = 0x81, + SMOKECODEC_TYPE_EXTRA = 0x83, + SMOKECODEC_TYPE_DATA = 0x40 +} SmokePacketType; /* init */ int smokecodec_encode_new (SmokeCodecInfo **info, const unsigned int width, - const unsigned int height); + const unsigned int height, + const unsigned int fps_num, + const unsigned int fps_denom); int smokecodec_decode_new (SmokeCodecInfo **info); @@ -69,6 +80,10 @@ SmokeCodecResult smokecodec_get_bitrate (SmokeCodecInfo *info, unsigned int *bitrate); /* encoding */ +SmokeCodecResult smokecodec_encode_id (SmokeCodecInfo *info, + unsigned char *out, + unsigned int *outsize); + SmokeCodecResult smokecodec_encode (SmokeCodecInfo *info, const unsigned char *in, SmokeCodecFlags flags, @@ -76,12 +91,18 @@ SmokeCodecResult smokecodec_encode (SmokeCodecInfo *info, unsigned int *outsize); /* decoding */ +SmokeCodecResult smokecodec_parse_id (SmokeCodecInfo *info, + const unsigned char *in, + const unsigned int insize); + SmokeCodecResult smokecodec_parse_header (SmokeCodecInfo *info, const unsigned char *in, const unsigned int insize, SmokeCodecFlags *flags, unsigned int *width, - unsigned int *height); + unsigned int *height, + unsigned int *fps_num, + unsigned int *fps_denom); SmokeCodecResult smokecodec_decode (SmokeCodecInfo *info, const unsigned char *in, |