<strike id="kiyse"></strike>
  • <tr id="kiyse"></tr>
  • <strike id="kiyse"></strike><samp id="kiyse"><tbody id="kiyse"></tbody></samp>
    <strike id="kiyse"><s id="kiyse"></s></strike>
    <tr id="kiyse"></tr>
    <noframes id="kiyse"><code id="kiyse"></code></noframes>
    <th id="kiyse"></th>
    <samp id="kiyse"></samp>
  • <th id="kiyse"><s id="kiyse"></s></th>
  • ESM6802雙屏顯示(LVDS+HDMI)設(shè)置

     2017-1-26     作者:廖光澤         
    文章標(biāo)簽:ESM6802彩色顯示

    1、ESM6802顯示簡介


      ESM6802根據(jù)顯示接口的不同分為兩種版本,一種支持RGB顯示接口,主要用于低分辨率顯示;另外一種同時支持LVDS和HDMI顯示接口,可以單獨使用任意接口或者搭建LVDS+HDMI的雙屏顯示系統(tǒng)。用戶購買時可根據(jù)自己的需要選擇支持RGB的單屏顯示型號或者支持LVDS+HDMI的雙屏顯示型號。


      雙屏顯示設(shè)置包括:

      ● 雙屏運行不同的程序(Qt5程序)

      ● 雙屏運行相同的程序,程序自身負(fù)責(zé)同步

      ● 雙屏播放不同的視頻

      ● 雙屏同步播放相同的視頻

      ● 一個屏幕運行程序,一個屏幕播放視頻

      ● 一個屏幕分塊顯示多個視頻(單屏/雙屏通用)


      下面先簡單介紹一下顯示接口的設(shè)置。


      設(shè)置顯示接口需要設(shè)置U-Boot,我們已有默認(rèn)設(shè)置可以滿足大部分用戶需求,目前我們的出廠設(shè)置是將LCD或者LVDS屏幕作為主屏(mxcfb0),HDMI屏幕作為附屏(mxcfb1),且HDMI屏幕設(shè)置為1920x1080M@60,if=RGB24,由于HDMI屏幕顯示協(xié)議中有一個協(xié)商的部分,HDMI顯示輸出會根據(jù)我們的設(shè)備以及顯示屏幕支持的分辨率進(jìn)行選擇,使用雙方都支持的最大分辨率,所以用戶一般不需要修改此配置。而修改LCD或者LVDS的配置可以用過我們提供的修改開機(jī)畫面的命令flash_opt燒寫正確分辨率的bmp圖片,我們的系統(tǒng)就會在下一次開機(jī)自動修改LCD/LVDS屏幕的分辨率設(shè)置了。如此設(shè)置可以方便用戶進(jìn)行快速修改屏幕設(shè)置。


      對于需要自行修改設(shè)置的用戶,下面對設(shè)置方法進(jìn)行簡單介紹。開機(jī)調(diào)試串口顯示Hit any key to stop autoboot時按下任意鍵進(jìn)入U-Boot環(huán)境,輸入命令 printenv video 查看默認(rèn)設(shè)置:

      => printenv video

      video=video=mxcfb0:dev=ldb,800x600M@60,if=RGB666 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24


      輸入命令setenv video video=設(shè)置 來設(shè)置顯示輸出,如:

      => setenv video video=mxcfb0:dev=ldb,800x600M@60,if=RGB666 video=mxcfb1:dev=hdmi,800x600M@60,if=RGB24


      設(shè)置的格式為($數(shù)字表示變量,需要根據(jù)實際情況配置):

      video=mxcfb$1:dev=$2,$3x$4M@$5,if=RGB$6

      ● $1可以取值0或1,單屏顯示只需要設(shè)置為0, 雙屏顯示時0為主屏,會輸出開機(jī)畫面,1屏默認(rèn)開機(jī)沒有開啟,輸出顯示時會自動打開。

      ● $2表示輸出設(shè)備,可選值為lcd—RGB屏,ldb--LVDS屏,hdmi--HDMI屏。

      ● $3和$4表示屏幕分辨率。

      ● $5為屏幕刷新頻率。

      ● $6為屏幕輸出接口,常用接口為RGB565、RGB666、RGB24。


      用戶根據(jù)自己的實際情況設(shè)置此參數(shù)后,運行命令saveenv保存,然后運行命令boot開機(jī)。開機(jī)之后可以運行命令ls /dev/fb* 查看設(shè)置是否成功,其中fb0、fb2表示屏幕,fb1是fb0代表屏幕的左上部分。默認(rèn)fb2沒有開啟,可以輸入下面命令打開:

      echo 0 > /sys/class/graphics/fb2/blank


      用戶在使用中可以讓雙屏顯示不同應(yīng)用程序或者一個屏幕運行圖形界面程序,另外一個屏幕進(jìn)行視頻播放等,具體設(shè)置方法將在下面兩章節(jié)(QT 5支持 和 多媒體音視頻 )中分別進(jìn)行介紹。用戶閱讀完下面的內(nèi)容之后可以進(jìn)行隨意組合使用雙屏顯示不同或相同內(nèi)容。


    2、Qt5支持


      ESM6802 文件系統(tǒng)已經(jīng)移植好了Qt 5.5.1 版本,支持qml等Qt5新特性,并且已經(jīng)移植好了tslib庫來支持工業(yè)上比較常見的電阻觸摸屏,用戶可以方便的使用Qt 5來開發(fā)圖形界面應(yīng)用程序。ESM6802 文件系統(tǒng)中的Qt 5 使用 eglfs 平臺,我們默認(rèn)已經(jīng)設(shè)置了環(huán)境變量 QT_QPA_PLATFORM=eglfs, 如果用戶發(fā)現(xiàn)Qt 5 程序無法運行,請首先檢查此環(huán)境變量是否被改變。ESM6802文件系統(tǒng)里面也提供了qmlscene程序用于運行qml文件,qmlscene程序在/usr/bin/qt5/文件夾下面。關(guān)于eglfs 以及更多Qt 5程序開發(fā)的相關(guān)知識請參考Qt 官網(wǎng)或其他資料,關(guān)于Qt 5開發(fā)環(huán)境的搭建請參考《ESM6802開發(fā)工具安裝》文檔,我們在此只簡單展示qml運行效果。示例用的qml文件可以從光盤中獲取,運行命令:

      /usr/bin/qt5/qmlscene  example_billborad.qml


      運行效果如下圖:


    ESM6802雙屏顯示LVDS+HDMI.gif


      雙屏設(shè)置:

      Qt5運行于eglfs平臺,與屏幕設(shè)置有關(guān)的環(huán)境變量為QT_QPA_EGLFS_FB,用戶在運行Qt程序之前設(shè)置此環(huán)境變量就可以實現(xiàn)控制Qt程序在哪個屏幕上進(jìn)行顯示了,如下例在LVDS和HDMI屏幕上運行兩個不同的Qt程序:

      export QT_QPA_EGLFS_FB=/dev/fb0//第一個程序顯示在fb0(LVDS)上

      /usr/bin/qt5/qmlscene example_billborad.qml  &

      export QT_QPA_EGLFS_FB=/dev/fb2 //第二個程序顯示在fb2(HDMI)上

      ./smarthome


      運行效果如下圖:


    ESM6802雙屏顯示LVDS+HDMI.gif


      目前無法支持將一個應(yīng)用程序的界面同時顯示在兩個屏幕上,如果用戶需要實現(xiàn)此功能,需要在兩個屏幕上同時運行相同的程序(以不同的QT_QPA_EGLFS_FB設(shè)置運行兩次程序),然后在程序中使用Linux提供的進(jìn)程同步機(jī)制來控制兩個程序,從而達(dá)到兩個屏幕同步顯示相同內(nèi)容。


    3、多媒體音視頻


      ESM6802支持多種格式的音視頻多媒體文件的播放,提供的函數(shù)接口是基于gstreamer的,運行命令gst-inspect-1.0 就可以查看系統(tǒng)支持的所有g(shù)streamer plugins。


      關(guān)于gstreamer 編程請參考官網(wǎng)文檔及其他相關(guān)資料:

      https://gstreamer.freedesktop.org/documentation/


      ESM6802文件系統(tǒng)中的gst-launch-1.0 可以進(jìn)行簡單的播放展示,如果用戶不需要對音視頻播放進(jìn)行暫停快進(jìn)等特殊操作,也可以在應(yīng)用程序中調(diào)用gst-launch-1.0進(jìn)行簡單的多媒體播放。ESM6802支持AVI、MP4、FLV、MPG2、MKV、RMVB常見視頻格式最大分辨率1920x1080(1080p)的播放,以及常見音頻格式如MP3、WMA和圖片格式JPEG、PNG、GIF、BMP。


      簡單的視頻播放可以使用如下命令:

      gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv


      播放效果如下圖:


    ESM6802雙屏顯示LVDS+HDMI.gif


      控制視頻在不同屏幕上播放或這同時在兩個屏幕上播放需要用到overlaysink插件(系統(tǒng)已經(jīng)安裝),配置overlaysink的文件為/usr/share/imx_6q_display_config , 配置格式如下:

      [Display NAME]

      必須配置,指明顯示名稱

      device=

      必須配置,指明設(shè)備文件,如/dev/video17(默認(rèn)為LVDS/RGB)或/dev/video18(默認(rèn)為HDMI)

      fmt=

      可選配置,設(shè)置顯示格式,如RGBP、RGB565等,默認(rèn)為RGBP

      width=

      height=

      可選配置,設(shè)置顯示分辨率

      alpha=

      可選配置,設(shè)置alpha(透明)值,默認(rèn)0

      color_key=

      可選配置,顏色配置,默認(rèn)關(guān)閉


      具體配置示例如下:

      # LVDS display

      [master]

      device = /dev/video17

      fmt = RGBP

      width = 1024

      height = 768

      alpha = 0


      # HDMI display

      [slave]

      device = /dev/video18

      fmt = RGBP

      width = 1920

      height = 1080


      根據(jù)以上配置在不同屏幕(LVDS+HDMI)上同時播放不同視頻的可用命令:

      gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv playbin uri=file:///mnt/xpg.mp4 video-sink=”overlaysink display-master=false display-slave=true”


      播放效果如下圖所示:


    ESM6802雙屏顯示LVDS+HDMI.gif


      如需在不同屏幕上播放相同視頻可以運行如下命令:

      gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv video-sink=”overlaysink display-master=true display-slave=true”


      結(jié)合上一章Qt的介紹,可以在一個屏幕上運行程序,在另外一個屏幕上播放視頻:

      ./smarthome &

      gst-launch-1.0 playbin uri=file:///mnt/cloudy720p.mkv video-sink=”overlaysink display-master=false display-slave=true”


      運行效果如下圖:


    ESM6802雙屏顯示LVDS+HDMI.gif


      視頻播放還支持一個屏幕播放多個視頻,可以使用如下命令:

      gst-launch-1.0 playbin uri=file://$FILE1 video-sink=”overlaysink overlay-width=960 overlay-height=540”  playbin uri=file://$FILE2 flags=0x41 video-sink=”overlaysink overlay-left=960 overlay-width=960 overlay-height=540” playbin uri=file://$FILE3 flags=0x41 video-sink=”overlaysink overlay-top=540 overlay-width=960 overlay-height=540” playbin uri=file://$FILE4 flags=0x41 video-sink=”overlaysink overlay-left=960 overlay-top=540 overlay-width=960 overlay-height=540”


      運行效果如下圖:


    ESM6802雙屏顯示LVDS+HDMI.gif

    文章標(biāo)簽:ESM6802彩色顯示
    国产伦精品一区二区免费| 亚洲精品免费在线观看| 亚洲精品在线网站| 大伊香蕉精品视频在线导航| 久久久精品中文字幕麻豆发布 | 国内大量偷窥精品视频| 国内精品自线在拍2020不卡| 亚洲精品无码av人在线观看| 午夜人屠h精品全集| 精品日韩亚洲AV无码一区二区三区| 国产高清精品一区| 亚洲精品无码久久久久APP| 亚洲一二成人精品区| 国产精品免费视频观看拍拍| 久久天堂AV女色优精品| 99视频都是精品热在线播放| 国产精品毛片无码| 日韩精品福利在线| 国产私拍福利精品视频推出| 久久亚洲国产精品一区二区| 亚洲精品tv久久久久久久久久| 亚洲区日韩精品中文字幕| 久久99视频精品| 91视频国产精品| 亚洲一级Av无码毛片久久精品| 精品国产香蕉伊思人在线又爽又黄| 91精品国产亚洲爽啪在线观看| 一本色道久久88精品综合| 国产A√精品区二区三区四区| 天堂一区二区三区精品| 国产成人精品日本亚洲11| 色久综合网精品一区二区| 999精品视频这里只有精品| 亚洲第一区精品日韩在线播放| 四色在线精品免费观看| 久久综合鬼色88久久精品综合自在自线噜噜| 国产精品区免费视频| 99精品久久久久中文字幕| 国产精品白丝AV嫩草影院| 国产成人精品午夜在线播放| 亚洲国产精品无码中文lv|