LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 7023|回复: 21

用OSS让你的集成声卡完美支持多音频流

[复制链接]
发表于 2005-3-16 04:12:49 | 显示全部楼层 |阅读模式
昨天晚上翻译了《使你的系统支持多音频流 [Allow multiple programs to play sound at once]》,意犹未尽,呵呵,就拿自己的机器做实验,去装了那个不开源的OSS。试了以后感觉还不错,加上它虽然说是商业软件,但可以免费使用几个月,而且过期后可以重新下载安装来继续使用,对于它良好的表现来说,至少在现在linux上多音频流问题解决起来比较复杂的情况下,也算是值得了。下面就是安装的全过程:

1、为了避免麻烦,我移除了系统中的alsa驱动、esd的相关内容,只保留了alsa-lib、libao等。并将/etc/modprobe.conf中系统默认的oss驱动内容,和alsa声卡相关内容注释掉了。

2、从http://www.opensound.com/download.cgi 上下载驱动包。如果你的内核是使用的官方内核,没有自己编译,那么你和我一样,要使用NO REGPARM的版本。如果你编译内核并且使用了CONFIG_REGPARM=y,那么你就要下载REGPARM的版本。如果安装过程中出错,有可能是你下载了错误的版本,按照提示查看log,其中会有提示说你下载了错误的包。

  1. # proz -k=2 ftp://www.se.opensound.com/pub/oss/linux/oss3992b-linux-x86-v26.tar.gz
复制代码

我用的prozilla开了两个线程下载(因为那个服务器好像最多只支持两个线程。

3、把下载到的包拷贝到/tmp中,并解压缩。

  1. # cp oss3992b-linux-x86-v26.tar.gz /tmp
  2. # cd /tmp
  3. # gunzip oss3992b-linux-x86-v26.tar.gz
  4. # tar xvf oss3992b-linux-x86-v26.tar
复制代码


4、解压出来的文件中,有一个oss-install文件。检查权限,如果没有可执行权限,则:

  1. # chmod +x *
复制代码


5、下面的各步需要管理员权限,所以要先su。然后在 /sbin 下为lsmod建立一个软连接。因为oss的安装程序会到 /sbin 下寻找lsmod。不做这一步,安装过程会出错中断。检查你系统中已经加载的模块,把和声音有关的驱动先rmmod掉。这一步不做也可以,安装时程序会警告并寻问你是否由它来完成,那时只要回车即可。我这么做是为了稳妥起见。

  1. # su
  2. password:yourpassword
  3. # cd /sbin
  4. # ln -s /bin/lsmod
  5. # less /proc/modules
  6. # rmmod ... ... ...
复制代码


6、执行安装程序。

  1. # cd /tmp
  2. # ./oss-install
复制代码


7、安装过程中除了要选择路径,需要人为参与的地方几乎没有,就是让你阅读一些条款,和安装注意事项等等。建议大概看一看,也有些有用的东西。

8、安装结束后,会进入设置页。在这里,你要在Add中添加一个叫做the 4Front Virtual mixer的软件混音器。添加完毕会回到设置页的主页面,顶部可以看到你的声卡和刚才添加的混音器。你还可以选择下面的两个testing中的一个,来测试oss是否工作正常。

9、如果是按默认路径安装的,启动oss的程序就是 /usr/lib/oss/bin/soundon。你可以把这个命令加入到任何启动脚本中,比如/etc/rc.local,来实现oss的启动自动加载(安装程序里的那个启动时加载的选项好像无效,要自己手动加……ft……)

10、现在你可以简单的测试一下你的支持多音频流的声音系统了

  1. # sudo /usr/lib/oss/bin/soundon
  2. # mpg321 001.mp3 &
  3. # mpg321 002.mp3 &
  4. # mpg321 003.mp3 &
复制代码


另外,oss默认支持的音频流好像是8个。如果你希望改动它,请参考相关文档。不过……谁会变态到用到8个以上……汗,听着mp3,看着电影,浏览着网页上的flash,QQ响了,gaim响了,系统警铃响了,这些全加一起,也不过才六个嘛。
 楼主| 发表于 2005-3-16 04:22:03 | 显示全部楼层
另外,在/usr/lib/oss/docs/ 下,有许多有用的文档。类似KDE-howto之类。讲述了不同的情况下如何使oss良好的工作。有问题的时候,比如进了kde就不能发声了,不妨去查看一下。
回复 支持 反对

使用道具 举报

发表于 2005-3-16 09:00:53 | 显示全部楼层
不错。不过我这里realplayer在oss下始终无法工作。真晕死。倒是alsa-oss它就能工作。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-16 16:24:05 | 显示全部楼层
呵呵。我没用过realplayer。过会儿试试。

啊,还有差点儿忘了说。如果升级了内核,就要重新安装OSS了。所以一般情况下,如果内核没有什么大的改进,并且现有的使用起来没有问题的话,那就在 /etc/pacman.conf 里加入一行来避免升级内核,例如:
IgnorePkg = kernel26
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-16 17:09:32 | 显示全部楼层
tx-cary,我这里realplayer10很正常啊……

刚才还搞笑呢,我pacman -Ss发现源里没有,竟然跑去找源码包……汗……后来脑子清醒了老老实实到realplayer的网站上下了个bin。
回复 支持 反对

使用道具 举报

发表于 2005-3-16 17:30:00 | 显示全部楼层
Post by diony
tx-cary,我这里realplayer10很正常啊……

刚才还搞笑呢,我pacman -Ss发现源里没有,竟然跑去找源码包……汗……后来脑子清醒了老老实实到realplayer的网站上下了个bin。


也许是我声卡驱动的问题。realplayer在tur中有做好的pkg,不过也是用bin做的,不是源码(real的源码好像没有GPL,要注册才给。我注册了它发密码时却发个空邮件,真气愤)
回复 支持 反对

使用道具 举报

发表于 2005-3-21 22:00:20 | 显示全部楼层
哈哈...按照楼主的帖子搞定啦...感谢楼主

有点不同的是:
我的kernel是2.4的.(不知道的就#kernelversioon看看)
下载下来装的时候,问我要不要把声音有关的驱动先关掉.我选Yes
回答说现在的sound 设备忙,然后我退出X,ctrl+alt+F1下面./oss-install
一切顺利..oss安装界面也很不错的.装完了还自动测试左右声道
现在好了,这个世界终于热闹了.
回复 支持 反对

使用道具 举报

发表于 2005-3-21 22:00:52 | 显示全部楼层
哈哈...按照楼主的帖子搞定啦...感谢楼主

有点不同的是:
我的kernel是2.4的.(不知道的就#kernelversion看看)
下载下来装的时候,问我要不要把声音有关的驱动先关掉.我选Yes
回答说现在的sound 设备忙,然后我退出X,ctrl+alt+F1下面./oss-install
一切顺利..oss安装界面也很不错的.装完了还自动测试左右声道
现在好了,这个世界终于热闹了.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-21 22:17:42 | 显示全部楼层
嗯。5月份别忘了再装一次。呵呵。oss安装过一次再装就极其轻车熟路了。基本都不用什么特别的设置,很方便。相比alsa配置上滴麻烦,我倒是更愿意隔几个月装一次声卡驱动。

另外我刚刚发现原来oss有界面的……汗……习惯了在commandline下装驱动之类的东西,竟然刚发现。
回复 支持 反对

使用道具 举报

发表于 2005-3-21 22:39:19 | 显示全部楼层
看来高兴早啦一点
重起机子后进入kde声音播放不了啦......
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表