等待『韋蘭』!!

美國的 MIT 人才濟濟,1984 年 Bob Scheifler 先生寫了 X ── After W ── 取代了 Stanford 大學的 W Window 視窗系統,到了 1987 年的九月,X 規範 protocol 版次為十一,這個  X11 的標誌一直用到了如今。下圖是早期 X 視窗的樣子,現今在 Linux 上的進程全由 X.org 基金會引領。

300px-X-Window-System

由於繪圖處理器 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 叫做『威斯頓』。當然你已經知道,樹莓派上的威斯頓就是梅纳德了。

250px-First_Parish_in_Wayland_MA

250px-Town_Hall,_Weston,_Massachusetts_-_DSC00522

Wayland_display_server_protocol.svg

『韋蘭』

《説文解字》:韋,相背也。从舛囗聲。獸皮之韋,可以束 枉戾相韋背,故借以爲皮韋。凡韋之屬皆从韋。

 

『威斯頓』

錯把『Weston』當『西子』!

 

 

Wayland 的架構

為著進一步了解樹莓派,讓我們談談 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,、VP6VP8,、and  Ogg Vorbis …』的測試版本,欲嚐鮮的讀者可以試著在『 /boot/config.txt 』檔案的最後,再加入下面的兩行,

start_file=start_x.elf

fixup_file=fixup_x.dat

重新開機後用 omxplayer 玩玩看這些新的影音格式吧!!

── 等待『韋蘭』!!,不是等待『果陀』。