/docs/MyDocs

To get this branch, use:
bzr branch http://darksoft.org/webbzr/docs/MyDocs

« back to all changes in this revision

Viewing changes to Administration/Linux/hardware/sound/sound.txt

  • Committer: Suren A. Chilingaryan
  • Date: 2009-04-09 03:21:08 UTC
  • Revision ID: csa@dside.dyndns.org-20090409032108-w4edamdh4adrgdu3
import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Architectures
 
2
=============
 
3
1. Alsa Drivers <- Pulseaudio Server (mixing) <- (Pulseaudio, ESD, Alsa, Network)
 
4
    a) This fake alsa driver is not possible to use a standard alsa device
 
5
    and ask, for example, DMix to mix streams into.
 
6
    b) There are actually problems with some of ALSA software, which are not
 
7
    able to play trugh Pulseaudio alsa driver. Details are below.
 
8
    c) Wise idea to add "load-module module-null-sink" in PA configuration. It
 
9
    will add dummy sound output (sink) in which it would be possible to redirect
 
10
    active sound streams and free the actual sound card for direct access.
 
11
    The redirection is carried out by means of 'pavucontrol'.
 
12
 
 
13
2. Alsa Drivers <- DMix (mixing) <- Pulseaudio <- (Pulseaudio, ESD, ...)
 
14
   a) In that configuration the pulseaudio hangs (
 
15
 
 
16
Microphone
 
17
==========
 
18
 It is really necessary to start "alsamixer", press F4 to go to the capture
 
19
 controls and enable (fully) both "Capture" sliders. The "mic" control could 
 
20
 be brought completely down :)
 
21
    alsa-mixer -D hw:0
 
22
 
 
23
Utilities
 
24
=========
 
25
 pavucontrol: Allows to 
 
26
        a) view what is happening
 
27
        b) set relative volume
 
28
        c) move sound stream from one audiocard to another
 
29
 paman: Current software configuration
 
30
 OSS Wrappers: padsp (Pulseaudio), aoss (Alsa)
 
31
 Other: pavuumeter, paperconf, padevchooser
 
32
 
 
33
Software
 
34
========
 
35
 1. VMWare 6
 
36
    a) vmware-dsp, aoss, padsp would not help
 
37
    b) Virtualbox have no problems with Alsa, and there available utilities for
 
38
    conversion of VMWare machines
 
39
    c) Fortunately, it doesn't grab a lock, so the hardware could be initially
 
40
    connected and the used in the host linux system. The mic. would work in 
 
41
    VMWare (locked trught /dev/dsp). 
 
42
    d) There is WinESD application which can send audio output to the networking
 
43
    ESD daemon. Following line should be added to PA config.
 
44
        load-module module-esound-protocol-tcp auth-anonymous=1
 
45
     It listens for incomming connections on port 16001
 
46
            
 
47
 2. Multilib (32bit applications)
 
48
        The upgraded version of app-emulation/emul-linux-x86-soundlibs, it
 
49
    should contain the pulseaudio libraries, and pulseaudio plugin from 
 
50
    alsa-plugins. For details see "Compilation" section
 
51
        
 
52
 3. Firefox 32bit / Seamonkey + 32bit plugin wrapper (nspluginwrapper)
 
53
        In both cases the 32bit libflashsupport library is required (which
 
54
    included in my version of app-emulation/emul-linux-x86-soundlibs).
 
55
 
 
56
 4. Skype
 
57
    For some reason tries to lookup symbols in 64bit. Fixed by providing
 
58
    paths in wrapper script (see in styx configs)
 
59
    
 
60
    Afterwards, works with default alsa device.
 
61
 
 
62
 5. Mplayer
 
63
    On command line: -ao alsa:device=pulse. 
 
64
    a) In configuration, it doesn't work for unknown reason
 
65
    b) But if instead 
 
66
        pcm.!default {
 
67
             type pulse
 
68
        }
 
69
    put in alsa configuration
 
70
        pcm.!default {
 
71
            type plug
 
72
            slave.pcm "pulse"
 
73
        }
 
74
    it looks working without any configuration
 
75
    c) However, in that case the recording will not work trugh default input
 
76
 
 
77
 6. Audacity
 
78
    audacity is considerably broken (1.3.3). It dumps on attempt to enter
 
79
    properties. The recording is working, playback - not (actually, it is
 
80
    working if plain alsa without PulseAudio is specified as default 
 
81
    audio sink).
 
82
    Segmentations looks to be related with configuration creating/parsing. 
 
83
    Therefore, the some configuration should persist otherwise the app will
 
84
    never get started.
 
85
    
 
86
 7. Totem
 
87
    Configurable trugh 'gnome-sound-properties'. Alsa is O'Key.
 
88
 
 
89
 8. Configuration/Config Deletion: gxine, xine, audacious
 
90
 
 
91
 9. Out of the box: mpg123, vlc
 
92
 
 
93
 10. twinkle (SIP client)
 
94
    a) Is only working with original ALSA (not trough PulseAudio)
 
95
    b) Could be configured as alternative alsa sink
 
96
        pcm.alsa {
 
97
            type plug
 
98
            slave.pcm "hw:0,0"
 
99
        }
 
100
    c) All active PA streams should be moved to dummy sink
 
101
    d) The VMWare should disconnected, otherwise it's really terrible audability
 
102
    
 
103
 
 
104
Compilation
 
105
===========     
 
106
 a) Compiling 64bit packages
 
107
    libatomic_op and pulseaudio are requiring newever version of gcc. They can
 
108
    be compiled with GCC-4.1.2. Nothing is broken afterwards.
 
109
 
 
110
 b) Compiling 32bit packages
 
111
    ABI=x86 CHOST="x86-pc-linux-gnu" CFLAGS="-O2" CXXFLAGS="-O2"  emerge -B liboil
 
112
    ABI=x86 CHOST="x86-pc-linux-gnu" CFLAGS="-O2" CXXFLAGS="-O2"  emerge -B libatomic_ops
 
113
    ABI=x86 CHOST="x86-pc-linux-gnu" CFLAGS="-O2" CXXFLAGS="-O2" ACCEPT_KEYWORDS="~amd64" USE="alsa -X -avahi -caps -hal -jack -oss -tcpd -libsamplerate libonly"  emerge -B pulseaudio
 
114
    ABI=x86 CHOST="x86-pc-linux-gnu" CFLAGS="-O2" CXXFLAGS="-O2" emerge -B alsa-lib
 
115
    ABI=x86 CHOST="x86-pc-linux-gnu" CFLAGS="-O2" CXXFLAGS="-O2" USE="-libsamplerate -jack" emerge -B alsa-plugins
 
116
    ABI=x86 CHOST="x86-pc-linux-gnu" CFLAGS="-O2" CXXFLAGS="-O2" USE="-esd -gnutls -oss pulseaudio -ssl" emerge -B libflashsupport
 
117
 
 
118
    1) For 32bit environmetn the libatomic_op and pulseaudio could be compailed
 
119
    with gcc-3.x, no problem.
 
120
    2) No changes in make.conf is required.
 
121
 
 
122
 c) emul-linux-x86-soundlibs, pulseaudio ebuilds are altered
 
123