在Ubuntu11.10中一步步安装Ubuntu Tv详解

           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 Tv

2.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 Tv

3.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 Tv

6.1  评价UbuntuTv

◆   优点:

官方对UbuntuTv发布版的畅想令人振奋,其发布版特色功能主要有以下几点。

Ø  集成电子节目指南,支持欧美标准-地面广播标准以及高清播放。

Ø  把有线电视或卫星电视服务整合到Ubuntu TV中,提供一个统一的客户体验 。

Ø  集成网络内容直接从互联网提供商获得更多的电影,电视节目和音乐。以规范化合作伙伴的服务框架和内容整合自己的服务。 

Ø  支持智能搜索,让观众有更多的选择。

Ø  跨设备共享。从PC到电视的流行音乐,照片和视频。Ubuntu TV作为一个IOS,Android和Ubuntu的应用程序,媒体之间可以共享电视,通过便携设备使用Ubuntu One的个人云服务。

Ø  内置可扩展行。UbuntuTv支持第三方应用。通过网上商店提供的应用程序,必要时进行更新,形成一个Ubuntu应用程序开发生态系统的利益链。

Ø  就当前的预览版本来看UbuntuTv支持的高清播放,影片的快速回放,繁多的电子电视节目会给用户更美好的体验。

◆   缺点:在当前的预览版本中,UbuntuTv大部分的功能都未实现。

Ø  加载本地视频时,需要创建特定的目录才能成功加载,没有为用户提供添加自己视频源的接口。

Ø  播放视频时的快速回放缩略图需要用户自己制作(通过create_tmb.sh)。

Ø  视频的元数据(用于UbuntuTv加载视频封面、海报、描述影片的文本信息)生成也要用户生成,操作过程繁琐并且依赖第三方的应用(xbmc)。

Ø  对于第三方应用怎样添加,没有提供好的文档说明和事例。



一下是安装后的效果图:














  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值