profile/ivi/pulseaudio.git
14 years agoalsa: work around slightly broken _delay implementations
Wim Taymans [Wed, 8 Sep 2010 11:26:39 +0000 (13:26 +0200)]
alsa: work around slightly broken _delay implementations

Use snd_pcm_avail_delay() in pa_alsa_safe_delay() so that we can check the delay
value against the avail value and patch it up when it looks invalid. Only do
this for capture.

14 years agoalsa-time-test: make test usable for capture too
Wim Taymans [Mon, 6 Sep 2010 15:48:56 +0000 (17:48 +0200)]
alsa-time-test: make test usable for capture too

Extend the test to also work for capture devices.

14 years agoalsa-source: refactor smoother and device start
Wim Taymans [Mon, 6 Sep 2010 13:26:19 +0000 (15:26 +0200)]
alsa-source: refactor smoother and device start

Move the code to start the capture and the smoother closer together to improve
smoother accuracy.
Rework things to look more like the alsa sink where the device is started in
only one place.

14 years agosmoother: avoid losing precision
Wim Taymans [Mon, 6 Sep 2010 13:22:26 +0000 (15:22 +0200)]
smoother: avoid losing precision

Avoid losing precision by subtracting uint64 values before converting them to
doubles.

14 years agoecho-cancel: Mark immutable parameters as const in vfunc
Arun Raghavan [Tue, 7 Sep 2010 09:37:39 +0000 (15:07 +0530)]
echo-cancel: Mark immutable parameters as const in vfunc

Marks the recording and playback streams as const in the
pa_echo_canceller->run method for clarity.

14 years agoecho-cancel: Make blocksize a module-wide parameter
Arun Raghavan [Tue, 7 Sep 2010 09:25:38 +0000 (14:55 +0530)]
echo-cancel: Make blocksize a module-wide parameter

Since all algorithms will need to specify a block size (the amount of
data to be processed together), we make this a common parameter and have
the implementation set it at initialisation time.

14 years agoecho-cancel: Allow selection of AEC method using modargs
Arun Raghavan [Tue, 7 Sep 2010 08:32:32 +0000 (14:02 +0530)]
echo-cancel: Allow selection of AEC method using modargs

This adds an "aec_method" module argument to allow us to select the AEC
implementation to use.

14 years agoecho-cancel: Add alternative echo-cancellation implementation
Arun Raghavan [Tue, 7 Sep 2010 08:13:58 +0000 (13:43 +0530)]
echo-cancel: Add alternative echo-cancellation implementation

