Strona 1 z 1

OSS 4.2 - brak dźwięku w aplikacjach Gnome - Squeeze

: 18 września 2009, 04:49
autor: asmo
Witam.
Jestem użytkownikiem KDE 4.3.1, skompilowałem ze źródeł ,,open sound system'' (GPL). Dźwięk ładnie działa w aplikacjach KDE oraz iceweasel (flashplugin z repozytorium). Mogę w nich odtwarzać filmy oraz mp3, czyli raczej nie jest to problem z kodekami.

Podejrzewam, że problem w ustawieniach wyjścia w OSS - czyli w zasadzie pytam jak to zrobić? Aplikacje mplayer oraz kaffeine nie odtwarzały dźwięku do czasu wskazania odpowiedniego wyjścia. Nie znam się na dźwięku gnome. Próbowałem to zrobić w następujący sposób:
  1. Uruchomiłem gstreamer-proporties.
  2. Ustawiłem wtyczkę, OSS, przetestowałem i działa.
    Nie słychać dźwieku testowego podczas autodetekcji oraz przy opcjach innych niż OSS.

Po uruchomieniu rhythmboxa i włączeniu pliku mp3 nic nie słychać, nie ma komunikatów o błędach, a pasek odtwarzania się przesuwa. W przypadku filmu na totemie jest wizja, ale brak dźwięku.

Reasumując: w jaki sposób zmusić rhythmboksa i totema do wysyłania ze swojego wyjścia na OSS? Czy nie korzystają one z gstreamer? Może jest jakiś konfigurator dźwięku dla GNOME, który można sobie doinstalować?

PS. Ciekawi mnie brak paczek dla OSS w repozytorium Debiana.

: 18 września 2009, 07:41
autor: ilin
Zainstaluj pakiet gstreamer0.10-plugins-bad

Więcej
http://dug.net.pl/tekst/64/oss4_w_debianie/

Dziwne że do KDE używasz czysto gnomowych aplikacji.

: 18 września 2009, 15:32
autor: asmo
Instalacja gstreamer0.10-plugins-bad nie ma wpływu na odtwarzanie (problem raczej leży w wyjściu):

Kod: Zaznacz cały

t42:/home/asmo# dpkg -l | grep gstreamer
ii  bluez-gstreamer                      4.42-2                     Bluetooth GStreamer support
ii  gstreamer0.10-alsa                   0.10.24-1                  GStreamer plugin for ALSA  
ii  gstreamer0.10-ffmpeg                 0.10.8-2                   FFmpeg plugin for GStreamer
ii  gstreamer0.10-fluendo-mp3            0.10.7.debian-1            Fluendo mp3 decoder GStreamer plugin
ii  gstreamer0.10-plugins-bad            0.10.13-1                  GStreamer plugins from the "bad" set
ii  gstreamer0.10-plugins-base           0.10.24-1                  GStreamer plugins from the "base" set
ii  gstreamer0.10-plugins-good           0.10.16-1                  GStreamer plugins from the "good" set
ii  gstreamer0.10-plugins-ugly           0.10.12-1+b1               GStreamer plugins from the "ugly" set
ii  gstreamer0.10-pulseaudio             0.10.16-1                  GStreamer plugin for PulseAudio      
ii  gstreamer0.10-x                      0.10.24-1                  GStreamer plugins for X11 and Pango  
ii  libgstreamer-plugins-base0.10-0      0.10.24-1                  GStreamer libraries from the "base" set
ii  libgstreamer0.10-0                   0.10.24-1                  Core GStreamer libraries and elements
ii  totem-gstreamer                      2.26.3-1                   A simple media player for the GNOME desktop
Skorzystałem z informacji ze strony: http://dug.net.pl/tekst/64/oss4_w_debianie/ i utworzyłem plik /etc/asound.conf. Po tym zabiegu wtyczka ALSA działa (w gstreamer-proporties test dźwięku pozytywny i zaakceptowałem jako główny, następnie test rhythmboxa), ale nie ma to wpływu na odtwarzanie w aplikacjach GNOME tzn. nie ma dźwięku.

Z desperacji zainstalowałem gnome-control-center (masa niepotrzebnych zależności, później postaram sie usunąć).

Wybierając w GNOME System / Preferencje / Dźwięk mam do wyboru tylko Null Output.

Z aplikacji GNOME korzystam, ponieważ Rhythmbox jest dużo lepszy od nowego Amaroka, od starego tez bardziej mi sie podoba, nie widzę alternatywy poza foobarem2000 uruchamianym z wine. Totem zainstalowałem dla testów by sprawdzić czy problem dotyczy rhythmboxa czy całego systemu dźwięku gnome i chyba zostanie, gdyż posiada fajna wtyczkę do pobierania napisów z sieci. Samo GNOME nie spełnia moich potrzeb jako środowisko graficzne, wole KDE.

: 18 września 2009, 16:46
autor: ilin
Będziesz musiał doinstalować pulseaudio niestety.

Tam zaś plik /etc/pulse/default.pa zmodyfikować na taką zawartość:

Kod: Zaznacz cały

#!/usr/bin/pulseaudio -nF
#
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

# This startup script is used only if PulseAudio is started per-user
# (i.e. not in system mode)

.nofail

### Load something into the sample cache
#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
#load-sample-lazy pulse-access /usr/share/sounds/generic.wav

.fail

### Automatically restore the volume of streams and devices
load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore

### Automatically augment property information from .desktop files
### stored in /usr/share/application
load-module module-augment-properties

### Load audio drivers statically (it's probably better to not load
### these drivers manually, but instead use module-hal-detect --
### see below -- for doing this automatically)
#load-module module-alsa-sink
#load-module module-alsa-source device=hw:1,0
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#load-module module-null-sink
#load-module module-pipe-sink
load-module module-oss device="/dev/dsp" sink_name=output source_name=input mmap=0

### Automatically load driver modules depending on the hardware available
.ifexists module-hal-detect.so
#load-module module-hal-detect
.else
### Alternatively use the static hardware detection module (for systems that
### lack HAL support)
#load-module module-detect
.endif

### Automatically load driver modules for Bluetooth hardware
.ifexists module-bluetooth-discover.so
#load-module module-bluetooth-discover
.endif

### Load several protocols
.ifexists module-esound-protocol-unix.so
load-module module-esound-protocol-unix
.endif
load-module module-native-protocol-unix

### Network access (may be configured with paprefs, so leave this commented
### here if you plan to use paprefs)
#load-module module-esound-protocol-tcp
#load-module module-native-protocol-tcp
#load-module module-zeroconf-publish

### Load the RTP reciever module (also configured via paprefs, see above)
#load-module module-rtp-recv

### Load the RTP sender module (also configured via paprefs, see above)
#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 description="RTP Multicast Sink"
#load-module module-rtp-send source=rtp.monitor

### Load additional modules from GConf settings. This can be configured with the paprefs tool.
### Please keep in mind that the modules configured by paprefs might conflict with manually
### loaded modules.
.ifexists module-gconf.so
.nofail
load-module module-gconf
.fail
.endif

### Automatically restore the default sink/source when changed by the user during runtime
load-module module-default-device-restore

### Automatically move streams to the default sink if the sink they are
### connected to dies, similar for sources
load-module module-rescue-streams

### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink

### Automatically suspend sinks/sources that become idle for too long
load-module module-suspend-on-idle

### If autoexit on idle is enabled we want to make sure we only quit
### when no local session needs us anymore.
load-module module-console-kit

### Enable positioned event sounds
load-module module-position-event-sounds

### Cork music streams when a phone stream is active
load-module module-cork-music-on-phone

# X11 modules should not be started from default.pa so that one daemon
# can be shared by multiple sessions.

### Load X11 bell module
#load-module module-x11-bell sample=bell-windowing-system

### Register ourselves in the X11 session manager
#load-module module-x11-xsmp

### Publish connection data in the X11 root window
#.ifexists module-x11-publish.so
#.nofail
#load-module module-x11-publish
#.fail
#.endif

### Make some devices default
#set-default-sink output
#set-default-source input
Tzn. jeśli dobrze pamiętam, zakomentować tę linię:

Kod: Zaznacz cały

load-module module-hal-detect
i odkomentować

Kod: Zaznacz cały

load-module module-oss device="/dev/dsp" sink_name=output source_name=input mmap=0
Paczki pulseaudio:

Kod: Zaznacz cały

