H.264完整的C语言代码和DCT的代码

源代码在线查看: mpeg.hpp

软件大小: 4747 K
上传用户: aoaoaoao
关键词: 264 DCT C语言代码 代码
下载地址: 免注册下载 普通下载 VIP

相关代码

				#ifndef _mpeg
				#define _mpeg
				
				// do not change this
				#include "idb_types.hpp"
				#include "idb_deftypes.hpp"
				
				#define KERNELS_DIR "h264/"
				
				kernel idxGen(ostream   indices,
				              uc&        uc_size,
				              uc&        uc_params);
				KERNELDECL(idxGen);
				#define idxGen KERNELCALL(idxGen)
				
				kernel icolor(istream datain,
				              ostream Yout,
				              ostream CrCbout);
				KERNELDECL(icolor);
				#define icolor KERNELCALL(icolor)
				
				kernel pcolor(istream datain,
				              ostream Yout,
				              ostream CrCbout);
				KERNELDECL(pcolor);
				#define pcolor KERNELCALL(pcolor)
				
				kernel dct(istream datain,
				           istream consts,
				           ostream out,
				           uc& uc_quantizer_scale);
				KERNELDECL(dct);
				#define dct KERNELCALL(dct)
				
				kernel idct(istream datain,
				            istream consts,
				            ostream out,
				            uc& uc_quantizer_scale);
				KERNELDECL(idct);
				#define idct KERNELCALL(idct)
				
				kernel rle(istream Yin,
				           istream CrCbin,
				           istream indices,
				           cistream motion,
				           costream out,
				           uc& pframe,
				           uc& quant_scale);
				KERNELDECL(rle);
				#define rle KERNELCALL(rle)
				
				kernel difference(istream curryblks,
				                  istream currcblks,
				                  istream refyblks,
				                  istream refcblks,
				                  ostream diffyblks,
				                  ostream diffcblks);
				KERNELDECL(difference);
				#define difference KERNELCALL(difference)
				
				kernel correlate(istream diffyblks,
				                 istream diffcblks,
				                 istream refyblks,
				                 istream refcblks,
				                 ostream newrefyblks,
				                 ostream newrefcblks,
				                 uc& uc_pframe);
				KERNELDECL(correlate);
				#define correlate KERNELCALL(correlate)
				
				kernel MV2idx(cistream motion,      
				              ostream   yindices,    
				              ostream   crcbindices, 
				              uc&        uc_offsets,  
				              uc&        uc_mblks,    
				              uc&        uc_mb_width);
				KERNELDECL(MV2idx);
				#define MV2idx KERNELCALL(MV2idx)
				
				//删除blocksearch
				
				kernel mb_encode(istream datain,
				                 istream consts,
				                 ostream color_out,
				                 ostream dct_out,
				                 costream out);
				KERNELDECL(mb_encode);
				#define mb_encode KERNELCALL(mb_encode)
				
				
				
				//添加此处
				kernel me_fast(istream row0,
				               istream row1,
				               istream row2,
				               istream mblocks,
				               costream motions_out,
				               ostream refyblks,
				               ostream   crcbindices,
				               uc& uc_margin,
				               uc& uc_offsets,
				               uc& uc_mblks,
				               uc& uc_mb_width);
				KERNELDECL(me_fast);
				#define me_fast KERNELCALL(me_fast)
				
				kernel me_fast_search4(istream row0,
				                       istream row1,
				                       istream row2,
				                       istream mblocks,
				                       costream motions_out,
				                       uc& uc_margin,
				                       uc& uc_mblks);
				KERNELDECL(me_fast_search4);
				#define me_fast_search4 KERNELCALL(me_fast_search4)
				
				kernel me_fast_jitter2(istream row0,
				                       istream row1,
				                       istream row2,
				                       istream mblocks,
				                       cistream motions_in,
				                       costream motions_out,
				                       uc& uc_margin,
				                       uc& uc_mblks);
				KERNELDECL(me_fast_jitter2);
				#define me_fast_jitter2 KERNELCALL(me_fast_jitter2)
				
				kernel me_fast_jitter1(istream row0,
				                       istream row1,
				                       istream row2,
				                       istream mblocks,
				                       cistream motions_in,
				                       costream motions_out,
				                       ostream refyblks,
				                       ostream   crcbindices,
				                       uc& uc_margin,
				                       uc& uc_offsets,
				                       uc& uc_mblks,
				                       uc& uc_mb_width);
				KERNELDECL(me_fast_jitter1);
				#define me_fast_jitter1 KERNELCALL(me_fast_jitter1)
				
				
				
				
				// do not change this
				#include "idb_undeftypes.hpp"
				
				#endif
							

相关资源