全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1472
推到 Plurk!
推到 Facebook!

請問各位大大有關於儲存AVI影像檔的問題??

尚未結案
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-24 00:09:35 IP:218.164.xxx.xxx 未訂閱
請教各位大大小弟,使用ccd擷取影像到Image中,而想把image中的影像存為AVI檔,請問如何儲存?? 謝謝!!
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-24 00:13:25 IP:140.135.xxx.xxx 未訂閱
residue您好: 請參考下面的文章 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=33680 【轉貼】BMP序列影像轉成AVI 順心 發表人 -
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-25 18:41:15 IP:218.164.xxx.xxx 未訂閱
感謝大大的指導!!    但小弟我試了兩天了,還是搞不定,不知道大大是否能寫一個小範例供小弟參考謝謝!!以下是小弟參考大大的範例所寫的程式 但在寫以下程式時小弟有些疑問?? class="code"> #include #pragma hdrstop #include #include #include #include<math.h> #include #include "Unit1.h" #include "c_cap.h" #include "avi_utils.h" #include "avi_utils.cpp" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; HWND vcHWND; TCap *Cap; void __fastcall TForm1::FormCreate(TObject *Sender) { vcHWND = capCreateCaptureWindow ( "Capture Window", WS_CHILD | WS_VISIBLE ,0,0,1,1,Form1->Handle, 0); //設定視窗大小 bool a = false; for( int i = 0; i < 10; i ) { a = capDriverConnect( vcHWND, i ); if( a ) break; } if( !a ) { ShowMessage("攝影機連接失敗.."); } capPreviewRate(vcHWND,33); capPreview(vcHWND,true); } void __fastcall TForm1::Timer1Timer(TObject *Sender) { capGrabFrameNoStop(vcHWND); capEditCopy(vcHWND); if(Clipboard()->HasFormat(CF_DIB)) { Image1->Picture->Bitmap->Assign(Clipboard()); } } void __fastcall TForm1::Button1Click(TObject *Sender) { const char *fns[] = {"1.bmp","2.bmp","3.bmp","4.bmp","5.bmp"}; HAVI avi = CreateAvi("test.avi",1000,NULL); for (int i=0; i
MilesWamg
一般會員


發表:18
回覆:37
積分:11
註冊:2003-02-07

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-26 22:06:35 IP:218.164.xxx.xxx 未訂閱
請參考小弟拙作 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=39558
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-10-27 01:29:22 IP:218.164.xxx.xxx 未訂閱
引言: 請參考小弟拙作 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=39558 < face="Verdana, Arial, Helvetica"> 感謝大大的回應 小弟我試了大大的程式發現以下錯誤了訊息 [Linker Fatal Error] Fatal: Unable to openfile 'VCLJPG.LIB' 但若單純開執行檔去執行,是可以run但好像只能跑一秒鐘,程式就終止了是為 何??請大大指導
MilesWamg
一般會員


發表:18
回覆:37
積分:11
註冊:2003-02-07

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-10-27 10:41:07 IP:163.18.xxx.xxx 未訂閱
請將ccd設定於rgb24 而bcb版本為6.0
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-10-27 16:57:25 IP:203.64.xxx.xxx 未訂閱
引言: 請將ccd設定於rgb24 而bcb版本為6.0
謝謝大大的指導!!! 但還是不能用,小弟用的卡是upg301b的,系統是win me ,bcb 6.0真不曉得為何不能用!! 小弟現在有個疑惑,看了大大的程式,是把影像Lod近PaintBox1中,但若我改成image作,是要修改哪裡呢?? 還市image不能直接用,需借助別的原件下去做轉換 謝謝指導!!
MilesWamg
一般會員


發表:18
回覆:37
積分:11
註冊:2003-02-07

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-10-27 17:40:34 IP:163.18.xxx.xxx 未訂閱
將原本Pic資料Draw 於PaintBox1->Canvas->Draw(0,0,Pic); 改成Image1->Canvas->Draw(0,0,Pic); 應該可以    
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-10-27 19:43:01 IP:140.135.xxx.xxx 未訂閱
residue您好: 幫忙補充一下
引言: 小弟我試了大大的程式發現以下錯誤了訊息 [Linker Fatal Error] Fatal: Unable to openfile 'VCLJPG.LIB'
請將下面的路徑加入lib path中 C:\Program Files\Borland\CBuilder6\Lib\Debug 順心
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-10-27 22:22:30 IP:218.164.xxx.xxx 未訂閱
引言: residue您好: 幫忙補充一下
引言: 小弟我試了大大的程式發現以下錯誤了訊息 [Linker Fatal Error] Fatal: Unable to openfile 'VCLJPG.LIB'
請將下面的路徑加入lib path中 C:\Program Files\Borland\CBuilder6\Lib\Debug 順心 < face="Verdana, Arial, Helvetica"> 感謝taishyang大大的提醒!! 但是在C:\Program Files\Borland\CBuilder6\Lib\Debug資料夾下早就有'VCLJPG.LIB'這各檔案所以小弟也不知道問題出在哪裡?? 小弟在嘗試自己寫寫看,有問題再請大大指導謝謝大大們所提供的資料與提點 謝謝!! residue
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-10-27 22:31:22 IP:140.135.xxx.xxx 未訂閱
residue您好: 因為在我的環境底下,編譯此專案後,我也出現和您一樣的錯誤訊息 加入此path就可以WORK了
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-10-28 00:17:27 IP:218.164.xxx.xxx 未訂閱
引言: residue您好: 因為在我的環境底下,編譯此專案後,我也出現和您一樣的錯誤訊息 加入此path就可以WORK了 < face="Verdana, Arial, Helvetica"> 感謝大大的指導~!!! 程式是可以RUN了但Run到一半會出現,以下兩種錯誤訊息 不知是哪裡出了問題??還請大大指教,謝謝!!
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-10-28 16:09:19 IP:203.64.xxx.xxx 未訂閱
小弟嘗試很久,仍然不能解決上述其問題,所以小弟自己參考大大們的資料,寫一較簡單的程式,但程式執行到紅色的那一行就錯誤的了,但不知小弟哪出錯呢??        
#include 
#include 
#include<math.h>
#include 
#include "Unit1.h"
#include 
#pragma hdrstop
#include "Unit1.h"    //---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;    //---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------    void __fastcall TForm1::FormCreate(TObject *Sender)
{
       vcHWND = capCreateCaptureWindow ( "Capture Window",
    WS_CHILD | WS_VISIBLE ,0,0,1,1,Form1->Handle, 0);  //設定視窗大小
    bool a = false;
    for( int i = 0; i < 10; i   )
     {
      a = capDriverConnect( vcHWND, i );
      if( a ) break;
     }
    if( !a )
     {
      ShowMessage("攝影機連接失敗..");
     }
 capPreviewRate(vcHWND,33);
 capPreview(vcHWND,true);
//---------------------------------------------------     Capflag=false;
  Pic = new Graphics::TBitmap();
  Pic->Height=240;
  Pic->Width=320;
  Pic->PixelFormat=pf24bit;
  Pic2 = new Graphics::TBitmap();
  Pic2->Assign(Image1->Picture->Bitmap);
  Pic2->Height=240;
  Pic2->Width=320;
  Pic2->PixelFormat=pf24bit;
  Pic->Canvas->Font->Color =clBlue;
  Pic->Canvas->Brush->Style = bsDiagCross;
  avi = CreateAvi("Test.avi",50,NULL);      AVI_Frame_Count=0;
}
//---------------------------------------------------------------------------    void __fastcall TForm1::Add_Frame_To_AVI()   //2003/7/13 Miles Wang
{
 HBITMAP hbm=(HBITMAP)CopyImage(Pic2->Handle,IMAGE_BITMAP,Pic2->Width,Pic2->Height,
LR_COPYFROMRESOURCE|LR_CREATEDIBSECTION);
  AddAviFrame(avi,hbm);
  DeleteObject(hbm);
  AVI_Frame_Count  ;
}    void __fastcall TForm1::Button2Click(TObject *Sender)
{
Form1->Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
capGrabFrameNoStop(vcHWND);
  capEditCopy(vcHWND);
  if(Clipboard()->HasFormat(CF_DIB))
  {
   Image1->Picture->Bitmap->Assign(Clipboard());
   }
 Add_Frame_To_AVI();
}     
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#14 引用回覆 回覆 發表時間:2003-10-28 16:28:14 IP:140.135.xxx.xxx 未訂閱
residue您好: 還好我的影像擷取卡跟您是同樣型號,不然我也查不出來 您試試用webcam吧< >一切將真相大白 結論:便宜沒好貨< > 發表人 - taishyang 於 2003/10/28 16:29:08
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#15 引用回覆 回覆 發表時間:2003-10-29 07:32:06 IP:218.164.xxx.xxx 未訂閱
引言: residue您好: 還好我的影像擷取卡跟您是同樣型號,不然我也查不出來 您試試用webcam吧< >一切將真相大白 結論:便宜沒好貨< > 發表人 - taishyang 於 2003/10/28 16:29:08
感謝大大的提點!! 那也就是說MilesWamg大大的程式不能run嗎??那該如何解決目前的問題, 因為小弟也只有這張卡 謝謝!!!
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#16 引用回覆 回覆 發表時間:2003-10-29 12:03:44 IP:140.135.xxx.xxx 未訂閱
residue您好:
引言:那也就是說MilesWamg大大的程式不能run嗎??那該如何解決目前的問題, 因為小弟也只有這張卡
不是MilesWamg大大的程式不能run, 而是我們的擷取卡有問題 不然迂迴一點,先將數個BMP存起來,再用之前聯結的方式將數個BMP組成AVI 因為我都是這樣用的 >
residue
中階會員


發表:90
回覆:153
積分:53
註冊:2003-07-02

發送簡訊給我
#17 引用回覆 回覆 發表時間:2003-10-29 17:23:28 IP:203.64.xxx.xxx 未訂閱
恩~~我知道囉!! 那只好先一張一張的存在把它結合囉!! 謝謝
系統時間:2024-04-30 18:56:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!