root@debian:/home/adam/Desktop# dpkg -l |grep pulse
ii  gstreamer0.10-pulseaudio             0.10.16-1                    GStreamer plugin for PulseAudio
ii  libpulse-browse0                     0.9.17-1                     PulseAudio client libraries (zeroconf suppor
ii  libpulse-mainloop-glib0              0.9.17-1                     PulseAudio client libraries (glib support)
ii  libpulse0                            0.9.17-1                     PulseAudio client libraries
ii  pulseaudio                           0.9.17-1                     PulseAudio sound server
ii  pulseaudio-esound-compat             0.9.17-1                     PulseAudio ESD compatibility layer
ii  pulseaudio-module-hal                0.9.17-1                     HAL device detection module for PulseAudio s
ii  pulseaudio-module-x11                0.9.17-1                     X11 module for PulseAudio sound server
ii  pulseaudio-utils                     0.9.17-1                     Command line tools for the PulseAudio sound 
Wiąże się to z tym, że gnome 2.26 jest powiązane z pulseaudio choć pamiętam, że u mnie rhytmbox działał bez pulse.

Jak zadziała lub nie to daj znać, a uzupełnię o ten problem tamten artykuł.

: 18 września 2009, 18:18
autor: asmo
Nie dziala, ale pojawil sie dzwiek i zostala wykryta karta graficzna. Po wlaczeniu muzyki / filmu (w ktorym wystepuje sciezka dzwiekowa) uzycie procesora wzrasta do 100%. Pasek dzwieku przesuwa sie, ale co chwile dochodzi do zacinania sie sciezki dzwiekowej, nie jest to uzywalne.

Kod: Zaznacz cały

[asmo@t42 ~]$ dpkg -l | grep pulse
ii  gstreamer0.10-pulseaudio             0.10.16-1                  GStreamer plugin for PulseAudio
ii  libpulse-browse0                     0.9.15-4.1                 PulseAudio client libraries (zeroconf suppor
ii  libpulse-mainloop-glib0              0.9.15-4.1                 PulseAudio client libraries (glib support)
ii  libpulse0                            0.9.15-4.1                 PulseAudio client libraries
ii  pulseaudio                           0.9.15-4.1                 PulseAudio sound server
ii  pulseaudio-esound-compat             0.9.15-4.1                 PulseAudio ESD compatibility layer
ii  pulseaudio-module-hal                0.9.15-4.1                 HAL device detection module for PulseAudio s
ii  pulseaudio-module-x11                0.9.15-4.1                 X11 module for PulseAudio sound server
ii  pulseaudio-utils                     0.9.15-4.1                 Command line tools for the PulseAudio sound

: 18 września 2009, 18:26
autor: ilin
Nie dziala, ale pojawil sie dzwiek i zostala wykryta karta graficzna
Nic nie rozumiem.

Możesz jaśniej.

: 18 września 2009, 18:56
autor: asmo
Przepraszam za nieprecyzyjność, wszystko przez nieprzespaną noc. Oczywiście chodziło mi o kartę dźwiękową. Tak więc w gnome-volume-control w "Wejście" pojawiło się Intel ICH4.

Uruchamiam Rhythmboksa. Zaczynam odtwarzać mp3. Dźwięk ciągle zawiesza się tzn. odtwarza, ale bardzo się zacina, cały czas. Nie da się tego słuchać. Problem nie występuje w aplikacjach KDE.

: 18 września 2009, 20:41
autor: ilin
Masz pulseaudio uruchomione ?

Pokaż /etc/pulse/default.pa

Sprawdź czy to wina pulseaydio za pomoca mplayera

Kod: Zaznacz cały

mplayer plik.mp3 -ao pulse
czy się będzie tez zacinał.

: 18 września 2009, 20:43
autor: asmo
Mplayer po ustawieniu pulseaudio na wyjściu również się zacina.

EDIT: Odechcialo mi sie walki z OSS. Poczekam na lepsze czasy az zostanie standardowo wdrozony, albo zmienie Distro jak pojawi sie lepsza alternatywa (w Archu ladnie dzialal, ale z mojego punktu widzenia Debian ma wiecej innych zalet to niech zostanie). Dzieki za pomoc.

: 19 września 2009, 07:47
autor: ilin
Zakomentuj tę linię

Kod: Zaznacz cały

load-module module-detect
oraz tę

Kod: Zaznacz cały

load-module module-oss device="/dev/dsp" sink_name=output source_name=input
A dopisz

Kod: Zaznacz cały

load-module module-oss device="/dev/dsp" sink_name=output source_name=input mmap=0
To ma być w jednej lini bo forum przełamuje tekst.


Zrestartuj pulseaudio.


Przy wyłaczoneym pulseaudio wywal config z domowego

Cały ukryty katalog ~/.pulse