[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

etch下esd和alsa如何共存?



google了一些资料。以下是我对多音频流的理解(未必正确和准确):
对于使用esd服务的程序,可以用下面的图表示:
程序
 |
esd
 |
驱动(oss)
 |
声卡

同时esd可以提供多音频流的mix,即有多个程序使用esd时。
程序A    程序B
  |       |
  ───────
      |
     esd(mix)
      |
     驱动
      |
     声卡

这样通过esd服务程序就可以实现多音频流对于。

而对于可以直接使用alsa驱动的程序,则是
  程序
   |
alsa驱动
   |
  声卡

alsa也可以提供多音频流的mix(通过dmix插件),即多程序使用alsa时
程序C    程序D
  |       |
  ───────
      |
     ALSA (mix)
      |
     声卡

对于esd,原本是使用oss驱动,但现在通过gstreamer0.8-alsa,我们可以使esd调 用alsa驱动。那么,按照设想,可以得到:
程序A    程序B        程序C     程序D
  |       |            |        |
  ───────            ───────
      |                   |
     esd(mix)             |
      |                   |
      ────────────────
	          |
               ALSA驱动 (mix)
      		  |
                 声卡

以上是我的理解。接下来是问题了
按照资料,alsa在0.10版本以后就自动enable dmix了,我试了一下,可以同时使 用alsaplayer和xmms播放两首不同的歌(这就应该是dmix成功了吧?),但此时开 不了esd服务。或者开了esd服务就播不了歌。如何解决无头绪中,感觉应该是esd 的设置问题(已把"多媒体系统选择器中“默认接受器选为alsa)
请问还需要做别的啥设置么?



Reply to: