自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解 QT 中嵌入SDL教程

移動(dòng)開發(fā)
本文介紹的是QT 中嵌入SDL教程,環(huán)境是在Windows和Linux下完成的,先來(lái)看內(nèi)容。

QT 中嵌入SDL教程是本文要介紹的內(nèi)容,前段時(shí)間在做一個(gè)音視頻編碼板卡的PC跨平臺(tái)程序,使用QT框架,其中有塊功能是往QT里嵌入SDL,來(lái)播放YUV格式幀數(shù)據(jù),現(xiàn)在已經(jīng)在windows和linux下完成。

我瀏覽論壇的時(shí)候,發(fā)現(xiàn)好多同僚在做我以前的準(zhǔn)備工作。在這里我把我的一些經(jīng)驗(yàn)寫出來(lái),希望對(duì)這些同僚有點(diǎn)幫助,當(dāng)然可能有有一些錯(cuò)誤,請(qǐng)指出來(lái),大家一起進(jìn)步。

一.yay-20060421-2.zip這個(gè)包是一個(gè)使用SDL的YUV的播放器源代碼,在Linux下可用。

二.至于往QT里嵌入SDL,你可以這樣

這個(gè)是.pro文件部分代碼:

  1. unix {   
  2. -lSDL \  
  3. -lSDLmain   
  4. }  
  5. win32 {   
  6. LIBS += -L./lib/Win32Lib \  
  7. -lSDL \  
  8. -lSDLmain   

Windows下的SDL庫(kù)文件有3個(gè)sdl.lib, SDLmain.lib 和sdl.dll。將sdl.lib,SDLmain.lib 放在./lib/Win32Lib目錄下,講sdl.dll跟你的執(zhí)行文件放在一起。

Linux下一般都為幫你安裝好SDL,如果沒(méi)安裝還沒(méi)關(guān)系,下一個(gè),配置下環(huán)境變量。Linux下的SDL靜態(tài)庫(kù)為libSDL.a和libSDLmain.a。

三.SDL實(shí)現(xiàn)代碼,參考yay-20060421-2.zip 里面的代碼就行。往QT里嵌入SDL的代碼其實(shí)很惡心,也最重要!在初始化的時(shí)候加上這么一段代碼:

  1. /*set sdl env*/  
  2. char variable[64];  
  3. #ifdef Q_OS_WIN  
  4. sprintf(variable, "SDL_WINDOWID=0x%lx", frame_pre->winId());  
  5. #else  
  6. sprintf(variable, "SDL_WINDOWID=0x%lx", this->winId());  
  7. #endif  
  8. putenv(variable); 

QT的窗口句柄的winId值,賦給SDL的環(huán)境變量就可以了,但這在windows下和linux下有點(diǎn)區(qū)別,frame_pre為MainWindow下的一個(gè)frame。你不能將MainWindow的句柄賦給SDL,但在Linux下,你又必須把MainWindow的句柄賦給SDL,不能把frame的窗口句柄賦給SDL,具體是為什么,我沒(méi)去研究,可能是跟windowslinux的窗口機(jī)制不一樣有關(guān),哪為知道為什么的請(qǐng)告訴我為什么。

小結(jié):QT 中嵌入SDL教程,更多內(nèi)容請(qǐng)參考編輯推薦,最后希望本文對(duì)你有幫助!

責(zé)任編輯:zhaolei 來(lái)源: CSDN博客
相關(guān)推薦

2011-06-24 09:39:05

2011-09-01 15:51:53

Qt插件VS 2010

2011-06-24 10:54:34

Qt Mysql

2011-09-07 16:28:46

QT WidgetQWidget

2011-09-01 16:01:25

Qt插件

2011-06-24 17:05:07

QT QT 4.7.3 windows

2011-06-14 11:48:38

Webkit QT

2011-07-04 17:26:00

Qt SQLite

2011-08-29 10:59:47

QtWebkit嵌入式

2011-06-29 17:20:20

Qt 內(nèi)存 QOBJECT

2011-06-28 15:18:45

Qt 單例模式

2011-06-24 14:17:58

Qt 容器類 QVector

2011-06-24 09:22:54

QT .pro文件 qmake

2011-06-24 15:16:33

Qt 庫(kù) 插件

2011-06-30 10:22:48

QT Graphics View

2011-08-29 14:59:26

QtEvent事件

2011-07-04 17:45:45

Qt Sqlite 數(shù)據(jù)庫(kù)

2011-06-30 10:09:26

QT Graphics View

2011-08-30 14:25:06

QT數(shù)據(jù)庫(kù)

2011-06-30 10:36:07

QT Graphics View
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)