资源简介
Visual C++视频会议开发技术与实例.rar
Visual C++视频会议开发技术与实例.rar
代码片段和文件信息
#include“sim.h“
#include “global_e.h“
#include “TMConfig.h“
void CodeOneOrTwo(PictImage *curr PictImage *B_image PictImage *prev
PictImage *pr int QP int frameskip Bits *bits
Pict *pic PictImage *B_recon PictImage *recon)
{
unsigned char *prev_ipol*pi_edge=NULL*pi*orig_lum;
PictImage *prev_recon=NULL *pr_edge=NULL;
MotionVector *MV[6][MBR+1][MBC+2];
MotionVector ZERO = {00000};
MB_Structure *recon_data_P;
MB_Structure *recon_data_B=NULL;
MB_Structure *diff;
short int *qcoeff_P;
short int *qcoeff_B=NULL;
int ModeB;
int CBP CBPB=0;
int bquant[] = {5678};
int QP_B;
int newgob;
int ijk;
/* buffer control vars */
float QP_cumulative = (float)0.0;
int abs_mb_num = 0 QuantChangePostponed = 0;
int QP_new QP_prev dquant QP_xmitted=QP;
ZeroBits(bits);
/* interpolate image */
pi = InterpolateImage_MY(pr->lumpelslines);
prev_ipol = pi;
prev_recon = pr;
orig_lum = prev->lum;
/* mark PMV‘s outside the frame */
for (i = 1; i < (pels>>4)+1; i++)
{
for (k = 0; k < 6; k++)
{
MV[k][0][i] = (MotionVector *)malloc(sizeof(MotionVector));
MarkVec(MV[k][0][i]);
}
MV[0][0][i]->Mode = MODE_INTRA;
}
/* zero out PMV‘s outside the frame */
for (i = 0; i < (lines>>4)+1; i++)
{
for (k = 0; k < 6; k++)
{
MV[k][i][0] = (MotionVector *)malloc(sizeof(MotionVector));
ZeroVec(MV[k][i][0]);
MV[k][i][(pels>>4)+1] = (MotionVector *)malloc(sizeof(MotionVector));
ZeroVec(MV[k][i][(pels>>4)+1]);
}
MV[0][i][0]->Mode = MODE_INTRA;
MV[0][i][(pels>>4)+1]->Mode = MODE_INTRA;
}
MotionEstimatePicture(curr->lumprev_recon->lumprev_ipolpic->seek_distMV pic->use_gobsync);
#ifndef OFFLINE_RATE_CONTROL
if (pic->bit_rate != 0)
{
/* Initialization routine for Rate Control */
QP_new = InitializeQuantizer(PCT_INTER (float)pic->bit_rate
(pic->PB ? pic->target_frame_rate/2 : pic->target_frame_rate)
pic->QP_mean);
QP_xmitted = QP_prev = QP_new;
}
else
{
QP_new = QP_xmitted = QP_prev = QP; /* Copy the passed value of QP */
}
#else
QP_new = QP_xmitted = QP_prev = QP; /* Copy the passed value of QP */
#endif
dquant = 0;
for ( j = 0; j < lines/MB_SIZE; j++)
{
#ifndef OFFLINE_RATE_CONTROL
if (pic->bit_rate != 0)
{
/* QP updated at the beginning of each row */
AddBitsPicture(bits);
QP_new = UpdateQuantizer(abs_mb_num pic->QP_mean PCT_INTER
(float)pic->bit_rate pels/MB_SIZE lines/MB_SIZE bits->total);
}
#endif
newgob = 0;
if (j == 0)
{
pic->QUANT = QP_new;
bits->header += CountBitsPicture(pic);
QP_xmitted = QP_prev = QP_new;
}
else if (pic->use_gobsync && j%pic->use_gobsync == 0)
{
bits->header += CountBitsSlice(jQP_new); /* insert gob sync */
QP_xmitted = QP_prev = QP_new;
newgob = 1;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 23344 2004-01-08 15:15 Visual C++视频会议开发技术与实例\03\H263编码\coder.c
文件 6125 2003-07-18 09:03 Visual C++视频会议开发技术与实例\03\H263编码\config_e.h
文件 15246 2004-01-08 15:32 Visual C++视频会议开发技术与实例\03\H263编码\countbit.c
文件 42182 2004-01-08 16:46 Visual C++视频会议开发技术与实例\03\H263编码\dct.c
文件 123 2004-01-09 13:00 Visual C++视频会议开发技术与实例\03\H263编码\global_e.h
文件 4646 2004-01-08 15:26 Visual C++视频会议开发技术与实例\03\H263编码\indices_e.h
文件 1747 2004-01-07 17:20 Visual C++视频会议开发技术与实例\03\H263编码\io.c
文件 1916 2003-07-18 09:03 Visual C++视频会议开发技术与实例\03\H263编码\macros.h
文件 30416 2004-02-03 16:26 Visual C++视频会议开发技术与实例\03\H263编码\main.c
文件 129 2004-01-07 17:47 Visual C++视频会议开发技术与实例\03\H263编码\make.bat
文件 12058 2004-02-06 11:04 Visual C++视频会议开发技术与实例\03\H263编码\mot_est.c
文件 24303 2004-01-08 15:15 Visual C++视频会议开发技术与实例\03\H263编码\pred.c
文件 1403 2003-10-27 21:32 Visual C++视频会议开发技术与实例\03\H263编码\putbits.c
文件 1996 2003-10-27 21:33 Visual C++视频会议开发技术与实例\03\H263编码\putvlc.c
文件 1646 2003-07-18 09:03 Visual C++视频会议开发技术与实例\03\H263编码\putvlc.h
文件 3215 2004-01-08 15:15 Visual C++视频会议开发技术与实例\03\H263编码\quant.c
文件 3553 2004-01-07 17:44 Visual C++视频会议开发技术与实例\03\H263编码\ratectrl.c
文件 13280 2003-07-18 09:03 Visual C++视频会议开发技术与实例\03\H263编码\sactbls_e.h
文件 1899 2004-01-08 17:07 Visual C++视频会议开发技术与实例\03\H263编码\sac_e.c
文件 10767 2004-01-08 15:14 Visual C++视频会议开发技术与实例\03\H263编码\sim.h
文件 266 2003-08-19 07:04 Visual C++视频会议开发技术与实例\03\H263编码\TMConfig.h
文件 6136 2003-07-18 09:03 Visual C++视频会议开发技术与实例\03\H263编码\vlc.h
文件 405 2003-06-11 07:10 Visual C++视频会议开发技术与实例\03\H263解码\CONFIG.H
文件 12879 2003-06-11 07:10 Visual C++视频会议开发技术与实例\03\H263解码\Display.c
文件 5118 2003-06-11 07:10 Visual C++视频会议开发技术与实例\03\H263解码\Dither.c
文件 2324 2003-11-26 18:28 Visual C++视频会议开发技术与实例\03\H263解码\GETBITS.C
文件 7769 2003-11-26 14:36 Visual C++视频会议开发技术与实例\03\H263解码\Getblk.c
文件 3596 2003-11-26 20:48 Visual C++视频会议开发技术与实例\03\H263解码\GETHDR.C
文件 26672 2004-01-08 17:50 Visual C++视频会议开发技术与实例\03\H263解码\GETPIC.C
文件 2318 2003-11-26 14:33 Visual C++视频会议开发技术与实例\03\H263解码\GETVLC.C
............此处省略1098个文件信息
- 上一篇:基于MFC的计时器程序
- 下一篇:深入浅出MFC 书+代码+
相关资源
- Microsoft Visual C++ Build Tools
- Visual C++开发GIS系统第2版
- 基于Visual Studio的学生成绩管理系统
- Visual C++ 2008程序设计完全自学教程精
- Visual C++开发实战1200例(第2卷).(配
- Visual C++ 6.0完整绿色版
- Visual.Assist.X.V10.9.2331.0原版安装文件以
- Visual C#.NET串口通信及测控应用典型
- 数字图像处理与机器视觉 visual C++与
- visual assist x (支持vs2017)插件及破解
- Visual C++角色扮演游戏程序设计电子书
- Visual C++ 2015 Redistributable Packages.(x6
- Visual C++ for Linux Development
- Visual_C++_MATLAB图像处理与识别实用案例
- Microsoft Visual C++ 2017 Redistributable (x
- Microsoft Visual C++ 2017 Redistributable (x
- Visual C++/MATLAB图像处理与识别实用案例
- 计算机图形学基础教程Visual C++版 孔令
- Visual C++ 用户界面制作与应用 pdf VC
- Visual C++从入门到精通(第3版) 高清
- vb关于api编程的pdf电子书《Visual basi
- Visual C++视频会议开发技术与源码.ra
- Visual C++范例大全 400+的
- 《Visual C++网络编程开发与实战》案例
- Visual C++网络编程开发与实战 案例源码
- Visual C++ MFC棋牌类游戏编程五子棋,象
- 精通Visual C++图像处理编程(PDF & 源代
- 《Visual C++ 6.0 用户界面制作技术与应
- visual c++串口通信技术详解
- 计算机图形学原理及算法教程(Visu
评论
共有 条评论