rotozoom.c File Reference
#include <stdlib.h>
#include <stdio.h>
#include <inttypes.h>

Go to the source code of this file.

Macros

#define FIXP   (1 << 16)
#define MY_PI   205887
#define SCALEBITS   8
#define ONE_HALF   (1 << (SCALEBITS - 1))
#define FIX(x)   ((int) ((x) * (1L << SCALEBITS) + 0.5))
#define DEFAULT_WIDTH   352
#define DEFAULT_HEIGHT   288
#define DEFAULT_NB_PICT   50
#define W   256
#define H   256

Functions

static int64_t int_pow (int64_t a, int p)
static int64_t int_sin (int64_t a)
static void rgb24_to_yuv420p (unsigned char *lum, unsigned char *cb, unsigned char *cr, unsigned char *src, int width, int height)
static void pgmyuv_save (const char *filename, int w, int h, unsigned char *rgb_tab)
static void put_pixel (int x, int y, int r, int g, int b)
static int ipol (uint8_t *src, int x, int y)
static void gen_image (int num, int w, int h)
static int init_demo (const char *filename)
int main (int argc, char **argv)

Variables

unsigned char * rgb_tab
int width
int height
int wrap
unsigned char tab_r [256 *256]
unsigned char tab_g [256 *256]
unsigned char tab_b [256 *256]
int h_cos [360]
int h_sin [360]

Macro Definition Documentation

#define DEFAULT_HEIGHT   288

Definition at line 126 of file rotozoom.c.

Referenced by main().

#define DEFAULT_NB_PICT   50

Definition at line 127 of file rotozoom.c.

Referenced by main().

#define DEFAULT_WIDTH   352

Definition at line 125 of file rotozoom.c.

Referenced by main().

#define FIX (   x)    ((int) ((x) * (1L << SCALEBITS) + 0.5))

Definition at line 58 of file rotozoom.c.

Referenced by rgb24_to_yuv420p().

#define FIXP   (1 << 16)

Definition at line 27 of file rotozoom.c.

Referenced by gen_image(), init_demo(), and int_pow().

#define H   256

Definition at line 238 of file rotozoom.c.

Referenced by init_demo().

#define MY_PI   205887

Definition at line 28 of file rotozoom.c.

Referenced by init_demo(), and int_sin().

#define ONE_HALF   (1 << (SCALEBITS - 1))

Definition at line 57 of file rotozoom.c.

Referenced by rgb24_to_yuv420p().

#define SCALEBITS   8

Definition at line 56 of file rotozoom.c.

Referenced by rgb24_to_yuv420p().

#define W   256

Definition at line 237 of file rotozoom.c.

Referenced by init_demo().

Function Documentation

static void gen_image ( int  num,
int  w,
int  h 
)
static

Definition at line 203 of file rotozoom.c.

Referenced by main().

static int init_demo ( const char *  filename)
static

Definition at line 240 of file rotozoom.c.

Referenced by main().

static int64_t int_pow ( int64_t  a,
int  p 
)
static

Definition at line 30 of file rotozoom.c.

Referenced by int_sin().

static int64_t int_sin ( int64_t  a)
static

Definition at line 42 of file rotozoom.c.

Referenced by init_demo().

static int ipol ( uint8_t *  src,
int  x,
int  y 
)
static

Definition at line 187 of file rotozoom.c.

Referenced by gen_image().

int main ( int  argc,
char **  argv 
)

Definition at line 279 of file rotozoom.c.

static void pgmyuv_save ( const char *  filename,
int  w,
int  h,
unsigned char *  rgb_tab 
)
static

Definition at line 129 of file rotozoom.c.

Referenced by main().

static void put_pixel ( int  x,
int  y,
int  r,
int  g,
int  b 
)
static

Definition at line 166 of file rotozoom.c.

Referenced by gen_image().

