summaryrefslogtreecommitdiffstats
path: root/src/ufodecode.h
diff options
context:
space:
mode:
authorMatthias Vogelgesang <matthias.vogelgesang@kit.edu>2012-03-12 17:10:42 +0100
committerMatthias Vogelgesang <matthias.vogelgesang@kit.edu>2012-03-12 17:10:42 +0100
commit7d908a588dbb471b19ac57d2ef3b7806314d16c4 (patch)
treebca4eaee23bf694dbe98facd49be6dca01df54eb /src/ufodecode.h
parent59376beeb02b68180ee3d7d216ab67ef8eb40266 (diff)
downloadufodecode-7d908a588dbb471b19ac57d2ef3b7806314d16c4.tar.gz
ufodecode-7d908a588dbb471b19ac57d2ef3b7806314d16c4.tar.bz2
ufodecode-7d908a588dbb471b19ac57d2ef3b7806314d16c4.tar.xz
ufodecode-7d908a588dbb471b19ac57d2ef3b7806314d16c4.zip
Add version 4 frame decoding
Beware, only version 0 can be decoded with SSE. To decode version 4 frames, you have to set the release mode to Debug.
Diffstat (limited to 'src/ufodecode.h')
-rw-r--r--src/ufodecode.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/ufodecode.h b/src/ufodecode.h
index 3ae7f70..9e2cbc4 100644
--- a/src/ufodecode.h
+++ b/src/ufodecode.h
@@ -10,11 +10,18 @@ extern "C" {
#endif
-ufo_decoder ufo_decoder_new(uint32_t height, uint32_t width, uint32_t *raw, size_t num_bytes);
+ufo_decoder ufo_decoder_new(int32_t height, uint32_t width, uint32_t *raw, size_t num_bytes);
+
void ufo_decoder_free(ufo_decoder decoder);
-size_t ufo_decoder_decode_frame(ufo_decoder decoder, uint32_t *raw, size_t num_bytes, uint16_t *pixels, uint32_t *frame_number, uint32_t *time_stamp, uint16_t *cmask);
+
+size_t ufo_decoder_decode_frame(ufo_decoder decoder,
+ uint32_t *raw, size_t num_bytes, uint16_t *pixels,
+ uint32_t *num_rows, uint32_t *frame_number, uint32_t *time_stamp, uint16_t *cmask);
+
void ufo_decoder_set_raw_data(ufo_decoder decoder, uint32_t *raw, size_t num_bytes);
-int ufo_decoder_get_next_frame(ufo_decoder decoder, uint16_t **pixels, uint32_t *frame_number, uint32_t *time_stamp, uint16_t *cmask);
+
+int ufo_decoder_get_next_frame(ufo_decoder decoder, uint16_t **pixels,
+ uint32_t *num_rows, uint32_t *frame_number, uint32_t *time_stamp, uint16_t *cmask);
void ufo_deinterlace_interpolate(const uint16_t *frame_in, uint16_t *frame_out, int width, int height);
void ufo_deinterlace_weave(const uint16_t *in1, const uint16_t *in2, uint16_t *out, int width, int height);