線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2102
推到 Plurk!
推到 Facebook!

【請問】關於影像傳輸…

 
phototin
初階會員


發表:13
回覆:30
積分:29
註冊:2002-06-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-07-19 00:24:41 IP:61.219.xxx.xxx 未訂閱
我正在作一個程式, 要把Server的Screen傳給Client,然後Show在Image元件上。    關於捉Screen的部份已經完成了, 想問的是, 不知道應該用什麼元件來傳送至Client…?? 而Client在接收時,又會是接收到什麼樣的形式…?? Server是否要先存成檔案才傳送,還是可以直接傳送…?? 還有,就是不知道要用何種方式傳送,才能有較佳的效能…?? (我是用ServerSocket和ClientSocket兩個元件來建立連線的。)    我是新手,試了很久都搞不出來, 還請幫忙,謝謝!
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-07-19 00:30:38 IP:61.70.xxx.xxx 未訂閱
引言: 我正在作一個程式, 要把Server的Screen傳給Client,然後Show在Image元件上。 關於捉Screen的部份已經完成了, 想問的是, 不知道應該用什麼元件來傳送至Client…?? 而Client在接收時,又會是接收到什麼樣的形式…?? Server是否要先存成檔案才傳送,還是可以直接傳送…?? 還有,就是不知道要用何種方式傳送,才能有較佳的效能…?? (我是用ServerSocket和ClientSocket兩個元件來建立連線的。) 我是新手,試了很久都搞不出來, 還請幫忙,謝謝!
我可以先建議剛在試的初期先用傳檔的模式...先將螢幕的畫面存檔...然後再傳輸檔案過去SERVER...等傳送過後...再通知SERVER去讀取檔案...如此... 不過...最好先做壓縮...否則效率不彰...
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
phototin
初階會員


發表:13
回覆:30
積分:29
註冊:2002-06-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-07-19 23:52:44 IP:61.219.xxx.xxx 未訂閱
[/quote] 我可以先建議剛在試的初期先用傳檔的模式...先將螢幕的畫面存檔...然後再傳輸檔案過去SERVER...等傳送過後...再通知SERVER去讀取檔案...如此... 不過...最好先做壓縮...否則效率不彰... [/quote] 謝謝你的回應~~, 我目前已可以把Screen轉成jpg檔, 不過不知道要怎麼傳過去Client, 聽說…用TCP的方式傳效率不好,應用UDP…, 還是有什麼更好的方式…?? 如果不先存檔,應該怎麼作…??
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-07-22 09:42:31 IP:61.218.xxx.xxx 未訂閱
您可以參考這幾篇試試,RTP/RTCP的效率會比TCP/IP好一些!(如果您要傳送即是影像可能還需要一些壓縮技術,如ASF/MPEG/ MPeg4等等!)    顯示可以考慮用Directshow或VFW方式喔!    http://delphi.ktop.com.tw/topic.php?TOPIC_ID=19558    http://delphi.ktop.com.tw/topic.php?TOPIC_ID=19430     時間就是金錢---[ 發問前請先找找舊文章]
phototin
初階會員


發表:13
回覆:30
積分:29
註冊:2002-06-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-07-22 23:50:04 IP:61.219.xxx.xxx 未訂閱
引言: 您可以參考這幾篇試試,RTP/RTCP的效率會比TCP/IP好一些!(如果您要傳送即是影像可能還需要一些壓縮技術,如ASF/MPEG/ MPeg4等等!) 顯示可以考慮用Directshow或VFW方式喔! http://delphi.ktop.com.tw/topic.php?TOPIC_ID=19558 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=19430 時間就是金錢---[ 發問前請先找找舊文章]
雖然看不太懂這些技術文章, 不過還是很謝謝你, 我會努力去看的…!
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-07-23 08:37:32 IP:61.218.xxx.xxx 未訂閱
引言: 雖然看不太懂這些技術文章, 不過還是很謝謝你, 我會努力去看的…!
可否請您將捉Screen 及Show在Image元件上的程式碼公開給大家參考一下! 讓其他想瞭解的人有個參考範例! 時間就是金錢---[ 發問前請先找找舊文章]
phototin
初階會員


發表:13
回覆:30
積分:29
註冊:2002-06-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2002-07-24 00:35:38 IP:61.219.xxx.xxx 未訂閱
嗯…當然可以, 不過我是新手,有錯誤的地方還請大家指教~。 (^_^ 有點耍大刀的感覺…。) ////////////////////////////////////////////////////////////////// //將全螢幕捉下存成bmp檔再轉成jpg的檔: //在程式開頭加上#include "jpeg.hpp",才可使用jpeg的格式 #include "jpeg.hpp" //捉取全螢幕存成bmp格式 Graphics::TBitmap *bmp = new Graphics::TBitmap; bmp->Width = Screen->Width; bmp->Height = Screen->Height; bmp->PixelFormat = pf32bit; HDC hdc = ::GetWindowDC(0); ::BitBlt(bmp->Canvas->Handle, 0, 0, Screen->Width, Screen->Height, hdc, 0, 0, SRCCOPY); //轉成jpg的格式 TJPEGImage *jpg = new TJPEGImage(); jpg->PixelFormat = jf8Bit; jpg->CompressionQuality = 10; jpg->Assign((TPersistent*)bmp); jpg->Compress(); //存檔 jpg->SaveToFile ("jpg.jpg") ; bmp->SaveToFile("bmp.bmp"); //釋放資源 ReleaseDC(Form->Handle, hdc); delete jpg; delete bmp; ////////////////////////////////////////////////////////////////// //在TImage元件上秀JPG檔: TJPEGImage *jpg = new TJPEGImage () ; jpg->LoadFromFile("jpg.jpg") ; Image1->Picture->Bitmap->Assign(jpg); delete jpg ; //////////////////////////////////////////////////////////////////
系統時間:2024-11-21 20:06:56
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!