summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Knoblich <stkn@gentoo.org>2004-12-04 22:59:20 +0000
committerStefan Knoblich <stkn@gentoo.org>2004-12-04 22:59:20 +0000
commit0796bf4e295d6d041e481dbc2762a2eabcc8b797 (patch)
tree0beff28e48593ee8153183d278f9e1b62251c7d3 /dev-libs
parentUnmasked net-irc/xchatosd as bug #72481 has been fixed. (diff)
downloadgentoo-2-0796bf4e295d6d041e481dbc2762a2eabcc8b797.tar.gz
gentoo-2-0796bf4e295d6d041e481dbc2762a2eabcc8b797.tar.bz2
gentoo-2-0796bf4e295d6d041e481dbc2762a2eabcc8b797.zip
cvs b0rked the patch, re-adding with -kb
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/pwlib/files/pwlib-1.6.6-alsa_dmix.diff259
1 files changed, 0 insertions, 259 deletions
diff --git a/dev-libs/pwlib/files/pwlib-1.6.6-alsa_dmix.diff b/dev-libs/pwlib/files/pwlib-1.6.6-alsa_dmix.diff
deleted file mode 100644
index 2d1ded99770d..000000000000
--- a/dev-libs/pwlib/files/pwlib-1.6.6-alsa_dmix.diff
+++ /dev/null
@@ -1,259 +0,0 @@
-diff -ru pwlib-orig/plugins/sound_alsa/sound_alsa.cxx pwlib/plugins/sound_alsa/sound_alsa.cxx
---- pwlib-orig/plugins/sound_alsa/sound_alsa.cxx 2004-03-13 13:36:14.000000000 +0100
-+++ pwlib/plugins/sound_alsa/sound_alsa.cxx 2004-10-21 18:33:38.562610536 +0200
-@@ -28,6 +28,21 @@
- * Contributor(s): /
- *
- * $Log: sound_alsa.cxx,v $
-+ * Revision 1.21 2004/10/18 11:43:39 dsandras
-+ * Use Capture instead of Mic when changing the volume. Use the correct mixer when using the Default device.
-+ *
-+ * Revision 1.20 2004/10/14 19:30:16 dsandras
-+ * Removed DMIX and DSNOOP plugins and added support for DEFAULT as it is the correcti way to do things.
-+ *
-+ * Revision 1.19 2004/08/30 21:09:41 dsandras
-+ * Added DSNOOP plugin support.
-+ *
-+ * Revision 1.18 2004/05/14 10:15:26 dominance
-+ * Fixes direct opening of sound output devices. The list of devices does no longer return NULL in that case. Patch provided by Julien Puydt <julien.puydt@laposte.net>.
-+ *
-+ * Revision 1.17 2004/04/03 10:33:45 dsandras
-+ * Use PStringToOrdinal to store the detected devices, that fixes problems if there is a discontinuity in the succession of soundcard ID's. For example the user has card ID 1 and 3, but not 2.
-+ *
- * Revision 1.16 2004/03/13 12:36:14 dsandras
- * Added support for DMIX plugin output.
- *
-@@ -81,8 +96,8 @@
- PCREATE_SOUND_PLUGIN(ALSA, PSoundChannelALSA)
-
-
--static PStringArray playback_devices;
--static PStringArray capture_devices;
-+static PStringToOrdinal playback_devices;
-+static PStringToOrdinal capture_devices;
-
- ///////////////////////////////////////////////////////////////////////////////
-
-@@ -119,8 +134,9 @@
- }
-
-
--PStringArray PSoundChannelALSA::GetDeviceNames (Directions dir)
-+void PSoundChannelALSA::UpdateDictionary (Directions dir)
- {
-+
- int card = -1, dev = -1;
-
- snd_ctl_t *handle = NULL;
-@@ -134,12 +150,12 @@
- if (dir == Recorder) {
-
- stream = SND_PCM_STREAM_CAPTURE;
-- capture_devices = PStringArray ();
-+ capture_devices = PStringToOrdinal ();
- }
- else {
-
- stream = SND_PCM_STREAM_PLAYBACK;
-- playback_devices = PStringArray ();
-+ playback_devices = PStringToOrdinal ();
- }
-
- snd_ctl_card_info_alloca (&info);
-@@ -148,7 +164,7 @@
- /* No sound card found */
- if (snd_card_next (&card) < 0 || card < 0) {
-
-- return PStringArray ();
-+ return;
- }
-
-
-@@ -176,13 +192,11 @@
- snd_card_get_name (card, &name);
- if (dir == Recorder) {
-
-- if (capture_devices.GetStringsIndex (name) == P_MAX_INDEX)
-- capture_devices.AppendString (name);
-+ capture_devices.SetAt (name, card);
- }
- else {
-
-- if (playback_devices.GetStringsIndex (name) == P_MAX_INDEX)
-- playback_devices.AppendString (name);
-+ playback_devices.SetAt (name, card);
- }
-
- free (name);
-@@ -193,17 +207,27 @@
- snd_ctl_close(handle);
- snd_card_next (&card);
- }
-+}
-
--
-- if (dir == Recorder)
-- return capture_devices;
-- else {
-+PStringArray PSoundChannelALSA::GetDeviceNames (Directions dir)
-+{
-+ PStringArray devices;
-+ PStringToOrdinal devices_dict;
-
-- if (playback_devices.GetSize () > 0)
-- playback_devices += "DMIX Plugin";
-+ if (dir == Recorder)
-+ devices_dict = capture_devices;
-+ else
-+ devices_dict = playback_devices;
-+
-+ UpdateDictionary (dir);
-+
-+ if (devices_dict.GetSize () > 0)
-+ devices += "Default";
-+
-+ for (PINDEX j = 0 ; j < devices_dict.GetSize () ; j++)
-+ devices += devices_dict.GetKeyAt (j);
-
-- return playback_devices;
-- }
-+ return devices;
- }
-
-
-@@ -223,7 +247,7 @@
- unsigned _bitsPerSample)
- {
- PString real_device_name;
-- PINDEX i = 0;
-+ POrdinalKey *i = NULL;
- snd_pcm_stream_t stream;
-
- Close();
-@@ -236,21 +260,31 @@
- stream = SND_PCM_STREAM_PLAYBACK;
-
- /* Open in NONBLOCK mode */
-- if (_dir != Recorder && _device == "DMIX Plugin") {
-+ if (_device == "Default") {
-
-- real_device_name = "plug:dmix";
-+ real_device_name = "default";
-+ card_nr = -2;
- }
-- else if ((i = (_dir == Recorder) ? capture_devices.GetStringsIndex (_device) : playback_devices.GetStringsIndex (_device)) != P_MAX_INDEX) {
-+ else {
-+
-+ if ((_dir == Recorder && capture_devices.IsEmpty ())
-+ || (_dir == Player && playback_devices.IsEmpty ()))
-+ UpdateDictionary (_dir);
-+
-+ i = (_dir == Recorder) ? capture_devices.GetAt (_device) : playback_devices.GetAt (_device);
-
-- real_device_name = "plughw:" + PString (i);
-- card_nr = i;
-+ if (i) {
-+
-+ real_device_name = "plughw:" + PString (*i);
-+ card_nr = *i;
-+ }
-+ else {
-+
-+ PTRACE (1, "ALSA\tDevice not found");
-+ return FALSE;
-+ }
- }
-- else {
-
-- PTRACE (1, "ALSA\tDevice unavailable");
-- return FALSE;
-- }
--
- if (snd_pcm_open (&os_handle, real_device_name, stream, SND_PCM_NONBLOCK) < 0) {
-
- PTRACE (1, "ALSA\tOpen Failed");
-@@ -735,7 +769,7 @@
- snd_mixer_elem_t *elem;
- snd_mixer_selem_id_t *sid;
-
-- const char *play_mix_name = (direction == Player) ? "PCM": "Mic";
-+ const char *play_mix_name = (direction == Player) ? "PCM": "Capture";
- PString card_name;
-
- long pmin = 0, pmax = 0;
-@@ -744,7 +778,10 @@
- if (!os_handle)
- return FALSE;
-
-- card_name = "hw:" + PString (card_nr);
-+ if (card_nr == -2)
-+ card_name = "default";
-+ else
-+ card_name = "hw:" + PString (card_nr);
-
- //allocate simple id
- snd_mixer_selem_id_alloca (&sid);
-@@ -796,23 +833,39 @@
- return FALSE;
- }
-
-- snd_mixer_selem_get_playback_volume_range (elem, &pmin, &pmax);
-
- if (set) {
--
-- vol = (set_vol * (pmax?pmax:31)) / 100;
-- snd_mixer_selem_set_playback_volume (elem,
-- SND_MIXER_SCHN_FRONT_LEFT, vol);
-- snd_mixer_selem_set_playback_volume (elem,
-- SND_MIXER_SCHN_FRONT_RIGHT, vol);
-
-+ if (direction == Player) {
-+
-+ snd_mixer_selem_get_playback_volume_range (elem, &pmin, &pmax);
-+ vol = (set_vol * (pmax?pmax:31)) / 100;
-+ snd_mixer_selem_set_playback_volume_all (elem, vol);
-+ }
-+ else {
-+
-+ snd_mixer_selem_get_capture_volume_range (elem, &pmin, &pmax);
-+ vol = (set_vol * (pmax?pmax:31)) / 100;
-+ snd_mixer_selem_set_capture_volume_all (elem, vol);
-+ }
- PTRACE (4, "Set volume to " << vol);
- }
- else {
-
-- snd_mixer_selem_get_playback_volume (elem,
-- SND_MIXER_SCHN_FRONT_LEFT, &vol);
-+ if (direction == Player) {
-+
-+ snd_mixer_selem_get_playback_volume_range (elem, &pmin, &pmax);
-+ snd_mixer_selem_get_playback_volume (elem, SND_MIXER_SCHN_FRONT_LEFT,
-+ &vol);
-+ }
-+ else {
-+
-+ snd_mixer_selem_get_capture_volume_range (elem, &pmin, &pmax);
-+ snd_mixer_selem_get_capture_volume (elem, SND_MIXER_SCHN_FRONT_LEFT,
-+ &vol);
-+ }
- get_vol = (vol * 100) / (pmax?pmax:31);
-+
- PTRACE (4, "Got volume " << vol);
- }
-
-Only in pwlib/plugins/sound_alsa: .sound_alsa.cxx-patch.swp
-diff -ru pwlib-orig/plugins/sound_alsa/sound_alsa.h pwlib/plugins/sound_alsa/sound_alsa.h
---- pwlib-orig/plugins/sound_alsa/sound_alsa.h 2003-12-28 16:10:35.000000000 +0100
-+++ pwlib/plugins/sound_alsa/sound_alsa.h 2004-10-21 18:35:51.559391952 +0200
-@@ -89,7 +89,8 @@
- BOOL IsOpen() const;
-
- private:
--
-+
-+ static void UpdateDictionary(PSoundChannel::Directions);
- BOOL Volume (BOOL, unsigned, unsigned &);
- PSoundChannel::Directions direction;
- PString device;
-