亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? distributiondlg.cpp

?? < VC++視頻音頻開發(fā)>> 這本書的源碼
?? CPP
字號:
// DistributionDlg.cpp : implementation file
//

#include "stdafx.h"
#include "XvidQuantsParser.h"
#include "DistributionDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDistributionDlg dialog


CDistributionDlg::CDistributionDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDistributionDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDistributionDlg)
	m_icount = 0;
	m_pcount = 0;
	m_pavg = 0.0f;
	m_iavg = 0.0f;
	m_imaxfs = 0;
	m_iminfs = 0;
	m_pmaxfs = 0;
	m_pminfs = 0;
	//}}AFX_DATA_INIT

	qarray = NULL;
}

void CDistributionDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDistributionDlg)
	DDX_Control(pDX, IDC_LIST_PFRAMES, m_listp);
	DDX_Control(pDX, IDC_LIST_IFRAMES, m_listi);
	DDX_Text(pDX, IDC_EDIT_ICOUNT, m_icount);
	DDX_Text(pDX, IDC_EDIT_PCOUNT, m_pcount);
	DDX_Text(pDX, IDC_EDIT_PAVG, m_pavg);
	DDX_Text(pDX, IDC_EDIT_IAVG, m_iavg);
	DDX_Control(pDX, IDC_GRAPH_G, m_graphg);
	DDX_Control(pDX, IDC_GRAPH_I, m_graphi);
	DDX_Control(pDX, IDC_GRAPH_P, m_graphp);
	DDX_Text(pDX, IDC_EDIT_IMAXFS, m_imaxfs);
	DDX_Text(pDX, IDC_EDIT_IMINFS, m_iminfs);
	DDX_Text(pDX, IDC_EDIT_PMAXFS, m_pmaxfs);
	DDX_Text(pDX, IDC_EDIT_PMINFS, m_pminfs);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDistributionDlg, CDialog)
	//{{AFX_MSG_MAP(CDistributionDlg)
	ON_BN_CLICKED(IDC_BUTTON_DRAW, OnButtonDraw)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDistributionDlg message handlers

void CDistributionDlg::Init(CXvid &xvid, CXvid::QUANTS *quants, int nframes)
{
	nelem	= nframes;
	qarray	= quants;

	pavg	= xvid.GetPAvgQuants();
	pmaxfs	= xvid.GetPMaxFrameSize();
	pminfs	= xvid.GetPMinFrameSize();

	iavg	= xvid.GetIAvgQuants();
	imaxfs	= xvid.GetIMaxFrameSize();
	iminfs	= xvid.GetIMinFrameSize();
}

//-----------------------------------------------------------------------------------
void CDistributionDlg::ParsePFrames(void)
{
	char index[3], percent[6], fcount[8];
	pcount=0;

	//初始化
	for (int i=0; i<31; i++)
	{
		phisto[i] = 0;
	}

	//分析
	for (int j=0; j<nelem; j++)
	{
		if (!qarray[j].isIFrame)
		{
			phisto[qarray[j].qvalue-2] += 1;
			pcount++;
		}
	}

	//輸出到P幀的list控件
	for (int k=0; k<31; k++)
	{
		sprintf(index,   "%dx",  k+2);
		sprintf(percent, "%.3f", (float)(phisto[k]*100)/(float)pcount);
		sprintf(fcount,  "%d",   phisto[k]);

		m_listp.InsertItem (k, index);						//Quants 索引
		m_listp.SetItemText(k, 1, percent);					//百分比
		m_listp.SetItemText(k, 2, fcount);					//百分比
	}

	m_pcount	= pcount;
	m_pavg		= pavg;
	m_pmaxfs	= pmaxfs;
	m_pminfs	= pminfs;

	UpdateData(FALSE);
}

//-----------------------------------------------------------------------------------
void CDistributionDlg::ParseIFrames(void)
{
	char index[3], percent[6], fcount[8];
	icount=0;

	//初始化
	for (int i=0; i<31; i++)
	{
		ihisto[i] = 0;
	}

	//分析
	for (int j=0; j<nelem; j++)
	{
		if (qarray[j].isIFrame)
		{
			ihisto[qarray[j].qvalue-2] += 1;
			icount++;
		}
	}

	//輸出到list控件中
	for (int k=0; k<31; k++)
	{
		sprintf(index,   "%dx",  k+2);
		sprintf(percent, "%.3f", (float)(ihisto[k]*100)/(float)icount);
		sprintf(fcount,  "%d",   ihisto[k]);

		m_listi.InsertItem (k, index);						//Quants 索引
		m_listi.SetItemText(k, 1, percent);					//百分比
		m_listi.SetItemText(k, 2, fcount);					//百分比
	}

	m_icount	= icount;
	m_iavg		= iavg;
	m_imaxfs	= imaxfs;
	m_iminfs	= iminfs;

	UpdateData(FALSE);
}
//-----------------------------------------------------------------------------------

