xvid源代码以及文件结构

文件结构: build debian doc dshow examples src vfw 依次对应相应的开发。其中src目录下的文件是core。如果使用VC编译项目的话,进入build/win32目录下,打开Xvidcore.dsp即可。 在dshow目录下是一个Decoder Filter,你可以通过它编译出一个基于CVideoTransformFilter的Filter。 在vfw目录下,你可以采用vfw的编程方式。 在doc目录下,Install是DOS文件格式,你可以通过阅读这个文章,知道如何获取最新的xvid的代码,如果编译xvidcore等。 另外你如果想编译成功的话可能需要下载nasm.exe程序. 编译分为Ia32和Ia64两部分. 目录结构如下: decoder.c / encoder.c / xvid.c / bitstream/bitstream.c / ---对字节流操作的代码 bitstream/mbcoding.c / ---对VLC和VOP字节操作 bitdustream/cbp.c / dct/fdct.c / ---DCT变换 dct/idct.c / ---DCT逆变换 dct/simple_idct.c / image/colorspace.c / ---颜色空间变化 image/image.c / image/interpolate8x8.c / ---8*8/16*16低通的转换 image/font.c / ---字符处理部分 image/postprocessing.c / ---图像处理部分 image/qpel.c / image/reduced.c / motion/estimation_bvop.c / ---B帧vop预测部分 motion/estimation_common.c / ---模版搜索 motion/estimation_gmc.c / motion/estimation_pvop.c / ---P帧VOP预测部分 motion/estimation_rd_based.c / motion/gmc.c / motion/motion_comp.c / ---运动补偿 motion/vop_type_decision.c / ---VOP类型描述 motion/sad.c / prediction/mbprediction.c / ---mpeg 宏块预测 plugins/plugin_single.c / ---流控操作 plugins/plugin_2pass1.c / plugins/plugin_2pass2.c / plugins/plugin_lumimasking.c / plugins/plugin_dump.c / plugins/plugin_psnr.c / quant/quant_h263.c / ---h263 的量化 quant/quant_matrix.c / ---量化参数 quant/quant_mpeg.c / utils/emms.c / utils/mbtransquant.c / utils/mem_align.c / ---内存对齐操作 utils/mem_transfer.c / ---内存转换 utils/timer.c SRC_IA32 = / bitstream/x86_asm/cbp_3dne.asm / ---优化字节流操作 bitstream/x86_asm/cbp_mmx.asm / bitstream/x86_asm/cbp_sse2.asm / dct/x86_asm/fdct_mmx_ffmpeg.asm / ---用MMX优化ffmpeg dct/x86_asm/fdct_mmx_skal.asm / dct/x86_asm/fdct_sse2_skal.asm / dct/x86_asm/idct_3dne.asm / dct/x86_asm/idct_mmx.asm / dct/x86_asm/idct_sse2_dmitry.asm / dct/x86_asm/simple_idct_mmx.asm / image/x86_asm/colorspace_rgb_mmx.asm / ---rgb/yuv的转换 image/x86_asm/colorspace_yuv_mmx.asm / image/x86_asm/colorspace_yuyv_mmx.asm / image/x86_asm/interpolate8x8_3dn.asm / image/x86_asm/interpolate8x8_3dne.asm / image/x86_asm/interpolate8x8_mmx.asm / image/x86_asm/interpolate8x8_xmm.asm / image/x86_asm/reduced_mmx.asm / image/x86_asm/qpel_mmx.asm / motion/x86_asm/sad_xmm.asm / motion/x86_asm/sad_sse2.asm / motion/x86_asm/sad_mmx.asm / motion/x86_asm/sad_3dne.asm / motion/x86_asm/sad_3dn.asm / quant/x86_asm/quantize_h263_mmx.asm / ---针对Intel和AMD优化H263的量化参数 quant/x86_asm/quantize_h263_3dne.asm / quant/x86_asm/quantize_mpeg_xmm.asm / quant/x86_asm/quantize_mpeg_mmx.asm / utils/x86_asm/mem_transfer_mmx.asm / ---针对Intel和AMD优化内存转换 utils/x86_asm/mem_transfer_3dne.asm / utils/x86_asm/interlacing_mmx.asm / utils/x86_asm/cpuid.asm 仅仅列举了一部分的代码树, 以上这部分的代码是重要的. 这时候你可以打开libxvidcore项目进行阅读了.

你可能感兴趣的:(编程,优化,dos,filter,图像处理)