linux下realmedia和wmv格式的支持

安装的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格式文件,播放成功

对gstreamer 多媒体播放框架需要好好研究一下,还有各种codec库文件具体怎么提供?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值