c 實現攝像頭拍照功能示例

2022-09-26 08:42:10 字數 3053 閱讀 2180

複製** **如下:

using system.drawing;

using system.drawing.imaging;

using system;

using system.runtime.interopservices;

複製** **如下:

private const int wm_user = 0x400;

private const int ws_child = 0x40000000;

private const int ws_visible = 0x10000000;

private const int wm_cap_start = wm_user;

private const int wm_cap_stop = wm_cap_start + 68;

private const int wm_cap_driver_connect = wm_cap_start + 10;

private const int wm_cap_driver_disconnect = wm_cap_start + 11;

private const int wm_cap_s**edib = wm_cap_start + 25;

private const int wm_cap_grab_frame = wm_cap_start + 60;

private const int wm_cap_sequence = wm_cap_start + 62;

private const int wm_cap_file_set_capture_filea = wm_cap_start + 20;

private const int wm_cap_sequence_nofile = wm_cap_start + 63;

private const int wm_cap_set_overlay = wm_cap_start + 51;

private const int wm_cap_set_preview = wm_cap_start + 50;

private const int wm_cap_set_callback_videostream = wm_cap_start + 6;

private const int wm_cap_set_callback_error = wm_cap_start + 2;

private const int wm_cap_set_callback_statusa = wm_cap_start + 3;

private const int wm_cap_set_callback_frame = wm_cap_start + 5;

private const int wm_cap_set_scale = wm_cap_start + 53;

private const int wm_cap_set_previewrate = wm_cap_start + 52;

private intptr hwndc;

private bool bstat = false;

private intptr mcontrolptr;

private int mwidth;

private int mheight;

private int mleft;

private int mtop;

複製** **如下:

///

/// 初始化攝像頭

///

/// 控制項的控制代碼

/// 開始顯示的左邊距

/// 開始顯示的上邊距

/// 要顯示的寬度

/// 要顯示的長度

public videoclass(intptr handle, int left, int top, int width, int height)

複製** **如下:

[dllimport("**icap32.dll")]

private static extern intptr capcreatecapturewindowa(byte lpswww.cppcns.comzwindowname, int dwstyle, int x, int y, int nwidth, int nheight, intptr hwndparent, int nid);

[dllimport("**icap32.dll")]

priv static extern int capgetvideoformat(intptr hwnd, intptr psvideoformat, int wsize);

[dllimport("user32.dll")]

private static extern bool sendmessage(intptr hwnd, int wmsg, int wparam, long lparam);

[dllimport("**icap32.dll")]

public static extern bool capgetdriverdescriptiona(short wdriver, byte lpszname, int cbname, byte lpszver, int cbver);

複製** **如下:

///

/// 開始顯示影象

///

public void start()

return;

}複製** **如下:

///

/// 停止顯示

///

public void stop()

///

/// 抓圖

///

/// 要儲存bmp檔案的路徑

public void grabimage(string path)

/// 程式設計客棧y>

/// 錄影

///

/// 要儲存**i檔案的路徑

public void kinescope(string path)

程式設計客棧       ///

/// 停止錄影

///

public void stopkinescope()

本文標題: c#實現攝像頭拍照功能示例

本文位址:

攝像頭拍照

在windows下進行攝像頭拍照功能開發,可以借助開源的攝像頭專案或者一系列的demo。本程式實現乙個簡單的拍照功能,需要使用cximage庫,ccameraapi庫,這些都是開源的,我們可以直接使用它提供出來的介面就可以了。一 初始化攝像頭過程 之前得再ctakephotodlg類中建立乙個私有的...

5呼叫攝像頭拍照 手機攝像頭越多拍照越好嗎?

1999年開始,手機進入了可以拍照的時代,雖然現在看來,110萬畫素的攝像頭,總共能儲存20張 實在是有些 簡陋 本文中所說的 三攝 四攝 都說的是後置攝像頭 攝像頭多 拍照好 今天的手機市場上,最主流的就是三攝配置,然後四攝的手機也越來越多,估計你們也聽過 這個手機有三攝,拍照可好了 這樣的介紹,...

WPF 攝像頭拍照技術

第一步 新增wpfmediakit.dll 檔案到專案中 第二步 把wpfmediakit.dll檔案引用進來。步驟 右擊引用 新增引用 瀏覽選項卡 選擇wpfmediakit.dll檔案所在的位置.第三步 在視窗頂端加入如下 注意不要該意記 就像using乙個類樣。xmlns wpfmedia c...