hvirtual/quicktime/fastjpgmacro.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define QUICKTIME_FASTJPG_HANDLE_RST(rst_int, rst_cnt)
#define QUICKTIME_FASTJPG_TEST_MARKER
#define QUICKTIME_FASTJPG_HBBUF_FILL8_1(hbbuf, hbnum)
#define QUICKTIME_FASTJPG_HUFF_DECODE(huff_hdr, htbl, hbnum, hbbuf, result)
#define QUICKTIME_FASTJPG_HUFF_MASK(s)   ((1 << (s)) - 1)
#define QUICKTIME_FASTJPG_GET_BITS(n, hbnum, hbbuf, result)
#define QUICKTIME_FASTJPG_HUFF_EXTEND(val, sz)   ((val) < (1 << ((sz) - 1)) ? (val) + (((-1) << (sz)) + 1) : (val))
#define QUICKTIME_MCU_ARGS
#define QUICKTIME_MCU_VARS
#define QUICKTIME_MCU111111_MID_VARS
#define QUICKTIME_MCU111111_MID_DECL
#define QUICKTIME_MCU_INNER_VARS
#define QUICKTIME_MCU_INNER_INIT
#define QUICKTIME_MCU4H_INNER_TAIL(inc1, inc2)
#define QUICKTIME_MCU_LIMITRANGE(x)   (((x) < 0) ? 0 : (((x) > 255) ? 255 : (x)));
#define QUICKTIME_MCU_YUV_TO_RGB(y, cr, cg, cb, ip)
#define QUICKTIME_MCU221111_MID_VARS
#define QUICKTIME_MCU221111_MID_DECL
#define QUICKTIME_MCU2H_INNER_TAIL(inc1, inc2)
#define QUICKTIME_MCU1H_INNER_TAIL(inc)


Define Documentation

#define QUICKTIME_FASTJPG_GET_BITS ( n,
hbnum,
hbbuf,
result   ) 

Value:

{ \
        hbnum -= n; \
        while(hbnum < 0) \
        { \
                QUICKTIME_FASTJPG_HBBUF_FILL8_1(hbbuf, hbnum); \
        } \
        (result) = ((hbbuf >> hbnum) & QUICKTIME_FASTJPG_HUFF_MASK(n)); \
}

Definition at line 136 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_huffparse().

#define QUICKTIME_FASTJPG_HANDLE_RST ( rst_int,
rst_cnt   ) 

Value:

{ \
        if(((rst_int) && (rst_cnt == 0))) \
        { \
                jpeg_info->jpg_h_bbuf = 0; \
                jpeg_info->jpg_h_bnum = 0; \
                if(jpeg_info->marker == 0) jpeg_info->marker = quicktime_fastjpg_check_for_marker(jpeg_info); \
                if(jpeg_info->marker) \
                { \
                        if(jpeg_info->marker == M_EOI) \
                        { \
                                jpeg_info->jpg_saw_EOI = 1; \
                                return 1; \
                        } \
                else \
                        if(jpeg_info->marker == M_SOS) quicktime_fastjpg_readSOS(jpeg_info); \
                else \
                        if(!((jpeg_info->marker >= M_RST0) && (jpeg_info->marker <= M_RST7))) \
                { \
                                printf("QUICKTIME_FASTJPG_HANDLE_RST: unexp marker(%x)\n", jpeg_info->marker); \
                                /*return(0);*/ \
                        } \
                jpeg_info->marker = 0; \
                } \
                jpeg_info->jpg_comps[0].dc = jpeg_info->jpg_comps[1].dc = jpeg_info->jpg_comps[2].dc = 0; \
                rst_cnt = rst_int; \
        } \
        else \
                rst_cnt--; \
}

Definition at line 5 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_decode_111111(), quicktime_fastjpg_decode_211111(), quicktime_fastjpg_decode_221111(), and quicktime_fastjpg_decode_411111().

#define QUICKTIME_FASTJPG_HBBUF_FILL8_1 ( hbbuf,
hbnum   ) 

Value:

