alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Jak dostosować Slackware w tych dziedzinach.

Moderatorzy: Moderatorzy, Administratorzy

goh
Użytkownik
Posty: 12
Rejestracja: 2004-12-13, 23:23

alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: goh »

Pierwszy raz na forum, witam :)

Moj problem:
Mam slacka 10, jajko 2.4.6, alse i dzwiek dzieki sb128pci widzianym jako es1371. Problem w tym, ze naraz nie mozna sluchac dzwieku z dwoch zrodel. Przykladowo slucham muzyke z mp3 i podczas odtwarzania utworu kiedy dostaje nowa wiadomosc w gg nie odwarza dzwieku powiadomienia. Dopiero gdy utwor sie konczy wtedy slysze zakolejkowane dzwieki przychodzacych wiadomosci gg. Jak ustawic by bylo dobrze? Z gory dzieki za pomoc.

pozdrawiam
Awatar użytkownika
cherry
Moderator w st. spocz.
Posty: 1160
Rejestracja: 2004-06-15, 09:57
Lokalizacja: Kraków
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: cherry »

Musisz zastosować jakiś serwer dźwięku: esound, arts, jack, itp.
Następnie odpowiednio skonfigurować odgrywarki.
Cльaцквaрэ Линукс цypэнт
[url]http://www.pajacyk.pl/[/url]
[url]http://www.polskieserce.pl/[/url]
goh
Użytkownik
Posty: 12
Rejestracja: 2004-12-13, 23:23

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: goh »

Ech.. dzieki :). A ja myslalem, ze ALSA jest serwerem dzwieku :?.

pozdrawiam
Awatar użytkownika
Minder
Użytkownik
Posty: 540
Rejestracja: 2004-08-08, 15:12
Lokalizacja: Bielsko-Biała
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: Minder »

Nie trzeba dodatkowych serwerów. W alsie jest mixer, ale jest domyślnie wyłączony. W przedostatnim Linux+ było napisane jak to uruchomić (mnie się nie udało, ale ja zazwyczaj przy okazji wiele mieszam :P ).
Musisz stworzyć plik ~/.asoundrc o podobnej zawartości:

Kod: Zaznacz cały

pcm.!default {
   type plug
   slave.pcm "dmixer"
}

pcm.dsp0 { 
   type plug
   slave.pcm "dmixer"
}

pcm.dmixer {
   type dmix
   ipc_key 1024
   slave {
      pcm "hw:0,0"
      period_time 0
      period_size 1024
      buffer_size 8192
      rate 44100
   }
   bindings {
      0 0
      1 1
   }
}

ctl.mixer0 {
   type hw
   card 0
}
Jeśli masz np. kartę telewizyjną, to powinieneś zmodyfikować ten plik, żeby wskazywał na odpowiednie karty. W programach grających też pewnie będzie trzeba coś tam ustawić ;) Po dalsze informacje odsyłam do katalogu /usr/doc. Daj znać czy zadziałało :)

[ Dodano: 2004-12-14, 07:25 ]
Tutaj też jest coś na ten temat.
Tutaj jest oficjalna dokumentacja :)
[url=http://Polish-30642126344.SpamPoison.com][img]http://pics2.inxhost.com/images/sticker.gif[/img][/url] [url=http://www.bykom-stop.avx.pl][img]http://www.bykom-stop.avx.pl/bannery/80x15.png[/img][/url]
Awatar użytkownika
Hannibal
Moderator w st. spocz.
Posty: 1644
Rejestracja: 2004-06-08, 16:03
Lokalizacja: Łódź
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: Hannibal »

Ciekawe, ale przyznam się bez bicia że nie do końca rozumiem ideę tego configa :oops:. Czy chodzi tu o to że tworzymy ileś urządzeń pcm i ustawiamy w nich slave.pcm na pcm dmixa a w pcm dmiksa ustawiamy slave.pcm na nasze sprzętowe urządzenie pcm ??? Czy może to działa jakoś inaczej ???
[size=75]Hannibal@current@2.6.X[/size]
luser
Użytkownik
Posty: 9
Rejestracja: 2004-12-12, 11:43

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: luser »

goh pisze:Pierwszy raz na forum, witam :)

Moj problem:
Mam slacka 10, jajko 2.4.6, alse i dzwiek dzieki sb128pci widzianym jako es1371. Problem w tym, ze naraz nie mozna sluchac dzwieku z dwoch zrodel. Przykladowo slucham muzyke z mp3 i podczas odtwarzania utworu kiedy dostaje nowa wiadomosc w gg nie odwarza dzwieku powiadomienia. Dopiero gdy utwor sie konczy wtedy slysze zakolejkowane dzwieki przychodzacych wiadomosci gg. Jak ustawic by bylo dobrze? Z gory dzieki za pomoc.
Witam,
Wiec podstawowe pytanie czy Twoja karta pozwala na sprzetowe mixowanie(ewentualnie czy sterwoniki na to pozwalaja)? Jesli tak to wszystko powinno dzialac, a jesli nie to zostaje softwarowe mixowanie(co do serwerow dziwieku jakos nigdy mi nie podchodzilo to rozwiazanie) - dmix - jakie oferuje alsa dla gorszych kart muzycznych - i to jest wlasnie ten plik .asoundrc. Kiedys trzeba bylo jeszcze jakos konfigurowac wtyczki np w xmms zeby kozystaly z dmix'a nie wiem jak to jest teraz bo na szczescie mam juz lepsza karte :).
Akira
Użytkownik
Posty: 75
Rejestracja: 2004-06-14, 17:18

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: Akira »

