mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-21 15:56:42 +00:00
941073b31f
Original commit message from CVS: Alsasink is no longer bitrotten anymore, yay! Alsasrc untested. Also, fixed a logic error in the main loop regarding proper interpretation of avail_update. This fix came from jack. |
||
---|---|---|
.. | ||
gstalsa.c | ||
gstalsa.h | ||
Makefile.am | ||
README |
0.0 History ----------- This plugin was originally written by Thomas Nyberg <thomas@codefactory.se> for ALSA 0.5.x. It was updated and changed quite a bit in September 2001 by Andy Wingo for use with ALSA 0.9.x. 1.0 Introduction ---------------- This plugin was designed for use with ALSA 0.9.x, using other versions most assuredly will not work. The plugin will probe which cards and pcm-devices that are availible, and then it tries to determine their capabilities. This will allow the use of multiple cards with multiple pcm-devices - at the same time! Since I only have one card on my system, as of yet, I haven't had the chance to try this out. 2.0 How to use it ----------------- Since we can have multiple soundcards, each having the same name - and also multiple pcm-devices on each card, a problem with naming occurs. When the alsa-plugins are initialized, a factory is created for each card and pcm-device on the system. On my desktop, I have the following: wingo@cebreiro:~/src/gstreamer$ gstreamer-inspect alsa INFO ( 339:-1) Initializing GStreamer Core Library INFO ( 339:-1) CPU features: (808009bf) MMX 3DNOW Plugin Details: Name: alsa Long Name: Alsa plugin library Filename: /usr/lib/gst/libalsa.so ES1370/1_sink: ES1370 DAC2/ADC ES1370/2_sink: ES1370 DAC1 ES1370/1_src: ES1370 DAC2/ADC alsasink: default alsa sink alsasrc: default alsa src My particular card has 4 channel out and 2 channel in. As you can see, each of these devices are stereo. The alsasink and alsasrc elements correspond to the default alsa devices. 3.0 License ----------- ALSA 0.9.x isn't very well documented, so I had to rely on a number of different sources for guidance. One of the main sources of inspiration was Paul Davis' audioengine (available in quasimodo's cvs tree, http://quasimodo.sourceforge.net/), from which I took a large amount of code. Since that project is licensed under the GPL, it was only right that I license the updated version of this plugin under the GPL as well. What, in my understanding, this means for the end user is that you cannot use the ALSA plugin with a non-GPL program. If in doubt, please refer to the COPYING file located in this directory.