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

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

?? video_xvid.cpp

?? MPEG4音頻視頻壓縮編碼(含G.711/ACC/H.261等)
?? CPP
字號:
/* * The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/MPL/ *  * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. *  * The Original Code is MPEG4IP. *  * The Initial Developer of the Original Code is Cisco Systems Inc. * Portions created by Cisco Systems Inc. are * Copyright (C) Cisco Systems Inc. 2000, 2001.  All Rights Reserved. *  * Contributor(s):  *		Dave Mackie		dmackie@cisco.com */#include "mp4live.h"#include "video_xvid.h"CXvidVideoEncoder::CXvidVideoEncoder(CVideoProfile *vp, 				     uint16_t mtu,				     CVideoEncoder *next, 				     bool realTime) :  CVideoEncoder(vp, mtu, next, realTime){	m_xvidHandle = NULL;	m_vopBuffer = NULL;	m_vopBufferLength = 0;}bool CXvidVideoEncoder::Init (void){	XVID_INIT_PARAM xvidInitParams;	memset(&xvidInitParams, 0, sizeof(xvidInitParams));	if (xvid_init(NULL, 0, &xvidInitParams, NULL) != XVID_ERR_OK) {		error_message("Failed to initialize Xvid");		return false;	}	XVID_ENC_PARAM xvidEncParams;	memset(&xvidEncParams, 0, sizeof(xvidEncParams));	xvidEncParams.width = Profile()->m_videoWidth;	xvidEncParams.height = Profile()->m_videoHeight;	if (Profile()->GetIntegerValue(CFG_VIDEO_TIMEBITS) == 0) {	  xvidEncParams.fincr = 1;	  xvidEncParams.fbase = 	    (int)(Profile()->GetFloatValue(CFG_VIDEO_FRAME_RATE) + 0.5);	} else {	  xvidEncParams.fincr = 	    (int)(((double)Profile()->GetIntegerValue(CFG_VIDEO_TIMEBITS)) /		  Profile()->GetFloatValue(CFG_VIDEO_FRAME_RATE));	  xvidEncParams.fbase = 	    Profile()->GetIntegerValue(CFG_VIDEO_TIMEBITS);	}	xvidEncParams.rc_bitrate = 		Profile()->GetIntegerValue(CFG_VIDEO_BIT_RATE) * 1000;	xvidEncParams.min_quantizer = 1;	xvidEncParams.max_quantizer = 31;	xvidEncParams.max_key_interval = (int)		(Profile()->GetFloatValue(CFG_VIDEO_FRAME_RATE) 		 * Profile()->GetFloatValue(CFG_VIDEO_KEY_FRAME_INTERVAL));	if (xvidEncParams.max_key_interval == 0) {		xvidEncParams.max_key_interval = 1;	} 	if (xvid_encore(NULL, XVID_ENC_CREATE, &xvidEncParams, NULL) 	  != XVID_ERR_OK) {		error_message("Failed to initialize Xvid encoder");		return false;	}	m_xvidHandle = xvidEncParams.handle; 	memset(&m_xvidFrame, 0, sizeof(m_xvidFrame));	m_xvidFrame.general = XVID_HALFPEL | XVID_H263QUANT;	if (!m_realTime) {		m_xvidFrame.motion = 			PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 			| PMV_EARLYSTOP8 | PMV_HALFPELDIAMOND8;	} else {		m_xvidFrame.motion = PMV_QUICKSTOP16;	}		if (!m_realTime) {			m_xvidFrame.general |= XVID_INTER4V;		}	m_xvidFrame.colorspace = XVID_CSP_I420;	m_xvidFrame.quant = 0;#ifdef WRITE_RAW	m_raw_file = fopen("raw.xvid", FOPEN_WRITE_BINARY);#endif	return true;}bool CXvidVideoEncoder::EncodeImage(				    const u_int8_t* pY, 				    const u_int8_t* pU, 				    const u_int8_t* pV, 				    u_int32_t yStride,				    u_int32_t uvStride,				    bool wantKeyFrame,				    Duration Elapsed,				    Timestamp srcFrameTimestamp){  m_srcFrameTimestamp = srcFrameTimestamp;	m_vopBuffer = (u_int8_t*)malloc(Profile()->m_videoMaxVopSize);	if (m_vopBuffer == NULL) {		return false;	}	XVID_DEC_PICTURE decpict;	decpict.y = (void *)pY;	decpict.u = (void *)pU;	decpict.v = (void *)pV;	decpict.stride_y = yStride;	decpict.stride_u = uvStride;	m_xvidFrame.image = &decpict;	m_xvidFrame.colorspace = XVID_CSP_USER;	m_xvidFrame.bitstream = m_vopBuffer;	m_xvidFrame.intra = (wantKeyFrame ? 1 : -1);	if (xvid_encore(m_xvidHandle, XVID_ENC_ENCODE, &m_xvidFrame, 	  &m_xvidResult) != XVID_ERR_OK) {		debug_message("Xvid can't encode frame!");		CHECK_AND_FREE(m_vopBuffer);		return false;	}	m_vopBufferLength = m_xvidFrame.length;	return true;}bool CXvidVideoEncoder::GetEncodedImage(	u_int8_t** ppBuffer, u_int32_t* pBufferLength,	Timestamp *dts, Timestamp *pts){  // will have to change this if we do b frames  *dts = *pts = m_srcFrameTimestamp; 	*ppBuffer = m_vopBuffer;	*pBufferLength = m_vopBufferLength;#ifdef WRITE_RAW	if (m_vopBufferLength > 0) {	  fwrite(m_vopBuffer, 1, m_vopBufferLength, m_raw_file);	}#endif	m_vopBuffer = NULL;	m_vopBufferLength = 0;	return *pBufferLength != 0;}bool CXvidVideoEncoder::GetReconstructedImage(	u_int8_t* pY, u_int8_t* pU, u_int8_t* pV){	return false;}void CXvidVideoEncoder::StopEncoder(){  CHECK_AND_FREE(m_vopBuffer);  xvid_encore(m_xvidHandle, XVID_ENC_DESTROY, NULL, NULL);  m_xvidHandle = NULL;#ifdef WRITE_RAW  fclose(m_raw_file);#endif}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
26uuu久久综合| 97久久人人超碰| 亚洲综合另类小说| 国产精品白丝在线| 国产精品乱码妇女bbbb| 中文字幕一区二区日韩精品绯色| 国产亚洲欧美一区在线观看| 国产三级精品视频| 国产婷婷色一区二区三区四区| 欧美电影免费观看高清完整版在线| 日韩欧美激情在线| 中文字幕高清不卡| 亚洲精品成人少妇| 日韩精品视频网站| 国产在线精品国自产拍免费| 成人性生交大片| 色噜噜狠狠色综合欧洲selulu| 欧美三级三级三级爽爽爽| 制服丝袜av成人在线看| 久久网站最新地址| ...av二区三区久久精品| 首页综合国产亚洲丝袜| 国产一区二区精品久久| 91福利视频网站| 日韩女优制服丝袜电影| 中文字幕一区av| 蜜桃久久av一区| 91在线一区二区| 欧美一级国产精品| 国产精品国产三级国产专播品爱网| 亚洲一级不卡视频| 国产精品伊人色| 欧美色涩在线第一页| 2023国产精品视频| 亚洲国产精品嫩草影院| 国内不卡的二区三区中文字幕| 91丝袜国产在线播放| 欧美α欧美αv大片| 亚洲人成网站色在线观看| 精一区二区三区| 精品视频一区二区不卡| 中文字幕在线不卡一区| 久久国产精品99久久久久久老狼| 色综合天天综合在线视频| 精品精品国产高清a毛片牛牛 | 国产三级精品三级在线专区| 亚洲乱码日产精品bd| 精品无码三级在线观看视频| 欧美三级一区二区| 中文字幕av一区 二区| 蜜臀精品一区二区三区在线观看| 欧美伊人精品成人久久综合97| 国产三级一区二区三区| 精品一区在线看| 欧美欧美欧美欧美首页| 亚洲国产一二三| 91在线视频播放地址| 中文字幕免费不卡在线| 国产在线精品一区二区不卡了 | 日日夜夜免费精品视频| 91蜜桃网址入口| 国产欧美视频在线观看| 久草精品在线观看| 欧美不卡在线视频| 日韩电影免费在线| 欧美日韩一区小说| 午夜精品免费在线观看| 欧美性做爰猛烈叫床潮| 亚洲国产美国国产综合一区二区| 99re这里只有精品首页| 中文字幕一区二区三区四区| www.亚洲激情.com| 日韩一区在线免费观看| 91影院在线免费观看| 亚洲日本va在线观看| 色悠悠亚洲一区二区| 亚洲日本免费电影| 欧美日韩在线观看一区二区 | 欧美一区二区三区免费大片 | 日本乱人伦一区| 亚洲一线二线三线视频| 欧美吞精做爰啪啪高潮| 日日夜夜精品视频天天综合网| 欧美精品第一页| 狠狠色丁香婷婷综合久久片| 久久精品亚洲乱码伦伦中文| 成人av资源站| 亚洲女同一区二区| 欧美日韩视频在线观看一区二区三区 | gogo大胆日本视频一区| 亚洲日本va午夜在线影院| 欧美视频在线一区二区三区| 亚洲一区二区三区免费视频| 欧美一区二区黄| 国产精品中文字幕日韩精品 | 色综合天天天天做夜夜夜夜做| 综合久久国产九一剧情麻豆| 在线视频综合导航| 日韩黄色小视频| 国产欧美日本一区视频| 日本韩国视频一区二区| 日韩电影在线一区二区| 国产欧美一区二区三区沐欲| 欧美亚洲国产怡红院影院| 日韩av成人高清| 欧美激情中文不卡| 欧美另类高清zo欧美| 国产福利精品一区| 亚洲精品国产成人久久av盗摄 | 一区二区在线看| 日韩欧美中文字幕一区| 91免费版pro下载短视频| 久久精品国内一区二区三区| 综合精品久久久| 久久嫩草精品久久久久| 欧美在线看片a免费观看| 国产suv一区二区三区88区| 亚洲成va人在线观看| 国产精品午夜在线观看| 日韩丝袜美女视频| 91电影在线观看| 99视频有精品| 国产精品一区二区久久不卡| 午夜精品久久久久久久99樱桃| 亚洲图片激情小说| 久久久久久**毛片大全| 日韩亚洲欧美在线观看| 日本精品免费观看高清观看| 成人国产精品免费网站| 国产一区二区在线观看视频| 日韩影视精彩在线| 亚洲一区二区三区免费视频| 日韩毛片视频在线看| 欧美韩日一区二区三区| 久久免费看少妇高潮| 欧美α欧美αv大片| 欧美一二三区精品| 欧美电影影音先锋| 911精品国产一区二区在线| 在线观看91视频| 色婷婷久久99综合精品jk白丝| 不卡一区二区在线| 懂色av中文字幕一区二区三区| 狠狠色伊人亚洲综合成人| 久久国产精品99久久久久久老狼| 日韩高清中文字幕一区| 日韩高清国产一区在线| 日本女人一区二区三区| 免费xxxx性欧美18vr| 日本免费在线视频不卡一不卡二| 日韩国产欧美在线播放| 卡一卡二国产精品| 精品影院一区二区久久久| 国产在线一区观看| 国产成人午夜片在线观看高清观看| 国产精品乡下勾搭老头1| 国产91精品精华液一区二区三区 | 亚洲一区二区三区四区不卡| 亚洲欧洲精品一区二区三区 | 久久精品人人做| 国产女人18水真多18精品一级做 | 日韩和的一区二区| 免费在线观看成人| 国产一区二区三区蝌蚪| 成人免费不卡视频| 色素色在线综合| 4438x亚洲最大成人网| 日韩欧美一区二区不卡| 久久久国产精华| 亚洲精品国产一区二区精华液 | 亚洲欧美日韩在线不卡| 一级日本不卡的影视| 热久久久久久久| 成人中文字幕合集| 在线观看国产精品网站| 日韩一区二区三| 国产亚洲精品资源在线26u| 亚洲免费av高清| 琪琪久久久久日韩精品| 高清免费成人av| 欧美日韩久久不卡| 亚洲精品一区二区精华| 亚洲人成网站影音先锋播放| 日韩高清国产一区在线| 成人精品视频网站| 欧美日韩国产一区二区三区地区| 精品国产乱码久久久久久图片| 国产精品成人免费在线| 麻豆免费看一区二区三区| 99精品欧美一区二区三区综合在线| 欧美老女人第四色| 国产偷国产偷精品高清尤物| 亚洲宅男天堂在线观看无病毒| 久久99久久精品| 欧美亚洲另类激情小说| 中文无字幕一区二区三区| 日韩精品电影一区亚洲| 色婷婷亚洲一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 日韩电影一区二区三区|