Taki prezent na gwiazdke :). Potwierdzam ze u mnie dziala. Ja juz mialem u siebie EsounD, aRts, polipaudio. Wszystkie mają swoje wady. A tu takie proste rozwiązanie. Co wiecej rewelacyjne jest to przekierowywanie kanałów w koncu lewy głosnik daje u mnie "lewe" dzwięki a prawy "prawe" - mam sprzętową niekompatybilność (za krótkie kable głosników) i dlatego musze z tego tipsa korzystac :)
goh
Użytkownik
Posty: 12
Rejestracja: 2004-12-13, 23:23

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: goh »

Minder pisze: Daj znać czy zadziałało :)
Dzięki wielkie, nie chciałem instalować bibliotek gnome dla esd ani kde dla arts :] więc takie rozwiązanie z alsą byłoby dla mnie najlepsze. Jutro się tym zajmę bo dopiero co wróciłem z pracy i sił już nie mam myśleć :D . Jak tylko cos wskuram dam znać.

pozdrawiam
Awatar użytkownika
mattey24
Użytkownik
Posty: 17
Rejestracja: 2004-11-16, 12:30

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: mattey24 »

Hej,
doczepiam się do tego tematu, bo mam problem który został poruszony :D
Jeśli masz np. kartę telewizyjną, to powinieneś zmodyfikować ten plik, żeby wskazywał na odpowiednie karty.
Mam dokładnie taki problem, alsa wykrywa mi kartę telewizyjną i kartę dźwiękową... problem polega na tym, że karta telewizyjna jest domyślną, przez co nie ma dźwięku... chcę tylko żeby było odwrotnie, szukam rozwiązania od dłuższego czasu i nigdzie nie mogę się doczytać. :?
Pomożecie skromnemu początkującemu? :)
goh
Użytkownik
Posty: 12
Rejestracja: 2004-12-13, 23:23

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: goh »

Minder: Działa, bez modyfikacji żadnych.

pozdrawiam
Awatar użytkownika
Minder
Użytkownik
Posty: 540
Rejestracja: 2004-08-08, 15:12
Lokalizacja: Bielsko-Biała
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: Minder »

mattey24 pisze:problem polega na tym, że karta telewizyjna jest domyślną, przez co nie ma dźwięku...
Na razie nie wiem jak ustawić, żeby dźwiękówka była domyślną. Problem prawdopodobnie wynika z tego, że karty na PCI (a taka na pewno jest ta telewizyjna) mają niższy numer na szynie niż wbudowane karty dźwiękowe (a taką zapewne masz, prawda?). Problem z brakiem dźwięku można rozwiązać jednak w miarę łatwo:
Login na roota. Uruchamiasz alsaconf, on Ci wykryje kartę i w ogóle :) Jeśli teraz uruchomisz alsamixer, to zaczniesz ustawiać poziomy dla domyślej karty, czyli TV - zrób to mimo wszystko. Teraz uruchom alsamixer -c 1 (lub z inną wartością c, eksperymentuj), powinny pojawić się wskaźniki dla karty dźwiękowej. Ustaw jak chcesz. Jeśli masz na górze jakiegoś kanału "MM", to jest on wyciszony (mute) - po najechaniu na niego wciśnij klawisz "m". Na koniec alsactl -store i od tej pory wszystko gra i buczy. No, prawie: w konfiguracjach, np. w XMMS, musisz ustawiać kartę hw:1,0 (oraz dla suwaka kartę "1/PCM") zamiast "default" - to jedyny mankament.

P.S.
Też mam kartę telewizyjną i dźwięk działa u mnie bez problemów. Jedyne, czego na razie nie udało mi się zrobić, to uruchomienie dmix (sic!). Po prostu jestem zbyt leniwy by kombinować z konfiguracją ;) No dobra, kombinowałem, ale widocznie za mało :P

@goh: Bardzo się cieszę, że działa :)
[url=http://Polish-30642126344.SpamPoison.com][img]http://pics2.inxhost.com/images/sticker.gif[/img][/url] [url=http://www.bykom-stop.avx.pl][img]http://www.bykom-stop.avx.pl/bannery/80x15.png[/img][/url]
Awatar użytkownika
Hannibal
Moderator w st. spocz.
Posty: 1644
Rejestracja: 2004-06-08, 16:03
Lokalizacja: Łódź
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: Hannibal »

mattey24 pisze:Mam dokładnie taki problem, alsa wykrywa mi kartę telewizyjną i kartę dźwiękową... problem polega na tym, że karta telewizyjna jest domyślną, przez co nie ma dźwięku... chcę tylko żeby było odwrotnie, szukam rozwiązania od dłuższego czasu i nigdzie nie mogę się doczytać. :?
Pomożecie skromnemu początkującemu? :)
http://forum.slackware.pl/viewtopic.php?t=1681
[size=75]Hannibal@current@2.6.X[/size]
Awatar użytkownika
thurston
Użytkownik
Posty: 38
Rejestracja: 2004-06-13, 20:59
Lokalizacja: Brzeszcze
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: thurston »