{ \
        (hbbuf) <<= 8; \
        (hbnum) += 8; \
\
        if(jpeg_info->marker) tmp__ = 0x00; \
        else \
        { \
                tmp__ = *(jpeg_info->chunk++); \
                jpeg_info->chunk_size--; \
        } \
\
        while(tmp__ == 0xff) \
        { \
                t1_ = *(jpeg_info->chunk++); \
                jpeg_info->chunk_size--; \
        if(t1_ == 0x00) break; \
        else if(t1_ == 0xff) continue; \
        else \
                { \
                        jpeg_info->marker = t1_; \
                        tmp__ = 0x00; \
                        break; \
                } \
        } \
        hbbuf |= tmp__; \
}

Definition at line 67 of file fastjpgmacro.h.

#define QUICKTIME_FASTJPG_HUFF_DECODE ( huff_hdr,
htbl,
hbnum,
hbbuf,
result   ) 

Definition at line 95 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_huffparse().

#define QUICKTIME_FASTJPG_HUFF_EXTEND ( val,
sz   )     ((val) < (1 << ((sz) - 1)) ? (val) + (((-1) << (sz)) + 1) : (val))

Definition at line 146 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_huffparse().

#define QUICKTIME_FASTJPG_HUFF_MASK ( s   )     ((1 << (s)) - 1)

Definition at line 134 of file fastjpgmacro.h.

#define QUICKTIME_FASTJPG_TEST_MARKER

Value:

while(jpeg_info->marker) \
{ \
        if(jpeg_info->marker == M_EOI) \
        { \
                jpeg_info->jpg_saw_EOI = 1; \
                jpeg_info->marker = 0; \
        } \
        else \
        if(jpeg_info->marker == M_SOS) \
        { \
                quicktime_fastjpg_readSOS(jpeg_info); \
                jpeg_info->marker = 0; \
        } \
        else \
        if((jpeg_info->marker >= M_RST0) && (jpeg_info->marker <= M_RST7)) \
        { \
                jpeg_info->jpg_comps[0].dc = jpeg_info->jpg_comps[1].dc = jpeg_info->jpg_comps[2].dc = 0; \
                rst_skip = rst_count; \
                rst_count = jpeg_info->jpg_rst_interval; \
                jpeg_info->marker = 0; \
                jpeg_info->jpg_h_bbuf = 0; \
                jpeg_info->jpg_h_bnum = 0; \
        } \
        else /* Unknown or unexpected Marker */ \
        { \
                printf("QUICKTIME_FASTJPG_TEST_MARKER: unexp marker(%x)\n", jpeg_info->marker); \
                jpeg_info->marker = quicktime_fastjpg_skip_to_next_rst(jpeg_info); /* hopefully a RST marker */ \
        } \
}

Definition at line 36 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_decode_111111(), quicktime_fastjpg_decode_211111(), quicktime_fastjpg_decode_221111(), and quicktime_fastjpg_decode_411111().

#define QUICKTIME_MCU111111_MID_DECL

Value:

ip = *row_pointers; \
        yp = yptr; \
        up = uptr; \
        vp = vptr; \
        xi = frame_width; \
        skip = 0;

Definition at line 177 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB(), quicktime_fastjpg_MCU211111_to_RGB(), and quicktime_fastjpg_MCU411111_to_RGB().

#define QUICKTIME_MCU111111_MID_VARS

Value:

unsigned char *ip; \
        unsigned char *yp, *up, *vp; \
        long xi, skip;

Definition at line 172 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB(), quicktime_fastjpg_MCU211111_to_RGB(), and quicktime_fastjpg_MCU411111_to_RGB().

#define QUICKTIME_MCU1H_INNER_TAIL ( inc   ) 

Value:

skip++; \
        if(skip >= 8) \
        { \
                skip = 0; \
                yp += inc; \
                up += inc; \
                vp += inc; \
        }

Definition at line 255 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB().

#define QUICKTIME_MCU221111_MID_DECL

Value:

if(frame_height <= 0) return 0; \
        if(yi == 4) yptr += 64; \
        ip0 = *row_pointers; \
        row_pointers += interlaced ? 2 : 1; \
        ip1 = *row_pointers; \
        row_pointers += interlaced ? 2 : 1; \
        yp = yptr; \
        up = uptr; \
        vp = vptr; \
        xi = frame_width; \
        skip = 0;

Definition at line 230 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU221111_to_RGB().

#define QUICKTIME_MCU221111_MID_VARS

Value:

unsigned char *ip0, *ip1; \
        unsigned char *yp, *up, *vp; \
        long xi, skip;

