ArDrone SDK 1.8 added
[mardrone] / mardrone / ARDrone_SDK_Version_1_8_20110726 / ARDroneLib / VLIB / video_picture.h
diff --git a/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VLIB/video_picture.h b/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VLIB/video_picture.h
new file mode 100644 (file)
index 0000000..34793c8
--- /dev/null
@@ -0,0 +1,30 @@
+#ifndef _VIDEO_PICTURE_H_
+#define _VIDEO_PICTURE_H_
+
+#include <VP_Os/vp_os_types.h>
+#include <VP_Api/vp_api_picture.h>
+
+#include <VLIB/video_picture_defines.h>
+
+typedef struct _video_picture_context_t {
+  uint8_t*  y_src;
+  uint8_t*  cb_src;
+  uint8_t*  cr_src;
+
+  uint32_t  y_woffset; // = picture->y_line_size (in bytes)
+  uint32_t  c_woffset; // = picture->cb_line_size (in bytes)
+  uint32_t  y_hoffset; // = picture->y_line_size * MCU_HEIGHT (in bytes)
+
+} video_picture_context_t;
+
+// Transform picture in macro blocks
+C_RESULT video_blockline_to_macro_blocks(video_picture_context_t* ctx, int16_t* macro_blocks, int32_t num_macro_blocks);
+
+// Transform macro blocks in picture
+C_RESULT video_blockline_from_macro_blocks(video_picture_context_t* ctx, int16_t* macro_blocks, int32_t num_macro_blocks, enum PixelFormat format);
+
+// Transform macro blocks in picture
+C_RESULT video_blockline_from_blockline(video_picture_context_t* ctx, video_picture_context_t* src, int32_t num_macro_blocks, enum PixelFormat format);
+
+
+#endif // _VIDEO_PICTURE_H_