static void rgb24_to_yuv420p ( unsigned char *  lum,
unsigned char *  cb,
unsigned char *  cr,
unsigned char *  src,
int  width,
int  height 
)
static

Definition at line 60 of file rotozoom.c.

Referenced by pgmyuv_save().

Variable Documentation

int h_cos[360]

Definition at line 184 of file rotozoom.c.

Referenced by gen_image(), and init_demo().

int h_sin[360]

Definition at line 185 of file rotozoom.c.

Referenced by gen_image(), and init_demo().

int height

Definition at line 164 of file rotozoom.c.

unsigned char* rgb_tab

Definition at line 163 of file rotozoom.c.

Referenced by main(), and put_pixel().

unsigned char tab_b[256 *256]

Definition at line 182 of file rotozoom.c.

Referenced by gen_image(), and init_demo().

unsigned char tab_g[256 *256]

Definition at line 181 of file rotozoom.c.

Referenced by gen_image(), and init_demo().

unsigned char tab_r[256 *256]

Definition at line 180 of file rotozoom.c.

Referenced by gen_image(), and init_demo().

int width
Examples:
libavformat/output-example.c.

Definition at line 164 of file rotozoom.c.

Referenced by abgrToA_c(), apply_loop_filter(), av_parse_video_size(), avcodec_set_dimensions(), avg_tpel_pixels_mc01_c(), avg_tpel_pixels_mc02_c(), avg_tpel_pixels_mc10_c(), avg_tpel_pixels_mc11_c(), avg_tpel_pixels_mc12_c(), avg_tpel_pixels_mc20_c(), avg_tpel_pixels_mc21_c(), avg_tpel_pixels_mc22_c(), bgr24ToUV_c(), bgr24ToUV_half_c(), bgr24ToUV_mmx_TMPL(), bgr24ToUV_TMPL(), bgr24ToY_c(), bgr24ToY_mmx_TMPL(), bgr24ToY_TMPL(), bink_decode_plane(), bitplane_decoding(), bktr_init(), blend_slice(), bmp_decode_frame(), bswap16UV_c(), bswap16Y_c(), build_feed_streams(), chrRangeFromJpeg16_c(), chrRangeFromJpeg_c(), chrRangeToJpeg16_c(), chrRangeToJpeg_c(), codec_reinit(), codecctl_int(), convert_from_rgb32(), convert_to_rgb32_loco(), copy_block(), dc1394_read_common(), decode_bdlt(), decode_block(), decode_colskip(), decode_dds1(), decode_frame(), decode_frame_header(), decode_frame_headers(), decode_header(), decode_i2_frame(), decode_i_frame(), decode_p_frame(), decode_ppc(), decode_rowskip(), decode_seq_header(), decode_slice(), decode_vol_header(), decode_wdlt(), device_init(), draw_edges(), draw_edges_mmx(), draw_glyph_rgb(), draw_glyph_yuv(), draw_n_color(), drawbox(), dtext_prepare_text(), dump_enc_cfg(), encode_frame(), encode_picture_lossless(), encode_picture_ls(), execute_code(), ff_flv_decode_picture_header(), ff_gmc_c(), ff_gradfun_blur_line_c(), ff_gradfun_filter_line_c(), ff_gradfun_filter_line_mmx2(), ff_gradfun_filter_line_ssse3(), ff_h263_decode_picture_header(), ff_jpegls_decode_picture(), ff_mjpeg_decode_sof(), ff_print_debug_info(), ff_raw_read_header(), ff_shrink88(), ff_snow_horizontal_compose97i(), ff_snow_vertical_compose97i(), ff_vda_create_decoder(), fill_yuv_image(), get_video_buffer(), gif_image_write_image(), gif_read_image(), gif_write_header(), gmc_c(), grab_read_header(), horizontal_compose53i(), horizontal_decompose53i(), horizontal_decompose97i(), idcin_read_header(), inter_predict(), interleaveBytes_c(), interleaveBytes_TMPL(), lag_decode_arith_plane(), libopenjpeg_decode_frame(), loco_decode_plane(), lumRangeFromJpeg16_c(), lumRangeFromJpeg_c(), lumRangeToJpeg16_c(), lumRangeToJpeg_c(), main(), matroska_read_header(), mca(), mimic_decode_frame(), mov_read_tkhd(), mov_write_tapt_tag(), mpeg1_decode_sequence(), msnwc_tcp_probe(), msrle_decode_8_16_24_32(), nuv_header(), nvXXtoUV_c(), op(), paint_mouse_pointer(), palToUV_c(), palToY_c(), parse_picture_segment(), planar_rgb16be_to_uv(), planar_rgb16be_to_y(), planar_rgb16le_to_uv(), planar_rgb16le_to_y(), planar_rgb_to_uv(), planar_rgb_to_y(), png_get_interlaced_row(), png_put_interlaced_row(), postProcess_TMPL(), pp_postprocess(), process_ipmovie_chunk(), put_line(), put_pixel(), put_tpel_pixels_mc01_c(), put_tpel_pixels_mc02_c(), put_tpel_pixels_mc10_c(), put_tpel_pixels_mc11_c(), put_tpel_pixels_mc12_c(), put_tpel_pixels_mc20_c(), put_tpel_pixels_mc21_c(), put_tpel_pixels_mc22_c(), qpeg_decode_inter(), qtrle_encode_line(), rawvideo_read_packet(), read_header(), rgb16_32ToUV_c_template(), rgb16_32ToUV_half_c_template(), rgb24_to_yuv420p(), rgb24ToUV_c(), rgb24ToUV_half_c(), rgb24ToUV_TMPL(), rgb24ToY_c(), rgb24ToY_TMPL(), rgb48funcs(), rgb48ToUV_c_template(), rgb48ToUV_half_c_template(), rgb48ToY_c_template(), rgbaToA_c(), rpza_decode_stream(), rtjpeg_decode_init(), rv34_mc(), siff_parse_vbv1(), smc_decode_stream(), snow_interleave_line_header(), spatial_compose53i_dy_buffered(), svq1_decode_block_intra(), svq1_decode_block_non_intra(), svq1_decode_frame(), svq1_encode_plane(), swf_write_header(), theora_header(), tiff_unpack_strip(), to_meta_with_crop(), uyvyToUV_c(), uyvyToY_c(), uyvytoyuv420_c(), uyvytoyuv420_TMPL(), uyvytoyuv422_c(), uyvytoyuv422_TMPL(), v410_encode_frame(), vb_decode_framedata(), vble_restore_plane(), vc1_mc_4mv_luma(), vertical_compose53iH0(), vertical_compose53iL0(), vertical_compose97iH0(), vertical_compose97iH1(), vertical_compose97iL0(), vertical_compose97iL1(), vertical_decompose53iH0(), vertical_decompose53iL0(), vertical_decompose97iH0(), vertical_decompose97iH1(), vertical_decompose97iL0(), vertical_decompose97iL1(), video_image_display(), xan_wc3_copy_pixel_run(), xan_wc3_decode_frame(), xan_wc3_output_pixel_run(), xsub_encode(), yuv422ptouyvy_TMPL(), yuv422ptoyuy2_TMPL(), yuv4_read_header(), yuv4_read_packet(), yuvPlanartouyvy_TMPL(), yuvPlanartoyuy2_TMPL(), yuy2ToUV_c(), yuy2ToY_c(), yuy2toyv12_TMPL(), yuyvtoyuv420_c(), yuyvtoyuv420_TMPL(), yuyvtoyuv422_c(), yuyvtoyuv422_TMPL(), yv12touyvy_TMPL(), yv12touyvy_unscaled_altivec(), yv12toyuy2_TMPL(), and yv12toyuy2_unscaled_altivec().