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

socketref,再見!高德

https://github.com/adoggie

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

常用鏈接

留言簿(54)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

#

利用windows capture Api捕獲的視頻流是RGB數(shù)據(jù)
 1 
 2 /*
 3 
 4     capture.h
 5     caputre用戶捕獲pc camera的 RGB視頻源
 6     做到capture,encoder,mgr 獨立,不會有依賴性,以便之后的復用
 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 而且回調函數(shù)必須聲明為 static LRESULT    CALLBACK,否則產生異常
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 @ 2006-03-02 00:36 放屁阿狗 閱讀(1236) | 評論 (0)編輯 收藏

     摘要:     1 #include <windows.h>  2   3 long int crv_tab[256];  4 long int cbu_tab[256];  5 lo...  閱讀全文
posted @ 2006-03-02 00:33 放屁阿狗 閱讀(4688) | 評論 (2)編輯 收藏

     摘要: 由于視頻開發(fā)的需求,封裝xvid c調用接口,使之優(yōu)雅易用我已經對pc camera視頻流(RGB)進行嘗試,編碼之后傳輸?shù)竭h程主機進行解碼回放,效果不錯具體的xvid的參數(shù)可以進一步優(yōu)化,這里只是提供簡單的范例1. xvid 解碼  1  2 /* 3     encode.cpp 4...  閱讀全文
posted @ 2006-03-02 00:28 放屁阿狗 閱讀(4649) | 評論 (6)編輯 收藏

公司的項目中有訪問DB2數(shù)據(jù)的需求,我以前也只是聽說DB2有這么個咚咚,據(jù)說也是個恐龍級的數(shù)據(jù)庫。以前也沒有用過DB2 在c語言的接口(訪問oracle我一直用oci),網上一兜,才發(fā)現(xiàn)DB2有JDBC的訪問接口,c方面的很少。
項目的工期比較緊,同時我也不想花太多的時間研究數(shù)據(jù)庫訪問接口,所以在項目中許多模塊都是用python編寫,開發(fā)周期短,調試,跨平臺也是很吸引人,所以就用python拉。在python.org一搜索,便找到了pydb2,OK! 馬上下載pydb1.2,一解開壓縮包,原來是原代碼,只能編譯拉。還好有編譯腳本:), 運行setup.py install
出現(xiàn)以下異常:
Compiling under Visual Studio .NET v7 recieves the
following error:

_db2_module.c(1855) : error C2036: 'SQLPOINTER' :
unknown size

This can be resolved by casting to (SQLCHAR *) instead
of a (void *):

< SQLPOINTER buf = (SQLPOINTER)((SQLCHAR
*)bs->buf + (bs->bufLen * idx));

發(fā)現(xiàn)原來SQLCHAR類型沒有找到,沒問題,找到_db2_module.c:1855行修改為:
SQLPOINTER buf = (SQLPOINTER)((void *)bs->buf +
(bs->bufLen * idx));
再次 setup.py install
ok,編譯成功,db2.py的模塊也被拷貝得到 $PYTHONHOME/lib/site_pakages/下去了
然后安裝db2 client runtime
這樣就完成了pydb2的運行配置。然后就在odbc中配置一個dsn
測試以下代碼:

import DB2
conn = DB2.connect(dsn='sample', uid='db2inst1', pwd='secret')
無異常表示成功連接上DB2
之后訪問數(shù)據(jù)庫只要遵循python DBI2.0的規(guī)范就可以拉!
生活在python世界是很快樂的事情!

*注意: python2.4的話必須用vc7.1編譯pydb2的擴展模塊,因為python2.4(win32)也是用vc7.1編譯的


posted @ 2006-03-02 00:18 放屁阿狗 閱讀(1605) | 評論 (1)編輯 收藏

讀ICE core 源碼
讀linux 2.4 kernel
學習e文
學習computer graphic

posted @ 2006-02-23 13:06 放屁阿狗 閱讀(182) | 評論 (0)編輯 收藏

linux kernel 0.11學習計劃
posted @ 2006-01-29 20:16 放屁阿狗 閱讀(357) | 評論 (0)編輯 收藏

近日我將Ice源碼庫中的Base64的代碼挖掘出來以便自己使用,做了一些試驗,發(fā)現(xiàn)其對二進制編碼之后的產生0x0D,0x0A字符,不得其解
用了一下python的base64庫,發(fā)現(xiàn)其也是在編碼只有加上0D,0A字符,嘿嘿,難道這是標準阿?
posted @ 2006-01-06 09:46 放屁阿狗 閱讀(472) | 評論 (2)編輯 收藏

      參閱 www.xmlrpc.org 的xmlrpc規(guī)范,發(fā)現(xiàn)其規(guī)格比較簡單,網站list top50中xmlrpc的不同語言的實現(xiàn),研究了xmlrpc-c,sexyRcp,phpRpc等代碼,發(fā)現(xiàn)其都實現(xiàn)比較復雜,有些只是提供了xmlrpc的語言規(guī)格實現(xiàn),但沒有實現(xiàn)網絡傳輸?shù)墓δ堋?BR>      由于xmlrpc規(guī)范的網絡傳輸采用http,一個請求必須創(chuàng)建一次tcp的交互,導致性能上得不到提高,而且只是單向調用等限制,我考慮重新編寫xmlrpc的實現(xiàn),提供xmlrpc-server,簡化其操作接口,支持在客戶機和服務器之間保持一個tcp連接,持續(xù)的進行xmlrpc雙向調用.
      支持語言:      C++ / Python
      計劃時間:   2005.12.31    ~ 2006.1.3

2006.1.4    完成rpcServer c++版本

posted @ 2006-01-02 00:52 放屁阿狗 閱讀(2098) | 評論 (2)編輯 收藏

     摘要: 本人一直使用的日志類,支持3種輸出方式(windows窗體,udp,常規(guī)文件),并格式化輸出:   1  2/**//*  3    nvlog.h  4    ----------------  5 &nb...  閱讀全文
posted @ 2005-12-11 20:31 放屁阿狗 閱讀(3875) | 評論 (4)編輯 收藏

linux9.0 用dlopen,動態(tài)加載函數(shù)XmlParse(),能成功被加載,但是訪問core dump ,很是奇怪,錯誤點在memmove....,實在沒有辦法,只能直接連接到libexpat.so,直接用XmlParse而沒有任何問題,很是奇怪
libexpat.dll在windows下動態(tài)加載無任何問題
所以只能改寫:

 1NVXML_INLINE
 2bool    NVXmlTree::Init_XmlLib(const char * libexpat){    
 3#ifdef WIN32
 4    if ( !_xml_dll.LoadDll(libexpat)){
 5        return false;    
 6    }
    
 7    _xmlf.XML_Parse= (NV_XML_Parse)_xml_dll.LoadSymbol("XML_Parse");    
 8    _xmlf.XML_ParserCreate = (NV_XML_ParserCreate)_xml_dll.LoadSymbol("XML_ParserCreate");    
 9    _xmlf.XML_ParserFree=(NV_XML_ParserFree)_xml_dll.LoadSymbol("XML_ParserFree");
10    _xmlf.XML_SetElementHandler=(NV_XML_SetElementHandler)_xml_dll.LoadSymbol("XML_SetElementHandler");
11    _xmlf.XML_SetUserData = (NV_XML_SetUserData)_xml_dll.LoadSymbol("XML_SetUserData");        
12    _xmlf.XML_SetEncoding = (NV_XML_SetEncoding) _xml_dll.LoadSymbol("XML_SetEncoding");    
13    _xmlf.XML_SetCharacterDataHandler = (NV_XML_SetCharacterDataHandler)
14                            _xml_dll.LoadSymbol("XML_SetCharacterDataHandler");    
15#endif
16#ifdef _UNIX
17//-- on unix,using expat api directly
18    _xmlf.XML_Parse= (NV_XML_Parse)XML_Parse;    
19    _xmlf.XML_ParserCreate = (NV_XML_ParserCreate)XML_ParserCreate;    
20    _xmlf.XML_ParserFree=(NV_XML_ParserFree)XML_ParserFree;
21    _xmlf.XML_SetElementHandler=(NV_XML_SetElementHandler)XML_SetElementHandler;
22    _xmlf.XML_SetUserData = (NV_XML_SetUserData)XML_SetUserData;        
23    _xmlf.XML_SetEncoding = (NV_XML_SetEncoding)XML_SetEncoding;    
24    _xmlf.XML_SetCharacterDataHandler = (NV_XML_SetCharacterDataHandler)XML_SetCharacterDataHandler;    
25
26#endif
27    return true;
28}
    
posted @ 2005-12-11 20:26 放屁阿狗 閱讀(778) | 評論 (0)編輯 收藏

僅列出標題
共25頁: First 17 18 19 20 21 22 23 24 25 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美精品自拍| 国产精品久久久久免费a∨| 黄色另类av| 久久综合亚洲社区| 可以免费看不卡的av网站| 亚洲国产高清在线| 亚洲欧洲日本mm| 欧美日本国产视频| 亚洲天堂成人在线视频| 一本综合精品| 国产精品影视天天线| 久久综合久色欧美综合狠狠| 麻豆精品在线播放| 亚洲图片在区色| 欧美一级播放| 亚洲国产老妈| 一区二区久久久久| 国产精品日韩精品欧美精品| 久久久亚洲精品一区二区三区| 久久一日本道色综合久久| 亚洲精品在线电影| 亚洲欧美国产高清| 亚洲人成77777在线观看网| 这里只有精品丝袜| 亚洲成人在线| 亚洲影院在线| 亚洲久久一区二区| 亚洲欧美在线免费| 99re6热在线精品视频播放速度| 亚洲桃花岛网站| 亚洲精品国产精品国自产观看浪潮 | 在线观看精品一区| 99视频精品在线| 亚洲电影在线播放| 亚洲一区精品电影| 日韩天堂av| 久久频这里精品99香蕉| 午夜精品久久久久久久男人的天堂 | 欧美大片免费观看| 国产九区一区在线| 99在线观看免费视频精品观看| 国外视频精品毛片| 在线综合欧美| 一本色道婷婷久久欧美| 久久久久久久久久久一区 | 国产日产精品一区二区三区四区的观看方式| 久久青草欧美一区二区三区| 欧美体内谢she精2性欧美 | 亚洲欧美激情视频在线观看一区二区三区 | 亚洲欧美日本国产有色| 欧美国产精品一区| 欧美不卡在线视频| 韩国福利一区| 久久xxxx| 久久久国产91| 国产午夜精品久久久久久久| 在线中文字幕日韩| 亚洲视频导航| 欧美日韩一区二区三区免费| 亚洲国产一区二区a毛片| 永久555www成人免费| 欧美主播一区二区三区| 久久精品综合一区| 国产一区二区高清| 久久精品在这里| 蜜臀av一级做a爰片久久| 黄色一区二区三区| 久久综合久久久久88| 欧美成人在线免费观看| 亚洲国产精品成人va在线观看| 久久精品国产一区二区三| 久久久综合免费视频| 亚洲电影第1页| 美女尤物久久精品| 91久久精品国产91久久性色tv| 亚洲美女在线视频| 欧美日韩亚洲一区二| 亚洲午夜视频在线| 久久精品免费看| 亚洲电影在线观看| 欧美精品一区二区精品网| 999在线观看精品免费不卡网站| 亚洲天堂av在线免费观看| 国产精品久久久久秋霞鲁丝| 亚洲欧美另类在线观看| 久久综合精品国产一区二区三区| 精品成人国产| 欧美日本在线看| 亚洲资源av| 欧美电影在线观看| 亚洲一二三区精品| 国产在线观看91精品一区| 美女被久久久| 这里只有精品在线播放| 久久这里有精品15一区二区三区| 91久久精品国产91久久性色| 欧美视频1区| 久久综合九色综合欧美狠狠| 亚洲日本黄色| 久久久国产精品一区| 91久久久久久久久| 国产精品永久| 欧美丰满少妇xxxbbb| 亚洲欧美日韩国产成人| 亚洲电影av| 久久久国产精品一区二区中文| 最新69国产成人精品视频免费| 国产精品久久久久av| 美女国产一区| 午夜影院日韩| 99精品视频网| 欧美激情精品久久久久久免费印度 | 久久精品国产免费观看| 日韩午夜在线| 黄色成人免费观看| 国产精品人人爽人人做我的可爱| 久久婷婷国产综合国色天香| 一本大道久久a久久综合婷婷 | 亚洲一区一卡| 亚洲日本中文| 在线播放日韩| 国产精品永久免费观看| 欧美激情亚洲自拍| 玖玖视频精品| 久久人人九九| 久久精品二区亚洲w码| 亚洲影院污污.| 一区二区福利| 一区二区三区**美女毛片| 亚洲国产一区二区三区青草影视| 久久久亚洲精品一区二区三区| 亚洲欧美大片| 亚洲欧美成人一区二区三区| 一区二区欧美在线观看| 亚洲精选中文字幕| 葵司免费一区二区三区四区五区| 亚洲视频在线观看免费| 亚洲欧美日韩在线播放| 一本到高清视频免费精品| 亚洲高清网站| 亚洲第一页中文字幕| 国模一区二区三区| 国产亚洲女人久久久久毛片| 国产乱码精品一区二区三区忘忧草| 欧美精品一区二区高清在线观看| 男人的天堂亚洲在线| 免费亚洲电影在线| 欧美xxx在线观看| 欧美激情国产精品| 欧美老女人xx| 国产精品xnxxcom| 国产精品99一区| 国产精品你懂的在线欣赏| 国产精品日韩高清| 国产日韩av在线播放| 韩国三级电影久久久久久| 激情成人在线视频| 亚洲春色另类小说| 一本久道久久综合中文字幕 | 欧美日韩亚洲一区三区 | 麻豆成人精品| 欧美精品色综合| 欧美午夜在线视频| 国产精品综合不卡av| 黄色影院成人| 在线视频你懂得一区二区三区| 亚洲一区二区影院| 久久久久www| 亚洲激情av| 亚洲一区在线免费观看| 亚洲欧美精品伊人久久| 狼狼综合久久久久综合网 | 午夜精彩视频在线观看不卡| 欧美专区在线观看| 男女av一区三区二区色多| 欧美日韩精品免费观看视一区二区| 国产精品久久久久999| 激情成人综合| 亚洲一区二区三区乱码aⅴ蜜桃女| 久久激情久久| 最新热久久免费视频| 亚洲一区在线视频| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美午夜a级限制福利片| 影音先锋日韩资源| 亚洲欧美日韩精品久久久久| 欧美暴力喷水在线| 亚洲在线视频网站| 欧美jizz19hd性欧美| 国产欧美日韩一区| av成人毛片| 欧美成人免费全部观看天天性色| 亚洲深夜福利| 欧美大胆a视频| 狠久久av成人天堂| 性色av一区二区三区红粉影视| 欧美成人一二三| 欧美在线观看你懂的| 国产精品久久久久久亚洲毛片| 亚洲日本激情|