BOOL CDistributionDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	
	//P-Frames listview
	m_listp.InsertColumn(0, "Quant",LVCFMT_CENTER, 45);
	m_listp.InsertColumn(1, "%",	LVCFMT_CENTER, 70);
	m_listp.InsertColumn(2, "Count",LVCFMT_LEFT,   75);

	//I-Frames listview
	m_listi.InsertColumn(0, "Quant",LVCFMT_CENTER, 45);
	m_listi.InsertColumn(1, "%",	LVCFMT_CENTER, 70);
	m_listi.InsertColumn(2, "Count",LVCFMT_LEFT,   75);

	ParsePFrames();
	ParseIFrames();

	ScaleHistograms();

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

//-----------------------------------------------------------------------------------
void CDistributionDlg::ScaleHistograms(void)
{
	m_graphg.SetForeColor(RGB(200,0,0));
	m_graphg.SetLineWidth(3);
	m_graphg.SetScale(0, 0, 32, 110);

	m_graphp.SetForeColor(RGB(0,200,0));
	m_graphp.SetLineWidth(3);
	m_graphp.SetScale(0, 0, 32, 110);

	m_graphi.SetForeColor(RGB(0,0,200));
	m_graphi.SetLineWidth(3);
	m_graphi.SetScale(0, 0, 32, 110);
}

//-----------------------------------------------------------------------------------
void CDistributionDlg::DrawHistograms(void)
{
	int i;

	//Fill global histogram...
	for (i=0; i<31; i++)
	{
		ghisto[i] = phisto[i] + ihisto[i];
	}

	//global
	for (i=0; i<31; i++)
	{
		if (ghisto[i] > 0)
			m_graphg.DrawLine(i+1, 1, i+1, ((ghisto[i]*100)/(pcount+icount))+2);
	}

	//p-frames
	for (i=0; i<31; i++)
	{
		if (phisto[i] > 0)
			m_graphp.DrawLine(i+1, 1, i+1, ((phisto[i]*100)/pcount)+2);
	}

	//i-frames
	for (i=0; i<31; i++)
	{
		if (ihisto[i] > 0)
			m_graphi.DrawLine(i+1, 1, i+1, ((ihisto[i]*100)/icount)+2);
	}
}

//-----------------------------------------------------------------------------------
void CDistributionDlg::OnButtonDraw() 
{
	DrawHistograms();	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99这里只有精品| 国产精品自拍网站| 亚洲欧洲日产国产综合网| 欧美一级二级三级蜜桃| 欧美日韩二区三区| 欧美久久一二三四区| 在线观看欧美日本| 欧美日韩第一区日日骚| 69精品人人人人| 日韩精品资源二区在线| 精品国产一区二区三区四区四 | av毛片久久久久**hd| 高清不卡一二三区| 99天天综合性| 99久久精品费精品国产一区二区| 国产成a人亚洲精品| 99综合影院在线| 欧美日韩在线播| 日韩午夜激情av| 久久精品一区二区三区四区| 国产欧美日韩在线| 亚洲欧美一区二区三区极速播放| 亚洲午夜影视影院在线观看| 亚洲国产精品自拍| 久久99精品国产麻豆婷婷| 国产呦萝稀缺另类资源| 99精品国产视频| 欧美日韩不卡在线| 久久精品男人的天堂| 成人欧美一区二区三区| 日韩影院精彩在线| 国产乱对白刺激视频不卡 | 国产午夜精品久久久久久久| 国产精品午夜在线观看| 亚洲一区在线观看免费观看电影高清| 日韩av电影免费观看高清完整版| 国产在线看一区| 一本大道久久a久久精品综合| 7777精品伊人久久久大香线蕉最新版| 欧美精品一区二区三区在线| 亚洲人成网站影音先锋播放| 免费观看成人鲁鲁鲁鲁鲁视频| 成人免费高清在线观看| 欧美精品丝袜中出| 国产精品久久久久久久久久久免费看| 午夜精品福利久久久| 色一区在线观看| 日韩精品综合一本久道在线视频| **欧美大码日韩| 国产综合久久久久久鬼色| 欧洲一区二区av| 国产精品女人毛片| 狠狠色综合日日| 7777女厕盗摄久久久| 亚洲欧美日本在线| 成人深夜福利app| 精品国产髙清在线看国产毛片| 亚洲一二三级电影| 91麻豆免费视频| 国产片一区二区| 激情文学综合插| 日韩三级在线观看| 日日夜夜免费精品| 欧美性xxxxxxxx| 亚洲精品国久久99热| 成年人午夜久久久| 欧美国产精品一区二区三区| 国内精品免费在线观看| 777午夜精品免费视频| 亚洲成在人线在线播放| 在线视频你懂得一区| 亚洲精品日韩一| 91污片在线观看| 亚洲日本青草视频在线怡红院| 成人午夜视频福利| 国产精品动漫网站| 成人国产精品免费观看视频| 中国色在线观看另类| 成人美女在线观看| 国产精品毛片a∨一区二区三区| 国产高清不卡一区| 欧美国产日韩精品免费观看| 粉嫩蜜臀av国产精品网站| 久久精品一区二区三区不卡牛牛| 国产精品一级在线| 日本一区二区三区久久久久久久久不| 国产99一区视频免费| 国产精品人成在线观看免费| 色综合天天综合网天天狠天天 | 91在线免费播放| 亚洲欧美经典视频| 欧美日韩三级在线| 男人的天堂久久精品| 久久亚洲精精品中文字幕早川悠里| 久久er精品视频| 国产精品网站在线| 色婷婷亚洲婷婷| 青青国产91久久久久久| 2021国产精品久久精品| 不卡的av电影| 午夜精品久久一牛影视| 欧美不卡激情三级在线观看| 国产成人av网站| 亚洲综合视频在线观看| 欧美videos大乳护士334| 成人性生交大合| 午夜精品久久久久久久久| 精品女同一区二区| 91在线一区二区| 日本不卡一二三| 国产精品天干天干在观线| 欧美在线看片a免费观看| 蜜桃视频在线观看一区二区| 亚洲国产精品精华液ab| 欧美午夜不卡视频| 国产99久久久精品| 午夜视频在线观看一区二区| 日本一区二区视频在线| 欧美美女黄视频| youjizz久久| 精品伊人久久久久7777人| 亚洲欧美日韩国产手机在线| 亚洲精品一区二区三区在线观看 | 久久久一区二区| 在线亚洲欧美专区二区| 国内精品久久久久影院一蜜桃| 中文字幕日韩精品一区| 欧美精品一区二区三区一线天视频| 91久久线看在观草草青青| 国产sm精品调教视频网站| 日韩专区欧美专区| 亚洲一二三四区不卡| 国产精品久久免费看| 26uuu亚洲综合色| 欧美日本一道本| 91亚洲精品乱码久久久久久蜜桃 | 欧美高清在线一区二区| 91麻豆精品国产无毒不卡在线观看 | 国产精品电影院| 精品国产乱码久久久久久1区2区 | 亚洲国产精品精华液2区45| 91精品国产综合久久久蜜臀粉嫩| 91片在线免费观看| 夫妻av一区二区| 国产成人精品综合在线观看| 美女久久久精品| 视频一区在线播放| 亚洲国产sm捆绑调教视频| 亚洲另类在线一区| 亚洲免费av网站| 日韩美女久久久| 亚洲欧美一区二区在线观看| 国产精品视频麻豆| 日本一区二区成人在线| 中文字幕的久久| 国产精品的网站| 亚洲色图欧洲色图| 亚洲免费看黄网站| 亚洲狼人国产精品| 亚洲一区二区在线视频| 亚洲高清免费观看 | 久久综合九色综合97婷婷女人 | 国产精品久久免费看| 国产日韩一级二级三级| 欧美国产禁国产网站cc| 中文字幕一区二区三中文字幕| 国产精品久久久久一区二区三区| 国产精品麻豆视频| 亚洲日本va午夜在线电影| 一区二区三区.www| 日韩影视精彩在线| 国产精品一品视频| 97se亚洲国产综合在线| 欧美日韩国产成人在线免费| 欧美一级高清片在线观看| 久久精品一区二区三区四区| 国产精品久久看| 亚洲国产视频网站| 捆绑紧缚一区二区三区视频| 国产精品亚洲综合一区在线观看| jiyouzz国产精品久久| 在线看不卡av| 精品乱人伦一区二区三区| 国产精品久久久久9999吃药| 亚洲日本丝袜连裤袜办公室| 人人精品人人爱| 国产69精品久久久久毛片| 欧美在线免费视屏| 久久久久久久一区| 亚洲国产综合在线| 国产伦精一区二区三区| 色成年激情久久综合| 精品福利av导航| 一区二区三区四区精品在线视频 | 欧美极品xxx| 日韩影院免费视频| av中文字幕亚洲| 国产日产欧美精品一区二区三区| 性感美女久久精品| caoporm超碰国产精品|