Commit graph

4481 commits

Author SHA1 Message Date
Lennart Poettering
4ec701aa21 udev: don't access string after free() 2009-08-21 22:11:38 +02:00
Lennart Poettering
d06680afe8 udev: always verify access before loading modules 2009-08-21 22:06:23 +02:00
Lennart Poettering
14c27c7ade gconf: use correct path for gconf-helper tool when running from build tree 2009-08-21 22:05:27 +02:00
Lennart Poettering
9abc010c93 object: speed up type verification by not relying on strcmp()
Instead of using string contents for type identification use the address
of a constant string array. This should speed up type verifications a
little sind we only need to compare one machine word instead of a full
string. Also, this saves a few strings.

To make clear that types must be compared via address and not string
contents 'type_name' is now called 'type_id'.

This also simplifies the macros for declaring and defining public and
private subclasses.
2009-08-21 21:27:44 +02:00
Lennart Poettering
5317e35543 udev: when a device appears that we cannot access right-away try again later on inotify 2009-08-21 14:55:05 +02:00
Lennart Poettering
fe9a577cf2 alsa: leave headphone jack enabled in normal mixer paths 2009-08-21 03:45:58 +02:00
Lennart Poettering
ac05619141 combine: quieten gcc a bit 2009-08-21 03:45:17 +02:00
Lennart Poettering
8a2a6b2004 adjust various data/library paths automatically if we are run from a build tree 2009-08-21 03:43:53 +02:00
Lennart Poettering
a562978509 ladspa: forward volume changes from ladspa sink to stream and hence via flat volume logic to master sink 2009-08-21 02:59:26 +02:00
Lennart Poettering
9f97b7cbe1 sink-input: add callbacks that are called whenever the mute/volume changes 2009-08-21 02:56:17 +02:00
Xabier Rodriguez Calvar
52e5d4b1d2 Modification of the thread-mainloop doc to ensure that nobody frees the api as it is owned by the loop. 2009-08-20 02:31:08 +02:00
Xabier Rodriguez Calvar
65f86ef7d4 Modification of the mainloop doc to ensure that nobody frees the api as it is owned by the loop. 2009-08-20 02:31:02 +02:00
Xabier Rodriguez Calvar
30ba9030ef Modification of the glib-mainloop doc to ensure that nobody frees the api as it is owned by the loop. 2009-08-20 02:30:54 +02:00
Lennart Poettering
c5bd72509e core: check return value of getgrnam_r() instead of errno
According to POSIX getgrnam_r() returns the error code as return value,
and not in errno. Honour that.

Pointed out and inspired by a patch from Ted Percival.
2009-08-20 00:20:03 +02:00
Lennart Poettering
f4f16ab10d i18n: run make update-po 2009-08-19 04:16:35 +02:00
Lennart Poettering
8f2909058a i18n: add ko to LINGUAS 2009-08-19 04:15:36 +02:00
Lennart Poettering
b2cb8efd28 Merge commit 'origin/master-tx' 2009-08-19 04:14:00 +02:00
Lennart Poettering
7af3833b71 lirc: replace manual code by pa_cvolume_{inc|dec}() 2009-08-19 03:37:42 +02:00
Lennart Poettering
2f54798b1a mmkbd: replace manual code by pa_cvolume_{inc|dec}() 2009-08-19 03:37:29 +02:00
Lennart Poettering
8c31974f56 sink: volume handling rework, new flat volume logic
- We now implement a logic where the sink maintains two distinct
  volumes: the 'reference' volume which is shown to the users, and the
  'real' volume, which is configured to the hardware. The latter is
  configured to the max of all streams. Volume changes on sinks are
  propagated back to the streams proportional to the reference volume
  change. Volume changes on sink inputs are forwarded to the sink by
  'pushing' the volume if necessary.

  This renames the old 'virtual_volume' to 'real_volume'. The
  'reference_volume' is now the one exposed to users.

  By this logic the sink volume visible to the user, will always be the
  "upper" boundary for everything that is played. Saved/restored stream
  volumes are measured relative to this boundary, the factor here is
  always < 1.0.

- introduce accuracy for sink volumes, similar to the accuracy we
  already have for source volumes.

