Ubuntu Tv的安裝
目錄
第1章 目標平台.... 2
第2章 安裝Ubuntu Tv.. 2
2.1 下載Ubuntu Tv源碼... 2
2.2 編譯Ubuntu Tv源碼... 2
2.3 下載編譯安裝unity視頻系統... 2
2.4 下載安裝gstreamer視頻編解碼組件... 3
第3章 啟動Ubuntu Tv.. 4
3.1 啟動前準備... 4
3.1.1 建立Ubuntu Tv指定的視頻目錄... 4
3.1.2 產生視頻快速回放縮圖... 4
3.2 啟動環境配置... 4
3.2.1 設定Ubuntu Tv的D-conf key的值... 5
3.2.2 設定啟動前的系統內容... 5
3.3 運行Ubuntu Tv. 5
第4章 為UbuntuTv增加視頻檔案的封面、海報以及我們自己的資料.... 5
4.1 使用xbmc掃描視頻檔案並擷取視頻的中繼資料... 5
4.1.1 擷取視頻檔案中繼資料的原理... 5
4.1.2 使用xbmc擷取視頻檔案中繼資料的流程... 6
4.2 向UI中添加我們自己的資料... 6
第5章 Ubuntu Tv的備忘說明.... 7
5.1 關於Ubuntu Tv的一些說明... 7
第6章 評價Ubuntu Tv.. 7
6.1 評價UbuntuTv. 7
第1章 目標平台
Ubuntu Tv安裝的測試目標平台為Ubuntu11.10作業系統。低於該版本的系統可能會安裝失敗。
第2章 安裝Ubuntu Tv2.1 下載Ubuntu Tv源碼
首先要建立unity-2d的原始碼包的依賴關係,其次是下載所需要的庫和組件,最後下載源碼。可以分別用以下命令完成。
$ sudoapt-get build-dep unity-2d
$ sudoapt-get install dconf-tools gnome-common libdeclarative-multime
ffmpeg bzr
$ bzr branchlp:~s-team/ubuntutv/trunk ubuntu-tv
2.2 編譯Ubuntu Tv源碼
下載完成後會在目前的目錄下產生ubuntu-tv目錄,該目錄下的內容就是ubuntu tv的源碼。我們可以進入ubuntu-tv目錄進行編譯。
$ cdubuntu-tv
$ cmake .
$ make
$ cd ..
編譯後會產生與案頭環境(unity-2d-panel,unity-2d-spread)以及ubuntu Tv啟動(unity-2d-shell)相關的一些目標檔案。
2.3 下載編譯安裝unity視頻系統
UbuntuTv開啟視頻檔案需要unity視頻系統的支援,下面提示了怎樣下載unity視頻系統的源碼並安裝。
$ bzrbranch lp:~s-team/ubuntutv/unity-lens-video
$ cdunity-lens-video
$./autogen.sh --prefix=/usr --sysconfdir=/etc
$ sudo makeinstall
$ cd ..
安裝後,會在目前的目錄下產生unity-lens-video目錄,這個目錄即是unity視頻系統。在安裝過程中會在/usr/lib/下產生unity-lens-video(主要包含管理視頻播放的守護進程unity-video-daemon),unity-lens-music等目錄,並產生製作影片縮圖(用於快速回放)的指令碼create_tmb.sh。
2.4 下載安裝gstreamer視頻編解碼組件
Ubuntu Tv播放視頻時需要gstreamer視頻編解碼組件的支援。如果未安裝gstreamer,啟動Ubuntu Tv後,在播放視頻檔案時會出現不流暢的情況。在Ubuntu系統中gstreamer支援大多數當前流行的視頻格式。安裝方法有兩種
方法一:命令安裝,執行以下命令即可完成安裝。
$ sudoapt-get install libgstreamer0.10-dev gstreamer-tools
$ sudoapt-get install gstreamer0.10-tools gstreamer0.10-doc
$ sudoapt-get install gstreamer0.10-plugins-base
$ sudoapt-get install gstreamer0.10-plugins-good
$ sudoapt-get install gstreamer0.10-plugins-ugly
$ sudoapt-get install gstreamer0.10-plugins-bad
$ sudoapt-get install gstreamer0.10-plugins-bad-multiverse
通過以上命令完成安裝後還需要安裝ffmpeg支援。
$ sudoapt-get install gstreamer0.10-ffmpeg
方法二:系統自動安裝。用Ubuntu系統中內建的mediaplayer開啟一個視頻檔案,這時會提示安裝組件,按照提示選擇gstreamer然後自動安裝就可以了。
也可以通過$sudoapt-get install gstreamer* && sudo apt-get install libgstreamer*來一步安裝gstreamer所有的組件。
第3章 啟動Ubuntu Tv3.1 啟動前準備3.1.1 建立Ubuntu Tv指定的視頻目錄
依照下列規則建立對應的視頻目錄,否則開啟ubuntu tv時無法成功載入本地的視頻檔案。
在Ubuntu系統中依次建立下列對應的目錄。其中最上層目錄Videos目錄是Ubuntu系統內建的視頻目錄。
~/Videos/unity/local/featured
~/Videos/unity/local/rented
~/Videos/unity/local/purchased
~/Videos/unity/local/recorded
其中featured(特色),rented(租用),purchased(購買),recorded(記錄)會分欄顯示在ubuntu tv中。
目錄建立規則參見源碼unity-lens-video/README.txt檔案
3.1.2 產生視頻快速回放縮圖
在安裝unity視頻系統後在/usr/lib/unity-lens-video/目錄下產生create_tmb.sh指令碼,這個指令碼命令就是製作視頻檔案對應縮圖的。使用規則是後加視頻檔案所在的目錄。此時每個視頻檔案對應產生的縮減一共有10張,圖片尾碼是.tmb格式,這10張圖片用於ubuntu tv 快速回放(playback)時使用。選中其中一張即跳到對應的地方開始播放。執行以下命令產生影片縮圖。
$/usr/lib/unity-lens-video/create_tmb.sh ~/Videos/
播放測試發現這10張縮圖產生的地方將影片的總時間進行了10等分。
3.2 啟動環境配置
由於UbuntuTv使用的unity會與gnome左面環境使用的unity有衝突。我們需要做一些案頭環境的修改,以便於順利啟動UbuntuTv。另外還需要設定UbuntuTv顯示時的尺寸規格。
3.2.1 設定Ubuntu Tv的D-conf key的值
實質是設定ubuntu tv的尺寸規格,通過以下命令來完成。
$ GSETTINGS_SCHEMA_DIR=ubuntu-tv/data gsettings set
com.canonical.Unity2d form-factor tv
以上命令是一條完整的命令,在目前使用者目錄下完成。
3.2.2 設定啟動前的系統內容
如果當前正在運行unity-2d,我們需要結束unity-2d-panel,unity-2d-places
和unity-2d-launcher,unity-2d-spread等進程。通過以下命令來完成。
$ killallunity-2d-{panel,places,launcher,spread} &&
Killall unity-2d{panel,places,launcher,spread}
如果當前正在運行unity,則用metacity替換compiz,替換命令如下:
$ metacity --replace &
以上命令在目前使用者目錄下完成。
3.3 運行Ubuntu Tv
進入ubuntu-tv目錄執行shell指令碼就可以啟動Ubuntu Tv了。
$ cd ubuntu-tv
$ ./shell/app/unity-2d-shell –opengl
啟動後,Ubuntu Tv會接管整個螢幕。Alt+tab鍵可以切換回終端。
第4章 為UbuntuTv增加視頻檔案的封面、海報以及我們自己的資料4.1 使用xbmc掃描視頻檔案並擷取視頻的中繼資料
在上步啟動的UbuntuTv不能成功顯示影片的封面以及描述資訊。一下是擷取視頻中繼資料的過程。
4.1.1 擷取視頻檔案中繼資料的原理
UbuntuTv啟動後載入本地視頻的同時也要擷取對應視頻的描述資訊以便顯示。Ubuntu Tv 需要的視頻中繼資料套件括:視頻的縮圖(在上面我們已經產生,用於快速回放playback),視頻的封面圖片(尾碼為.tbn),視頻的背景海報(尾碼為.jpg,用於載入到播放介面顯示),以及描述影片的一些文本資訊(從.nfo檔案讀取),比如導演,演員,影片評分,故事情節大概等。
XBMC影音中心是一款功能強大的播放軟體,支援高清播放。我們需要使用XBMC掃描視頻檔案以擷取以上我們需要的視頻中繼資料。當然也可以使用其他可產生視頻中繼資料的影音軟體。使用xbmc掃描視頻檔案時通過imdb.com(一個開源的資料網站,存放影片的一些資訊),並可從TMDB等三個網站下載影片資訊,並產生一系列檔案,以下列出我們需要的三種檔案。
movie-fanart.jpg:相當於背景海報,用於在即將播放時載入顯示。其中
movie.tbn:視頻檔案的封面。
movie.nfo:描述影片資訊檔。
另外,如果從xbmc未成功下載這幾種檔案的話,我們可以自己製作,並放到視頻目錄中,也可以正常使用。各檔案的命名格式是視頻檔案名稱加上對應的尾碼。
4.1.2 使用xbmc擷取視頻檔案中繼資料的流程
以下操作流程參見源碼unity-lens-video/README.txt檔案。
◆ 首先安裝XBMC影音中心
$sudo apt-add-reposotoryppa:nathan-renniewaldock/xbmc-stable
$sudo apt-get update
$sudo apt-get install xbmc
◆ 使用xbmc的sarapers(搜刮器)掃描視頻檔案
安裝完成後,啟動xbmc,並完成以下流程:
Ø 選中Video,用方向鍵選中Files,然後àAdd VideoSourceàBrowser,然後添加Ubuntu Tv要開啟的視頻所在目錄(例如:~/Video/unity/local/featured),並依次添加recorded,rented目錄。點OK完成。
Ø Xbmc在第一次載入視頻源時,會提示使用scraper去掃描視頻檔案。我們也可通過下面的方式來進入Scraper搜刮器。VideosàFilesà選中一個視頻目錄單擊滑鼠右鍵,選擇changecontent。進入搜刮器後,選擇The MovideDB scraper,並分別勾選“Run automated scan”和“Scan recursively”選項,點擊OK。之後xbmc會出現“xbmc scanning thedirectory”,完成後xbmc就從網站擷取到了我們需要的上述三種檔案。
Ø 產生視頻的中繼資料後,我們要將上面產生的檔案及圖片匯出到視頻所在的目錄。通過下步即可完成:
在xbmc中選擇SystemàsettingsàVideosàLibraryàExport Video Library,在此介面我們還可以通過勾選“Scanlibrary at Startup”選項,以便我們添加新的視頻檔案後,xbmc能自動掃描並獲得視頻中繼資料(xbmc下次重啟後)。完成以上操作後選中OK,我們需要的檔案就匯出到了對應的視頻目錄。
◆ 另外對於TV的中繼資料產生和擷取影片的中繼資料類似,只需要在指向TV的目錄後使用The Tv scraper即可。
◆ UbuntuTv在啟動後就能成功載入視頻的封面,進入播放介面時會載入視頻對應的背景海報,以及載入一些影片文本資訊。見附件圖片檔案夾。
4.2 向UI中添加我們自己的資料
我們也可以向影片的播放介面添加我們自己的資料。比如:Rented(租借)目錄中描述影片租借時間和租借價格的資訊,featured(特徵)目錄中描述視頻購買價格等。通過修改上一步產生的.nfo檔案來實現,修改方式如下:
Rented movies / TV shows:
<movie>
[...]
<expires>Dec 12, 2011 12:00</expires>
</movie>
<episodedetails>
[...]
<expires>Dec 12, 2011 12:00</expires>
</episodedetails>
Featured movies / TV shows:
<movie>
[...]
<rent_price>3.99</rent_price>
<buy_price>5.99</buy_price>
從另外一個方面看,這種修改方式為我們在自己的應用中修改影片的資訊提供了一種可能。
第5章 Ubuntu Tv的備忘說明5.1 關於Ubuntu Tv的一些說明
u 啟動後,F1,F2,F3分別用來切換左側邊欄,上側邊欄,和右側邊欄(視頻播放時)。
u Ubuntu Tv需要按照video-lens目錄中README.txt中提到的方式建立對應的目錄,否則無法成功載入本地的視頻檔案。
u EPG(電視節目指南)欄目的運行需要代碼支援,我們可以通過修改/shell/dash/epgdata 目錄下的refreshdata.py指令碼來新增新的電視節目。另外在/shell/dash/epgdata/下的channel目錄中存放著不同的電視台,每個可播放欄目對應一個目錄,每個目錄中存放著這個台的兩張logo(用於可播放和不可播放)和它的播放規則檔案epg.xml。
◆ 當EPG無法開啟時預設播放~/Videos/unity/local/epg/epg.mkv
◆ 其中左側邊欄YouTube播放按鈕只是一個預留位置,並不可用,它只表示了一個新的應用是怎樣被整合到ubuntu tv中的。我們可以將我們的應用整合到ubuntutv中。
◆ Ubuntu tv中的EPG電視欄目可以24小時離線使用BBC欄目中的資料,但是背景頻道調諧器根本沒有啟動,所以目前EPG是打不開的。
◆ 在頂部欄中,只有音量和時鐘按鈕是可用的,其餘按鈕都是虛擬入口。
◆ 視頻回放支援HW高清加速。
◆ UbuntuTv支援所有HID(Human Interface Devices)的遠端控制,包括linux核心支援的鍵盤,藍芽,和IR(紅外)。
◆ UbuntuTv作為一個內嵌的Tv,搜尋是它的中心部分,因此支援文本輸入就成了它的一個很重要的特性。
第6章 評價Ubuntu Tv6.1 評價UbuntuTv
◆ 優點:
官方對UbuntuTv發布版的暢想令人振奮,其發布版特色功能主要有以下幾點。
Ø 整合電子節目指南,支援歐美標準-地面廣播標準以及高清播放。
Ø 把有線電視或衛星電視服務整合到Ubuntu TV中,提供一個統一的客戶體驗 。
Ø 整合網路內容直接從互連網供應商獲得更多的電影,電視節目和音樂。以正常化夥伴的服務架構和內容整合自己的服務。
Ø 支援智能搜尋,讓觀眾有更多的選擇。
Ø 跨裝置共用。從PC到電視的流行音樂,照片和視頻。Ubuntu TV作為一個IOS,Android和Ubuntu的應用程式,媒體之間可以共用電視,通過可攜式裝置使用Ubuntu One的個人云服務。
Ø 內建可擴充行。UbuntuTv支援第三方應用。通過網上商店提供的應用程式,必要時進行更新,形成一個Ubuntu應用程式開發生態系統的利益鏈。
Ø 就當前的預覽版本來看UbuntuTv支援的高清播放,影片的快速回放,繁多的電子電視節目會給使用者更美好的體驗。
◆ 缺點:在當前的預覽版本中,UbuntuTv大部分的功能都未實現。
Ø 載入本地視頻時,需要建立特定的目錄才能成功載入,沒有為使用者提供添加自己視頻源的介面。
Ø 播放視頻時的快速回放縮圖需要使用者自己製作(通過create_tmb.sh)。
Ø 視頻的中繼資料(用於UbuntuTv載入視頻封面、海報、描述影片的文本資訊)產生也要使用者產生,操作過程繁瑣並且依賴第三方的應用(xbmc)。
Ø 對於第三方應用怎樣添加,沒有提供好的文檔說明和案例。
一下是安裝後的: