pdv_interlace.c File Reference


Detailed Description

PCI DV Library routines to reorder/interpolate image buffers from cameras.

Definition in file pdv_interlace.c.

#include "edtinc.h"
#include "pdv_interlace_methods.h"
#include <math.h>

Go to the source code of this file.

Defines

#define DBG1   PDVLIB_MSG_INFO_1
#define DBG2   PDVLIB_MSG_INFO_2
#define PDV_BAYER_ORDER(dd_p)
#define PDV_BAYER_ORDER_BGGR   0
#define PDV_BAYER_ORDER_GBRG   1
#define PDV_BAYER_ORDER_GRBG   3
#define PDV_BAYER_ORDER_RGGB   2
#define PDVFATAL   PDVLIB_MSG_FATAL
#define PDVWARN   PDVLIB_MSG_WARNING

Functions

int deIntlv_10bit_8tap_packed (u_char *src, int width, int rows, u_short *dest)
int deIntlv_10bit_8tap_to_8bit (u_char *src, int width, int rows, u_char *dest)
int deIntlv_1_8_msb0 (u_char *src, int width, int rows, u_char *dest)
 Convert 1 bit input into 8 bit for display.
int deIntlv_1_8_msb7 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_2ch_24_12 (u_char *src, int width, int rows, u_short *dest)
 Convert 24 bit Camera Link to 2 channel 10 or 12 bit.
int deIntlv_2ch_even_rt_16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_2ch_even_rt_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_2ch_inv_rt_24_12 (u_char *src, int width, int rows, u_short *dest)
 Convert 24 bit Camera Link to 2 channel 10 or 12 bit.
int deIntlv_4ch_ill_16 (u_short *src, int width, int height, u_short *dest)
int deIntlv_4ch_ill_8 (u_char *src, int width, int height, u_char *dest)
int deIntlv_buffers (EdtPostProc *pCtrl, void *src_p, void *dest_p, int width, int height)
int deIntlv_dalsa_4ch_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_dalsa_ls_4ch_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_ES10_16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_ES10_16_hilo (u_short *src, int width, int rows, u_short *dest)
int deIntlv_ES10_16_odd (u_short *src, int width, int rows, u_short *dest)
int deIntlv_ES10_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_HiLo_Line16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_InOut16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_InOut8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_inv_rt_16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_inv_rt_16_BGR (u_short *src, int width, int rows, u_char *dest, int order, int src_depth)
int deIntlv_inv_rt_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_inv_rt_8_BGR (u_char *src, int width, int rows, u_char *dest, int order)
int deintlv_line_taps_8x4 (u_char *src, int width, int rows, u_char *dest, int ntaps, PdvInterleaveTap *taps)
int deIntlv_line_taps_8x4_inv_rt (u_char *src, int width, int rows, u_char *dest)
int deIntlv_merge_fields (u_char *evenptr, u_char *oddptr, int width, int rows, int depth, u_char *dest, int offset)
int deIntlv_MidTop_Line16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_MidTop_Line8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_piranha_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_quad2_16 (u_short *src, int width, int height, u_short *dest)
int deIntlv_quad2_8 (u_char *src, int width, int height, u_char *dest)
int deIntlv_quad3_16 (u_short *src, int width, int height, u_short *dest)
int deIntlv_quad3_8 (u_char *src, int width, int height, u_char *dest)
int deIntlv_quad_16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_quad_8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_specinst_4ch_16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_TopBottom16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_TopBottom8 (u_char *src, int width, int rows, u_char *dest)
int deIntlv_TopMid_Line16 (u_short *src, int width, int rows, u_short *dest)
int deIntlv_XXband_16 (u_short *src, int width, int rows, int bands, u_short *dest)
void pdv_alloc_tmpbuf (PdvDev *pdv_p)
int pdv_deinterlace (PdvDev *pdv_p, PdvDependent *dd_p, u_char *dmabuf, u_char *output_buf)
int pdv_load_postproc_module (EdtPostProc *pCtrl, char *name, int srcdepth, int destdepth)
EdtPostProcpdv_lookup_postproc (int func_type, int src_depth, int depth)
int pdv_pixel_type_from_depth (int depth)
int pdv_process_inplace (PdvDev *pdv_p)
int pdv_set_postproc (EdtPostProc *pCtrl, int depth, int extdepth, int frame_height, int interlace, int image_offset, int order, int n_intlv_taps, PdvInterleaveTap *taps)
EdtPostProcpdv_setup_postproc (PdvDev *pdv_p, PdvDependent *dd_p, EdtPostProc *pInCtrl)
int pdv_unload_postproc_module (EdtPostProc *pCtrl)
int pdv_update_postproc (PdvDev *pdv_p, PdvDependent *dd_p, EdtPostProc *pCtrl)
int pp_bgr_2_rgb (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_convert_bayer_image_16_BGR (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_convert_bayer_image_8_BGR (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_10bit_8tap_packed (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_10bit_8tap_to_8bit (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_1_8_msb0 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_1_8_msb7 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deIntlv_20band_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deIntlv_21band_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_2ch_24_12 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_2ch_even_rt_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_2ch_even_rt_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_2ch_inv_rt_24_12 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_4ch_ill_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_4ch_ill_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_dalsa_4ch_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_dalsa_ls_4ch_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_ES10_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_ES10_8_BGGR (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_hilo_line16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_inv_rt_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_inv_rt_16_BGR (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_inv_rt_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_inv_rt_8_BGR (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_line_inout16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_line_inout8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deintlv_line_taps_8x4 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deintlv_line_taps_8x4_inv_rt (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_line_topbottom16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_line_topbottom8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_midtop_line16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_midtop_line8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_piranha_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_quad2_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_quad2_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_quad3_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_quad3_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_quad_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_quad_8 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_deIntlv_specinst_4ch_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
 pp_deintlv_topmid_line16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_ES10deIntlv_16 (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_ES10deIntlv_16_hilo (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_ES10deIntlv_16_odd (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)
int pp_merge_fields (void *p_src, int width, int rows, void *p_dest, EdtPostProc *pCtrl)


Function Documentation

int deIntlv_2ch_24_12 ( u_char *  src,
int  width,
int  rows,
u_short *  dest 
)

Convert 24 bit Camera Link to 2 channel 10 or 12 bit.

channel 0 is first pixel, channel 1 second

Definition at line 938 of file pdv_interlace.c.

int deIntlv_2ch_inv_rt_24_12 ( u_char *  src,
int  width,
int  rows,
u_short *  dest 
)

Convert 24 bit Camera Link to 2 channel 10 or 12 bit.

channel 0 is first half of line, channel 1 is second half reversed

Definition at line 893 of file pdv_interlace.c.


Generated on 19 Jun 2015 by  doxygen 1.4.7