- other cleanups.
2009-08-19 02:55:02 +02:00
Lennart Poettering
5207e19142 match: document how broken the module-match logic is 2009-08-19 02:37:35 +02:00
Lennart Poettering
cfef930036 volume: introduce pa_cvolume_{inc|dec}() 2009-08-19 02:32:36 +02:00
Lennart Poettering
1421eff0b6 volume: use PA_VOLUME_MAX instead of (pa_volume_t) -1 2009-08-19 02:31:11 +02:00
Lennart Poettering
d6f598ab3e udev: allow passing of ignore_dB= parameter to alsa modules 2009-08-19 02:29:59 +02:00
Lennart Poettering
24e582808c source: rework volume handling
- drop the 'virtual_' prefix from s->virtual_volume since we don't
  distuingish between reference and real volumes for sources

- introduce an accuracy for source volumes: if the hardware can control
  the volume "close enough" don't necessarily adjust the rest in
  software unless it is beyond a certain threshold. This should save a
  little bit of CPU at the expensive of a bit of accuracy in volume
  handling.

- other minor cleanups
2009-08-19 01:35:43 +02:00
Lennart Poettering
2838b78e59 macro: extend comments a bit 2009-08-19 01:03:09 +02:00
Lennart Poettering
a69b729414 voltest: extend test to verify correctness of _multiply() and _divide() 2009-08-19 01:02:32 +02:00
Lennart Poettering
2223a9f938 dbus: never return DBUS_HANDLER_RESULT_HANDLED in filter callbacks, since other callbacks might stell want to have the messages 2009-08-19 00:59:23 +02:00
Lennart Poettering
ef01baf613 volume: round properly when showing human readable volume percentages 2009-08-19 00:58:20 +02:00
Lennart Poettering
96f01b822a volume: simplify volume multiplifactions, do them in integer only 2009-08-19 00:57:58 +02:00
Lennart Poettering
d634555a3e volume: introduce pa_cvolume_min() and pa_cvolume_min_mask() 2009-08-19 00:56:16 +02:00
Lennart Poettering
8f928b2e57 macro: simplify page/word alignment macros a bit 2009-08-17 19:17:10 +02:00
Lennart Poettering
fe3a21f6a5 macro: add PA_ROUND_UP/PA_ROUND_DOWN macros 2009-08-17 19:15:33 +02:00
Lennart Poettering
319d187972 bluetooth: fix match syntax 2009-08-17 19:14:35 +02:00
Lennart Poettering
90a07435d3 bluetooth: make NameOwnerChanged filter matches more focussed 2009-08-17 03:51:22 +02:00
Lennart Poettering
ffeb1b81ba volume: document when arguments of certain functions may overlap 2009-08-17 03:50:43 +02:00
Lennart Poettering
caa7928972 libpulse: some minor optimizations when checking equality 2009-08-17 03:50:04 +02:00
Lennart Poettering
50de2d85f9 channelmap: minor doxygen fix 2009-08-17 03:48:51 +02:00
Lennart Poettering
6dd580d465 channelmap: document where the WAVEX channelmap is documented 2009-08-17 03:43:05 +02:00
Lennart Poettering
32a1ef311e channelmap: adjust RFC3551 channel maps to follow spec more closely 2009-08-17 03:42:34 +02:00
Lennart Poettering
c579cb56e9 reserver: update from upstream git 2009-08-17 03:41:14 +02:00
Lennart Poettering
8208214882 volume: add pa_cvolume_merge() call 2009-08-17 03:40:36 +02:00
pmkovar
91e06c1205 Sending translation for Czech 2009-08-17 00:19:25 +00:00
Lennart Poettering
01e4b61a91 aupdate: implicitly call _write_swap() if it wasn't called explicitly 2009-08-16 02:02:51 +02:00
Lennart Poettering
8dd0d871a7 core: add to FIXMEs 2009-08-16 00:45:56 +02:00
Lennart Poettering
4c29ba9c33 modules: add various checks to avoid selecting objects that are not linked or in another unclear state 2009-08-16 00:45:23 +02:00
Lennart Poettering
2a39663ab6 bluetooth: move installation of mq's earlier to avoid context asserts to be triggered 2009-08-16 00:43:22 +02:00
Lennart Poettering
de4968cdde bluetooth: ask first for Headset and AudioSink properties, followed by Audio 2009-08-15 22:25:53 +02:00
Lennart Poettering
fa52a91b1a bluetooth: recognize only those BT devices that implement both the Audio and either AudioSink or Headset interfaces 2009-08-15 22:25:21 +02:00
Lennart Poettering
5c90cf2d6a bluetooth: drop PA_BT_AUDIO_STATE_LAST since it is unused and we normally call that _MAX anyway 2009-08-15 22:24:13 +02:00