作者:江苏 李炳胜 出处:电脑报
在工作之余,上网观看视频节目成为许多人休闲放松的一种选择。在Windows平台上,我们既可以通过浏览器来观看,也可以通过丰富的专门软件,如PPLive、PPStream、UUSee来观看实时的网络视频节目。在Ubuntu系统中,收看网络视频也非常方便,如通过Firefox收看视频站点的节目,通过Sopcast收看实时的电视节目等。下面就让我们一起来看一看吧。
一、用Firefox浏览器观看在线视频
在Ubuntu上看网络在线视频,通常是通过Firefox浏览器来看如优酷和Youtube上的视频,因这些视频站点的视频播放控制界面大多是基于Flash技术开发的,因而,通过Firefox观看网络视频节目,我们首先要为Firefox浏览器安装上Flash插件。我们可以从Flash播放器的官方站点http://get.adobe.com/flashplayer/下载适用于Ubuntu平台的Flash插件的安装文件,即以.deb结尾的文件。GNOME集成桌面环境中,双击下载的install_flash_player_10_linux.deb文件,自动出现GDebi图形化安装工具窗口(如图),点击窗口上的“安装软件包”按钮,输入管理员密码后,Gdebi自动为我们安装上Flash插件。
Ubuntu系统自带Totem电影播放机,它也为Firefox浏览器提供相应的插件来支持多种视频格式文件的播放。因而在安装好Flash插件后,运行Firefox浏览器,访问某个视频网站,我们就可以欣赏自己喜欢的视频节目了。
二、用Sopcast收看网络电视
在Ubuntu系统上,通过免费、简单易用的软件Sopcast,我们可以享受在线收看电视节目的乐趣。Sopcast(Streaming over P2P)是一个基于P2P(Peer-to-Peer)技术的视频播放软件,通过它,用户可以轻松在线收看如实况转播等实时视频节目。以下介绍基于Ubuntu桌面版8.10,使用GNOME集成桌面环境。
1.安装软件
Ubuntu系统默认没有安装Sopcast软件,我们可以从站点cnc1.sopcast.cn下载专用于Linux系统的Sopcast的安装文件,当前版本为3.0.1,下载的文件名为sopcast.tgz。在安装时,首先要解压该文件,解压后将在当前目录下生成一个子目录sp-auth,然后进到该目录,里面包含已经编译好的二进制可执行文件sp-sc-auth,我们将该文件重命名后复制到系统全局路径下。单击“应用程序” →“附件”下的“终端”项,打开一个GNOME终端窗口,在窗口中依次输入如下命令:
sudo cp sp-sc-auth /usr/bin/sp-sc
sudo cp sp-sc-auth /usr/local/bin/sp-sc
命令执行后,在Ubuntu系统的任何目录下输入命令sp-sc均可以运行Sopcast程序。由于以命令方式收看视频节目极不方便。因而我们需要安装Sopcast的图形化前端程序Gsopcast。
我们可以从站点http://gsopcast.googlecode.com下载Gsopcast的安装文件,下载的安装文件的文件名为gsopcast-0.4.0.tar.bz2。在安装时,首先要解压该文件,依次输入如下命令:
sudo bunzip2 gsopcast-0.4.0.tar.bz2
sudo tar -xvf qsopcast
-0.4.0.tar
命令执行后,将在当前目录下生成一个子目录gsopcast-0.4.0,进到该目录,输入如下命令:
sudo ./configure
对系统进行检查,如检查通过则在当前目录下生成编译脚本makefile;如检查过程中,指出缺少某个安装包,则可以使用apt-get命令来安装上相应的软件包(在Ubuntu系统上可能需要另行安装libasound-dev和libgtk2.0-dev两个软件包)。然后进到子目录src中,依次输入如下命令:
sudo make
sudo make install
如以上命令执行均没有问题,则在src目录下生成可执行二进制文件gsopcast。为了测试Gsopcast程序是否编译成功,我们可以输入命令:./gsopcast来启动Gsopcast程序。Gsopcast程序启动后,将自动连接到站点channel.sopcast.com获取可用电视频道列表文件,并将获取到电视频道显示在程序窗体左侧的频道列表区树视图中。
网络电视的视频内容需要借助于第三方的媒体播放器软件来播放,这里我们使用功能强大的视频播放软件VLC。Ubuntu系统默认没有安装该软件,但Ubuntu软件源中包含了VLC软件安装包,因而安装VLC软件很简单。安装VLC及常用解码器的命令如下:
sudo apt-get install vlc w32codecs
安装完毕后,在菜单“应用程序”/“影音”下可以找到“VLC media player”项。
2.配置并运行Gsopcast
为了使用Gsopcast能正常收看网络电视,我们还需对Gsopcast程序进行配置。点击Gsopcast程序窗口的“配置”选项卡,在“配置”选项卡窗口,将“播放器”栏对应的媒体播放器改为“vlc”,将“频道地址”改为“http://channel.sopcast.com/gchlxml”。为了让设置生效,保存以上设置后,关闭Gsopcast程序并重新运行。如重新运行Gsopcast程序后,在窗体左侧的频道列表树视图中出现频道信息,则表明成功获取频道信息,双击某个频道或选中某个频道后,点击下方的“Play”(播放)按钮,我们就可以欣赏所选频道的电视节目了(如图)。
dxb20040101 于 2009-04-28 22:49:27发表:
我又重新尝试一次,结果如下,问题更奇怪了
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0$ pwd
/home/dxb/桌面/gsopcast-0.4.0
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0$ sudo ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for intltool >= 0.35.0... 0.36.2 found
checking for perl... /usr/bin/perl
checking for XML::Parser... ok
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for DEPS... yes
checking for ALSA CFLAGS...
checking for ALSA LDFLAGS... -lasound -lm -ldl -lpthread
checking for libasound headers version >= 0.9.0... found.
checking for snd_ctl_open in -lasound... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for stdlib.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for pid_t... yes
checking for size_t... yes
checking whether closedir returns void... no
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking whether gcc needs -traditional... no
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for working memcmp... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking return type of signal handlers... void
checking for dup2... yes
checking for gethostbyname... yes
checking for memchr... yes
checking for memmove... yes
checking for memset... yes
checking for mkdir... yes
checking for regcomp... yes
checking for setlocale... yes
checking for socket... yes
checking for strdup... yes
checking for strstr... yes
checking for strtol... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for locale.h... (cached) yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating data/gsopcast.desktop.in
config.status: creating data/Makefile
config.status: creating po/Makefile.in
config.status: creating src/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing intltool commands
config.status: executing default-1 commands
config.status: executing po/stamp-it commands
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0$ cd src
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0/src$ sudo make
make: 没有什么可以做的为 `all'。
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0/src$
dxb20040101 于 2009-04-28 22:44:01发表:
上面的是没有进scr目录执行这个sodu make
现在进入了scr后也是问题
make能成功,但是
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0/src$ make install
make[1]: 正在进入目录 `/home/dxb/桌面/gsopcast-0.4.0/src'
test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
/usr/bin/install -c 'gsopcast' '/usr/local/bin/gsopcast'
/usr/bin/install: 无法创建一般文件 “/usr/local/bin/gsopcast”: Permission denied
make[1]: *** [install-binPROGRAMS] 错误 1
make[1]:正在离开目录 `/home/dxb/桌面/gsopcast-0.4.0/src'
make: *** [install-am] 错误 2
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0/src$
dxb20040101 于 2009-04-28 22:26:55发表:
老兄呀,在执行sudo make 的时候就出错了
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0$ sudo make
make all-recursive
make[1]: 正在进入目录 `/home/dxb/桌面/gsopcast-0.4.0'
Making all in po
make[2]: 正在进入目录 `/home/dxb/桌面/gsopcast-0.4.0/po'
file=`echo es | sed 's,.*/,,'`.gmo \
&& rm -f $file && -o $file es.po
/bin/sh: -o: not found
make[2]: *** [es.gmo] 错误 127
make[2]:正在离开目录 `/home/dxb/桌面/gsopcast-0.4.0/po'
make[1]: *** [all-recursive] 错误 1
make[1]:正在离开目录 `/home/dxb/桌面/gsopcast-0.4.0'
make: *** [all] 错误 2
dxb@dxb-desktop:~/桌面/gsopcast-0.4.0$
所以后面的就也不行了
ling2008 于 2009-04-28 20:01:05发表:
我照着楼主做,不行呢,看不到啊
ckpyn 于 2009-04-28 09:18:14发表:
不错,我也装一个去。
matcher 于 2009-04-28 00:25:46发表:
在用了,今天发现中央2没有了。奇怪啊。怎么添加啊。
LinuxSpace 于 2009-04-27 20:02:38发表:
我用的是 GMLIVE
大宝 于 2009-04-27 14:26:24发表:
顶