青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

socketref,再見!高德

https://github.com/adoggie

  C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
  246 Posts :: 4 Stories :: 312 Comments :: 0 Trackbacks

常用鏈接

留言簿(54)

我參與的團(tuán)隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

利用windows capture Api捕獲的視頻流是RGB數(shù)據(jù)
 1 
 2 /*
 3 
 4     capture.h
 5     caputre用戶捕獲pc camera的 RGB視頻源
 6     做到capture,encoder,mgr 獨立,不會有依賴性,以便之后的復(fù)用
 7 */
 8 
 9 #ifndef _DESKCAM_CAPTURE_H
10 #define _DESKCAM_CAPTURE_H
11 
12 
13 #include <windows.h>
14 #include "vfw.h"
15 #pragma comment(lib, "winmm.lib")
16 #pragma comment(lib, "vfw32.lib")
17 #include <nv.h>
18 
19 
20 struct CaptureInfo{
21     NVString        sid;
22     unsigned int    index;    //
23     unsigned int    type;    //類別
24     unsigned short    width;
25     unsigned short  height;    
26     void (*after_capture)(void * data,unsigned int size,void * user);
27     void * user;
28 };
29 
30 class  PCDeskCamera:public NVObject{
31 public:
32     PCDeskCamera(){ _bmpInfo = NULL;}
33     ~PCDeskCamera(){    if(_bmpInfo)    {delete _bmpInfo;_bmpInfo=NULL;} }
34 
35     bool                Open();
36     void                Close();
37     CaptureInfo&        GetCaptureInfo(){    return _ctx;}
38 private:    
39     static LRESULT    CALLBACK    StreamCapture(HWND hwnd,LPVIDEOHDR hdr);
40     bool                GetBitmapInfo(HWND cap);
41     HWND                _hwnd;
42     CaptureInfo            _ctx;
43     HWND                _capture_wnd;
44     LPBITMAPINFO        _bmpInfo;        
45 };
46 #endif
47 
 1 
 2 #include "capture.h"
 3 
 4 /*
 5 視頻捕獲,必須提供消息處理機制:    
 6 while(GetMessage()){
 7     TranslateMessage();
 8     DispatchMessage();
 9 }
10 而且回調(diào)函數(shù)必須聲明為 static LRESULT    CALLBACK,否則產(chǎn)生異常
11 */
12 
13 LRESULT PCDeskCamera::StreamCapture(HWND hwnd,LPVIDEOHDR hdr){
14     PCDeskCamera * cam;    
15     //int i;
16     //i=100;
17 //    MessageBeep(100);
18 //    return 0;
19     
20     cam = (PCDeskCamera*)GetWindowLong(hwnd,GWL_USERDATA);
21     if( cam== NULL){        
22         return 0;
23     }    
24     //--     
25     cam->GetCaptureInfo().after_capture(hdr->lpData,hdr->dwBytesUsed,
26         cam->GetCaptureInfo().user);
27     return 1;
28 }
29  
30 
31 bool PCDeskCamera::GetBitmapInfo(HWND cap){
32     int vfs=capGetVideoFormatSize(cap);    
33     if(!vfs)        return false;    
34     if(_bmpInfo)    {delete _bmpInfo;_bmpInfo=NULL;}
35     _bmpInfo =(BITMAPINFO*)( new char[vfs]);    
36     LPBITMAPINFOHEADER bmpIH=( LPBITMAPINFOHEADER )_bmpInfo;    
37     bmpIH->biSize= sizeof(BITMAPINFOHEADER);
38     BOOL ret=capGetVideoFormat(cap, _bmpInfo, (WORD)vfs);    
39     _ctx.width = bmpIH->biWidth;
40     _ctx.height = bmpIH->biHeight;
41     return true;
42 }
43 
44 bool PCDeskCamera::Open(){
45     int ret;
46     CAPTUREPARMS cpp;        
47     _capture_wnd = capCreateCaptureWindow("AviCap_Basic1", WS_CHILD|WS_VISIBLE, 
48         00200,200,
49         GetDesktopWindow(),
50         0xff00);    
51     if(_capture_wnd == NULL){
52         return false;
53     }
54     SetWindowLong(_capture_wnd,GWL_USERDATA,(LONG)this);
55     capPreviewRate(_capture_wnd,50);
56     ret =capDriverConnect(_capture_wnd, _ctx.index);
57     if( ret == FALSE){
58         return false;
59     }
60 
61     if(!GetBitmapInfo(_capture_wnd))    {
62         return false;
63     }    
64     ret = capSetCallbackOnVideoStream(_capture_wnd,PCDeskCamera::StreamCapture);
65     capCaptureGetSetup(_capture_wnd, &cpp, sizeof(CAPTUREPARMS));
66        cpp.fYield = true ;
67     cpp.fAbortLeftMouse = false;
68     cpp.fAbortRightMouse = false;
69     cpp.fCaptureAudio = false;
70     ret = capCaptureSetSetup (_capture_wnd, &cpp, sizeof(CAPTUREPARMS));
71     capCaptureSequenceNoFile(_capture_wnd);
72     //capCaptureSequence(_capture_wnd);
73     ShowWindow(_capture_wnd,SW_HIDE);    
74 
75 
76     return true;
77 }
78 
79 void PCDeskCamera::Close(){
80 //    capCaptureAbort(_capture_wnd);    
81     capSetCallbackOnVideoStream(0 ,NULL);
82     capDriverDisconnect(_capture_wnd);    
83     capCaptureStop(_capture_wnd);
84     SetWindowLong(_capture_wnd,GWL_USERDATA,(LONG)NULL);
85     ::CloseWindow(_capture_wnd);
86     DestroyWindow(_capture_wnd);    
87 }
88 
89 
90 
posted on 2006-03-02 00:36 放屁阿狗 閱讀(1234) 評論(0)  編輯 收藏 引用 所屬分類: 視頻監(jiān)控
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品一区二区在线观看网站| 欧美一区二区三区日韩| 欧美极品影院| 欧美国产欧美亚洲国产日韩mv天天看完整 | 99精品国产高清一区二区| 亚洲黄色av一区| 亚洲国产精品尤物yw在线观看| 欧美成人一区二区三区片免费| 亚洲成色777777女色窝| 亚洲欧洲另类国产综合| 国产精品一二三视频| 久久精品国产免费看久久精品| 欧美日韩免费高清| 欧美影院一区| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美激情无毛| 国产精品视频在线观看| 在线观看精品一区| av成人免费观看| 久久精品视频在线看| 免费不卡中文字幕视频| 亚洲精品视频在线观看网站| 亚洲免费影视第一页| 美日韩精品免费| 国产精品入口麻豆原神| 91久久久久| 午夜精品久久久久久久男人的天堂 | 欧美日韩国产成人在线| 国产一区二区剧情av在线| 免费欧美网站| 国产精品国内视频| 亚洲国产成人在线| 亚洲欧美欧美一区二区三区| 免费日韩成人| 亚洲综合色丁香婷婷六月图片| 久久亚洲欧洲| 国产欧美一区在线| 99国产精品久久久久老师| 久久野战av| 亚洲天堂av在线免费| 久久综合网色—综合色88| 亚洲激情欧美激情| 欧美一区二区三区久久精品 | 老色鬼久久亚洲一区二区| 亚洲日韩视频| 美国十次成人| 在线观看一区视频| 久久久综合精品| 欧美一级在线亚洲天堂| 欧美视频三区在线播放| 亚洲精品欧美日韩专区| 免费成人av在线看| 欧美诱惑福利视频| 噜噜噜噜噜久久久久久91| 91久久久久久久久| 亚洲图片在区色| 欧美 亚欧 日韩视频在线| 亚洲一区二区三区高清| 欧美日本韩国一区二区三区| 亚洲韩日在线| 欧美激情精品久久久久久黑人| 久久久久国产精品www| 国内揄拍国内精品久久| 久久久噜噜噜久久中文字幕色伊伊 | 久久亚洲电影| 欧美一区在线看| 国产一区二区成人| 亚洲高清色综合| 欧美激情bt| 国产欧美日韩精品一区| 国产精品久久久久久久免费软件| 亚洲精品美女在线观看| 亚洲高清自拍| 欧美精品在线观看播放| 亚洲伦理精品| 国产精品成人免费视频 | 国产精品女同互慰在线看| 亚洲视频一二| 亚洲一区影院| 激情综合中文娱乐网| 欧美成黄导航| 午夜在线观看免费一区| 在线一区二区视频| 在线午夜精品| 亚洲视频免费观看| 国产亚洲毛片在线| 免费不卡在线观看av| 欧美激情精品久久久久久久变态| 99视频精品在线| 亚洲欧美国产日韩天堂区| 黄色成人91| 亚洲免费观看在线观看| 国产日韩欧美在线视频观看| 男女精品视频| 欧美三区免费完整视频在线观看| 欧美在线高清| 欧美精品三级日韩久久| 久久高清一区| 欧美日本一区二区三区| 欧美资源在线| 欧美另类在线观看| 亚洲午夜伦理| 国产一区二区三区免费不卡 | 国产精品高清免费在线观看| 欧美在线高清视频| 欧美gay视频| 欧美一区二区三区免费观看| 你懂的成人av| 久久久久久久久久久一区| 欧美国产精品va在线观看| 欧美自拍偷拍| 国产精品99免费看| 亚洲福利视频一区| 国产视频在线观看一区二区三区| 亚洲区国产区| 亚洲片在线观看| 久久久精品一区二区三区| 亚洲欧美不卡| 欧美日韩视频第一区| 亚洲第一久久影院| 娇妻被交换粗又大又硬视频欧美| 一区二区三区精密机械公司| 日韩手机在线导航| 久久夜色精品国产亚洲aⅴ| 性欧美大战久久久久久久久| 欧美日韩一区二区三区在线观看免| 欧美a级片网站| 精品动漫3d一区二区三区| 先锋影音网一区二区| 性久久久久久久久| 国产精品99免费看| 亚洲天天影视| 亚洲国产精品一区二区www在线| 久久综合中文| 国产美女精品一区二区三区| 亚洲色在线视频| 亚洲视频欧美视频| 欧美日韩三级| 一区二区三区国产精品| 亚洲一区二区视频在线观看| 欧美二区在线播放| 亚洲高清在线观看一区| 亚洲日韩第九十九页| 欧美成人精品影院| 亚洲经典一区| 一区二区欧美视频| 欧美午夜大胆人体| 亚洲午夜免费视频| 久久www成人_看片免费不卡| 国产九九精品视频| 久久se精品一区二区| 免费观看久久久4p| 亚洲精品日韩在线| 欧美日韩亚洲天堂| 亚洲欧美日韩中文播放| 久久深夜福利| 日韩视频二区| 国产精品视频免费在线观看| 欧美一级久久久| 女女同性女同一区二区三区91| 亚洲国产精品一区在线观看不卡| 欧美多人爱爱视频网站| 亚洲视频在线视频| 久久精品中文字幕一区二区三区| 亚洲国产成人在线播放| 欧美日韩亚洲不卡| 欧美一区二区三区视频免费| 欧美高潮视频| 亚洲欧美在线x视频| 伊人久久av导航| 欧美日韩亚洲天堂| 久久高清国产| 妖精成人www高清在线观看| 久久国产成人| 99v久久综合狠狠综合久久| 国产精品无码专区在线观看| 久久综合影音| 亚洲视频在线一区| 欧美搞黄网站| 欧美影院视频| 一区二区三区日韩欧美| 好吊视频一区二区三区四区| 欧美精品一区二区视频| 久久精品亚洲一区二区| 一区二区国产在线观看| 欧美黄在线观看| 久久久久久自在自线| 亚洲砖区区免费| 99国产精品久久久久久久久久 | 久久夜色精品| 亚洲欧美在线aaa| 亚洲精品一二三| 欧美11—12娇小xxxx| 欧美一区二区日韩一区二区| 日韩一级在线| 亚洲国产欧美久久| 一色屋精品视频在线看| 国产亚洲在线| 国产欧美视频一区二区三区| 欧美亚韩一区|