美國的 MIT 人才濟濟,1984 年 Bob Scheifler 先生寫了 X ── After W ── 取代了 Stanford 大學的 W Window 視窗系統,到了 1987 年的九月,X 規範 protocol 版次為十一,這個 X11 的標誌一直用到了如今。下圖是早期 X 視窗的樣子,現今在 Linux 上的進程全由 X.org 基金會引領。
由於繪圖處理器 GPU 的快速發展,促進了粉刷 rendering 視窗的『加速化』,使得軟體解碼的『影音播放器』成為現實。事實上,現今的 GPU 跑得可能比 CPU 還快。樹莓派上用的 Broadcom 博通BCM2835 上的 GPU 就是這樣,所以你當用 omxplayer 命令可以播放 『FULL HD』 h264 影片,用 raspivid 可以拍攝編碼成 encode 『FULL HD』 h264 影片。如果你已經走過 Raspbian 中文化那條漫漫長路,你也許已發現 X 視窗『卡卡的』,怎麼會沒有『加速』呢?由於目前還沒有 X 視窗的『加速繪圖驅動程式』,但在今年的二月二十八日,樹莓派基金會兩週年慶的時候,博通送上了一份『大禮』── the release of full documentation for the VideoCore IV graphics core, and a complete source release of the graphics stack under a 3-clause BSD license ──,開啟了加速化的一扇『窗戶』。其實對於這個『跳針』的問題,樹莓派基金會早已展開航海王裡的『梅纳德』Maynard 桌面專案,擁抱『韋蘭』 Wayland 了!!對於有興趣的讀者,可以按造 Collabora 的說明在 Raspbian 上安裝。
那韋蘭是什麼呢?Kristian Høgsberg 先生,一位軟體工程師,2008 年時在小紅帽負責 Accelerated Indirect GLX AIGLX 計畫── Red Hat 和 Fedora 發起的計畫,該計畫想要更好的統整 Linux 裡 X 視窗上的 DRI,2D 視窗加速和 2D、3D openGL 開放圖形庫的界面 ──。某一天他開著車穿越『 Wayland 』的『 Weston 』小鎮時,突然間一個想法在他腦海裡升起,如結晶般的透明,是到了該把 X 視窗『取代的時後』了!!為了紀念這個時刻,所以將它命名為『韋蘭』,把它寫的『參考實施』reference implementation 叫做『威斯頓』。當然你已經知道,樹莓派上的威斯頓就是梅纳德了。
為著進一步了解樹莓派,讓我們談談 VideoCore IV graphics core 的 vcgencmd 這個工具軟體,所有以『 vc…』起頭的工具軟體程式都放在 Raspbian 的『 /opt/vc/bin/ 』和『 /opt/vc/sbin/ 』目錄下。所將說的 vcgencmd 命令列程式,提供許多的功能,可以用︰
vcgencmd commands
查詢,在此我們只介紹一些常用的指令。
【韌體版本和 CPU 序號】︰
vcgencmd version 命令會告訴你,當前的『版本發行日期』和『版本編號』;由於有時候『升級』可能會帶來『原先沒發生的』問題 ── 也稱作回歸性問題 ──,這時你或許想回復原先的版本,那你可以用︰
sudo rpi-update 『版本編號』
來回復。然而 vcgencmd 指令中,並沒有提供 CPU 資訊 info 的功能,你得用
cat /proc/cpuinfo
去讀取其中的 CPU『 Serial 』序號。為什麼要特別在此提這個呢?如果你想要看『 MPEG2 DVD』或『 VC1 微軟』類的影片格式,你得到樹莓派基金會購買『解碼器』才行,那時你就必須要有這個 CPU 的序號了。
【 樹莓派的電壓】︰
之前《欲善其事, 先利其器: 樹莓派的電源》一文中,我們提到過『TP1-TP2』接點間電壓大約 5V 的重要性,這個指令雖然不能『量測』這個電壓,但它能讀取『 core 、 sdram_c 、 sdram_i、 sdram_p 』等等的電壓,這是一個電壓問題『除錯』的很好參考 ── 比方說︰
vcgencmd measure_volts core
,就是量取核心 core 的電壓 ──。
【 樹莓派的頻率】︰
我們在《raspi-config 再探!!》裡談過『超頻』一事,你可以用下面的指令來『確認』的不僅是『 arm 』和『 core 』的工作頻率,還包括了『 h264 , isp , v3d, uart, pwm, emmc, pixel, vec, hdmi, dpi』種種的工作頻率︰
vcgencmd measure_clock arm
vcgencmd measure_clock core。
【 樹莓派的溫度】︰
『 vcgencmd measure_temp 』的命令能夠量測當下的工作溫度,讓人們可以『判斷』是否可能發生『熱當機』?或者是真的有需要用『散熱片』嗎?
【 樹莓派啟用的編解碼器】︰
假如你已經購買了『解碼器』,而且已經按造樹莓派基金會的『 e-mail 』上所說的,在『 /boot/config.txt 』檔案的最後,用 sudo nano /boot/config.txt 加入了這下面說的兩行︰
decode_MPG2=〔你的 啟用碼〕
decode_WVC1=〔你的啟用碼〕
,那你可以用︰
vcgencmd codec_enabled MPG2
vcgencmd codec_enabled WVC1
來確認它們是否真的已被『啟用』了。
最早在樹莓派上只有 h264 編解解碼器是『固有的』,而今也已有了『 MJPEG,、VP6、VP8,、and Ogg Vorbis …』的測試版本,欲嚐鮮的讀者可以試著在『 /boot/config.txt 』檔案的最後,再加入下面的兩行,
start_file=start_x.elf
fixup_file=fixup_x.dat
,重新開機後用 omxplayer 玩玩看這些新的影音格式吧!!
── 等待『韋蘭』!!,不是等待『果陀』。