Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
alsa sound mixing aka dmix (not arts or esd needed)
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3, 4, 5, 6 ... 10, 11, 12  Next  
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
Redeeman
l33t
l33t


Joined: 25 Sep 2003
Posts: 957
Location: Denmark

PostPosted: Tue Mar 16, 2004 5:51 pm    Post subject: Reply with quote

@psygil:
i just didnt know of anything using higher.. cant really explain more ;)

@mooktaking:
yes, you can use arts on top of dmix, just make aarts use alsa, and you will still be able to use regular non-arts programs when arts are running.

but. your thought was wrong, software didnt have to specific support this, just it uses oss or alsa, it will work
_________________
Sandberg Enterprises
Back to top
View user's profile Send private message
MooktaKiNG
Guru
Guru


Joined: 11 Nov 2002
Posts: 326
Location: London, UK

PostPosted: Tue Mar 16, 2004 7:50 pm    Post subject: Reply with quote

Redeeman wrote:
@psygil:
i just didnt know of anything using higher.. cant really explain more ;)

@mooktaking:
yes, you can use arts on top of dmix, just make aarts use alsa, and you will still be able to use regular non-arts programs when arts are running.

but. your thought was wrong, software didnt have to specific support this, just it uses oss or alsa, it will work



Thats great. i'll try it out, as soon as possible :D:D

THNX :D
_________________
http://www.mooktakim.com
Athlon XP 2001, Giga-Byte GA-7VRXP MB, 640Mb DDR RAM 333MHz, MSI Geforce 4800SE 128Mb DDR, 40x12x48 Liteon CDRW drive, Flower Cooler, ADSL Router
Back to top
View user's profile Send private message
Imek
Guru
Guru


Joined: 20 Jan 2004
Posts: 390
Location: Newcastle, England

PostPosted: Wed Mar 17, 2004 8:57 pm    Post subject: Reply with quote

