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

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

?? ddgrab.h

?? 在matlab環境下講視頻文件讀入
?? H
字號:
/***************************************************
This is the header file for the Grabber code.  Include this
in your files.

This code was intended to be used inside of a matlab interface,
but can be used as a generic grabber class for anyone who needs
one.

Written by Micah Richert.
07/14/2005
**************************************************/

#include "atlbase.h"
#include "dshow.h"
#include "qedit.h"
#include <assert.h>

#ifdef REMOVEMSDLL
	class intListEntry
	{
		public:
		int data;
		intListEntry* next;

		intListEntry()
		{
			next = NULL;
			data = 0;
		};

		intListEntry(int thisData, intListEntry* parent)
		{
			data = thisData;
			next = NULL;
			if (parent)
			{
				while (parent->next)
				{
					parent = parent->next;
				}
				parent->next = this;
			}
		};

		int size()
		{
			intListEntry* entry = this;
			int count = 0;
			while(entry->next)
			{
				count++;
				entry = entry->next;
			}
			return count;
		};

		int at(int index)
		{
			intListEntry* entry = this;
			int count = 0;
			while(entry->next)
			{
				count++;
				entry = entry->next;
				if (index+1 == count)
				{
					return entry->data;
				}
			}
			return 0;
		};
	};
#else
	#include <vector>
	using namespace std;
#endif

// since the Audio and Video CB vectors are public we need to make the CB interface public too
class CSampleGrabberCB : public ISampleGrabberCB
{
public:
	CSampleGrabberCB();
	virtual ~CSampleGrabberCB();

#ifdef REMOVEMSDLL
	intListEntry* frames;
	intListEntry* frameBytes;
	intListEntry* frameNrs;
#else
	vector<BYTE*>* frames;
	vector<int>* frameBytes;
	vector<int>* frameNrs;
#endif

	// use this to get data format information, ie. bit depth, sampling rate...
	BYTE *pbFormat;

	unsigned int frameNr;
	bool disabled;
	bool done;

	int bytesPerWORD;
	int rate;
	double startTime, stopTime;
//	double time;

	// Fake out any COM ref counting
	//
	STDMETHODIMP_(ULONG) AddRef() { return 2; }
	STDMETHODIMP_(ULONG) Release() { return 1; }

	// Fake out any COM QI'ing
	//
	STDMETHODIMP QueryInterface(REFIID riid, void ** ppv);

	// We don't implement this one
	//
	STDMETHODIMP SampleCB( double SampleTime, IMediaSample * pSample ){ return 0; }

	// The sample grabber is calling us back on its deliver thread.
	// This is NOT the main app thread!
	//
	STDMETHODIMP BufferCB( double dblSampleTime, BYTE * pBuffer, long lBufferSize );
};

// this is the main grabber class.  I think the interfaces and names are fairly self explanatory
class DDGrabber
{
public:
#ifdef REMOVEMSDLL
	intListEntry* VideoCBs;
	intListEntry* AudioCBs;
#else
	vector<CSampleGrabberCB*>* VideoCBs;
	vector<CSampleGrabberCB*>* AudioCBs;
#endif
	DDGrabber();

	HRESULT buildGraph(char* filename);
	HRESULT doCapture();
	HRESULT getVideoInfo(unsigned int id, int* width, int* height, int* rate, int* nrFramesCaptured, int* nrFramesTotal);
	HRESULT getAudioInfo(unsigned int id, int* nrChannels, int* rate, int* bits, int* nrFramesCaptured, int* nrFramesTotal);
	void getCaptureInfo(int* nrVideo, int* nrAudio);
	// data must be freed by caller
	HRESULT getVideoFrame(unsigned int id, int frameNr, char** data, int* nrBytes);
	// data must be freed by caller
	HRESULT getAudioFrame(unsigned int id, int frameNr, char** data, int* nrBytes);
	void setFrames(int* frameNrs, int nrFrames);
	void setTime(double startTime, double stopTime);
	void disableVideo();
	void disableAudio();
	void cleanUp(); // must be called at the end, in order to render anything afterward.
private:
	CComPtr<IGraphBuilder> pGraphBuilder;
	bool stopForced;

	void MyFreeMediaType(AM_MEDIA_TYPE& mt);
	PIN_INFO getPinInfo(IPin* pin);
	IPin* getInputPin(IBaseFilter* filt);
	IPin* getOutputPin(IBaseFilter* filt);
	bool isRenderer(IBaseFilter* filt);
	IPin* connectedToInput(IBaseFilter* filt);
	GUID getMajorType(IBaseFilter* filt);
	HRESULT insertCapture(IGraphBuilder* pGraphBuilder, IBaseFilter* pRenderer, AM_MEDIA_TYPE* mt, CSampleGrabberCB** grabberCB);
	HRESULT insertVideoCapture(IGraphBuilder* pGraphBuilder, IBaseFilter* pRenderer);
	HRESULT insertAudioCapture(IGraphBuilder* pGraphBuilder, IBaseFilter* pRenderer);
	HRESULT changeToNull(IGraphBuilder* pGraphBuilder, IBaseFilter* pRenderer);
	HRESULT mangleGraph(IGraphBuilder* pGraphBuilder);
};

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内精品视频666| 紧缚奴在线一区二区三区| 久久亚洲综合色一区二区三区 | 日韩三级免费观看| 在线播放/欧美激情| 6080国产精品一区二区| 制服丝袜亚洲精品中文字幕| 欧美日韩久久不卡| 日韩亚洲电影在线| 日韩视频在线观看一区二区| 日韩精品中文字幕在线不卡尤物 | 日韩欧美在线不卡| 日韩精品一区二区在线观看| 日韩一级大片在线观看| 久久色成人在线| 国产精品网站在线播放| 亚洲精品视频在线观看网站| 亚洲一区在线免费观看| 视频一区欧美精品| 精品一区二区免费视频| 国产aⅴ精品一区二区三区色成熟| 成人免费视频caoporn| 色老头久久综合| 欧美一区二视频| 欧美国产日韩a欧美在线观看 | 成人三级伦理片| 欧美午夜一区二区三区| 日韩美女一区二区三区四区| 中文字幕成人在线观看| 亚洲一级不卡视频| 国模无码大尺度一区二区三区| 成人免费高清视频在线观看| 在线观看亚洲精品| 精品日韩一区二区三区| 亚洲欧美日韩国产中文在线| 奇米四色…亚洲| 99re热这里只有精品免费视频 | 蜜臀av一区二区| 成人爱爱电影网址| 欧美一区二区三区在线| 亚洲图片另类小说| 久久99国产精品免费网站| 色哟哟亚洲精品| 久久亚洲二区三区| 婷婷中文字幕一区三区| 国产精品性做久久久久久| 欧美视频一区二区在线观看| 久久久久国产精品人| 亚州成人在线电影| 99久久国产综合精品色伊| 精品三级av在线| 亚洲一区在线观看免费| 成人av网址在线| 精品久久国产字幕高潮| 亚洲6080在线| 色婷婷综合久色| 国产精品久久久久久久久免费桃花 | 激情五月激情综合网| 日本黄色一区二区| 中文字幕av一区二区三区高| 老色鬼精品视频在线观看播放| 91激情五月电影| 自拍偷拍亚洲综合| 成人高清在线视频| 欧美国产日韩a欧美在线观看| 蜜桃久久久久久久| 日韩欧美一区二区在线视频| 亚洲福利一二三区| 欧美午夜精品一区二区三区| 亚洲精品网站在线观看| 色综合天天在线| 亚洲精品乱码久久久久| 97久久超碰精品国产| 中文字幕在线观看不卡| 不卡电影一区二区三区| 国产精品乱子久久久久| 成人国产精品免费观看动漫 | aaa亚洲精品一二三区| 日本一区二区三区四区| 丁香婷婷综合色啪| 国产精品二区一区二区aⅴ污介绍| 国产自产视频一区二区三区| 精品福利一二区| 国产 欧美在线| 成人欧美一区二区三区黑人麻豆 | 国产精品福利一区| 97久久精品人人做人人爽| 国产精品国产三级国产普通话蜜臀 | 一区二区三区在线观看动漫| 欧美在线影院一区二区| 亚洲成人av一区二区| 69堂国产成人免费视频| 韩国成人精品a∨在线观看| 国产欧美一区二区精品婷婷 | 美女免费视频一区| 久久久无码精品亚洲日韩按摩| 国产一区二区精品在线观看| 国产精品久久久久久久久免费丝袜| 99re6这里只有精品视频在线观看| 亚洲同性gay激情无套| 欧美日韩一区二区三区不卡| 麻豆视频观看网址久久| 欧美国产日本视频| 欧美人与禽zozo性伦| 久久99热狠狠色一区二区| 国产精品午夜电影| 欧美精品久久99久久在免费线| 另类小说色综合网站| 国产精品热久久久久夜色精品三区| 91一区二区三区在线观看| 天堂久久一区二区三区| 久久久亚洲精品石原莉奈| 91麻豆成人久久精品二区三区| 日韩国产高清影视| 国产精品激情偷乱一区二区∴| 欧美视频一区二区三区四区 | 色综合色综合色综合| 久久国产麻豆精品| 亚洲欧美精品午睡沙发| 欧美第一区第二区| 欧美在线视频你懂得| 国产成人综合自拍| 视频一区视频二区中文字幕| 国产精品国产a级| 久久亚洲二区三区| 欧美高清性hdvideosex| 91丨九色丨蝌蚪丨老版| 国产老肥熟一区二区三区| 日韩二区三区在线观看| 一区二区三区四区高清精品免费观看| 精品国产3级a| 欧美一区午夜视频在线观看| 日本丶国产丶欧美色综合| 国产福利电影一区二区三区| 日韩国产一二三区| 亚洲第一电影网| 亚洲免费资源在线播放| 中日韩av电影| 久久久久国产免费免费| 欧美成人福利视频| 欧美精品少妇一区二区三区| 91美女片黄在线观看| 成人美女视频在线观看18| 韩国精品一区二区| 国模套图日韩精品一区二区 | 韩国中文字幕2020精品| 日韩av一区二| 视频在线在亚洲| 亚洲va在线va天堂| 午夜私人影院久久久久| 一级精品视频在线观看宜春院| 中文字幕在线观看不卡| 国产片一区二区三区| 国产亚洲一本大道中文在线| 久久亚洲一区二区三区明星换脸 | 成人综合在线观看| 高清国产一区二区| 国产98色在线|日韩| 成人永久aaa| 成人aa视频在线观看| 99久久精品国产一区| 91在线视频网址| 欧洲精品在线观看| 欧美高清dvd| 精品欧美一区二区久久| 久久综合色之久久综合| 国产精品美女一区二区在线观看| 中文字幕av一区 二区| 国产精品成人网| 亚洲国产乱码最新视频| 免费在线观看一区| 国产精品一区二区三区四区| 成人动漫一区二区| 欧美系列一区二区| 26uuu另类欧美亚洲曰本| 国产色产综合产在线视频| 亚洲视频在线一区二区| 天天av天天翘天天综合网| 国产原创一区二区| 色综合久久久久综合体| 91精品久久久久久久久99蜜臂| 久久婷婷国产综合精品青草| 亚洲图片另类小说| 蜜臀av一级做a爰片久久| 国产成人h网站| 欧美日韩大陆一区二区| 久久婷婷成人综合色| 一区二区三区 在线观看视频| 蜜桃视频在线观看一区| 9人人澡人人爽人人精品| 欧美理论片在线| 国产精品国产三级国产aⅴ中文| 五月婷婷激情综合| 暴力调教一区二区三区| 91精品国产综合久久婷婷香蕉| 国产亚洲精品福利| 日韩成人一级大片| 一本大道综合伊人精品热热| 欧美va亚洲va国产综合| 亚洲成人av电影在线|