This adds Andre Adrian's AEC implementation from his intercom project
(http://andreadrian.de/intercom/) as an alternative to the speex echo
cancellation routines. Since the implementation was in C++ and not in
the form of a library, I have converted the code to C and made a local
copy of the implementation.

The implementation actually works on floating point data, so we can
tweak it to work with both integer and floating point samples (currently
we just use S16LE).

14 years agoecho-cancel: Let AEC module determine source/sink spec
Arun Raghavan [Mon, 6 Sep 2010 16:53:51 +0000 (22:23 +0530)]
echo-cancel: Let AEC module determine source/sink spec

Since the source and sink specification will need to be determined by
the AEC algorithm (can it handle multi-channel audio, does it work with
a fixed sample rate, etc.), we negotiate these using inout parameters at
initialisation time.

There is opportunity to make the sink-handling more elegant. Since the
sink data isn't used for playback (just processing), we could pass
through the data as-is and resample to the required spec before using in
the cancellation algorithm. This isn't too important immediately, but
would be nice to have.

14 years agoecho-cancel: Pass arguments to the specific canceller module
Arun Raghavan [Mon, 6 Sep 2010 15:54:55 +0000 (21:24 +0530)]
echo-cancel: Pass arguments to the specific canceller module

This allows us to tweak module parameters for whichever AEC module is
chosen.

14 years agoecho-cancel: Split out speex code from the core module
Arun Raghavan [Mon, 6 Sep 2010 10:21:20 +0000 (15:51 +0530)]
echo-cancel: Split out speex code from the core module

This splits out the echo-cancelling core from the PA-specific bits to
allow us to plug in other echo-cancellation engines.

14 years agoecho-cancel: Move the module into it's own directory
Arun Raghavan [Mon, 6 Sep 2010 08:09:25 +0000 (13:39 +0530)]
echo-cancel: Move the module into it's own directory

This will make splitting out the canceller parts cleaner.

14 years agocli: Allow .include on directories as well as files.
Colin Guthrie [Sat, 4 Sep 2010 16:07:23 +0000 (17:07 +0100)]
cli: Allow .include on directories as well as files.

When .including a directory, all files with the extension '.pa'
in that folder will be parsed in alphabetical order.

14 years agoalsa: increase the smoother window
Wim Taymans [Fri, 3 Sep 2010 14:47:44 +0000 (16:47 +0200)]
alsa: increase the smoother window

40ms for the smoother window is too small. Increase the size to 4 seconds, like
we do for the sinks.

14 years agoecho-cancel: keep frame_size a power of 2
Wim Taymans [Tue, 31 Aug 2010 16:04:33 +0000 (18:04 +0200)]
echo-cancel: keep frame_size a power of 2

The speex echo canceler prefers a power of 2 for the frame size. Round down the
ideal frame_size to the nearest power of two. This makes sure we don't create
more than the requested frame_size_ms latency while still providing a power of 2
to the speex echo canceller.

14 years agoecho-cancel: improve debug
Wim Taymans [Tue, 24 Aug 2010 11:29:18 +0000 (13:29 +0200)]
echo-cancel: improve debug

14 years agoecho-cancel: tweak the resync code a little
Wim Taymans [Tue, 24 Aug 2010 09:46:18 +0000 (11:46 +0200)]
echo-cancel: tweak the resync code a little

Try to keep the drift between source and sink within 4ms now that we have more
accurate timings.
Don't force a resync on latency changes but let the drift code handle it.

14 years agoecho-cancel: use the phone media role
Wim Taymans [Tue, 24 Aug 2010 09:22:20 +0000 (11:22 +0200)]
echo-cancel: use the phone media role

Tag the source and sink with the phone media roles so that they automatially
connect to phone streams such as Empathy when using the intended-rols module.

14 years agoalsa-sink/source: Use the "namereg_fail" module argument.
Tanu Kaskinen [Mon, 30 Aug 2010 15:34:41 +0000 (18:34 +0300)]
alsa-sink/source: Use the "namereg_fail" module argument.

This allows the name registry to mangle the names of auto-detected sinks and
sources to be unique, which makes it possible to load multiple identical sound
cards using module-udev-detect.

At least for now the module argument can only be passed through
module-alsa-card.

14 years agoalsa-sink: Get rid of a compiler warning regarding rewind_safeguard type.
Tanu Kaskinen [Tue, 24 Aug 2010 14:47:25 +0000 (17:47 +0300)]
alsa-sink: Get rid of a compiler warning regarding rewind_safeguard type.

GCC gave a warning, because the pointer given to pa_modargs_get_value_u32() had
type size_t instead of uint32_t.

14 years agomodule-udev-detect: When loading module-alsa-card, use namereg_fail=false.
Tanu Kaskinen [Tue, 24 Aug 2010 15:17:19 +0000 (18:17 +0300)]
module-udev-detect: When loading module-alsa-card, use namereg_fail=false.

14 years agomodule-alsa-card: New argument: namereg_fail.
Tanu Kaskinen [Tue, 24 Aug 2010 14:33:58 +0000 (17:33 +0300)]
module-alsa-card: New argument: namereg_fail.

This is added so that module-udev-detect can load multiple module-alsa-card
instances with the same card name - forcing namereg_fail to false allows the
name registry to mangle the card names to be unique.

14 years agoecho-cancel: take into account snapshot delay
Wim Taymans [Mon, 23 Aug 2010 15:47:03 +0000 (17:47 +0200)]
echo-cancel: take into account snapshot delay

Take into account the delay between taking the snapshot from the source and the
sink. Improves the quality of the timings.

14 years agomake echo-cancel module that exposes a new sink and source
Wim Taymans [Mon, 23 Aug 2010 14:38:47 +0000 (16:38 +0200)]
make echo-cancel module that exposes a new sink and source

Make a new echo-cancel module that exposes a new sink and source. All data sent
to the sink is matched against the data captured from the source and
echo-canceled using the speex echo canceler.

14 years agoalsa: resume smoother after unsuspend
Wim Taymans [Mon, 23 Aug 2010 09:59:13 +0000 (11:59 +0200)]
alsa: resume smoother after unsuspend

The smoother is paused when the device is suspended but never resumed on
unsuspend. Pass the paused = FALSE flag to the pa_smoother_reset() call to make
it unpause when unsuspending. This patch improves source timings quite a bit.

14 years agocore: New function: pa_module_update_proplist().
Tanu Kaskinen [Fri, 13 Aug 2010 10:25:41 +0000 (13:25 +0300)]
core: New function: pa_module_update_proplist().

14 years agoloopback: Make stream names and roles configurable.
Tanu Kaskinen [Thu, 1 Jul 2010 12:49:38 +0000 (15:49 +0300)]
loopback: Make stream names and roles configurable.

14 years agoAC3 passthrough support
Pierre-Louis Bossart [Fri, 16 Jul 2010 21:46:28 +0000 (16:46 -0500)]
AC3 passthrough support

Second version after Tanu's feedback

TODO:
    - notify client that volume control is disabled
    - change sink rate in passthrough mode if needed
    - automatic detection of passthrough mode instead of hard
    coded profile names

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
14 years agodbusiface-core: Track sinks and sources using synchronous hooks instead of asynchrono...
Tanu Kaskinen [Mon, 2 Aug 2010 11:12:26 +0000 (14:12 +0300)]
dbusiface-core: Track sinks and sources using synchronous hooks instead of asynchronous subscription events.

Using the subscription events caused an assertion crash sometimes when a sink
was removed and a new sink was created (i.e. card profile change) and a stream
was moved from the removed sink to the new sink. The stream dbus object's
subscription callback got a change event before the core dbus object's
subscription callback got the sink remove/creation events. The stream's
subscription callback then queried the core for the object path of the new
sink, and since the core was not yet aware of the new sink, an assertion was
hit in pa_dbusiface_device_get_path().

Now that the core uses synchronous hooks to keep the sink and source lists up
to date, this particular problem can't occur anymore.

14 years agoudev: fix hex decoding
Lennart Poettering [Sun, 18 Jul 2010 23:27:15 +0000 (01:27 +0200)]
udev: fix hex decoding

14 years agoalsa: add missing iec958 files from previous commit
Pierre-Louis Bossart [Wed, 14 Jul 2010 16:34:45 +0000 (11:34 -0500)]
alsa: add missing iec958 files from previous commit

14 years agoalsa: fix mixer profiles, add passthrough config
Pierre-Louis Bossart [Mon, 12 Jul 2010 17:24:22 +0000 (12:24 -0500)]
alsa: fix mixer profiles, add passthrough config

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
14 years agoalsa: disable rewinds when using ALSA plugins
Pierre-Louis Bossart [Tue, 13 Jul 2010 20:27:40 +0000 (15:27 -0500)]
alsa: disable rewinds when using ALSA plugins

This is required to when playing on a52: device, rewind is broken
in those plugins.
Credits to Michael Rans <mcarans@yahoo.co.uk> for finding this
workaround, and Tanu Kaskinen <tanuk@iki.fi> for providing
valuable feedback.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
14 years agoalsa: Fix assertion on mmap_write (triggered via a52 plugin)
Colin Guthrie [Sun, 6 Jun 2010 20:19:34 +0000 (21:19 +0100)]
alsa: Fix assertion on mmap_write (triggered via a52 plugin)

14 years agoMerge remote branch 'tanuk2/fixes'
Colin Guthrie [Sat, 5 Jun 2010 17:21:31 +0000 (18:21 +0100)]
Merge remote branch 'tanuk2/fixes'

14 years agomodules/coreaudio: replace deprecated functions
Daniel Mack [Fri, 19 Mar 2010 16:32:21 +0000 (17:32 +0100)]
modules/coreaudio: replace deprecated functions

All API calls are now consolidated in AudioObject* calls, the old model
has been deprecated in 10.6. Follow that change.

14 years agodbus: Stop polling every 10 seconds to check whether all clients are still alive.
Tanu Kaskinen [Thu, 29 Apr 2010 12:06:44 +0000 (15:06 +0300)]
dbus: Stop polling every 10 seconds to check whether all clients are still alive.

Instead, watch for org.freedesktop.DBus.Disconnected signals.

14 years agostream-restore: When changing restore entries with D-Bus, apply the changes immediately.
Tanu Kaskinen [Thu, 15 Apr 2010 10:11:57 +0000 (13:11 +0300)]
stream-restore: When changing restore entries with D-Bus, apply the changes immediately.

14 years agodbus: Fix slightly messed up assertions.
Tanu Kaskinen [Tue, 6 Apr 2010 09:19:46 +0000 (12:19 +0300)]
dbus: Fix slightly messed up assertions.

14 years agodbus: Use a struct as the hashmap items for listening_signals.
Tanu Kaskinen [Tue, 6 Apr 2010 07:58:30 +0000 (10:58 +0300)]
dbus: Use a struct as the hashmap items for listening_signals.

Previously we used libdbus's memory as keys in listening_signals, which caused
that the memory of the hashmap keys got overwritten, which led to that signals
weren't sent properly.

14 years agostream-restore: Fix segfaulting. The dbus entry callbacks expect a dbus_entry pointer...
Tanu Kaskinen [Thu, 1 Apr 2010 08:17:52 +0000 (11:17 +0300)]
stream-restore: Fix segfaulting. The dbus entry callbacks expect a dbus_entry pointer instead of a userdata pointer.

14 years agodbus: Fix segfault when receiving a property access call that isn't permitted.
Tanu Kaskinen [Mon, 29 Mar 2010 05:25:42 +0000 (08:25 +0300)]
dbus: Fix segfault when receiving a property access call that isn't permitted.

14 years agodbus: Initialize properly the type field of new server structs.
Tanu Kaskinen [Mon, 29 Mar 2010 05:23:33 +0000 (08:23 +0300)]
dbus: Initialize properly the type field of new server structs.

14 years agodbus: Make it possible to allow remote connections from outside localhost.
Tanu Kaskinen [Wed, 17 Mar 2010 11:35:01 +0000 (13:35 +0200)]
dbus: Make it possible to allow remote connections from outside localhost.

14 years agocli: Increase the command maximum length from 1024 to 2048.
Tanu Kaskinen [Thu, 25 Feb 2010 06:39:42 +0000 (08:39 +0200)]
cli: Increase the command maximum length from 1024 to 2048.

14 years agoalsa: Fix log output to inform about positive base volumes correctly.
Tanu Kaskinen [Fri, 8 Jan 2010 09:09:25 +0000 (11:09 +0200)]
alsa: Fix log output to inform about positive base volumes correctly.

Positive base volume can happen, if the alsa volume range has been limited. For
example, in an embedded environment it may be known that the sound device is
capable of louder output than what the speakers can handle, so setting the max
volume below 0 dB makes sense.

14 years agoalsa-mixer: Replace erroneous PA_ALSA_VOLUME_IGNORE with PA_ALSA_ENUMERATION_IGNORE.
Tanu Kaskinen [Tue, 29 Dec 2009 12:53:40 +0000 (14:53 +0200)]
alsa-mixer: Replace erroneous PA_ALSA_VOLUME_IGNORE with PA_ALSA_ENUMERATION_IGNORE.

This fix doesn't have any concrete effect, because the two constants have the
same value.

14 years agoalsa-mixer: Use pa_xfree() instead of pa_xstrdup() for freeing a string.
Tanu Kaskinen [Wed, 16 Dec 2009 09:51:27 +0000 (11:51 +0200)]
alsa-mixer: Use pa_xfree() instead of pa_xstrdup() for freeing a string.

14 years agortp: Fix bracketing in pa_rtp_recv.
Colin Guthrie [Sat, 8 May 2010 12:47:19 +0000 (13:47 +0100)]
rtp: Fix bracketing in pa_rtp_recv.

The syntactically correct error meant that the timestamp was always
marked as found and only the first header was checked.

In the case where the timestamp was the first header, things
would have worked as expected.

Thanks to pino for reporting via bug refs #818

14 years agosocket-client: properly handle asyncns failures
Jez Austin [Mon, 22 Mar 2010 15:09:34 +0000 (16:09 +0100)]
socket-client: properly handle asyncns failures

We fail to detect when people disable IPv6 in there kernels. This patch
makes sure we don't ignore this error condition.

http://pulseaudio.org/ticket/752
https://bugzilla.mozilla.org/show_bug.cgi?id=533470
http://bugs.freedesktop.org/show_bug.cgi?id=25742

14 years agointended-roles: Do not pick monitor sources when doing automatic role-based device...
Colin Guthrie [Wed, 17 Mar 2010 15:30:32 +0000 (15:30 +0000)]
intended-roles: Do not pick monitor sources when doing automatic role-based device selection

14 years agoalsa: Handle 'Digital Mic' as an 'Input Source'
Daniel T Chen [Wed, 10 Mar 2010 23:14:11 +0000 (18:14 -0500)]
alsa: Handle 'Digital Mic' as an 'Input Source'

BugLink: https://launchpad.net/bugs/533877
Some laptops have 'Digital Mic' exposed as an 'Input Source', e.g., Dell
XPS 1330, so handle these, too.

14 years agocore-util: ensure that we chmod only the dir we ourselves created
Kees Cook [Wed, 3 Mar 2010 05:33:34 +0000 (21:33 -0800)]
core-util: ensure that we chmod only the dir we ourselves created

14 years agotests: fix once test
Lennart Poettering [Fri, 7 May 2010 23:50:05 +0000 (01:50 +0200)]
tests: fix once test

14 years agoadd rewind-safeguard parameter
Pierre-Louis Bossart [Thu, 29 Apr 2010 15:48:11 +0000 (10:48 -0500)]
add rewind-safeguard parameter

Rewinding the ring buffer completely causes audible issues with DMAs.
Previous solution didn't work with tsched=0, and used tsched_watermark
for guardband, which isn't linked to hardware and could become really high
if underflows occurred.

Added separate parameter that can be tuned to hardware limitations and size
of DMA bursts.

14 years agojack: Prevent crash on jack server shutdown
David Henningsson [Mon, 3 May 2010 09:41:47 +0000 (11:41 +0200)]
jack: Prevent crash on jack server shutdown

14 years agothread: name all threads so that the names appear in /proc/$PID/task/$TID/comm
Lennart Poettering [Mon, 3 May 2010 11:28:15 +0000 (13:28 +0200)]
thread: name all threads so that the names appear in /proc/$PID/task/$TID/comm

14 years agobuild-sys: Mention dbus support in the summary
Colin Guthrie [Thu, 25 Feb 2010 14:00:08 +0000 (14:00 +0000)]
build-sys: Mention dbus support in the summary

14 years agovirtual: when fixed block sizes are used the memblockq must have a silence block
Lennart Poettering [Thu, 25 Feb 2010 01:41:09 +0000 (02:41 +0100)]
virtual: when fixed block sizes are used the memblockq must have a silence block

14 years agovirtual: document how to implement fixed block size filters
Lennart Poettering [Thu, 25 Feb 2010 01:26:03 +0000 (02:26 +0100)]
virtual: document how to implement fixed block size filters

14 years agomemblockq: implement new call pa_memblockq_peek_fixed_size()
Lennart Poettering [Thu, 25 Feb 2010 01:10:45 +0000 (02:10 +0100)]
memblockq: implement new call pa_memblockq_peek_fixed_size()

14 years agovirtual: minor simplifications for the virtual sink
Lennart Poettering [Wed, 24 Feb 2010 23:39:56 +0000 (00:39 +0100)]
virtual: minor simplifications for the virtual sink

14 years agoequalizer: various smaller cleanups for m-e-s
Lennart Poettering [Wed, 24 Feb 2010 23:39:06 +0000 (00:39 +0100)]
equalizer: various smaller cleanups for m-e-s

14 years agocore: rework how stream volumes affect sink volumes
Lennart Poettering [Tue, 23 Feb 2010 17:41:18 +0000 (18:41 +0100)]
core: rework how stream volumes affect sink volumes

14 years agoalsa: don't make use of tsched related variables when tsched is disabled
Lennart Poettering [Tue, 23 Feb 2010 02:23:22 +0000 (03:23 +0100)]
alsa: don't make use of tsched related variables when tsched is disabled

14 years agoesd,simple: use pa_memblockq_pop_missing()
Lennart Poettering [Mon, 22 Feb 2010 23:48:35 +0000 (00:48 +0100)]
esd,simple: use pa_memblockq_pop_missing()

We need to use pa_memblockq_pop_missing() for all request handling,
including the initial request, because otherwise the counters will be
stay off during the entire runtime.

This should fix:

https://bugzilla.redhat.com/show_bug.cgi?id=559467

14 years agovarious modernizations
Lennart Poettering [Tue, 23 Feb 2010 00:23:41 +0000 (01:23 +0100)]
various modernizations

14 years agoiochannel: remove fd from poll() when we don't care from events
Lennart Poettering [Tue, 23 Feb 2010 00:20:20 +0000 (01:20 +0100)]
iochannel: remove fd from poll() when we don't care from events

This should make it unlikely that we loop on SIGHUP indefinitely.

Also, this makes it possible for callbacks not to process all events and
still not busy loop.

14 years agonative: improve logging for buffer_attrs
Lennart Poettering [Mon, 22 Feb 2010 02:40:29 +0000 (03:40 +0100)]
native: improve logging for buffer_attrs

14 years agosuspend-on-idle: resume audio device even for initially corked streams
Lennart Poettering [Mon, 22 Feb 2010 02:22:28 +0000 (03:22 +0100)]
suspend-on-idle: resume audio device even for initially corked streams

We need to resume audio devices even for streams that are created in
corked stat, so that the latency ranges of the audio device are known
during the initial latency negotiation. If we don't the latency
negotiation will be based on placeholder data and changed later on which
clients do not expect.

This should fix issues with Skype.

https://bugzilla.redhat.com/show_bug.cgi?id=554929

14 years agoalsa: reset max_rewind/max_request while suspending
Lennart Poettering [Mon, 22 Feb 2010 03:54:24 +0000 (04:54 +0100)]
alsa: reset max_rewind/max_request while suspending

14 years agoalsa-util: strip spaces from ALSA card/pcm names
Lennart Poettering [Sun, 21 Feb 2010 21:00:49 +0000 (22:00 +0100)]
alsa-util: strip spaces from ALSA card/pcm names

http://pulseaudio.org/ticket/778

14 years agoconf-parser: make use of pa_strip() wherever applicable
Lennart Poettering [Sun, 21 Feb 2010 21:00:16 +0000 (22:00 +0100)]
conf-parser: make use of pa_strip() wherever applicable

14 years agocore-util: introduce generic function pa_strip()
Lennart Poettering [Sun, 21 Feb 2010 20:59:53 +0000 (21:59 +0100)]
core-util: introduce generic function pa_strip()

14 years agohttp: support HTTP HEAD
Matthijs Kooijman [Sun, 21 Feb 2010 20:46:06 +0000 (21:46 +0100)]
http: support HTTP HEAD

http://pulseaudio.org/ticket/781

14 years agoi18n: run make update-po
Lennart Poettering [Sun, 21 Feb 2010 20:16:33 +0000 (21:16 +0100)]
i18n: run make update-po

14 years agoi18n: update LINGUAS
Lennart Poettering [Sun, 21 Feb 2010 20:15:10 +0000 (21:15 +0100)]
i18n: update LINGUAS

14 years agol10n: Updates to Chinese (Taiwan) (zh_TW) translation
Cheng-Chia Tseng [Sat, 20 Feb 2010 09:58:28 +0000 (09:58 +0000)]
l10n: Updates to Chinese (Taiwan) (zh_TW) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Chinese (Taiwan) (zh_TW) translation
Cheng-Chia Tseng [Sat, 20 Feb 2010 04:57:35 +0000 (04:57 +0000)]
l10n: Updates to Chinese (Taiwan) (zh_TW) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Chinese (Taiwan) (zh_TW) translation
Cheng-Chia Tseng [Fri, 19 Feb 2010 12:10:30 +0000 (12:10 +0000)]
l10n: Updates to Chinese (Taiwan) (zh_TW) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Chinese (Taiwan) (zh_TW) translation
Cheng-Chia Tseng [Fri, 19 Feb 2010 11:43:57 +0000 (11:43 +0000)]
l10n: Updates to Chinese (Taiwan) (zh_TW) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Chinese (Taiwan) (zh_TW) translation
zerng07 [Fri, 5 Feb 2010 13:34:24 +0000 (13:34 +0000)]
l10n: Updates to Chinese (Taiwan) (zh_TW) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 31 Jan 2010 12:49:55 +0000 (12:49 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 21:20:17 +0000 (21:20 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 21:09:52 +0000 (21:09 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 20:48:27 +0000 (20:48 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 20:33:56 +0000 (20:33 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 16:13:23 +0000 (16:13 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 15:35:08 +0000 (15:35 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 14:37:32 +0000 (14:37 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 12:58:29 +0000 (12:58 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 12:56:40 +0000 (12:56 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 12:55:22 +0000 (12:55 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 12:52:13 +0000 (12:52 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Russian (ru) translation
Leonid Kurbatov [Sun, 24 Jan 2010 12:46:55 +0000 (12:46 +0000)]
l10n: Updates to Russian (ru) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to French (fr) translation
Pascal Terjan [Sun, 17 Jan 2010 09:46:16 +0000 (09:46 +0000)]
l10n: Updates to French (fr) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to French (fr) translation
Pascal Terjan [Sun, 17 Jan 2010 09:43:36 +0000 (09:43 +0000)]
l10n: Updates to French (fr) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agol10n: Updates to Greek (el) translation
Dimitris Glezos [Fri, 15 Jan 2010 15:47:10 +0000 (15:47 +0000)]
l10n: Updates to Greek (el) translation

Transmitted-via: Transifex (www.transifex.net)

14 years agoSending translation for po/he.po
elad [Wed, 30 Dec 2009 16:21:51 +0000 (16:21 +0000)]
Sending translation for po/he.po

14 years agoSending translation for Finnish
vpv [Wed, 23 Dec 2009 21:47:14 +0000 (21:47 +0000)]
Sending translation for Finnish