Definition at line 224 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU221111_to_RGB().

#define QUICKTIME_MCU2H_INNER_TAIL ( inc1,
inc2   ) 

Value:

skip++; \
        if(skip == 4) yp += inc1; \
        else \
        if(skip >= 8) \
        { \
                skip = 0; \
                yp += inc2; \
                up += inc1; \
                vp += inc1; \
        }

Definition at line 243 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU211111_to_RGB(), and quicktime_fastjpg_MCU221111_to_RGB().

#define QUICKTIME_MCU4H_INNER_TAIL ( inc1,
inc2   ) 

Value:

skip++; \
        if(skip >= 8) \
        { \
                skip = 0; \
                yp += inc2; \
                up += inc1; \
                vp += inc1; \
        } \
        else \
        if(!(skip & 1)) /* 2 4 6 */     \
                yp += inc1;

Definition at line 201 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU411111_to_RGB().

#define QUICKTIME_MCU_ARGS

Value:

quicktime_jpeg_t *jpeg_info,  \
        unsigned char **row_pointers, \
        long frame_width, \
        long frame_height, \
        unsigned long mcu_row_size, \
        unsigned long ip_size, \
        quicktime_mjpa_buffs *yuvbufs, \
        int interlaced

Definition at line 149 of file fastjpgmacro.h.

#define QUICKTIME_MCU_INNER_INIT

Value:

u0 = (unsigned long)*up++; \
        v0 = (unsigned long)*vp++; \
        cr = VRTab[v0]; \
        cb = UBTab[u0]; \
        cg = UGTab[u0] + VGTab[v0];

Definition at line 194 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB(), quicktime_fastjpg_MCU211111_to_RGB(), quicktime_fastjpg_MCU221111_to_RGB(), and quicktime_fastjpg_MCU411111_to_RGB().

#define QUICKTIME_MCU_INNER_VARS

Value:

unsigned long u0; \
        unsigned long v0; \
        long cr; \
        long cb; \
        long cg; \
        long y_long;

Definition at line 185 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB(), quicktime_fastjpg_MCU211111_to_RGB(), quicktime_fastjpg_MCU221111_to_RGB(), and quicktime_fastjpg_MCU411111_to_RGB().

#define QUICKTIME_MCU_LIMITRANGE (  )     (((x) < 0) ? 0 : (((x) > 255) ? 255 : (x)));

Definition at line 214 of file fastjpgmacro.h.

#define QUICKTIME_MCU_VARS

Value:

unsigned long yi; \
        unsigned char *yptr, *uptr, *vptr; \
        long *YTab = jpeg_info->yuvtabs.YUV_Y_tab; \
        long *UBTab = jpeg_info->yuvtabs.YUV_UB_tab; \
        long *VRTab = jpeg_info->yuvtabs.YUV_VR_tab; \
        long *UGTab = jpeg_info->yuvtabs.YUV_UG_tab; \
        long *VGTab = jpeg_info->yuvtabs.YUV_VG_tab; \
        unsigned char *ybuf = yuvbufs->ybuf; \
        unsigned char *ubuf = yuvbufs->ubuf; \
        unsigned char *vbuf = yuvbufs->vbuf;

Definition at line 160 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB(), quicktime_fastjpg_MCU211111_to_RGB(), quicktime_fastjpg_MCU221111_to_RGB(), and quicktime_fastjpg_MCU411111_to_RGB().

#define QUICKTIME_MCU_YUV_TO_RGB ( y,
cr,
cg,
cb,
ip   ) 

Value:

y_long = (long)y; \
        *ip++ = (unsigned char)QUICKTIME_MCU_LIMITRANGE((y_long + cr) >> 6); \
        *ip++ = (unsigned char)QUICKTIME_MCU_LIMITRANGE((y_long + cg) >> 6); \
        *ip++ = (unsigned char)QUICKTIME_MCU_LIMITRANGE((y_long + cb) >> 6);

Definition at line 217 of file fastjpgmacro.h.

Referenced by quicktime_fastjpg_MCU111111_to_RGB(), quicktime_fastjpg_MCU211111_to_RGB(), quicktime_fastjpg_MCU221111_to_RGB(), and quicktime_fastjpg_MCU411111_to_RGB().


Generated on Mon Apr 28 14:02:48 2008 for Cinelerra by  doxygen 1.5.5