+ -
当前位置:首页 → 问答吧 → 无意中在fc3中实现了多音频流,实现简单,无须配置,但有点问题,希望各位帮忙解决(基本解决,学到不少知识)

无意中在fc3中实现了多音频流,实现简单,无须配置,但有点问题,希望各位帮忙解决(基本解决,学到不少知识)

时间:2005-05-24

来源:互联网

今天,在gnome中用,konqueror,上网,在网上用mplayer打开了一个wmv文件,当同时网页中还有一个flash的mtv,忽然发觉竟然,两个声音都能听到。打开xmms,一听,三个没有任何冲突,但realplay怎么也不能用。

xmms用的是arts,
mplayer用的是sdl(开头字母),1.0pre7,装了gui、skin、xvid、xvid-nvidia,都是rpm包安装。
flash只在konqueror中可以,firefox不可以。

重新启动,机器,结果xmms的arts不能用了,说是locked,用kde(任何小程序都可以)的找个能有报警声效的程序,出点声,结果xmms的arts就可以用了。


都是gnome下操作(本人装了kde,但因为显卡驱动没装好,只能启动gnome)。

请大虾分析一下,为什么重启后,就有问题了。

作者: abcdo   发布时间: 2005-05-24

默认的好像有问题,我还是自己编译的,而且要创建.asoundrc文件

作者: 冷风   发布时间: 2005-05-24

esd 和 arts 都是传统的混音服务器,声音首先送到 服务器,然后由服务器送到声卡驱动。xmms 选择了 artsd 之后,如果 artsd 正在运行,那么就可以正常播放,否则就启动一个。但是如果这时声卡被其他程序占用,那么 artsd 就无法启动了
SDL 的特点在于可以选择可用的服务器或者声卡,在里面选择最好的一个。
你碰巧几个程序都使用了 arts. konqueror 是 KDE 程序,当然默认是用 arts 的。而 gnome 默认会使用 esd,如果 esd 占用了声卡,artsd 就没办法启动,就是你遇到的问题。
现在多音频流使用的修改 asound.conf 的办法,是直接利用 alsa 驱动的 dmix 插件,不使用服务器。使用插件似乎比服务器的效率要高一些,但是不能处理网络上的声音流。esd 和 arts 的设计都是为处理网络上的数据流而特别做的,这是 unix 的传统。据说将来 alsa dmix 普及之后,会设计新的网络声音服务,利用 gstreamer 来做,把网络和混音分离在不同的层次。

作者: bbbush   发布时间: 2005-05-24

引用:
作者: bbbush
esd 和 arts 都是传统的混音服务器,声音首先送到 服务器,然后由服务器送到声卡驱动。xmms 选择了 artsd 之后,如果 artsd 正在运行,那么就可以正常播放,否则就启动一个。但是如果这时声卡被其他程序占用,那么 artsd 就无法启动了
SDL 的特点在于可以选择可用的服务器或者声卡,在里面选择最好的一个。
你碰巧几个程序都使用了 arts. konqueror 是 KDE 程序,当然默认是用 arts 的。而 gnome 默认会使用 esd,如果 esd 占用了声卡,artsd 就没办法启动,就是你遇到的问题。
现在多音频流使用的修改 asound.conf 的办法,是直接利用 alsa 驱动的 dmix 插件,不使用服务器。使用插件似乎比服务器的效率要高一些,但是不能处理网络上的声音流。esd 和 arts 的设计都是为处理网络上的数据流而特别做的,这是 unix 的传统。据说将来 alsa dmix 普及之后,会设计新的网络声音服务,利用 gstreamer 来做,把网络和混音分离在不同的层次。
网络数据流是指什么??我可以同时在线播放视频音频以及本地的多媒体文件呀

作者: 冷风   发布时间: 2005-05-24

谢谢 bbbush

感觉dmix设置对于一些人,有点头大。

直接在gnome的会话中添加arts启动项

运行realplayer用artsdsp realplay(本人用的artsdsp hxplayer,只是把real的库文件放在放在hxplay中),就可以实现real和xmms共存了。


对于使用者来说,简单才是重要的,这样linux才有可能与其他操作系统抗衡,大概fc4已经不许要配置了吧!!

再次谢谢 bbbush

作者: abcdo   发布时间: 2005-05-24

问题解决了。

作者: abcdo   发布时间: 2005-05-24

Fc4已经不许要配置了

作者: ogog   发布时间: 2005-05-24