Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103717985
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-15 08:39:27

作者: Relief  出自:
安装的totem使用的是gstreamer组件播放视频或者音频的;

但是fedora安装盘和yum仓库中提供的gstreamer组件只有gstreamer,gstreamer-plugins-base,gstreamer-plugins-good这几个包;

realmedia格式的支持在gst-plugins-ugly里面提供,wmv格式的支持在gst-plugins-ffmpeg里面提供;

gst-plugins-bad里面也提供了对其他一些格式,比如aac等的支持

安装gst-plugins-bad时提示需要一些库文件不存在:
warning: gstreamer-plugins-bad-0.10.5-3.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID e42d547b
error: Failed dependencies:
libSoundTouch.so.1 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libcdaudio.so.1 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libdca.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libdirect-1.0.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libdirectfb-1.0.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libfaac.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libfaad.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libfusion-1.0.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libmms.so.0 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libx264.so.58 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386
libxvidcore.so.4 is needed by gstreamer-plugins-bad-0.10.5-3.fc8.i386

这些库文件由哪个包提供也不好搜索,不过realplayer的rpm包好像这些so文件都能提供;如果安装gstreamer需要realplayer先安装的话,那么也就没有必要安装gstreamer了,直接安装realplayer好了;

后来试着安装了mplayer,也是提示需要一些库文件找不着;
warning: mplayer-1.0-0.42.rc2.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID e42d547b
error: Failed dependencies:
libaa.so.1 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libamrnb.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libcaca.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libcucul.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libdca.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libdvdnavmini.so.4 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libfaac.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
liblirc_client.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libmad.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libmp3lame.so.0 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libx264.so.58 is needed by mplayer-1.0-0.42.rc2.fc8.i386
libxvidcore.so.4 is needed by mplayer-1.0-0.42.rc2.fc8.i386
mplayer-fonts is needed by mplayer-1.0-0.42.rc2.fc8.i386


这其中的一些so文件很可能就是codec库文件;具体这些so文件怎么获得,以后还得研究研究;

既然rpm文件无法正常安装,干脆通过源码安装好了;

下载了gst-plugins-bad和gst-plugins-ugly的最新源码包;
但是configure的时候,提示找不到liboil,解决了这个问题后,又提示找不到gstreamer,gstreamer-plugins-base等等;

原来liboil和gstreamer等都是通过rpm安装的,直接安装bin格式,不是通过源码安装的,也就没有安装pkgconfig文件,而gst-plugins-bad configure的时候都是通过pkg_config来找依赖文件的;
现在有三种途径,
一是自己制作pc文件,放到/usr/lib/pkgconfig目录下面,因为gst和liboil都是放在/usr/lib目录下面,
另外就是重新下载相关的源码,通过源码将liboil,gstreamer,gstreamer-plugins-base都安装一遍;
再就是修改configure文件,不通过pkgconfig来搜索依赖文件路径,直接在/usr/lib目录下搜索,这样修改可能很大,不建议;

因为fedora提供的gstreamer并不是最新的,而我下载的gst-plugins-bad和gst-plugins-ugly是最新的,它依赖最新的gstreamer和gst-plugins-base,所以干脆下载了最新的gstreamer和gst-plugins-base源码包,都重新用源码安装一遍;

安装gst-plugins-bad和gst-plugins-ugly时候,.configure最后会提示某些会被built,某些不会被built,还没有闹明白,不知道会不会对后面有影响?

最后所有的安装结束了之后,通过totem播放一个rmvb格式的文件,提示的为一个gstreamer error,和以前播放时找不到合适的plugins、不支持realmedia不一样;

通过命令行
totem --gst-debug-level=1
(--gst-debug-level表示gstream的日志级别,0为fetal级别,5为所有日志,1为error)

重新播放文件,提示找不到对应的codec,在/usr/lib/codec;/usr/lib/win32;/usr/lib/;/usr/local/lib;/usr/local/lib/codec等目录下面找不到drvc.so:drv4.so.6.0

这两个so文件由谁来提供的啊,这个真是不知道,从网上搜索了知道,realplayer可以提供这两个so文件,这样又回到了以前的问题了,如果要安装realplayer才能解决gstreamer的编解码问题,那么也就没有必要安装gstreamer了,我觉得gstreamer应该提供了相应的codec工具,可能是我某个地方编译的时候没有注意;

后来在网上搜了一下,一个好心人,上传了一个压缩包,里面包含一些so文件和dll文件,都是和codec相关的,也包含drvc.so和drv4.so.6.0,将包里面的so文件导到/usr/lib/codec目录下,就其他dll文件导到/usr/lib/win32目录下面;

重新播放rmvb文件,正常了,播放rm文件,也正常了;

但是播放wmv,说需要window media audio 8 codec和window media video 8 codec

找了一些gstreamer上的资料,gstreamer-plugins-ffmpeg提供对wmv格式的支持,因此下载gst-plugins-ffmpeg源码包,安装完之后,重新播放wmv格式文件,播放成功。
阅读(506) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~