Co do odtwarzania kilku źródeł na raz. Najprostsza metoda. Tworzymy dwa pliki:

w /etc/asound.conf z zawartością:

Kod: Zaznacz cały

 pcm.dmixer { 
    type dmix 
    ipc_key 1024 
    slave { 
        pcm "hw:0,0" 
        period_time 0 
        period_size 1024 
        buffer_size 8192 
   rate 44100 
    } 
  
    bindings { 
        0 0 
        1 1 
    } 
} 

pcm.asymed { 
        type asym 
        playback.pcm "dmixer" 
        capture.pcm "hw:0,0" 
} 


  
pcm.dsp0 { 
    type plug 
    slave.pcm "asymed" 
} 
  
pcm.!default { 
        type plug 
        slave.pcm "asymed" 
} 
  
pcm.default { 
   type plug 
   slave.pcm "asymed" 
} 
  
ctl.mixer0 { 
    type hw 
    card 0 
}
oraz w domowym ~/.asoundrc

Kod: Zaznacz cały

pcm.dmixer { 
    type dmix 
    ipc_key 1024 
    slave { 
        pcm "hw:0,0" 
        period_time 0 
        period_size 1024 
        buffer_size 8192 
   rate 44100 
    } 
  
    bindings { 
        0 0 
        1 1 
    } 
} 
  
pcm.dsp0 { 
    type plug 
    slave.pcm "dmixer" 
} 
  
pcm.!default { 
        type plug 
        slave.pcm "dmixer" 
} 
  
pcm.default { 
   type plug 
   slave.pcm "dmixer" 
} 
  
ctl.mixer0 { 
    type hw 
    card 0 
}
W programach (kadu,xmms i np. powiadomieniach kde) ustawiasz odtwarzacz aplay zamiast play (/usr/bin/aplay) i możesz cieszyć się przeźroczystością dźwięku.

[ Dodano: 2004-12-16, 02:11 ]
Minder: Miałem ten sam problem. Domyślną dźwiękówką była bt878 (kernel 2.4.22 alsa z paczek). Pomogło wywalenie paczek alsy i skompilowanie alsy z

Kod: Zaznacz cały

./configure --with-cards=cmipci 
(mam kartę CMI8738)
- - - _~@ Pozdrawiam
-- - `\<, thurston(@)gazeta.pl
_- ()/`()__ ekg2: 1230818
Awatar użytkownika
cherry
Moderator w st. spocz.
Posty: 1160
Rejestracja: 2004-06-15, 09:57
Lokalizacja: Kraków
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: cherry »

Jaki jest sens tworzenia dwóch identycznych plików? Jak masz globalny to na co komu lokalny z tym samym?
Cльaцквaрэ Линукс цypэнт
[url]http://www.pajacyk.pl/[/url]
[url]http://www.polskieserce.pl/[/url]
Awatar użytkownika
Rookie One
Użytkownik
Posty: 230
Rejestracja: 2004-11-13, 13:16
Lokalizacja: Gliwice
Kontakt:

Re: alsa - jak ustawic odtwarzanie z kilku zrodel naraz?

Post autor: Rookie One »

Dziala jak trzeba, jest tylko jeden problem... Wszystko jest w porzadku dopoki wszystkie programy grajace korzystaja z ALSY. Ja np. nie skompilowalem MPlayera z wtyczka dla ALSY, chociaz moge to zrobic, i choc emulacja OSS mi dziala, to juz miksowanie natywnej ALSY z ta emulacja powoduje blad zajetego urzadzenia (tzn. to, co pierwsze dobralo sie do karty gralo dalej, a co probowalo sie dostac pozniej, wywalalo blad ;); dziala w obie strony - zarowno, jesli odtwarza cos w ALSIe i cos innego probuje OSS, jak i gdy cos odtwarza w OSS i cos innego probuje ALSE). Wie ktos jak sobie z tym poradzic?

BTW - fajne przekrety sa ze sterownikami - ja dla mojego CMI8330 musialem najpierw zainstalowac paczke alsa-drivers-1.0.5a, z ktorej modul snd-cmi8330 byl krotko mowiac zwalony, a potem dorzucic ten modul dla CMI8330 tyle, ze z 1.0.6a... :) Na samym 1.0.6a plulo sie o wersje jaderka ze jakis tam plik byl kompilowany pod 2.4.27 (a ja mam 2.4.26... :roll:). ;)
[color=darkblue][b]- [ Slackware 10.2, kernel 2.4.31 ]
- [ Windows XP Home SP2 ][/b][/color]
[size=75]Pentium 4 3 GHz HT, 512 MB RAM, Intel 915G[/size]
Registered Linux User #372988
ODPOWIEDZ