專利名稱:采用計(jì)算機(jī)截取電視屏幕的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種電視屏幕畫面截取的方法,特別是一種利用計(jì)算機(jī)截取電 視屏幕畫面的方法。
技術(shù)背景電視的誕生,是20世紀(jì)人類最偉大的發(fā)明之一。在現(xiàn)代社會(huì)里,沒有電視 的生活已不可想象了。電視開發(fā)人員或其他技術(shù)人員在開發(fā)過程中根據(jù)使用或 研發(fā)的需要,常會(huì)截取屏幕畫面。而現(xiàn)有技術(shù)的電視都不具備屏幕截取功能, 僅能通過保存當(dāng)前整個(gè)屏幕圖象并以圖片的形式存放到E2Prom或Flash設(shè)備 中。雖然目前帶有flash接口的電視己經(jīng)逐漸增多,但仍有許多電視不帶有外部 存儲(chǔ)設(shè)備接口,對(duì)于需要截取屏幕畫面的人來說難以通過這種方法來實(shí)現(xiàn)對(duì)畫 面的截取,且這種方法要求額外的存儲(chǔ)空間。另外,目前的截取方法獲取的圖 象都是隨機(jī)存儲(chǔ)器RAM中經(jīng)過定標(biāo)器Scaler處理后的圖像(定標(biāo)器Scaler處理 圖象根據(jù)各種應(yīng)用的需求,電視畫面最終顯示的大小和實(shí)際畫面大小不一定 相同,如一幅1920"080i格式的畫面可能需要以1024*768格式顯示,這時(shí)就需 要視頻處理芯片的定標(biāo)器Scaler對(duì)截取到的原始畫面進(jìn)行放大,縮小等操作和 處理,并根據(jù)原始圖像選取有效的算法使經(jīng)過處理后的圖像質(zhì)量更佳),而對(duì)于 RAM中定標(biāo)器Scaler處理前的圖片則不能被得到。 發(fā)明內(nèi)容本發(fā)明的目的是提供一種采用計(jì)算機(jī)截取電視屏幕的方法,要解決的技術(shù) 問題是方便電視開發(fā)人員或其他技術(shù)人員截取電視屏幕畫面。 本發(fā)明采用以下技術(shù)方案 一種采用計(jì)算機(jī)截取電視屏幕的方法,包括以 下步驟 一、將計(jì)算機(jī)與電視機(jī)MCU串口聯(lián)接;二、計(jì)算機(jī)向電視機(jī)MCU發(fā) 送截取屏幕的命令;三、電視機(jī)MCU進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù) 據(jù)發(fā)送到計(jì)算機(jī);四、計(jì)算機(jī)將信息數(shù)據(jù)存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器。本發(fā)明的信息數(shù)據(jù)是電視機(jī)當(dāng)前畫面信息與畫面格式信息,或圖片數(shù)據(jù)文件。本發(fā)明的電視機(jī)MCU進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù)據(jù)發(fā)送到計(jì) 算機(jī)的過程包括以下步驟 一、電視機(jī)MCU命令操作當(dāng)前屏幕的圖像靜止;二、電視機(jī)MCU獲取靜止后當(dāng)前圖像存儲(chǔ)空間首地址、行場起始位置和行場寬高的 信息;三、電視機(jī)MCU設(shè)置獲取定標(biāo)器處理前的信息數(shù)據(jù),或設(shè)置獲取定標(biāo)器 處理后的信息數(shù)據(jù);四、電視機(jī)MCU根據(jù)計(jì)算機(jī)發(fā)出的指令,判斷是傳送圖像 文件,則將當(dāng)前畫面信息與畫面格式信息設(shè)置為圖像文件,傳送給計(jì)算機(jī)。本發(fā)明的電視機(jī)MCU根據(jù)計(jì)算機(jī)發(fā)出的指令,判斷是傳送圖像數(shù)據(jù),則將 當(dāng)前畫面信息與畫面格式信息設(shè)置為圖像文件相關(guān)重要數(shù)據(jù),傳送給計(jì)算機(jī)。本發(fā)明的計(jì)算機(jī)接收到畫面信息與畫面格式信息后再將該信息數(shù)據(jù)轉(zhuǎn)化為 圖片,存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器。本發(fā)明的圖像文件是指24位位圖。本發(fā)明的圖像文件相關(guān)重要數(shù)據(jù)是指圖像水平方向?qū)挾群蛨D像垂直方向高度。本發(fā)明的電視機(jī)MCU發(fā)送信息數(shù)據(jù)完畢,命令操作當(dāng)前屏幕退出圖像靜止 狀態(tài)。本發(fā)明與現(xiàn)有技術(shù)相比,將計(jì)算機(jī)與電視機(jī)MCU聯(lián)接,計(jì)算機(jī)向電視機(jī) MCU發(fā)出截取命令,電視機(jī)MCU通過其串口將截取到的畫面數(shù)據(jù)傳輸?shù)接?jì)算
機(jī)并存儲(chǔ)在計(jì)算機(jī)的存儲(chǔ)器,可以在電視機(jī)不帶有外部存儲(chǔ)設(shè)備接口時(shí),使開發(fā)人員或其他技術(shù)人員方便實(shí)現(xiàn)對(duì)電視畫面的截取。
圖1是本發(fā)明實(shí)施例的電視端流程圖。圖2是本發(fā)明實(shí)施例的端流程圖。 圖3是本發(fā)明實(shí)施例的硬件連接圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說明。本發(fā)明的采用計(jì)算機(jī) 截取電視屏幕的方法,利用電視機(jī)MCU的串口和計(jì)算機(jī),計(jì)算機(jī)向電視機(jī)MCU 發(fā)出截取命令,電視機(jī)MCU通過其串口將截取到的畫面數(shù)據(jù)傳輸?shù)接?jì)算機(jī)并存 儲(chǔ)在計(jì)算機(jī)的存儲(chǔ)器。如圖3所示,由于計(jì)算機(jī)采用的是RS232電平,所以電視機(jī)MCU的串口 和計(jì)算機(jī)的通訊經(jīng)過電平轉(zhuǎn)換電路傳遞。如圖2所示,本發(fā)明的采用計(jì)算機(jī)截取電視屏幕的方法,包括以下步驟 一、計(jì)算機(jī)向電視機(jī)MCU發(fā)送截取屏幕的命令;二、電視機(jī)MCU接收到計(jì)算 機(jī)的命令后,進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù)據(jù)發(fā)送到計(jì)算機(jī);三、 計(jì)算機(jī)接受信息數(shù)據(jù),存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器。信息數(shù)據(jù)是電視機(jī)當(dāng)前畫面信息與畫面格式信息,或圖片數(shù)據(jù)文件。信息 數(shù)據(jù)若是電視機(jī)當(dāng)前畫面信息與畫面格式信息,計(jì)算機(jī)接收到畫面信息與畫面 格式信息后再將該信息數(shù)據(jù)轉(zhuǎn)化為圖片,存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器。計(jì)算機(jī)可以指令電視機(jī)MCU獲取的信息數(shù)據(jù)是經(jīng)過定標(biāo)器Scaler處理前 的圖像,或經(jīng)過定標(biāo)器Scaler處理后的圖像。如圖1所示,本發(fā)明的采用計(jì)算機(jī)截取電視屏幕的方法,電視端接收到計(jì)
算機(jī)的命令后,進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù)據(jù)發(fā)送到計(jì)算機(jī)端, 其具體包括以下步驟 一、電視機(jī)MCU接收到開始截屏命令后,命令操作當(dāng)前屏幕的圖像靜止;二、電視機(jī)MCU獲取靜止后當(dāng)前圖像存儲(chǔ)空間首地址、 行場起始位置和行場寬高的信息;三、電視機(jī)MCU根據(jù)計(jì)算機(jī)的命令,設(shè)置 獲取定標(biāo)器處理前的信息數(shù)據(jù),或設(shè)置獲取定標(biāo)器處理后的信息數(shù)據(jù);四、電 視機(jī)MCU根據(jù)計(jì)算機(jī)發(fā)出的指令,判斷是傳送圖像文件,則將當(dāng)前畫面信息 與畫面格式信息設(shè)置為圖像文件,傳送給計(jì)算機(jī);判斷是傳送圖像數(shù)據(jù),則將 當(dāng)前畫面信息與畫面格式信息設(shè)置為圖像文件相關(guān)重要數(shù)據(jù),傳送給計(jì)算機(jī); 五、電視機(jī)MCU發(fā)送信息數(shù)據(jù)完畢,命令操作當(dāng)前屏幕退出圖像靜止?fàn)顟B(tài)。
本發(fā)明方法中圖像文件是指格式24位bits位圖,圖像文件相關(guān)重要數(shù)據(jù)是 指指圖像水平方向?qū)挾群蛨D像垂直方向高度。實(shí)施例1,本發(fā)明的方法采用深圳康佳集團(tuán)股份有限公司、LCM17BT35H 型號(hào)的電視機(jī),采用硬件Dell OptiPlex GX280、 CPU: Intel(R) Pentium (R) 4 3.00GHz、內(nèi)存512M、軟件WindowsXP系統(tǒng)計(jì)算機(jī),采用C程序語言實(shí)現(xiàn)。計(jì)算機(jī)向電視機(jī)MCU發(fā)送截取屏幕的命令void CPrintScreenDlg: :OnButtonBegin()CByteArray transArr;〃5053截取屏幕的通信開始標(biāo)志,第3字節(jié)0x04為長度,' 〃第4字節(jié)0x00標(biāo)志截取屏幕類型為Scaler處理前 //第5字節(jié)0x00標(biāo)志表明接收的是圖像文件unsigned char ucArray[PSCMD—LENGTH] ={0x50,0x53,PSCMD—LENGTH,0x00,0x00};
if(! m—mscom. GetPortOpen(》AfxMessageBox("串口尚未打開!"); return;if( m—bAfterScaler == 1 )〃獲取Scaler處理后的圖像ucArray[3]= 1; 〃更改截取屏幕類型標(biāo)志 if( m_bBitmapData == 1)//接收的為圖像數(shù)據(jù)及圖像格式的數(shù)據(jù)ucArray[4] = 1;transArr. SetSize(PSCMD一LENGTH); for(int i=0;i< PSCMD—LENGTH; i++)transArr. SetAt(i,ucArray[i]);m—mscom.SetOutput(C01eVariant(transArr》;〃發(fā)送電視機(jī)MCU操作當(dāng)前屏幕的圖像靜止命令〃FreezePicture為使圖像靜止或退出靜止的函數(shù),其中參數(shù)uc WT為畫面類
型,bFree為True,畫面靜止,bTree為False,退出畫面靜止?fàn)顟B(tài)。這里要靜止主畫面調(diào)用FreezePicture(_WT—MP—,TRUE);FreezePicture函婁女的原型如下void FreezePicture(Byte ucWT, Bool bFreeze)WaitForVSync();〃等待同步 SetPage(_DVPAGE5); if(ucWT==—WT—PP—)/*畫中畫*/if (bFreeze)tdWriteBit(—P5一0C」一BIT7一, 1);elsetdWriteBit(—P5一0C—, —BIT7一, 0); } else/*主畫面*/if (bFreeze)WriteBit(_P5—OA—, —BIT7一, 1);elseWriteBi(P5—OA—, —BIT7—, 0);電視機(jī)MCU獲取靜止后當(dāng)前圖像存儲(chǔ)空間首地址、行場起始位置和行場寬高的信息命令 〃GetWindowO函數(shù)的作用為根據(jù)窗口類型獲取其對(duì)應(yīng)的行場起始位置,和 行場寬高,這些數(shù)據(jù)在項(xiàng)目中為開發(fā)人員事先根據(jù)各種各種格式的畫面調(diào)節(jié) 好的,因而可以直接獲取。GetWindow(—WT一MC,&wHstart,&wVstart,&wHwidth,&Vwi她);〃GetFBAddrO函數(shù)為獲取地址函數(shù),由于本項(xiàng)目內(nèi)對(duì)于圖像、OSD的地址 都是由開發(fā)人員事先分配的,所以可以通過該函數(shù)直接獲取。 GetFBAdd(AT—MCI— , &dwMCl Address);電視機(jī)MCU設(shè)置獲取定標(biāo)器處理前的信息數(shù)據(jù)命令 該命令由發(fā)送的命令數(shù)據(jù)決定,發(fā)送命令數(shù)據(jù)0x50,0x53,PSCMD—LENGTH,0x00,0x00其中第4個(gè)數(shù)據(jù)0x00決定了本次獲取 的是定標(biāo)器(Scaler)處理前的圖像數(shù)據(jù)。電視機(jī)MCU將當(dāng)前畫面信息與和畫面格式信息設(shè)置為圖像文件,傳送給 計(jì)算機(jī)命令該命令由發(fā)送的命令數(shù)據(jù)決定,發(fā)送命令數(shù)據(jù) 0x50,0x53,PSCMD—LENGTH,0x00,0x00其中第5個(gè)數(shù)據(jù)0x00決定了本次獲取 的是圖像文件。電視機(jī)MCU操作當(dāng)前屏幕退出圖像靜止?fàn)顟B(tài)命令再次調(diào)用畫面靜止函數(shù)FreezePicture(_WT—MP_, FALSE); 計(jì)算機(jī)接受信息數(shù)據(jù),存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器命令 void CPrintScreenDlg::OnOnCommMSCOMMRecieveOVARIANT variant—inp; COleSafeArray safearray—inp;long i = 0; long len;char rxdata[1024]; if(!m—bBitMapData)switch (m一mscom.GetCommEvent())〃表示接收緩沖區(qū)內(nèi)有字符variant—inp = m—mscom.GetInput(); safearray—inp = variant—inp; len = safearray一inp.GetOneDimSize(》 for (i = 0; i < len; i++)safearray—inp.GetElement(&i, &rxdata[i]);rxdata[i] = '\0';strcat((char * )m_ucArray,rxdata);if(strlen((char *)m—ucArray) > 1024 || m一bTimeout)AppendFile((char *)m_ucArray,strlen((char *)m—ucArray));〃
如果超過1024字節(jié)或接收超時(shí)則存儲(chǔ)m一ucArray[O] = '\0';break; default: break;............//其他語句AppendFile函數(shù)的原型為void CPrintScreenDlg::AppendFile(char *str,int len)if((m—fpFile = fopen(m—szFileName,"ab")))〃以二進(jìn)制打開文件格式,且為添加模式{fwrite(str,l,len,m—fpFile);〃將str寫入文件 fclose(m—fpFile);else{ AfxMessageBox("存儲(chǔ)文件失敗");實(shí)施例2,硬件聯(lián)接、程序語言實(shí)現(xiàn)與實(shí)施例l相同。電視機(jī)MCU設(shè)置獲取定標(biāo)器處理后的信息數(shù)據(jù)命令計(jì)算機(jī)端只需要將 發(fā)送的命令數(shù)據(jù)的第4字節(jié)改為0x01,則表明獲取定標(biāo)器處理后的信息數(shù)據(jù)。電視機(jī)MCU將當(dāng)前畫面信息與和畫面格式信息設(shè)置為圖像文件相關(guān)重要 數(shù)據(jù),傳送給計(jì)算機(jī)命令Void SendBitmapData()SendBitmap(—BM一WIDTH一); SendBitmap(BM—HEIGHT—); SendBitmap(一BM一DATA一);SendBitmap函數(shù)的原型如下 void SendBitmap(BYTE iType)int iTemp; int i= 0;int iSendByte = 0;BOOL bEnd;/Z標(biāo)志發(fā)送是否結(jié)束〃發(fā)送格式:前3字節(jié)0x50 0x53 0x01為發(fā)送數(shù)據(jù)頭〃第4字節(jié)和第5字節(jié)表明本次發(fā)送的長度,默認(rèn)為1024
〃第6字節(jié)為發(fā)送類型 〃后面為有效數(shù)據(jù)unsigned char strHead[5] = {0x50,0x53,0x01 ,PACKET—LEN 8,PACKET一LEN & OxFF};unsigned char strSend[PACKET—LEN];〃這里定義包長長度為1024strcpy((char*)strSend,(char*)strHead);switch(iType)case BM—WIDTH—:strSend[3] = OxOO;〃更改發(fā)送長度為8字節(jié) strSend[4] = 0x08;strSend[5] = —BM—WIDTH—;〃發(fā)送類型為Width; iTemp = g—BMSt腦t.wWidth; strSend[6] = iTemp》8; strSend[7] = iTemp&OxFF; printf((diar* )strSend);〃發(fā)送break;case 一BM—HEIGHT一strSend[3] = OxO(V/更改發(fā)送長度為8字節(jié) strSend[4] = 0x08;
strSend[5] = BMHEIGHT;〃發(fā)送類型HEIGHT; iTemp = g—BMS加ct.wHeight; strSend問=iTemp》8; strSend[7] = iTemp&0xFF; printf((cha一)strSend);〃發(fā)送break;case BM—DATA—:strSend[5] = —BM—DATA—;//發(fā)送類型為圖像數(shù)據(jù),for(i = 0; i < g—8^^1"11比\¥1^1經(jīng)111^++)〃每次發(fā)送1行,l個(gè)像素圖 像有3個(gè)字節(jié)的數(shù)據(jù)iSendByte = 0;while((PACKET—LEN - HEAD—LEN - 1) < (g—BMStmct,wWi她承3 -iSendByte))〃HEADLENGTH定義為6stmcpy((char*)strSend+HEAD—LEN,(char *)g—BMStmct.pStartAddr + iSendByte,PACKET—LEN - HEAD—LEN - 1); strSend[PACKET一LEN - 1] = '\0'; printf((char"strSend);〃發(fā)送iSendByte += 3* (PACKET LEN - HEAD—LEN - 1);
strncpy((char*)strSend+ HEAD—LEN,(char )g—BMStructpStartAddr + iSendByte,g—BMStruct.wWidth*3 - iSendByte); strSend[HEAD—LEN + g—BMStruct.wWidth*3 - iSendByte] = '\0'; printf((char"strSend);〃發(fā)送〃發(fā)送結(jié)束標(biāo)志strSend[3] = 0x00;strSend[4] = 0x06;strSend[5] = —BM—DATA—END;printf((char*)strSend);break;void SendBitmap(BYTE iType)int iTemp; int i = 0;int iSendByte = 0;char *pStartAddress = NULL;WORD dwMC2Address = 0;
BOOL 6£1^;//標(biāo)志發(fā)送是否結(jié)束〃發(fā)送格式:前3字節(jié)0x50 0x53 0x01為發(fā)送數(shù)據(jù)頭〃第4字節(jié)和第5字節(jié)表明本次發(fā)送的長度,默認(rèn)為1024〃第6字節(jié)為發(fā)送類型〃后面為有效數(shù)據(jù)unsigned char strHead[5] ={0x50,0x53,0x01 ,PACKET—LEN >> 8,PACKET—LEN & OxFF};unsigned char strSend[PACKET—LEN];〃這里定義包長長度為1024strcpy((char*)strSend,(char*)strHead);switch(iType)case —BM—WIDTH—:strSend[3] = 0x00;〃更改發(fā)送長度為8字節(jié) strSendW = 0x08;strSend[5] = —BM—WIDTH一;〃發(fā)送類型為Width; iTemp = g一BMStruct.wWidth; strSend[6] = iTemp》8; strSend[7] = iTemp&OxFF; strSend[8] = 0x00;printf((char氺)strSend);〃發(fā)送break;case —BM—HEIGHT—:strSend[3] = 0x00;〃更改發(fā)送長度為8字節(jié) strSend[4] = 0x08;strSend[5] = —BM—HEIGHT—;〃發(fā)送類型HEIGHT;iTemp = g—BMStruct.wHeight;strSend問=iTemp》8;strSend[7] = iTemp&OxFF;strSend[8] = 0x00;printf((char"strSend);〃發(fā)送break;case —BM—DATA—:strSend[5] = —BM一DATA—;//發(fā)送類型為圖像數(shù)據(jù)GetFBAddr(GetFBAddr(—AT—MC2— , &(1\\^102八4&638));〃獲取處理后 的圖像的首地址pStartAddress = (char"dwMC2 Address;pStartAddress += g—BMStruct.wVstart* (g—BMStruct. wHStart+g—BMStruct wHWidth)* 3;
for(i = 0; i < g—BMStruct.wHeight;i++)〃每次發(fā)送1行,l個(gè)像素圖像有 3個(gè)字節(jié)的數(shù)據(jù)iSendByte = 0;pStartAddress += g—BMStruct.wHStart * 3;while((PACKET—LEN - HEAD—LEN - 1) < (g—BMStructwWidth*3 -iSendByte))〃HEADJLENGTH定義為6stmcpy((char * )strSend+ HEAD—LEN,pStartAddr + iSendByte,PACKET LEN - HEAD—LEN隱1);strSend[PACKET—LEN - 1] = '\0'; printf((char"strSend);〃發(fā)送iSendByte +=3* (PACKET—LEN - HEAD—LEN - 1);strncpy((char * )strSend + HEAD—LEN,pStartAddr + iSendByte,g一BMStruct,wWidth承3 - iSendByte); strSend[HEAD—LEN + g—BMStruct.wWidth*3扁iSendByte] = '\0'; printf((char承)strSend);〃發(fā)送 pStartAddress += g一BMStruct.wHWidth *3;〃發(fā)送結(jié)束標(biāo)志 strSend[3] = 0x00;
strSend[4] = 0x06;strSend[5] = —BM—DATA—END—;strSend[6] = 0x00;printf((char*)strSend);break;本發(fā)明的方法可以直接將圖片存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)設(shè)備中,使電視端節(jié)省了存 儲(chǔ)空間,當(dāng)電視端采用發(fā)送圖像數(shù)據(jù)到計(jì)算機(jī)時(shí),還可以節(jié)省電視端的處理時(shí) 間。本發(fā)明的方法即可以在電視不帶有外部存儲(chǔ)設(shè)備接口時(shí),使開發(fā)人員或其 他技術(shù)人員方便實(shí)現(xiàn)對(duì)電視畫面的截取。該技術(shù)可以用于電視開發(fā)人員或其他 技術(shù)人員在開發(fā)過程中對(duì)電視畫面的截取。
權(quán)利要求
1.一種采用計(jì)算機(jī)截取電視屏幕的方法,包括以下步驟一、將計(jì)算機(jī)與電視機(jī)MCU串口聯(lián)接;二、計(jì)算機(jī)向電視機(jī)MCU發(fā)送截取屏幕的命令;三、電視機(jī)MCU進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù)據(jù)發(fā)送到計(jì)算機(jī);四、計(jì)算機(jī)將信息數(shù)據(jù)存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器。
2. 根據(jù)權(quán)利要求1所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述 信息數(shù)據(jù)是電視機(jī)當(dāng)前畫面信息與畫面格式信息,或圖片數(shù)據(jù)文件。
3. 根據(jù)權(quán)利要求2所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述電視機(jī)MCU進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù)據(jù)發(fā)送到計(jì)算機(jī)的過程包括以下步驟 一、電視機(jī)MCU命令操作當(dāng)前屏幕的圖像靜止;二、電視機(jī)MCU獲取靜止后當(dāng)前圖像存儲(chǔ)空間首地址、行場起始位置和行場寬高 的信息;三、電視機(jī)MCU設(shè)置獲取定標(biāo)器處理前的信息數(shù)據(jù),或設(shè)置獲取 定標(biāo)器處理后的信息數(shù)據(jù);四、電視機(jī)MCU根據(jù)計(jì)算機(jī)發(fā)出的指令,判斷 是傳送圖像文件,則將當(dāng)前畫面信息與畫面格式信息設(shè)置為圖像文件,傳送 給計(jì)算機(jī)。
4. 根據(jù)權(quán)利要求3所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述 電視機(jī)MCU根據(jù)計(jì)算機(jī)發(fā)出的指令,判斷是傳送圖像數(shù)據(jù),則將當(dāng)前畫面 信息與畫面格式信息設(shè)置為圖像文件相關(guān)重要數(shù)據(jù),傳送給計(jì)算機(jī)。
5. 根據(jù)權(quán)利要求4所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述 計(jì)算機(jī)接收到畫面信息與畫面格式信息后再將該信息數(shù)據(jù)轉(zhuǎn)化為圖片,存儲(chǔ) 到計(jì)算機(jī)的存儲(chǔ)器。
6. 根據(jù)權(quán)利要求3所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述圖像文件是指24位位圖。
7. 根據(jù)權(quán)利要求5所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述 圖像文件相關(guān)重要數(shù)據(jù)是指圖像水平方向?qū)挾群蛨D像垂直方向高度。
8. 根據(jù)權(quán)利要求6或7所述的采用計(jì)算機(jī)截取電視屏幕的方法,其特征在于所述電視機(jī)MCU發(fā)送信息數(shù)據(jù)完畢,命令操作當(dāng)前屏幕退出圖像靜止?fàn)顟B(tài)。
全文摘要
本發(fā)明公開了一種采用計(jì)算機(jī)截取電視屏幕的方法,要解決的技術(shù)問題是方便電視開發(fā)人員或其他技術(shù)人員截取電視屏幕畫面。本發(fā)明的方法包括以下步驟將計(jì)算機(jī)與電視機(jī)MCU串口聯(lián)接;計(jì)算機(jī)向電視機(jī)MCU發(fā)送截取屏幕的命令;電視機(jī)MCU進(jìn)行截屏操作獲得信息數(shù)據(jù),再將信息數(shù)據(jù)發(fā)送到計(jì)算機(jī);計(jì)算機(jī)將信息數(shù)據(jù)存儲(chǔ)到計(jì)算機(jī)的存儲(chǔ)器。本發(fā)明與現(xiàn)有技術(shù)相比,將計(jì)算機(jī)與電視機(jī)MCU聯(lián)接,計(jì)算機(jī)向電視機(jī)MCU發(fā)出截取命令,電視機(jī)MCU通過其串口將截取到的畫面數(shù)據(jù)傳輸?shù)接?jì)算機(jī)并存儲(chǔ)在計(jì)算機(jī)的存儲(chǔ)器,可以在電視機(jī)不帶有外部存儲(chǔ)設(shè)備接口時(shí),使開發(fā)人員或其他技術(shù)人員方便實(shí)現(xiàn)對(duì)電視畫面的截取。
文檔編號(hào)H04N5/00GK101212553SQ20071012551
公開日2008年7月2日 申請(qǐng)日期2007年12月25日 優(yōu)先權(quán)日2007年12月25日
發(fā)明者黃治陽 申請(qǐng)人:康佳集團(tuán)股份有限公司