This works for me, to a point.. I used Redeeman's original config and I can play two instances of XMMS at the same time, and I can also use aplay file.wav when XMMS is playing. However, what I want is to play ut2004 and NWN (both SDL apps if I'm not mistaken) but they just don't work like normal. ut2004 says /dev/dsp is busy if I run it without aoss, if I try with aoss it claims /dev/dsp doesn't exist. nwn just says nothing, I just get no sound. This is all with XMMS playing in the background.. And yes, I have the export SDL_AUDIODRIVER=alsa AUDIODEV=default in my .bashrc. Also, I want to run a Wine program (coincidentally, it uses SDL but there is no Linux port for it yet, I'm not sure how Wine works with SDL like this) and I get a segfault if I use aoss, and without aoss I get

err:wave:OSS_WaveOutInit OpenDevice failed (1)
wine: Unhandled exception, starting debugger...
etc

This is all quite frustrating. Any ideas?

Thanks.

PS my card is a bog standard onboard AC'97 dealie
_________________
- I
(very old) "Current" desktop | Adopt an unanswered post today!
Back to top
View user's profile Send private message
Redeeman
l33t
l33t


Joined: 25 Sep 2003
Posts: 957
Location: Denmark

PostPosted: Wed Mar 17, 2004 9:05 pm    Post subject: Reply with quote

are you sure that you have oss emulation in the kernel?
_________________
Sandberg Enterprises
Back to top
View user's profile Send private message
Niek
Apprentice
Apprentice


Joined: 14 May 2002
Posts: 236
Location: Houten, The Netherlands

PostPosted: Thu Mar 18, 2004 6:56 am    Post subject: Reply with quote

Imek wrote:
(...)
However, what I want is to play ut2004 and NWN (both SDL apps if I'm not mistaken) but they just don't work like normal. ut2004 says /dev/dsp is busy if I run it without aoss, if I try with aoss it claims /dev/dsp doesn't exist. nwn just says nothing, I just get no sound.
(...)
UT2004 is not a SDL app, I don't know about NWN. Because UT2004 (and other UT-engine based games) use OpenAL, you need to set this in your ~/.openalrc:
Code:
(define devices '(alsa native))

_________________
Bezoek ook eens de Nederlandstalige Gentoo IRC channel op irc.freenode.net - #gentoo-nl
Back to top
View user's profile Send private message
Redeeman
l33t
l33t


Joined: 25 Sep 2003
Posts: 957
Location: Denmark

PostPosted: Thu Mar 18, 2004 7:00 am    Post subject: Reply with quote

ut2k4 certainly uses SDL, however not for sound ;)
_________________
Sandberg Enterprises
Back to top
View user's profile Send private message
tecknojunky
Veteran
Veteran


Joined: 19 Oct 2002
Posts: 1937
Location: Montréal

PostPosted: Wed Mar 24, 2004 1:59 am    Post subject: Reply with quote

Listening only to my guts, today i unmerged esound :D. Regardless of this thread's title, esd is still needed for some apps to wack the speakers (unless I missed something). Other than that, dmix works. Sensible to cpu usage tough.

Anyone figured out how to have individual volume controls?

Added:

I take it back. I had to reinstall esound. Many apps where making use of libesd.so (name may be wrong). Further, now the sound is again jumpy. So I have two chained mixing layers, if I understand correctly.

Please. Give me a REAL desktop, one that works. It's not my ambition in life to figure out how a desktop works under the hood! :x
_________________
(7 of 9) Installing star-trek/species-8.4.7.2::talax.
Back to top
View user's profile Send private message
gabor
Apprentice
Apprentice


Joined: 12 Dec 2002
Posts: 156
Location: Slovakia

PostPosted: Wed Mar 24, 2004 8:32 pm    Post subject: Reply with quote

>I had to reinstall esound. Many apps where making use of libesd.so


you could try to reemerge those apps (and remove "esd" from your use-flags (or add "-esd" to your use flags)
Back to top
View user's profile Send private message
tecknojunky
Veteran
Veteran


Joined: 19 Oct 2002
Posts: 1937
Location: Montréal

PostPosted: Wed Mar 24, 2004 8:46 pm    Post subject: Reply with quote

gabor wrote:
>I had to reinstall esound. Many apps where making use of libesd.so


you could try to reemerge those apps (and remove "esd" from your use-flags (or add "-esd" to your use flags)
Which brings me to my next question: How do you identify those apps?

For example, much to my suprise, d4x (dowloader for X) use that libray. So does gdm. Probably Gnome too.

Might as well recompile the whole system. Remember, i don't use Windows anymore and this my main system. I guess you know how long and dangerous this could be. That's why I'm complaining for simplicity on desktops. :(
_________________
(7 of 9) Installing star-trek/species-8.4.7.2::talax.
Back to top
View user's profile Send private message
gabor
Apprentice
Apprentice


Joined: 12 Dec 2002
Posts: 156
Location: Slovakia

PostPosted: Thu Mar 25, 2004 10:59 am    Post subject: Reply with quote

i usually do this in the following way:

1. i identify the .so files in /usr/lib, which are linked to the given (already removed, like esd) .so files
2. i identify the packages, to which the .so files belong ( "epm -qf /usr/lib/libmy.so")
3. i reemerge them

step 1 can be done like this:
a. 'ldd', lists the dependencies for a given file ('ldd my.so')
b. i do it for all the files in /usr/lib
("for file in * ; do echo $file; ldd $file; done >~/log.txt") (i do this in /usr/lib
c. i go through log.txt and search for "not found"

:)
Back to top
View user's profile Send private message
tecknojunky
Veteran
Veteran


Joined: 19 Oct 2002
Posts: 1937
Location: Montréal

PostPosted: Thu Mar 25, 2004 5:48 pm    Post subject: Reply with quote

Yeah, I thought it would have to be the hard way. Something like that should be taken cared of by Portage. In fact, this is what many of the Debian sect members at the University reproach to Gentoo.

I don't have time for this. I will finish the job in a couple of months. Thanks for the answer tough.
_________________
(7 of 9) Installing star-trek/species-8.4.7.2::talax.
Back to top
View user's profile Send private message
charlieg
Advocate
Advocate


Joined: 30 Jul 2002
Posts: 2149
Location: Manchester UK

PostPosted: Fri Mar 26, 2004 1:00 am    Post subject: Reply with quote

gabor wrote:
c. i go through log.txt and search for "not found"


grep "not found" log.txt
_________________
Want Free games?
Free Gamer - open source games list & commentary

Open source web-enabled rich UI platform: Vexi
Back to top
View user's profile Send private message
semiSfear
Guru
Guru


Joined: 08 Jul 2003
Posts: 302
Location: Adelaide, SA

PostPosted: Fri Mar 26, 2004 2:11 am    Post subject: Reply with quote

Well it works. But I am very dissapointed at alsa-xmms. I can play music thru xmms and watch at several movies at once and hear all sound sources, but xmms sound quality is bad. The sound in xmms get choppy, like you hear short "ticks" every half second. Tick tick tick chop tick tick chop chop ...

Really annoying, so far I'v solved it with using OSS in xmms and start xmms with "aoss xmms". Performance is good, can't say it's a bigger difference when I was using esd. Still it feels nice not to use a sound daemon which takes up CPU cycles and memory, no? :wink:

But if anyone got any good suggestons on improving the sound quality in xmms then please share with the public.

My specs:
gentoo-dev-sources 2.6.3-r1
media-libs/alsa-lib-0.9.8
media-libs/alsa-oss-0.9.8
media-sound/alsa-utils-0.9.8
media-plugins/alsa-xmms-0.9.12
~/.asoundrc:
Code:

pcm.mixer {
    type dmix
    ipc_key 1024
    slave {
      pcm "hw:0,0"
      period_time 0
      period_size 1024
      buffer_size 8192
      rate 44100
    }
  }
 
  pcm.!default {
    type plug
    slave.pcm "mixer"
  }

_________________
DnB is my religion, Jungle is my church.
Back to top
View user's profile Send private message
synic
n00b
n00b


Joined: 11 Jan 2003
Posts: 49
Location: SLC, Utah

PostPosted: Wed Mar 31, 2004 7:08 pm    Post subject: Reply with quote

Hi,

Here's my /etc/asound.conf:

Code:


pcm.cs46xx {
   type hw
   card 0
}
ctl.cs46xx {
   type hw
   card 0
}
                                                                               
pcm.mixer {
  type dmix
  ipc_key 1024
  slave {
    pcm "hw:0,0"
    period_time 0
    period_size 1024
    buffer_size 8192
    rate 44100
  }
}
                                                                               
pcm.!default {
  type plug
  slave.pcm "mixer"
}


Anything using ALSA after this appears to play, but I hear no sound (like it's muted). OSS apps play fine (ie. play /file/to/sound.wav).

I've tried different variations of /etc/asound.conf with no luck.

The card I am using is snd_cs46xx - and it _has_ worked before (without using dmix), but no longer does (I cannot play two sounds at the same time).

I'm getting kind of frusterated - can anyone help me out?

Thanks,

Adam Olsen
_________________
Adam Olsen
Jabber: synic@jbother.org | irc.freenode.net / #exaile
Try Exaile! It's groovy. http://www.exaile.org
Back to top
View user's profile Send private message
bushwakko
Guru
Guru


Joined: 25 Mar 2003
Posts: 495

PostPosted: Thu Apr 01, 2004 5:14 pm    Post subject: Reply with quote

It seems to me that all apps using alsa's pcm thingy works perfectly with dmix, however some apps use hw directly and then it doesn't work. :/

Could this be the problem, if so, could you make hw be a slave to dmix too or something?
_________________
Macbook Pro 15"
Core 2 Duo 2,33ghz
2gb Ram
ATI Mobility x1600 256mb
Back to top
View user's profile Send private message
Redeeman
l33t
l33t


Joined: 25 Sep 2003
Posts: 957
Location: Denmark

PostPosted: Tue Apr 06, 2004 12:51 pm    Post subject: Reply with quote

hmm, i dont think you can.. let me know if you find something interresting
_________________
Sandberg Enterprises
Back to top
View user's profile Send private message
wizard69
Apprentice
Apprentice


Joined: 22 Sep 2003
Posts: 178
Location: Berlin

PostPosted: Tue Apr 06, 2004 1:14 pm    Post subject: Reply with quote

Here is my .asoundrc ( intel8x0)

Code:

pcm.dsp0 {
   type plug
   slave.pcm "dmixer"     # use our new PCM here
}

# mixer0 like above
ctl.mixer0 {
   type hw
   card 0
}

pcm.intel8x0 {
   type hw
   card 0
}

ctl.intel8x0 {
   type hw
   card 0
}

pcm.dmixer {
   type dmix
   ipc_key 1024         # must be unique!
   slave {
      pcm "hw:0,0"      # you cannot use a "plug" device here, darn.
      period_time 0
      # if the next two are set to powers of 2, dmix and oss-emu
      #   play together well (x^2: it's all oss knows)
      period_size 1024   # must be power of 2
      buffer_size 4096  # dito. It
               #format "S32_LE"
               #periods 128      # dito.
      rate 44100
      #rate 8000      # with rate 8000 you *will* hear,
               # if ossmix is used :)
   }

   # bindings are cool. This says, that only the first
   # two channels are to be used by dmix, which is enough for
   # (most) oss apps and also lets multichannel chios work
   # much faster:
   bindings {
      0 0   # from 0 => to 0
      1 1   # from 1 => to 1
   }
}



Info from: https://forums.gentoo.org/viewtopic.php?t=134743&highlight=multiple+sounds

http://www.alsa-project.org/alsa-doc/doc-php/template.php3?module=intel8x0
Back to top
View user's profile Send private message
image
n00b
n00b


Joined: 03 Apr 2004
Posts: 17

PostPosted: Tue Apr 06, 2004 8:01 pm    Post subject: Reply with quote

semiSfear:

in xmms, you probably have to untick mtrr in alsa's configuration. that got rid of the noise for me.
Back to top
View user's profile Send private message
iDarbert
Apprentice
Apprentice


Joined: 19 Nov 2003
Posts: 251
Location: Bergamo, BG

PostPosted: Sun Apr 11, 2004 5:56 pm    Post subject: Reply with quote

How about the Sound Blaster Extigy? This OSS emulation layer is driving me crazy!
_________________
Perchè gli utenti BSD odiano tanto Linux?
Back to top
View user's profile Send private message
einstein1981
Guru
Guru


Joined: 10 Mar 2004
Posts: 395
Location: Venezuela , Caracas

PostPosted: Thu Apr 15, 2004 7:41 pm    Post subject: Redeeman you are awsome!! Reply with quote

I actually copied and pasted it to my file in home folder and it works, nothing more to do!!

for informational purposes only for htose who read this post, it works on a dell inspiron 5150 laptop, with an intel 8xx sound card!

thanks a lot!
_________________
thesis.
Back to top
View user's profile Send private message
Given M. Sur
l33t
l33t


Joined: 03 Feb 2004
Posts: 648
Location: No such file or directory

PostPosted: Sat Apr 17, 2004 6:24 am    Post subject: Reply with quote

Well, mplayer works fine for me, but I get no sound from mplayerplug-in. I tried adding "ao=alsa9:default" to /etc/mplayerplug-in.conf, but that didn't do anything.

Anybody know why mplayer would work but the plugin wouldn't?

By the way, I'm using mplayer 1.0_pre3_r5 and mplayerplug-in 2.50.

Everything else works fine though, so thanks everyone!

Edit: The problem is different than I thought. See my next post.

SOLVED -- See later post
_________________
What is the best [insert-type-of-program-here]?


Last edited by Given M. Sur on Sat Apr 24, 2004 5:07 am; edited 2 times in total
Back to top
View user's profile Send private message
provicemo
Apprentice
Apprentice


Joined: 12 Dec 2003
Posts: 201
Location: Detroit, MI

PostPosted: Sat Apr 17, 2004 10:52 pm    Post subject: Reply with quote

I just fixed a problem i had while trying to use mplayer alsa at the same time as anything else played via alsa. I changed:
Code:
alsa9:default
to
Code:
alsa9:dmixer
and now it works GREAT.
Back to top
View user's profile Send private message
Given M. Sur
l33t
l33t


Joined: 03 Feb 2004
Posts: 648
Location: No such file or directory

PostPosted: Sun Apr 18, 2004 7:07 am    Post subject: Reply with quote

I tried changing it to alsa9:dmixer in mplayerplug-in.conf and now I get sound, but the videos are playing about 3X to fast.

Edit: Hmm... it seems that my problem is with all streaming mplayer videos not just mplayerplug-in. I found a thread that might help me (https://forums.gentoo.org/viewtopic.php?t=94052&highlight=mplayerplugin+fast), but I'm going to fiddle with some stuff and see if I can get it working without following that thread (since I didn't understand what that thread was saying to do exactly).

Another edit: I just checked and mplayer has no sound in streaming videos with alsa9:default, but is playing at the correct speed. So it's definately the alsa9:dmixer that's causing it to speed up (with sound).

Last edit: Well, using alsa9:dmixer definately doesn't work for me. MPlayer plays local files about 15% too fast, and streaming files about 300% too fast with that setting. I tried using RealTimeClock support as suggested in the other thread, but it did not help at all. So, I unenabled rtc, and switched back to alsa9:default.

Well, I just realized that with alsa9:default I do not get sound from movies that are 48kHz when I have "rate 44100" in ~/.asoundrc, and I do not get sound from movies that are 44.1kHz when I have "rate 48000". So, perhaps the streaming files that I have been testing have been at different rates than either of those.

Is there any way to make the rate variable? Or is there anything I can do to convert it at playback?

SOLVED -- see later post
_________________
What is the best [insert-type-of-program-here]?


Last edited by Given M. Sur on Sat Apr 24, 2004 5:07 am; edited 1 time in total
Back to top
View user's profile Send private message
Given M. Sur
l33t
l33t


Joined: 03 Feb 2004
Posts: 648
Location: No such file or directory

PostPosted: Sun Apr 18, 2004 9:49 am    Post subject: Reply with quote

Okay, I figured out the problem with putting "alsa9:dmixer" in mplayer.conf.

It will play the file at whatever speed you have in ~/.asoundrc. So, if you have the rate set to 48000 and try to play a file that has audio in 41.4kHz it will be too fast. Likewise if your rate is set to 44100 and try to play a file that has audio at 48kHz it will be too slow. (Unfortunately, I have (almost)perfect pitch, so I will always notice if the pitch is too high or too low, and it will bug me a lot)

So, apparently I've been testing streaming files that are in a very low rate, which is why they were playing about 3X too fast.

So, at the moment I'm limited to using just mplayer and changing my ~/.asoundrc anytime I need to play a file with a different frequency. I will not be able to use mplayerplug-in though, because there is no way to know what frequency the files are playing at then.

Which brings me back to the questions: Is there any way to make the rate variable in ~/.asoundrc? Or is there any way to make mplayer convert the sample rate at playback?

SOLVED -- see next post
_________________
What is the best [insert-type-of-program-here]?


Last edited by Given M. Sur on Sat Apr 24, 2004 5:07 am; edited 1 time in total
Back to top
View user's profile Send private message
Given M. Sur
l33t
l33t


Joined: 03 Feb 2004
Posts: 648
Location: No such file or directory

PostPosted: Tue Apr 20, 2004 12:14 am    Post subject: Reply with quote

Well, due to my problems with mplayer (see above) I figured I would try to use mplayer with ao=oss, and then use "aoss mplayer" to play files.

This allows me to play files that are in different frequencies with mplayer, but unfortunately, aoss will not allow me to play more than one sound at once, which makes it completely useless (since if I only wanted one sound at once I wouldn't have ever tried setting up dmix).

Does anybody know how I can get aoss to play more than one sound at once?

EDIT - PROBLEM SOLVED:
In mplayer it is possible to convert audio sample rates using the -srate flag. Or you can edit your mplayer config file (/etc/mplayer.conf, or ~/.mplayer/config) and add the line srate=X (X being the rate defined in .asoundrc).

:oops: I can't believe that the mplayer man page was the last thing I checked (after a whole lot of hassle trying to configure .asoundrc)
_________________
What is the best [insert-type-of-program-here]?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6 ... 10, 11, 12  Next
Page 5 of 12

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum