国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

詳解 QT 顯示視頻 Linux下 Qt 和 Xv實現

移動開發
無論是Qt還是Xv,他們都是基于一個顯示架構的,那就是X架構,Qt是對Xlib進行的更高層及的封裝,而Xv則是對Xlib功能上 的一個擴展,先來看內容。

 

QT 顯示視頻 linuxQt Xv 是本文要介紹的內容,先來對linux下的 Qt Xv來做個總結,然后加了一段代碼,供大家參考!先來看內容。

采用Qt+Xv實現視頻顯示的原因是因為Xv可以使用顯卡進行顯示加速;比如,對于視頻大小的縮放,如果交給cpu來完成這項操作,那cpu的計算量是非常大的,一般的cpu基本上是滿負荷運轉了,所以,選用Xv來實現視頻縮放和顯示,是一個非常明智的選擇;這里我先簡單說一下,為什么Qt可以和Xv和在一起來顯示視頻幀呢?它的原理又是什么呢?

首先,我們要知道,無論是Qt還是Xv,他們都是基于一個顯示架構的,那就是X架構,Qt是對Xlib進行的更高層及的封裝,而Xv則是對Xlib功能上 的一個擴展,旨在盡可能的挖掘顯卡的運算能力,而實現更為強大的功能;這也是為什么兩者可以結合在一起顯示視頻的理論和實際基礎了;然而,又由于,兩者所 在的層次不同,而且目的也不同,那么如何將這兩者結合起來,就成為了當前的最大的問題了;

通過在網上搜索,可以知道Xv可以直接顯示YUV數據,并且很容易實現視頻縮放,而且這些都已經經過硬件加速優化過了;這也正是我最需要的!

我們直接開始介紹Xv中的顯示圖片的函數--XvPutImage,和Xlib提供的顯示圖片函數XPutImage只相差一個字母,但是這個函數功能確強大了許多;

此函數的函數原型為:

  1. XvPutImage(Display *, XvPortID, Window, GC *, XvImage *, int src_x, int src_y, int src_w, int src_h, int dst_x, int dst_y, int dst_w, int dst_h); 

針對此函數,我們來看怎么使用此函數,會用了此函數,就可以顯示YUV數據了;

此函數需要結合一個QWidget才能夠顯示圖片;

第一個參數,可以通過QWidget的x11Display()函數得到;

第二個,可以通過XvQueryAdaptors得到;

第三個,通過QWidget的winId()得到;

第四個,通過XvCreateImage得到;

剩下的幾個坐標函數,我就不解釋了,光看參數名稱,就應該猜的出來;

這里需要注意的一點是,在使用XvCreateImage生成了新的XvImage時,此函數的第四個參數可以直接賦予AVFrame的data[0]指 針,這樣,就把ffmpeg的數據幀同要顯示的XvImage聯系到了一起,并且,這個AVFrame中的data[0]數據為YUV數據,完全符合要 求,可以直接刷新顯示了;

總的來說,大致就是這樣子了,以后有什么疑問,還會對此文檔進行詳細擴充;爭取寫成教程;

采用Xv進行顯示也是存在風險的,一旦當前系統的驅動對Xv支持不好,或者干脆不支持,那么就不能顯示視頻了。

QT 顯示視頻代碼:

  1.  
  2. QPainter has a method called drawImage. You can do something like the   
  3.  
  4. following in a subclass of QWidget:   
  5.  
  6. void VideoWidget::paintEvent()   
  7. {   
  8. //Get   
  9. the current frame and size data...   
  10. //Passing QImage   
  11. QImage frame(frameDataUCharPtr, frameWidth, frameHeight.  
  12. QImage::Format_RBG32 );   
  13. QPainter painter(this);   
  14. painter.drawImage(rect(), frame);   
  15. }   
  16. Under Qtopia   
  17. you can use QDirectPainter to write directly to framebuffer   
  18. memory and get   
  19. some faster access for drawing frames. You will have to   
  20. do the color conversions yourself to get   
  21. the frame into your   
  22. framebuffer's color model.   
  23. --Justin  

小結:關于詳解 QT 顯示視頻 linux Qt Xv 實現 的內容介紹到這里,希望本文對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-06-24 13:27:13

Ubuntu QT SDK

2011-06-29 10:18:20

LINUX QT ARM

2011-06-22 17:36:50

QT Linux 串口

2011-06-08 14:06:42

linux SDK Qt

2011-04-02 09:17:38

2011-06-30 17:51:17

QT 元類型 線程

2011-06-24 09:01:20

Qt QLibrary dll

2011-06-24 17:05:07

QT QT 4.7.3 windows

2011-06-24 10:05:51

QT 對象 父對象

2011-07-05 11:10:23

Linux Qt 移植

2011-07-05 10:55:14

Linux Qt 移植

2011-06-28 15:18:45

Qt 單例模式

2011-06-28 13:38:15

Arm linux QT

2011-07-01 12:52:50

Ubuntu Qt wxWidgets

2011-06-23 13:38:27

QT 元對象 信號

2011-06-23 14:05:32

Qt 事件機制

2011-06-21 17:01:44

Qt 靜態 編譯

2011-06-16 10:09:25

QT Windows DLL

2011-06-28 15:01:01

Qt PIMPL

2011-06-20 17:33:58

Qt MeegoTouch Maemo
點贊
收藏

51CTO技術棧公眾號

亚洲一区二区在线播放相泽 | 欧美aaaaaaaa| 嫩草av久久伊人妇女超级a| 午夜爽爽爽男女免费观看影院| 美女张开让男人捅| 999精品视频在线观看| 亚洲调教视频在线观看| 一级中文字幕一区二区| 国产精品爽爽ⅴa在线观看| www.久久久精品| 精品国产午夜| 欧美一区二区三区日韩视频| 乱一区二区三区在线播放| 欧美一区二区三区在线观看免费| 日韩国产在线观看一区| 欧美成人一区二区三区在线观看| 免费亚洲一区二区| 一区二区三区性视频| 国产厕拍一区| 成人免费视频免费观看| 久久99精品久久久久久久久久| 成人免费av| 日韩久久精品电影| aa视频在线观看| 精品1区2区在线观看| 爱情岛亚洲播放路线| 亚洲精品动漫100p| www.男人天堂网| 狠狠做六月爱婷婷综合aⅴ | 9i在线看片成人免费| 97久久伊人激情网| 久久五月精品| 狠狠色狠狠色综合日日五| 亚洲午夜久久久影院伊人| 国产主播一区| 久久免费精品视频| 亚洲黄网站黄| 色老头一区二区三区| 日本.亚洲电影| 欧美激情三级免费| 成人影视亚洲图片在线| 精品伦精品一区二区三区视频| 久久综合九色综合欧美狠狠| 亚洲综合av一区| 91麻豆6部合集magnet| 男女羞羞视频教学| 在线免费观看日韩欧美| 97人澡人人添人人爽欧美| 亚洲欧美精品中文字幕在线| 亚洲免费看片| 国产精品亚洲网站| 视频一区二区国产| 国产精品无码av在线播放| 中文在线一区二区| 欧洲亚洲精品视频| 亚洲欧洲国产一区| 国产永久精品大片wwwapp| 国产精品国产精品国产专区不卡| 免费观看久久久4p| 三上悠亚av一区二区三区| 色伊人久久综合中文字幕| 182在线播放| 欧洲亚洲妇女av| 爽爽淫人综合网网站| 色婷婷综合久久久久中文字幕| 日韩欧美国产黄色| av有声小说一区二区三区| 日韩美女视频免费看| 视频一区二区国产| 中文av一区二区三区| 欧美日韩aaa| 免费一级欧美片在线观看网站| 99精彩视频| 91老师国产黑色丝袜在线| 男操女在线观看| 中文字幕日韩av| 在线观看国产精品入口| 女女百合国产免费网站| 亚洲一区二区三区中文字幕| 91精选在线| 3344国产精品免费看| 毛片av一区二区| 日本aⅴ中文| 日韩亚洲欧美成人| 国产美女精品| 欧美一区二区| 欧美日韩国产另类一区| 国产经典一区| 国产亚洲精品久久飘花| 久久久久9999亚洲精品| 超碰在线caoporn| 欧美一二三视频| 国产在线播精品第三| 久久久久久久久亚洲精品| 久久国产精品久久久久| 九九热线视频只有这里最精品| 3344国产精品免费看| 噜噜噜91成人网| 意大利激情丛林无删减版dvd| 久久久精品日本| 久久人人精品| 亚洲人成电影| 2021久久精品国产99国产精品| 粉嫩嫩av羞羞动漫久久久| 麻豆av免费在线观看| 欧美一级在线亚洲天堂| 91日韩精品一区| 成人在线免费| 激情网站五月天| 粉嫩av一区二区三区粉嫩| 秋霞毛片久久久久久久久| 亚洲综合另类小说| baoyu135国产精品免费| 精品久久久久久久久久中文字幕| 欧美tk丨vk视频| 中文字幕av资源一区| 在线中文字幕电影| jizz18欧美| 蜜芽tv福利在线视频| 亚洲色图在线播放| 日韩一级成人av| 欧美亚洲日本一区二区三区| 91精品久久久久久久99蜜桃| 国产精品成人一区二区不卡| 国产主播色在线| 亚洲91av视频| 久久九九久久九九| 日本精品视频| 蜜臀久久99精品久久久酒店新书 | 成人av免费电影| 第一福利永久视频精品| 亚洲自拍小视频免费观看| 欧美日韩亚洲精品一区二区三区| 韩国v欧美v日本v亚洲| 丁香桃色午夜亚洲一区二区三区| 色狠狠一区二区三区| 可以在线看的av网站| 欧美mv和日韩mv的网站| 老司机午夜精品视频| 日韩在线三区| 亚洲第一在线视频| 美女视频一区二区| 电影一区二区三区| 九九热只有这里有精品| 俺去啦;欧美日韩| 久久视频一区二区| jizz久久久久久| 亚洲中文字幕无码专区| 日韩中文字幕在线| 国产亚洲欧美在线| 亚洲人亚洲人色久| 日韩亚洲视频在线观看| 国产亚洲一区在线播放| 91精品婷婷国产综合久久| 青青草国产精品亚洲专区无| 亚洲福利影院| 免费看污污网站| 国产精品久久精品| 欧美精品日韩一本| 成人性视频网站| 色吊丝一区二区| 99免在线观看免费视频高清| 先锋在线资源一区二区三区| 中文字幕亚洲综合久久| 最新日韩在线视频| 国产在线不卡| 国产精品美女午夜爽爽| 日本1区2区3区中文字幕| 你懂的网址一区二区三区| 中文字幕欧美日韩在线| 自拍偷拍亚洲激情| 久久激情综合| 91精品国产自产在线丝袜啪| 午夜视频在线免费| 日韩精品手机在线观看| 欧美专区福利在线| 欧美一级黄色大片| 中文字幕高清一区| 一道本一区二区| 一区二区中文字幕在线观看| 黑人与亚洲人色ⅹvideos| 国产日韩欧美精品在线观看| 国产伦精品免费视频| 亚洲美女中文字幕| 图片区小说区区亚洲影院| 国内一区二区视频| 日韩在线视频精品| av一区在线播放| 韩国三级av在线免费观看| 国产高清av在线播放| 国产一区红桃视频| 在线观看中文字幕亚洲| 色综合久久久久综合| 99国产精品久久久| 9国产精品视频| 中文字幕中文字幕精品| 中文字幕在线看片| fc2ppv完全颜出在线播放| 92国产在线视频| 自拍欧美日韩|