forked from alsaplayer/alsaplayer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
190 lines (138 loc) · 6.42 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
AlsaPlayer - PCM audio player for Linux and compatible OSes
Original version written by Andy Lo A Foe ([email protected])
GZK2 interface written by Madej from Poland.
Contributions from many other peoples. See the AUTHORS file for details.
This file is part of AlsaPlayer.
AlsaPlayer is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License or
(at your option) any later version.
AlsaPlayer 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 General Public Licence
along with this program. If not, see <http://www.gnu.org/licences/>.
DESCRIPTION
-----------
AlsaPlayer is a new PCM player developed on the Linux Operating System. Since
the first public beta release it support has been added for various other
Operating Systems (mostly Unix variants). AlsaPlayer was written in the first
place to excercise the new ALSA (Advanced Linux Sound Architecture) driver and
library system.
INTERFACE PLUGINS
-----------------
This cool feature allows you to completely customize your user interface.
I.e. the core of AlsaPlayer is decoupled from the user interface. The default
GTK2 interface is the best supported one. Among others, there is also a text
only interface.
INPUT PLUGINS
-------------
The program is very much plugin based. New file formats can be added simply
by writing a new input plugin. The only requirement is that the data can be
presented in PCM audio format.The following plugins are in various states
of usability:
- OGG vorbis plugin, works flawlessly, uses the ogg/vorbis libs
http://www.vorbis.com/
- MPEG audio plugin, based on mpg123 0.59r, works quite well, being phased out
however for:
- MAD based audio plugin, based on the new MAD MPEG decoder library, uses a
tiny bit more CPU, but has much better output quality then mpg123.
http://www.mars.org/home/rob/proj/mpeg/
- CDDA plugin, play back audio CD's by ripping the data digitally off the disk
- MikMod plugin, play back all MikMod supported module formats, no random
seeking in modules yet.
http://www.mikmod.org/
- Audiofile library plugin, this one needs a bit of work still
http://oss.sgi.com/projects/audiofile/
- FLAC (including OggFLAC) plugin with support for FLAC >= 1.3.
OUTPUT PLUGINS
--------------
AlsaPlayer also uses a plugin system for outputting audio data. The output
mechanism was designed with ALSA in mind of course. Many other Unix audio
systems map quite well on to it however. Supported output plugins include:
- ALSA, default plugin, best supported.
- OSS and OSS/Lite
- Esound
- Sparc (tested on UltraSparc)
- SGI
- JACK, http://jackit.sf.net, this plugin is actually built-in since its
differs radically from all the others. It is callback based. This is my
preferred output method these days. The underlying audio driver is ALSA.
SCOPE PLUGINS
-------------
Just as input and output support gets loaded in dynamically, scope (or
visualization) plugins are laoded in dynamically also. This enables anyone to
develop a visualization plugin without changing a single line of code in the
main program. A few scope plugins are provided in the main alsaplayer
distribution:
- Monoscope
- Spacescope
- Levelmeter
- Blurscope
- OpenGL spectrum
- logFFtscope
Nothing stops you from writing a kick ass *FULLSCREEN* (DGA) or even a
*Hardwarde Accellerated OpenGL* visualization plugin for AlsaPlayer!
EFFECTS PLUGINS
---------------
Work in progress...
SCOKET CONTROL
---------------
AlsaPlayer can be controlled from an external program. You only need to
link your application against the supplied libalsaplayer.so and in order
to control AlsaPlayer from your own applications. Seeking, speed control and
playlist advancement are only a few of the commands available to you.
See the "examples" directory for sample implementations.
INSTALLATION
------------
Installing AlsaPlayer from source should be as easy as executing the configure
script and then make. The configure script will try to detect all input and
output plugins for your system.
** IMPORTANT**: Make sure you run 'make install' after the compilation is
finished. The various plugins need to be in a specific place on your system.
If you don't want to install it on your system right away you can always use a
different --prefix when running configure.
EMBEDDED MODE
-------------
For target systems with low CPU and RAM ressources you can run configure with
"CFLAGS=-DEMBEDDED". This reduces CPU and RAM usage but imposes the following
limitations:
- no mixing of streams; single-stream only
- no software volume/pan (hardware volume/pan unaffected)
- no effect plugins
RUNNING
-------
Just fire up the executable. You can pass files to play on the command line
too. These will be added to the queue while the first entry will start playing
automatically. The CD like button hides the menu. All other controls should be
straight forward. Improvements to the interface will follow soon.
MAILING LISTS
-------------
We now have a couple of mailing lists for alsaplayer
Name : alsaplayer-announce
Description : notification of new versions (read-only)
Address : mailto:[email protected]
with subject "subscribe"
Name : alsaplayer-devel
Description : discuss development of alsaplayer
Address : mailto:[email protected]
with subject "subscribe"
Name : alsaplayer-commits
Description : keep up to date on the SVN commits
Address : http://lists.sourceforge.net/lists/listinfo/alsaplayer-commits
More information on these mailing lists and online archives can be found at
http://lists.tartarus.org/mailman/listinfo/
SVN REPOSITORY
--------------
You can always check out the latest version of AlsaPlayer. Execute the
following commands in the directory you want the sources in:
svn co https://alsaplayer.svn.sourceforge.net/svnroot/alsaplayer/trunk alsaplayer
A browsable SVN repositary is also available at:
http://alsaplayer.svn.sourceforge.net/viewvc/alsaplayer/
Thanks to the folks at SourceForge.net for providing these resources.
OTHER INFO
----------
WWW Page : http://www.alsaplayer.org/
Original author, Email : <[email protected]>
Administrator, Email: <[email protected]>