欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

C++編程使用QT5SDK錄制屏幕并顯示

在項(xiàng)目中,我們有要錄制屏幕的需求,錄制屏幕有多種方法,可以基于windows api的BitBlt 、ffmpeg的AVDevice、directx 和QT,本文講解基于QT5的抓屏。QT相對(duì)于其他幾種抓屏方式優(yōu)勢(shì)是跨平臺(tái)做的比較好,接口簡(jiǎn)單,劣勢(shì)相對(duì)于directx抓屏消耗大一些,但directx只能是windows。經(jīng)過(guò)測(cè)試directx抓屏速度最快,其他接口速度基本一致。

創(chuàng)新互聯(lián)長(zhǎng)期為上千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為襄汾企業(yè)提供專業(yè)的網(wǎng)站制作、成都網(wǎng)站制作,襄汾網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

在我的電腦上qt 1080P屏幕抓屏消耗60~80毫秒,720p消耗30~50,也就是說(shuō)如果抓屏1080我一秒最多錄制10幀。這個(gè)性能要算好,不然會(huì)造成阻塞。

  • 先獲取主屏幕然后抓屏存到QPixmap

//獲取主屏幕

QScreen *scr = QGuiApplication::primaryScreen();

//抓屏

QPixmap pix= scr->grabWindow(QApplication::desktop()->winId());

  • 將QPixmap轉(zhuǎn)為可以直接訪問(wèn)rgb數(shù)據(jù)的QImage

就兩行代碼非常簡(jiǎn)單,抓屏后數(shù)據(jù)存放在pix中,將QPixmap轉(zhuǎn)換為QImage就可以取到rgb數(shù)據(jù)了。

QImage img= pix.toImage();

uchar *date = img.bits();

  • QImage格式分析

取到截屏數(shù)據(jù)后,我們就要進(jìn)行編碼壓縮,編碼可以使用ffmpeg,需要確定取到的數(shù)據(jù)格式,可以通過(guò)img.format成員獲取,我這邊獲取的是Format_RGB32。另外要注意QT中的圖像數(shù)據(jù)不一定每個(gè)像素連續(xù)存儲(chǔ),每一行會(huì)以4對(duì)齊,最簡(jiǎn)單解決方案,就是要保證你圖像的寬度是4的倍數(shù)。如果無(wú)法保證,可以通過(guò) img.bytesPerLine() 獲取每一行的字節(jié)數(shù)。

  • 如果想要將桌面繪制到QWidget中測(cè)試,重載paintEvent函數(shù)

void QTScreen::paintEvent(QPaintEvent *event)

{

QScreen *scr = QGuiApplication::primaryScreen();

//抓屏

QPixmap pix= scr->grabWindow(QApplication::desktop()->winId());

QImage img= pix.toImage();

QPainter p;

p.begin(this);

p.drawImage(QPoint(0, 0), qi);

p.end();

}

更多的資料也可以關(guān)注我51CTO上的視頻課程

夏老師的課堂 http://edu.51cto.com/lecturer/12016059.html

C++跨平臺(tái)開(kāi)發(fā)和音視頻技術(shù)實(shí)戰(zhàn)主題套餐

C++實(shí)戰(zhàn)FFmpeg音視頻編碼實(shí)戰(zhàn)屏幕錄像機(jī)視頻課程-基于QT5和ffmpeg sdk

http://edu.51cto.com/course/10359.html

C++編程 使用QT5 SDK錄制屏幕并顯示

分享名稱:C++編程使用QT5SDK錄制屏幕并顯示
本文網(wǎng)址:http://aaarwkj.com/article16/ihhhgg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、動(dòng)態(tài)網(wǎng)站、企業(yè)建站、移動(dòng)網(wǎng)站建設(shè)網(wǎng)站建設(shè)、小程序開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)
91成人国产综合久久精品| 亚洲日本高清一二三区| 在线蜜臀av中文字幕| 亚洲综合福利视频网站| 成人av在线天堂一区二区三区| 国产91黑丝视频在线观看| 中文字幕熟妇人妻av在线| 国产欧美成人综合色就色| 精品中文人妻中文字幕| 日本一区中文字幕怎么用| 欧美日韩一区二区黄色| 中文字幕人妻丝袜二区| 精品人妻少妇免费久久蜜臀av| 精品欧美日韩国产一区| 国产原创剧情免费观看av| 91在线国产手机视频| 日韩精品中文字幕人妻系列| 欧美一区二区三区亚洲| 欧美日韩精品福利一区二区| 国内精品人妻在线中文字幕| 免费人成视频在线观看不卡| 美女在线观看av少妇| 黄色成人av在线网站| 免费女同一区二区三区| 国产精品男人在线播放| 亚洲精品在线免费av| 国产精品成人免费久久黄| 天堂在线av免费观看| 亚洲欧美日韩一区91| 五月天亚洲激情综合av| 在线一区二区三区成人观看| 韩日男人女人性生活视频| 亚洲成人日韩国产欧美| 亚洲一区二区三区久久伊人| 免费观看毛片一区二区三区| 亚洲av成人在线观看| 视频一区视频二区在线| 亚洲黄色av一区二区三区| 免费爱爱视频在线观看| 色婷婷精品二区久久蜜臀av| 不卡视频一区二区日韩|