summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Bacher <seb128@ubuntu.com>2020-10-08 21:37:44 +0200
committerSebastien Bacher <seb128@ubuntu.com>2020-10-08 21:37:44 +0200
commit245977c8ad426bd475594e9f33b5729678632a69 (patch)
treeeabb76913f8eb17a6c5dc2cbc505214dd4e012cc
parentbb5f82cb41d3d34eb11e13cb19bec99ab276d142 (diff)
New upstream version 13.99.2
-rw-r--r--.gitlab-ci.yml22
-rw-r--r--.tarball-version2
-rw-r--r--.version2
-rw-r--r--ABOUT-NLS2411
-rw-r--r--Makefile.am1
-rw-r--r--Makefile.in5
-rw-r--r--PROTOCOL8
-rw-r--r--aclocal.m4676
-rwxr-xr-xbuild-aux/config.rpath2
-rw-r--r--config.h.in9
-rwxr-xr-xconfigure1077
-rw-r--r--configure.ac46
-rw-r--r--doxygen/Makefile.in2
-rw-r--r--doxygen/doxygen.conf.in64
-rw-r--r--doxygen/meson.build10
-rw-r--r--m4/gettext.m472
-rw-r--r--m4/iconv.m457
-rw-r--r--m4/intlmacosx.m437
-rw-r--r--m4/lib-ld.m4163
-rw-r--r--m4/lib-link.m4169
-rw-r--r--m4/lib-prefix.m4238
-rw-r--r--m4/nls.m414
-rw-r--r--m4/progtest.m48
-rw-r--r--man/Makefile.in2
-rw-r--r--man/pacat.12
-rw-r--r--man/pacat.1.xml.in15
-rw-r--r--man/pactl.12
-rw-r--r--man/pactl.1.xml.in14
-rw-r--r--man/pulse-client.conf.52
-rw-r--r--man/pulse-client.conf.5.xml.in13
-rw-r--r--man/pulse-daemon.conf.58
-rw-r--r--man/pulse-daemon.conf.5.xml.in23
-rw-r--r--man/pulseaudio.16
-rw-r--r--man/pulseaudio.1.xml.in23
-rw-r--r--meson.build23
-rw-r--r--meson_options.txt6
-rw-r--r--po/.gitignore1
-rw-r--r--po/LINGUAS2
-rw-r--r--po/Makefile.in.in26
-rw-r--r--po/Rules-quot2
-rw-r--r--po/af.gmobin10724 -> 10584 bytes
-rw-r--r--po/as.gmobin54039 -> 40248 bytes
-rw-r--r--po/be.gmobin85863 -> 61786 bytes
-rw-r--r--po/bg.gmobin0 -> 2173 bytes
-rw-r--r--po/bg.po2712
-rw-r--r--po/bn_IN.gmobin57451 -> 41872 bytes
-rw-r--r--po/ca.gmobin37142 -> 32495 bytes
-rw-r--r--po/ca.po1003
-rw-r--r--po/cs.gmobin70258 -> 52855 bytes
-rw-r--r--po/da.gmobin67009 -> 60685 bytes
-rw-r--r--po/de.gmobin68503 -> 49326 bytes
-rw-r--r--po/de_CH.gmobin33486 -> 25632 bytes
-rw-r--r--po/el.gmobin89685 -> 54316 bytes
-rw-r--r--po/es.gmobin38787 -> 43702 bytes
-rw-r--r--po/es.po4129
-rw-r--r--po/fi.gmobin38356 -> 28045 bytes
-rw-r--r--po/fr.gmobin70239 -> 44854 bytes
-rw-r--r--po/fr.po75
-rw-r--r--po/gl.gmobin71153 -> 64925 bytes
-rw-r--r--po/gu.gmobin54422 -> 39091 bytes
-rw-r--r--po/he.gmobin5509 -> 5426 bytes
-rw-r--r--po/hi.gmobin50659 -> 36604 bytes
-rw-r--r--po/hr.gmobin69916 -> 64380 bytes
-rw-r--r--po/hr.po32
-rw-r--r--po/hu.gmobin72667 -> 52408 bytes
-rw-r--r--po/hu.po29
-rw-r--r--po/id.gmobin63465 -> 46328 bytes
-rw-r--r--po/it.gmobin71775 -> 65334 bytes
-rw-r--r--po/it.po23
-rw-r--r--po/ja.gmobin69922 -> 46505 bytes
-rw-r--r--po/ja.po3543
-rw-r--r--po/kk.gmobin0 -> 21353 bytes
-rw-r--r--po/kk.po2864
-rw-r--r--po/kn.gmobin60237 -> 43435 bytes
-rw-r--r--po/ko.gmobin69215 -> 37986 bytes
-rw-r--r--po/lt.gmobin72277 -> 66227 bytes
-rw-r--r--po/meson.build9
-rw-r--r--po/ml.gmobin61525 -> 45537 bytes
-rw-r--r--po/mr.gmobin51761 -> 37758 bytes
-rw-r--r--po/nl.gmobin37393 -> 29008 bytes
-rw-r--r--po/nl.po103
-rw-r--r--po/nn.gmobin66491 -> 48418 bytes
-rw-r--r--po/oc.gmobin44462 -> 38859 bytes
-rw-r--r--po/or.gmobin53430 -> 39672 bytes
-rw-r--r--po/pa.gmobin49626 -> 36601 bytes
-rw-r--r--po/pl.gmobin74652 -> 67806 bytes
-rw-r--r--po/pl.po12
-rw-r--r--po/pt.gmobin36066 -> 25893 bytes
-rw-r--r--po/pt_BR.gmobin71755 -> 72559 bytes
-rw-r--r--po/pt_BR.po656
-rw-r--r--po/pulseaudio.pot1056
-rw-r--r--po/ru.gmobin95928 -> 86417 bytes
-rw-r--r--po/sk.gmobin26764 -> 25557 bytes
-rw-r--r--po/sr.gmobin47310 -> 34345 bytes
-rw-r--r--po/sr@latin.gmobin37992 -> 27786 bytes
-rw-r--r--po/sv.gmobin69664 -> 53792 bytes
-rw-r--r--po/sv.po75
-rw-r--r--po/ta.gmobin54875 -> 39964 bytes
-rw-r--r--po/te.gmobin57499 -> 41572 bytes
-rw-r--r--po/tr.gmobin68395 -> 49586 bytes
-rw-r--r--po/tr.po22
-rw-r--r--po/uk.gmobin93018 -> 85722 bytes
-rw-r--r--po/zh_CN.gmobin62408 -> 44879 bytes
-rw-r--r--po/zh_TW.gmobin65186 -> 59487 bytes
-rw-r--r--shell-completion/zsh/_pulseaudio2
-rw-r--r--src/.gitignore1
-rw-r--r--src/Makefile.am79
-rw-r--r--src/Makefile.in765
-rw-r--r--src/daemon/main.c4
-rw-r--r--src/daemon/systemd/user/pulseaudio.service.in2
-rw-r--r--src/meson.build4
-rw-r--r--src/modules/alsa/90-pulseaudio.rules23
-rw-r--r--src/modules/alsa/alsa-mixer.c229
-rw-r--r--src/modules/alsa/alsa-mixer.h4
-rw-r--r--src/modules/alsa/alsa-sink.c61
-rw-r--r--src/modules/alsa/alsa-source.c69
-rw-r--r--src/modules/alsa/alsa-ucm.c106
-rw-r--r--src/modules/alsa/alsa-ucm.h2
-rw-r--r--src/modules/alsa/alsa-util.c2
-rw-r--r--src/modules/alsa/alsa-util.h7
-rw-r--r--src/modules/alsa/mixer/paths/analog-input-linein.conf3
-rw-r--r--src/modules/alsa/mixer/paths/analog-input-mic.conf3
-rw-r--r--src/modules/alsa/mixer/paths/analog-output-headphones.conf3
-rw-r--r--src/modules/alsa/mixer/paths/analog-output-speaker.conf3
-rw-r--r--src/modules/alsa/mixer/paths/analog-output.conf.common2
-rw-r--r--src/modules/alsa/mixer/profile-sets/audigy.conf94
-rw-r--r--src/modules/alsa/mixer/profile-sets/steelseries-arctis-common-usb-audio.conf4
-rw-r--r--src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf33
-rw-r--r--src/modules/alsa/module-alsa-card.c12
-rw-r--r--src/modules/bluetooth/bluez5-util.c24
-rw-r--r--src/modules/bluetooth/module-bluetooth-policy.c1
-rw-r--r--src/modules/bluetooth/module-bluez5-device.c16
-rw-r--r--src/modules/module-card-restore.c3
-rw-r--r--src/modules/module-loopback.c6
-rw-r--r--src/modules/module-null-sink.c2
-rw-r--r--src/modules/module-stream-restore.c64
-rw-r--r--src/modules/module-tunnel.c14
-rw-r--r--src/modules/module-udev-detect.c14
-rw-r--r--src/modules/raop/raop-client.c21
-rw-r--r--src/modules/raop/raop-crypto.c1
-rw-r--r--src/modules/raop/raop-sink.c8
-rw-r--r--src/modules/rtp/rtp-gstreamer.c84
-rw-r--r--src/pulse/def.h29
-rw-r--r--src/pulse/format.h4
-rw-r--r--src/pulse/introspect.c23
-rw-r--r--src/pulse/introspect.h70
-rw-r--r--src/pulse/sample.h4
-rw-r--r--src/pulse/thread-mainloop.h8
-rw-r--r--src/pulse/version.h2
-rw-r--r--src/pulsecore/client.h2
-rw-r--r--src/pulsecore/core-subscribe.c3
-rw-r--r--src/pulsecore/core.c4
-rw-r--r--src/pulsecore/device-port.c42
-rw-r--r--src/pulsecore/device-port.h6
-rw-r--r--src/pulsecore/dynarray.c23
-rw-r--r--src/pulsecore/dynarray.h4
-rw-r--r--src/pulsecore/mcalign.h2
-rw-r--r--src/pulsecore/memblock.h2
-rw-r--r--src/pulsecore/meson.build2
-rw-r--r--src/pulsecore/module.c8
-rw-r--r--src/pulsecore/module.h5
-rw-r--r--src/pulsecore/protocol-native.c27
-rw-r--r--src/pulsecore/pstream.c12
-rw-r--r--src/pulsecore/remap_neon.c32
-rw-r--r--src/pulsecore/sink.c18
-rw-r--r--src/pulsecore/sink.h2
-rw-r--r--src/pulsecore/source.c16
-rw-r--r--src/pulsecore/source.h2
-rw-r--r--src/tests/cpu-remap-test.c5
-rw-r--r--src/tests/hashmap-test.c260
-rw-r--r--src/tests/meson.build9
-rw-r--r--src/utils/pacat.c6
-rw-r--r--src/utils/pactl.c52
173 files changed, 16516 insertions, 7551 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index dcb4a98..a611103 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -18,24 +18,30 @@ variables:
# Update this tag when you want to trigger a rebuild the container in which
# CI runs, for example when adding new packages to UBUNTU_DEBS. The tag is
# an arbitrary string that identifies the exact container contents.
- UBUNTU_TAG: '2019-11-21-01'
- UBUNTU_VERSION: '18.04'
- UBUNTU_IMAGE: "$CI_REGISTRY_IMAGE/ubuntu/$UBUNTU_VERSION:$UBUNTU_TAG"
+ FDO_DISTRIBUTION_TAG: '2020-03-07-01'
+ FDO_DISTRIBUTION_VERSION: '18.04'
+ FDO_UPSTREAM_REPO: 'pulseaudio/pulseaudio'
+ UBUNTU_IMAGE: "$CI_REGISTRY_IMAGE/ubuntu/$FDO_DISTRIBUTION_VERSION:$FDO_DISTRIBUTION_TAG"
include:
+ # We pull templates from master to avoid the overhead of periodically
+ # scanning for changes upstream. This does means builds might occasionally
+ # break due to upstream changing things, so if you see unexpected build
+ # failures, this might be one cause.
- project: 'wayland/ci-templates'
- ref: master
+ ref: 'master'
file: '/templates/ubuntu.yml'
build-container:
- extends: .ubuntu@container-ifnot-exists
+ extends: .fdo.container-ifnot-exists@ubuntu
stage: container
variables:
GIT_STRATEGY: none # no need to pull the whole tree for rebuilding the image
- # Remember to update UBUNTU_TAG when modifying this package list! Otherwise
- # the changes won't have effect since an old container image will be used.
- UBUNTU_DEBS: >-
+ # Remember to update FDO_DISTRIBUTION_TAG when modifying this package list!
+ # Otherwise the changes won't have effect since an old container image will
+ # be used.
+ FDO_DISTRIBUTION_PACKAGES: >-
autoconf
automake
autopoint
diff --git a/.tarball-version b/.tarball-version
index 99bc3d6..c70553e 100644
--- a/.tarball-version
+++ b/.tarball-version
@@ -1 +1 @@
-13.99.1
+13.99.2
diff --git a/.version b/.version
index 99bc3d6..c70553e 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-13.99.1
+13.99.2
diff --git a/ABOUT-NLS b/ABOUT-NLS
index b1de1b6..3cc8286 100644
--- a/ABOUT-NLS
+++ b/ABOUT-NLS
@@ -1,16 +1,16 @@
1 Notes on the Free Translation Project
***************************************
-Free software is going international! The Free Translation Project is
-a way to get maintainers of free software, translators, and users all
+Free software is going international! The Free Translation Project is a
+way to get maintainers of free software, translators, and users all
together, so that free software will gradually become able to speak many
languages. A few packages already provide translations for their
messages.
- If you found this `ABOUT-NLS' file inside a distribution, you may
-assume that the distributed package does use GNU `gettext' internally,
+ If you found this 'ABOUT-NLS' file inside a distribution, you may
+assume that the distributed package does use GNU 'gettext' internally,
itself available at your nearest GNU archive site. But you do _not_
-need to install GNU `gettext' prior to configuring, installing or using
+need to install GNU 'gettext' prior to configuring, installing or using
this package with messages translated.
Installers will find here some useful hints. These notes also
@@ -23,12 +23,12 @@ work on translations can contact the appropriate team.
Some packages are "localizable" when properly installed; the programs
they contain can be made to speak your own native language. Most such
-packages use GNU `gettext'. Other packages have their own ways to
-internationalization, predating GNU `gettext'.
+packages use GNU 'gettext'. Other packages have their own ways to
+internationalization, predating GNU 'gettext'.
By default, this package will be installed to allow translation of
messages. It will automatically detect whether the system already
-provides the GNU `gettext' functions. Installers may use special
+provides the GNU 'gettext' functions. Installers may use special
options at configuration time for changing the default behaviour. The
command:
@@ -36,72 +36,71 @@ command:
will _totally_ disable translation of messages.
- When you already have GNU `gettext' installed on your system and run
-configure without an option for your new package, `configure' will
-probably detect the previously built and installed `libintl' library
-and will decide to use it. If not, you may have to to use the
-`--with-libintl-prefix' option to tell `configure' where to look for it.
+ When you already have GNU 'gettext' installed on your system and run
+configure without an option for your new package, 'configure' will
+probably detect the previously built and installed 'libintl' library and
+will decide to use it. If not, you may have to to use the
+'--with-libintl-prefix' option to tell 'configure' where to look for it.
- Internationalized packages usually have many `po/LL.po' files, where
+ Internationalized packages usually have many 'po/LL.po' files, where
LL gives an ISO 639 two-letter code identifying the language. Unless
-translations have been forbidden at `configure' time by using the
-`--disable-nls' switch, all available translations are installed
-together with the package. However, the environment variable `LINGUAS'
+translations have been forbidden at 'configure' time by using the
+'--disable-nls' switch, all available translations are installed
+together with the package. However, the environment variable 'LINGUAS'
may be set, prior to configuration, to limit the installed set.
-`LINGUAS' should then contain a space separated list of two-letter
+'LINGUAS' should then contain a space separated list of two-letter
codes, stating which languages are allowed.
1.2 Using This Package
======================
As a user, if your language has been installed for this package, you
-only have to set the `LANG' environment variable to the appropriate
-`LL_CC' combination. If you happen to have the `LC_ALL' or some other
-`LC_xxx' environment variables set, you should unset them before
-setting `LANG', otherwise the setting of `LANG' will not have the
-desired effect. Here `LL' is an ISO 639 two-letter language code, and
-`CC' is an ISO 3166 two-letter country code. For example, let's
-suppose that you speak German and live in Germany. At the shell
-prompt, merely execute `setenv LANG de_DE' (in `csh'),
-`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
-This can be done from your `.login' or `.profile' file, once and for
-all.
+only have to set the 'LANG' environment variable to the appropriate
+'LL_CC' combination. If you happen to have the 'LC_ALL' or some other
+'LC_xxx' environment variables set, you should unset them before setting
+'LANG', otherwise the setting of 'LANG' will not have the desired
+effect. Here 'LL' is an ISO 639 two-letter language code, and 'CC' is
+an ISO 3166 two-letter country code. For example, let's suppose that
+you speak German and live in Germany. At the shell prompt, merely
+execute 'setenv LANG de_DE' (in 'csh'), 'export LANG; LANG=de_DE' (in
+'sh') or 'export LANG=de_DE' (in 'bash'). This can be done from your
+'.login' or '.profile' file, once and for all.
You might think that the country code specification is redundant.
But in fact, some languages have dialects in different countries. For
-example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The
+example, 'de_AT' is used for Austria, and 'pt_BR' for Brazil. The
country code serves to distinguish the dialects.
- The locale naming convention of `LL_CC', with `LL' denoting the
-language and `CC' denoting the country, is the one use on systems based
-on GNU libc. On other systems, some variations of this scheme are
-used, such as `LL' or `LL_CC.ENCODING'. You can get the list of
-locales supported by your system for your language by running the
-command `locale -a | grep '^LL''.
+ The locale naming convention of 'LL_CC', with 'LL' denoting the
+language and 'CC' denoting the country, is the one use on systems based
+on GNU libc. On other systems, some variations of this scheme are used,
+such as 'LL' or 'LL_CC.ENCODING'. You can get the list of locales
+supported by your system for your language by running the command
+'locale -a | grep '^LL''.
Not all programs have translations for all languages. By default, an
English message is shown in place of a nonexistent translation. If you
understand other languages, you can set up a priority list of languages.
This is done through a different environment variable, called
-`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG'
-for the purpose of message handling, but you still need to have `LANG'
+'LANGUAGE'. GNU 'gettext' gives preference to 'LANGUAGE' over 'LANG'
+for the purpose of message handling, but you still need to have 'LANG'
set to the primary language; this is required by other parts of the
-system libraries. For example, some Swedish users who would rather
-read translations in German than English for when Swedish is not
-available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
+system libraries. For example, some Swedish users who would rather read
+translations in German than English for when Swedish is not available,
+set 'LANGUAGE' to 'sv:de' while leaving 'LANG' to 'sv_SE'.
Special advice for Norwegian users: The language code for Norwegian
-bokma*l changed from `no' to `nb' recently (in 2003). During the
+bokma*l changed from 'no' to 'nb' recently (in 2003). During the
transition period, while some message catalogs for this language are
-installed under `nb' and some older ones under `no', it's recommended
-for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and
+installed under 'nb' and some older ones under 'no', it's recommended
+for Norwegian users to set 'LANGUAGE' to 'nb:no' so that both newer and
older translations are used.
- In the `LANGUAGE' environment variable, but not in the `LANG'
-environment variable, `LL_CC' combinations can be abbreviated as `LL'
-to denote the language's main dialect. For example, `de' is equivalent
-to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
-(Portuguese as spoken in Portugal) in this context.
+ In the 'LANGUAGE' environment variable, but not in the 'LANG'
+environment variable, 'LL_CC' combinations can be abbreviated as 'LL' to
+denote the language's main dialect. For example, 'de' is equivalent to
+'de_DE' (German as spoken in Germany), and 'pt' to 'pt_PT' (Portuguese
+as spoken in Portugal) in this context.
1.3 Translating Teams
=====================
@@ -111,22 +110,22 @@ people who like their own language and write it well, and who are also
able to synergize with other translators speaking the same language.
Each translation team has its own mailing list. The up-to-date list of
teams can be found at the Free Translation Project's homepage,
-`http://translationproject.org/', in the "Teams" area.
+'http://translationproject.org/', in the "Teams" area.
If you'd like to volunteer to _work_ at translating messages, you
should become a member of the translating team for your own language.
The subscribing address is _not_ the same as the list itself, it has
-`-request' appended. For example, speakers of Swedish can send a
-message to `sv-request@li.org', having this message body:
+'-request' appended. For example, speakers of Swedish can send a
+message to 'sv-request@li.org', having this message body:
subscribe
- Keep in mind that team members are expected to participate
-_actively_ in translations, or at solving translational difficulties,
-rather than merely lurking around. If your team does not exist yet and
-you want to start one, or if you are unsure about what to do or how to
-get started, please write to `coordinator@translationproject.org' to
-reach the coordinator for all translator teams.
+ Keep in mind that team members are expected to participate _actively_
+in translations, or at solving translational difficulties, rather than
+merely lurking around. If your team does not exist yet and you want to
+start one, or if you are unsure about what to do or how to get started,
+please write to 'coordinator@translationproject.org' to reach the
+coordinator for all translator teams.
The English team is special. It works at improving and uniformizing
the terminology in use. Proven linguistic skills are praised more than
@@ -136,1114 +135,1214 @@ programming skills, here.
======================
Languages are not equally supported in all packages. The following
-matrix shows the current state of internationalization, as of June
-2010. The matrix shows, in regard of each package, for which languages
-PO files have been submitted to translation coordination, with a
+matrix shows the current state of internationalization, as of Jun 2014.
+The matrix shows, in regard of each package, for which languages PO
+files have been submitted to translation coordination, with a
translation percentage of at least 50%.
- Ready PO files af am an ar as ast az be be@latin bg bn_IN bs ca
+ Ready PO files af am an ar as ast az be bg bn bn_IN bs ca crh cs
+ +---------------------------------------------------+
+ a2ps | [] [] [] |
+ aegis | |
+ anubis | |
+ aspell | [] [] [] |
+ bash | [] [] [] |
+ bfd | |
+ binutils | [] |
+ bison | |
+ bison-runtime | [] |
+ buzztrax | [] |
+ ccd2cue | |
+ ccide | |
+ cflow | |
+ clisp | |
+ coreutils | [] [] |
+ cpio | |
+ cppi | |
+ cpplib | [] |
+ cryptsetup | [] |
+ datamash | |
+ denemo | [] [] |
+ dfarc | [] |
+ dialog | [] [] [] |
+ dico | |
+ diffutils | [] |
+ dink | [] |
+ direvent | |
+ doodle | [] |
+ dos2unix | |
+ dos2unix-man | |
+ e2fsprogs | [] [] |
+ enscript | [] |
+ exif | [] |
+ fetchmail | [] [] |
+ findutils | [] |
+ flex | [] |
+ freedink | [] [] |
+ fusionforge | |
+ gas | |
+ gawk | [] |
+ gcal | [] |
+ gcc | |
+ gdbm | |
+ gettext-examples | [] [] [] [] [] |
+ gettext-runtime | [] [] [] |
+ gettext-tools | [] [] |
+ gjay | |
+ glunarclock | [] [] [] |
+ gnubiff | [] |
+ gnubik | [] |
+ gnucash | () () [] |
+ gnuchess | |
+ gnulib | [] |
+ gnunet | |
+ gnunet-gtk | |
+ gold | |
+ gphoto2 | [] |
+ gprof | [] |
+ gramadoir | |
+ grep | [] [] [] |
+ grub | [] |
+ gsasl | |
+ gss | |
+ gst-plugins-bad | [] [] |
+ gst-plugins-base | [] [] [] |
+ gst-plugins-good | [] [] [] |
+ gst-plugins-ugly | [] [] [] |
+ gstreamer | [] [] [] [] |
+ gtick | [] |
+ gtkam | [] [] |
+ gtkspell | [] [] [] [] [] |
+ guix | |
+ guix-packages | |
+ gutenprint | [] |
+ hello | [] |
+ help2man | |
+ help2man-texi | |
+ hylafax | |
+ idutils | |
+ iso_15924 | [] |
+ iso_3166 | [] [] [] [] [] [] [] [] [] [] |
+ iso_3166_2 | |
+ iso_4217 | [] |
+ iso_639 | [] [] [] [] [] [] [] [] [] |
+ iso_639_3 | [] [] |
+ iso_639_5 | |
+ jwhois | |
+ kbd | [] |
+ klavaro | [] [] [] [] [] |
+ ld | [] |
+ leafpad | [] [] [] [] |
+ libc | [] [] [] |
+ libexif | () |
+ libextractor | |
+ libgnutls | [] |
+ libgphoto2 | [] |
+ libgphoto2_port | [] |
+ libgsasl | |
+ libiconv | [] [] |
+ libidn | [] |
+ liferea | [] [] [] [] |
+ lilypond | [] [] |
+ lordsawar | [] |
+ lprng | |
+ lynx | [] [] |
+ m4 | [] |
+ mailfromd | |
+ mailutils | |
+ make | [] |
+ man-db | [] [] |
+ man-db-manpages | |
+ midi-instruments | [] [] [] |
+ minicom | [] |
+ mkisofs | [] |
+ myserver | [] |
+ nano | [] [] [] |
+ opcodes | |
+ parted | [] |
+ pies | |
+ pnmixer | |
+ popt | [] |
+ procps-ng | |
+ procps-ng-man | |
+ psmisc | [] |
+ pspp | [] |
+ pushover | [] |
+ pwdutils | |
+ pyspread | |
+ radius | [] |
+ recode | [] [] [] |
+ recutils | |
+ rpm | |
+ rush | |
+ sarg | |
+ sed | [] [] [] [] |
+ sharutils | [] |
+ shishi | |
+ skribilo | |
+ solfege | [] [] |
+ solfege-manual | |
+ spotmachine | |
+ sudo | [] [] |
+ sudoers | [] [] |
+ sysstat | [] |
+ tar | [] [] [] |
+ texinfo | [] [] |
+ texinfo_document | [] [] |
+ tigervnc | [] |
+ tin | |
+ tin-man | |
+ tracgoogleappsa... | |
+ trader | |
+ util-linux | [] |
+ ve | |
+ vice | |
+ vmm | |
+ vorbis-tools | [] |
+ wastesedge | |
+ wcd | |
+ wcd-man | |
+ wdiff | [] [] |
+ wget | [] |
+ wyslij-po | |
+ xboard | |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] |
+ +---------------------------------------------------+
+ af am an ar as ast az be bg bn bn_IN bs ca crh cs
+ 4 0 2 5 3 11 0 8 25 3 3 1 55 4 74
+
+ da de el en en_GB en_ZA eo es et eu fa fi fr
+ +--------------------------------------------------+
+ a2ps | [] [] [] [] [] [] [] [] [] |
+ aegis | [] [] [] [] |
+ anubis | [] [] [] [] [] |
+ aspell | [] [] [] [] [] [] [] |
+ bash | [] [] [] |
+ bfd | [] [] [] [] |
+ binutils | [] [] [] |
+ bison | [] [] [] [] [] [] [] [] |
+ bison-runtime | [] [] [] [] [] [] [] [] |
+ buzztrax | [] [] [] [] |
+ ccd2cue | [] [] [] [] |
+ ccide | [] [] [] [] [] [] |
+ cflow | [] [] [] [] [] |
+ clisp | [] [] [] [] [] |
+ coreutils | [] [] [] [] [] |
+ cpio | [] [] [] [] [] |
+ cppi | [] [] [] [] [] |
+ cpplib | [] [] [] [] [] [] |
+ cryptsetup | [] [] [] [] [] |
+ datamash | [] [] [] [] |
+ denemo | [] |
+ dfarc | [] [] [] [] [] [] |
+ dialog | [] [] [] [] [] [] [] [] [] |
+ dico | [] [] [] [] |
+ diffutils | [] [] [] [] [] [] |
+ dink | [] [] [] [] [] [] |
+ direvent | [] [] [] [] |
+ doodle | [] [] [] [] |
+ dos2unix | [] [] [] [] [] |
+ dos2unix-man | [] [] [] |
+ e2fsprogs | [] [] [] [] [] |
+ enscript | [] [] [] [] [] [] |
+ exif | [] [] [] [] [] [] |
+ fetchmail | [] () [] [] [] [] [] |
+ findutils | [] [] [] [] [] [] [] [] |
+ flex | [] [] [] [] [] [] |
+ freedink | [] [] [] [] [] [] [] [] |
+ fusionforge | [] [] [] |
+ gas | [] [] [] |
+ gawk | [] [] [] [] [] |
+ gcal | [] [] [] [] |
+ gcc | [] |
+ gdbm | [] [] [] [] [] |
+ gettext-examples | [] [] [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] [] |
+ gettext-tools | [] [] [] [] [] |
+ gjay | [] [] [] [] |
+ glunarclock | [] [] [] [] [] |
+ gnubiff | () [] [] () |
+ gnubik | [] [] [] [] [] |
+ gnucash | [] () () () () () () |
+ gnuchess | [] [] [] [] |
+ gnulib | [] [] [] [] [] [] [] |
+ gnunet | [] |
+ gnunet-gtk | [] |
+ gold | [] [] [] |
+ gphoto2 | [] () [] [] |
+ gprof | [] [] [] [] [] [] |
+ gramadoir | [] [] [] [] [] |
+ grep | [] [] [] [] [] [] [] |
+ grub | [] [] [] [] [] |
+ gsasl | [] [] [] [] [] |
+ gss | [] [] [] [] [] |
+ gst-plugins-bad | [] [] [] |
+ gst-plugins-base | [] [] [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] [] [] [] |
+ gstreamer | [] [] [] [] [] [] [] |
+ gtick | [] () [] [] [] |
+ gtkam | [] () [] [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] [] |
+ guix | [] [] |
+ guix-packages | |
+ gutenprint | [] [] [] [] |
+ hello | [] [] [] [] [] [] [] [] |
+ help2man | [] [] [] [] [] [] [] |
+ help2man-texi | [] [] [] |
+ hylafax | [] [] |
+ idutils | [] [] [] [] [] |
+ iso_15924 | [] () [] [] () [] () |
+ iso_3166 | [] () [] [] [] [] () [] () |
+ iso_3166_2 | [] () () () |
+ iso_4217 | [] () [] [] [] () [] () |
+ iso_639 | [] () [] [] () [] () |
+ iso_639_3 | () () () |
+ iso_639_5 | () () () |
+ jwhois | [] [] [] [] [] |
+ kbd | [] [] [] [] [] [] |
+ klavaro | [] [] [] [] [] [] [] |
+ ld | [] [] [] [] |
+ leafpad | [] [] [] [] [] [] [] [] |
+ libc | [] [] [] [] [] |
+ libexif | [] [] () [] [] |
+ libextractor | [] |
+ libgnutls | [] [] [] [] |
+ libgphoto2 | [] () [] |
+ libgphoto2_port | [] () [] [] [] [] |
+ libgsasl | [] [] [] [] [] |
+ libiconv | [] [] [] [] [] [] [] |
+ libidn | [] [] [] [] [] |
+ liferea | [] () [] [] [] [] [] |
+ lilypond | [] [] [] [] [] [] |
+ lordsawar | [] [] |
+ lprng | |
+ lynx | [] [] [] [] [] [] |
+ m4 | [] [] [] [] [] [] |
+ mailfromd | [] |
+ mailutils | [] [] [] [] |
+ make | [] [] [] [] [] |
+ man-db | [] [] [] [] |
+ man-db-manpages | [] [] |
+ midi-instruments | [] [] [] [] [] [] [] [] [] |
+ minicom | [] [] [] [] [] |
+ mkisofs | [] [] [] |
+ myserver | [] [] [] [] |
+ nano | [] [] [] [] [] [] [] |
+ opcodes | [] [] [] [] [] |
+ parted | [] [] [] |
+ pies | [] |
+ pnmixer | [] [] |
+ popt | [] [] [] [] [] [] |
+ procps-ng | [] [] |
+ procps-ng-man | [] [] |
+ psmisc | [] [] [] [] [] [] [] |
+ pspp | [] [] [] |
+ pushover | () [] [] [] |
+ pwdutils | [] [] [] |
+ pyspread | [] [] [] |
+ radius | [] [] |
+ recode | [] [] [] [] [] [] [] |
+ recutils | [] [] [] [] |
+ rpm | [] [] [] [] [] |
+ rush | [] [] [] |
+ sarg | [] [] |
+ sed | [] [] [] [] [] [] [] [] |
+ sharutils | [] [] [] [] |
+ shishi | [] [] [] |
+ skribilo | [] [] [] |
+ solfege | [] [] [] [] [] [] [] [] |
+ solfege-manual | [] [] [] [] [] |
+ spotmachine | [] [] [] [] [] |
+ sudo | [] [] [] [] [] [] |
+ sudoers | [] [] [] [] [] [] |
+ sysstat | [] [] [] [] [] [] |
+ tar | [] [] [] [] [] [] [] |
+ texinfo | [] [] [] [] [] |
+ texinfo_document | [] [] [] [] |
+ tigervnc | [] [] [] [] [] [] |
+ tin | [] [] [] [] |
+ tin-man | [] |
+ tracgoogleappsa... | [] [] [] [] [] |
+ trader | [] [] [] [] [] [] |
+ util-linux | [] [] [] [] |
+ ve | [] [] [] [] [] |
+ vice | () () () |
+ vmm | [] [] |
+ vorbis-tools | [] [] [] [] |
+ wastesedge | [] |
+ wcd | [] [] [] [] |
+ wcd-man | [] |
+ wdiff | [] [] [] [] [] [] [] |
+ wget | [] [] [] [] [] [] |
+ wyslij-po | [] [] [] [] |
+ xboard | [] [] [] [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] [] [] [] |
+ +--------------------------------------------------+
+ da de el en en_GB en_ZA eo es et eu fa fi fr
+ 119 131 32 1 6 0 94 95 22 13 4 102 139
+
+ ga gd gl gu he hi hr hu hy ia id is it ja ka kk
+ +-------------------------------------------------+
+ a2ps | [] [] [] [] |
+ aegis | [] |
+ anubis | [] [] [] [] |
+ aspell | [] [] [] [] [] |
+ bash | [] [] [] [] |
+ bfd | [] [] |
+ binutils | [] [] [] |
+ bison | [] |
+ bison-runtime | [] [] [] [] [] [] [] [] |
+ buzztrax | |
+ ccd2cue | [] |
+ ccide | [] [] |
+ cflow | [] [] [] |
+ clisp | |
+ coreutils | [] [] |
+ cpio | [] [] [] [] [] [] |
+ cppi | [] [] [] [] [] |
+ cpplib | [] [] |
+ cryptsetup | [] |
+ datamash | |
+ denemo | [] |
+ dfarc | [] [] [] |
+ dialog | [] [] [] [] [] [] [] [] [] [] |
+ dico | |
+ diffutils | [] [] [] [] |
+ dink | [] |
+ direvent | [] |
+ doodle | [] [] |
+ dos2unix | [] [] |
+ dos2unix-man | |
+ e2fsprogs | [] [] |
+ enscript | [] [] [] |
+ exif | [] [] [] [] [] [] |
+ fetchmail | [] [] [] |
+ findutils | [] [] [] [] [] [] [] |
+ flex | [] |
+ freedink | [] [] [] [] |
+ fusionforge | |
+ gas | [] |
+ gawk | [] () [] |
+ gcal | |
+ gcc | |
+ gdbm | |
+ gettext-examples | [] [] [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] [] [] |
+ gettext-tools | [] [] [] |
+ gjay | [] |
+ glunarclock | [] [] [] [] [] [] |
+ gnubiff | [] [] () |
+ gnubik | [] [] [] |
+ gnucash | () () () () () |
+ gnuchess | |
+ gnulib | [] [] [] [] [] |
+ gnunet | |
+ gnunet-gtk | |
+ gold | [] [] |
+ gphoto2 | [] [] [] [] |
+ gprof | [] [] [] [] |
+ gramadoir | [] [] [] |
+ grep | [] [] [] [] [] [] [] |
+ grub | [] [] [] |
+ gsasl | [] [] [] [] [] |
+ gss | [] [] [] [] [] |
+ gst-plugins-bad | [] [] [] |
+ gst-plugins-base | [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] [] |
+ gstreamer | [] [] [] [] [] |
+ gtick | [] [] [] [] [] |
+ gtkam | [] [] [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] [] [] [] |
+ guix | |
+ guix-packages | |
+ gutenprint | [] [] [] |
+ hello | [] [] [] [] [] |
+ help2man | [] [] [] |
+ help2man-texi | |
+ hylafax | [] |
+ idutils | [] [] |
+ iso_15924 | [] [] [] [] [] [] |
+ iso_3166 | [] [] [] [] [] [] [] [] [] [] [] [] [] |
+ iso_3166_2 | [] [] |
+ iso_4217 | [] [] [] [] [] [] |
+ iso_639 | [] [] [] [] [] [] [] [] [] |
+ iso_639_3 | [] [] |
+ iso_639_5 | |
+ jwhois | [] [] [] [] |
+ kbd | [] [] [] |
+ klavaro | [] [] [] [] [] |
+ ld | [] [] [] [] |
+ leafpad | [] [] [] [] [] [] [] () |
+ libc | [] [] [] [] [] |
+ libexif | [] |
+ libextractor | |
+ libgnutls | [] |
+ libgphoto2 | [] [] |
+ libgphoto2_port | [] [] |
+ libgsasl | [] [] [] [] |
+ libiconv | [] [] [] [] [] [] [] |
+ libidn | [] [] [] [] |
+ liferea | [] [] [] [] [] |
+ lilypond | [] |
+ lordsawar | |
+ lprng | [] |
+ lynx | [] [] [] [] |
+ m4 | [] [] [] [] [] |
+ mailfromd | |
+ mailutils | |
+ make | [] [] [] [] |
+ man-db | [] [] |
+ man-db-manpages | [] [] |
+ midi-instruments | [] [] [] [] [] [] [] [] [] |
+ minicom | [] [] [] |
+ mkisofs | [] [] |
+ myserver | [] |
+ nano | [] [] [] [] [] [] |
+ opcodes | [] [] [] |
+ parted | [] [] [] [] [] |
+ pies | |
+ pnmixer | [] [] |
+ popt | [] [] [] [] [] [] [] [] [] [] |
+ procps-ng | |
+ procps-ng-man | |
+ psmisc | [] [] [] [] |
+ pspp | [] [] |
+ pushover | [] |
+ pwdutils | [] |
+ pyspread | |
+ radius | [] |
+ recode | [] [] [] [] [] [] [] |
+ recutils | |
+ rpm | [] |
+ rush | [] |
+ sarg | |
+ sed | [] [] [] [] [] [] [] |
+ sharutils | |
+ shishi | |
+ skribilo | [] |
+ solfege | [] [] |
+ solfege-manual | |
+ spotmachine | |
+ sudo | [] [] [] [] |
+ sudoers | [] [] [] |
+ sysstat | [] [] [] [] |
+ tar | [] [] [] [] [] [] |
+ texinfo | [] [] [] |
+ texinfo_document | [] [] [] |
+ tigervnc | |
+ tin | |
+ tin-man | |
+ tracgoogleappsa... | [] [] [] [] |
+ trader | [] [] |
+ util-linux | [] |
+ ve | [] |
+ vice | () () |
+ vmm | |
+ vorbis-tools | [] [] |
+ wastesedge | [] |
+ wcd | |
+ wcd-man | |
+ wdiff | [] [] [] |
+ wget | [] [] [] [] |
+ wyslij-po | [] [] [] |
+ xboard | |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] [] [] |
+ +-------------------------------------------------+
+ ga gd gl gu he hi hr hu hy ia id is it ja ka kk
+ 35 2 47 4 8 2 60 71 2 6 81 11 87 57 0 3
+
+ kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl
+--------------------------------------------------+
- a2ps | [] [] |
- aegis | |
- ant-phone | |
- anubis | |
- aspell | [] [] |
- bash | |
+ a2ps | [] [] |
+ aegis | [] |
+ anubis | [] [] [] |
+ aspell | [] [] |
+ bash | [] [] |
bfd | |
- bibshelf | [] |
binutils | |
- bison | |
- bison-runtime | [] |
- bluez-pin | [] [] |
- bombono-dvd | |
- buzztard | |
- cflow | |
- clisp | |
- coreutils | [] [] |
- cpio | |
+ bison | [] |
+ bison-runtime | [] [] [] [] [] [] |
+ buzztrax | |
+ ccd2cue | |
+ ccide | [] [] |
+ cflow | [] |
+ clisp | [] |
+ coreutils | [] [] |
+ cpio | [] |
cppi | |
- cpplib | [] |
- cryptsetup | |
- dfarc | |
- dialog | [] [] |
+ cpplib | [] |
+ cryptsetup | [] |
+ datamash | [] [] |
+ denemo | |
+ dfarc | [] [] |
+ dialog | [] [] [] [] [] [] |
dico | |
- diffutils | [] |
- dink | |
- doodle | |
- e2fsprogs | [] |
- enscript | [] |
- exif | |
- fetchmail | [] |
- findutils | [] |
- flex | [] |
- freedink | |
+ diffutils | [] [] [] |
+ dink | [] |
+ direvent | [] |
+ doodle | [] |
+ dos2unix | [] [] |
+ dos2unix-man | [] |
+ e2fsprogs | [] |
+ enscript | [] |
+ exif | [] [] [] |
+ fetchmail | [] |
+ findutils | [] [] |
+ flex | [] |
+ freedink | [] [] |
+ fusionforge | |
gas | |
- gawk | [] [] |
- gcal | [] |
+ gawk | [] |
+ gcal | |
gcc | |
- gettext-examples | [] [] [] [] |
- gettext-runtime | [] [] |
- gettext-tools | [] [] |
- gip | [] |
+ gdbm | |
+ gettext-examples | [] [] [] [] [] [] |
+ gettext-runtime | [] [] [] |
+ gettext-tools | [] |
gjay | |
- gliv | [] |
- glunarclock | [] [] |
- gnubiff | |
- gnucash | [] |
- gnuedu | |
- gnulib | |
+ glunarclock | [] [] |
+ gnubiff | [] |
+ gnubik | [] [] |
+ gnucash | () () () () () () () [] |
+ gnuchess | [] [] |
+ gnulib | [] |
gnunet | |
gnunet-gtk | |
- gnutls | |
gold | |
- gpe-aerial | |
- gpe-beam | |
- gpe-bluetooth | |
- gpe-calendar | |
- gpe-clock | [] |
- gpe-conf | |
- gpe-contacts | |
- gpe-edit | |
- gpe-filemanager | |
- gpe-go | |
- gpe-login | |
- gpe-ownerinfo | [] |
- gpe-package | |
- gpe-sketchbook | |
- gpe-su | [] |
- gpe-taskmanager | [] |
- gpe-timesheet | [] |
- gpe-today | [] |
- gpe-todo | |
- gphoto2 | |
- gprof | [] |
- gpsdrive | |
- gramadoir | |
- grep | |
- grub | [] [] |
- gsasl | |
+ gphoto2 | [] |
+ gprof | [] [] |
+ gramadoir | [] |
+ grep | [] [] |
+ grub | [] [] [] |
+ gsasl | [] |
gss | |
- gst-plugins-bad | [] |
- gst-plugins-base | [] |
- gst-plugins-good | [] |
- gst-plugins-ugly | [] |
- gstreamer | [] [] [] |
- gtick | |
- gtkam | [] |
- gtkorphan | [] |
- gtkspell | [] [] [] |
- gutenprint | |
- hello | [] |
- help2man | |
- hylafax | |
- idutils | |
- indent | [] [] |
- iso_15924 | |
- iso_3166 | [] [] [] [] [] [] [] |
- iso_3166_2 | |
- iso_4217 | |
- iso_639 | [] [] [] [] |
- iso_639_3 | |
- jwhois | |
- kbd | |
- keytouch | [] |
- keytouch-editor | |
- keytouch-keyboa... | [] |
- klavaro | [] |
- latrine | |
- ld | [] |
- leafpad | [] [] |
- libc | [] [] |
- libexif | () |
- libextractor | |
- libgnutls | |
- libgpewidget | |
- libgpg-error | |
- libgphoto2 | |
- libgphoto2_port | |
- libgsasl | |
- libiconv | [] |
- libidn | |
- lifelines | |
- liferea | [] [] |
- lilypond | |
- linkdr | [] |
+ gst-plugins-bad | [] [] [] |
+ gst-plugins-base | [] [] [] |
+ gst-plugins-good | [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] |
+ gstreamer | [] [] [] |
+ gtick | [] |
+ gtkam | [] [] |
+ gtkspell | [] [] [] [] [] [] [] |
+ guix | |
+ guix-packages | |
+ gutenprint | [] |
+ hello | [] [] [] |
+ help2man | [] |
+ help2man-texi | |
+ hylafax | [] |
+ idutils | [] |
+ iso_15924 | () [] [] |
+ iso_3166 | [] [] [] () [] [] [] [] [] [] |
+ iso_3166_2 | () [] |
+ iso_4217 | () [] [] [] |
+ iso_639 | [] [] () [] [] [] [] |
+ iso_639_3 | [] () [] |
+ iso_639_5 | () |
+ jwhois | [] [] |
+ kbd | [] |
+ klavaro | [] [] |
+ ld | |
+ leafpad | [] [] [] [] [] |
+ libc | [] [] |
+ libexif | [] |
+ libextractor | [] |
+ libgnutls | [] [] |
+ libgphoto2 | [] |
+ libgphoto2_port | [] |
+ libgsasl | [] |
+ libiconv | [] [] |
+ libidn | [] |
+ liferea | [] [] [] |
+ lilypond | [] |
lordsawar | |
lprng | |
- lynx | [] |
- m4 | |
+ lynx | [] |
+ m4 | [] |
mailfromd | |
mailutils | |
- make | |
- man-db | |
- man-db-manpages | |
- minicom | |
- mkisofs | |
+ make | [] [] |
+ man-db | [] |
+ man-db-manpages | [] |
+ midi-instruments | [] [] [] [] [] [] [] |
+ minicom | [] |
+ mkisofs | [] |
myserver | |
- nano | [] [] |
- opcodes | |
- parted | |
+ nano | [] [] [] |
+ opcodes | [] |
+ parted | [] [] |
pies | |
- popt | |
- psmisc | |
- pspp | [] |
- pwdutils | |
- radius | [] |
- recode | [] [] |
- rosegarden | |
- rpm | |
- rush | |
+ pnmixer | [] |
+ popt | [] [] [] [] [] |
+ procps-ng | |
+ procps-ng-man | |
+ psmisc | [] |
+ pspp | [] [] |
+ pushover | |
+ pwdutils | [] |
+ pyspread | |
+ radius | [] |
+ recode | [] [] |
+ recutils | [] |
+ rpm | [] |
+ rush | [] |
sarg | |
- screem | |
- scrollkeeper | [] [] [] |
- sed | [] [] |
- sharutils | [] [] |
+ sed | [] [] |
+ sharutils | [] |
shishi | |
- skencil | |
- solfege | |
- solfege-manual | |
- soundtracker | |
- sp | |
- sysstat | |
- tar | [] |
- texinfo | |
+ skribilo | |
+ solfege | [] [] |
+ solfege-manual | [] |
+ spotmachine | [] |
+ sudo | [] [] [] |
+ sudoers | [] [] [] |
+ sysstat | [] [] |
+ tar | [] [] [] |
+ texinfo | [] |
+ texinfo_document | [] |
+ tigervnc | [] |
tin | |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux-ng | [] |
- vice | |
- vmm | |
- vorbis-tools | |
- wastesedge | |
- wdiff | |
- wget | [] [] |
- wyslij-po | |
- xchat | [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] |
+ tin-man | |
+ tracgoogleappsa... | [] [] [] |
+ trader | [] |
+ util-linux | [] |
+ ve | [] |
+ vice | [] |
+ vmm | [] |
+ vorbis-tools | [] |
+ wastesedge | [] |
+ wcd | [] |
+ wcd-man | [] |
+ wdiff | [] |
+ wget | [] [] |
+ wyslij-po | [] |
+ xboard | [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] |
+--------------------------------------------------+
- af am an ar as ast az be be@latin bg bn_IN bs ca
- 6 0 1 2 3 19 1 10 3 28 3 1 38
+ kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl
+ 5 15 4 6 0 13 23 3 3 3 4 11 2 42 1 125
- crh cs da de el en en_GB en_ZA eo es et eu fa
- +-------------------------------------------------+
- a2ps | [] [] [] [] [] [] [] |
- aegis | [] [] [] |
- ant-phone | [] () |
- anubis | [] [] |
- aspell | [] [] [] [] [] |
- bash | [] [] [] |
- bfd | [] |
- bibshelf | [] [] [] |
- binutils | [] |
- bison | [] [] |
- bison-runtime | [] [] [] [] |
- bluez-pin | [] [] [] [] [] [] |
- bombono-dvd | [] |
- buzztard | [] [] [] |
- cflow | [] [] |
- clisp | [] [] [] [] |
- coreutils | [] [] [] [] |
- cpio | |
- cppi | |
- cpplib | [] [] [] |
- cryptsetup | [] |
- dfarc | [] [] [] |
- dialog | [] [] [] [] [] |
- dico | |
- diffutils | [] [] [] [] [] [] |
- dink | [] [] [] |
- doodle | [] |
- e2fsprogs | [] [] [] |
- enscript | [] [] [] |
- exif | () [] [] |
- fetchmail | [] [] () [] [] [] |
- findutils | [] [] [] |
- flex | [] [] |
- freedink | [] [] [] |
- gas | [] |
- gawk | [] [] [] |
- gcal | [] |
- gcc | [] [] |
- gettext-examples | [] [] [] [] |
- gettext-runtime | [] [] [] [] |
- gettext-tools | [] [] [] |
- gip | [] [] [] [] |
- gjay | [] |
- gliv | [] [] [] |
- glunarclock | [] [] |
- gnubiff | () |
- gnucash | [] () () () () |
- gnuedu | [] [] |
- gnulib | [] [] |
- gnunet | |
- gnunet-gtk | [] |
- gnutls | [] [] |
- gold | [] |
- gpe-aerial | [] [] [] [] |
- gpe-beam | [] [] [] [] |
- gpe-bluetooth | [] [] |
- gpe-calendar | [] |
- gpe-clock | [] [] [] [] |
- gpe-conf | [] [] [] |
- gpe-contacts | [] [] [] |
- gpe-edit | [] [] |
- gpe-filemanager | [] [] [] |
- gpe-go | [] [] [] [] |
- gpe-login | [] [] |
- gpe-ownerinfo | [] [] [] [] |
- gpe-package | [] [] [] |
- gpe-sketchbook | [] [] [] [] |
- gpe-su | [] [] [] [] |
- gpe-taskmanager | [] [] [] [] |
- gpe-timesheet | [] [] [] [] |
- gpe-today | [] [] [] [] |
- gpe-todo | [] [] [] |
- gphoto2 | [] [] () [] [] [] |
- gprof | [] [] [] |
- gpsdrive | [] [] [] |
- gramadoir | [] [] [] |
- grep | [] |
- grub | [] [] |
- gsasl | [] |
- gss | |
- gst-plugins-bad | [] [] [] [] [] |
- gst-plugins-base | [] [] [] [] [] |
- gst-plugins-good | [] [] [] [] [] [] |
- gst-plugins-ugly | [] [] [] [] [] [] |
- gstreamer | [] [] [] [] [] |
- gtick | [] () [] |
- gtkam | [] [] () [] [] |
- gtkorphan | [] [] [] [] |
- gtkspell | [] [] [] [] [] [] [] |
- gutenprint | [] [] [] |
- hello | [] [] [] [] |
- help2man | [] |
- hylafax | [] [] |
- idutils | [] [] |
- indent | [] [] [] [] [] [] [] |
- iso_15924 | [] () [] [] |
- iso_3166 | [] [] [] [] () [] [] [] () |
- iso_3166_2 | () |
- iso_4217 | [] [] [] () [] [] |
- iso_639 | [] [] [] [] () [] [] |
- iso_639_3 | [] |
- jwhois | [] |
- kbd | [] [] [] [] [] |
- keytouch | [] [] |
- keytouch-editor | [] [] |
- keytouch-keyboa... | [] |
- klavaro | [] [] [] [] |
- latrine | [] () |
- ld | [] [] |
- leafpad | [] [] [] [] [] [] |
- libc | [] [] [] [] |
- libexif | [] [] () |
- libextractor | |
- libgnutls | [] |
- libgpewidget | [] [] |
- libgpg-error | [] [] |
- libgphoto2 | [] () |
- libgphoto2_port | [] () [] |
- libgsasl | |
- libiconv | [] [] [] [] [] |
- libidn | [] [] [] |
- lifelines | [] () |
- liferea | [] [] [] [] [] |
- lilypond | [] [] [] |
- linkdr | [] [] [] |
- lordsawar | [] |
- lprng | |
- lynx | [] [] [] [] |
- m4 | [] [] [] [] |
- mailfromd | |
- mailutils | [] |
- make | [] [] [] |
- man-db | |
- man-db-manpages | |
- minicom | [] [] [] [] |
- mkisofs | |
- myserver | |
- nano | [] [] [] |
- opcodes | [] [] |
- parted | [] [] |
- pies | |
- popt | [] [] [] [] [] |
- psmisc | [] [] [] |
- pspp | [] |
- pwdutils | [] |
- radius | [] |
- recode | [] [] [] [] [] [] |
- rosegarden | () () () |
- rpm | [] [] [] |
- rush | |
- sarg | |
- screem | |
- scrollkeeper | [] [] [] [] [] |
- sed | [] [] [] [] [] [] |
- sharutils | [] [] [] [] |
- shishi | |
- skencil | [] () [] |
- solfege | [] [] [] |
- solfege-manual | [] [] |
- soundtracker | [] [] [] |
- sp | [] |
- sysstat | [] [] [] |
- tar | [] [] [] [] |
- texinfo | [] [] [] |
- tin | [] [] |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux-ng | [] [] [] [] |
- vice | () () |
- vmm | [] |
- vorbis-tools | [] [] |
- wastesedge | [] |
- wdiff | [] [] |
- wget | [] [] [] |
- wyslij-po | |
- xchat | [] [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] [] [] [] |
- +-------------------------------------------------+
- crh cs da de el en en_GB en_ZA eo es et eu fa
- 5 64 105 117 18 1 8 0 28 89 18 19 0
+ nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr
+ +------------------------------------------------+
+ a2ps | [] [] [] [] [] [] [] |
+ aegis | [] [] |
+ anubis | [] [] [] |
+ aspell | [] [] [] [] [] [] [] |
+ bash | [] [] [] [] [] [] |
+ bfd | [] [] |
+ binutils | [] [] |
+ bison | [] [] [] |
+ bison-runtime | [] [] [] [] [] [] [] [] |
+ buzztrax | [] |
+ ccd2cue | [] [] |
+ ccide | [] [] [] |
+ cflow | [] [] [] |
+ clisp | [] |
+ coreutils | [] [] [] [] |
+ cpio | [] [] [] |
+ cppi | [] [] [] |
+ cpplib | [] [] [] |
+ cryptsetup | [] [] [] |
+ datamash | [] [] |
+ denemo | |
+ dfarc | [] [] [] |
+ dialog | [] [] [] [] [] [] [] |
+ dico | [] |
+ diffutils | [] [] [] |
+ dink | |
+ direvent | [] [] [] |
+ doodle | [] [] |
+ dos2unix | [] [] [] [] |
+ dos2unix-man | [] [] |
+ e2fsprogs | [] |
+ enscript | [] [] [] [] [] [] |
+ exif | [] [] [] [] [] [] |
+ fetchmail | [] [] [] |
+ findutils | [] [] [] [] [] [] |
+ flex | [] [] [] [] [] |
+ freedink | [] [] [] [] [] |
+ fusionforge | |
+ gas | |
+ gawk | [] |
+ gcal | |
+ gcc | |
+ gdbm | [] [] [] |
+ gettext-examples | [] [] [] [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] [] [] [] [] |
+ gettext-tools | [] [] [] [] [] [] [] |
+ gjay | [] |
+ glunarclock | [] [] [] [] [] [] |
+ gnubiff | [] |
+ gnubik | [] [] [] [] |
+ gnucash | () () () () () [] |
+ gnuchess | [] [] |
+ gnulib | [] [] [] [] [] |
+ gnunet | |
+ gnunet-gtk | |
+ gold | |
+ gphoto2 | [] [] [] [] [] |
+ gprof | [] [] [] [] |
+ gramadoir | [] [] |
+ grep | [] [] [] [] [] [] |
+ grub | [] [] [] [] [] |
+ gsasl | [] [] [] |
+ gss | [] [] [] [] |
+ gst-plugins-bad | [] [] [] [] [] |
+ gst-plugins-base | [] [] [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] [] [] |
+ gstreamer | [] [] [] [] [] [] [] |
+ gtick | [] [] [] [] [] |
+ gtkam | [] [] [] [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] [] [] |
+ guix | |
+ guix-packages | |
+ gutenprint | [] [] |
+ hello | [] [] [] [] [] [] |
+ help2man | [] [] [] [] |
+ help2man-texi | [] |
+ hylafax | |
+ idutils | [] [] [] |
+ iso_15924 | [] () [] [] [] [] |
+ iso_3166 | [] [] [] [] () [] [] [] [] [] [] [] [] |
+ iso_3166_2 | [] () [] |
+ iso_4217 | [] [] () [] [] [] [] [] |
+ iso_639 | [] [] [] () [] [] [] [] [] [] |
+ iso_639_3 | [] () |
+ iso_639_5 | () [] |
+ jwhois | [] [] [] [] |
+ kbd | [] [] |
+ klavaro | [] [] [] [] [] |
+ ld | |
+ leafpad | [] [] [] [] [] [] [] [] |
+ libc | [] [] [] |
+ libexif | [] () [] |
+ libextractor | [] |
+ libgnutls | [] |
+ libgphoto2 | [] |
+ libgphoto2_port | [] [] [] [] [] |
+ libgsasl | [] [] [] [] |
+ libiconv | [] [] [] [] [] |
+ libidn | [] [] [] |
+ liferea | [] [] [] [] () [] [] |
+ lilypond | |
+ lordsawar | |
+ lprng | [] |
+ lynx | [] [] |
+ m4 | [] [] [] [] [] |
+ mailfromd | [] |
+ mailutils | [] |
+ make | [] [] [] |
+ man-db | [] [] [] |
+ man-db-manpages | [] [] [] |
+ midi-instruments | [] [] [] [] [] [] [] [] |
+ minicom | [] [] [] [] |
+ mkisofs | [] [] [] |
+ myserver | [] [] |
+ nano | [] [] [] [] [] [] |
+ opcodes | |
+ parted | [] [] [] [] [] [] |
+ pies | [] |
+ pnmixer | [] |
+ popt | [] [] [] [] [] [] |
+ procps-ng | [] |
+ procps-ng-man | [] |
+ psmisc | [] [] [] [] |
+ pspp | [] [] |
+ pushover | |
+ pwdutils | [] |
+ pyspread | [] [] |
+ radius | [] [] |
+ recode | [] [] [] [] [] [] [] [] |
+ recutils | [] [] |
+ rpm | [] |
+ rush | [] [] [] |
+ sarg | [] [] |
+ sed | [] [] [] [] [] [] [] [] |
+ sharutils | [] [] [] |
+ shishi | [] [] |
+ skribilo | [] |
+ solfege | [] [] [] |
+ solfege-manual | [] [] |
+ spotmachine | [] [] |
+ sudo | [] [] [] [] [] [] |
+ sudoers | [] [] [] [] |
+ sysstat | [] [] [] [] [] |
+ tar | [] [] [] [] [] |
+ texinfo | [] [] [] |
+ texinfo_document | [] [] |
+ tigervnc | [] [] [] |
+ tin | [] |
+ tin-man | |
+ tracgoogleappsa... | [] [] [] [] |
+ trader | [] [] |
+ util-linux | [] [] |
+ ve | [] [] [] |
+ vice | |
+ vmm | |
+ vorbis-tools | [] [] [] |
+ wastesedge | |
+ wcd | |
+ wcd-man | |
+ wdiff | [] [] [] [] [] |
+ wget | [] [] [] [] [] |
+ wyslij-po | [] [] [] [] |
+ xboard | [] [] [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] |
+ +------------------------------------------------+
+ nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr
+ 7 3 6 114 1 12 88 32 82 3 40 45 7 101
- fi fr ga gl gu he hi hr hu hy id is it ja ka kn
- +----------------------------------------------------+
- a2ps | [] [] [] [] |
- aegis | [] [] |
- ant-phone | [] [] |
- anubis | [] [] [] [] |
- aspell | [] [] [] [] |
- bash | [] [] [] [] |
- bfd | [] [] [] |
- bibshelf | [] [] [] [] [] |
- binutils | [] [] [] |
- bison | [] [] [] [] |
- bison-runtime | [] [] [] [] [] [] |
- bluez-pin | [] [] [] [] [] [] [] [] |
- bombono-dvd | [] |
- buzztard | [] |
- cflow | [] [] [] |
- clisp | [] |
- coreutils | [] [] [] [] [] |
- cpio | [] [] [] [] |
- cppi | [] [] |
- cpplib | [] [] [] |
- cryptsetup | [] [] [] |
- dfarc | [] [] [] |
- dialog | [] [] [] [] [] [] [] |
- dico | |
- diffutils | [] [] [] [] [] [] [] [] [] |
- dink | [] |
- doodle | [] [] |
- e2fsprogs | [] [] |
- enscript | [] [] [] [] |
- exif | [] [] [] [] [] [] |
- fetchmail | [] [] [] [] |
- findutils | [] [] [] [] [] [] |
- flex | [] [] [] |
- freedink | [] [] [] |
- gas | [] [] |
- gawk | [] [] [] [] () [] |
- gcal | [] |
- gcc | [] |
- gettext-examples | [] [] [] [] [] [] [] |
- gettext-runtime | [] [] [] [] [] [] |
- gettext-tools | [] [] [] [] |
- gip | [] [] [] [] [] [] |
- gjay | [] |
- gliv | [] () |
- glunarclock | [] [] [] [] |
- gnubiff | () [] () |
- gnucash | () () () () () [] |
- gnuedu | [] [] |
- gnulib | [] [] [] [] [] [] |
- gnunet | |
- gnunet-gtk | [] |
- gnutls | [] [] |
- gold | [] [] |
- gpe-aerial | [] [] [] |
- gpe-beam | [] [] [] [] |
- gpe-bluetooth | [] [] [] [] |
- gpe-calendar | [] [] |
- gpe-clock | [] [] [] [] [] |
- gpe-conf | [] [] [] [] |
- gpe-contacts | [] [] [] [] |
- gpe-edit | [] [] [] |
- gpe-filemanager | [] [] [] [] |
- gpe-go | [] [] [] [] [] |
- gpe-login | [] [] [] |
- gpe-ownerinfo | [] [] [] [] [] |
- gpe-package | [] [] [] |
- gpe-sketchbook | [] [] [] [] |
- gpe-su | [] [] [] [] [] [] |
- gpe-taskmanager | [] [] [] [] [] |
- gpe-timesheet | [] [] [] [] [] |
- gpe-today | [] [] [] [] [] [] [] |
- gpe-todo | [] [] [] |
- gphoto2 | [] [] [] [] [] [] |
- gprof | [] [] [] [] |
- gpsdrive | [] [] [] |
- gramadoir | [] [] [] |
- grep | [] [] |
- grub | [] [] [] [] |
- gsasl | [] [] [] [] [] |
- gss | [] [] [] [] [] |
- gst-plugins-bad | [] [] [] [] [] [] |
- gst-plugins-base | [] [] [] [] [] [] |
- gst-plugins-good | [] [] [] [] [] [] |
- gst-plugins-ugly | [] [] [] [] [] [] |
- gstreamer | [] [] [] [] [] |
- gtick | [] [] [] [] [] |
- gtkam | [] [] [] [] [] |
- gtkorphan | [] [] [] |
- gtkspell | [] [] [] [] [] [] [] [] [] |
- gutenprint | [] [] [] [] |
- hello | [] [] [] |
- help2man | [] [] |
- hylafax | [] |
- idutils | [] [] [] [] [] [] |
- indent | [] [] [] [] [] [] [] [] |
- iso_15924 | [] () [] [] |
- iso_3166 | [] () [] [] [] [] [] [] [] [] [] [] |
- iso_3166_2 | () [] [] [] |
- iso_4217 | [] () [] [] [] [] |
- iso_639 | [] () [] [] [] [] [] [] [] |
- iso_639_3 | () [] [] |
- jwhois | [] [] [] [] [] |
- kbd | [] [] |
- keytouch | [] [] [] [] [] [] |
- keytouch-editor | [] [] [] [] [] |
- keytouch-keyboa... | [] [] [] [] [] |
- klavaro | [] [] |
- latrine | [] [] [] |
- ld | [] [] [] [] |
- leafpad | [] [] [] [] [] [] [] () |
- libc | [] [] [] [] [] |
- libexif | [] |
- libextractor | |
- libgnutls | [] [] |
- libgpewidget | [] [] [] [] |
- libgpg-error | [] [] |
- libgphoto2 | [] [] [] |
- libgphoto2_port | [] [] [] |
- libgsasl | [] [] [] [] [] |
- libiconv | [] [] [] [] [] [] |
- libidn | [] [] [] [] |
- lifelines | () |
- liferea | [] [] [] [] |
- lilypond | [] [] |
- linkdr | [] [] [] [] [] |
- lordsawar | |
- lprng | [] |
- lynx | [] [] [] [] [] |
- m4 | [] [] [] [] [] [] |
- mailfromd | |
- mailutils | [] [] |
- make | [] [] [] [] [] [] [] [] [] |
- man-db | [] [] |
- man-db-manpages | [] |
- minicom | [] [] [] [] [] |
- mkisofs | [] [] [] [] |
- myserver | |
- nano | [] [] [] [] [] [] |
- opcodes | [] [] [] [] |
- parted | [] [] [] [] |
- pies | |
- popt | [] [] [] [] [] [] [] [] [] |
- psmisc | [] [] [] |
- pspp | |
- pwdutils | [] [] |
- radius | [] [] |
- recode | [] [] [] [] [] [] [] [] |
- rosegarden | () () () () () |
- rpm | [] [] |
- rush | |
- sarg | [] |
- screem | [] [] |
- scrollkeeper | [] [] [] [] |
- sed | [] [] [] [] [] [] [] [] |
- sharutils | [] [] [] [] [] [] [] |
- shishi | [] |
- skencil | [] |
- solfege | [] [] [] [] |
- solfege-manual | [] [] |
- soundtracker | [] [] |
- sp | [] () |
- sysstat | [] [] [] [] [] |
- tar | [] [] [] [] [] [] [] |
- texinfo | [] [] [] [] |
- tin | [] |
- unicode-han-tra... | |
- unicode-transla... | [] [] |
- util-linux-ng | [] [] [] [] [] [] |
- vice | () () () |
- vmm | [] |
- vorbis-tools | [] |
- wastesedge | () () |
- wdiff | [] |
- wget | [] [] [] [] [] [] [] [] |
- wyslij-po | [] [] [] |
- xchat | [] [] [] [] [] [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] [] [] |
- +----------------------------------------------------+
- fi fr ga gl gu he hi hr hu hy id is it ja ka kn
- 105 121 53 20 4 8 3 5 53 2 120 5 84 67 0 4
+ sv sw ta te tg th tr uk ur vi wa wo zh_CN
+ +----------------------------------------------+
+ a2ps | [] [] [] [] [] |
+ aegis | [] |
+ anubis | [] [] [] [] |
+ aspell | [] [] [] [] [] |
+ bash | [] [] [] [] |
+ bfd | [] [] [] |
+ binutils | [] [] [] |
+ bison | [] [] [] [] |
+ bison-runtime | [] [] [] [] [] [] |
+ buzztrax | [] [] [] |
+ ccd2cue | [] [] [] |
+ ccide | [] [] [] [] |
+ cflow | [] [] [] [] |
+ clisp | |
+ coreutils | [] [] [] |
+ cpio | [] [] [] [] [] |
+ cppi | [] [] [] [] |
+ cpplib | [] [] [] [] [] |
+ cryptsetup | [] [] [] |
+ datamash | [] [] [] |
+ denemo | [] |
+ dfarc | [] [] |
+ dialog | [] [] [] [] [] [] |
+ dico | [] |
+ diffutils | [] [] [] [] [] |
+ dink | [] |
+ direvent | [] [] |
+ doodle | [] [] |
+ dos2unix | [] [] [] [] |
+ dos2unix-man | [] [] [] |
+ e2fsprogs | [] [] [] [] |
+ enscript | [] [] [] [] |
+ exif | [] [] [] [] [] |
+ fetchmail | [] [] [] [] |
+ findutils | [] [] [] [] [] |
+ flex | [] [] [] [] |
+ freedink | [] [] [] |
+ fusionforge | |
+ gas | [] |
+ gawk | [] [] [] |
+ gcal | [] [] [] |
+ gcc | [] |
+ gdbm | [] [] |
+ gettext-examples | [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] |
+ gettext-tools | [] [] [] [] [] |
+ gjay | [] [] [] |
+ glunarclock | [] [] [] [] |
+ gnubiff | [] [] |
+ gnubik | [] [] [] [] |
+ gnucash | () () () () [] |
+ gnuchess | [] [] [] |
+ gnulib | [] [] [] [] |
+ gnunet | |
+ gnunet-gtk | |
+ gold | [] [] |
+ gphoto2 | [] [] [] [] |
+ gprof | [] [] [] [] |
+ gramadoir | [] [] [] |
+ grep | [] [] [] [] [] |
+ grub | [] [] [] [] |
+ gsasl | [] [] [] [] |
+ gss | [] [] [] |
+ gst-plugins-bad | [] [] [] [] [] |
+ gst-plugins-base | [] [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] |
+ gstreamer | [] [] [] [] [] |
+ gtick | [] [] [] |
+ gtkam | [] [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] |
+ guix | |
+ guix-packages | |
+ gutenprint | [] [] [] [] |
+ hello | [] [] [] [] [] [] |
+ help2man | [] [] [] |
+ help2man-texi | [] |
+ hylafax | [] |
+ idutils | [] [] [] |
+ iso_15924 | [] () [] [] () [] |
+ iso_3166 | [] [] () [] [] () [] [] |
+ iso_3166_2 | () [] [] () [] |
+ iso_4217 | [] () [] [] () [] |
+ iso_639 | [] [] [] () [] [] () [] [] |
+ iso_639_3 | [] () [] [] () |
+ iso_639_5 | () [] () |
+ jwhois | [] [] [] [] |
+ kbd | [] [] [] [] |
+ klavaro | [] [] [] [] [] [] |
+ ld | [] [] [] [] [] |
+ leafpad | [] [] [] [] [] [] |
+ libc | [] [] [] [] [] |
+ libexif | [] [] () |
+ libextractor | [] [] |
+ libgnutls | [] [] [] [] |
+ libgphoto2 | [] [] [] |
+ libgphoto2_port | [] [] [] [] |
+ libgsasl | [] [] [] [] |
+ libiconv | [] [] [] [] [] |
+ libidn | () [] [] [] |
+ liferea | [] [] [] [] [] |
+ lilypond | [] |
+ lordsawar | |
+ lprng | [] |
+ lynx | [] [] [] [] |
+ m4 | [] [] [] |
+ mailfromd | [] [] |
+ mailutils | [] |
+ make | [] [] [] [] |
+ man-db | [] [] [] |
+ man-db-manpages | [] [] |
+ midi-instruments | [] [] [] [] [] [] |
+ minicom | [] [] |
+ mkisofs | [] [] [] |
+ myserver | [] |
+ nano | [] [] [] [] |
+ opcodes | [] [] [] |
+ parted | [] [] [] [] [] |
+ pies | [] [] |
+ pnmixer | [] [] [] |
+ popt | [] [] [] [] [] [] [] |
+ procps-ng | [] [] |
+ procps-ng-man | [] |
+ psmisc | [] [] [] [] |
+ pspp | [] [] [] |
+ pushover | [] |
+ pwdutils | [] [] |
+ pyspread | [] |
+ radius | [] [] |
+ recode | [] [] [] [] |
+ recutils | [] [] [] |
+ rpm | [] [] [] [] |
+ rush | [] [] |
+ sarg | |
+ sed | [] [] [] [] [] |
+ sharutils | [] [] [] [] |
+ shishi | [] [] |
+ skribilo | [] [] |
+ solfege | [] [] [] [] |
+ solfege-manual | [] |
+ spotmachine | [] [] [] |
+ sudo | [] [] [] [] [] |
+ sudoers | [] [] [] [] |
+ sysstat | [] [] [] [] [] |
+ tar | [] [] [] [] [] |
+ texinfo | [] [] [] |
+ texinfo_document | [] |
+ tigervnc | [] [] [] |
+ tin | [] |
+ tin-man | |
+ tracgoogleappsa... | [] [] [] [] [] |
+ trader | [] |
+ util-linux | [] [] [] [] |
+ ve | [] [] [] [] |
+ vice | () () |
+ vmm | |
+ vorbis-tools | [] [] |
+ wastesedge | |
+ wcd | [] [] [] |
+ wcd-man | [] |
+ wdiff | [] [] [] [] |
+ wget | [] [] [] |
+ wyslij-po | [] [] |
+ xboard | [] [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] |
+ +----------------------------------------------+
+ sv sw ta te tg th tr uk ur vi wa wo zh_CN
+ 106 1 4 3 0 13 51 115 1 125 7 1 100
- ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne
- +-----------------------------------------------+
- a2ps | [] |
- aegis | |
- ant-phone | |
- anubis | [] [] |
- aspell | [] |
- bash | |
- bfd | |
- bibshelf | [] [] |
- binutils | |
- bison | [] |
- bison-runtime | [] [] [] [] [] |
- bluez-pin | [] [] [] [] [] |
- bombono-dvd | |
- buzztard | |
- cflow | |
- clisp | |
- coreutils | [] |
- cpio | |
- cppi | |
- cpplib | |
- cryptsetup | |
- dfarc | [] |
- dialog | [] [] [] [] [] |
- dico | |
- diffutils | [] [] |
- dink | |
- doodle | |
- e2fsprogs | |
- enscript | |
- exif | [] |
- fetchmail | |
- findutils | |
- flex | |
- freedink | [] |
- gas | |
- gawk | |
- gcal | |
- gcc | |
- gettext-examples | [] [] [] [] |
- gettext-runtime | [] |
- gettext-tools | [] |
- gip | [] [] |
- gjay | |
- gliv | |
- glunarclock | [] |
- gnubiff | |
- gnucash | () () () () |
- gnuedu | |
- gnulib | |
- gnunet | |
- gnunet-gtk | |
- gnutls | [] |
- gold | |
- gpe-aerial | [] |
- gpe-beam | [] |
- gpe-bluetooth | [] [] |
- gpe-calendar | [] |
- gpe-clock | [] [] [] [] [] |
- gpe-conf | [] [] |
- gpe-contacts | [] [] |
- gpe-edit | [] |
- gpe-filemanager | [] [] |
- gpe-go | [] [] [] |
- gpe-login | [] |
- gpe-ownerinfo | [] [] |
- gpe-package | [] [] |
- gpe-sketchbook | [] [] |
- gpe-su | [] [] [] [] [] [] |
- gpe-taskmanager | [] [] [] [] [] [] |
- gpe-timesheet | [] [] |
- gpe-today | [] [] [] [] |
- gpe-todo | [] [] |
- gphoto2 | |
- gprof | [] |
- gpsdrive | |
- gramadoir | |
- grep | |
- grub | |
- gsasl | |
- gss | |
- gst-plugins-bad | [] [] [] [] |
- gst-plugins-base | [] [] |
- gst-plugins-good | [] [] |
- gst-plugins-ugly | [] [] [] [] [] |
- gstreamer | |
- gtick | |
- gtkam | [] |
- gtkorphan | [] [] |
- gtkspell | [] [] [] [] [] [] [] |
- gutenprint | |
- hello | [] [] [] |
- help2man | |
- hylafax | |
- idutils | |
- indent | |
- iso_15924 | [] [] |
- iso_3166 | [] [] () [] [] [] [] [] |
- iso_3166_2 | |
- iso_4217 | [] [] |
- iso_639 | [] [] |
- iso_639_3 | [] |
- jwhois | [] |
- kbd | |
- keytouch | [] |
- keytouch-editor | [] |
- keytouch-keyboa... | [] |
- klavaro | [] |
- latrine | [] |
- ld | |
- leafpad | [] [] [] |
- libc | [] |
- libexif | |
- libextractor | |
- libgnutls | [] |
- libgpewidget | [] [] |
- libgpg-error | |
- libgphoto2 | |
- libgphoto2_port | |
- libgsasl | |
- libiconv | |
- libidn | |
- lifelines | |
- liferea | |
- lilypond | |
- linkdr | |
- lordsawar | |
- lprng | |
- lynx | |
- m4 | |
- mailfromd | |
- mailutils | |
- make | [] |
- man-db | |
- man-db-manpages | |
- minicom | [] |
- mkisofs | |
- myserver | |
- nano | [] [] |
- opcodes | |
- parted | |
- pies | |
- popt | [] [] [] |
- psmisc | |
- pspp | |
- pwdutils | |
- radius | |
- recode | |
- rosegarden | |
- rpm | |
- rush | |
- sarg | |
- screem | |
- scrollkeeper | [] [] |
- sed | |
- sharutils | |
- shishi | |
- skencil | |
- solfege | [] |
- solfege-manual | |
- soundtracker | |
- sp | |
- sysstat | [] |
- tar | [] |
- texinfo | [] |
- tin | |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux-ng | |
- vice | |
- vmm | |
- vorbis-tools | |
- wastesedge | |
- wdiff | |
- wget | [] |
- wyslij-po | |
- xchat | [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] |
- +-----------------------------------------------+
- ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne
- 20 5 10 1 13 48 4 2 2 4 24 10 20 3 1
-
- nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr
- +---------------------------------------------------+
- a2ps | [] [] [] [] [] [] [] [] |
- aegis | [] [] [] |
- ant-phone | [] [] |
- anubis | [] [] [] |
- aspell | [] [] [] [] [] |
- bash | [] [] |
- bfd | [] |
- bibshelf | [] [] |
- binutils | [] [] |
- bison | [] [] [] |
- bison-runtime | [] [] [] [] [] [] [] |
- bluez-pin | [] [] [] [] [] [] [] [] |
- bombono-dvd | [] () |
- buzztard | [] [] |
- cflow | [] |
- clisp | [] [] |
- coreutils | [] [] [] [] [] [] |
- cpio | [] [] [] |
- cppi | [] |
- cpplib | [] |
- cryptsetup | [] |
- dfarc | [] |
- dialog | [] [] [] [] |
- dico | [] |
- diffutils | [] [] [] [] [] [] |
- dink | () |
- doodle | [] [] |
- e2fsprogs | [] [] |
- enscript | [] [] [] [] [] |
- exif | [] [] [] () [] |
- fetchmail | [] [] [] [] |
- findutils | [] [] [] [] [] |
- flex | [] [] [] [] [] |
- freedink | [] [] |
- gas | |
- gawk | [] [] [] [] |
- gcal | |
- gcc | [] |
- gettext-examples | [] [] [] [] [] [] [] [] |
- gettext-runtime | [] [] [] [] [] [] [] [] [] |
- gettext-tools | [] [] [] [] [] [] |
- gip | [] [] [] [] [] |
- gjay | |
- gliv | [] [] [] [] [] [] |
- glunarclock | [] [] [] [] [] |
- gnubiff | [] () |
- gnucash | [] () () () |
- gnuedu | [] |
- gnulib | [] [] [] [] |
- gnunet | |
- gnunet-gtk | |
- gnutls | [] [] |
- gold | |
- gpe-aerial | [] [] [] [] [] [] [] |
- gpe-beam | [] [] [] [] [] [] [] |
- gpe-bluetooth | [] [] |
- gpe-calendar | [] [] [] [] |
- gpe-clock | [] [] [] [] [] [] [] [] |
- gpe-conf | [] [] [] [] [] [] [] |
- gpe-contacts | [] [] [] [] [] |
- gpe-edit | [] [] [] |
- gpe-filemanager | [] [] [] |
- gpe-go | [] [] [] [] [] [] [] [] |
- gpe-login | [] [] |
- gpe-ownerinfo | [] [] [] [] [] [] [] [] |
- gpe-package | [] [] |
- gpe-sketchbook | [] [] [] [] [] [] [] |
- gpe-su | [] [] [] [] [] [] [] [] |
- gpe-taskmanager | [] [] [] [] [] [] [] [] |
- gpe-timesheet | [] [] [] [] [] [] [] [] |
- gpe-today | [] [] [] [] [] [] [] [] |
- gpe-todo | [] [] [] [] [] |
- gphoto2 | [] [] [] [] [] [] [] [] |
- gprof | [] [] [] |
- gpsdrive | [] [] |
- gramadoir | [] [] |
- grep | [] [] [] [] |
- grub | [] [] [] |
- gsasl | [] [] [] [] |
- gss | [] [] [] |
- gst-plugins-bad | [] [] [] [] [] [] |
- gst-plugins-base | [] [] [] [] [] |
- gst-plugins-good | [] [] [] [] [] |
- gst-plugins-ugly | [] [] [] [] [] [] |
- gstreamer | [] [] [] [] [] |
- gtick | [] [] [] |
- gtkam | [] [] [] [] [] [] |
- gtkorphan | [] |
- gtkspell | [] [] [] [] [] [] [] [] [] [] |
- gutenprint | [] [] |
- hello | [] [] [] [] |
- help2man | [] [] |
- hylafax | [] |
- idutils | [] [] [] [] [] |
- indent | [] [] [] [] [] [] [] |
- iso_15924 | [] [] [] [] |
- iso_3166 | [] [] [] [] [] () [] [] [] [] [] [] [] [] |
- iso_3166_2 | [] [] [] |
- iso_4217 | [] [] [] [] [] [] [] [] |
- iso_639 | [] [] [] [] [] [] [] [] [] |
- iso_639_3 | [] [] |
- jwhois | [] [] [] [] |
- kbd | [] [] [] |
- keytouch | [] [] [] |
- keytouch-editor | [] [] [] |
- keytouch-keyboa... | [] [] [] |
- klavaro | [] [] |
- latrine | [] [] |
- ld | |
- leafpad | [] [] [] [] [] [] [] [] [] |
- libc | [] [] [] [] |
- libexif | [] [] () [] |
- libextractor | |
- libgnutls | [] [] |
- libgpewidget | [] [] [] |
- libgpg-error | [] [] |
- libgphoto2 | [] [] |
- libgphoto2_port | [] [] [] [] [] |
- libgsasl | [] [] [] [] [] |
- libiconv | [] [] [] [] [] |
- libidn | [] [] |
- lifelines | [] [] |
- liferea | [] [] [] [] [] () () [] |
- lilypond | [] |
- linkdr | [] [] [] |
- lordsawar | |
- lprng | [] |
- lynx | [] [] [] |
- m4 | [] [] [] [] [] |
- mailfromd | [] |
- mailutils | [] |
- make | [] [] [] [] |
- man-db | [] [] [] |
- man-db-manpages | [] [] [] |
- minicom | [] [] [] [] |
- mkisofs | [] [] [] |
- myserver | |
- nano | [] [] [] [] |
- opcodes | [] [] |
- parted | [] [] [] [] |
- pies | [] |
- popt | [] [] [] [] |
- psmisc | [] [] [] |
- pspp | [] [] |
- pwdutils | [] |
- radius | [] [] [] |
- recode | [] [] [] [] [] [] [] [] |
- rosegarden | () () |
- rpm | [] [] [] |
- rush | [] [] |
- sarg | |
- screem | |
- scrollkeeper | [] [] [] [] [] [] [] [] |
- sed | [] [] [] [] [] [] [] [] [] |
- sharutils | [] [] [] [] |
- shishi | [] |
- skencil | [] [] |
- solfege | [] [] [] [] |
- solfege-manual | [] [] [] |
- soundtracker | [] |
- sp | |
- sysstat | [] [] [] [] |
- tar | [] [] [] [] |
- texinfo | [] [] [] [] |
- tin | [] |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux-ng | [] [] [] [] [] |
- vice | [] |
- vmm | [] |
- vorbis-tools | [] [] |
- wastesedge | [] |
- wdiff | [] [] |
- wget | [] [] [] [] [] [] [] |
- wyslij-po | [] [] [] |
- xchat | [] [] [] [] [] [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] |
- +---------------------------------------------------+
- nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr
- 135 10 4 7 105 1 29 62 47 91 3 54 46 9 37
-
- sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW
- +---------------------------------------------------+
- a2ps | [] [] [] [] [] | 27
- aegis | [] | 9
- ant-phone | [] [] [] [] | 9
- anubis | [] [] [] [] | 15
- aspell | [] [] [] | 20
- bash | [] [] [] | 12
- bfd | [] | 6
- bibshelf | [] [] [] | 16
- binutils | [] [] | 8
- bison | [] [] | 12
- bison-runtime | [] [] [] [] [] [] | 29
- bluez-pin | [] [] [] [] [] [] [] [] | 37
- bombono-dvd | [] | 4
- buzztard | [] | 7
- cflow | [] [] [] | 9
- clisp | | 10
- coreutils | [] [] [] [] | 22
- cpio | [] [] [] [] [] [] | 13
- cppi | [] [] | 5
- cpplib | [] [] [] [] [] [] | 14
- cryptsetup | [] [] | 7
- dfarc | [] | 9
- dialog | [] [] [] [] [] [] [] | 30
- dico | [] | 2
- diffutils | [] [] [] [] [] [] | 30
- dink | | 4
- doodle | [] [] | 7
- e2fsprogs | [] [] [] | 11
- enscript | [] [] [] [] | 17
- exif | [] [] [] | 16
- fetchmail | [] [] [] | 17
- findutils | [] [] [] [] [] | 20
- flex | [] [] [] [] | 15
- freedink | [] | 10
- gas | [] | 4
- gawk | [] [] [] [] | 18
- gcal | [] [] | 5
- gcc | [] [] [] | 7
- gettext-examples | [] [] [] [] [] [] [] | 34
- gettext-runtime | [] [] [] [] [] [] [] | 29
- gettext-tools | [] [] [] [] [] [] | 22
- gip | [] [] [] [] | 22
- gjay | [] | 3
- gliv | [] [] [] | 14
- glunarclock | [] [] [] [] [] | 19
- gnubiff | [] [] | 4
- gnucash | () [] () [] () | 10
- gnuedu | [] [] | 7
- gnulib | [] [] [] [] | 16
- gnunet | [] | 1
- gnunet-gtk | [] [] [] | 5
- gnutls | [] [] [] | 10
- gold | [] | 4
- gpe-aerial | [] [] [] | 18
- gpe-beam | [] [] [] | 19
- gpe-bluetooth | [] [] [] | 13
- gpe-calendar | [] [] [] [] | 12
- gpe-clock | [] [] [] [] [] | 28
- gpe-conf | [] [] [] [] | 20
- gpe-contacts | [] [] [] | 17
- gpe-edit | [] [] [] | 12
- gpe-filemanager | [] [] [] [] | 16
- gpe-go | [] [] [] [] [] | 25
- gpe-login | [] [] [] | 11
- gpe-ownerinfo | [] [] [] [] [] | 25
- gpe-package | [] [] [] | 13
- gpe-sketchbook | [] [] [] | 20
- gpe-su | [] [] [] [] [] | 30
- gpe-taskmanager | [] [] [] [] [] | 29
- gpe-timesheet | [] [] [] [] [] | 25
- gpe-today | [] [] [] [] [] [] | 30
- gpe-todo | [] [] [] [] | 17
- gphoto2 | [] [] [] [] [] | 24
- gprof | [] [] [] | 15
- gpsdrive | [] [] [] | 11
- gramadoir | [] [] [] | 11
- grep | [] [] [] | 10
- grub | [] [] [] | 14
- gsasl | [] [] [] [] | 14
- gss | [] [] [] | 11
- gst-plugins-bad | [] [] [] [] | 26
- gst-plugins-base | [] [] [] [] [] | 24
- gst-plugins-good | [] [] [] [] | 24
- gst-plugins-ugly | [] [] [] [] [] | 29
- gstreamer | [] [] [] [] | 22
- gtick | [] [] [] | 13
- gtkam | [] [] [] | 20
- gtkorphan | [] [] [] | 14
- gtkspell | [] [] [] [] [] [] [] [] [] | 45
- gutenprint | [] | 10
- hello | [] [] [] [] [] [] | 21
- help2man | [] [] | 7
- hylafax | [] | 5
- idutils | [] [] [] [] | 17
- indent | [] [] [] [] [] [] | 30
- iso_15924 | () [] () [] [] | 16
- iso_3166 | [] [] () [] [] () [] [] [] () | 53
- iso_3166_2 | () [] () [] | 9
- iso_4217 | [] () [] [] () [] [] | 26
- iso_639 | [] [] [] () [] () [] [] [] [] | 38
- iso_639_3 | [] () | 8
- jwhois | [] [] [] [] [] | 16
- kbd | [] [] [] [] [] | 15
- keytouch | [] [] [] | 16
- keytouch-editor | [] [] [] | 14
- keytouch-keyboa... | [] [] [] | 14
- klavaro | [] | 11
- latrine | [] [] [] | 10
- ld | [] [] [] [] | 11
- leafpad | [] [] [] [] [] [] | 33
- libc | [] [] [] [] [] | 21
- libexif | [] () | 7
- libextractor | [] | 1
- libgnutls | [] [] [] | 9
- libgpewidget | [] [] [] | 14
- libgpg-error | [] [] [] | 9
- libgphoto2 | [] [] | 8
- libgphoto2_port | [] [] [] [] | 14
- libgsasl | [] [] [] | 13
- libiconv | [] [] [] [] | 21
- libidn | () [] [] | 11
- lifelines | [] | 4
- liferea | [] [] [] | 21
- lilypond | [] | 7
- linkdr | [] [] [] [] [] | 17
- lordsawar | | 1
- lprng | [] | 3
- lynx | [] [] [] [] | 17
- m4 | [] [] [] [] | 19
- mailfromd | [] [] | 3
- mailutils | [] | 5
- make | [] [] [] [] | 21
- man-db | [] [] [] | 8
- man-db-manpages | | 4
- minicom | [] [] | 16
- mkisofs | [] [] | 9
- myserver | | 0
- nano | [] [] [] [] | 21
- opcodes | [] [] [] | 11
- parted | [] [] [] [] [] | 15
- pies | [] [] | 3
- popt | [] [] [] [] [] [] | 27
- psmisc | [] [] | 11
- pspp | | 4
- pwdutils | [] [] | 6
- radius | [] [] | 9
- recode | [] [] [] [] | 28
- rosegarden | () | 0
- rpm | [] [] [] | 11
- rush | [] [] | 4
- sarg | | 1
- screem | [] | 3
- scrollkeeper | [] [] [] [] [] | 27
- sed | [] [] [] [] [] | 30
- sharutils | [] [] [] [] [] | 22
- shishi | [] | 3
- skencil | [] [] | 7
- solfege | [] [] [] [] | 16
- solfege-manual | [] | 8
- soundtracker | [] [] [] | 9
- sp | [] | 3
- sysstat | [] [] | 15
- tar | [] [] [] [] [] [] | 23
- texinfo | [] [] [] [] [] | 17
- tin | | 4
- unicode-han-tra... | | 0
- unicode-transla... | | 2
- util-linux-ng | [] [] [] [] | 20
- vice | () () | 1
- vmm | [] | 4
- vorbis-tools | [] | 6
- wastesedge | | 2
- wdiff | [] [] | 7
- wget | [] [] [] [] [] | 26
- wyslij-po | [] [] | 8
- xchat | [] [] [] [] [] [] | 36
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | 63
- xkeyboard-config | [] [] [] | 22
- +---------------------------------------------------+
- 85 teams sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW
- 178 domains 119 1 3 3 0 10 65 51 155 17 98 7 41 2618
+ zh_HK zh_TW
+ +-------------+
+ a2ps | | 30
+ aegis | | 9
+ anubis | | 19
+ aspell | | 29
+ bash | [] | 23
+ bfd | | 11
+ binutils | | 12
+ bison | [] | 18
+ bison-runtime | [] | 38
+ buzztrax | | 9
+ ccd2cue | | 10
+ ccide | | 17
+ cflow | | 16
+ clisp | | 10
+ coreutils | | 18
+ cpio | | 20
+ cppi | | 17
+ cpplib | [] | 19
+ cryptsetup | | 14
+ datamash | | 11
+ denemo | | 5
+ dfarc | | 17
+ dialog | [] | 42
+ dico | | 6
+ diffutils | | 22
+ dink | | 10
+ direvent | | 11
+ doodle | | 12
+ dos2unix | [] | 18
+ dos2unix-man | | 9
+ e2fsprogs | | 15
+ enscript | | 21
+ exif | | 27
+ fetchmail | | 19
+ findutils | | 29
+ flex | [] | 19
+ freedink | | 24
+ fusionforge | | 3
+ gas | | 5
+ gawk | | 13
+ gcal | | 8
+ gcc | | 2
+ gdbm | | 10
+ gettext-examples | [] [] | 40
+ gettext-runtime | [] [] | 35
+ gettext-tools | [] | 24
+ gjay | | 9
+ glunarclock | [] | 27
+ gnubiff | | 9
+ gnubik | | 19
+ gnucash | () | 6
+ gnuchess | | 11
+ gnulib | | 23
+ gnunet | | 1
+ gnunet-gtk | | 1
+ gold | | 7
+ gphoto2 | [] | 19
+ gprof | | 21
+ gramadoir | | 14
+ grep | [] | 31
+ grub | | 21
+ gsasl | [] | 19
+ gss | | 17
+ gst-plugins-bad | | 21
+ gst-plugins-base | | 27
+ gst-plugins-good | | 32
+ gst-plugins-ugly | | 34
+ gstreamer | [] | 32
+ gtick | | 19
+ gtkam | | 24
+ gtkspell | [] [] | 48
+ guix | | 2
+ guix-packages | | 0
+ gutenprint | | 15
+ hello | [] | 30
+ help2man | | 18
+ help2man-texi | | 5
+ hylafax | | 5
+ idutils | | 14
+ iso_15924 | [] | 23
+ iso_3166 | [] [] | 58
+ iso_3166_2 | | 9
+ iso_4217 | [] [] | 28
+ iso_639 | [] [] | 46
+ iso_639_3 | | 10
+ iso_639_5 | | 2
+ jwhois | [] | 20
+ kbd | | 17
+ klavaro | | 30
+ ld | [] | 15
+ leafpad | [] | 39
+ libc | [] | 24
+ libexif | | 10
+ libextractor | | 5
+ libgnutls | | 13
+ libgphoto2 | | 10
+ libgphoto2_port | [] | 19
+ libgsasl | | 18
+ libiconv | [] | 29
+ libidn | | 17
+ liferea | | 29
+ lilypond | | 11
+ lordsawar | | 3
+ lprng | | 3
+ lynx | | 19
+ m4 | [] | 22
+ mailfromd | | 4
+ mailutils | | 6
+ make | | 19
+ man-db | | 15
+ man-db-manpages | | 10
+ midi-instruments | [] | 43
+ minicom | [] | 17
+ mkisofs | | 13
+ myserver | | 9
+ nano | [] | 30
+ opcodes | | 12
+ parted | [] | 23
+ pies | | 4
+ pnmixer | | 9
+ popt | [] | 36
+ procps-ng | | 5
+ procps-ng-man | | 4
+ psmisc | [] | 22
+ pspp | | 13
+ pushover | | 6
+ pwdutils | | 8
+ pyspread | | 6
+ radius | | 9
+ recode | | 31
+ recutils | | 10
+ rpm | [] | 13
+ rush | | 10
+ sarg | | 4
+ sed | [] | 35
+ sharutils | | 13
+ shishi | | 7
+ skribilo | | 7
+ solfege | | 21
+ solfege-manual | | 9
+ spotmachine | | 11
+ sudo | | 26
+ sudoers | | 22
+ sysstat | | 23
+ tar | [] | 30
+ texinfo | | 17
+ texinfo_document | | 13
+ tigervnc | | 14
+ tin | [] | 7
+ tin-man | | 1
+ tracgoogleappsa... | [] | 22
+ trader | | 12
+ util-linux | | 13
+ ve | | 14
+ vice | | 1
+ vmm | | 3
+ vorbis-tools | | 13
+ wastesedge | | 3
+ wcd | | 8
+ wcd-man | | 3
+ wdiff | [] | 23
+ wget | | 21
+ wyslij-po | | 14
+ xboard | | 10
+ xdg-user-dirs | [] [] | 68
+ xkeyboard-config | [] | 28
+ +-------------+
+ 89 teams zh_HK zh_TW
+ 166 domains 7 42 2809
Some counters in the preceding matrix are higher than the number of
visible blocks let us expect. This is because a few extra PO files are
@@ -1251,32 +1350,30 @@ used for implementing regional variants of languages, or language
dialects.
For a PO file in the matrix above to be effective, the package to
-which it applies should also have been internationalized and
-distributed as such by its maintainer. There might be an observable
-lag between the mere existence a PO file and its wide availability in a
-distribution.
+which it applies should also have been internationalized and distributed
+as such by its maintainer. There might be an observable lag between the
+mere existence a PO file and its wide availability in a distribution.
- If June 2010 seems to be old, you may fetch a more recent copy of
-this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
-matrix with full percentage details can be found at
-`http://translationproject.org/extra/matrix.html'.
+ If Jun 2014 seems to be old, you may fetch a more recent copy of this
+'ABOUT-NLS' file on most GNU archive sites. The most up-to-date matrix
+with full percentage details can be found at
+'http://translationproject.org/extra/matrix.html'.
-1.5 Using `gettext' in new packages
+1.5 Using 'gettext' in new packages
===================================
If you are writing a freely available program and want to
-internationalize it you are welcome to use GNU `gettext' in your
-package. Of course you have to respect the GNU Library General Public
-License which covers the use of the GNU `gettext' library. This means
-in particular that even non-free programs can use `libintl' as a shared
-library, whereas only free software can use `libintl' as a static
-library or use modified versions of `libintl'.
+internationalize it you are welcome to use GNU 'gettext' in your
+package. Of course you have to respect the GNU Lesser General Public
+License which covers the use of the GNU 'gettext' library. This means
+in particular that even non-free programs can use 'libintl' as a shared
+library, whereas only free software can use 'libintl' as a static
+library or use modified versions of 'libintl'.
Once the sources are changed appropriately and the setup can handle
-the use of `gettext' the only thing missing are the translations. The
+the use of 'gettext' the only thing missing are the translations. The
Free Translation Project is also available for packages which are not
developed inside the GNU project. Therefore the information given above
applies also for every other Free Software Project. Contact
-`coordinator@translationproject.org' to make the `.pot' files available
+'coordinator@translationproject.org' to make the '.pot' files available
to the translation teams.
-
diff --git a/Makefile.am b/Makefile.am
index 1cca140..c1ddb32 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -46,6 +46,7 @@ EXTRA_DIST = \
src/pulse/.gitignore \
meson.build \
meson_options.txt \
+ doxygen/meson.build \
man/meson.build \
po/meson.build \
shell-completion/bash/meson.build \
diff --git a/Makefile.in b/Makefile.in
index 6e9da6c..4e9e32d 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -240,7 +240,7 @@ am__DIST_COMMON = $(srcdir)/Makefile.in \
$(top_srcdir)/build-aux/missing \
$(top_srcdir)/src/pulse/version.h.in ABOUT-NLS NEWS README \
build-aux/compile build-aux/config.guess \
- build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
+ build-aux/config.rpath build-aux/config.sub \
build-aux/install-sh build-aux/ltmain.sh build-aux/missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
@@ -315,6 +315,7 @@ DBUS_LIBS = @DBUS_LIBS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
+DOXYGEN_OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
@@ -512,6 +513,7 @@ ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+alsadatadir = @alsadatadir@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -597,6 +599,7 @@ EXTRA_DIST = \
src/pulse/.gitignore \
meson.build \
meson_options.txt \
+ doxygen/meson.build \
man/meson.build \
po/meson.build \
shell-completion/bash/meson.build \
diff --git a/PROTOCOL b/PROTOCOL
index 8117d00..4307898 100644
--- a/PROTOCOL
+++ b/PROTOCOL
@@ -427,6 +427,14 @@ Added two values to the pa_encoding_t enum:
PA_ENCODING_TRUEHD_IEC61937 := 7
PA_ENCODING_DTSHD_IEC61937 := 8
+## v34, implemented by >= 14.0
+
+New fields in the port introspection data (duplicated for all port types:
+sink, source and card ports):
+
+ string availability_group
+ uint32 type
+
#### If you just changed the protocol, read this
## module-tunnel depends on the sink/source/sink-input/source-input protocol
## internals, so if you changed these, you might have broken module-tunnel.
diff --git a/aclocal.m4 b/aclocal.m4
index d2bb403..14dba79 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -109,6 +109,682 @@ m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])])
]
)
+# host-cpu-c-abi.m4 serial 13
+dnl Copyright (C) 2002-2020 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Bruno Haible and Sam Steingold.
+
+dnl Sets the HOST_CPU variable to the canonical name of the CPU.
+dnl Sets the HOST_CPU_C_ABI variable to the canonical name of the CPU with its
+dnl C language ABI (application binary interface).
+dnl Also defines __${HOST_CPU}__ and __${HOST_CPU_C_ABI}__ as C macros in
+dnl config.h.
+dnl
+dnl This canonical name can be used to select a particular assembly language
+dnl source file that will interoperate with C code on the given host.
+dnl
+dnl For example:
+dnl * 'i386' and 'sparc' are different canonical names, because code for i386
+dnl will not run on SPARC CPUs and vice versa. They have different
+dnl instruction sets.
+dnl * 'sparc' and 'sparc64' are different canonical names, because code for
+dnl 'sparc' and code for 'sparc64' cannot be linked together: 'sparc' code
+dnl contains 32-bit instructions, whereas 'sparc64' code contains 64-bit
+dnl instructions. A process on a SPARC CPU can be in 32-bit mode or in 64-bit
+dnl mode, but not both.
+dnl * 'mips' and 'mipsn32' are different canonical names, because they use
+dnl different argument passing and return conventions for C functions, and
+dnl although the instruction set of 'mips' is a large subset of the
+dnl instruction set of 'mipsn32'.
+dnl * 'mipsn32' and 'mips64' are different canonical names, because they use
+dnl different sizes for the C types like 'int' and 'void *', and although
+dnl the instruction sets of 'mipsn32' and 'mips64' are the same.
+dnl * The same canonical name is used for different endiannesses. You can
+dnl determine the endianness through preprocessor symbols:
+dnl - 'arm': test __ARMEL__.
+dnl - 'mips', 'mipsn32', 'mips64': test _MIPSEB vs. _MIPSEL.
+dnl - 'powerpc64': test _BIG_ENDIAN vs. _LITTLE_ENDIAN.
+dnl * The same name 'i386' is used for CPUs of type i386, i486, i586
+dnl (Pentium), AMD K7, Pentium II, Pentium IV, etc., because
+dnl - Instructions that do not exist on all of these CPUs (cmpxchg,
+dnl MMX, SSE, SSE2, 3DNow! etc.) are not frequently used. If your
+dnl assembly language source files use such instructions, you will
+dnl need to make the distinction.
+dnl - Speed of execution of the common instruction set is reasonable across
+dnl the entire family of CPUs. If you have assembly language source files
+dnl that are optimized for particular CPU types (like GNU gmp has), you
+dnl will need to make the distinction.
+dnl See <https://en.wikipedia.org/wiki/X86_instruction_listings>.
+AC_DEFUN([gl_HOST_CPU_C_ABI],
+[
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ AC_REQUIRE([gl_C_ASM])
+ AC_CACHE_CHECK([host CPU and C ABI], [gl_cv_host_cpu_c_abi],
+ [case "$host_cpu" in
+
+changequote(,)dnl
+ i[34567]86 )
+changequote([,])dnl
+ gl_cv_host_cpu_c_abi=i386
+ ;;
+
+ x86_64 )
+ # On x86_64 systems, the C compiler may be generating code in one of
+ # these ABIs:
+ # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64.
+ # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64
+ # with native Windows (mingw, MSVC).
+ # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32.
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if (defined __x86_64__ || defined __amd64__ \
+ || defined _M_X64 || defined _M_AMD64)
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __ILP32__ || defined _ILP32
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=x86_64-x32],
+ [gl_cv_host_cpu_c_abi=x86_64])],
+ [gl_cv_host_cpu_c_abi=i386])
+ ;;
+
+changequote(,)dnl
+ alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] )
+changequote([,])dnl
+ gl_cv_host_cpu_c_abi=alpha
+ ;;
+
+ arm* | aarch64 )
+ # Assume arm with EABI.
+ # On arm64 systems, the C compiler may be generating code in one of
+ # these ABIs:
+ # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64.
+ # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32.
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#ifdef __aarch64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __ILP32__ || defined _ILP32
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=arm64-ilp32],
+ [gl_cv_host_cpu_c_abi=arm64])],
+ [# Don't distinguish little-endian and big-endian arm, since they
+ # don't require different machine code for simple operations and
+ # since the user can distinguish them through the preprocessor
+ # defines __ARMEL__ vs. __ARMEB__.
+ # But distinguish arm which passes floating-point arguments and
+ # return values in integer registers (r0, r1, ...) - this is
+ # gcc -mfloat-abi=soft or gcc -mfloat-abi=softfp - from arm which
+ # passes them in float registers (s0, s1, ...) and double registers
+ # (d0, d1, ...) - this is gcc -mfloat-abi=hard. GCC 4.6 or newer
+ # sets the preprocessor defines __ARM_PCS (for the first case) and
+ # __ARM_PCS_VFP (for the second case), but older GCC does not.
+ echo 'double ddd; void func (double dd) { ddd = dd; }' > conftest.c
+ # Look for a reference to the register d0 in the .s file.
+ AC_TRY_COMMAND(${CC-cc} $CFLAGS $CPPFLAGS $gl_c_asm_opt conftest.c) >/dev/null 2>&1
+ if LC_ALL=C grep 'd0,' conftest.$gl_asmext >/dev/null; then
+ gl_cv_host_cpu_c_abi=armhf
+ else
+ gl_cv_host_cpu_c_abi=arm
+ fi
+ rm -f conftest*
+ ])
+ ;;
+
+ hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
+ # On hppa, the C compiler may be generating 32-bit code or 64-bit
+ # code. In the latter case, it defines _LP64 and __LP64__.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#ifdef __LP64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=hppa64],
+ [gl_cv_host_cpu_c_abi=hppa])
+ ;;
+
+ ia64* )
+ # On ia64 on HP-UX, the C compiler may be generating 64-bit code or
+ # 32-bit code. In the latter case, it defines _ILP32.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#ifdef _ILP32
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=ia64-ilp32],
+ [gl_cv_host_cpu_c_abi=ia64])
+ ;;
+
+ mips* )
+ # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this
+ # at 32.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64)
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=mips64],
+ [# In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined (but
+ # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIN32.
+ # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined (but
+ # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIO32.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if (_MIPS_SIM == _ABIN32)
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=mipsn32],
+ [gl_cv_host_cpu_c_abi=mips])])
+ ;;
+
+ powerpc* )
+ # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD.
+ # No need to distinguish them here; the caller may distinguish
+ # them based on the OS.
+ # On powerpc64 systems, the C compiler may still be generating
+ # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may
+ # be generating 64-bit code.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __powerpc64__ || defined _ARCH_PPC64
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [# On powerpc64, there are two ABIs on Linux: The AIX compatible
+ # one and the ELFv2 one. The latter defines _CALL_ELF=2.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined _CALL_ELF && _CALL_ELF == 2
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=powerpc64-elfv2],
+ [gl_cv_host_cpu_c_abi=powerpc64])
+ ],
+ [gl_cv_host_cpu_c_abi=powerpc])
+ ;;
+
+ rs6000 )
+ gl_cv_host_cpu_c_abi=powerpc
+ ;;
+
+ riscv32 | riscv64 )
+ # There are 2 architectures (with variants): rv32* and rv64*.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if __riscv_xlen == 64
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [cpu=riscv64],
+ [cpu=riscv32])
+ # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d.
+ # Size of 'long' and 'void *':
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __LP64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [main_abi=lp64],
+ [main_abi=ilp32])
+ # Float ABIs:
+ # __riscv_float_abi_double:
+ # 'float' and 'double' are passed in floating-point registers.
+ # __riscv_float_abi_single:
+ # 'float' are passed in floating-point registers.
+ # __riscv_float_abi_soft:
+ # No values are passed in floating-point registers.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __riscv_float_abi_double
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [float_abi=d],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __riscv_float_abi_single
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [float_abi=f],
+ [float_abi=''])
+ ])
+ gl_cv_host_cpu_c_abi="${cpu}-${main_abi}${float_abi}"
+ ;;
+
+ s390* )
+ # On s390x, the C compiler may be generating 64-bit (= s390x) code
+ # or 31-bit (= s390) code.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __LP64__ || defined __s390x__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=s390x],
+ [gl_cv_host_cpu_c_abi=s390])
+ ;;
+
+ sparc | sparc64 )
+ # UltraSPARCs running Linux have `uname -m` = "sparc64", but the
+ # C compiler still generates 32-bit code.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __sparcv9 || defined __arch64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi=sparc64],
+ [gl_cv_host_cpu_c_abi=sparc])
+ ;;
+
+ *)
+ gl_cv_host_cpu_c_abi="$host_cpu"
+ ;;
+ esac
+ ])
+
+ dnl In most cases, $HOST_CPU and $HOST_CPU_C_ABI are the same.
+ HOST_CPU=`echo "$gl_cv_host_cpu_c_abi" | sed -e 's/-.*//'`
+ HOST_CPU_C_ABI="$gl_cv_host_cpu_c_abi"
+ AC_SUBST([HOST_CPU])
+ AC_SUBST([HOST_CPU_C_ABI])
+
+ # This was
+ # AC_DEFINE_UNQUOTED([__${HOST_CPU}__])
+ # AC_DEFINE_UNQUOTED([__${HOST_CPU_C_ABI}__])
+ # earlier, but KAI C++ 3.2d doesn't like this.
+ sed -e 's/-/_/g' >> confdefs.h <<EOF
+#ifndef __${HOST_CPU}__
+#define __${HOST_CPU}__ 1
+#endif
+#ifndef __${HOST_CPU_C_ABI}__
+#define __${HOST_CPU_C_ABI}__ 1
+#endif
+EOF
+ AH_TOP([/* CPU and C ABI indicator */
+#ifndef __i386__
+#undef __i386__
+#endif
+#ifndef __x86_64_x32__
+#undef __x86_64_x32__
+#endif
+#ifndef __x86_64__
+#undef __x86_64__
+#endif
+#ifndef __alpha__
+#undef __alpha__
+#endif
+#ifndef __arm__
+#undef __arm__
+#endif
+#ifndef __armhf__
+#undef __armhf__
+#endif
+#ifndef __arm64_ilp32__
+#undef __arm64_ilp32__
+#endif
+#ifndef __arm64__
+#undef __arm64__
+#endif
+#ifndef __hppa__
+#undef __hppa__
+#endif
+#ifndef __hppa64__
+#undef __hppa64__
+#endif
+#ifndef __ia64_ilp32__
+#undef __ia64_ilp32__
+#endif
+#ifndef __ia64__
+#undef __ia64__
+#endif
+#ifndef __m68k__
+#undef __m68k__
+#endif
+#ifndef __mips__
+#undef __mips__
+#endif
+#ifndef __mipsn32__
+#undef __mipsn32__
+#endif
+#ifndef __mips64__
+#undef __mips64__
+#endif
+#ifndef __powerpc__
+#undef __powerpc__
+#endif
+#ifndef __powerpc64__
+#undef __powerpc64__
+#endif
+#ifndef __powerpc64_elfv2__
+#undef __powerpc64_elfv2__
+#endif
+#ifndef __riscv32__
+#undef __riscv32__
+#endif
+#ifndef __riscv64__
+#undef __riscv64__
+#endif
+#ifndef __riscv32_ilp32__
+#undef __riscv32_ilp32__
+#endif
+#ifndef __riscv32_ilp32f__
+#undef __riscv32_ilp32f__
+#endif
+#ifndef __riscv32_ilp32d__
+#undef __riscv32_ilp32d__
+#endif
+#ifndef __riscv64_ilp32__
+#undef __riscv64_ilp32__
+#endif
+#ifndef __riscv64_ilp32f__
+#undef __riscv64_ilp32f__
+#endif
+#ifndef __riscv64_ilp32d__
+#undef __riscv64_ilp32d__
+#endif
+#ifndef __riscv64_lp64__
+#undef __riscv64_lp64__
+#endif
+#ifndef __riscv64_lp64f__
+#undef __riscv64_lp64f__
+#endif
+#ifndef __riscv64_lp64d__
+#undef __riscv64_lp64d__
+#endif
+#ifndef __s390__
+#undef __s390__
+#endif
+#ifndef __s390x__
+#undef __s390x__
+#endif
+#ifndef __sh__
+#undef __sh__
+#endif
+#ifndef __sparc__
+#undef __sparc__
+#endif
+#ifndef __sparc64__
+#undef __sparc64__
+#endif
+])
+
+])
+
+
+dnl Sets the HOST_CPU_C_ABI_32BIT variable to 'yes' if the C language ABI
+dnl (application binary interface) is a 32-bit one, to 'no' if it is a 64-bit
+dnl one, or to 'unknown' if unknown.
+dnl This is a simplified variant of gl_HOST_CPU_C_ABI.
+AC_DEFUN([gl_HOST_CPU_C_ABI_32BIT],
+[
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ AC_CACHE_CHECK([32-bit host C ABI], [gl_cv_host_cpu_c_abi_32bit],
+ [if test -n "$gl_cv_host_cpu_c_abi"; then
+ case "$gl_cv_host_cpu_c_abi" in
+ i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc)
+ gl_cv_host_cpu_c_abi_32bit=yes ;;
+ x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 )
+ gl_cv_host_cpu_c_abi_32bit=no ;;
+ *)
+ gl_cv_host_cpu_c_abi_32bit=unknown ;;
+ esac
+ else
+ case "$host_cpu" in
+
+ # CPUs that only support a 32-bit ABI.
+ arc \
+ | bfin \
+ | cris* \
+ | csky \
+ | epiphany \
+ | ft32 \
+ | h8300 \
+ | m68k \
+ | microblaze | microblazeel \
+ | nds32 | nds32le | nds32be \
+ | nios2 | nios2eb | nios2el \
+ | or1k* \
+ | or32 \
+ | sh | sh[1234] | sh[1234]e[lb] \
+ | tic6x \
+ | xtensa* )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ # CPUs that only support a 64-bit ABI.
+changequote(,)dnl
+ alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \
+ | mmix )
+changequote([,])dnl
+ gl_cv_host_cpu_c_abi_32bit=no
+ ;;
+
+changequote(,)dnl
+ i[34567]86 )
+changequote([,])dnl
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ x86_64 )
+ # On x86_64 systems, the C compiler may be generating code in one of
+ # these ABIs:
+ # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64.
+ # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64
+ # with native Windows (mingw, MSVC).
+ # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32.
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if (defined __x86_64__ || defined __amd64__ \
+ || defined _M_X64 || defined _M_AMD64) \
+ && !(defined __ILP32__ || defined _ILP32)
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ arm* | aarch64 )
+ # Assume arm with EABI.
+ # On arm64 systems, the C compiler may be generating code in one of
+ # these ABIs:
+ # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64.
+ # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32.
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32)
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
+ # On hppa, the C compiler may be generating 32-bit code or 64-bit
+ # code. In the latter case, it defines _LP64 and __LP64__.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#ifdef __LP64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ ia64* )
+ # On ia64 on HP-UX, the C compiler may be generating 64-bit code or
+ # 32-bit code. In the latter case, it defines _ILP32.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#ifdef _ILP32
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=yes],
+ [gl_cv_host_cpu_c_abi_32bit=no])
+ ;;
+
+ mips* )
+ # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this
+ # at 32.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64)
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ powerpc* )
+ # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD.
+ # No need to distinguish them here; the caller may distinguish
+ # them based on the OS.
+ # On powerpc64 systems, the C compiler may still be generating
+ # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may
+ # be generating 64-bit code.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __powerpc64__ || defined _ARCH_PPC64
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ rs6000 )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ riscv32 | riscv64 )
+ # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d.
+ # Size of 'long' and 'void *':
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __LP64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ s390* )
+ # On s390x, the C compiler may be generating 64-bit (= s390x) code
+ # or 31-bit (= s390) code.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __LP64__ || defined __s390x__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ sparc | sparc64 )
+ # UltraSPARCs running Linux have `uname -m` = "sparc64", but the
+ # C compiler still generates 32-bit code.
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __sparcv9 || defined __arch64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [gl_cv_host_cpu_c_abi_32bit=no],
+ [gl_cv_host_cpu_c_abi_32bit=yes])
+ ;;
+
+ *)
+ gl_cv_host_cpu_c_abi_32bit=unknown
+ ;;
+ esac
+ fi
+ ])
+
+ HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
+])
+
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 11 (pkg-config-0.29.1)
diff --git a/build-aux/config.rpath b/build-aux/config.rpath
index b625621..98183ff 100755
--- a/build-aux/config.rpath
+++ b/build-aux/config.rpath
@@ -2,7 +2,7 @@
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
-# Copyright 1996-2014 Free Software Foundation, Inc.
+# Copyright 1996-2016 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
diff --git a/config.h.in b/config.h.in
index 87c4007..d889efd 100644
--- a/config.h.in
+++ b/config.h.in
@@ -86,9 +86,9 @@
/* Define to 1 if you have the <byteswap.h> header file. */
#undef HAVE_BYTESWAP_H
-/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the
- CoreFoundation framework. */
-#undef HAVE_CFLOCALECOPYCURRENT
+/* Define to 1 if you have the Mac OS X function
+ CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */
+#undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES
/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in
the CoreFoundation framework. */
@@ -684,6 +684,9 @@
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
+/* module-stream-restore: Clear old devices */
+#undef STREAM_RESTORE_CLEAR_OLD_DEVICES
+
/* Define this if the compiler supports __thread for Thread-Local Storage */
#undef SUPPORT_TLS___THREAD
diff --git a/configure b/configure
index b55c5e4..1f8bacb 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for pulseaudio 13.99.1.
+# Generated by GNU Autoconf 2.69 for pulseaudio 13.99.2.
#
# Report bugs to <pulseaudio-discuss (at) lists (dot) freedesktop (dot) org>.
#
@@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='pulseaudio'
PACKAGE_TARNAME='pulseaudio'
-PACKAGE_VERSION='13.99.1'
-PACKAGE_STRING='pulseaudio 13.99.1'
+PACKAGE_VERSION='13.99.2'
+PACKAGE_STRING='pulseaudio 13.99.2'
PACKAGE_BUGREPORT='pulseaudio-discuss (at) lists (dot) freedesktop (dot) org'
PACKAGE_URL='http://pulseaudio.org/'
@@ -641,11 +641,13 @@ LTLIBOBJS
LIBOBJS
PA_INCDIR
PA_LIBDIR
+DOXYGEN_OUTPUT_DIRECTORY
FORCE_PREOPEN_FALSE
FORCE_PREOPEN_TRUE
zshcompletiondir
bashcompletiondir
udevrulesdir
+alsadatadir
PA_DLSEARCHPATH
modlibexecdir
PREOPEN_MODS
@@ -852,6 +854,8 @@ HAVE_MEMFD
HAVE_REGEX_FALSE
HAVE_REGEX_TRUE
ALLOCA
+HAVE_PTHREAD_SETAFFINITY_NP_FALSE
+HAVE_PTHREAD_SETAFFINITY_NP_TRUE
HAVE_MKFIFO_FALSE
HAVE_MKFIFO_TRUE
HAVE_MKFIFO
@@ -1114,9 +1118,11 @@ enable_webrtc_aec
enable_adrian_aec
enable_default_build_tests
enable_legacy_database_entry_format
+enable_stream_restore_clear_old_devices
enable_static_bins
with_preopen_mods
with_module_dir
+with_alsa_data_dir
with_udev_rules_dir
with_bash_completion_dir
with_zsh_completion_dir
@@ -1736,7 +1742,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures pulseaudio 13.99.1 to adapt to many kinds of systems.
+\`configure' configures pulseaudio 13.99.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1806,7 +1812,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of pulseaudio 13.99.1:";;
+ short | recursive ) echo "Configuration of pulseaudio 13.99.2:";;
esac
cat <<\_ACEOF
@@ -1895,6 +1901,11 @@ Optional Features:
--disable-legacy-database-entry-format
Try to load legacy (< 1.0) database files (card,
device and volume restore).
+ --enable-stream-restore-clear-old-devices
+ Forget per-stream routing settings that have been
+ set before version 14.0. Recommended when using
+ GNOME. See
+ https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832
--enable-static-bins Statically link executables.
--enable-force-preopen Preopen modules, even when dlopen() is supported.
@@ -1942,6 +1953,8 @@ Optional Packages:
--with-preopen-mods Modules to preopen in daemon (default: all).
--with-module-dir Directory where to install the modules to (defaults
to ${libdir}/pulse-${PA_MAJORMINOR}/modules
+ --with-alsa-data-dir Directory for ALSA card profiles (defaults to
+ ${datadir}/pulseaudio/alsa-mixer)
--with-udev-rules-dir Directory where to install udev rules to (defaults
to /lib/udev/rules.d)
--with-bash-completion-dir=DIR
@@ -2129,7 +2142,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-pulseaudio configure 13.99.1
+pulseaudio configure 13.99.2
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2902,7 +2915,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by pulseaudio $as_me 13.99.1, which was
+It was created by pulseaudio $as_me 13.99.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3249,7 +3262,6 @@ as_fn_append ac_func_list " sleep"
as_fn_append ac_func_list " symlink"
as_fn_append ac_func_list " sysconf"
as_fn_append ac_func_list " uname"
-as_fn_append ac_func_list " pthread_setaffinity_np"
as_fn_append ac_func_list " pthread_getname_np"
as_fn_append ac_func_list " pthread_setname_np"
as_fn_append ac_func_list " readlink"
@@ -3859,7 +3871,7 @@ fi
# Define the identity of the package.
PACKAGE='pulseaudio'
- VERSION='13.99.1'
+ VERSION='13.99.2'
cat >>confdefs.h <<_ACEOF
@@ -4111,12 +4123,12 @@ PA_MAJORMINOR=`echo $VERSION | cut -d. -f1 | cut -d- -f1`.`echo $VERSION | cut -
PA_API_VERSION=12
-PA_PROTOCOL_VERSION=33
+PA_PROTOCOL_VERSION=34
# The stable ABI for client applications, for the version info x:y:z
# always will hold x=z
-LIBPULSE_VERSION_INFO=21:2:21
+LIBPULSE_VERSION_INFO=22:0:22
# A simplified, synchronous, ABI-stable interface for client
@@ -4126,7 +4138,7 @@ LIBPULSE_SIMPLE_VERSION_INFO=1:1:1
# The ABI-stable GLib adapter for client applications, for the version
# info x:y:z always will hold x=z
-LIBPULSE_MAINLOOP_GLIB_VERSION_INFO=0:5:0
+LIBPULSE_MAINLOOP_GLIB_VERSION_INFO=0:6:0
# Make sure we can run config.sub.
@@ -7483,38 +7495,12 @@ if test "${PATH_SEPARATOR+set}" != set; then
}
fi
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
+if test -n "$LD"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld" >&5
+$as_echo_n "checking for ld... " >&6; }
+elif test "$GCC" = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`echo "$ac_prog"| sed 's%\\\\%/%g'`
- while echo "$ac_prog" | grep "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
elif test "$with_gnu_ld" = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
$as_echo_n "checking for GNU ld... " >&6; }
@@ -7522,44 +7508,129 @@ else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
$as_echo_n "checking for non-GNU ld... " >&6; }
fi
-if ${acl_cv_path_LD+:} false; then :
+if test -n "$LD"; then
+ # Let the user override the test with a path.
+ :
+else
+ if ${acl_cv_path_LD+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test -z "$LD"; then
- acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$acl_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- acl_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
+
+ acl_cv_path_LD= # Final result of this test
+ ac_prog=ld # Program to search in $PATH
+ if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ acl_output=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $acl_output in
+ # Accept absolute paths.
+ [\\/]* | ?:[\\/]*)
+ re_direlt='/[^/][^/]*/\.\./'
+ # Canonicalize the pathname of ld
+ acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'`
+ while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do
+ acl_output=`echo $acl_output | sed "s%$re_direlt%/%"`
+ done
+ # Got the pathname. No search in PATH is needed.
+ acl_cv_path_LD="$acl_output"
+ ac_prog=
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
esac
fi
- done
- IFS="$acl_save_ifs"
+ if test -n "$ac_prog"; then
+ # Search for $ac_prog in $PATH.
+ acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$acl_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ acl_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_ifs"
+ fi
+ case $host in
+ *-*-aix*)
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __powerpc64__ || defined _ARCH_PPC64
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ # The compiler produces 64-bit code. Add option '-b64' so that the
+ # linker groks 64-bit object files.
+ case "$acl_cv_path_LD " in
+ *" -b64 "*) ;;
+ *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;;
+ esac
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+ sparc64-*-netbsd*)
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __sparcv9 || defined __arch64__
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
else
- acl_cv_path_LD="$LD" # Let the user override the test with a path.
+ # The compiler produces 32-bit code. Add option '-m elf32_sparc'
+ # so that the linker groks 32-bit object files.
+ case "$acl_cv_path_LD " in
+ *" -m elf32_sparc "*) ;;
+ *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;;
+ esac
+
fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+ esac
+
fi
-LD="$acl_cv_path_LD"
+ LD="$acl_cv_path_LD"
+fi
if test -n "$LD"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
$as_echo "$LD" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
+ as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
if ${acl_cv_prog_gnu_ld+:} false; then :
@@ -7616,67 +7687,412 @@ fi
- acl_libdirstem=lib
- acl_libdirstem2=
- case "$host_os" in
- solaris*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
-$as_echo_n "checking for 64-bit host... " >&6; }
-if ${gl_cv_solaris_64bit+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5
+$as_echo_n "checking 32-bit host C ABI... " >&6; }
+if ${gl_cv_host_cpu_c_abi_32bit+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ if test -n "$gl_cv_host_cpu_c_abi"; then
+ case "$gl_cv_host_cpu_c_abi" in
+ i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc)
+ gl_cv_host_cpu_c_abi_32bit=yes ;;
+ x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 )
+ gl_cv_host_cpu_c_abi_32bit=no ;;
+ *)
+ gl_cv_host_cpu_c_abi_32bit=unknown ;;
+ esac
+ else
+ case "$host_cpu" in
+
+ # CPUs that only support a 32-bit ABI.
+ arc \
+ | bfin \
+ | cris* \
+ | csky \
+ | epiphany \
+ | ft32 \
+ | h8300 \
+ | m68k \
+ | microblaze | microblazeel \
+ | nds32 | nds32le | nds32be \
+ | nios2 | nios2eb | nios2el \
+ | or1k* \
+ | or32 \
+ | sh | sh1234 | sh1234elb \
+ | tic6x \
+ | xtensa* )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ # CPUs that only support a 64-bit ABI.
+ alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \
+ | mmix )
+ gl_cv_host_cpu_c_abi_32bit=no
+ ;;
+
+ i[34567]86 )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ x86_64 )
+ # On x86_64 systems, the C compiler may be generating code in one of
+ # these ABIs:
+ # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64.
+ # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64
+ # with native Windows (mingw, MSVC).
+ # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32.
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+#if (defined __x86_64__ || defined __amd64__ \
+ || defined _M_X64 || defined _M_AMD64) \
+ && !(defined __ILP32__ || defined _ILP32)
+ int ok;
+ #else
+ error fail
+ #endif
-#ifdef _LP64
-sixtyfour bits
-#endif
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ arm* | aarch64 )
+ # Assume arm with EABI.
+ # On arm64 systems, the C compiler may be generating code in one of
+ # these ABIs:
+ # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64.
+ # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32.
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32)
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ hppa1.0 | hppa1.1 | hppa2.0* | hppa64 )
+ # On hppa, the C compiler may be generating 32-bit code or 64-bit
+ # code. In the latter case, it defines _LP64 and __LP64__.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef __LP64__
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ ia64* )
+ # On ia64 on HP-UX, the C compiler may be generating 64-bit code or
+ # 32-bit code. In the latter case, it defines _ILP32.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef _ILP32
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=yes
+else
+ gl_cv_host_cpu_c_abi_32bit=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ mips* )
+ # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this
+ # at 32.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64)
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ powerpc* )
+ # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD.
+ # No need to distinguish them here; the caller may distinguish
+ # them based on the OS.
+ # On powerpc64 systems, the C compiler may still be generating
+ # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may
+ # be generating 64-bit code.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __powerpc64__ || defined _ARCH_PPC64
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ rs6000 )
+ gl_cv_host_cpu_c_abi_32bit=yes
+ ;;
+
+ riscv32 | riscv64 )
+ # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d.
+ # Size of 'long' and 'void *':
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __LP64__
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ s390* )
+ # On s390x, the C compiler may be generating 64-bit (= s390x) code
+ # or 31-bit (= s390) code.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __LP64__ || defined __s390x__
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ sparc | sparc64 )
+ # UltraSPARCs running Linux have `uname -m` = "sparc64", but the
+ # C compiler still generates 32-bit code.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __sparcv9 || defined __arch64__
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ *)
+ gl_cv_host_cpu_c_abi_32bit=unknown
+ ;;
+ esac
+ fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5
+$as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; }
+
+ HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
+
+
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ELF binary format" >&5
+$as_echo_n "checking for ELF binary format... " >&6; }
+if ${gl_cv_elf+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef __ELF__
+ Extensible Linking Format
+ #endif
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "sixtyfour bits" >/dev/null 2>&1; then :
- gl_cv_solaris_64bit=yes
+ $EGREP "Extensible Linking Format" >/dev/null 2>&1; then :
+ gl_cv_elf=yes
else
- gl_cv_solaris_64bit=no
+ gl_cv_elf=no
fi
rm -f conftest*
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
-$as_echo "$gl_cv_solaris_64bit" >&6; }
- if test $gl_cv_solaris_64bit = yes; then
- acl_libdirstem=lib/64
- case "$host_cpu" in
- sparc*) acl_libdirstem2=lib/sparcv9 ;;
- i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
- esac
- fi
- ;;
- *)
- searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
- if test -n "$searchpath"; then
- acl_save_IFS="${IFS= }"; IFS=":"
- for searchdir in $searchpath; do
- if test -d "$searchdir"; then
- case "$searchdir" in
- */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
- */../ | */.. )
- # Better ignore directories of this form. They are misleading.
- ;;
- *) searchdir=`cd "$searchdir" && pwd`
- case "$searchdir" in
- */lib64 ) acl_libdirstem=lib64 ;;
- esac ;;
- esac
- fi
- done
- IFS="$acl_save_IFS"
- fi
- ;;
- esac
- test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_elf" >&5
+$as_echo "$gl_cv_elf" >&6; }
+ if test $gl_cv_elf; then
+ # Extract the ELF class of a file (5th byte) in decimal.
+ # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header
+ if od -A x < /dev/null >/dev/null 2>/dev/null; then
+ # Use POSIX od.
+ func_elfclass ()
+ {
+ od -A n -t d1 -j 4 -N 1
+ }
+ else
+ # Use BSD hexdump.
+ func_elfclass ()
+ {
+ dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "'
+ echo
+ }
+ fi
+ case $HOST_CPU_C_ABI_32BIT in
+ yes)
+ # 32-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ test "`func_elfclass | sed -e 's/[ ]//g'`" = 1
+ }
+ ;;
+ no)
+ # 64-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ test "`func_elfclass | sed -e 's/[ ]//g'`" = 2
+ }
+ ;;
+ *)
+ # Unknown.
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ ;;
+ esac
+ else
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5
+$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; }
+if ${acl_cv_libdirstems+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ acl_libdirstem=lib
+ acl_libdirstem2=
+ acl_libdirstem3=
+ case "$host_os" in
+ solaris*)
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ acl_libdirstem2=lib/64
+ case "$host_cpu" in
+ sparc*) acl_libdirstem3=lib/sparcv9 ;;
+ i*86 | x86_64) acl_libdirstem3=lib/amd64 ;;
+ esac
+ fi
+ ;;
+ *)
+ searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \
+ | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+ if test $HOST_CPU_C_ABI_32BIT != no; then
+ # 32-bit or unknown ABI.
+ if test -d /usr/lib32; then
+ acl_libdirstem2=lib32
+ fi
+ fi
+ if test $HOST_CPU_C_ABI_32BIT != yes; then
+ # 64-bit or unknown ABI.
+ if test -d /usr/lib64; then
+ acl_libdirstem3=lib64
+ fi
+ fi
+ if test -n "$searchpath"; then
+ acl_save_IFS="${IFS= }"; IFS=":"
+ for searchdir in $searchpath; do
+ if test -d "$searchdir"; then
+ case "$searchdir" in
+ */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;;
+ */../ | */.. )
+ # Better ignore directories of this form. They are misleading.
+ ;;
+ *) searchdir=`cd "$searchdir" && pwd`
+ case "$searchdir" in
+ */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64 ) acl_libdirstem3=lib64 ;;
+ esac ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_IFS"
+ if test $HOST_CPU_C_ABI_32BIT = yes; then
+ # 32-bit ABI.
+ acl_libdirstem3=
+ fi
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ # 64-bit ABI.
+ acl_libdirstem2=
+ fi
+ fi
+ ;;
+ esac
+ test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
+ test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem"
+ acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3"
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5
+$as_echo "$acl_cv_libdirstems" >&6; }
+ acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
+ acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'`
+ acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'`
@@ -7697,6 +8113,8 @@ $as_echo "$gl_cv_solaris_64bit" >&6; }
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
@@ -7717,6 +8135,8 @@ if test "${with_libiconv_prefix+set}" = set; then :
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
@@ -7724,15 +8144,19 @@ if test "${with_libiconv_prefix+set}" = set; then :
else
additional_includedir="$withval/include"
additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && ! test -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
+ additional_libdir2="$withval/$acl_libdirstem2"
+ additional_libdir3="$withval/$acl_libdirstem3"
fi
fi
fi
+ if test "X$additional_libdir2" = "X$additional_libdir"; then
+ additional_libdir2=
+ fi
+ if test "X$additional_libdir3" = "X$additional_libdir"; then
+ additional_libdir3=
+ fi
LIBICONV=
LTLIBICONV=
INCICONV=
@@ -7778,45 +8202,51 @@ fi
shrext=
fi
if test $use_additional = yes; then
- dir="$additional_libdir"
- if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext"
- else
- if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
- ver=`(cd "$dir" && \
- for f in "$libname$shrext".*; do echo "$f"; done \
- | sed -e "s,^$libname$shrext\\\\.,," \
- | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
- | sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext.$ver"
+ for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do
+ if test "X$found_dir" = "X"; then
+ eval dir=\$$additional_libdir_variable
+ if test -n "$dir"; then
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
+ else
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
+ fi
fi
- else
- eval library_names=\"$acl_library_names_spec\"
- for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
- found_so="$dir/$f"
- break
+ found_a="$dir/$libname.$acl_libext"
fi
- done
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
+ fi
+ fi
fi
fi
- fi
- if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
- found_dir="$dir"
- found_a="$dir/$libname.$acl_libext"
- fi
- fi
- if test "X$found_dir" != "X"; then
- if test -f "$dir/$libname.la"; then
- found_la="$dir/$libname.la"
- fi
- fi
+ done
fi
if test "X$found_dir" = "X"; then
for x in $LDFLAGS $LTLIBICONV; do
@@ -7833,7 +8263,7 @@ fi
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
found_dir="$dir"
found_so="$dir/$libname$shrext"
else
@@ -7843,14 +8273,14 @@ fi
| sed -e "s,^$libname$shrext\\\\.,," \
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
| sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
found_dir="$dir"
found_so="$dir/$libname$shrext.$ver"
fi
else
eval library_names=\"$acl_library_names_spec\"
for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
found_dir="$dir"
found_so="$dir/$f"
break
@@ -7860,7 +8290,7 @@ fi
fi
fi
if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
found_a="$dir/$libname.$acl_libext"
fi
@@ -7882,7 +8312,8 @@ fi
if test "X$found_so" != "X"; then
if test "$enable_rpath" = no \
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
- || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then
LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so"
else
haveit=
@@ -7961,6 +8392,13 @@ fi
fi
additional_includedir="$basedir/include"
;;
+ */$acl_libdirstem3 | */$acl_libdirstem3/)
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'`
+ if test "$name" = 'iconv'; then
+ LIBICONV_PREFIX="$basedir"
+ fi
+ additional_includedir="$basedir/include"
+ ;;
esac
if test "X$additional_includedir" != "X"; then
if test "X$additional_includedir" != "X/usr/include"; then
@@ -8006,12 +8444,14 @@ fi
for dep in $dependency_libs; do
case "$dep" in
-L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then
haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then
if test -n "$GCC"; then
case $host_os in
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -8030,14 +8470,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LIBICONV="${LIBICONV}${LIBICONV:+ }-L$dependency_libdir"
fi
fi
haveit=
@@ -8051,14 +8491,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$dependency_libdir"
fi
fi
fi
@@ -8165,8 +8605,6 @@ fi
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
@@ -8201,9 +8639,9 @@ $as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
-$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; }
-if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyPreferredLanguages" >&5
+$as_echo_n "checking for CFLocaleCopyPreferredLanguages... " >&6; }
+if ${gt_cv_func_CFLocaleCopyPreferredLanguages+:} false; then :
$as_echo_n "(cached) " >&6
else
gt_save_LIBS="$LIBS"
@@ -8214,29 +8652,30 @@ else
int
main ()
{
-CFLocaleCopyCurrent();
+CFLocaleCopyPreferredLanguages();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- gt_cv_func_CFLocaleCopyCurrent=yes
+ gt_cv_func_CFLocaleCopyPreferredLanguages=yes
else
- gt_cv_func_CFLocaleCopyCurrent=no
+ gt_cv_func_CFLocaleCopyPreferredLanguages=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS="$gt_save_LIBS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
-$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; }
- if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyPreferredLanguages" >&5
+$as_echo "$gt_cv_func_CFLocaleCopyPreferredLanguages" >&6; }
+ if test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
-$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h
+$as_echo "#define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1" >>confdefs.h
fi
INTL_MACOSX_LIBS=
- if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes \
+ || test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
fi
@@ -8524,15 +8963,27 @@ int result = 0;
#endif
/* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
provided. */
- if (/* Try standardized names. */
- iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
- /* Try IRIX, OSF/1 names. */
- && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
- /* Try AIX names. */
- && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
- /* Try HP-UX names. */
- && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
- result |= 16;
+ {
+ /* Try standardized names. */
+ iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
+ /* Try IRIX, OSF/1 names. */
+ iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
+ /* Try AIX names. */
+ iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
+ /* Try HP-UX names. */
+ iconv_t cd4 = iconv_open ("utf8", "eucJP");
+ if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
+ && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
+ result |= 16;
+ if (cd1 != (iconv_t)(-1))
+ iconv_close (cd1);
+ if (cd2 != (iconv_t)(-1))
+ iconv_close (cd2);
+ if (cd3 != (iconv_t)(-1))
+ iconv_close (cd3);
+ if (cd4 != (iconv_t)(-1))
+ iconv_close (cd4);
+ }
return result;
;
@@ -8585,7 +9036,6 @@ $as_echo "$LIBICONV" >&6; }
-
use_additional=yes
acl_save_prefix="$prefix"
@@ -8595,6 +9045,8 @@ $as_echo "$LIBICONV" >&6; }
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
@@ -8615,6 +9067,8 @@ if test "${with_libintl_prefix+set}" = set; then :
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
@@ -8622,15 +9076,19 @@ if test "${with_libintl_prefix+set}" = set; then :
else
additional_includedir="$withval/include"
additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && ! test -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
+ additional_libdir2="$withval/$acl_libdirstem2"
+ additional_libdir3="$withval/$acl_libdirstem3"
fi
fi
fi
+ if test "X$additional_libdir2" = "X$additional_libdir"; then
+ additional_libdir2=
+ fi
+ if test "X$additional_libdir3" = "X$additional_libdir"; then
+ additional_libdir3=
+ fi
LIBINTL=
LTLIBINTL=
INCINTL=
@@ -8676,45 +9134,51 @@ fi
shrext=
fi
if test $use_additional = yes; then
- dir="$additional_libdir"
- if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext"
- else
- if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
- ver=`(cd "$dir" && \
- for f in "$libname$shrext".*; do echo "$f"; done \
- | sed -e "s,^$libname$shrext\\\\.,," \
- | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
- | sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext.$ver"
+ for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do
+ if test "X$found_dir" = "X"; then
+ eval dir=\$$additional_libdir_variable
+ if test -n "$dir"; then
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
+ else
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
+ fi
fi
- else
- eval library_names=\"$acl_library_names_spec\"
- for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
- found_so="$dir/$f"
- break
+ found_a="$dir/$libname.$acl_libext"
fi
- done
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
+ fi
+ fi
fi
fi
- fi
- if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
- found_dir="$dir"
- found_a="$dir/$libname.$acl_libext"
- fi
- fi
- if test "X$found_dir" != "X"; then
- if test -f "$dir/$libname.la"; then
- found_la="$dir/$libname.la"
- fi
- fi
+ done
fi
if test "X$found_dir" = "X"; then
for x in $LDFLAGS $LTLIBINTL; do
@@ -8731,7 +9195,7 @@ fi
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
found_dir="$dir"
found_so="$dir/$libname$shrext"
else
@@ -8741,14 +9205,14 @@ fi
| sed -e "s,^$libname$shrext\\\\.,," \
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
| sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
found_dir="$dir"
found_so="$dir/$libname$shrext.$ver"
fi
else
eval library_names=\"$acl_library_names_spec\"
for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
found_dir="$dir"
found_so="$dir/$f"
break
@@ -8758,7 +9222,7 @@ fi
fi
fi
if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
found_a="$dir/$libname.$acl_libext"
fi
@@ -8780,7 +9244,8 @@ fi
if test "X$found_so" != "X"; then
if test "$enable_rpath" = no \
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
- || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then
LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so"
else
haveit=
@@ -8859,6 +9324,13 @@ fi
fi
additional_includedir="$basedir/include"
;;
+ */$acl_libdirstem3 | */$acl_libdirstem3/)
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'`
+ if test "$name" = 'intl'; then
+ LIBINTL_PREFIX="$basedir"
+ fi
+ additional_includedir="$basedir/include"
+ ;;
esac
if test "X$additional_includedir" != "X"; then
if test "X$additional_includedir" != "X/usr/include"; then
@@ -8904,12 +9376,14 @@ fi
for dep in $dependency_libs; do
case "$dep" in
-L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then
haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then
if test -n "$GCC"; then
case $host_os in
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -8928,14 +9402,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LIBINTL="${LIBINTL}${LIBINTL:+ }-L$dependency_libdir"
fi
fi
haveit=
@@ -8949,14 +9423,14 @@ fi
exec_prefix="$acl_save_exec_prefix"
prefix="$acl_save_prefix"
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$dependency_libdir"
fi
fi
fi
@@ -9039,7 +9513,6 @@ fi
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
$as_echo_n "checking for GNU gettext in libintl... " >&6; }
if eval \${$gt_func_gnugettext_libintl+:} false; then :
@@ -23438,8 +23911,6 @@ LIBS=$ac_save_LIBS
-
-
for ac_func in mkfifo
do :
ac_fn_c_check_func "$LINENO" "mkfifo" "ac_cv_func_mkfifo"
@@ -23462,6 +23933,27 @@ else
HAVE_MKFIFO_FALSE=
fi
+for ac_func in pthread_setaffinity_np
+do :
+ ac_fn_c_check_func "$LINENO" "pthread_setaffinity_np" "ac_cv_func_pthread_setaffinity_np"
+if test "x$ac_cv_func_pthread_setaffinity_np" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_PTHREAD_SETAFFINITY_NP 1
+_ACEOF
+ HAVE_PTHREAD_SETAFFINITY_NP=1
+else
+ HAVE_PTHREAD_SETAFFINITY_NP=0
+fi
+done
+
+ if test "x$HAVE_PTHREAD_SETAFFINITY_NP" = "x1"; then
+ HAVE_PTHREAD_SETAFFINITY_NP_TRUE=
+ HAVE_PTHREAD_SETAFFINITY_NP_FALSE='#'
+else
+ HAVE_PTHREAD_SETAFFINITY_NP_TRUE='#'
+ HAVE_PTHREAD_SETAFFINITY_NP_FALSE=
+fi
+
# X/OPEN
@@ -24202,15 +24694,27 @@ int result = 0;
#endif
/* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
provided. */
- if (/* Try standardized names. */
- iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
- /* Try IRIX, OSF/1 names. */
- && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
- /* Try AIX names. */
- && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
- /* Try HP-UX names. */
- && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
- result |= 16;
+ {
+ /* Try standardized names. */
+ iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
+ /* Try IRIX, OSF/1 names. */
+ iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
+ /* Try AIX names. */
+ iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
+ /* Try HP-UX names. */
+ iconv_t cd4 = iconv_open ("utf8", "eucJP");
+ if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
+ && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
+ result |= 16;
+ if (cd1 != (iconv_t)(-1))
+ iconv_close (cd1);
+ if (cd2 != (iconv_t)(-1))
+ iconv_close (cd2);
+ if (cd3 != (iconv_t)(-1))
+ iconv_close (cd3);
+ if (cd4 != (iconv_t)(-1))
+ iconv_close (cd4);
+ }
return result;
;
@@ -24300,13 +24804,15 @@ fi
$am_cv_proto_iconv" >&5
$as_echo "
$am_cv_proto_iconv" >&6; }
+ else
+ am_cv_proto_iconv_arg1=""
+ fi
cat >>confdefs.h <<_ACEOF
#define ICONV_CONST $am_cv_proto_iconv_arg1
_ACEOF
- fi
#### Linux memfd_create(2) SHM support ####
@@ -28305,27 +28811,27 @@ fi
# Put the nasty error message in config.log where it belongs
echo "$GSTREAMER_PKG_ERRORS" >&5
- HAVE_GSTREAMER=no
+ HAVE_GSTREAMER=0
elif test $pkg_failed = untried; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- HAVE_GSTREAMER=no
+ HAVE_GSTREAMER=0
else
GSTREAMER_CFLAGS=$pkg_cv_GSTREAMER_CFLAGS
GSTREAMER_LIBS=$pkg_cv_GSTREAMER_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- HAVE_GSTREAMER=yes
+ HAVE_GSTREAMER=1
fi
else
- HAVE_GSTREAMER=no
+ HAVE_GSTREAMER=0
fi
-if test "x$enable_gstreamer" = "xyes" && test "x$HAVE_GSTREAMER" = "xno"; then :
+if test "x$enable_gstreamer" = "xyes" && test "x$HAVE_GSTREAMER" = "x0"; then :
as_fn_error $? "*** GStreamer 1.0 support not found" "$LINENO" 5
fi
- if test "x$HAVE_GSTREAMER" = xyes; then
+ if test "x$HAVE_GSTREAMER" = x1; then
HAVE_GSTREAMER_TRUE=
HAVE_GSTREAMER_FALSE='#'
else
@@ -28333,7 +28839,7 @@ else
HAVE_GSTREAMER_FALSE=
fi
-if test "x$HAVE_GSTREAMER" = "xyes"; then :
+if test "x$HAVE_GSTREAMER" = "x1"; then :
$as_echo "#define HAVE_GSTREAMER 1" >>confdefs.h
@@ -29227,6 +29733,17 @@ $as_echo "#define ENABLE_LEGACY_DATABASE_ENTRY_FORMAT 1" >>confdefs.h
fi
+# Check whether --enable-stream-restore-clear-old-devices was given.
+if test "${enable_stream_restore_clear_old_devices+set}" = set; then :
+ enableval=$enable_stream_restore_clear_old_devices;
+fi
+
+if test "x$enable_stream_restore_clear_old_devices" == "xyes" ; then
+
+$as_echo "#define STREAM_RESTORE_CLEAR_OLD_DEVICES 1" >>confdefs.h
+
+fi
+
# Check whether --enable-static-bins was given.
if test "${enable_static_bins+set}" = set; then :
enableval=$enable_static_bins;
@@ -29295,6 +29812,17 @@ _ACEOF
+# Check whether --with-alsa-data-dir was given.
+if test "${with_alsa_data_dir+set}" = set; then :
+ withval=$with_alsa_data_dir; alsadatadir=$withval
+else
+ alsadatadir="${datadir}/pulseaudio/alsa-mixer"
+fi
+
+
+
+
+
# Check whether --with-udev-rules-dir was given.
if test "${with_udev_rules_dir+set}" = set; then :
withval=$with_udev_rules_dir; udevrulesdir=$withval
@@ -29351,6 +29879,13 @@ else
fi
+# Substitute the variable with an empty string. This makes the output go to the
+# directory where doxygen is run (which is the doxygen directory under the
+# build directory). Substituting a variable with a constant value wouldn't
+# otherwise make sense, but the substitution variable needs to exist, because
+# we substitute a different value when using Meson.
+
+
ac_config_files="$ac_config_files Makefile src/Makefile man/Makefile libpulse.pc libpulse-simple.pc libpulse-mainloop-glib.pc doxygen/Makefile doxygen/doxygen.conf src/pulse/version.h po/Makefile.in man/pulseaudio.1.xml man/pax11publish.1.xml man/pacat.1.xml man/pacmd.1.xml man/pactl.1.xml man/pasuspender.1.xml man/padsp.1.xml man/pulse-daemon.conf.5.xml man/pulse-client.conf.5.xml man/default.pa.5.xml man/pulse-cli-syntax.5.xml man/start-pulseaudio-x11.1.xml"
@@ -29601,6 +30136,10 @@ if test -z "${HAVE_MKFIFO_TRUE}" && test -z "${HAVE_MKFIFO_FALSE}"; then
as_fn_error $? "conditional \"HAVE_MKFIFO\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${HAVE_PTHREAD_SETAFFINITY_NP_TRUE}" && test -z "${HAVE_PTHREAD_SETAFFINITY_NP_FALSE}"; then
+ as_fn_error $? "conditional \"HAVE_PTHREAD_SETAFFINITY_NP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${HAVE_REGEX_TRUE}" && test -z "${HAVE_REGEX_FALSE}"; then
as_fn_error $? "conditional \"HAVE_REGEX\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -30190,7 +30729,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by pulseaudio $as_me 13.99.1, which was
+This file was extended by pulseaudio $as_me 13.99.2, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -30257,7 +30796,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-pulseaudio config.status 13.99.1
+pulseaudio config.status 13.99.2
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@@ -32595,6 +33134,11 @@ if test "x$enable_legacy_database_entry_format" != "xno"; then :
else
ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=no
fi
+if test "x$enable_stream_restore_clear_old_devices" == "xyes"; then :
+ ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=yes
+else
+ ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=no
+fi
echo "
---{ $PACKAGE_NAME $VERSION }---
@@ -32603,6 +33147,7 @@ echo "
sysconfdir: ${sysconfdir}
localstatedir: ${localstatedir}
modlibexecdir: ${modlibexecdir}
+ alsadatadir: ${alsadatadir}
System Runtime Path: ${PA_SYSTEM_RUNTIME_PATH}
System State Path: ${PA_SYSTEM_STATE_PATH}
System Config Path: ${PA_SYSTEM_CONFIG_PATH}
@@ -32666,6 +33211,8 @@ echo "
Preopened modules: ${PREOPEN_MODS}
Legacy Database Entry Support: ${ENABLE_LEGACY_DATABASE_ENTRY_FORMAT}
+ module-stream-restore:
+ Clear old devices: ${ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES}
"
if test "${ENABLE_SPEEX}" = "no" && test "${ENABLE_WEBRTC}" = "no" && test "${ENABLE_ADRIAN_EC}" = "no" ; then
diff --git a/configure.ac b/configure.ac
index 0ac5651..88a37c1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -42,11 +42,11 @@ AC_SUBST(PA_MINOR, pa_minor)
AC_SUBST(PA_MAJORMINOR, pa_major.pa_minor)
AC_SUBST(PA_API_VERSION, 12)
-AC_SUBST(PA_PROTOCOL_VERSION, 33)
+AC_SUBST(PA_PROTOCOL_VERSION, 34)
# The stable ABI for client applications, for the version info x:y:z
# always will hold x=z
-AC_SUBST(LIBPULSE_VERSION_INFO, [21:2:21])
+AC_SUBST(LIBPULSE_VERSION_INFO, [22:0:22])
# A simplified, synchronous, ABI-stable interface for client
# applications, for the version info x:y:z always will hold x=z
@@ -54,7 +54,7 @@ AC_SUBST(LIBPULSE_SIMPLE_VERSION_INFO, [1:1:1])
# The ABI-stable GLib adapter for client applications, for the version
# info x:y:z always will hold x=z
-AC_SUBST(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO, [0:5:0])
+AC_SUBST(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO, [0:6:0])
AC_CANONICAL_HOST
AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
@@ -101,7 +101,7 @@ PKG_PROG_PKG_CONFIG
# gettext
-AM_GNU_GETTEXT_VERSION([0.19.3])
+AM_GNU_GETTEXT_VERSION([0.19.8])
AM_GNU_GETTEXT([external])
GETTEXT_PACKAGE=pulseaudio
@@ -561,10 +561,12 @@ AC_FUNC_GETGROUPS
AC_CHECK_FUNCS_ONCE([chmod chown fstat fchown fchmod clock_gettime getaddrinfo getgrgid_r getgrnam_r \
getpwnam_r getpwuid_r gettimeofday getuid mlock nanosleep \
pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
- sigaction sleep symlink sysconf uname pthread_setaffinity_np pthread_getname_np pthread_setname_np])
+ sigaction sleep symlink sysconf uname pthread_getname_np pthread_setname_np])
AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
AC_SUBST(HAVE_MKFIFO)
AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
+AC_CHECK_FUNCS([pthread_setaffinity_np], [HAVE_PTHREAD_SETAFFINITY_NP=1], [HAVE_PTHREAD_SETAFFINITY_NP=0])
+AM_CONDITIONAL(HAVE_PTHREAD_SETAFFINITY_NP, test "x$HAVE_PTHREAD_SETAFFINITY_NP" = "x1")
# X/OPEN
AC_CHECK_FUNCS_ONCE([readlink])
@@ -1317,14 +1319,14 @@ AC_ARG_ENABLE([gstreamer],
AS_IF([test "x$enable_gstreamer" != "xno"],
[PKG_CHECK_MODULES(GSTREAMER, [ gstreamer-1.0 gstreamer-app-1.0 gstreamer-rtp-1.0 gio-2.0 ],
- HAVE_GSTREAMER=yes, HAVE_GSTREAMER=no)],
- HAVE_GSTREAMER=no)
+ HAVE_GSTREAMER=1, HAVE_GSTREAMER=0)],
+ HAVE_GSTREAMER=0)
-AS_IF([test "x$enable_gstreamer" = "xyes" && test "x$HAVE_GSTREAMER" = "xno"],
+AS_IF([test "x$enable_gstreamer" = "xyes" && test "x$HAVE_GSTREAMER" = "x0"],
[AC_MSG_ERROR([*** GStreamer 1.0 support not found])])
-AM_CONDITIONAL([HAVE_GSTREAMER], [test "x$HAVE_GSTREAMER" = xyes])
-AS_IF([test "x$HAVE_GSTREAMER" = "xyes"], AC_DEFINE([HAVE_GSTREAMER], 1, [Have GStreamer?]))
+AM_CONDITIONAL([HAVE_GSTREAMER], [test "x$HAVE_GSTREAMER" = x1])
+AS_IF([test "x$HAVE_GSTREAMER" = "x1"], AC_DEFINE([HAVE_GSTREAMER], 1, [Have GStreamer?]))
#### Build and Install man pages ####
@@ -1477,6 +1479,12 @@ if test "x$enable_legacy_database_entry_format" != "xno" ; then
AC_DEFINE(ENABLE_LEGACY_DATABASE_ENTRY_FORMAT, [1], [Legacy database entry format])
fi
+AC_ARG_ENABLE([stream-restore-clear-old-devices],
+ AS_HELP_STRING([--enable-stream-restore-clear-old-devices], [Forget per-stream routing settings that have been set before version 14.0. Recommended when using GNOME. See https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832]))
+if test "x$enable_stream_restore_clear_old_devices" == "xyes" ; then
+ AC_DEFINE(STREAM_RESTORE_CLEAR_OLD_DEVICES, [1], [module-stream-restore: Clear old devices])
+fi
+
AC_ARG_ENABLE([static-bins],
AS_HELP_STRING([--enable-static-bins],[Statically link executables.]))
AM_CONDITIONAL([STATIC_BINS], [test "x$enable_static_bins" = "xyes"])
@@ -1504,6 +1512,13 @@ AC_SUBST(modlibexecdir)
AX_DEFINE_DIR(PA_DLSEARCHPATH, modlibexecdir, [Modules dir])
AC_ARG_WITH(
+ [alsa-data-dir],
+ AS_HELP_STRING([--with-alsa-data-dir],[Directory for ALSA card profiles (defaults to ${datadir}/pulseaudio/alsa-mixer)]),
+ [alsadatadir=$withval], [alsadatadir="${datadir}/pulseaudio/alsa-mixer"])
+
+AC_SUBST(alsadatadir)
+
+AC_ARG_WITH(
[udev-rules-dir],
AS_HELP_STRING([--with-udev-rules-dir],[Directory where to install udev rules to (defaults to /lib/udev/rules.d)]),
[udevrulesdir=$withval], [udevrulesdir="/lib/udev/rules.d"])
@@ -1537,6 +1552,13 @@ fi
AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
+# Substitute the variable with an empty string. This makes the output go to the
+# directory where doxygen is run (which is the doxygen directory under the
+# build directory). Substituting a variable with a constant value wouldn't
+# otherwise make sense, but the substitution variable needs to exist, because
+# we substitute a different value when using Meson.
+AC_SUBST([DOXYGEN_OUTPUT_DIRECTORY], [])
+
AC_CONFIG_FILES([
Makefile
src/Makefile
@@ -1639,6 +1661,7 @@ AS_IF([test "x$HAVE_ESOUND" = "x1" -a "x$USE_PER_USER_ESOUND_SOCKET" = "x1"], EN
AS_IF([test "x$HAVE_GCOV" = "x1"], ENABLE_GCOV=yes, ENABLE_GCOV=no)
AS_IF([test "x$HAVE_LIBCHECK" = "x1"], ENABLE_TESTS=yes, ENABLE_TESTS=no)
AS_IF([test "x$enable_legacy_database_entry_format" != "xno"], ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=yes, ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=no)
+AS_IF([test "x$enable_stream_restore_clear_old_devices" == "xyes"], ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=yes, ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=no)
echo "
---{ $PACKAGE_NAME $VERSION }---
@@ -1647,6 +1670,7 @@ echo "
sysconfdir: ${sysconfdir}
localstatedir: ${localstatedir}
modlibexecdir: ${modlibexecdir}
+ alsadatadir: ${alsadatadir}
System Runtime Path: ${PA_SYSTEM_RUNTIME_PATH}
System State Path: ${PA_SYSTEM_STATE_PATH}
System Config Path: ${PA_SYSTEM_CONFIG_PATH}
@@ -1710,6 +1734,8 @@ echo "
Preopened modules: ${PREOPEN_MODS}
Legacy Database Entry Support: ${ENABLE_LEGACY_DATABASE_ENTRY_FORMAT}
+ module-stream-restore:
+ Clear old devices: ${ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES}
"
if test "${ENABLE_SPEEX}" = "no" && test "${ENABLE_WEBRTC}" = "no" && test "${ENABLE_ADRIAN_EC}" = "no" ; then
diff --git a/doxygen/Makefile.in b/doxygen/Makefile.in
index 3ea5da4..bb7c429 100644
--- a/doxygen/Makefile.in
+++ b/doxygen/Makefile.in
@@ -179,6 +179,7 @@ DBUS_LIBS = @DBUS_LIBS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
+DOXYGEN_OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
@@ -376,6 +377,7 @@ ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+alsadatadir = @alsadatadir@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
diff --git a/doxygen/doxygen.conf.in b/doxygen/doxygen.conf.in
index c195e7b..a97c165 100644
--- a/doxygen/doxygen.conf.in
+++ b/doxygen/doxygen.conf.in
@@ -52,7 +52,7 @@ PROJECT_LOGO =
# If a relative path is entered, it will be relative to the location
# where doxygen was started. If left blank the current directory will be used.
-OUTPUT_DIRECTORY =
+OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
# 4096 sub-directories (in 2 levels) under the output directory of each output
@@ -668,37 +668,37 @@ WARN_LOGFILE =
# directories like "/usr/src/myproject". Separate the files or directories
# with spaces.
-INPUT = @srcdir@/../src/pulse/channelmap.h \
- @srcdir@/../src/pulse/context.h \
- @srcdir@/../src/pulse/def.h \
- @srcdir@/../src/pulse/direction.h \
- @srcdir@/../src/pulse/error.h \
- @srcdir@/../src/pulse/ext-stream-restore.h \
- @srcdir@/../src/pulse/ext-device-manager.h \
- @srcdir@/../src/pulse/ext-device-restore.h \
- @srcdir@/../src/pulse/format.h \
- @srcdir@/../src/pulse/gccmacro.h \
- @srcdir@/../src/pulse/glib-mainloop.h \
- @srcdir@/../src/pulse/introspect.h \
- @srcdir@/../src/pulse/mainloop-api.h \
- @srcdir@/../src/pulse/mainloop-signal.h \
- @srcdir@/../src/pulse/mainloop.h \
- @srcdir@/../src/pulse/operation.h \
- @srcdir@/../src/pulse/proplist.h \
- @srcdir@/../src/pulse/pulseaudio.h \
- @srcdir@/../src/pulse/rtclock.h \
- @srcdir@/../src/pulse/sample.h \
- @srcdir@/../src/pulse/scache.h \
- @srcdir@/../src/pulse/simple.h \
- @srcdir@/../src/pulse/stream.h \
- @srcdir@/../src/pulse/subscribe.h \
- @srcdir@/../src/pulse/thread-mainloop.h \
- @srcdir@/../src/pulse/timeval.h \
- @srcdir@/../src/pulse/utf8.h \
- @srcdir@/../src/pulse/util.h \
- @srcdir@/../src/pulse/version.h \
- @srcdir@/../src/pulse/volume.h \
- @srcdir@/../src/pulse/xmalloc.h
+INPUT = @top_srcdir@/src/pulse/channelmap.h \
+ @top_srcdir@/src/pulse/context.h \
+ @top_srcdir@/src/pulse/def.h \
+ @top_srcdir@/src/pulse/direction.h \
+ @top_srcdir@/src/pulse/error.h \
+ @top_srcdir@/src/pulse/ext-stream-restore.h \
+ @top_srcdir@/src/pulse/ext-device-manager.h \
+ @top_srcdir@/src/pulse/ext-device-restore.h \
+ @top_srcdir@/src/pulse/format.h \
+ @top_srcdir@/src/pulse/gccmacro.h \
+ @top_srcdir@/src/pulse/glib-mainloop.h \
+ @top_srcdir@/src/pulse/introspect.h \
+ @top_srcdir@/src/pulse/mainloop-api.h \
+ @top_srcdir@/src/pulse/mainloop-signal.h \
+ @top_srcdir@/src/pulse/mainloop.h \
+ @top_srcdir@/src/pulse/operation.h \
+ @top_srcdir@/src/pulse/proplist.h \
+ @top_srcdir@/src/pulse/pulseaudio.h \
+ @top_srcdir@/src/pulse/rtclock.h \
+ @top_srcdir@/src/pulse/sample.h \
+ @top_srcdir@/src/pulse/scache.h \
+ @top_srcdir@/src/pulse/simple.h \
+ @top_srcdir@/src/pulse/stream.h \
+ @top_srcdir@/src/pulse/subscribe.h \
+ @top_srcdir@/src/pulse/thread-mainloop.h \
+ @top_srcdir@/src/pulse/timeval.h \
+ @top_srcdir@/src/pulse/utf8.h \
+ @top_srcdir@/src/pulse/util.h \
+ @top_srcdir@/src/pulse/version.h \
+ @top_srcdir@/src/pulse/volume.h \
+ @top_srcdir@/src/pulse/xmalloc.h
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
diff --git a/doxygen/meson.build b/doxygen/meson.build
new file mode 100644
index 0000000..afc0e49
--- /dev/null
+++ b/doxygen/meson.build
@@ -0,0 +1,10 @@
+cdata.set('DOXYGEN_OUTPUT_DIRECTORY', meson.current_build_dir())
+
+doxygen_conf = configure_file(
+ input : 'doxygen.conf.in',
+ output : 'doxygen.conf',
+ configuration : cdata,
+)
+
+run_target('doxygen',
+ command : ['doxygen', doxygen_conf])
diff --git a/m4/gettext.m4 b/m4/gettext.m4
index eef5073..4f25a27 100644
--- a/m4/gettext.m4
+++ b/m4/gettext.m4
@@ -1,15 +1,15 @@
-# gettext.m4 serial 68 (gettext-0.19.8)
-dnl Copyright (C) 1995-2014, 2016 Free Software Foundation, Inc.
+# gettext.m4 serial 71 (gettext-0.20.2)
+dnl Copyright (C) 1995-2014, 2016, 2018-2020 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl
dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
dnl License but which still want to provide support for the GNU gettext
dnl functionality.
dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
dnl gettext package is covered by the GNU General Public License.
dnl They are *not* in the public domain.
@@ -20,15 +20,13 @@ dnl Bruno Haible <haible@clisp.cons.org>, 2000-2006, 2008-2010.
dnl Macro to add for using GNU gettext.
dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
-dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
-dnl default (if it is not specified or empty) is 'no-libtool'.
-dnl INTLSYMBOL should be 'external' for packages with no intl directory,
-dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory.
+dnl INTLSYMBOL must be one of 'external', 'use-libtool'.
+dnl INTLSYMBOL should be 'external' for packages other than GNU gettext, and
+dnl 'use-libtool' for the packages 'gettext-runtime' and 'gettext-tools'.
dnl If INTLSYMBOL is 'use-libtool', then a libtool library
dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static,
dnl depending on --{enable,disable}-{shared,static} and on the presence of
-dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
-dnl $(top_builddir)/intl/libintl.a will be created.
+dnl AM-DISABLE-SHARED).
dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
dnl implementations (in libc or libintl) without the ngettext() function
dnl will be ignored. If NEEDSYMBOL is specified and is
@@ -57,19 +55,17 @@ dnl
AC_DEFUN([AM_GNU_GETTEXT],
[
dnl Argument checking.
- ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
+ ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [use-libtool], ,
[errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
-])])])])])
+])])])])
ifelse(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old],
- [AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])])
+ [errprint([ERROR: Use of AM_GNU_GETTEXT without [external] argument is no longer supported.
+])])
ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
[errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
])])])])
define([gt_included_intl],
- ifelse([$1], [external],
- ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]),
- [yes]))
- define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], []))
+ ifelse([$1], [external], [no], [yes]))
gt_NEEDS_INIT
AM_GNU_GETTEXT_NEED([$2])
@@ -91,8 +87,7 @@ AC_DEFUN([AM_GNU_GETTEXT],
dnl again, outside any 'if'. There are two solutions:
dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
- dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
- dnl documented, we avoid it.
+ dnl Since AC_PROVIDE_IFELSE is not documented, we avoid it.
ifelse(gt_included_intl, yes, , [
AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
])
@@ -278,8 +273,8 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
dnl Mark actions used to generate GNU NLS library.
BUILD_INCLUDED_LIBINTL=yes
USE_INCLUDED_LIBINTL=yes
- LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD"
- LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD"
+ LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.la $LIBICONV $LIBTHREAD"
+ LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.la $LTLIBICONV $LTLIBTHREAD"
LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
fi
@@ -347,43 +342,14 @@ return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
fi
ifelse(gt_included_intl, yes, [
- dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
- dnl to 'yes' because some of the testsuite requires it.
- if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
- BUILD_INCLUDED_LIBINTL=yes
- fi
+ dnl In GNU gettext we have to set BUILD_INCLUDED_LIBINTL to 'yes'
+ dnl because some of the testsuite requires it.
+ BUILD_INCLUDED_LIBINTL=yes
dnl Make all variables we use known to autoconf.
AC_SUBST([BUILD_INCLUDED_LIBINTL])
AC_SUBST([USE_INCLUDED_LIBINTL])
AC_SUBST([CATOBJEXT])
-
- dnl For backward compatibility. Some configure.ins may be using this.
- nls_cv_header_intl=
- nls_cv_header_libgt=
-
- dnl For backward compatibility. Some Makefiles may be using this.
- DATADIRNAME=share
- AC_SUBST([DATADIRNAME])
-
- dnl For backward compatibility. Some Makefiles may be using this.
- INSTOBJEXT=.mo
- AC_SUBST([INSTOBJEXT])
-
- dnl For backward compatibility. Some Makefiles may be using this.
- GENCAT=gencat
- AC_SUBST([GENCAT])
-
- dnl For backward compatibility. Some Makefiles may be using this.
- INTLOBJS=
- if test "$USE_INCLUDED_LIBINTL" = yes; then
- INTLOBJS="\$(GETTOBJS)"
- fi
- AC_SUBST([INTLOBJS])
-
- dnl Enable libtool support if the surrounding package wishes it.
- INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
- AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX])
])
dnl For backward compatibility. Some Makefiles may be using this.
diff --git a/m4/iconv.m4 b/m4/iconv.m4
index aa159c5..e593b72 100644
--- a/m4/iconv.m4
+++ b/m4/iconv.m4
@@ -1,5 +1,6 @@
-# iconv.m4 serial 19 (gettext-0.18.2)
-dnl Copyright (C) 2000-2002, 2007-2014, 2016 Free Software Foundation, Inc.
+# iconv.m4 serial 21
+dnl Copyright (C) 2000-2002, 2007-2014, 2016-2020 Free Software Foundation,
+dnl Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
@@ -167,15 +168,27 @@ AC_DEFUN([AM_ICONV_LINK],
#endif
/* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
provided. */
- if (/* Try standardized names. */
- iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
- /* Try IRIX, OSF/1 names. */
- && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
- /* Try AIX names. */
- && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
- /* Try HP-UX names. */
- && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
- result |= 16;
+ {
+ /* Try standardized names. */
+ iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
+ /* Try IRIX, OSF/1 names. */
+ iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
+ /* Try AIX names. */
+ iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
+ /* Try HP-UX names. */
+ iconv_t cd4 = iconv_open ("utf8", "eucJP");
+ if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
+ && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
+ result |= 16;
+ if (cd1 != (iconv_t)(-1))
+ iconv_close (cd1);
+ if (cd2 != (iconv_t)(-1))
+ iconv_close (cd2);
+ if (cd3 != (iconv_t)(-1))
+ iconv_close (cd3);
+ if (cd4 != (iconv_t)(-1))
+ iconv_close (cd4);
+ }
return result;
]])],
[am_cv_func_iconv_works=yes], ,
@@ -258,14 +271,18 @@ size_t iconv();
am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
AC_MSG_RESULT([
$am_cv_proto_iconv])
- AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1],
- [Define as const if the declaration of iconv() needs const.])
- dnl Also substitute ICONV_CONST in the gnulib generated <iconv.h>.
- m4_ifdef([gl_ICONV_H_DEFAULTS],
- [AC_REQUIRE([gl_ICONV_H_DEFAULTS])
- if test -n "$am_cv_proto_iconv_arg1"; then
- ICONV_CONST="const"
- fi
- ])
+ else
+ dnl When compiling GNU libiconv on a system that does not have iconv yet,
+ dnl pick the POSIX compliant declaration without 'const'.
+ am_cv_proto_iconv_arg1=""
fi
+ AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1],
+ [Define as const if the declaration of iconv() needs const.])
+ dnl Also substitute ICONV_CONST in the gnulib generated <iconv.h>.
+ m4_ifdef([gl_ICONV_H_DEFAULTS],
+ [AC_REQUIRE([gl_ICONV_H_DEFAULTS])
+ if test -n "$am_cv_proto_iconv_arg1"; then
+ ICONV_CONST="const"
+ fi
+ ])
])
diff --git a/m4/intlmacosx.m4 b/m4/intlmacosx.m4
index aca924c..ebd9937 100644
--- a/m4/intlmacosx.m4
+++ b/m4/intlmacosx.m4
@@ -1,15 +1,15 @@
-# intlmacosx.m4 serial 5 (gettext-0.18.2)
-dnl Copyright (C) 2004-2014, 2016 Free Software Foundation, Inc.
+# intlmacosx.m4 serial 8 (gettext-0.20.2)
+dnl Copyright (C) 2004-2014, 2016, 2019-2020 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl
dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
dnl License but which still want to provide support for the GNU gettext
dnl functionality.
dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
dnl gettext package is covered by the GNU General Public License.
dnl They are *not* in the public domain.
@@ -17,7 +17,7 @@ dnl Checks for special options needed on Mac OS X.
dnl Defines INTL_MACOSX_LIBS.
AC_DEFUN([gt_INTL_MACOSX],
[
- dnl Check for API introduced in Mac OS X 10.2.
+ dnl Check for API introduced in Mac OS X 10.4.
AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
[gt_cv_func_CFPreferencesCopyAppValue],
[gt_save_LIBS="$LIBS"
@@ -33,23 +33,32 @@ AC_DEFUN([gt_INTL_MACOSX],
AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1],
[Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
fi
- dnl Check for API introduced in Mac OS X 10.3.
- AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent],
+ dnl Don't check for the API introduced in Mac OS X 10.5, CFLocaleCopyCurrent,
+ dnl because in macOS 10.13.4 it has the following behaviour:
+ dnl When two or more languages are specified in the
+ dnl "System Preferences > Language & Region > Preferred Languages" panel,
+ dnl it returns en_CC where CC is the territory (even when English is not among
+ dnl the preferred languages!). What we want instead is what
+ dnl CFLocaleCopyCurrent returned in earlier macOS releases and what
+ dnl CFPreferencesCopyAppValue still returns, namely ll_CC where ll is the
+ dnl first among the preferred languages and CC is the territory.
+ AC_CACHE_CHECK([for CFLocaleCopyPreferredLanguages], [gt_cv_func_CFLocaleCopyPreferredLanguages],
[gt_save_LIBS="$LIBS"
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
AC_LINK_IFELSE(
[AC_LANG_PROGRAM(
[[#include <CoreFoundation/CFLocale.h>]],
- [[CFLocaleCopyCurrent();]])],
- [gt_cv_func_CFLocaleCopyCurrent=yes],
- [gt_cv_func_CFLocaleCopyCurrent=no])
+ [[CFLocaleCopyPreferredLanguages();]])],
+ [gt_cv_func_CFLocaleCopyPreferredLanguages=yes],
+ [gt_cv_func_CFLocaleCopyPreferredLanguages=no])
LIBS="$gt_save_LIBS"])
- if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
- AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1],
- [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
+ if test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
+ AC_DEFINE([HAVE_CFLOCALECOPYPREFERREDLANGUAGES], [1],
+ [Define to 1 if you have the Mac OS X function CFLocaleCopyPreferredLanguages in the CoreFoundation framework.])
fi
INTL_MACOSX_LIBS=
- if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes \
+ || test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then
INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
fi
AC_SUBST([INTL_MACOSX_LIBS])
diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4
index 6209de6..98c348f 100644
--- a/m4/lib-ld.m4
+++ b/m4/lib-ld.m4
@@ -1,5 +1,5 @@
-# lib-ld.m4 serial 6
-dnl Copyright (C) 1996-2003, 2009-2016 Free Software Foundation, Inc.
+# lib-ld.m4 serial 9
+dnl Copyright (C) 1996-2003, 2009-2020 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
@@ -47,73 +47,122 @@ if test "${PATH_SEPARATOR+set}" != set; then
}
fi
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
+if test -n "$LD"; then
+ AC_MSG_CHECKING([for ld])
+elif test "$GCC" = yes; then
AC_MSG_CHECKING([for ld used by $CC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]]* | ?:[[\\/]]*)
- re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`echo "$ac_prog"| sed 's%\\\\%/%g'`
- while echo "$ac_prog" | grep "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
elif test "$with_gnu_ld" = yes; then
AC_MSG_CHECKING([for GNU ld])
else
AC_MSG_CHECKING([for non-GNU ld])
fi
-AC_CACHE_VAL([acl_cv_path_LD],
-[if test -z "$LD"; then
- acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$acl_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- acl_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
+if test -n "$LD"; then
+ # Let the user override the test with a path.
+ :
+else
+ AC_CACHE_VAL([acl_cv_path_LD],
+ [
+ acl_cv_path_LD= # Final result of this test
+ ac_prog=ld # Program to search in $PATH
+ if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ acl_output=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $acl_output in
+ # Accept absolute paths.
+ [[\\/]]* | ?:[[\\/]]*)
+ re_direlt='/[[^/]][[^/]]*/\.\./'
+ # Canonicalize the pathname of ld
+ acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'`
+ while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do
+ acl_output=`echo $acl_output | sed "s%$re_direlt%/%"`
+ done
+ # Got the pathname. No search in PATH is needed.
+ acl_cv_path_LD="$acl_output"
+ ac_prog=
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
esac
fi
- done
- IFS="$acl_save_ifs"
-else
- acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$acl_cv_path_LD"
+ if test -n "$ac_prog"; then
+ # Search for $ac_prog in $PATH.
+ acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$acl_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ acl_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some variants of GNU ld only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$acl_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_ifs"
+ fi
+ case $host in
+ *-*-aix*)
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __powerpc64__ || defined _ARCH_PPC64
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [# The compiler produces 64-bit code. Add option '-b64' so that the
+ # linker groks 64-bit object files.
+ case "$acl_cv_path_LD " in
+ *" -b64 "*) ;;
+ *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;;
+ esac
+ ], [])
+ ;;
+ sparc64-*-netbsd*)
+ AC_COMPILE_IFELSE(
+ [AC_LANG_SOURCE(
+ [[#if defined __sparcv9 || defined __arch64__
+ int ok;
+ #else
+ error fail
+ #endif
+ ]])],
+ [],
+ [# The compiler produces 32-bit code. Add option '-m elf32_sparc'
+ # so that the linker groks 32-bit object files.
+ case "$acl_cv_path_LD " in
+ *" -m elf32_sparc "*) ;;
+ *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;;
+ esac
+ ])
+ ;;
+ esac
+ ])
+ LD="$acl_cv_path_LD"
+fi
if test -n "$LD"; then
AC_MSG_RESULT([$LD])
else
AC_MSG_RESULT([no])
+ AC_MSG_ERROR([no acceptable ld found in \$PATH])
fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
AC_LIB_PROG_LD_GNU
])
diff --git a/m4/lib-link.m4 b/m4/lib-link.m4
index 2f51855..eecf70e 100644
--- a/m4/lib-link.m4
+++ b/m4/lib-link.m4
@@ -1,12 +1,12 @@
-# lib-link.m4 serial 26 (gettext-0.18.2)
-dnl Copyright (C) 2001-2016 Free Software Foundation, Inc.
+# lib-link.m4 serial 31
+dnl Copyright (C) 2001-2020 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl From Bruno Haible.
-AC_PREREQ([2.54])
+AC_PREREQ([2.61])
dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
dnl the libraries corresponding to explicit and implicit dependencies.
@@ -124,8 +124,8 @@ dnl acl_hardcode_direct,
dnl acl_hardcode_minus_L.
AC_DEFUN([AC_LIB_RPATH],
[
- dnl Tell automake >= 1.10 to complain if config.rpath is missing.
- m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
+ dnl Complain if config.rpath is missing.
+ AC_REQUIRE_AUX_FILE([config.rpath])
AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
@@ -187,17 +187,17 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-],
[ABCDEFGHIJKLMNOPQRSTUVWXYZ____])])
pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])])
- dnl Autoconf >= 2.61 supports dots in --with options.
- pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[m4_translit(PACK,[.],[_])],PACK)])
dnl By default, look in $includedir and $libdir.
use_additional=yes
AC_LIB_WITH_FINAL_PREFIX([
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
])
- AC_ARG_WITH(P_A_C_K[-prefix],
-[[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib
- --without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]],
+ AC_ARG_WITH(PACK[-prefix],
+[[ --with-]]PACK[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib
+ --without-]]PACK[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]],
[
if test "X$withval" = "Xno"; then
use_additional=no
@@ -206,17 +206,23 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
AC_LIB_WITH_FINAL_PREFIX([
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\"
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\"
])
else
additional_includedir="$withval/include"
additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && ! test -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
+ additional_libdir2="$withval/$acl_libdirstem2"
+ additional_libdir3="$withval/$acl_libdirstem3"
fi
fi
])
+ if test "X$additional_libdir2" = "X$additional_libdir"; then
+ additional_libdir2=
+ fi
+ if test "X$additional_libdir3" = "X$additional_libdir"; then
+ additional_libdir3=
+ fi
dnl Search the library and its dependencies in $additional_libdir and
dnl $LDFLAGS. Using breadth-first-seach.
LIB[]NAME=
@@ -272,48 +278,54 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
shrext=
fi
if test $use_additional = yes; then
- dir="$additional_libdir"
- dnl The same code as in the loop below:
- dnl First look for a shared library.
- if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext"
- else
- if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
- ver=`(cd "$dir" && \
- for f in "$libname$shrext".*; do echo "$f"; done \
- | sed -e "s,^$libname$shrext\\\\.,," \
- | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
- | sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
- found_dir="$dir"
- found_so="$dir/$libname$shrext.$ver"
+ for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do
+ if test "X$found_dir" = "X"; then
+ eval dir=\$$additional_libdir_variable
+ if test -n "$dir"; then
+ dnl The same code as in the loop below:
+ dnl First look for a shared library.
+ if test -n "$acl_shlibext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext"
+ else
+ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
+ ver=`(cd "$dir" && \
+ for f in "$libname$shrext".*; do echo "$f"; done \
+ | sed -e "s,^$libname$shrext\\\\.,," \
+ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
+ | sed 1q ) 2>/dev/null`
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
+ found_dir="$dir"
+ found_so="$dir/$libname$shrext.$ver"
+ fi
+ else
+ eval library_names=\"$acl_library_names_spec\"
+ for f in $library_names; do
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
+ found_dir="$dir"
+ found_so="$dir/$f"
+ break
+ fi
+ done
+ fi
+ fi
fi
- else
- eval library_names=\"$acl_library_names_spec\"
- for f in $library_names; do
- if test -f "$dir/$f"; then
+ dnl Then look for a static library.
+ if test "X$found_dir" = "X"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
- found_so="$dir/$f"
- break
+ found_a="$dir/$libname.$acl_libext"
fi
- done
+ fi
+ if test "X$found_dir" != "X"; then
+ if test -f "$dir/$libname.la"; then
+ found_la="$dir/$libname.la"
+ fi
+ fi
fi
fi
- fi
- dnl Then look for a static library.
- if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
- found_dir="$dir"
- found_a="$dir/$libname.$acl_libext"
- fi
- fi
- if test "X$found_dir" != "X"; then
- if test -f "$dir/$libname.la"; then
- found_la="$dir/$libname.la"
- fi
- fi
+ done
fi
if test "X$found_dir" = "X"; then
for x in $LDFLAGS $LTLIB[]NAME; do
@@ -323,7 +335,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
dir=`echo "X$x" | sed -e 's/^X-L//'`
dnl First look for a shared library.
if test -n "$acl_shlibext"; then
- if test -f "$dir/$libname$shrext"; then
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then
found_dir="$dir"
found_so="$dir/$libname$shrext"
else
@@ -333,14 +345,14 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
| sed -e "s,^$libname$shrext\\\\.,," \
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
| sed 1q ) 2>/dev/null`
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then
found_dir="$dir"
found_so="$dir/$libname$shrext.$ver"
fi
else
eval library_names=\"$acl_library_names_spec\"
for f in $library_names; do
- if test -f "$dir/$f"; then
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then
found_dir="$dir"
found_so="$dir/$f"
break
@@ -351,7 +363,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
fi
dnl Then look for a static library.
if test "X$found_dir" = "X"; then
- if test -f "$dir/$libname.$acl_libext"; then
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then
found_dir="$dir"
found_a="$dir/$libname.$acl_libext"
fi
@@ -377,7 +389,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
dnl standard /usr/lib.
if test "$enable_rpath" = no \
|| test "X$found_dir" = "X/usr/$acl_libdirstem" \
- || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then
dnl No hardcoding is needed.
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
else
@@ -477,6 +490,13 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
fi
additional_includedir="$basedir/include"
;;
+ */$acl_libdirstem3 | */$acl_libdirstem3/)
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'`
+ if test "$name" = '$1'; then
+ LIB[]NAME[]_PREFIX="$basedir"
+ fi
+ additional_includedir="$basedir/include"
+ ;;
esac
if test "X$additional_includedir" != "X"; then
dnl Potentially add $additional_includedir to $INCNAME.
@@ -527,19 +547,21 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
for dep in $dependency_libs; do
case "$dep" in
-L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
+ dnl Potentially add $dependency_libdir to $LIBNAME and $LTLIBNAME.
dnl But don't add it
dnl 1. if it's the standard /usr/lib,
dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
dnl 3. if it's already present in $LDFLAGS or the already
dnl constructed $LIBNAME,
dnl 4. if it doesn't exist as a directory.
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then
haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \
+ || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then
if test -n "$GCC"; then
case $host_os in
linux* | gnu* | k*bsd*-gnu) haveit=yes;;
@@ -550,29 +572,29 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
haveit=
for x in $LDFLAGS $LIB[]NAME; do
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LIBNAME.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ dnl Really add $dependency_libdir to $LIBNAME.
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$dependency_libdir"
fi
fi
haveit=
for x in $LDFLAGS $LTLIB[]NAME; do
AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
+ if test "X$x" = "X-L$dependency_libdir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LTLIBNAME.
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
+ if test -d "$dependency_libdir"; then
+ dnl Really add $dependency_libdir to $LTLIBNAME.
+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$dependency_libdir"
fi
fi
fi
@@ -670,7 +692,6 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
done
fi
- popdef([P_A_C_K])
popdef([PACKLIBS])
popdef([PACKUP])
popdef([PACK])
@@ -721,7 +742,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
dir="$next"
dnl No need to hardcode the standard /usr/lib.
if test "X$dir" != "X/usr/$acl_libdirstem" \
- && test "X$dir" != "X/usr/$acl_libdirstem2"; then
+ && test "X$dir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dir" != "X/usr/$acl_libdirstem3"; then
rpathdirs="$rpathdirs $dir"
fi
next=
@@ -731,7 +753,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
-L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
dnl No need to hardcode the standard /usr/lib.
if test "X$dir" != "X/usr/$acl_libdirstem" \
- && test "X$dir" != "X/usr/$acl_libdirstem2"; then
+ && test "X$dir" != "X/usr/$acl_libdirstem2" \
+ && test "X$dir" != "X/usr/$acl_libdirstem3"; then
rpathdirs="$rpathdirs $dir"
fi
next= ;;
diff --git a/m4/lib-prefix.m4 b/m4/lib-prefix.m4
index 1601cea..c8a0b46 100644
--- a/m4/lib-prefix.m4
+++ b/m4/lib-prefix.m4
@@ -1,18 +1,11 @@
-# lib-prefix.m4 serial 7 (gettext-0.18)
-dnl Copyright (C) 2001-2005, 2008-2010 Free Software Foundation, Inc.
+# lib-prefix.m4 serial 17
+dnl Copyright (C) 2001-2005, 2008-2020 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl From Bruno Haible.
-dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
-dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
-dnl require excessive bracketing.
-ifdef([AC_HELP_STRING],
-[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
-[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
-
dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
dnl to access previously installed libraries. The basic assumption is that
dnl a user will want packages to use other packages he previously installed
@@ -32,9 +25,9 @@ AC_DEFUN([AC_LIB_PREFIX],
eval additional_includedir=\"$includedir\"
eval additional_libdir=\"$libdir\"
])
- AC_LIB_ARG_WITH([lib-prefix],
-[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
- --without-lib-prefix don't search for libraries in includedir and libdir],
+ AC_ARG_WITH([lib-prefix],
+[[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
+ --without-lib-prefix don't search for libraries in includedir and libdir]],
[
if test "X$withval" = "Xno"; then
use_additional=no
@@ -154,71 +147,174 @@ AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
])
dnl AC_LIB_PREPARE_MULTILIB creates
-dnl - a variable acl_libdirstem, containing the basename of the libdir, either
-dnl "lib" or "lib64" or "lib/64",
-dnl - a variable acl_libdirstem2, as a secondary possible value for
-dnl acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or
-dnl "lib/amd64".
+dnl - a function acl_is_expected_elfclass, that tests whether standard input
+dn; has a 32-bit or 64-bit ELF header, depending on the host CPU ABI,
+dnl - 3 variables acl_libdirstem, acl_libdirstem2, acl_libdirstem3, containing
+dnl the basename of the libdir to try in turn, either "lib" or "lib64" or
+dnl "lib/64" or "lib32" or "lib/sparcv9" or "lib/amd64" or similar.
AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
[
- dnl There is no formal standard regarding lib and lib64.
- dnl On glibc systems, the current practice is that on a system supporting
+ dnl There is no formal standard regarding lib, lib32, and lib64.
+ dnl On most glibc systems, the current practice is that on a system supporting
dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
- dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine
- dnl the compiler's default mode by looking at the compiler's library search
- dnl path. If at least one of its elements ends in /lib64 or points to a
- dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI.
- dnl Otherwise we use the default, namely "lib".
+ dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. However, on
+ dnl Arch Linux based distributions, it's the opposite: 32-bit libraries go
+ dnl under $prefix/lib32 and 64-bit libraries go under $prefix/lib.
+ dnl We determine the compiler's default mode by looking at the compiler's
+ dnl library search path. If at least one of its elements ends in /lib64 or
+ dnl points to a directory whose absolute pathname ends in /lib64, we use that
+ dnl for 64-bit ABIs. Similarly for 32-bit ABIs. Otherwise we use the default,
+ dnl namely "lib".
dnl On Solaris systems, the current practice is that on a system supporting
dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or
dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib.
AC_REQUIRE([AC_CANONICAL_HOST])
- acl_libdirstem=lib
- acl_libdirstem2=
- case "$host_os" in
- solaris*)
- dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
- dnl <http://docs.sun.com/app/docs/doc/816-5138/dev-env?l=en&a=view>.
- dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
- dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
- dnl symlink is missing, so we set acl_libdirstem2 too.
- AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit],
- [AC_EGREP_CPP([sixtyfour bits], [
-#ifdef _LP64
-sixtyfour bits
-#endif
- ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no])
- ])
- if test $gl_cv_solaris_64bit = yes; then
- acl_libdirstem=lib/64
- case "$host_cpu" in
- sparc*) acl_libdirstem2=lib/sparcv9 ;;
- i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
- esac
- fi
- ;;
- *)
- searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
- if test -n "$searchpath"; then
- acl_save_IFS="${IFS= }"; IFS=":"
- for searchdir in $searchpath; do
- if test -d "$searchdir"; then
- case "$searchdir" in
- */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
- */../ | */.. )
- # Better ignore directories of this form. They are misleading.
- ;;
- *) searchdir=`cd "$searchdir" && pwd`
- case "$searchdir" in
- */lib64 ) acl_libdirstem=lib64 ;;
- esac ;;
- esac
- fi
- done
- IFS="$acl_save_IFS"
- fi
- ;;
- esac
- test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
+ AC_REQUIRE([gl_HOST_CPU_C_ABI_32BIT])
+
+ AC_CACHE_CHECK([for ELF binary format], [gl_cv_elf],
+ [AC_EGREP_CPP([Extensible Linking Format],
+ [#ifdef __ELF__
+ Extensible Linking Format
+ #endif
+ ],
+ [gl_cv_elf=yes],
+ [gl_cv_elf=no])
+ ])
+ if test $gl_cv_elf; then
+ # Extract the ELF class of a file (5th byte) in decimal.
+ # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header
+ if od -A x < /dev/null >/dev/null 2>/dev/null; then
+ # Use POSIX od.
+ func_elfclass ()
+ {
+ od -A n -t d1 -j 4 -N 1
+ }
+ else
+ # Use BSD hexdump.
+ func_elfclass ()
+ {
+ dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "'
+ echo
+ }
+ fi
+changequote(,)dnl
+ case $HOST_CPU_C_ABI_32BIT in
+ yes)
+ # 32-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ test "`func_elfclass | sed -e 's/[ ]//g'`" = 1
+ }
+ ;;
+ no)
+ # 64-bit ABI.
+ acl_is_expected_elfclass ()
+ {
+ test "`func_elfclass | sed -e 's/[ ]//g'`" = 2
+ }
+ ;;
+ *)
+ # Unknown.
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ ;;
+ esac
+changequote([,])dnl
+ else
+ acl_is_expected_elfclass ()
+ {
+ :
+ }
+ fi
+
+ dnl Allow the user to override the result by setting acl_cv_libdirstems.
+ AC_CACHE_CHECK([for the common suffixes of directories in the library search path],
+ [acl_cv_libdirstems],
+ [dnl Try 'lib' first, because that's the default for libdir in GNU, see
+ dnl <https://www.gnu.org/prep/standards/html_node/Directory-Variables.html>.
+ acl_libdirstem=lib
+ acl_libdirstem2=
+ acl_libdirstem3=
+ case "$host_os" in
+ solaris*)
+ dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
+ dnl <https://docs.oracle.com/cd/E19253-01/816-5138/dev-env/index.html>.
+ dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
+ dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
+ dnl symlink is missing, so we set acl_libdirstem2 too.
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ acl_libdirstem2=lib/64
+ case "$host_cpu" in
+ sparc*) acl_libdirstem3=lib/sparcv9 ;;
+ i*86 | x86_64) acl_libdirstem3=lib/amd64 ;;
+ esac
+ fi
+ ;;
+ *)
+ dnl If $CC generates code for a 32-bit ABI, the libraries are
+ dnl surely under $prefix/lib or $prefix/lib32, not $prefix/lib64.
+ dnl Similarly, if $CC generates code for a 64-bit ABI, the libraries
+ dnl are surely under $prefix/lib or $prefix/lib64, not $prefix/lib32.
+ dnl Find the compiler's search path. However, non-system compilers
+ dnl sometimes have odd library search paths. But we can't simply invoke
+ dnl '/usr/bin/gcc -print-search-dirs' because that would not take into
+ dnl account the -m32/-m31 or -m64 options from the $CC or $CFLAGS.
+ searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \
+ | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+ if test $HOST_CPU_C_ABI_32BIT != no; then
+ # 32-bit or unknown ABI.
+ if test -d /usr/lib32; then
+ acl_libdirstem2=lib32
+ fi
+ fi
+ if test $HOST_CPU_C_ABI_32BIT != yes; then
+ # 64-bit or unknown ABI.
+ if test -d /usr/lib64; then
+ acl_libdirstem3=lib64
+ fi
+ fi
+ if test -n "$searchpath"; then
+ acl_save_IFS="${IFS= }"; IFS=":"
+ for searchdir in $searchpath; do
+ if test -d "$searchdir"; then
+ case "$searchdir" in
+ */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;;
+ */../ | */.. )
+ # Better ignore directories of this form. They are misleading.
+ ;;
+ *) searchdir=`cd "$searchdir" && pwd`
+ case "$searchdir" in
+ */lib32 ) acl_libdirstem2=lib32 ;;
+ */lib64 ) acl_libdirstem3=lib64 ;;
+ esac ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_IFS"
+ if test $HOST_CPU_C_ABI_32BIT = yes; then
+ # 32-bit ABI.
+ acl_libdirstem3=
+ fi
+ if test $HOST_CPU_C_ABI_32BIT = no; then
+ # 64-bit ABI.
+ acl_libdirstem2=
+ fi
+ fi
+ ;;
+ esac
+ test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
+ test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem"
+ acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3"
+ ])
+ dnl Decompose acl_cv_libdirstems into acl_libdirstem, acl_libdirstem2, and
+ dnl acl_libdirstem3.
+changequote(,)dnl
+ acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
+ acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'`
+ acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'`
+changequote([,])dnl
])
diff --git a/m4/nls.m4 b/m4/nls.m4
index 003704c..5a506fc 100644
--- a/m4/nls.m4
+++ b/m4/nls.m4
@@ -1,17 +1,17 @@
-# nls.m4 serial 5 (gettext-0.18)
-dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation,
-dnl Inc.
+# nls.m4 serial 6 (gettext-0.20.2)
+dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014, 2016, 2019-2020 Free
+dnl Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl
-dnl This file can can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl This file can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Lesser General Public
dnl License but which still want to provide support for the GNU gettext
dnl functionality.
dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package package is covered by the GNU General Public License.
+dnl by the GNU Lesser General Public License, and the rest of the GNU
+dnl gettext package is covered by the GNU General Public License.
dnl They are *not* in the public domain.
dnl Authors:
diff --git a/m4/progtest.m4 b/m4/progtest.m4
index 9ace7c3..f28010a 100644
--- a/m4/progtest.m4
+++ b/m4/progtest.m4
@@ -1,15 +1,15 @@
-# progtest.m4 serial 7 (gettext-0.18.2)
-dnl Copyright (C) 1996-2003, 2005, 2008-2016 Free Software Foundation, Inc.
+# progtest.m4 serial 8 (gettext-0.20.2)
+dnl Copyright (C) 1996-2003, 2005, 2008-2020 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl
dnl This file can be used in projects which are not available under
-dnl the GNU General Public License or the GNU Library General Public
+dnl the GNU General Public License or the GNU Lesser General Public
dnl License but which still want to provide support for the GNU gettext
dnl functionality.
dnl Please note that the actual code of the GNU gettext library is covered
-dnl by the GNU Library General Public License, and the rest of the GNU
+dnl by the GNU Lesser General Public License, and the rest of the GNU
dnl gettext package is covered by the GNU General Public License.
dnl They are *not* in the public domain.
diff --git a/man/Makefile.in b/man/Makefile.in
index 0026d18..f83b19e 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -228,6 +228,7 @@ DBUS_LIBS = @DBUS_LIBS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
+DOXYGEN_OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
@@ -425,6 +426,7 @@ ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+alsadatadir = @alsadatadir@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
diff --git a/man/pacat.1 b/man/pacat.1
index aa5f8eb..2a8e9bc 100644
--- a/man/pacat.1
+++ b/man/pacat.1
@@ -57,7 +57,7 @@ Specify the initial playback volume to use. Choose a value between 0 (silent) an
Capture or play back audio with the specified sample rate. Defaults to 44100 Hz.
.TP
\fB--format\f1\fI=FORMAT\f1
-Capture or play back audio with the specified sample format. Specify one of \fBu8\f1, \fBs16le\f1, \fBs16be\f1, \fBs32le\f1, \fBs32be\f1, \fBfloat32le\f1, \fBfloat32be\f1, \fBulaw\f1, \fBalaw\f1, \fBs32le\f1, \fBs32be\f1, \fBs24le\f1, \fBs24be\f1, \fBs24-32le\f1, \fBs24-32be\f1. Depending on the endianness of the CPU the formats \fBs16ne\f1, \fBs16re\f1, \fBs32ne\f1, \fBs32re\f1, \fBfloat32ne\f1, \fBfloat32re\f1, \fBs32ne\f1, \fBs32re\f1, \fBs24ne\f1, \fBs24re\f1, \fBs24-32ne\f1, \fBs24-32re\f1 (for native, resp. reverse endian) are available as aliases. Defaults to s16ne.
+Capture or play back audio with the specified sample format. See https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/ for supported values. Defaults to s16ne.
.TP
\fB--channels\f1\fI=CHANNELS\f1
Capture or play back audio with the specified number of channels. If more than two channels are used it is recommended to use the \fB--channel-map\f1 option below. Defaults to 2.
diff --git a/man/pacat.1.xml.in b/man/pacat.1.xml.in
index bfef710..8fcb51d 100644
--- a/man/pacat.1.xml.in
+++ b/man/pacat.1.xml.in
@@ -116,18 +116,9 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<p><opt>--format</opt><arg>=FORMAT</arg></p>
<optdesc><p>Capture or play back audio with the specified sample
- format. Specify one of <opt>u8</opt>, <opt>s16le</opt>,
- <opt>s16be</opt>, <opt>s32le</opt>, <opt>s32be</opt>,
- <opt>float32le</opt>, <opt>float32be</opt>, <opt>ulaw</opt>,
- <opt>alaw</opt>, <opt>s32le</opt>, <opt>s32be</opt>,
- <opt>s24le</opt>, <opt>s24be</opt>, <opt>s24-32le</opt>,
- <opt>s24-32be</opt>. Depending on the endianness of the CPU the
- formats <opt>s16ne</opt>, <opt>s16re</opt>, <opt>s32ne</opt>,
- <opt>s32re</opt>, <opt>float32ne</opt>, <opt>float32re</opt>,
- <opt>s32ne</opt>, <opt>s32re</opt>, <opt>s24ne</opt>,
- <opt>s24re</opt>, <opt>s24-32ne</opt>, <opt>s24-32re</opt> (for
- native, resp. reverse endian) are available as aliases. Defaults
- to s16ne.</p></optdesc>
+ format. See
+ https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/
+ for supported values. Defaults to s16ne.</p></optdesc>
</option>
<option>
diff --git a/man/pactl.1 b/man/pactl.1
index 139e0a6..d5e15ee 100644
--- a/man/pactl.1
+++ b/man/pactl.1
@@ -110,7 +110,7 @@ Set the mute status of the specified sink input (identified by its numerical ind
Set the mute status of the specified source output (identified by its numerical index).
.TP
\fBset-sink-formats\f1 \fISINK\f1 \fIFORMATS\f1
-Set the supported formats of the specified sink (identified by its numerical index) if supported by the sink. \fIFORMATS\f1 is specified as a semi-colon (;) separated list of formats in the form 'encoding[, key1=value1, key2=value2, ...]' (for example, AC3 at 32000, 44100 and 48000 Hz would be specified as 'ac3-iec61937, format.rate = "[ 32000, 44100, 48000 ]"').
+Set the supported formats of the specified sink (identified by its numerical index) if supported by the sink. \fIFORMATS\f1 is specified as a semi-colon (;) separated list of formats in the form 'encoding[, key1=value1, key2=value2, ...]' (for example, AC3 at 32000, 44100 and 48000 Hz would be specified as 'ac3-iec61937, format.rate = "[ 32000, 44100, 48000 ]"'). See https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/ for possible encodings.
.TP
\fBsubscribe\f1
Subscribe to events, pactl does not exit by itself, but keeps waiting for new events.
diff --git a/man/pactl.1.xml.in b/man/pactl.1.xml.in
index 71c2826..cff628f 100644
--- a/man/pactl.1.xml.in
+++ b/man/pactl.1.xml.in
@@ -243,11 +243,15 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<option>
<p><opt>set-sink-formats</opt> <arg>SINK</arg> <arg>FORMATS</arg></p>
- <optdesc><p>Set the supported formats of the specified sink (identified by its numerical index) if supported by the sink.
- <arg>FORMATS</arg> is specified as a semi-colon (;) separated list of formats in the form
- 'encoding[, key1=value1, key2=value2, ...]' (for example, AC3 at 32000, 44100 and 48000 Hz would be specified as
- 'ac3-iec61937, format.rate = "[ 32000, 44100, 48000 ]"').
- </p></optdesc> </option>
+ <optdesc><p>Set the supported formats of the specified sink (identified
+ by its numerical index) if supported by the sink. <arg>FORMATS</arg> is
+ specified as a semi-colon (;) separated list of formats in the form
+ 'encoding[, key1=value1, key2=value2, ...]' (for example, AC3 at 32000,
+ 44100 and 48000 Hz would be specified as
+ 'ac3-iec61937, format.rate = "[ 32000, 44100, 48000 ]"'). See
+ https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/
+ for possible encodings. </p></optdesc>
+ </option>
<option>
<p><opt>subscribe</opt></p>
diff --git a/man/pulse-client.conf.5 b/man/pulse-client.conf.5
index fdf3888..75fe18c 100644
--- a/man/pulse-client.conf.5
+++ b/man/pulse-client.conf.5
@@ -24,7 +24,7 @@ For the settings that take a boolean argument the values \fBtrue\f1, \fByes\f1,
.TP
\fBdefault-server=\f1 The default sever to connect to. The environment variable \fB$PULSE_SERVER\f1 takes precedence.
.TP
-\fBautospawn=\f1 Autospawn a PulseAudio daemon when needed. Takes a boolean value, defaults to \fByes\f1.
+\fBautospawn=\f1 Autospawn a PulseAudio daemon when needed. Takes a boolean value, defaults to \fByes\f1. Note that setting this to "no" doesn't disable the systemd service. The autospawn option is only meant to be used on systems without systemd. If you use systemd to start PulseAudio, use "systemctl --user stop pulseaudio.service pulseaudio.socket" to stop the daemon temporarily, or "systemctl --user mask pulseaudio.service pulseaudio.socket" to permanently disable the units (the "disable" command of systemctl probably won't work, because the pulseaudio.socket unit is often installed to /usr/lib/systemd/user/sockets.target.wants/, which makes it impossible to disable the unit with the "disable" command).
.TP
\fBdaemon-binary=\f1 Path to the PulseAudio daemon to run when autospawning. Defaults to a path configured at compile time.
.TP
diff --git a/man/pulse-client.conf.5.xml.in b/man/pulse-client.conf.5.xml.in
index b88898c..5c0eff3 100644
--- a/man/pulse-client.conf.5.xml.in
+++ b/man/pulse-client.conf.5.xml.in
@@ -77,8 +77,17 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
</option>
<option>
- <p><opt>autospawn=</opt> Autospawn a PulseAudio daemon when
- needed. Takes a boolean value, defaults to <opt>yes</opt>.</p>
+ <p><opt>autospawn=</opt> Autospawn a PulseAudio daemon when needed. Takes
+ a boolean value, defaults to <opt>yes</opt>. Note that setting this to
+ "no" doesn't disable the systemd service. The autospawn option is only
+ meant to be used on systems without systemd. If you use systemd to start
+ PulseAudio, use "systemctl --user stop pulseaudio.service
+ pulseaudio.socket" to stop the daemon temporarily, or "systemctl --user
+ mask pulseaudio.service pulseaudio.socket" to permanently disable the
+ units (the "disable" command of systemctl probably won't work, because
+ the pulseaudio.socket unit is often installed to
+ /usr/lib/systemd/user/sockets.target.wants/, which makes it impossible to
+ disable the unit with the "disable" command).</p>
</option>
<option>
diff --git a/man/pulse-daemon.conf.5 b/man/pulse-daemon.conf.5
index b2f34ac..7e3fd7b 100644
--- a/man/pulse-daemon.conf.5
+++ b/man/pulse-daemon.conf.5
@@ -20,7 +20,7 @@ The configuration file is a simple collection of variable declarations. If the c
For the settings that take a boolean argument the values \fBtrue\f1, \fByes\f1, \fBon\f1 and \fB1\f1 are equivalent, resp. \fBfalse\f1, \fBno\f1, \fBoff\f1, \fB0\f1.
.SH GENERAL DIRECTIVES
.TP
-\fBdaemonize= \f1 Daemonize after startup. Takes a boolean value, defaults to \fBno\f1. The \fB--daemonize\f1 command line option takes precedence.
+\fBdaemonize=\f1 Daemonize after startup. Takes a boolean value, defaults to \fBno\f1. The \fB--daemonize\f1 command line option takes precedence.
.TP
\fBfail=\f1 Fail to start up if any of the directives in the configuration script \fIdefault.pa\f1 fail. Takes a boolean argument, defaults to \fByes\f1. The \fB--fail\f1 command line option takes precedence.
.TP
@@ -32,7 +32,7 @@ For the settings that take a boolean argument the values \fBtrue\f1, \fByes\f1,
.TP
\fBavoid-resampling=\f1 If set, try to configure the device to avoid resampling. This only works on devices which support reconfiguring their rate, and when no other streams are already playing or capturing audio. The device will also not be configured to a rate less than the default and alternate sample rates.
.TP
-\fBenable-remixing=\f1 If disabled never upmix or downmix channels to different channel maps. Instead, do a simple name-based matching only. Defaults to \fByes.\f1
+\fBenable-remixing=\f1 If disabled never upmix or downmix channels to different channel maps. Instead, do a simple name-based matching only. Defaults to \fByes\f1. There is no known valid use case for setting this option to \fBno\f1, therefore, this option is deprecated and may be removed in a future version of PulseAudio.
.TP
\fBremixing-use-all-sink-channels=\f1 If enabled, use all sink channels when remixing. Otherwise, remix to the minimal set of sink channels needed to reproduce all of the source channels. (This has no effect on LFE remixing.) Defaults to \fByes\f1.
.TP
@@ -76,7 +76,7 @@ For the settings that take a boolean argument the values \fBtrue\f1, \fByes\f1,
.TP
\fBexit-idle-time=\f1 Terminate the daemon after the last client quit and this time in seconds passed. Use a negative value to disable this feature. Defaults to 20. The \fB--exit-idle-time\f1 command line option takes precedence.
-When PulseAudio runs in the per-user mode and detects a login session, then any positive value will be reset to 0 so that PulseAudio will terminate immediately on logout. A positive value therefore has effect only in environments where there's no support for login session tracking. A negative value can still be used to disable any automatic exit.
+When PulseAudio runs in the per-user mode and detects a login session, then any positive value will be reset to 0 so that PulseAudio will terminate immediately on logout. A positive value therefore has effect only in environments where there's no support for login session tracking (or if the user is logged in without a session spawned, a.k.a. lingering). A negative value can still be used to disable any automatic exit.
When PulseAudio runs in the system mode, automatic exit is always disabled, so this option does nothing.
.TP
@@ -134,7 +134,7 @@ See \fBgetrlimit(2)\f1 for more information. Set to -1 if PulseAudio shall not t
.SH DEFAULT DEVICE SETTINGS
Most drivers try to open the audio device with these settings and then fall back to lower settings. The default settings are CD quality: 16bit native endian, 2 channels, 44100 Hz sampling.
.TP
-\fBdefault-sample-format=\f1 The default sampling format. Specify one of \fBu8\f1, \fBs16le\f1, \fBs16be\f1, \fBs24le\f1, \fBs24be\f1, \fBs24-32le\f1, \fBs24-32be\f1, \fBs32le\f1, \fBs32be\f1 \fBfloat32le\f1, \fBfloat32be\f1, \fBulaw\f1, \fBalaw\f1. Depending on the endianness of the CPU the formats \fBs16ne\f1, \fBs16re\f1, \fBs24ne\f1, \fBs24re\f1, \fBs24-32ne\f1, \fBs24-32re\f1, \fBs32ne\f1, \fBs32re\f1, \fBfloat32ne\f1, \fBfloat32re\f1 (for native, resp. reverse endian) are available as aliases.
+\fBdefault-sample-format=\f1 The default sampling format. See https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/ for possible values.
.TP
\fBdefault-sample-rate=\f1 The default sample frequency.
.TP
diff --git a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
index e64b20f..52223fb 100644
--- a/man/pulse-daemon.conf.5.xml.in
+++ b/man/pulse-daemon.conf.5.xml.in
@@ -61,7 +61,7 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<section name="General Directives">
<option>
- <p><opt>daemonize= </opt> Daemonize after startup. Takes a
+ <p><opt>daemonize=</opt> Daemonize after startup. Takes a
boolean value, defaults to <opt>no</opt>. The <opt>--daemonize</opt>
command line option takes precedence.</p>
</option>
@@ -135,7 +135,10 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<option>
<p><opt>enable-remixing=</opt> If disabled never upmix or
downmix channels to different channel maps. Instead, do a simple
- name-based matching only. Defaults to <opt>yes.</opt></p>
+ name-based matching only. Defaults to <opt>yes</opt>.
+ There is no known valid use case for setting this option to
+ <opt>no</opt>, therefore, this option is deprecated and may be
+ removed in a future version of PulseAudio.</p>
</option>
<option>
@@ -323,7 +326,8 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
session, then any positive value will be reset to 0 so that PulseAudio
will terminate immediately on logout. A positive value therefore has
effect only in environments where there's no support for login session
- tracking. A negative value can still be used to disable any automatic
+ tracking (or if the user is logged in without a session spawned, a.k.a.
+ lingering). A negative value can still be used to disable any automatic
exit.</p>
<p>When PulseAudio runs in the system mode, automatic exit is always
@@ -487,16 +491,9 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<option>
<p><opt>default-sample-format=</opt> The default sampling
- format. Specify one of <opt>u8</opt>, <opt>s16le</opt>,
- <opt>s16be</opt>, <opt>s24le</opt>, <opt>s24be</opt>,
- <opt>s24-32le</opt>, <opt>s24-32be</opt>, <opt>s32le</opt>,
- <opt>s32be</opt> <opt>float32le</opt>, <opt>float32be</opt>,
- <opt>ulaw</opt>, <opt>alaw</opt>. Depending on the endianness of
- the CPU the formats <opt>s16ne</opt>, <opt>s16re</opt>,
- <opt>s24ne</opt>, <opt>s24re</opt>, <opt>s24-32ne</opt>,
- <opt>s24-32re</opt>, <opt>s32ne</opt>, <opt>s32re</opt>,
- <opt>float32ne</opt>, <opt>float32re</opt> (for native,
- resp. reverse endian) are available as aliases.</p>
+ format. See
+ https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/
+ for possible values.</p>
</option>
<option>
diff --git a/man/pulseaudio.1 b/man/pulseaudio.1
index 27aa054..b9cb89a 100644
--- a/man/pulseaudio.1
+++ b/man/pulseaudio.1
@@ -52,6 +52,10 @@ Kill an already running PulseAudio daemon of the calling user (Equivalent to sen
.TP
\fB--check\f1
Return 0 as return code when the PulseAudio daemon is already running for the calling user, or non-zero otherwise. Produces no output on the console except for errors to stderr.
+
+Note that a non-zero return value doesn't necessarily mean that PulseAudio is not usable. Even if the server is not running, it may get automatically started via PulseAudio's autospawning mechanism or systemd's socket activation, or the environment might be such that checking for processes doesn't work (for example, the running server might not show up in a container, even if the server is accessible via a socket). Also disabling PID files with \fB--use-pid-file=no\f1 prevents \fB--check\f1 from detecting running servers.
+
+A more robust check in most situations would be to try establishing a client connection to the server. Unfortunately there's currently no \fB--check-connection\f1 option to replace \fB--check\f1, but running "pactl info" could be a pretty good substitute.
.TP
\fB--system\f1\fI[=BOOL]\f1
Run as system-wide instance instead of per-user. Please note that this disables certain features of PulseAudio and is generally not recommended unless the system knows no local users (e.g. is a thin client). This feature needs special configuration and a dedicated UNIX user set up. It is highly recommended to combine this with \fB--disallow-module-loading\f1 (see below).
@@ -77,7 +81,7 @@ Disallow user requested exit
\fB--exit-idle-time\f1\fI=SECS\f1
Terminate the daemon after the last client quit and this time in seconds passed. Use a negative value to disable this feature. Defaults to 20.
-When PulseAudio runs in the per-user mode and detects a login session, then any positive value will be reset to 0 so that PulseAudio will terminate immediately on logout. A positive value therefore has effect only in environments where there's no support for login session tracking. A negative value can still be used to disable any automatic exit.
+When PulseAudio runs in the per-user mode and detects a login session, then any positive value will be reset to 0 so that PulseAudio will terminate immediately on logout. A positive value therefore has effect only in environments where there's no support for login session tracking (or if the user is logged in without a session spawned, a.k.a. lingering). A negative value can still be used to disable any automatic exit.
When PulseAudio runs in the system mode, automatic exit is always disabled, so this option does nothing.
.TP
diff --git a/man/pulseaudio.1.xml.in b/man/pulseaudio.1.xml.in
index fdfb6e7..996bee0 100644
--- a/man/pulseaudio.1.xml.in
+++ b/man/pulseaudio.1.xml.in
@@ -110,7 +110,23 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
<optdesc><p>Return 0 as return code when the PulseAudio daemon
is already running for the calling user, or non-zero
otherwise. Produces no output on the console except for errors
- to stderr.</p></optdesc>
+ to stderr.</p>
+
+ <p>Note that a non-zero return value doesn't necessarily mean that
+ PulseAudio is not usable. Even if the server is not running, it
+ may get automatically started via PulseAudio's autospawning
+ mechanism or systemd's socket activation, or the environment might
+ be such that checking for processes doesn't work (for example, the
+ running server might not show up in a container, even if the
+ server is accessible via a socket). Also disabling PID files with
+ <opt>--use-pid-file=no</opt> prevents <opt>--check</opt> from
+ detecting running servers.</p>
+
+ <p>A more robust check in most situations would be to try
+ establishing a client connection to the server. Unfortunately
+ there's currently no <opt>--check-connection</opt> option to
+ replace <opt>--check</opt>, but running "pactl info" could be a
+ pretty good substitute.</p></optdesc>
</option>
@@ -196,8 +212,9 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
session, then any positive value will be reset to 0 so that PulseAudio
will terminate immediately on logout. A positive value therefore has
effect only in environments where there's no support for login session
- tracking. A negative value can still be used to disable any automatic
- exit.</p>
+ tracking (or if the user is logged in without a session spawned,
+ a.k.a. lingering). A negative value can still be used to disable any
+ automatic exit.</p>
<p>When PulseAudio runs in the system mode, automatic exit is always
disabled, so this option does nothing.</p>
diff --git a/meson.build b/meson.build
index 88394e4..02c4d99 100644
--- a/meson.build
+++ b/meson.build
@@ -19,11 +19,11 @@ endif
pa_version_major_minor = pa_version_major + '.' + pa_version_minor
pa_api_version = 12
-pa_protocol_version = 33
+pa_protocol_version = 34
# The stable ABI for client applications, for the version info x:y:z
# always will hold x=z
-libpulse_version_info = [21, 2, 21]
+libpulse_version_info = [22, 0, 22]
# A simplified, synchronous, ABI-stable interface for client
# applications, for the version info x:y:z always will hold x=z
@@ -31,7 +31,7 @@ libpulse_simple_version_info = [1, 1, 1]
# The ABI-stable GLib adapter for client applications, for the version
# info x:y:z always will hold x=z
-libpulse_mainloop_glib_version_info = [0, 5, 0]
+libpulse_mainloop_glib_version_info = [0, 6, 0]
libpulse_version = '@0@.@1@.@2@'.format(
libpulse_version_info[0] - libpulse_version_info[2],
@@ -66,7 +66,11 @@ localedir = join_paths(prefix, get_option('localedir'))
localstatedir = join_paths(prefix, get_option('localstatedir'))
sysconfdir = join_paths(prefix, get_option('sysconfdir'))
privlibdir = join_paths(libdir, 'pulseaudio')
-alsadatadir = join_paths(datadir, 'pulseaudio', 'alsa-mixer')
+
+alsadatadir = get_option('alsadatadir')
+if alsadatadir == ''
+ alsadatadir = join_paths(datadir, 'pulseaudio', 'alsa-mixer')
+endif
pkgconfigdir = join_paths(libdir, 'pkgconfig')
pulselibexecdir = join_paths(libexecdir, 'pulse')
@@ -147,6 +151,7 @@ cdata.set_quoted('DESKTOPFILEDIR', join_paths(datadir, 'applications'))
cdata.set_quoted('PULSE_LOCALEDIR', localedir)
cdata.set_quoted('GETTEXT_PACKAGE', 'pulseaudio')
cdata.set('ENABLE_NLS', 1)
+cdata.set('top_srcdir', meson.source_root())
# Platform specifics
# First some defaults to keep config file generation happy
@@ -292,7 +297,7 @@ foreach f : check_functions
endif
endforeach
-if cc.has_function('SYS_memfd_create', prefix : '#include <sys/syscall.h>')
+if cc.has_header_symbol('sys/syscall.h', 'SYS_memfd_create')
cdata.set('HAVE_MEMFD', 1)
endif
@@ -522,6 +527,10 @@ if get_option('legacy-database-entry-format')
cdata.set('ENABLE_LEGACY_DATABASE_ENTRY_FORMAT', 1)
endif
+if get_option('stream-restore-clear-old-devices')
+ cdata.set('STREAM_RESTORE_CLEAR_OLD_DEVICES', 1)
+endif
+
if get_option('running-from-build-tree')
cdata.set('HAVE_RUNNING_FROM_BUILD_TREE', 1)
endif
@@ -691,6 +700,7 @@ check_dep = dependency('check', version : '>= 0.9.10', required : get_option('te
# Subdirs
+subdir('doxygen')
subdir('po')
if get_option('man')
subdir('man')
@@ -784,6 +794,7 @@ summary = [
'sysconfdir: @0@'.format(sysconfdir),
'localstatedir: @0@'.format(localstatedir),
'modlibexecdir: @0@'.format(modlibexecdir),
+ 'alsadatadir: @0@'.format(alsadatadir),
'System Runtime Path: @0@'.format(cdata.get_unquoted('PA_SYSTEM_RUNTIME_PATH')),
'System State Path: @0@'.format(cdata.get_unquoted('PA_SYSTEM_STATE_PATH')),
'System Config Path: @0@'.format(cdata.get_unquoted('PA_SYSTEM_CONFIG_PATH')),
@@ -835,6 +846,8 @@ summary = [
'',
'Database: @0@'.format(get_option('database')),
'Legacy Database Entry Support: @0@'.format(get_option('legacy-database-entry-format')),
+ 'module-stream-restore:',
+ ' Clear old devices: @0@'.format(get_option('stream-restore-clear-old-devices')),
'Running from build tree: @0@'.format(get_option('running-from-build-tree')),
'System User: @0@'.format(cdata.get_unquoted('PA_SYSTEM_USER')),
'System Group: @0@'.format(cdata.get_unquoted('PA_SYSTEM_GROUP')),
diff --git a/meson_options.txt b/meson_options.txt
index 8178892..8f8a383 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -24,6 +24,9 @@ option('database',
option('legacy-database-entry-format',
type : 'boolean',
description : 'Try to load legacy (< 1.0) database files (card, device and volume restore)')
+option('stream-restore-clear-old-devices',
+ type : 'boolean', value : false,
+ description : 'Forget per-stream routing settings that have been set before version 14.0. Recommended when using GNOME. See https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832')
option('running-from-build-tree',
type : 'boolean',
description : 'Enable running from build tree')
@@ -48,6 +51,9 @@ option('pulsedsp-location',
option('modlibexecdir',
type : 'string',
description : 'Specify location where modules will be installed')
+option('alsadatadir',
+ type : 'string',
+ description : 'Directory for ALSA card profiles (defaults to ${datadir}/pulseaudio/alsa-mixer)')
option('systemduserunitdir',
type : 'string',
description : 'Directory for systemd user service files')
diff --git a/po/.gitignore b/po/.gitignore
index ac92226..50b9d8d 100644
--- a/po/.gitignore
+++ b/po/.gitignore
@@ -6,7 +6,6 @@
/en@boldquot.header
/en@quot.header
/insert-header.sin
-/pulseaudio.pot
/quot.sed
/remove-potcdate.*
/*.mo
diff --git a/po/LINGUAS b/po/LINGUAS
index 5f951db..4f92bf2 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1,6 +1,7 @@
af
as
be
+bg
bn_IN
ca
cs
@@ -20,6 +21,7 @@ hu
id
it
ja
+kk
kn
ko
lt
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index 65184f6..38c293d 100644
--- a/po/Makefile.in.in
+++ b/po/Makefile.in.in
@@ -1,14 +1,12 @@
# Makefile for PO directory in any package using GNU gettext.
# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
#
-# This file can be copied and used freely without restrictions. It can
-# be used in projects which are not available under the GNU General Public
-# License but which still want to provide support for the GNU gettext
-# functionality.
-# Please note that the actual code of GNU gettext is covered by the GNU
-# General Public License and is *not* in the public domain.
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved. This file is offered as-is,
+# without any warranty.
#
-# Origin: gettext-0.19
+# Origin: gettext-0.19.8
GETTEXT_MACRO_VERSION = 0.19
PACKAGE = @PACKAGE@
@@ -45,6 +43,11 @@ install_sh = $(SHELL) @install_sh@
MKDIR_P = @MKDIR_P@
mkdir_p = @mkdir_p@
+# When building gettext-tools, we prefer to use the built programs
+# rather than installed programs. However, we can't do that when we
+# are cross compiling.
+CROSS_COMPILING = @CROSS_COMPILING@
+
GMSGFMT_ = @GMSGFMT@
GMSGFMT_no = @GMSGFMT@
GMSGFMT_yes = @GMSGFMT_015@
@@ -197,6 +200,11 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
;; \
esac
test ! -f $(DOMAIN).po || { \
+ if test -f $(srcdir)/$(DOMAIN).pot-header; then \
+ sed -e '1,/^#$$/d' < $(DOMAIN).po > $(DOMAIN).1po && \
+ cat $(srcdir)/$(DOMAIN).pot-header $(DOMAIN).1po > $(DOMAIN).po; \
+ rm -f $(DOMAIN).1po; \
+ fi; \
if test -f $(srcdir)/$(DOMAIN).pot; then \
sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \
sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \
@@ -226,7 +234,7 @@ $(POFILES): $(POFILESDEPS)
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
cd $(srcdir) \
- && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+ && { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
'' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \
*) \
@@ -427,7 +435,7 @@ update-po: Makefile
.nop.po-update:
@lang=`echo $@ | sed -e 's/\.po-update$$//'`; \
- if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \
+ if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" != "yes"; then PATH=`pwd`/../src:$$PATH; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
diff --git a/po/Rules-quot b/po/Rules-quot
index 9dc9630..baf6528 100644
--- a/po/Rules-quot
+++ b/po/Rules-quot
@@ -15,7 +15,7 @@ en@boldquot.po-update: en@boldquot.po-update-en
.insert-header.po-update-en:
@lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \
- if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
+ if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" != "yes"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
ll=`echo $$lang | sed -e 's/@.*//'`; \
diff --git a/po/af.gmo b/po/af.gmo
index 4333131..92ee4ad 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/as.gmo b/po/as.gmo
index 80c4746..d7505cd 100644
--- a/po/as.gmo
+++ b/po/as.gmo
Binary files differ
diff --git a/po/be.gmo b/po/be.gmo
index 8cd7beb..c34e292 100644
--- a/po/be.gmo
+++ b/po/be.gmo
Binary files differ
diff --git a/po/bg.gmo b/po/bg.gmo
new file mode 100644
index 0000000..3f0bc8a
--- /dev/null
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
new file mode 100644
index 0000000..3f37090
--- /dev/null
+++ b/po/bg.po
@@ -0,0 +1,2712 @@
+# Valentin Laskov <laskov@festa.bg>, 2016. #zanata
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2015-10-06 16:57+0200\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"PO-Revision-Date: 2016-02-03 09:58+0000\n"
+"Last-Translator: Valentin Laskov <laskov@festa.bg>\n"
+"Language-Team: Bulgarian\n"
+"Language: bg\n"
+"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+
+#: ../src/daemon/cmdline.c:111
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+"COMMANDS:\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" --dump-conf Dump default configuration\n"
+" --dump-modules Dump list of available modules\n"
+" --dump-resample-methods Dump available resample methods\n"
+" --cleanup-shm Cleanup stale shared memory segments\n"
+" --start Start the daemon if it is not "
+"running\n"
+" -k --kill Kill a running daemon\n"
+" --check Check for a running daemon (only "
+"returns exit code)\n"
+"\n"
+"OPTIONS:\n"
+" --system[=BOOL] Run as system-wide instance\n"
+" -D, --daemonize[=BOOL] Daemonize after startup\n"
+" --fail[=BOOL] Quit when startup fails\n"
+" --high-priority[=BOOL] Try to set high nice level\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_NICE)\n"
+" --realtime[=BOOL] Try to enable realtime scheduling\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_RTPRIO)\n"
+" --disallow-module-loading[=BOOL] Disallow module user requested "
+"module\n"
+" loading/unloading after startup\n"
+" --disallow-exit[=BOOL] Disallow user requested exit\n"
+" --exit-idle-time=SECS Terminate the daemon when idle and "
+"this\n"
+" time passed\n"
+" --scache-idle-time=SECS Unload autoloaded samples when idle "
+"and\n"
+" this time passed\n"
+" --log-level[=LEVEL] Increase or set verbosity level\n"
+" -v --verbose Increase the verbosity level\n"
+" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
+" Specify the log target\n"
+" --log-meta[=BOOL] Include code location in log "
+"messages\n"
+" --log-time[=BOOL] Include timestamps in log messages\n"
+" --log-backtrace=FRAMES Include a backtrace in log messages\n"
+" -p, --dl-search-path=PATH Set the search path for dynamic "
+"shared\n"
+" objects (plugins)\n"
+" --resample-method=METHOD Use the specified resampling method\n"
+" (See --dump-resample-methods for\n"
+" possible values)\n"
+" --use-pid-file[=BOOL] Create a PID file\n"
+" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
+" platforms that support it.\n"
+" --disable-shm[=BOOL] Disable shared memory support.\n"
+"\n"
+"STARTUP SCRIPT:\n"
+" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
+"with\n"
+" the specified argument\n"
+" -F, --file=FILENAME Run the specified script\n"
+" -C Open a command line on the running "
+"TTY\n"
+" after startup\n"
+"\n"
+" -n Don't load default script file\n"
+msgstr ""
+
+#: ../src/daemon/cmdline.c:243
+msgid "--daemonize expects boolean argument"
+msgstr "--daemonize очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:251
+msgid "--fail expects boolean argument"
+msgstr "--fail очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:262
+msgid ""
+"--log-level expects log level argument (either numeric in range 0..4 or one "
+"of debug, info, notice, warn, error)."
+msgstr ""
+"--log-level очаква като аргумент ниво на диагностичност (цифра от 0 до 4 или "
+"някое от debug, info, notice, warn, error)."
+
+#: ../src/daemon/cmdline.c:274
+msgid "--high-priority expects boolean argument"
+msgstr "--high-priority очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:282
+msgid "--realtime expects boolean argument"
+msgstr "--realtime очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:290
+msgid "--disallow-module-loading expects boolean argument"
+msgstr "--disallow-module-loading очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:298
+msgid "--disallow-exit expects boolean argument"
+msgstr "--disallow-exit очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:306
+msgid "--use-pid-file expects boolean argument"
+msgstr "--use-pid-file очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:325
+msgid ""
+"Invalid log target: use either 'syslog', 'journal','stderr' or 'auto' or a "
+"valid file name 'file:<path>', 'newfile:<path>'."
+msgstr ""
+
+#: ../src/daemon/cmdline.c:327
+msgid ""
+"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
+"name 'file:<path>', 'newfile:<path>'."
+msgstr ""
+
+#: ../src/daemon/cmdline.c:335
+msgid "--log-time expects boolean argument"
+msgstr "--log-time очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:343
+msgid "--log-meta expects boolean argument"
+msgstr "--log-meta очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:363
+#, c-format
+msgid "Invalid resample method '%s'."
+msgstr ""
+
+#: ../src/daemon/cmdline.c:370
+msgid "--system expects boolean argument"
+msgstr "--system очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:378
+msgid "--no-cpu-limit expects boolean argument"
+msgstr "--no-cpu-limit очаква булева стойност"
+
+#: ../src/daemon/cmdline.c:386
+msgid "--disable-shm expects boolean argument"
+msgstr "--disable-shm очаква булева стойност"
+
+#: ../src/daemon/daemon-conf.c:258
+#, c-format
+msgid "[%s:%u] Invalid log target '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:273
+#, c-format
+msgid "[%s:%u] Invalid log level '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:288
+#, c-format
+msgid "[%s:%u] Invalid resample method '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:310
+#, c-format
+msgid "[%s:%u] Invalid rlimit '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:330
+#, c-format
+msgid "[%s:%u] Invalid sample format '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:347 ../src/daemon/daemon-conf.c:364
+#, c-format
+msgid "[%s:%u] Invalid sample rate '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:387
+#, c-format
+msgid "[%s:%u] Invalid sample channels '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:404
+#, c-format
+msgid "[%s:%u] Invalid channel map '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:421
+#, c-format
+msgid "[%s:%u] Invalid number of fragments '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:438
+#, c-format
+msgid "[%s:%u] Invalid fragment size '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:455
+#, c-format
+msgid "[%s:%u] Invalid nice level '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:498
+#, c-format
+msgid "[%s:%u] Invalid server type '%s'."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:611
+#, c-format
+msgid "Failed to open configuration file: %s"
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:627
+msgid ""
+"The specified default channel map has a different number of channels than "
+"the specified default number of channels."
+msgstr ""
+
+#: ../src/daemon/daemon-conf.c:714
+#, c-format
+msgid "### Read from configuration file: %s ###\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:57
+#, c-format
+msgid "Name: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:60
+#, c-format
+msgid "No module information available\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:63
+#, c-format
+msgid "Version: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:65
+#, c-format
+msgid "Description: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:67
+#, c-format
+msgid "Author: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:69
+#, c-format
+msgid "Usage: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:70
+#, c-format
+msgid "Load Once: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:72
+#, c-format
+msgid "DEPRECATION WARNING: %s\n"
+msgstr ""
+
+#: ../src/daemon/dumpmodules.c:76
+#, c-format
+msgid "Path: %s\n"
+msgstr ""
+
+#: ../src/daemon/ltdl-bind-now.c:75
+#, c-format
+msgid "Failed to open module %s: %s"
+msgstr ""
+
+#: ../src/daemon/ltdl-bind-now.c:126
+msgid "Failed to find original lt_dlopen loader."
+msgstr ""
+
+#: ../src/daemon/ltdl-bind-now.c:131
+msgid "Failed to allocate new dl loader."
+msgstr ""
+
+#: ../src/daemon/ltdl-bind-now.c:144
+msgid "Failed to add bind-now-loader."
+msgstr ""
+
+#: ../src/daemon/main.c:160
+#, c-format
+msgid "Failed to find user '%s'."
+msgstr ""
+
+#: ../src/daemon/main.c:165
+#, c-format
+msgid "Failed to find group '%s'."
+msgstr ""
+
+#: ../src/daemon/main.c:174
+#, c-format
+msgid "GID of user '%s' and of group '%s' don't match."
+msgstr ""
+
+#: ../src/daemon/main.c:179
+#, c-format
+msgid "Home directory of user '%s' is not '%s', ignoring."
+msgstr ""
+
+#: ../src/daemon/main.c:182 ../src/daemon/main.c:187
+#, c-format
+msgid "Failed to create '%s': %s"
+msgstr ""
+
+#: ../src/daemon/main.c:194
+#, c-format
+msgid "Failed to change group list: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:210
+#, c-format
+msgid "Failed to change GID: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:226
+#, c-format
+msgid "Failed to change UID: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:255
+msgid "System wide mode unsupported on this platform."
+msgstr ""
+
+#: ../src/daemon/main.c:484
+msgid "Failed to parse command line."
+msgstr ""
+
+#: ../src/daemon/main.c:523
+msgid ""
+"System mode refused for non-root user. Only starting the D-Bus server lookup "
+"service."
+msgstr ""
+
+#: ../src/daemon/main.c:622
+#, c-format
+msgid "Failed to kill daemon: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:651
+msgid ""
+"This program is not intended to be run as root (unless --system is "
+"specified)."
+msgstr ""
+
+#: ../src/daemon/main.c:654
+msgid "Root privileges required."
+msgstr ""
+
+#: ../src/daemon/main.c:661
+msgid "--start not supported for system instances."
+msgstr ""
+
+#: ../src/daemon/main.c:701
+#, c-format
+msgid "User-configured server at %s, refusing to start/autospawn."
+msgstr ""
+
+#: ../src/daemon/main.c:707
+#, c-format
+msgid ""
+"User-configured server at %s, which appears to be local. Probing deeper."
+msgstr ""
+
+#: ../src/daemon/main.c:712
+msgid "Running in system mode, but --disallow-exit not set!"
+msgstr ""
+
+#: ../src/daemon/main.c:715
+msgid "Running in system mode, but --disallow-module-loading not set!"
+msgstr ""
+
+#: ../src/daemon/main.c:718
+msgid "Running in system mode, forcibly disabling SHM mode!"
+msgstr ""
+
+#: ../src/daemon/main.c:723
+msgid "Running in system mode, forcibly disabling exit idle time!"
+msgstr ""
+
+#: ../src/daemon/main.c:756
+msgid "Failed to acquire stdio."
+msgstr ""
+
+#: ../src/daemon/main.c:762 ../src/daemon/main.c:833
+#, c-format
+msgid "pipe() failed: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:767 ../src/daemon/main.c:838
+#, c-format
+msgid "fork() failed: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:782 ../src/daemon/main.c:853 ../src/utils/pacat.c:567
+#, c-format
+msgid "read() failed: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:788
+msgid "Daemon startup failed."
+msgstr ""
+
+#: ../src/daemon/main.c:821
+#, c-format
+msgid "setsid() failed: %s"
+msgstr ""
+
+#: ../src/daemon/main.c:948
+msgid "Failed to get machine ID"
+msgstr ""
+
+#: ../src/daemon/main.c:974
+msgid ""
+"OK, so you are running PA in system mode. Please note that you most likely "
+"shouldn't be doing that.\n"
+"If you do it nonetheless then it's your own fault if things don't work as "
+"expected.\n"
+"Please read http://www.freedesktop.org/wiki/Software/PulseAudio/"
+"Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system "
+"mode is usually a bad idea."
+msgstr ""
+
+#: ../src/daemon/main.c:991
+msgid "pa_pid_file_create() failed."
+msgstr ""
+
+#: ../src/daemon/main.c:1021
+msgid "pa_core_new() failed."
+msgstr ""
+
+#: ../src/daemon/main.c:1088
+msgid "Failed to initialize daemon."
+msgstr ""
+
+#: ../src/daemon/main.c:1093
+msgid "Daemon startup without any loaded modules, refusing to work."
+msgstr ""
+
+#: ../src/daemon/pulseaudio.desktop.in.h:1
+msgid "PulseAudio Sound System"
+msgstr ""
+
+#: ../src/daemon/pulseaudio.desktop.in.h:2
+msgid "Start the PulseAudio Sound System"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2291
+msgid "Input"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2292
+msgid "Docking Station Input"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2293
+msgid "Docking Station Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2294
+msgid "Docking Station Line In"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2295 ../src/modules/alsa/alsa-mixer.c:2380
+msgid "Line In"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2296 ../src/modules/alsa/alsa-mixer.c:2374
+#: ../src/modules/bluetooth/module-bluez4-device.c:2102
+#: ../src/modules/bluetooth/module-bluez5-device.c:1710
+msgid "Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2297 ../src/modules/alsa/alsa-mixer.c:2375
+msgid "Front Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2298 ../src/modules/alsa/alsa-mixer.c:2376
+msgid "Rear Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2299
+msgid "External Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2300 ../src/modules/alsa/alsa-mixer.c:2378
+msgid "Internal Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2301 ../src/modules/alsa/alsa-mixer.c:2381
+msgid "Radio"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2302 ../src/modules/alsa/alsa-mixer.c:2382
+msgid "Video"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2303
+msgid "Automatic Gain Control"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2304
+msgid "No Automatic Gain Control"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2305
+msgid "Boost"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2306
+msgid "No Boost"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2307
+msgid "Amplifier"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2308
+msgid "No Amplifier"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2309
+msgid "Bass Boost"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2310
+msgid "No Bass Boost"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2311
+#: ../src/modules/bluetooth/module-bluez4-device.c:2107
+#: ../src/modules/bluetooth/module-bluez5-device.c:1717
+msgid "Speaker"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2312 ../src/modules/alsa/alsa-mixer.c:2384
+msgid "Headphones"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2373
+msgid "Analog Input"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2377
+msgid "Dock Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2379
+msgid "Headset Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2383
+msgid "Analog Output"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2385
+msgid "LFE on Separate Mono Output"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2386
+msgid "Line Out"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2387
+msgid "Analog Mono Output"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2388
+msgid "Speakers"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2389
+msgid "HDMI / DisplayPort"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2390
+msgid "Digital Output (S/PDIF)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2391
+msgid "Digital Input (S/PDIF)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2392
+msgid "Digital Passthrough (S/PDIF)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3898
+msgid "Analog Mono"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3899
+msgid "Analog Stereo"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3900
+msgid "Multichannel"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3901
+msgid "Analog Surround 2.1"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3902
+msgid "Analog Surround 3.0"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3903
+msgid "Analog Surround 3.1"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3904
+msgid "Analog Surround 4.0"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3905
+msgid "Analog Surround 4.1"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3906
+msgid "Analog Surround 5.0"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3907
+msgid "Analog Surround 5.1"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3908
+msgid "Analog Surround 6.0"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3909
+msgid "Analog Surround 6.1"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3910
+msgid "Analog Surround 7.0"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3911
+msgid "Analog Surround 7.1"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3912
+msgid "Digital Stereo (IEC958)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3913
+msgid "Digital Passthrough (IEC958)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3914
+msgid "Digital Surround 4.0 (IEC958/AC3)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3915
+msgid "Digital Surround 5.1 (IEC958/AC3)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3916
+msgid "Digital Surround 5.1 (IEC958/DTS)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3917
+msgid "Digital Stereo (HDMI)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:3918
+msgid "Digital Surround 5.1 (HDMI)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:4049
+msgid "Analog Mono Duplex"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:4050
+msgid "Analog Stereo Duplex"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:4051
+msgid "Digital Stereo Duplex (IEC958)"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:4052
+#: ../src/modules/alsa/module-alsa-card.c:190
+#: ../src/modules/bluetooth/module-bluez4-device.c:2298
+#: ../src/modules/bluetooth/module-bluez5-device.c:1941
+msgid "Off"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:4151
+#, c-format
+msgid "%s Output"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:4159
+#, c-format
+msgid "%s Input"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-sink.c:570 ../src/modules/alsa/alsa-sink.c:747
+#, c-format
+msgid ""
+"ALSA woke us up to write new data to the device, but there was actually "
+"nothing to write!\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+
+#: ../src/modules/alsa/alsa-source.c:529 ../src/modules/alsa/alsa-source.c:680
+#, c-format
+msgid ""
+"ALSA woke us up to read new data from the device, but there was actually "
+"nothing to read!\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1134 ../src/modules/alsa/alsa-util.c:1209
+#, c-format
+msgid ""
+"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
+"ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1184
+#, c-format
+msgid ""
+"snd_pcm_delay() returned a value that is exceptionally large: %li bytes "
+"(%s%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1225
+#, c-format
+msgid ""
+"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
+"%lu.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1268
+#, c-format
+msgid ""
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
+"(%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2092
+#: ../src/modules/bluetooth/module-bluez5-device.c:1700
+msgid "Headset"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2097
+#: ../src/modules/bluetooth/module-bluez5-device.c:1705
+msgid "Handsfree"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2112
+#: ../src/modules/bluetooth/module-bluez5-device.c:1723
+msgid "Headphone"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2117
+#: ../src/modules/bluetooth/module-bluez5-device.c:1728
+msgid "Portable"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2122
+#: ../src/modules/bluetooth/module-bluez5-device.c:1733
+msgid "Car"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2127
+#: ../src/modules/bluetooth/module-bluez5-device.c:1738
+msgid "HiFi"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2132
+#: ../src/modules/bluetooth/module-bluez5-device.c:1743
+msgid "Phone"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2140
+#: ../src/modules/bluetooth/module-bluez5-device.c:1695
+#: ../src/modules/bluetooth/module-bluez5-device.c:1711
+#: ../src/modules/bluetooth/module-bluez5-device.c:1749
+msgid "Bluetooth Output"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2143
+#: ../src/modules/bluetooth/module-bluez5-device.c:1694
+#: ../src/modules/bluetooth/module-bluez5-device.c:1716
+#: ../src/modules/bluetooth/module-bluez5-device.c:1722
+#: ../src/modules/bluetooth/module-bluez5-device.c:1748
+msgid "Bluetooth Input"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2179
+msgid "High Fidelity Playback (A2DP)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2190
+msgid "High Fidelity Capture (A2DP)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2201
+msgid "Telephony Duplex (HSP/HFP)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2213
+msgid "Handsfree Gateway"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1786
+msgid "High Fidelity Playback (A2DP Sink)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1797
+msgid "High Fidelity Capture (A2DP Source)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1808
+msgid "Headset Head Unit (HSP/HFP)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1820
+msgid "Headset Audio Gateway (HSP/HFP)"
+msgstr ""
+
+#: ../src/modules/echo-cancel/module-echo-cancel.c:61
+msgid ""
+"source_name=<name for the source> source_properties=<properties for the "
+"source> source_master=<name of source to filter> sink_name=<name for the "
+"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
+"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
+"much drift to readjust after in ms> format=<sample format> rate=<sample "
+"rate> channels=<number of channels> channel_map=<channel map> aec_method="
+"<implementation to use> aec_args=<parameters for the AEC engine> save_aec="
+"<save AEC data in /tmp> autoloaded=<set if this module is being loaded "
+"automatically> use_volume_sharing=<yes or no> "
+msgstr ""
+
+#. add on profile
+#: ../src/modules/macosx/module-coreaudio-device.c:754
+msgid "On"
+msgstr ""
+
+#: ../src/modules/module-always-sink.c:36
+msgid "Always keeps at least one sink loaded even if it's a null one"
+msgstr ""
+
+#: ../src/modules/module-always-sink.c:80
+msgid "Dummy Output"
+msgstr ""
+
+#: ../src/modules/module-equalizer-sink.c:70
+msgid "General Purpose Equalizer"
+msgstr ""
+
+#: ../src/modules/module-equalizer-sink.c:74
+msgid ""
+"sink_name=<name of the sink> sink_properties=<properties for the sink> "
+"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
+"this module is being loaded automatically> use_volume_sharing=<yes or no> "
+msgstr ""
+
+#: ../src/modules/module-filter-apply.c:46
+msgid "autoclean=<automatically unload unused filters?>"
+msgstr ""
+
+#: ../src/modules/module-ladspa-sink.c:51
+msgid "Virtual LADSPA sink"
+msgstr ""
+
+#: ../src/modules/module-ladspa-sink.c:55
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<input channel map> plugin=<ladspa "
+"plugin name> label=<ladspa plugin label> control=<comma separated list of "
+"input control values> input_ladspaport_map=<comma separated list of input "
+"LADSPA port names> output_ladspaport_map=<comma separated list of output "
+"LADSPA port names> "
+msgstr ""
+
+#: ../src/modules/module-null-sink.c:47
+msgid "Clocked NULL sink"
+msgstr ""
+
+#: ../src/modules/module-null-sink.c:278
+msgid "Null Output"
+msgstr ""
+
+#: ../src/modules/module-rygel-media-server.c:508
+#: ../src/modules/module-rygel-media-server.c:546
+#: ../src/modules/module-rygel-media-server.c:905
+msgid "Output Devices"
+msgstr ""
+
+#: ../src/modules/module-rygel-media-server.c:509
+#: ../src/modules/module-rygel-media-server.c:547
+#: ../src/modules/module-rygel-media-server.c:906
+msgid "Input Devices"
+msgstr ""
+
+#: ../src/modules/module-rygel-media-server.c:1063
+msgid "Audio on @HOSTNAME@"
+msgstr ""
+
+#. TODO: old tunnel put here the remote sink_name into stream name e.g. 'Null Output for lynxis@lazus'
+#. TODO: old tunnel put here the remote source_name into stream name e.g. 'Null Output for lynxis@lazus'
+#: ../src/modules/module-tunnel-sink-new.c:307
+#: ../src/modules/module-tunnel-source-new.c:305
+#, c-format
+msgid "Tunnel for %s@%s"
+msgstr ""
+
+#: ../src/modules/module-tunnel-sink-new.c:517
+#: ../src/modules/module-tunnel-source-new.c:516
+#, c-format
+msgid "Tunnel to %s/%s"
+msgstr ""
+
+#: ../src/modules/module-virtual-surround-sink.c:47
+msgid "Virtual surround sink"
+msgstr ""
+
+#: ../src/modules/module-virtual-surround-sink.c:51
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> use_volume_sharing="
+"<yes or no> force_flat_volume=<yes or no> hrir=/path/to/left_hrir.wav "
+msgstr ""
+
+#: ../src/modules/reserve-wrap.c:149
+msgid "PulseAudio Sound Server"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:103 ../src/pulse/channelmap.c:758
+msgid "Mono"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:105
+msgid "Front Center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:106
+msgid "Front Left"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:107
+msgid "Front Right"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:109
+msgid "Rear Center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:110
+msgid "Rear Left"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:111
+msgid "Rear Right"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:113
+msgid "Subwoofer"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:115
+msgid "Front Left-of-center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:116
+msgid "Front Right-of-center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:118
+msgid "Side Left"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:119
+msgid "Side Right"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:121
+msgid "Auxiliary 0"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:122
+msgid "Auxiliary 1"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:123
+msgid "Auxiliary 2"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:124
+msgid "Auxiliary 3"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:125
+msgid "Auxiliary 4"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:126
+msgid "Auxiliary 5"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:127
+msgid "Auxiliary 6"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:128
+msgid "Auxiliary 7"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:129
+msgid "Auxiliary 8"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:130
+msgid "Auxiliary 9"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:131
+msgid "Auxiliary 10"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:132
+msgid "Auxiliary 11"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:133
+msgid "Auxiliary 12"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:134
+msgid "Auxiliary 13"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:135
+msgid "Auxiliary 14"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:136
+msgid "Auxiliary 15"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:137
+msgid "Auxiliary 16"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:138
+msgid "Auxiliary 17"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:139
+msgid "Auxiliary 18"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:140
+msgid "Auxiliary 19"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:141
+msgid "Auxiliary 20"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:142
+msgid "Auxiliary 21"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:143
+msgid "Auxiliary 22"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:144
+msgid "Auxiliary 23"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:145
+msgid "Auxiliary 24"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:146
+msgid "Auxiliary 25"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:147
+msgid "Auxiliary 26"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:148
+msgid "Auxiliary 27"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:149
+msgid "Auxiliary 28"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:150
+msgid "Auxiliary 29"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:151
+msgid "Auxiliary 30"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:152
+msgid "Auxiliary 31"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:154
+msgid "Top Center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:156
+msgid "Top Front Center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:157
+msgid "Top Front Left"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:158
+msgid "Top Front Right"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:160
+msgid "Top Rear Center"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:161
+msgid "Top Rear Left"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:162
+msgid "Top Rear Right"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:479 ../src/pulse/format.c:121
+#: ../src/pulse/sample.c:175 ../src/pulse/volume.c:294
+#: ../src/pulse/volume.c:320 ../src/pulse/volume.c:340
+#: ../src/pulse/volume.c:372 ../src/pulse/volume.c:412
+#: ../src/pulse/volume.c:431
+msgid "(invalid)"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:762
+msgid "Stereo"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:767
+msgid "Surround 4.0"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:773
+msgid "Surround 4.1"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:779
+msgid "Surround 5.0"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:785
+msgid "Surround 5.1"
+msgstr ""
+
+#: ../src/pulse/channelmap.c:792
+msgid "Surround 7.1"
+msgstr ""
+
+#: ../src/pulse/client-conf-x11.c:53 ../src/utils/pax11publish.c:97
+msgid "xcb_connect() failed"
+msgstr ""
+
+#: ../src/pulse/client-conf-x11.c:58 ../src/utils/pax11publish.c:102
+msgid "xcb_connection_has_error() returned true"
+msgstr ""
+
+#: ../src/pulse/client-conf-x11.c:94
+msgid "Failed to parse cookie data"
+msgstr ""
+
+#: ../src/pulse/context.c:656
+#, c-format
+msgid "fork(): %s"
+msgstr ""
+
+#: ../src/pulse/context.c:711
+#, c-format
+msgid "waitpid(): %s"
+msgstr ""
+
+#: ../src/pulse/context.c:1412
+#, c-format
+msgid "Received message for unknown extension '%s'"
+msgstr ""
+
+#: ../src/pulse/direction.c:37
+msgid "input"
+msgstr ""
+
+#: ../src/pulse/direction.c:39
+msgid "output"
+msgstr ""
+
+#: ../src/pulse/direction.c:41
+msgid "bidirectional"
+msgstr ""
+
+#: ../src/pulse/direction.c:43
+msgid "invalid"
+msgstr ""
+
+#: ../src/pulsecore/core-util.c:1820
+#, c-format
+msgid ""
+"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could "
+"e g happen if you try to connect to a non-root PulseAudio as a root user, "
+"over the native protocol. Don't do that.)"
+msgstr ""
+
+#: ../src/pulsecore/core-util.h:93
+msgid "yes"
+msgstr ""
+
+#: ../src/pulsecore/core-util.h:93
+msgid "no"
+msgstr ""
+
+#: ../src/pulsecore/lock-autospawn.c:141 ../src/pulsecore/lock-autospawn.c:227
+msgid "Cannot access autospawn lock."
+msgstr ""
+
+#: ../src/pulsecore/log.c:153
+#, c-format
+msgid "Failed to open target file '%s'."
+msgstr ""
+
+#: ../src/pulsecore/log.c:176
+#, c-format
+msgid ""
+"Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
+msgstr ""
+
+#: ../src/pulsecore/log.c:631
+msgid "Invalid log target."
+msgstr ""
+
+#: ../src/pulsecore/sink.c:3427
+msgid "Built-in Audio"
+msgstr ""
+
+#: ../src/pulsecore/sink.c:3432
+msgid "Modem"
+msgstr ""
+
+#: ../src/pulse/error.c:38
+msgid "OK"
+msgstr ""
+
+#: ../src/pulse/error.c:39
+msgid "Access denied"
+msgstr ""
+
+#: ../src/pulse/error.c:40
+msgid "Unknown command"
+msgstr ""
+
+#: ../src/pulse/error.c:41
+msgid "Invalid argument"
+msgstr ""
+
+#: ../src/pulse/error.c:42
+msgid "Entity exists"
+msgstr ""
+
+#: ../src/pulse/error.c:43
+msgid "No such entity"
+msgstr ""
+
+#: ../src/pulse/error.c:44
+msgid "Connection refused"
+msgstr ""
+
+#: ../src/pulse/error.c:45
+msgid "Protocol error"
+msgstr ""
+
+#: ../src/pulse/error.c:46
+msgid "Timeout"
+msgstr ""
+
+#: ../src/pulse/error.c:47
+msgid "No authentication key"
+msgstr ""
+
+#: ../src/pulse/error.c:48
+msgid "Internal error"
+msgstr ""
+
+#: ../src/pulse/error.c:49
+msgid "Connection terminated"
+msgstr ""
+
+#: ../src/pulse/error.c:50
+msgid "Entity killed"
+msgstr ""
+
+#: ../src/pulse/error.c:51
+msgid "Invalid server"
+msgstr ""
+
+#: ../src/pulse/error.c:52
+msgid "Module initialization failed"
+msgstr ""
+
+#: ../src/pulse/error.c:53
+msgid "Bad state"
+msgstr ""
+
+#: ../src/pulse/error.c:54
+msgid "No data"
+msgstr ""
+
+#: ../src/pulse/error.c:55
+msgid "Incompatible protocol version"
+msgstr ""
+
+#: ../src/pulse/error.c:56
+msgid "Too large"
+msgstr ""
+
+#: ../src/pulse/error.c:57
+msgid "Not supported"
+msgstr ""
+
+#: ../src/pulse/error.c:58
+msgid "Unknown error code"
+msgstr ""
+
+#: ../src/pulse/error.c:59
+msgid "No such extension"
+msgstr ""
+
+#: ../src/pulse/error.c:60
+msgid "Obsolete functionality"
+msgstr ""
+
+#: ../src/pulse/error.c:61
+msgid "Missing implementation"
+msgstr ""
+
+#: ../src/pulse/error.c:62
+msgid "Client forked"
+msgstr ""
+
+#: ../src/pulse/error.c:63
+msgid "Input/Output error"
+msgstr ""
+
+#: ../src/pulse/error.c:64
+msgid "Device or resource busy"
+msgstr ""
+
+#: ../src/pulse/sample.c:177
+#, c-format
+msgid "%s %uch %uHz"
+msgstr ""
+
+#: ../src/pulse/sample.c:189
+#, c-format
+msgid "%0.1f GiB"
+msgstr ""
+
+#: ../src/pulse/sample.c:191
+#, c-format
+msgid "%0.1f MiB"
+msgstr ""
+
+#: ../src/pulse/sample.c:193
+#, c-format
+msgid "%0.1f KiB"
+msgstr ""
+
+#: ../src/pulse/sample.c:195
+#, c-format
+msgid "%u B"
+msgstr ""
+
+#: ../src/tests/resampler-test.c:255
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+"-h, --help Show this help\n"
+"-v, --verbose Print debug messages\n"
+" --from-rate=SAMPLERATE From sample rate in Hz (defaults to "
+"44100)\n"
+" --from-format=SAMPLEFORMAT From sample type (defaults to s16le)\n"
+" --from-channels=CHANNELS From number of channels (defaults to "
+"1)\n"
+" --to-rate=SAMPLERATE To sample rate in Hz (defaults to "
+"44100)\n"
+" --to-format=SAMPLEFORMAT To sample type (defaults to s16le)\n"
+" --to-channels=CHANNELS To number of channels (defaults to 1)\n"
+" --resample-method=METHOD Resample method (defaults to auto)\n"
+" --seconds=SECONDS From stream duration (defaults to 60)\n"
+"\n"
+"If the formats are not specified, the test performs all formats "
+"combinations,\n"
+"back and forth.\n"
+"\n"
+"Sample type must be one of s16le, s16be, u8, float32le, float32be, ulaw, "
+"alaw,\n"
+"s24le, s24be, s24-32le, s24-32be, s32le, s32be (defaults to s16ne)\n"
+"\n"
+"See --dump-resample-methods for possible values of resample methods.\n"
+msgstr ""
+
+#: ../src/tests/resampler-test.c:354
+#, c-format
+msgid "%s %s\n"
+msgstr ""
+
+#: ../src/utils/pacat.c:116
+#, c-format
+msgid "Failed to drain stream: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:121
+msgid "Playback stream drained."
+msgstr ""
+
+#: ../src/utils/pacat.c:132
+msgid "Draining connection to server."
+msgstr ""
+
+#: ../src/utils/pacat.c:145
+#, c-format
+msgid "pa_stream_drain(): %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:168
+#, c-format
+msgid "pa_stream_write() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:209
+#, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:259 ../src/utils/pacat.c:289
+#, c-format
+msgid "pa_stream_peek() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:339
+msgid "Stream successfully created."
+msgstr ""
+
+#: ../src/utils/pacat.c:342
+#, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:346
+#, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
+msgstr ""
+
+#: ../src/utils/pacat.c:349
+#, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
+msgstr ""
+
+#: ../src/utils/pacat.c:353
+#, c-format
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr ""
+
+#: ../src/utils/pacat.c:357
+#, c-format
+msgid "Connected to device %s (index: %u, suspended: %s)."
+msgstr ""
+
+#: ../src/utils/pacat.c:367
+#, c-format
+msgid "Stream error: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:377
+#, c-format
+msgid "Stream device suspended.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:379
+#, c-format
+msgid "Stream device resumed.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:387
+#, c-format
+msgid "Stream underrun.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:394
+#, c-format
+msgid "Stream overrun.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:401
+#, c-format
+msgid "Stream started.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:408
+#, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:408
+msgid "not "
+msgstr ""
+
+#: ../src/utils/pacat.c:415
+#, c-format
+msgid "Stream buffer attributes changed.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:430
+msgid "Cork request stack is empty: corking stream"
+msgstr ""
+
+#: ../src/utils/pacat.c:436
+msgid "Cork request stack is empty: uncorking stream"
+msgstr ""
+
+#: ../src/utils/pacat.c:440
+msgid "Warning: Received more uncork requests than cork requests!"
+msgstr ""
+
+#: ../src/utils/pacat.c:465
+#, c-format
+msgid "Connection established.%s"
+msgstr ""
+
+#: ../src/utils/pacat.c:468
+#, c-format
+msgid "pa_stream_new() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:506
+#, c-format
+msgid "pa_stream_connect_playback() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:512
+#, c-format
+msgid "Failed to set monitor stream: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:516
+#, c-format
+msgid "pa_stream_connect_record() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:529 ../src/utils/pactl.c:1446
+#, c-format
+msgid "Connection failure: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:562
+msgid "Got EOF."
+msgstr ""
+
+#: ../src/utils/pacat.c:599
+#, c-format
+msgid "write() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:620
+msgid "Got signal, exiting."
+msgstr ""
+
+#: ../src/utils/pacat.c:634
+#, c-format
+msgid "Failed to get latency: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:639
+#, c-format
+msgid "Time: %0.3f sec; Latency: %0.0f usec."
+msgstr ""
+
+#: ../src/utils/pacat.c:660
+#, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:670
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"\n"
+" -r, --record Create a connection for recording\n"
+" -p, --playback Create a connection for playback\n"
+"\n"
+" -v, --verbose Enable verbose operations\n"
+"\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+" -d, --device=DEVICE The name of the sink/source to "
+"connect to\n"
+" -n, --client-name=NAME How to call this client on the "
+"server\n"
+" --stream-name=NAME How to call this stream on the "
+"server\n"
+" --volume=VOLUME Specify the initial (linear) volume "
+"in range 0...65536\n"
+" --rate=SAMPLERATE The sample rate in Hz (defaults to "
+"44100)\n"
+" --format=SAMPLEFORMAT The sample type, one of s16le, "
+"s16be, u8, float32le,\n"
+" float32be, ulaw, alaw, s32le, s32be, "
+"s24le, s24be,\n"
+" s24-32le, s24-32be (defaults to "
+"s16ne)\n"
+" --channels=CHANNELS The number of channels, 1 for mono, "
+"2 for stereo\n"
+" (defaults to 2)\n"
+" --channel-map=CHANNELMAP Channel map to use instead of the "
+"default\n"
+" --fix-format Take the sample format from the sink/"
+"source the stream is\n"
+" being connected to.\n"
+" --fix-rate Take the sampling rate from the sink/"
+"source the stream is\n"
+" being connected to.\n"
+" --fix-channels Take the number of channels and the "
+"channel map\n"
+" from the sink/source the stream is "
+"being connected to.\n"
+" --no-remix Don't upmix or downmix channels.\n"
+" --no-remap Map channels by index instead of "
+"name.\n"
+" --latency=BYTES Request the specified latency in "
+"bytes.\n"
+" --process-time=BYTES Request the specified process time "
+"per request in bytes.\n"
+" --latency-msec=MSEC Request the specified latency in "
+"msec.\n"
+" --process-time-msec=MSEC Request the specified process time "
+"per request in msec.\n"
+" --property=PROPERTY=VALUE Set the specified property to the "
+"specified value.\n"
+" --raw Record/play raw PCM data.\n"
+" --passthrough Passthrough data.\n"
+" --file-format[=FFORMAT] Record/play formatted PCM data.\n"
+" --list-file-formats List available file formats.\n"
+" --monitor-stream=INDEX Record from the sink input with "
+"index INDEX.\n"
+msgstr ""
+
+#: ../src/utils/pacat.c:808
+#, c-format
+msgid "pacat %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: ../src/utils/pacat.c:841 ../src/utils/pactl.c:1642
+#, c-format
+msgid "Invalid client name '%s'"
+msgstr ""
+
+#: ../src/utils/pacat.c:856
+#, c-format
+msgid "Invalid stream name '%s'"
+msgstr ""
+
+#: ../src/utils/pacat.c:893
+#, c-format
+msgid "Invalid channel map '%s'"
+msgstr ""
+
+#: ../src/utils/pacat.c:922 ../src/utils/pacat.c:936
+#, c-format
+msgid "Invalid latency specification '%s'"
+msgstr ""
+
+#: ../src/utils/pacat.c:929 ../src/utils/pacat.c:943
+#, c-format
+msgid "Invalid process time specification '%s'"
+msgstr ""
+
+#: ../src/utils/pacat.c:955
+#, c-format
+msgid "Invalid property '%s'"
+msgstr ""
+
+#: ../src/utils/pacat.c:974
+#, c-format
+msgid "Unknown file format %s."
+msgstr ""
+
+#: ../src/utils/pacat.c:989
+msgid "Failed to parse the argument for --monitor-stream"
+msgstr ""
+
+#: ../src/utils/pacat.c:1000
+msgid "Invalid sample specification"
+msgstr ""
+
+#: ../src/utils/pacat.c:1010
+#, c-format
+msgid "open(): %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:1015
+#, c-format
+msgid "dup2(): %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:1022
+msgid "Too many arguments."
+msgstr ""
+
+#: ../src/utils/pacat.c:1033
+msgid "Failed to generate sample specification for file."
+msgstr ""
+
+#: ../src/utils/pacat.c:1059
+msgid "Failed to open audio file."
+msgstr ""
+
+#: ../src/utils/pacat.c:1065
+msgid ""
+"Warning: specified sample specification will be overwritten with "
+"specification from file."
+msgstr ""
+
+#: ../src/utils/pacat.c:1068 ../src/utils/pactl.c:1706
+msgid "Failed to determine sample specification from file."
+msgstr ""
+
+#: ../src/utils/pacat.c:1077
+msgid "Warning: Failed to determine channel map from file."
+msgstr ""
+
+#: ../src/utils/pacat.c:1088
+msgid "Channel map doesn't match sample specification"
+msgstr ""
+
+#: ../src/utils/pacat.c:1099
+msgid "Warning: failed to write channel map to file."
+msgstr ""
+
+#: ../src/utils/pacat.c:1114
+#, c-format
+msgid ""
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr ""
+
+#: ../src/utils/pacat.c:1115
+msgid "recording"
+msgstr ""
+
+#: ../src/utils/pacat.c:1115
+msgid "playback"
+msgstr ""
+
+#: ../src/utils/pacat.c:1139
+msgid "Failed to set media name."
+msgstr ""
+
+#: ../src/utils/pacat.c:1146 ../src/utils/pactl.c:2056
+msgid "pa_mainloop_new() failed."
+msgstr ""
+
+#: ../src/utils/pacat.c:1169
+msgid "io_new() failed."
+msgstr ""
+
+#: ../src/utils/pacat.c:1176 ../src/utils/pactl.c:2068
+msgid "pa_context_new() failed."
+msgstr ""
+
+#: ../src/utils/pacat.c:1184 ../src/utils/pactl.c:2074
+#, c-format
+msgid "pa_context_connect() failed: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:1190
+msgid "pa_context_rttime_new() failed."
+msgstr ""
+
+#: ../src/utils/pacat.c:1197 ../src/utils/pactl.c:2079
+msgid "pa_mainloop_run() failed."
+msgstr ""
+
+#: ../src/utils/pacmd.c:51 ../src/utils/pactl.c:1564
+msgid "NAME [ARGS ...]"
+msgstr ""
+
+#: ../src/utils/pacmd.c:52 ../src/utils/pacmd.c:60 ../src/utils/pactl.c:1565
+msgid "NAME|#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:53 ../src/utils/pacmd.c:63 ../src/utils/pactl.c:1563
+#: ../src/utils/pactl.c:1569
+msgid "NAME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:54
+msgid "NAME|#N VOLUME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:55
+msgid "#N VOLUME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:56 ../src/utils/pacmd.c:70 ../src/utils/pactl.c:1567
+msgid "NAME|#N 1|0"
+msgstr ""
+
+#: ../src/utils/pacmd.c:57
+msgid "#N 1|0"
+msgstr ""
+
+#: ../src/utils/pacmd.c:58
+msgid "NAME|#N KEY=VALUE"
+msgstr ""
+
+#: ../src/utils/pacmd.c:59
+msgid "#N KEY=VALUE"
+msgstr ""
+
+#: ../src/utils/pacmd.c:61
+msgid "#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:62
+msgid "NAME SINK|#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:64 ../src/utils/pacmd.c:65
+msgid "NAME FILENAME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:66
+msgid "PATHNAME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:67
+msgid "FILENAME SINK|#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:69 ../src/utils/pactl.c:1566
+msgid "#N SINK|SOURCE"
+msgstr ""
+
+#: ../src/utils/pacmd.c:71 ../src/utils/pacmd.c:77 ../src/utils/pacmd.c:78
+msgid "1|0"
+msgstr ""
+
+#: ../src/utils/pacmd.c:72 ../src/utils/pactl.c:1568
+msgid "CARD PROFILE"
+msgstr ""
+
+#: ../src/utils/pacmd.c:73 ../src/utils/pactl.c:1570
+msgid "NAME|#N PORT"
+msgstr ""
+
+#: ../src/utils/pacmd.c:74 ../src/utils/pactl.c:1576
+msgid "CARD-NAME|CARD-#N PORT OFFSET"
+msgstr ""
+
+#: ../src/utils/pacmd.c:75
+msgid "TARGET"
+msgstr ""
+
+#: ../src/utils/pacmd.c:76
+msgid "NUMERIC LEVEL"
+msgstr ""
+
+#: ../src/utils/pacmd.c:79
+msgid "FRAMES"
+msgstr ""
+
+#: ../src/utils/pacmd.c:81
+#, c-format
+msgid ""
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"When no command is given pacmd starts in the interactive mode.\n"
+msgstr ""
+
+#: ../src/utils/pacmd.c:128
+#, c-format
+msgid "pacmd %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: ../src/utils/pacmd.c:142
+msgid "No PulseAudio daemon running, or not running as session daemon."
+msgstr ""
+
+#: ../src/utils/pacmd.c:147
+#, c-format
+msgid "socket(PF_UNIX, SOCK_STREAM, 0): %s"
+msgstr ""
+
+#: ../src/utils/pacmd.c:164
+#, c-format
+msgid "connect(): %s"
+msgstr ""
+
+#: ../src/utils/pacmd.c:172
+msgid "Failed to kill PulseAudio daemon."
+msgstr ""
+
+#: ../src/utils/pacmd.c:180
+msgid "Daemon not responding."
+msgstr ""
+
+#: ../src/utils/pacmd.c:212 ../src/utils/pacmd.c:321 ../src/utils/pacmd.c:339
+#, c-format
+msgid "write(): %s"
+msgstr ""
+
+#: ../src/utils/pacmd.c:268
+#, c-format
+msgid "poll(): %s"
+msgstr ""
+
+#: ../src/utils/pacmd.c:279 ../src/utils/pacmd.c:299
+#, c-format
+msgid "read(): %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:164
+#, c-format
+msgid "Failed to get statistics: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:170
+#, c-format
+msgid "Currently in use: %u blocks containing %s bytes total.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:173
+#, c-format
+msgid "Allocated during whole lifetime: %u blocks containing %s bytes total.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:176
+#, c-format
+msgid "Sample cache size: %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:185
+#, c-format
+msgid "Failed to get server information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:190
+#, c-format
+msgid ""
+"Server String: %s\n"
+"Library Protocol Version: %u\n"
+"Server Protocol Version: %u\n"
+"Is Local: %s\n"
+"Client Index: %u\n"
+"Tile Size: %zu\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:206
+#, c-format
+msgid ""
+"User Name: %s\n"
+"Host Name: %s\n"
+"Server Name: %s\n"
+"Server Version: %s\n"
+"Default Sample Specification: %s\n"
+"Default Channel Map: %s\n"
+"Default Sink: %s\n"
+"Default Source: %s\n"
+"Cookie: %04x:%04x\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:255 ../src/utils/pactl.c:900 ../src/utils/pactl.c:978
+#, c-format
+msgid "Failed to get sink information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:281
+#, c-format
+msgid ""
+"Sink #%u\n"
+" State: %s\n"
+" Name: %s\n"
+" Description: %s\n"
+" Driver: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Owner Module: %u\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Base Volume: %s\n"
+" Monitor Source: %s\n"
+" Latency: %0.0f usec, configured %0.0f usec\n"
+" Flags: %s%s%s%s%s%s%s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:325 ../src/utils/pactl.c:431 ../src/utils/pactl.c:592
+#, c-format
+msgid " Ports:\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:332 ../src/utils/pactl.c:438
+#, c-format
+msgid " Active Port: %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:338 ../src/utils/pactl.c:444
+#, c-format
+msgid " Formats:\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:362 ../src/utils/pactl.c:920 ../src/utils/pactl.c:993
+#, c-format
+msgid "Failed to get source information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:388
+#, c-format
+msgid ""
+"Source #%u\n"
+" State: %s\n"
+" Name: %s\n"
+" Description: %s\n"
+" Driver: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Owner Module: %u\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Base Volume: %s\n"
+" Monitor of Sink: %s\n"
+" Latency: %0.0f usec, configured %0.0f usec\n"
+" Flags: %s%s%s%s%s%s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:416 ../src/utils/pactl.c:486 ../src/utils/pactl.c:529
+#: ../src/utils/pactl.c:571 ../src/utils/pactl.c:669 ../src/utils/pactl.c:670
+#: ../src/utils/pactl.c:681 ../src/utils/pactl.c:739 ../src/utils/pactl.c:740
+#: ../src/utils/pactl.c:751 ../src/utils/pactl.c:802 ../src/utils/pactl.c:803
+#: ../src/utils/pactl.c:809
+msgid "n/a"
+msgstr ""
+
+#: ../src/utils/pactl.c:455 ../src/utils/pactl.c:859
+#, c-format
+msgid "Failed to get module information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:478
+#, c-format
+msgid ""
+"Module #%u\n"
+" Name: %s\n"
+" Argument: %s\n"
+" Usage counter: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:497
+#, c-format
+msgid "Failed to get client information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:523
+#, c-format
+msgid "Client #%u\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:540
+#, c-format
+msgid "Failed to get card information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:563
+#, c-format
+msgid "Card #%u\n"
+" Name: %s\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:579
+#, c-format
+msgid " Profiles:\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:586
+#, c-format
+msgid " Active Profile: %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:600
+#, c-format
+msgid " Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:605
+#, c-format
+msgid " Part of profile(s): %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:622 ../src/utils/pactl.c:940 ../src/utils/pactl.c:1008
+#, c-format
+msgid "Failed to get sink input information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:651
+#, c-format
+msgid ""
+"Sink Input #%u\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Client: %s\n"
+" Sink: %u\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Format: %s\n"
+" Corked: %s\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Buffer Latency: %0.0f usec\n"
+" Sink Latency: %0.0f usec\n"
+" Resample method: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:692 ../src/utils/pactl.c:960 ../src/utils/pactl.c:1023
+#, c-format
+msgid "Failed to get source output information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:721
+#, c-format
+msgid ""
+"Source Output #%u\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Client: %s\n"
+" Source: %u\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Format: %s\n"
+" Corked: %s\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Buffer Latency: %0.0f usec\n"
+" Source Latency: %0.0f usec\n"
+" Resample method: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:762
+#, c-format
+msgid "Failed to get sample information: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:789
+#, c-format
+msgid ""
+"Sample #%u\n"
+" Name: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Duration: %0.1fs\n"
+" Size: %s\n"
+" Lazy: %s\n"
+" Filename: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:817 ../src/utils/pactl.c:827
+#, c-format
+msgid "Failure: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:866
+#, c-format
+msgid "Failed to unload module: Module %s not loaded"
+msgstr ""
+
+#: ../src/utils/pactl.c:884
+#, c-format
+msgid ""
+"Failed to set volume: You tried to set volumes for %d channels, whereas "
+"channel/s supported = %d\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1050
+#, c-format
+msgid "Failed to set format: invalid format string %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:1093
+#, c-format
+msgid "Failed to upload sample: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:1110
+msgid "Premature end of file"
+msgstr ""
+
+#: ../src/utils/pactl.c:1130
+msgid "new"
+msgstr ""
+
+#: ../src/utils/pactl.c:1133
+msgid "change"
+msgstr ""
+
+#: ../src/utils/pactl.c:1136
+msgid "remove"
+msgstr ""
+
+#: ../src/utils/pactl.c:1139 ../src/utils/pactl.c:1174
+msgid "unknown"
+msgstr ""
+
+#: ../src/utils/pactl.c:1147
+msgid "sink"
+msgstr ""
+
+#: ../src/utils/pactl.c:1150
+msgid "source"
+msgstr ""
+
+#: ../src/utils/pactl.c:1153
+msgid "sink-input"
+msgstr ""
+
+#: ../src/utils/pactl.c:1156
+msgid "source-output"
+msgstr ""
+
+#: ../src/utils/pactl.c:1159
+msgid "module"
+msgstr ""
+
+#: ../src/utils/pactl.c:1162
+msgid "client"
+msgstr ""
+
+#: ../src/utils/pactl.c:1165
+msgid "sample-cache"
+msgstr ""
+
+#: ../src/utils/pactl.c:1168
+msgid "server"
+msgstr ""
+
+#: ../src/utils/pactl.c:1171
+msgid "card"
+msgstr ""
+
+#: ../src/utils/pactl.c:1180
+#, c-format
+msgid "Event '%s' on %s #%u\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1452
+msgid "Got SIGINT, exiting."
+msgstr ""
+
+#: ../src/utils/pactl.c:1479
+msgid "Invalid volume specification"
+msgstr ""
+
+#: ../src/utils/pactl.c:1502
+msgid "Volume outside permissible range.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1515
+msgid "Invalid number of volume specifications.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1527
+msgid "Inconsistent volume specification.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1557 ../src/utils/pactl.c:1558
+#: ../src/utils/pactl.c:1559 ../src/utils/pactl.c:1560
+#: ../src/utils/pactl.c:1561 ../src/utils/pactl.c:1562
+#: ../src/utils/pactl.c:1563 ../src/utils/pactl.c:1564
+#: ../src/utils/pactl.c:1565 ../src/utils/pactl.c:1566
+#: ../src/utils/pactl.c:1567 ../src/utils/pactl.c:1568
+#: ../src/utils/pactl.c:1569 ../src/utils/pactl.c:1570
+#: ../src/utils/pactl.c:1571 ../src/utils/pactl.c:1572
+#: ../src/utils/pactl.c:1573 ../src/utils/pactl.c:1574
+#: ../src/utils/pactl.c:1575 ../src/utils/pactl.c:1576
+#: ../src/utils/pactl.c:1577
+msgid "[options]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1559
+msgid "[TYPE]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1561
+msgid "FILENAME [NAME]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1562
+msgid "NAME [SINK]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1571
+msgid "NAME|#N VOLUME [VOLUME ...]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1572
+msgid "#N VOLUME [VOLUME ...]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1573
+msgid "NAME|#N 1|0|toggle"
+msgstr ""
+
+#: ../src/utils/pactl.c:1574
+msgid "#N 1|0|toggle"
+msgstr ""
+
+#: ../src/utils/pactl.c:1575
+msgid "#N FORMATS"
+msgstr ""
+
+#: ../src/utils/pactl.c:1578
+#, c-format
+msgid ""
+"\n"
+"The special names @DEFAULT_SINK@, @DEFAULT_SOURCE@ and @DEFAULT_MONITOR@\n"
+"can be used to specify the default sink, source and monitor.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1581
+#, c-format
+msgid ""
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+" -n, --client-name=NAME How to call this client on the "
+"server\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1622
+#, c-format
+msgid "pactl %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1678
+#, c-format
+msgid "Specify nothing, or one of: %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:1688
+msgid "Please specify a sample file to load"
+msgstr ""
+
+#: ../src/utils/pactl.c:1701
+msgid "Failed to open sound file."
+msgstr ""
+
+#: ../src/utils/pactl.c:1713
+msgid "Warning: Failed to determine sample specification from file."
+msgstr ""
+
+#: ../src/utils/pactl.c:1723
+msgid "You have to specify a sample name to play"
+msgstr ""
+
+#: ../src/utils/pactl.c:1735
+msgid "You have to specify a sample name to remove"
+msgstr ""
+
+#: ../src/utils/pactl.c:1744
+msgid "You have to specify a sink input index and a sink"
+msgstr ""
+
+#: ../src/utils/pactl.c:1754
+msgid "You have to specify a source output index and a source"
+msgstr ""
+
+#: ../src/utils/pactl.c:1769
+msgid "You have to specify a module name and arguments."
+msgstr ""
+
+#: ../src/utils/pactl.c:1789
+msgid "You have to specify a module index or name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1802
+msgid ""
+"You may not specify more than one sink. You have to specify a boolean value."
+msgstr ""
+
+#: ../src/utils/pactl.c:1807 ../src/utils/pactl.c:1827
+msgid "Invalid suspend specification."
+msgstr ""
+
+#: ../src/utils/pactl.c:1822
+msgid ""
+"You may not specify more than one source. You have to specify a boolean "
+"value."
+msgstr ""
+
+#: ../src/utils/pactl.c:1839
+msgid "You have to specify a card name/index and a profile name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1850
+msgid "You have to specify a sink name/index and a port name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1861
+msgid "You have to specify a sink name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1871
+msgid "You have to specify a source name/index and a port name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1882
+msgid "You have to specify a source name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1892
+msgid "You have to specify a sink name/index and a volume"
+msgstr ""
+
+#: ../src/utils/pactl.c:1905
+msgid "You have to specify a source name/index and a volume"
+msgstr ""
+
+#: ../src/utils/pactl.c:1918
+msgid "You have to specify a sink input index and a volume"
+msgstr ""
+
+#: ../src/utils/pactl.c:1923
+msgid "Invalid sink input index"
+msgstr ""
+
+#: ../src/utils/pactl.c:1934
+msgid "You have to specify a source output index and a volume"
+msgstr ""
+
+#: ../src/utils/pactl.c:1939
+msgid "Invalid source output index"
+msgstr ""
+
+#: ../src/utils/pactl.c:1950
+msgid "You have to specify a sink name/index and a mute boolean"
+msgstr ""
+
+#: ../src/utils/pactl.c:1955 ../src/utils/pactl.c:1970
+#: ../src/utils/pactl.c:1990 ../src/utils/pactl.c:2008
+msgid "Invalid mute specification"
+msgstr ""
+
+#: ../src/utils/pactl.c:1965
+msgid "You have to specify a source name/index and a mute boolean"
+msgstr ""
+
+#: ../src/utils/pactl.c:1980
+msgid "You have to specify a sink input index and a mute boolean"
+msgstr ""
+
+#: ../src/utils/pactl.c:1985
+msgid "Invalid sink input index specification"
+msgstr ""
+
+#: ../src/utils/pactl.c:1998
+msgid "You have to specify a source output index and a mute boolean"
+msgstr ""
+
+#: ../src/utils/pactl.c:2003
+msgid "Invalid source output index specification"
+msgstr ""
+
+#: ../src/utils/pactl.c:2020
+msgid ""
+"You have to specify a sink index and a semicolon-separated list of supported "
+"formats"
+msgstr ""
+
+#: ../src/utils/pactl.c:2032
+msgid ""
+"You have to specify a card name/index, a port name and a latency offset"
+msgstr ""
+
+#: ../src/utils/pactl.c:2039
+msgid "Could not parse latency offset"
+msgstr ""
+
+#: ../src/utils/pactl.c:2051
+msgid "No valid command specified."
+msgstr ""
+
+#: ../src/utils/pasuspender.c:79
+#, c-format
+msgid "fork(): %s\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:92
+#, c-format
+msgid "execvp(): %s\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:111
+#, c-format
+msgid "Failure to resume: %s\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:145
+#, c-format
+msgid "Failure to suspend: %s\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:170
+#, c-format
+msgid "WARNING: Sound server is not local, not suspending.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:183
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:201
+#, c-format
+msgid "Got SIGINT, exiting.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:219
+#, c-format
+msgid "WARNING: Child process terminated by signal %u\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:228
+#, c-format
+msgid ""
+"%s [options] ... \n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+"\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:266
+#, c-format
+msgid "pasuspender %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:295
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:308
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:320
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:58
+#, c-format
+msgid ""
+"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
+"\n"
+" -d Show current PulseAudio data attached to X11 display (default)\n"
+" -e Export local PulseAudio data to X11 display\n"
+" -i Import PulseAudio data from X11 display to local environment "
+"variables and cookie file.\n"
+" -r Remove PulseAudio data from X11 display\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:91
+#, c-format
+msgid "Failed to parse command line.\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:110
+#, c-format
+msgid "Server: %s\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:112
+#, c-format
+msgid "Source: %s\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:114
+#, c-format
+msgid "Sink: %s\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:116
+#, c-format
+msgid "Cookie: %s\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:134
+#, c-format
+msgid "Failed to parse cookie data\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:139
+#, c-format
+msgid "Failed to save cookie data\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:168
+#, c-format
+msgid "Failed to get FQDN.\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:188
+#, c-format
+msgid "Failed to load cookie data\n"
+msgstr ""
+
+#: ../src/utils/pax11publish.c:206
+#, c-format
+msgid "Not yet implemented.\n"
+msgstr ""
diff --git a/po/bn_IN.gmo b/po/bn_IN.gmo
index 342f119..6bd1619 100644
--- a/po/bn_IN.gmo
+++ b/po/bn_IN.gmo
Binary files differ
diff --git a/po/ca.gmo b/po/ca.gmo
index e70bf37..cac81f2 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 2e024e5..77d5213 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -18,6 +18,10 @@
# http://www.softcatala.org/projectes/fedora/
# i contacteu l'anterior traductor/a.
# Josep Torné Llavall <josep.torne@gmail.com>, 2009, 2012.
+# Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>, 2016. #zanata
+# Wim Taymans <wim.taymans@gmail.com>, 2016. #zanata
+# Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>, 2017. #zanata
+# Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>, 2019. #zanata
#
msgid ""
msgstr ""
@@ -58,8 +62,8 @@ msgstr ""
"Probablement es tracta d'un error del controlador de l'ALSA '%s'. Informeu "
"d'aquest incident als desenvolupadors de l'ALSA."
-#: ../src/modules/alsa/alsa-util.c:1220
-#, fuzzy, c-format
+#: ../src/modules/alsa/alsa-util.c:1225
+#, c-format
msgid ""
"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
"%lu.\n"
@@ -68,8 +72,8 @@ msgid ""
msgstr ""
"snd_pcm_avail() ha retornat un valor excepcionalment gran: %lu bytes (%lu "
"ms).\n"
-"Probablement es tracta d'un error del controlador de l'ALSA '%s'. Informeu "
-"d'aquest incident als desenvolupadors de l'ALSA."
+"Probablement es tracta d'un error del controlador d'ALSA «%s». Informeu "
+"d'aquest problema als desenvolupadors d'ALSA."
#: ../src/modules/alsa/alsa-util.c:1263
#, c-format
@@ -286,10 +290,10 @@ msgstr ""
msgid "Failed to acquire stdio."
msgstr "S'ha produït un error en adquirir stdio."
-#: ../src/daemon/main.c:763 ../src/daemon/main.c:828
-#, fuzzy, c-format
+#: ../src/daemon/main.c:762 ../src/daemon/main.c:833
+#, c-format
msgid "pipe() failed: %s"
-msgstr "Ha fallat la canonada: %s"
+msgstr "Ha fallat pipe(): %s"
#: ../src/daemon/main.c:768 ../src/daemon/main.c:833
#, c-format
@@ -309,10 +313,10 @@ msgstr "S'ha produït un error en iniciar el dimoni."
msgid "Daemon startup successful."
msgstr "S'ha iniciat el dimoni."
-#: ../src/daemon/main.c:816
-#, fuzzy, c-format
+#: ../src/daemon/main.c:821
+#, c-format
msgid "setsid() failed: %s"
-msgstr "Ha fallat read(): %s"
+msgstr "Ha fallat setsid(): %s"
#: ../src/daemon/main.c:901
#, c-format
@@ -797,10 +801,10 @@ msgstr "[%s:%u] Mida de fragment incorrecta '%s'."
msgid "[%s:%u] Invalid nice level '%s'."
msgstr "[%s:%u] Nivell de prioritat incorrecte '%s'."
-#: ../src/daemon/daemon-conf.c:528
-#, fuzzy, c-format
+#: ../src/daemon/daemon-conf.c:498
+#, c-format
msgid "[%s:%u] Invalid server type '%s'."
-msgstr "[%s:%u] Velocitat de mostreig '%s'."
+msgstr "[%s:%u] Tipus incorrecte de servidor «%s»."
#: ../src/daemon/daemon-conf.c:641
#, c-format
@@ -1210,10 +1214,9 @@ msgstr "%0.1f KB"
msgid "%u B"
msgstr "%u B"
-#: ../src/pulse/client-conf-x11.c:54 ../src/utils/pax11publish.c:100
-#, fuzzy
+#: ../src/pulse/client-conf-x11.c:53 ../src/utils/pax11publish.c:97
msgid "xcb_connect() failed"
-msgstr "Ha fallat pa_context_connect(): %s"
+msgstr "Ha fallat xcb_connect()"
#: ../src/pulse/client-conf-x11.c:59 ../src/utils/pax11publish.c:105
msgid "xcb_connection_has_error() returned true"
@@ -1654,10 +1657,9 @@ msgstr "enregistrant"
msgid "playback"
msgstr "reproducció"
-#: ../src/utils/pacat.c:1110
-#, fuzzy
+#: ../src/utils/pacat.c:1139
msgid "Failed to set media name."
-msgstr "No s'ha pogut interpretar la línia d'ordres."
+msgstr "No s'ha pogut establir el nom del mitjà."
#: ../src/utils/pacat.c:1117 ../src/utils/pactl.c:1777
msgid "pa_mainloop_new() failed."
@@ -1807,8 +1809,8 @@ msgid ""
"Tile Size: %zu\n"
msgstr ""
-#: ../src/utils/pactl.c:192
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:206
+#, c-format
msgid ""
"User Name: %s\n"
"Host Name: %s\n"
@@ -1821,14 +1823,14 @@ msgid ""
"Cookie: %04x:%04x\n"
msgstr ""
"Nom d'usuari: %s\n"
-"Nom del host: %s\n"
+"Nom d'amfitrió: %s\n"
"Nom del servidor: %s\n"
"Versió del servidor: %s\n"
-"Especificació per omissió de la mostra: %s\n"
-"Mapa de canals per omissió: %s\n"
-"Conducte per omissió: %s\n"
-"Font per omissió: %s\n"
-"Galeta: %08x\n"
+"Especificació per defecte de la mostra: %s\n"
+"Assignació dels canals per defecte: %s\n"
+"Conducte per defecte: %s\n"
+"Origen per defecte: %s\n"
+"Galeta: %04x:%04x\n"
#: ../src/utils/pactl.c:244 ../src/utils/pactl.c:830
#, c-format
@@ -1884,10 +1886,10 @@ msgstr "\tPorts:\n"
msgid "\tActive Port: %s\n"
msgstr "\tPort actiu: %s\n"
-#: ../src/utils/pactl.c:331 ../src/utils/pactl.c:443
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:338 ../src/utils/pactl.c:444
+#, c-format
msgid "\tFormats:\n"
-msgstr "\tPorts:\n"
+msgstr "\tFormats:\n"
#: ../src/utils/pactl.c:357 ../src/utils/pactl.c:849
#, c-format
@@ -2156,21 +2158,21 @@ msgstr "No s'ha pogut pujar la mostra: %s"
msgid "Premature end of file"
msgstr "S'ha trobat un fi de fitxer prematurament"
-#: ../src/utils/pactl.c:991
+#: ../src/utils/pactl.c:1130
msgid "new"
-msgstr ""
+msgstr "nou"
-#: ../src/utils/pactl.c:994
+#: ../src/utils/pactl.c:1133
msgid "change"
-msgstr ""
+msgstr "canvia"
-#: ../src/utils/pactl.c:997
+#: ../src/utils/pactl.c:1136
msgid "remove"
-msgstr ""
+msgstr "suprimeix"
-#: ../src/utils/pactl.c:1000 ../src/utils/pactl.c:1035
+#: ../src/utils/pactl.c:1139 ../src/utils/pactl.c:1174
msgid "unknown"
-msgstr ""
+msgstr "desconegut"
#: ../src/utils/pactl.c:1008
msgid "sink"
@@ -2189,27 +2191,26 @@ msgstr ""
msgid "source-output"
msgstr "font"
-#: ../src/utils/pactl.c:1020
+#: ../src/utils/pactl.c:1159
msgid "module"
-msgstr ""
+msgstr "mòdul"
-#: ../src/utils/pactl.c:1023
+#: ../src/utils/pactl.c:1162
msgid "client"
-msgstr ""
+msgstr "client"
#: ../src/utils/pactl.c:1026
msgid "sample-cache"
msgstr ""
-#: ../src/utils/pactl.c:1029 ../src/utils/pactl.c:1032
-#, fuzzy
+#: ../src/utils/pactl.c:1168
msgid "server"
-msgstr "Servidor incorrecte"
+msgstr "servidor"
-#: ../src/utils/pactl.c:1041
+#: ../src/utils/pactl.c:1180
#, c-format
msgid "Event '%s' on %s #%u\n"
-msgstr ""
+msgstr "Esdeveniment '%s' en %s #%u\n"
#: ../src/utils/pactl.c:1258
msgid "Got SIGINT, exiting."
@@ -2223,22 +2224,23 @@ msgstr "Especificació de volum invàlida"
msgid "Volume outside permissible range.\n"
msgstr ""
-#: ../src/utils/pactl.c:1319 ../src/utils/pactl.c:1320
-#: ../src/utils/pactl.c:1321 ../src/utils/pactl.c:1322
-#: ../src/utils/pactl.c:1323 ../src/utils/pactl.c:1324
-#: ../src/utils/pactl.c:1325 ../src/utils/pactl.c:1326
-#: ../src/utils/pactl.c:1327 ../src/utils/pactl.c:1328
-#: ../src/utils/pactl.c:1329 ../src/utils/pactl.c:1330
-#: ../src/utils/pactl.c:1331 ../src/utils/pactl.c:1332
-#: ../src/utils/pactl.c:1333 ../src/utils/pactl.c:1334
-#: ../src/utils/pactl.c:1335 ../src/utils/pactl.c:1336
-#: ../src/utils/pactl.c:1337
+#: ../src/utils/pactl.c:1557 ../src/utils/pactl.c:1558
+#: ../src/utils/pactl.c:1559 ../src/utils/pactl.c:1560
+#: ../src/utils/pactl.c:1561 ../src/utils/pactl.c:1562
+#: ../src/utils/pactl.c:1563 ../src/utils/pactl.c:1564
+#: ../src/utils/pactl.c:1565 ../src/utils/pactl.c:1566
+#: ../src/utils/pactl.c:1567 ../src/utils/pactl.c:1568
+#: ../src/utils/pactl.c:1569 ../src/utils/pactl.c:1570
+#: ../src/utils/pactl.c:1571 ../src/utils/pactl.c:1572
+#: ../src/utils/pactl.c:1573 ../src/utils/pactl.c:1574
+#: ../src/utils/pactl.c:1575 ../src/utils/pactl.c:1576
+#: ../src/utils/pactl.c:1577
msgid "[options]"
-msgstr ""
+msgstr "[opcions]"
-#: ../src/utils/pactl.c:1321
+#: ../src/utils/pactl.c:1559
msgid "[TYPE]"
-msgstr ""
+msgstr "[TIPUS]"
#: ../src/utils/pactl.c:1323
msgid "FILENAME [NAME]"
@@ -2256,9 +2258,9 @@ msgstr ""
msgid "NAME [ARGS ...]"
msgstr ""
-#: ../src/utils/pactl.c:1327
+#: ../src/utils/pacmd.c:61
msgid "#N"
-msgstr ""
+msgstr "#N"
#: ../src/utils/pactl.c:1328
msgid "#N SINK|SOURCE"
@@ -2284,9 +2286,9 @@ msgstr ""
msgid "#N VOLUME"
msgstr ""
-#: ../src/utils/pactl.c:1335
+#: ../src/utils/pacmd.c:57
msgid "#N 1|0"
-msgstr ""
+msgstr "#N 1|0"
#: ../src/utils/pactl.c:1336
msgid "#N FORMATS"
@@ -2370,7 +2372,8 @@ msgstr "Heu d'especificar un índex de mòdul"
msgid ""
"You may not specify more than one sink. You have to specify a boolean value."
msgstr ""
-"No hauríeu d'especificar més d'un conducte. Heu d'especificar un valor booleà."
+"No hauríeu d'especificar més d'un conducte. Heu d'especificar un valor "
+"booleà."
#: ../src/utils/pactl.c:1573
msgid ""
@@ -2408,26 +2411,23 @@ msgstr "Heu d'especificar un índex entrada del conducte i un volum"
msgid "Invalid sink input index"
msgstr "Índex d'entrada del conducte invàlid"
-#: ../src/utils/pactl.c:1660
-#, fuzzy
+#: ../src/utils/pactl.c:1934
msgid "You have to specify a source output index and a volume"
-msgstr "Heu d'especificar un índex de font de sortida i una font"
+msgstr "Heu d'especificar l'índex de sortida d'un origen i un volum"
-#: ../src/utils/pactl.c:1665
-#, fuzzy
+#: ../src/utils/pactl.c:1939
msgid "Invalid source output index"
-msgstr "Índex d'entrada del conducte invàlid"
+msgstr "Índex incorrecte de sortida de l'origen"
#: ../src/utils/pactl.c:1677
msgid "You have to specify a sink name/index and a mute boolean"
msgstr ""
"Heu d'especificar un nom o un índex de conducte i un booleà de silenciat"
-#: ../src/utils/pactl.c:1682 ../src/utils/pactl.c:1699
-#: ../src/utils/pactl.c:1721 ../src/utils/pactl.c:1742
-#, fuzzy
+#: ../src/utils/pactl.c:1955 ../src/utils/pactl.c:1970
+#: ../src/utils/pactl.c:1990 ../src/utils/pactl.c:2008
msgid "Invalid mute specification"
-msgstr "Especificació de mostra invàlida"
+msgstr "Especificació incorrecta de silenci"
#: ../src/utils/pactl.c:1694
msgid "You have to specify a source name/index and a mute boolean"
@@ -2442,10 +2442,11 @@ msgstr ""
msgid "Invalid sink input index specification"
msgstr "Especificació d'índex d'entrada del conducte invàlida"
-#: ../src/utils/pactl.c:1732
-#, fuzzy
+#: ../src/utils/pactl.c:1998
msgid "You have to specify a source output index and a mute boolean"
-msgstr "Heu d'especificar un nom o un índex de font i un booleà de silenciat"
+msgstr ""
+"Heu d'especificar el nom o l'índex de sortida d'un origen i un booleà de "
+"silenci"
#: ../src/utils/pactl.c:1737
#, fuzzy
@@ -2640,168 +2641,157 @@ msgstr "Captura d'alta fidelitat (A2DP)"
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Dúplex de telefonia (HSP/HFP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2781
+#: ../src/modules/bluetooth/module-bluez4-device.c:2213
msgid "Handsfree Gateway"
-msgstr ""
+msgstr "Passarel·la de mans lliures"
#: ../src/modules/reserve-wrap.c:151
msgid "PulseAudio Sound Server"
msgstr "Servidor de so PulseAudio"
-#: ../src/modules/module-rygel-media-server.c:510
-#: ../src/modules/module-rygel-media-server.c:548
-#: ../src/modules/module-rygel-media-server.c:903
+#: ../src/modules/module-rygel-media-server.c:508
+#: ../src/modules/module-rygel-media-server.c:546
+#: ../src/modules/module-rygel-media-server.c:905
msgid "Output Devices"
-msgstr ""
+msgstr "Dispositius de sortida"
-#: ../src/modules/module-rygel-media-server.c:511
-#: ../src/modules/module-rygel-media-server.c:549
-#: ../src/modules/module-rygel-media-server.c:904
-#, fuzzy
+#: ../src/modules/module-rygel-media-server.c:509
+#: ../src/modules/module-rygel-media-server.c:547
+#: ../src/modules/module-rygel-media-server.c:906
msgid "Input Devices"
-msgstr "Entrada %s"
+msgstr "Dispositius d'entrada"
-#: ../src/modules/module-rygel-media-server.c:1056
+#: ../src/modules/module-rygel-media-server.c:1063
msgid "Audio on @HOSTNAME@"
-msgstr ""
+msgstr "Àudio a @HOSTNAME@"
-#: ../src/modules/alsa/alsa-mixer.c:2219
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2291
msgid "Input"
-msgstr "Entrada %s"
+msgstr "Entrada"
-#: ../src/modules/alsa/alsa-mixer.c:2220
+#: ../src/modules/alsa/alsa-mixer.c:2292
msgid "Docking Station Input"
-msgstr ""
+msgstr "Entrada de l'estació d'acoblament"
-#: ../src/modules/alsa/alsa-mixer.c:2221
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2293
msgid "Docking Station Microphone"
-msgstr "Audio intern"
+msgstr "Micròfon de l'estació d'acoblament"
-#: ../src/modules/alsa/alsa-mixer.c:2222
+#: ../src/modules/alsa/alsa-mixer.c:2294
msgid "Docking Station Line In"
-msgstr ""
+msgstr "Entrada de línia de l'estació d'acoblament"
-#: ../src/modules/alsa/alsa-mixer.c:2223 ../src/modules/alsa/alsa-mixer.c:2307
+#: ../src/modules/alsa/alsa-mixer.c:2295 ../src/modules/alsa/alsa-mixer.c:2380
msgid "Line In"
-msgstr ""
+msgstr "Entrada de línia"
-#: ../src/modules/alsa/alsa-mixer.c:2224 ../src/modules/alsa/alsa-mixer.c:2302
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2296 ../src/modules/alsa/alsa-mixer.c:2374
+#: ../src/modules/bluetooth/module-bluez4-device.c:2102
+#: ../src/modules/bluetooth/module-bluez5-device.c:1710
msgid "Microphone"
-msgstr "Mono analògic"
+msgstr "Micròfon"
-#: ../src/modules/alsa/alsa-mixer.c:2225 ../src/modules/alsa/alsa-mixer.c:2303
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2297 ../src/modules/alsa/alsa-mixer.c:2375
msgid "Front Microphone"
-msgstr "Mono analògic"
+msgstr "Micròfon frontal"
-#: ../src/modules/alsa/alsa-mixer.c:2226 ../src/modules/alsa/alsa-mixer.c:2304
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2298 ../src/modules/alsa/alsa-mixer.c:2376
msgid "Rear Microphone"
-msgstr "Mono analògic"
+msgstr "Micròfon posterior"
-#: ../src/modules/alsa/alsa-mixer.c:2227
+#: ../src/modules/alsa/alsa-mixer.c:2299
msgid "External Microphone"
-msgstr ""
+msgstr "Micròfon extern"
-#: ../src/modules/alsa/alsa-mixer.c:2228 ../src/modules/alsa/alsa-mixer.c:2306
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2300 ../src/modules/alsa/alsa-mixer.c:2378
msgid "Internal Microphone"
-msgstr "Audio intern"
+msgstr "Micròfon intern"
-#: ../src/modules/alsa/alsa-mixer.c:2229 ../src/modules/alsa/alsa-mixer.c:2308
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2301 ../src/modules/alsa/alsa-mixer.c:2381
msgid "Radio"
-msgstr "Mono analògic"
+msgstr "Ràdio"
-#: ../src/modules/alsa/alsa-mixer.c:2230 ../src/modules/alsa/alsa-mixer.c:2309
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2302 ../src/modules/alsa/alsa-mixer.c:2382
msgid "Video"
-msgstr "Estèreo analògic"
+msgstr "Vídeo"
-#: ../src/modules/alsa/alsa-mixer.c:2231
+#: ../src/modules/alsa/alsa-mixer.c:2303
msgid "Automatic Gain Control"
-msgstr ""
+msgstr "Control de guany automàtic"
-#: ../src/modules/alsa/alsa-mixer.c:2232
+#: ../src/modules/alsa/alsa-mixer.c:2304
msgid "No Automatic Gain Control"
-msgstr ""
+msgstr "Sense control de guany automàtic"
-#: ../src/modules/alsa/alsa-mixer.c:2233
+#: ../src/modules/alsa/alsa-mixer.c:2305
msgid "Boost"
-msgstr ""
+msgstr "Accentuació"
-#: ../src/modules/alsa/alsa-mixer.c:2234
+#: ../src/modules/alsa/alsa-mixer.c:2306
msgid "No Boost"
-msgstr ""
+msgstr "Sense accentuació"
-#: ../src/modules/alsa/alsa-mixer.c:2235
+#: ../src/modules/alsa/alsa-mixer.c:2307
msgid "Amplifier"
-msgstr ""
+msgstr "Amplificador"
-#: ../src/modules/alsa/alsa-mixer.c:2236
+#: ../src/modules/alsa/alsa-mixer.c:2308
msgid "No Amplifier"
-msgstr ""
+msgstr "Sense amplificador"
-#: ../src/modules/alsa/alsa-mixer.c:2237
+#: ../src/modules/alsa/alsa-mixer.c:2309
msgid "Bass Boost"
-msgstr ""
+msgstr "Sense accentuació dels baixos"
-#: ../src/modules/alsa/alsa-mixer.c:2238
+#: ../src/modules/alsa/alsa-mixer.c:2310
msgid "No Bass Boost"
-msgstr ""
+msgstr "Sense accentuació dels baixos"
-#: ../src/modules/alsa/alsa-mixer.c:2239
+#: ../src/modules/alsa/alsa-mixer.c:2311
+#: ../src/modules/bluetooth/module-bluez4-device.c:2107
+#: ../src/modules/bluetooth/module-bluez5-device.c:1717
msgid "Speaker"
-msgstr ""
+msgstr "Altaveu"
-#: ../src/modules/alsa/alsa-mixer.c:2240 ../src/modules/alsa/alsa-mixer.c:2311
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2312 ../src/modules/alsa/alsa-mixer.c:2384
msgid "Headphones"
-msgstr "Mono analògic"
+msgstr "Auriculars"
-#: ../src/modules/alsa/alsa-mixer.c:2301
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2373
msgid "Analog Input"
-msgstr "Mono analògic"
+msgstr "Entrada analògica"
#: ../src/modules/alsa/alsa-mixer.c:2305
msgid "Dock Microphone"
msgstr ""
-#: ../src/modules/alsa/alsa-mixer.c:2310
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2383
msgid "Analog Output"
-msgstr "Sortida nul·la"
+msgstr "Sortida analògica"
#: ../src/modules/alsa/alsa-mixer.c:2312
msgid "LFE on Separate Mono Output"
msgstr ""
-#: ../src/modules/alsa/alsa-mixer.c:2313
+#: ../src/modules/alsa/alsa-mixer.c:2386
msgid "Line Out"
-msgstr ""
+msgstr "Sortida de línia"
-#: ../src/modules/alsa/alsa-mixer.c:2314
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2387
msgid "Analog Mono Output"
-msgstr "Mono analògic"
+msgstr "Sortida mono analògica"
-#: ../src/modules/alsa/alsa-mixer.c:2315
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2388
msgid "Speakers"
-msgstr "Estèreo analògic"
+msgstr "Altaveus"
-#: ../src/modules/alsa/alsa-mixer.c:2316
+#: ../src/modules/alsa/alsa-mixer.c:2389
msgid "HDMI / DisplayPort"
-msgstr ""
+msgstr "HDMI / DisplayPort"
-#: ../src/modules/alsa/alsa-mixer.c:2317
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:2390
msgid "Digital Output (S/PDIF)"
-msgstr "Estèreo digital (HDMI)"
+msgstr "Sortida digital (S/PDIF)"
#: ../src/modules/alsa/alsa-mixer.c:2318
#, fuzzy
@@ -2816,20 +2806,17 @@ msgstr "Mono analògic"
msgid "Analog Stereo"
msgstr "Estèreo analògic"
-#: ../src/modules/alsa/alsa-mixer.c:3758
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3901
msgid "Analog Surround 2.1"
-msgstr "Envolvent analògic 4.1 "
+msgstr "So envoltant analògic 2.1"
-#: ../src/modules/alsa/alsa-mixer.c:3759
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3902
msgid "Analog Surround 3.0"
-msgstr "Envolvent analògic 4.0 "
+msgstr "So envoltant analògic 3.0"
-#: ../src/modules/alsa/alsa-mixer.c:3760
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3903
msgid "Analog Surround 3.1"
-msgstr "Envolvent analògic 4.1 "
+msgstr "So envoltant analògic 4.1"
#: ../src/modules/alsa/alsa-mixer.c:3761
msgid "Analog Surround 4.0"
@@ -2847,20 +2834,17 @@ msgstr "Envoltant analògic 5.0"
msgid "Analog Surround 5.1"
msgstr "Envoltant analògic 5.1"
-#: ../src/modules/alsa/alsa-mixer.c:3765
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3908
msgid "Analog Surround 6.0"
-msgstr "Envolvent analògic 4.0 "
+msgstr "So envoltant analògic 6.0"
-#: ../src/modules/alsa/alsa-mixer.c:3766
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3909
msgid "Analog Surround 6.1"
-msgstr "Envolvent analògic 4.1 "
+msgstr "So envoltant analògic 6.1"
-#: ../src/modules/alsa/alsa-mixer.c:3767
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3910
msgid "Analog Surround 7.0"
-msgstr "Envolvent analògic 4.0 "
+msgstr "So envoltant analògic 7.0"
#: ../src/modules/alsa/alsa-mixer.c:3768
msgid "Analog Surround 7.1"
@@ -2887,33 +2871,29 @@ msgstr "Envolvent digital 5.1 (IEC958/AC3)"
msgid "Digital Stereo (HDMI)"
msgstr "Estèreo digital (HDMI)"
-#: ../src/modules/alsa/alsa-mixer.c:3774
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:3918
msgid "Digital Surround 5.1 (HDMI)"
-msgstr "Envolvent digital 5.1 (IEC958/AC3)"
+msgstr "So envoltant digital 5.1 (HDMI)"
-#: ../src/modules/alsa/alsa-mixer.c:3895
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:4049
msgid "Analog Mono Duplex"
-msgstr "Mono analògic"
+msgstr "Dúplex mono analògic"
-#: ../src/modules/alsa/alsa-mixer.c:3896
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:4050
msgid "Analog Stereo Duplex"
-msgstr "Estèreo analògic"
+msgstr "Dúplex estèreo analògic"
-#: ../src/modules/alsa/alsa-mixer.c:3897
-#, fuzzy
+#: ../src/modules/alsa/alsa-mixer.c:4051
msgid "Digital Stereo Duplex (IEC958)"
-msgstr "Estèreo digital (IEC958)"
+msgstr "Dúplex estèreo digital (IEC958)"
-#: ../src/modules/alsa/alsa-mixer.c:3997
-#, fuzzy, c-format
+#: ../src/modules/alsa/alsa-mixer.c:4151
+#, c-format
msgid "%s Output"
-msgstr "Sortida nul·la"
+msgstr "Sortida %s"
-#: ../src/modules/alsa/alsa-mixer.c:4005
-#, fuzzy, c-format
+#: ../src/modules/alsa/alsa-mixer.c:4159
+#, c-format
msgid "%s Input"
msgstr "Entrada %s"
@@ -2982,16 +2962,637 @@ msgid ""
"See --dump-resample-methods for possible values of resample methods.\n"
msgstr ""
-#: ../src/tests/resampler-test.c:356
-#, fuzzy, c-format
+#: ../src/tests/resampler-test.c:354
+#, c-format
msgid "%s %s\n"
-msgstr "%s %s"
+msgstr "%s %s\n"
#: ../src/tests/resampler-test.c:419
#, c-format
msgid "=== %d seconds: %d Hz %d ch (%s) -> %d Hz %d ch (%s)"
msgstr ""
+#: ../src/daemon/cmdline.c:111
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+"COMMANDS:\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" --dump-conf Dump default configuration\n"
+" --dump-modules Dump list of available modules\n"
+" --dump-resample-methods Dump available resample methods\n"
+" --cleanup-shm Cleanup stale shared memory "
+"segments\n"
+" --start Start the daemon if it is not "
+"running\n"
+" -k --kill Kill a running daemon\n"
+" --check Check for a running daemon (only "
+"returns exit code)\n"
+"\n"
+"OPTIONS:\n"
+" --system[=BOOL] Run as system-wide instance\n"
+" -D, --daemonize[=BOOL] Daemonize after startup\n"
+" --fail[=BOOL] Quit when startup fails\n"
+" --high-priority[=BOOL] Try to set high nice level\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_NICE)\n"
+" --realtime[=BOOL] Try to enable realtime scheduling\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_RTPRIO)\n"
+" --disallow-module-loading[=BOOL] Disallow module user requested "
+"module\n"
+" loading/unloading after startup\n"
+" --disallow-exit[=BOOL] Disallow user requested exit\n"
+" --exit-idle-time=SECS Terminate the daemon when idle and "
+"this\n"
+" time passed\n"
+" --scache-idle-time=SECS Unload autoloaded samples when idle "
+"and\n"
+" this time passed\n"
+" --log-level[=LEVEL] Increase or set verbosity level\n"
+" -v --verbose Increase the verbosity level\n"
+" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
+" Specify the log target\n"
+" --log-meta[=BOOL] Include code location in log "
+"messages\n"
+" --log-time[=BOOL] Include timestamps in log messages\n"
+" --log-backtrace=FRAMES Include a backtrace in log messages\n"
+" -p, --dl-search-path=PATH Set the search path for dynamic "
+"shared\n"
+" objects (plugins)\n"
+" --resample-method=METHOD Use the specified resampling method\n"
+" (See --dump-resample-methods for\n"
+" possible values)\n"
+" --use-pid-file[=BOOL] Create a PID file\n"
+" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
+" platforms that support it.\n"
+" --disable-shm[=BOOL] Disable shared memory support.\n"
+"\n"
+"STARTUP SCRIPT:\n"
+" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
+"with\n"
+" the specified argument\n"
+" -F, --file=FILENAME Run the specified script\n"
+" -C Open a command line on the running "
+"TTY\n"
+" after startup\n"
+"\n"
+" -n Don't load default script file\n"
+msgstr ""
+
+#: ../src/daemon/cmdline.c:325
+msgid ""
+"Invalid log target: use either 'syslog', 'journal','stderr' or 'auto' or a "
+"valid file name 'file:<path>', 'newfile:<path>'."
+msgstr ""
+
+#: ../src/daemon/cmdline.c:327
+msgid ""
+"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
+"name 'file:<path>', 'newfile:<path>'."
+msgstr ""
+
+#: ../src/daemon/ltdl-bind-now.c:75
+#, c-format
+msgid "Failed to open module %s: %s"
+msgstr "No s'ha pogut obrir el mòdul %s: %s"
+
+#: ../src/modules/alsa/alsa-mixer.c:2379
+msgid "Headset Microphone"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-mixer.c:2391
+msgid "Digital Input (S/PDIF)"
+msgstr "Entrada digital (S/PDIF)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3900
+msgid "Multichannel"
+msgstr "Multicanal"
+
+#: ../src/modules/alsa/alsa-mixer.c:3916
+msgid "Digital Surround 5.1 (IEC958/DTS)"
+msgstr "So envoltant digital 5.1 (IEC958/DTS)"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2092
+#: ../src/modules/bluetooth/module-bluez5-device.c:1700
+msgid "Headset"
+msgstr "Auricular"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2097
+#: ../src/modules/bluetooth/module-bluez5-device.c:1705
+msgid "Handsfree"
+msgstr "Mans lliures"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2112
+#: ../src/modules/bluetooth/module-bluez5-device.c:1723
+msgid "Headphone"
+msgstr "Auricular"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2117
+#: ../src/modules/bluetooth/module-bluez5-device.c:1728
+msgid "Portable"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2122
+#: ../src/modules/bluetooth/module-bluez5-device.c:1733
+msgid "Car"
+msgstr "Cotxe"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2127
+#: ../src/modules/bluetooth/module-bluez5-device.c:1738
+msgid "HiFi"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2132
+#: ../src/modules/bluetooth/module-bluez5-device.c:1743
+msgid "Phone"
+msgstr "Telèfon"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2140
+#: ../src/modules/bluetooth/module-bluez5-device.c:1695
+#: ../src/modules/bluetooth/module-bluez5-device.c:1711
+#: ../src/modules/bluetooth/module-bluez5-device.c:1749
+msgid "Bluetooth Output"
+msgstr "Sortida bluetooth"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2143
+#: ../src/modules/bluetooth/module-bluez5-device.c:1694
+#: ../src/modules/bluetooth/module-bluez5-device.c:1716
+#: ../src/modules/bluetooth/module-bluez5-device.c:1722
+#: ../src/modules/bluetooth/module-bluez5-device.c:1748
+msgid "Bluetooth Input"
+msgstr "Entrada bluetooth"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1786
+msgid "High Fidelity Playback (A2DP Sink)"
+msgstr "Reproducció d'alta fidelitat (canonada A2DP)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1797
+msgid "High Fidelity Capture (A2DP Source)"
+msgstr "Captura d'alta fidelitat (origen A2DP)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1808
+msgid "Headset Head Unit (HSP/HFP)"
+msgstr ""
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1820
+msgid "Headset Audio Gateway (HSP/HFP)"
+msgstr ""
+
+#. add on profile
+#: ../src/modules/macosx/module-coreaudio-device.c:754
+msgid "On"
+msgstr ""
+
+#. TODO: old tunnel put here the remote sink_name into stream name e.g. 'Null Output for lynxis@lazus'
+#. TODO: old tunnel put here the remote source_name into stream name e.g. 'Null Output for lynxis@lazus'
+#: ../src/modules/module-tunnel-sink-new.c:307
+#: ../src/modules/module-tunnel-source-new.c:305
+#, c-format
+msgid "Tunnel for %s@%s"
+msgstr "Túnel per %s@%s"
+
+#: ../src/modules/module-tunnel-sink-new.c:517
+#: ../src/modules/module-tunnel-source-new.c:516
+#, c-format
+msgid "Tunnel to %s/%s"
+msgstr ""
+
+#: ../src/modules/module-virtual-surround-sink.c:47
+msgid "Virtual surround sink"
+msgstr ""
+
+#: ../src/modules/module-virtual-surround-sink.c:51
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> "
+"use_volume_sharing=<yes or no> force_flat_volume=<yes or no> hrir=/path/to/"
+"left_hrir.wav "
+msgstr ""
+
+#: ../src/pulse/direction.c:37
+msgid "input"
+msgstr "entrada"
+
+#: ../src/pulse/direction.c:39
+msgid "output"
+msgstr "sortida"
+
+#: ../src/pulse/direction.c:41
+msgid "bidirectional"
+msgstr "bidireccional"
+
+#: ../src/pulse/direction.c:43
+msgid "invalid"
+msgstr "no vàlid"
+
+#: ../src/pulsecore/core-util.c:1820
+#, c-format
+msgid ""
+"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could "
+"e g happen if you try to connect to a non-root PulseAudio as a root user, "
+"over the native protocol. Don't do that.)"
+msgstr ""
+
+#: ../src/pulsecore/core-util.h:93
+msgid "yes"
+msgstr "sí"
+
+#: ../src/pulsecore/core-util.h:93
+msgid "no"
+msgstr "no"
+
+#: ../src/pulsecore/log.c:153
+#, c-format
+msgid "Failed to open target file '%s'."
+msgstr ""
+
+#: ../src/pulsecore/log.c:176
+#, c-format
+msgid ""
+"Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
+msgstr ""
+
+#: ../src/pulsecore/log.c:631
+msgid "Invalid log target."
+msgstr ""
+
+#: ../src/pulse/error.c:47
+msgid "No authentication key"
+msgstr ""
+
+#: ../src/tests/resampler-test.c:255
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+"-h, --help Show this help\n"
+"-v, --verbose Print debug messages\n"
+" --from-rate=SAMPLERATE From sample rate in Hz (defaults to "
+"44100)\n"
+" --from-format=SAMPLEFORMAT From sample type (defaults to s16le)\n"
+" --from-channels=CHANNELS From number of channels (defaults to "
+"1)\n"
+" --to-rate=SAMPLERATE To sample rate in Hz (defaults to "
+"44100)\n"
+" --to-format=SAMPLEFORMAT To sample type (defaults to s16le)\n"
+" --to-channels=CHANNELS To number of channels (defaults to 1)\n"
+" --resample-method=METHOD Resample method (defaults to auto)\n"
+" --seconds=SECONDS From stream duration (defaults to 60)\n"
+"\n"
+"If the formats are not specified, the test performs all formats "
+"combinations,\n"
+"back and forth.\n"
+"\n"
+"Sample type must be one of s16le, s16be, u8, float32le, float32be, ulaw, "
+"alaw,\n"
+"s24le, s24be, s24-32le, s24-32be, s32le, s32be (defaults to s16ne)\n"
+"\n"
+"See --dump-resample-methods for possible values of resample methods.\n"
+msgstr ""
+
+#: ../src/utils/pacat.c:357
+#, c-format
+msgid "Connected to device %s (index: %u, suspended: %s)."
+msgstr ""
+
+#: ../src/utils/pacat.c:512
+#, c-format
+msgid "Failed to set monitor stream: %s"
+msgstr ""
+
+#: ../src/utils/pacat.c:670
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"\n"
+" -r, --record Create a connection for recording\n"
+" -p, --playback Create a connection for playback\n"
+"\n"
+" -v, --verbose Enable verbose operations\n"
+"\n"
+" -s, --server=SERVER The name of the server to connect "
+"to\n"
+" -d, --device=DEVICE The name of the sink/source to "
+"connect to\n"
+" -n, --client-name=NAME How to call this client on the "
+"server\n"
+" --stream-name=NAME How to call this stream on the "
+"server\n"
+" --volume=VOLUME Specify the initial (linear) volume "
+"in range 0...65536\n"
+" --rate=SAMPLERATE The sample rate in Hz (defaults to "
+"44100)\n"
+" --format=SAMPLEFORMAT The sample type, one of s16le, "
+"s16be, u8, float32le,\n"
+" float32be, ulaw, alaw, s32le, s32be, "
+"s24le, s24be,\n"
+" s24-32le, s24-32be (defaults to "
+"s16ne)\n"
+" --channels=CHANNELS The number of channels, 1 for mono, "
+"2 for stereo\n"
+" (defaults to 2)\n"
+" --channel-map=CHANNELMAP Channel map to use instead of the "
+"default\n"
+" --fix-format Take the sample format from the sink/"
+"source the stream is\n"
+" being connected to.\n"
+" --fix-rate Take the sampling rate from the sink/"
+"source the stream is\n"
+" being connected to.\n"
+" --fix-channels Take the number of channels and the "
+"channel map\n"
+" from the sink/source the stream is "
+"being connected to.\n"
+" --no-remix Don't upmix or downmix channels.\n"
+" --no-remap Map channels by index instead of "
+"name.\n"
+" --latency=BYTES Request the specified latency in "
+"bytes.\n"
+" --process-time=BYTES Request the specified process time "
+"per request in bytes.\n"
+" --latency-msec=MSEC Request the specified latency in "
+"msec.\n"
+" --process-time-msec=MSEC Request the specified process time "
+"per request in msec.\n"
+" --property=PROPERTY=VALUE Set the specified property to the "
+"specified value.\n"
+" --raw Record/play raw PCM data.\n"
+" --passthrough Passthrough data.\n"
+" --file-format[=FFORMAT] Record/play formatted PCM data.\n"
+" --list-file-formats List available file formats.\n"
+" --monitor-stream=INDEX Record from the sink input with "
+"index INDEX.\n"
+msgstr ""
+
+#: ../src/utils/pacat.c:989
+msgid "Failed to parse the argument for --monitor-stream"
+msgstr ""
+
+#: ../src/utils/pacmd.c:52 ../src/utils/pacmd.c:60 ../src/utils/pactl.c:1565
+msgid "NAME|#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:58
+msgid "NAME|#N KEY=VALUE"
+msgstr ""
+
+#: ../src/utils/pacmd.c:59
+msgid "#N KEY=VALUE"
+msgstr ""
+
+#: ../src/utils/pacmd.c:62
+msgid "NAME SINK|#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:64 ../src/utils/pacmd.c:65
+msgid "NAME FILENAME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:66
+msgid "PATHNAME"
+msgstr ""
+
+#: ../src/utils/pacmd.c:67
+msgid "FILENAME SINK|#N"
+msgstr ""
+
+#: ../src/utils/pacmd.c:71 ../src/utils/pacmd.c:77 ../src/utils/pacmd.c:78
+msgid "1|0"
+msgstr "1|0"
+
+#: ../src/utils/pacmd.c:74 ../src/utils/pactl.c:1576
+msgid "CARD-NAME|CARD-#N PORT OFFSET"
+msgstr ""
+
+#: ../src/utils/pacmd.c:75
+msgid "TARGET"
+msgstr ""
+
+#: ../src/utils/pacmd.c:76
+msgid "NUMERIC LEVEL"
+msgstr ""
+
+#: ../src/utils/pacmd.c:79
+msgid "FRAMES"
+msgstr ""
+
+#: ../src/utils/pacmd.c:81
+#, c-format
+msgid ""
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"When no command is given pacmd starts in the interactive mode.\n"
+msgstr ""
+
+#: ../src/utils/pacmd.c:128
+#, c-format
+msgid ""
+"pacmd %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:281
+#, c-format
+msgid ""
+"Sink #%u\n"
+"\tState: %s\n"
+"\tName: %s\n"
+"\tDescription: %s\n"
+"\tDriver: %s\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tOwner Module: %u\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBase Volume: %s\n"
+"\tMonitor Source: %s\n"
+"\tLatency: %0.0f usec, configured %0.0f usec\n"
+"\tFlags: %s%s%s%s%s%s%s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:388
+#, c-format
+msgid ""
+"Source #%u\n"
+"\tState: %s\n"
+"\tName: %s\n"
+"\tDescription: %s\n"
+"\tDriver: %s\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tOwner Module: %u\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBase Volume: %s\n"
+"\tMonitor of Sink: %s\n"
+"\tLatency: %0.0f usec, configured %0.0f usec\n"
+"\tFlags: %s%s%s%s%s%s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:600
+#, c-format
+msgid ""
+"\t\t\tProperties:\n"
+"\t\t\t\t%s\n"
+msgstr ""
+"\t\t\tPropietats:\n"
+"\t\t\t\t%s\n"
+
+#: ../src/utils/pactl.c:605
+#, c-format
+msgid "\t\t\tPart of profile(s): %s"
+msgstr ""
+
+#: ../src/utils/pactl.c:651
+#, c-format
+msgid ""
+"Sink Input #%u\n"
+"\tDriver: %s\n"
+"\tOwner Module: %s\n"
+"\tClient: %s\n"
+"\tSink: %u\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tFormat: %s\n"
+"\tCorked: %s\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBuffer Latency: %0.0f usec\n"
+"\tSink Latency: %0.0f usec\n"
+"\tResample method: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:721
+#, c-format
+msgid ""
+"Source Output #%u\n"
+"\tDriver: %s\n"
+"\tOwner Module: %s\n"
+"\tClient: %s\n"
+"\tSource: %u\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tFormat: %s\n"
+"\tCorked: %s\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBuffer Latency: %0.0f usec\n"
+"\tSource Latency: %0.0f usec\n"
+"\tResample method: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:789
+#, c-format
+msgid ""
+"Sample #%u\n"
+"\tName: %s\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tDuration: %0.1fs\n"
+"\tSize: %s\n"
+"\tLazy: %s\n"
+"\tFilename: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:866
+#, c-format
+msgid "Failed to unload module: Module %s not loaded"
+msgstr ""
+
+#: ../src/utils/pactl.c:884
+#, c-format
+msgid ""
+"Failed to set volume: You tried to set volumes for %d channels, whereas "
+"channel/s supported = %d\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1171
+msgid "card"
+msgstr "targeta"
+
+#: ../src/utils/pactl.c:1515
+msgid "Invalid number of volume specifications.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1527
+msgid "Inconsistent volume specification.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1571
+msgid "NAME|#N VOLUME [VOLUME ...]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1572
+msgid "#N VOLUME [VOLUME ...]"
+msgstr ""
+
+#: ../src/utils/pactl.c:1573
+msgid "NAME|#N 1|0|toggle"
+msgstr ""
+
+#: ../src/utils/pactl.c:1574
+msgid "#N 1|0|toggle"
+msgstr ""
+
+#: ../src/utils/pactl.c:1578
+#, c-format
+msgid ""
+"\n"
+"The special names @DEFAULT_SINK@, @DEFAULT_SOURCE@ and @DEFAULT_MONITOR@\n"
+"can be used to specify the default sink, source and monitor.\n"
+msgstr ""
+
+#: ../src/utils/pactl.c:1789
+msgid "You have to specify a module index or name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1807 ../src/utils/pactl.c:1827
+msgid "Invalid suspend specification."
+msgstr ""
+
+#: ../src/utils/pactl.c:1861
+msgid "You have to specify a sink name"
+msgstr ""
+
+#: ../src/utils/pactl.c:1882
+msgid "You have to specify a source name"
+msgstr ""
+
+#: ../src/utils/pactl.c:2032
+msgid "You have to specify a card name/index, a port name and a latency offset"
+msgstr ""
+
+#: ../src/utils/pactl.c:2039
+msgid "Could not parse latency offset"
+msgstr ""
+
#~ msgid "[%s:%u] rlimit not supported on this platform."
#~ msgstr "[%s:%u] rlimit no disponible en aquesta plataforma."
diff --git a/po/cs.gmo b/po/cs.gmo
index d1e7553..7ae8fe7 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/da.gmo b/po/da.gmo
index 7f047cb..30c0d48 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/de.gmo b/po/de.gmo
index 0d10da4..452916f 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de_CH.gmo b/po/de_CH.gmo
index 75b3395..f675a3e 100644
--- a/po/de_CH.gmo
+++ b/po/de_CH.gmo
Binary files differ
diff --git a/po/el.gmo b/po/el.gmo
index 428b4cc..151b71f 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/es.gmo b/po/es.gmo
index 08d0045..1b9ece4 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index 61f7f01..338f89e 100644
--- a/po/es.po
+++ b/po/es.po
@@ -4,224 +4,451 @@
# Domingo Becker <domingobecker@gmail.com>, 2009.
# Héctor Daniel Cabrera <h.daniel.cabrera@gmail.com>, 2009.
# Fernando Gonzalez Blanco <fgonz@fedoraproject.org>, 2009, 2012.
-#
+# Alberto Castillo <acg@albertocg.com>, 2016. #zanata
+# Gladys Guerrero Lozano <gguerrer@redhat.com>, 2016. #zanata
+# Máximo Castañeda Riloba <mcrcctm@gmail.com>, 2016. #zanata
+# Wim Taymans <wim.taymans@gmail.com>, 2016. #zanata
msgid ""
msgstr ""
-"Project-Id-Version: PulseAudio\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-30 10:10+0000\n"
-"PO-Revision-Date: 2012-01-30 09:53+0000\n"
-"Last-Translator: Fernando Gonzalez Blanco <fgonz@fedoraproject.org>\n"
-"Language-Team: Spanish <fedora-trans-es@redhat.com>\n"
-"Language: es\n"
+"POT-Creation-Date: 2015-10-06 16:57+0200\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"PO-Revision-Date: 2016-08-25 09:35+0000\n"
+"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"Language-Team: Spanish <fedora-trans-es@redhat.com>\n"
+"Language: es\n"
"X-Poedit-Language: Spanish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Zanata 4.6.2\n"
-#: ../src/modules/alsa/alsa-util.c:1136 ../src/modules/alsa/alsa-util.c:1204
+#: ../src/daemon/cmdline.c:111
#, c-format
msgid ""
-"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
-"ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"%s [options]\n"
+"\n"
+"COMMANDS:\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" --dump-conf Dump default configuration\n"
+" --dump-modules Dump list of available modules\n"
+" --dump-resample-methods Dump available resample methods\n"
+" --cleanup-shm Cleanup stale shared memory segments\n"
+" --start Start the daemon if it is not "
+"running\n"
+" -k --kill Kill a running daemon\n"
+" --check Check for a running daemon (only "
+"returns exit code)\n"
+"\n"
+"OPTIONS:\n"
+" --system[=BOOL] Run as system-wide instance\n"
+" -D, --daemonize[=BOOL] Daemonize after startup\n"
+" --fail[=BOOL] Quit when startup fails\n"
+" --high-priority[=BOOL] Try to set high nice level\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_NICE)\n"
+" --realtime[=BOOL] Try to enable realtime scheduling\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_RTPRIO)\n"
+" --disallow-module-loading[=BOOL] Disallow module user requested "
+"module\n"
+" loading/unloading after startup\n"
+" --disallow-exit[=BOOL] Disallow user requested exit\n"
+" --exit-idle-time=SECS Terminate the daemon when idle and "
+"this\n"
+" time passed\n"
+" --scache-idle-time=SECS Unload autoloaded samples when idle "
+"and\n"
+" this time passed\n"
+" --log-level[=LEVEL] Increase or set verbosity level\n"
+" -v --verbose Increase the verbosity level\n"
+" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
+" Specify the log target\n"
+" --log-meta[=BOOL] Include code location in log "
+"messages\n"
+" --log-time[=BOOL] Include timestamps in log messages\n"
+" --log-backtrace=FRAMES Include a backtrace in log messages\n"
+" -p, --dl-search-path=PATH Set the search path for dynamic "
+"shared\n"
+" objects (plugins)\n"
+" --resample-method=METHOD Use the specified resampling method\n"
+" (See --dump-resample-methods for\n"
+" possible values)\n"
+" --use-pid-file[=BOOL] Create a PID file\n"
+" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
+" platforms that support it.\n"
+" --disable-shm[=BOOL] Disable shared memory support.\n"
+"\n"
+"STARTUP SCRIPT:\n"
+" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
+"with\n"
+" the specified argument\n"
+" -F, --file=FILENAME Run the specified script\n"
+" -C Open a command line on the running "
+"TTY\n"
+" after startup\n"
+"\n"
+" -n Don't load default script file\n"
msgstr ""
-"snd_pcm_avail() devolvió un valor que es excepcionalmente grande: %lu bytes "
-"(%lu ms).\n"
-"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
-"informe ésto a los desarrolladores de ALSA."
+"%s [opciones]\n"
+"\n"
+"COMANDOS:\n"
+" -h, --help Muestra esta ayuda\n"
+" --version Muestra la versión\n"
+" --dump-conf Vuelca la configuración "
+"predeterminada\n"
+" --dump-modules Lista los módulos disponibles\n"
+" --dump-resample-methods Lista los métodos de remuestreo\n"
+" --cleanup-shm Limpia segmentos de memoria "
+"compartida\n"
+" --start Inicia el demonio si no está ya en\n"
+" marcha\n"
+" -k --kill Mata un demonio en ejecución\n"
+" --check Comprueba si hay un demonio en "
+"marcha\n"
+" (sólo devuelve el código de retorno)\n"
+"\n"
+"OPCIONES:\n"
+" --system[=BOOL] Se ejecuta como instancia de sistema\n"
+" -D, --daemonize[=BOOL] Pasa a demonio tras el inicio\n"
+" --fail[=BOOL] Sale si el inicio falla\n"
+" --high-priority[=BOOL] Intenta usar prioridad alta\n"
+" (sólo disponible como root, con SUID "
+"o\n"
+" con RLIMIT_NICE)\n"
+" --realtime[=BOOL] Intenta usar prioridad de tiempo "
+"real\n"
+" (sólo disponible como root, con SUID "
+"o\n"
+" con RLIMIT_RTPRIO)\n"
+" --disallow-module-loading[=BOOL] No permite la carga/desactivación de\n"
+" módulos por parte del usuario tras "
+"el\n"
+" inicio\n"
+" --disallow-exit[=BOOL] No permite la salida a petición del\n"
+" usuario\n"
+" --exit-idle-time=SEGUNDOS Finaliza el demonio tras ese tiempo\n"
+" de inactividad\n"
+" --scache-idle-time=SEGUNDOS Descarga las muestras automáticas "
+"tras\n"
+" ese tiempo de inactividad\n"
+" --log-level[=NIVEL] Aumenta o modifica el nivel de "
+"registro\n"
+" -v --verbose Aumenta el nivel de registro\n"
+" --log-target={auto,syslog,stderr,file:RUTA,newfile:RUTA}\n"
+" Indica dónde realizar el registro\n"
+" --log-meta[=BOOL] Incluye en el registro el punto del\n"
+" código\n"
+" --log-time[=BOOL] Incluye en el registro marcas de "
+"tiempo\n"
+" --log-backtrace=LOTES Incluye en el registro una traza\n"
+" -p, --dl-search-path=RUTA Indica la ruta de búsqueda de "
+"objetos\n"
+" dinámicos (complementos)\n"
+" --resample-method=MÉTODO Usa MÉTODO para remuestreo\n"
+" (Vea --dump-resample-methods para "
+"los\n"
+" posibles valores)\n"
+" --use-pid-file[=BOOL] Crea un archivo PID\n"
+" --no-cpu-limit[=BOOL] No instala el limitador de carga de "
+"CPU\n"
+" en las plataformas que lo permiten\n"
+" --disable-shm[=BOOL] Desactiva la memoria compartida\n"
+"\n"
+"SCRIPT DE INICIO:\n"
+" -L, --load=\"MÓDULO PARÁMETROS\" Carga el MÓDULO con los PARÁMETROS\n"
+" indicados\n"
+" -F, --file=ARCHIVO Ejecuta el script indicado\n"
+" -C Abre un intérprete de comandos tras\n"
+" el inicio\n"
+"\n"
+" -n No carga el script de inicio\n"
+" predeterminado\n"
-#: ../src/modules/alsa/alsa-util.c:1179
-#, c-format
+#: ../src/daemon/cmdline.c:243
+msgid "--daemonize expects boolean argument"
+msgstr "--daemonize espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:251
+msgid "--fail expects boolean argument"
+msgstr "--fail espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:262
msgid ""
-"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s"
-"%lu ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"--log-level expects log level argument (either numeric in range 0..4 or one "
+"of debug, info, notice, warn, error)."
msgstr ""
-"snd_pcm_delay() devolvió un valor que es excepcionalmente grande: %li bytes "
-"(%s%lu ms).\n"
-"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
-"informe ésto a los desarrolladores de ALSA."
+"--log-level espera un argumento en el nivel del log (ya sea numérico, que "
+"caiga en el rango de 0..4; ya sea uno de debug, info, notice, warn, o error)."
+" "
-#: ../src/modules/alsa/alsa-util.c:1220
-#, fuzzy, c-format
+#: ../src/daemon/cmdline.c:274
+msgid "--high-priority expects boolean argument"
+msgstr "--high-priority espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:282
+msgid "--realtime expects boolean argument"
+msgstr "--realtime espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:290
+msgid "--disallow-module-loading expects boolean argument"
+msgstr "--disallow-module-loading espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:298
+msgid "--disallow-exit expects boolean argument"
+msgstr "--disallow-exit espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:306
+msgid "--use-pid-file expects boolean argument"
+msgstr "--use pid-file espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:325
msgid ""
-"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
-"%lu.\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"Invalid log target: use either 'syslog', 'journal','stderr' or 'auto' or a "
+"valid file name 'file:<path>', 'newfile:<path>'."
msgstr ""
-"snd_pcm_avail() devolvió un valor que es excepcionalmente grande: %lu bytes "
-"(%lu ms).\n"
-"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
-"informe ésto a los desarrolladores de ALSA."
+"El tipo de registro no es válido; use 'syslog', 'journal', 'stderr', 'auto' "
+"o un nombre de fichero válido con 'file:<ruta>' o 'newfile:<ruta>'."
-#: ../src/modules/alsa/alsa-util.c:1263
-#, c-format
+#: ../src/daemon/cmdline.c:327
msgid ""
-"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
-"(%lu ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
+"name 'file:<path>', 'newfile:<path>'."
msgstr ""
-"snd_pcm_mmap_begin() devolvió un valor que es excepcionalmente grande: %lu "
-"bytes (%lu ms).\n"
-"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
-"informe ésto a los desarrolladores de ALSA."
+"El tipo de registro no es válido; use 'syslog', 'stderr', 'auto' o un nombre "
+"de fichero válido con 'file:<ruta>' o 'newfile:<ruta>'."
-#: ../src/modules/module-always-sink.c:38
-msgid "Always keeps at least one sink loaded even if it's a null one"
-msgstr "Siempre tenga al menos un sumidero cargado aunque sea uno nulo"
+#: ../src/daemon/cmdline.c:335
+msgid "--log-time expects boolean argument"
+msgstr "--log-time espera un argumento booleano"
-#: ../src/modules/module-always-sink.c:82
-msgid "Dummy Output"
-msgstr "Salida Ficticia"
+#: ../src/daemon/cmdline.c:343
+msgid "--log-meta expects boolean argument"
+msgstr "--log-meta espera un argumento booleano"
-#: ../src/modules/module-ladspa-sink.c:48
-msgid "Virtual LADSPA sink"
-msgstr "Sumidero virtual LADSPA"
+#: ../src/daemon/cmdline.c:363
+#, c-format
+msgid "Invalid resample method '%s'."
+msgstr "Método de remuestreo inválido '%s'"
-#: ../src/modules/module-ladspa-sink.c:52
-#, fuzzy
+#: ../src/daemon/cmdline.c:370
+msgid "--system expects boolean argument"
+msgstr "--system espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:378
+msgid "--no-cpu-limit expects boolean argument"
+msgstr "--no-cpu-limit espera un argumento booleano"
+
+#: ../src/daemon/cmdline.c:386
+msgid "--disable-shm expects boolean argument"
+msgstr "--disable-shm espera un argumento booleano"
+
+#: ../src/daemon/daemon-conf.c:258
+#, c-format
+msgid "[%s:%u] Invalid log target '%s'."
+msgstr "[%s:%u] Destino de log inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:273
+#, c-format
+msgid "[%s:%u] Invalid log level '%s'."
+msgstr "[%s:%u] Nivel de log inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:288
+#, c-format
+msgid "[%s:%u] Invalid resample method '%s'."
+msgstr "[%s:%u] Método de remuestreo inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:310
+#, c-format
+msgid "[%s:%u] Invalid rlimit '%s'."
+msgstr "[%s:%u] Rlimit inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:330
+#, c-format
+msgid "[%s:%u] Invalid sample format '%s'."
+msgstr "[%s:%u] Formato de muestra inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:347 ../src/daemon/daemon-conf.c:364
+#, c-format
+msgid "[%s:%u] Invalid sample rate '%s'."
+msgstr "[%s:%u] Tasa de muestra inválida '%s'."
+
+#: ../src/daemon/daemon-conf.c:387
+#, c-format
+msgid "[%s:%u] Invalid sample channels '%s'."
+msgstr "[%s:%u] Canales de muestra inválidos '%s'."
+
+#: ../src/daemon/daemon-conf.c:404
+#, c-format
+msgid "[%s:%u] Invalid channel map '%s'."
+msgstr "[%s:%u] Mapa de canal inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:421
+#, c-format
+msgid "[%s:%u] Invalid number of fragments '%s'."
+msgstr "[%s:%u] Cantidad de fragmentoa inválidos '%s'."
+
+#: ../src/daemon/daemon-conf.c:438
+#, c-format
+msgid "[%s:%u] Invalid fragment size '%s'."
+msgstr "[%s:%u] Tamaño inválido de fragmento '%s'."
+
+#: ../src/daemon/daemon-conf.c:455
+#, c-format
+msgid "[%s:%u] Invalid nice level '%s'."
+msgstr "[%s:%u] Nivel de nice inválido '%s'."
+
+#: ../src/daemon/daemon-conf.c:498
+#, c-format
+msgid "[%s:%u] Invalid server type '%s'."
+msgstr "[%s:%u] Tipo de servidor incorrecto: '%s'."
+
+#: ../src/daemon/daemon-conf.c:611
+#, c-format
+msgid "Failed to open configuration file: %s"
+msgstr "No se pudo abrir el archivo de configuración: %s"
+
+#: ../src/daemon/daemon-conf.c:627
msgid ""
-"sink_name=<name for the sink> sink_properties=<properties for the sink> "
-"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
-"channels=<number of channels> channel_map=<input channel map> plugin=<ladspa "
-"plugin name> label=<ladspa plugin label> control=<comma separated list of "
-"input control values> input_ladspaport_map=<comma separated list of input "
-"LADSPA port names> output_ladspaport_map=<comma separated list of output "
-"LADSPA port names> "
+"The specified default channel map has a different number of channels than "
+"the specified default number of channels."
msgstr ""
-"sink_name=<nombre para el sumidero> sink_properties=<propiedades para el "
-"sumidero> master=<nombre del sumidero a filtrar> format=<formato de ejemplo> "
-"rate=<tasa de ejemplo> channels=<cantidad de canaless> channel_map=<mapeo de "
-"canales> plugin=<nombre del complemento ladspa> label=<etiqueta del "
-"complemento ladspa> control=<lista separada por comas de valores de control "
-"de entrada>"
-
-#: ../src/modules/module-null-sink.c:49
-msgid "Clocked NULL sink"
-msgstr "Sumidero nulo sincronizado"
+"El mapa de canal predeterminado especificado tiene un número de canales "
+"distinto al especificado como predeterminado."
-#: ../src/modules/module-null-sink.c:284
-msgid "Null Output"
-msgstr "Salida Nula"
+#: ../src/daemon/daemon-conf.c:714
+#, c-format
+msgid "### Read from configuration file: %s ###\n"
+msgstr "### Leyendo desde el archivo de confioguración: %s ###\n"
-#: ../src/pulsecore/sink.c:3349
-msgid "Built-in Audio"
-msgstr "Audio Interno"
+#: ../src/daemon/dumpmodules.c:57
+#, c-format
+msgid "Name: %s\n"
+msgstr "Nombre: %s\n"
-#: ../src/pulsecore/sink.c:3354
-msgid "Modem"
-msgstr "Módem"
+#: ../src/daemon/dumpmodules.c:60
+#, c-format
+msgid "No module information available\n"
+msgstr "No existe información disponible acerca del módulo\n"
+
+#: ../src/daemon/dumpmodules.c:63
+#, c-format
+msgid "Version: %s\n"
+msgstr "Versión: %s\n"
+
+#: ../src/daemon/dumpmodules.c:65
+#, c-format
+msgid "Description: %s\n"
+msgstr "Descripción: %s\n"
-#: ../src/daemon/ltdl-bind-now.c:127
+#: ../src/daemon/dumpmodules.c:67
+#, c-format
+msgid "Author: %s\n"
+msgstr "Autor: %s\n"
+
+#: ../src/daemon/dumpmodules.c:69
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uso: %s\n"
+
+#: ../src/daemon/dumpmodules.c:70
+#, c-format
+msgid "Load Once: %s\n"
+msgstr "Carga una vez: %s\n"
+
+#: ../src/daemon/dumpmodules.c:72
+#, c-format
+msgid "DEPRECATION WARNING: %s\n"
+msgstr "ADVERTENCIA DE COMPATIBILIDAD: %s\n"
+
+#: ../src/daemon/dumpmodules.c:76
+#, c-format
+msgid "Path: %s\n"
+msgstr "Ruta: %s\n"
+
+#: ../src/daemon/ltdl-bind-now.c:75
+#, c-format
+msgid "Failed to open module %s: %s"
+msgstr "No se pudo abrir el módulo %s: %s"
+
+#: ../src/daemon/ltdl-bind-now.c:126
msgid "Failed to find original lt_dlopen loader."
msgstr "Falló al buscar cargador el cargador lt_dlopen original."
-#: ../src/daemon/ltdl-bind-now.c:132
+#: ../src/daemon/ltdl-bind-now.c:131
msgid "Failed to allocate new dl loader."
msgstr "Falló al asignar el cargador dl nuevo."
-#: ../src/daemon/ltdl-bind-now.c:145
+#: ../src/daemon/ltdl-bind-now.c:144
msgid "Failed to add bind-now-loader."
msgstr "Falló al agregar bind-now-loader."
-#: ../src/daemon/main.c:139
-#, c-format
-msgid "Got signal %s."
-msgstr "Se obtuvo la señal %s."
-
-#: ../src/daemon/main.c:166
-msgid "Exiting."
-msgstr "Saliendo."
-
-#: ../src/daemon/main.c:184
+#: ../src/daemon/main.c:160
#, c-format
msgid "Failed to find user '%s'."
msgstr "Falló al buscar usuario '%s'."
-#: ../src/daemon/main.c:189
+#: ../src/daemon/main.c:165
#, c-format
msgid "Failed to find group '%s'."
msgstr "Falló al buscar grupo '%s'."
-#: ../src/daemon/main.c:193
-#, c-format
-msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
-msgstr "Se encontró el usuario '%s' (UID %lu) y el grupo '%s' (GID %lu)."
-
-#: ../src/daemon/main.c:198
+#: ../src/daemon/main.c:174
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID del usuario '%s' y del grupo '%s' no son similares."
-#: ../src/daemon/main.c:203
+#: ../src/daemon/main.c:179
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "El directorio de inicio del usuario '%s' no es '%s', ignorando."
-#: ../src/daemon/main.c:206 ../src/daemon/main.c:211
+#: ../src/daemon/main.c:182 ../src/daemon/main.c:187
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Falló al crear '%s': %s"
-#: ../src/daemon/main.c:218
+#: ../src/daemon/main.c:194
#, c-format
msgid "Failed to change group list: %s"
msgstr "Falló al cambiar la lista de grupo: %s"
-#: ../src/daemon/main.c:234
+#: ../src/daemon/main.c:210
#, c-format
msgid "Failed to change GID: %s"
msgstr "Falló al cambiar GID: %s"
-#: ../src/daemon/main.c:250
+#: ../src/daemon/main.c:226
#, c-format
msgid "Failed to change UID: %s"
msgstr "Falló al cambiar UID: %s"
-#: ../src/daemon/main.c:269
-msgid "Successfully dropped root privileges."
-msgstr "Se han liberado con éxitos los privilegios de root."
-
-#: ../src/daemon/main.c:277
+#: ../src/daemon/main.c:255
msgid "System wide mode unsupported on this platform."
msgstr "El modo a nivel de sistema no es soportado en esta plataforma."
-#: ../src/daemon/main.c:295
-#, c-format
-msgid "setrlimit(%s, (%u, %u)) failed: %s"
-msgstr "setrlimit(%s, (%u, %u)) falló: %s"
-
-#: ../src/daemon/main.c:496
+#: ../src/daemon/main.c:484
msgid "Failed to parse command line."
msgstr "Falló al analizar la línea de comando."
-#: ../src/daemon/main.c:529
+#: ../src/daemon/main.c:523
msgid ""
"System mode refused for non-root user. Only starting the D-Bus server lookup "
"service."
msgstr ""
+"Denegado el modo de sistema para usuario que no es administrador. Sólo se "
+"inicia el servicio de búsqueda de servidor D-Bus."
-#: ../src/daemon/main.c:611
-msgid "Daemon not running"
-msgstr "El demonio no está funcionando"
-
-#: ../src/daemon/main.c:613
-#, c-format
-msgid "Daemon running as PID %u"
-msgstr "El demonio está funcionando como PID %u"
-
-#: ../src/daemon/main.c:628
+#: ../src/daemon/main.c:622
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "No se ha podido detener el demonio: %s"
-#: ../src/daemon/main.c:657
+#: ../src/daemon/main.c:651
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -229,181 +456,82 @@ msgstr ""
"Este programa no tiene por qué ser ejecutado como root (a menos que --system "
"sea especificado)."
-#: ../src/daemon/main.c:660
+#: ../src/daemon/main.c:654
msgid "Root privileges required."
msgstr "Se necesitan privilegios de root."
-#: ../src/daemon/main.c:667
+#: ../src/daemon/main.c:661
msgid "--start not supported for system instances."
msgstr "--start no está soportado para las instancias del sistema."
-#: ../src/daemon/main.c:707
+#: ../src/daemon/main.c:701
#, c-format
msgid "User-configured server at %s, refusing to start/autospawn."
-msgstr ""
+msgstr "Servidor de usuario en %s, no se iniciará uno nuevo."
-#: ../src/daemon/main.c:713
+#: ../src/daemon/main.c:707
#, c-format
msgid ""
"User-configured server at %s, which appears to be local. Probing deeper."
msgstr ""
+"Servidor de usuario en %s, que parece ser local. Realizando estudio más "
+"exhaustivo."
-#: ../src/daemon/main.c:718
+#: ../src/daemon/main.c:712
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
"Ejecutándose en modo de sistema, ¡pero no se ha configurado --disallow-exit! "
+""
-#: ../src/daemon/main.c:721
+#: ../src/daemon/main.c:715
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"Ejecutándose en modo de sistema, ¡pero no se ha configurado --disallow-"
"module-loading!"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:718
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
"Ejecutándose en modo de sistema, ¡desactivando forzadamente el modo SHM!"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:723
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"Ejecutándose en modo de sistema, ¡desactivando forzadamente exit idle time!"
-#: ../src/daemon/main.c:757
+#: ../src/daemon/main.c:756
msgid "Failed to acquire stdio."
msgstr "Fallo al intentar adquirir stdio."
-#: ../src/daemon/main.c:763 ../src/daemon/main.c:828
-#, fuzzy, c-format
+#: ../src/daemon/main.c:762 ../src/daemon/main.c:833
+#, c-format
msgid "pipe() failed: %s"
-msgstr "Falló el pipe: %s"
+msgstr "Falló la llamada a pipe(): %s"
-#: ../src/daemon/main.c:768 ../src/daemon/main.c:833
+#: ../src/daemon/main.c:767 ../src/daemon/main.c:838
#, c-format
msgid "fork() failed: %s"
msgstr "Falló el fork(): %s"
-#: ../src/daemon/main.c:783 ../src/daemon/main.c:848 ../src/utils/pacat.c:550
+#: ../src/daemon/main.c:782 ../src/daemon/main.c:853 ../src/utils/pacat.c:567
#, c-format
msgid "read() failed: %s"
msgstr "Falló la operación read(): %s"
-#: ../src/daemon/main.c:789
+#: ../src/daemon/main.c:788
msgid "Daemon startup failed."
msgstr "Falló el inicio del demonio. "
-#: ../src/daemon/main.c:791
-msgid "Daemon startup successful."
-msgstr "El demonio se inició exitosamente."
-
-#: ../src/daemon/main.c:816
-#, fuzzy, c-format
-msgid "setsid() failed: %s"
-msgstr "Falló la operación read(): %s"
-
-#: ../src/daemon/main.c:901
-#, c-format
-msgid "This is PulseAudio %s"
-msgstr "Esto es PulseAudio %s"
-
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:821
#, c-format
-msgid "Compilation host: %s"
-msgstr "Host de compilación: %s"
-
-#: ../src/daemon/main.c:903 ../src/tests/resampler-test.c:418
-#, c-format
-msgid "Compilation CFLAGS: %s"
-msgstr "Compilación CFLAGS: %s"
-
-#: ../src/daemon/main.c:906
-#, c-format
-msgid "Running on host: %s"
-msgstr "Ejecutándose en el host: %s"
-
-#: ../src/daemon/main.c:909
-#, c-format
-msgid "Found %u CPUs."
-msgstr "Se encontraron %u CPUs."
-
-#: ../src/daemon/main.c:911
-#, c-format
-msgid "Page size is %lu bytes"
-msgstr "El tamaño de la página es de %lu bytes"
-
-#: ../src/daemon/main.c:914
-msgid "Compiled with Valgrind support: yes"
-msgstr "Soporte para compilar con Valgrind: si"
-
-#: ../src/daemon/main.c:916
-msgid "Compiled with Valgrind support: no"
-msgstr "Soporte para compilar con Valgrind: no"
-
-#: ../src/daemon/main.c:919
-#, c-format
-msgid "Running in valgrind mode: %s"
-msgstr "Ejecutándose en modo valgrind: %s"
-
-#: ../src/daemon/main.c:921
-#, fuzzy, c-format
-msgid "Running in VM: %s"
-msgstr "Ejecutándose en el host: %s"
-
-#: ../src/daemon/main.c:924
-msgid "Optimized build: yes"
-msgstr "Build optimizado: si"
-
-#: ../src/daemon/main.c:926
-msgid "Optimized build: no"
-msgstr "Build optimizado: no"
-
-#: ../src/daemon/main.c:930
-msgid "NDEBUG defined, all asserts disabled."
-msgstr "NDEBUG definido, todos los chequeos deshabilitados."
-
-#: ../src/daemon/main.c:932
-msgid "FASTPATH defined, only fast path asserts disabled."
-msgstr "FASTPATH definido, sólo se deshabilitan los chequeos fast path."
-
-#: ../src/daemon/main.c:934
-msgid "All asserts enabled."
-msgstr "Todos los chequeos habilitados."
+msgid "setsid() failed: %s"
+msgstr "Falló la operación setsid(): %s"
-#: ../src/daemon/main.c:938
+#: ../src/daemon/main.c:948
msgid "Failed to get machine ID"
msgstr "Fallo al intentar obtener el ID de la máquina"
-#: ../src/daemon/main.c:941
-#, c-format
-msgid "Machine ID is %s."
-msgstr "El ID de la máquina es %s"
-
-#: ../src/daemon/main.c:945
-#, c-format
-msgid "Session ID is %s."
-msgstr "El ID de la sesión es %s."
-
-#: ../src/daemon/main.c:951
-#, c-format
-msgid "Using runtime directory %s."
-msgstr "Utilizando directorio de tiempo de ejecución %s."
-
-#: ../src/daemon/main.c:956
-#, c-format
-msgid "Using state directory %s."
-msgstr "Utilizando directorio de estado %s."
-
-#: ../src/daemon/main.c:959
-#, c-format
-msgid "Using modules directory %s."
-msgstr "Utilizando directorio de módulos %s."
-
-#: ../src/daemon/main.c:961
-#, c-format
-msgid "Running in system mode: %s"
-msgstr "Ejecutándose en modo de sistema: %s"
-
-#: ../src/daemon/main.c:964
+#: ../src/daemon/main.c:974
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -421,992 +549,1289 @@ msgstr ""
"Documentation/User/WhatIsWrongWithSystemWide/ para obtener una explicación "
"acerca de por qué es una mala idea utilizar el modo sistema."
-#: ../src/daemon/main.c:981
+#: ../src/daemon/main.c:991
msgid "pa_pid_file_create() failed."
msgstr "Ha fallado pa_pid_file_create()."
-#: ../src/daemon/main.c:991
-msgid "Fresh high-resolution timers available! Bon appetit!"
-msgstr ""
-"¡Existen cronómetros de alta resolución fresquitos y disponibles! ¡Bon "
-"appetit!"
-
-#: ../src/daemon/main.c:993
-msgid ""
-"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
-"resolution timers enabled!"
-msgstr ""
-"¡Amigo, su kernel deja mucho que desear! ¡El plato que hoy recomienda el "
-"chef es Linux con cronómetros de alta resolución activados! "
-
-#: ../src/daemon/main.c:1011
+#: ../src/daemon/main.c:1021
msgid "pa_core_new() failed."
msgstr "Falló pa_core_new()."
-#: ../src/daemon/main.c:1087
+#: ../src/daemon/main.c:1088
msgid "Failed to initialize daemon."
msgstr "Fallo al intentar iniciar el demonio."
-#: ../src/daemon/main.c:1092
+#: ../src/daemon/main.c:1093
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
"El demonio se ha iniciado sin ningún módulo cargado, y por ello se niega a "
"funcionar."
-#: ../src/daemon/main.c:1130
-msgid "Daemon startup complete."
-msgstr "El demonio se inició completamente."
+#: ../src/daemon/pulseaudio.desktop.in.h:1
+msgid "PulseAudio Sound System"
+msgstr "Sistema de Sonido PulseAudio"
-#: ../src/daemon/main.c:1136
-msgid "Daemon shutdown initiated."
-msgstr "Comienza a apagarse el demonio."
+#: ../src/daemon/pulseaudio.desktop.in.h:2
+msgid "Start the PulseAudio Sound System"
+msgstr "Iniciar el Sistema de Sonido PulseAudio"
-#: ../src/daemon/main.c:1167
-msgid "Daemon terminated."
-msgstr "El demonio se ha apagado."
+#: ../src/modules/alsa/alsa-mixer.c:2291
+msgid "Input"
+msgstr "Entrada"
-#: ../src/daemon/cmdline.c:113
-#, fuzzy, c-format
-msgid ""
-"%s [options]\n"
-"\n"
-"COMMANDS:\n"
-" -h, --help Show this help\n"
-" --version Show version\n"
-" --dump-conf Dump default configuration\n"
-" --dump-modules Dump list of available modules\n"
-" --dump-resample-methods Dump available resample methods\n"
-" --cleanup-shm Cleanup stale shared memory "
-"segments\n"
-" --start Start the daemon if it is not "
-"running\n"
-" -k --kill Kill a running daemon\n"
-" --check Check for a running daemon (only "
-"returns exit code)\n"
-"\n"
-"OPTIONS:\n"
-" --system[=BOOL] Run as system-wide instance\n"
-" -D, --daemonize[=BOOL] Daemonize after startup\n"
-" --fail[=BOOL] Quit when startup fails\n"
-" --high-priority[=BOOL] Try to set high nice level\n"
-" (only available as root, when SUID "
-"or\n"
-" with elevated RLIMIT_NICE)\n"
-" --realtime[=BOOL] Try to enable realtime scheduling\n"
-" (only available as root, when SUID "
-"or\n"
-" with elevated RLIMIT_RTPRIO)\n"
-" --disallow-module-loading[=BOOL] Disallow module user requested "
-"module\n"
-" loading/unloading after startup\n"
-" --disallow-exit[=BOOL] Disallow user requested exit\n"
-" --exit-idle-time=SECS Terminate the daemon when idle and "
-"this\n"
-" time passed\n"
-" --scache-idle-time=SECS Unload autoloaded samples when idle "
-"and\n"
-" this time passed\n"
-" --log-level[=LEVEL] Increase or set verbosity level\n"
-" -v Increase the verbosity level\n"
-" --log-target={auto,syslog,stderr,file:PATH}\n"
-" Specify the log target\n"
-" --log-meta[=BOOL] Include code location in log "
-"messages\n"
-" --log-time[=BOOL] Include timestamps in log messages\n"
-" --log-backtrace=FRAMES Include a backtrace in log messages\n"
-" -p, --dl-search-path=PATH Set the search path for dynamic "
-"shared\n"
-" objects (plugins)\n"
-" --resample-method=METHOD Use the specified resampling method\n"
-" (See --dump-resample-methods for\n"
-" possible values)\n"
-" --use-pid-file[=BOOL] Create a PID file\n"
-" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
-" platforms that support it.\n"
-" --disable-shm[=BOOL] Disable shared memory support.\n"
-"\n"
-"STARTUP SCRIPT:\n"
-" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
-"with\n"
-" the specified argument\n"
-" -F, --file=FILENAME Run the specified script\n"
-" -C Open a command line on the running "
-"TTY\n"
-" after startup\n"
-"\n"
-" -n Don't load default script file\n"
-msgstr ""
-"%s [opciones]\n"
-"\n"
-"COMANDOS:\n"
-" -h, --help Muestra esta ayuda\n"
-" --version Muestra la versión\n"
-" --dump-conf Vuelca la configuración por defecto\n"
-" --dump-modules Vuelca una lista de múdulos "
-"disponibles\n"
-" --dump-resample-methods Vuelca los métodos disponibles de "
-"remuestreo\n"
-" --cleanup-shm Limpia los segmentos de memoria "
-"compartidos\n"
-" --start Inicia el demonio, si es que aún no "
-"está funcionando\n"
-" -k --kill Detiene a un demonio funcionando\n"
-" --check Verifica qué demonios están "
-"funcionando\n"
-"\n"
-"OPCIONES:\n"
-" --system[=BOOL] Se ejecuta como unica instancia a "
-"nivel del sistema\n"
-" -D, --daemonize[=BOOL] Se convierte en demonio luego de "
-"iniciarse\n"
-" --fail[=BOOL] Se cierra cuando falla el inicio\n"
-" --high-priority[=BOOL] Trata de establecer un nivel de nice "
-"alto\n"
-" (sólo disponible como root, cuando "
-"el SUID o\n"
-" con RLIMIT_NICE) elevado\n"
-" --realtime[=BOOL] Trata de activar planificación en "
-"tiempo real\n"
-" (sólo disponible como root, cuando "
-"el SUID o\n"
-" con RLIMIT_RTPRIO) elevado\n"
-" --disallow-module-loading[=BOOL] No permite la carga/descarga del "
-"módulo por el usuario\n"
-" después que se haya iniciado\n"
-" --disallow-exit[=BOOL] No permite la petición del usuario "
-"de abandonar el programa\n"
-" --exit-idle-time=SECS Desactiva un demonio cuando está "
-"ocioso y\n"
-" ha transcurrido esta cantidad de "
-"tiempo\n"
-" --module-idle-time=SECS Descarga modulos que se han cargado "
-"automáticamente cuando están ociosos y\n"
-" ha transcurrido esta cantidad de "
-"tiempo\n"
-" --scache-idle-time=SECS Descarga muestras cargadas "
-"automáticamente cuando están\n"
-" ociosos y ha transcurrido esta "
-"cantidad de tiempo\n"
-" --log-level[=LEVEL] Aumenta o define el grado de salida "
-"a utilizar\n"
-" -v Aumenta el grado de salida\n"
-" --log-target={auto,syslog,stderr} Especifica el destino del log\n"
-" -p, --dl-search-path=PATH Establece la ruta de búsqueda "
-"(search path) para complementos\n"
-" (plugins) compartidos\n"
-" --resample-method=METHOD Utiliza un método de remuestreo "
-"específico\n"
-" (Ver en --dump-resample-methods los "
-"valores posibles)\n"
-" --use-pid-file[=BOOL] Crea el archivo PID\n"
-" --no-cpu-limit[=BOOL] No instala un limitador de carga de "
-"CPU en\n"
-" plataformas que lo soporten.\n"
-" --disable-shm[=BOOL] Deshabilita el soporte para memoria "
-"compartida.\n"
-"\n"
-"SCRIPT DE INICIO:\n"
-" -L, --load=\"ARGUMENTOS DEL MODULO\" Carga el módulo complemento con los "
-"parámetros dados\n"
-" -F, --file=FILENAME Ejecuta el script especificado\n"
-" -C Abre una línea de comando en el TTY "
-"actual después de iniciar\n"
-"\n"
-" -n No carga el archivo script "
-"predeterminado\n"
+#: ../src/modules/alsa/alsa-mixer.c:2292
+msgid "Docking Station Input"
+msgstr "Entrada de estación de acoplamiento"
-#: ../src/daemon/cmdline.c:244
-msgid "--daemonize expects boolean argument"
-msgstr "--daemonize espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2293
+msgid "Docking Station Microphone"
+msgstr "Micrófono de estación de acoplamiento"
-#: ../src/daemon/cmdline.c:251
-msgid "--fail expects boolean argument"
-msgstr "--fail espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2294
+msgid "Docking Station Line In"
+msgstr "Línea de entrada de estación de acoplamiento"
-#: ../src/daemon/cmdline.c:261
-msgid ""
-"--log-level expects log level argument (either numeric in range 0..4 or one "
-"of debug, info, notice, warn, error)."
-msgstr ""
-"--log-level espera un argumento en el nivel del log (ya sea numérico, que "
-"caiga en el rango de 0..4; ya sea uno de debug, info, notice, warn, o "
-"error). "
+#: ../src/modules/alsa/alsa-mixer.c:2295 ../src/modules/alsa/alsa-mixer.c:2380
+msgid "Line In"
+msgstr "Línea de entrada"
-#: ../src/daemon/cmdline.c:273
-msgid "--high-priority expects boolean argument"
-msgstr "--high-priority espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2296 ../src/modules/alsa/alsa-mixer.c:2374
+#: ../src/modules/bluetooth/module-bluez4-device.c:2102
+#: ../src/modules/bluetooth/module-bluez5-device.c:1710
+msgid "Microphone"
+msgstr "Micrófono"
-#: ../src/daemon/cmdline.c:280
-msgid "--realtime expects boolean argument"
-msgstr "--realtime espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2297 ../src/modules/alsa/alsa-mixer.c:2375
+msgid "Front Microphone"
+msgstr "Micrófono frontal"
-#: ../src/daemon/cmdline.c:287
-msgid "--disallow-module-loading expects boolean argument"
-msgstr "--disallow-module-loading espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2298 ../src/modules/alsa/alsa-mixer.c:2376
+msgid "Rear Microphone"
+msgstr "Micrófono trasero"
-#: ../src/daemon/cmdline.c:294
-msgid "--disallow-exit expects boolean argument"
-msgstr "--disallow-exit espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2299
+msgid "External Microphone"
+msgstr "Micrófono externo"
-#: ../src/daemon/cmdline.c:301
-msgid "--use-pid-file expects boolean argument"
-msgstr "--use pid-file espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2300 ../src/modules/alsa/alsa-mixer.c:2378
+msgid "Internal Microphone"
+msgstr "Micrófono interno"
-#: ../src/daemon/cmdline.c:318
-#, fuzzy
-msgid ""
-"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
-"name 'file:<path>'."
-msgstr "Log target inválido: use o \"syslog\", o \"stderr\", o \"auto\"."
+#: ../src/modules/alsa/alsa-mixer.c:2301 ../src/modules/alsa/alsa-mixer.c:2381
+msgid "Radio"
+msgstr "Radio"
-#: ../src/daemon/cmdline.c:325
-msgid "--log-time expects boolean argument"
-msgstr "--log-time espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2302 ../src/modules/alsa/alsa-mixer.c:2382
+msgid "Video"
+msgstr "Vídeo"
-#: ../src/daemon/cmdline.c:332
-msgid "--log-meta expects boolean argument"
-msgstr "--log-meta espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2303
+msgid "Automatic Gain Control"
+msgstr "Control automático de ganancia"
-#: ../src/daemon/cmdline.c:351
-#, c-format
-msgid "Invalid resample method '%s'."
-msgstr "Método de remuestreo inválido '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:2304
+msgid "No Automatic Gain Control"
+msgstr "Sin control automático de ganancia"
-#: ../src/daemon/cmdline.c:358
-msgid "--system expects boolean argument"
-msgstr "--system espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2305
+msgid "Boost"
+msgstr "Incremento de ganancia"
-#: ../src/daemon/cmdline.c:365
-msgid "--no-cpu-limit expects boolean argument"
-msgstr "--no-cpu-limit espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2306
+msgid "No Boost"
+msgstr "Sin incremento de ganancia"
-#: ../src/daemon/cmdline.c:372
-msgid "--disable-shm expects boolean argument"
-msgstr "--disable-shm espera un argumento booleano"
+#: ../src/modules/alsa/alsa-mixer.c:2307
+msgid "Amplifier"
+msgstr "Amplificador"
-#: ../src/daemon/dumpmodules.c:59
-#, c-format
-msgid "Name: %s\n"
-msgstr "Nombre: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2308
+msgid "No Amplifier"
+msgstr "Sin amplificador"
-#: ../src/daemon/dumpmodules.c:62
-#, c-format
-msgid "No module information available\n"
-msgstr "No existe información disponible acerca del módulo\n"
+#: ../src/modules/alsa/alsa-mixer.c:2309
+msgid "Bass Boost"
+msgstr "Potenciador de graves"
-#: ../src/daemon/dumpmodules.c:65
-#, c-format
-msgid "Version: %s\n"
-msgstr "Versión: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2310
+msgid "No Bass Boost"
+msgstr "Sin potenciador de graves"
-#: ../src/daemon/dumpmodules.c:67
-#, c-format
-msgid "Description: %s\n"
-msgstr "Descripción: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2311
+#: ../src/modules/bluetooth/module-bluez4-device.c:2107
+#: ../src/modules/bluetooth/module-bluez5-device.c:1717
+msgid "Speaker"
+msgstr "Altavoz"
-#: ../src/daemon/dumpmodules.c:69
-#, c-format
-msgid "Author: %s\n"
-msgstr "Autor: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2312 ../src/modules/alsa/alsa-mixer.c:2384
+msgid "Headphones"
+msgstr "Auriculares"
-#: ../src/daemon/dumpmodules.c:71
-#, c-format
-msgid "Usage: %s\n"
-msgstr "Uso: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2373
+msgid "Analog Input"
+msgstr "Entrada analógica"
-#: ../src/daemon/dumpmodules.c:72
-#, c-format
-msgid "Load Once: %s\n"
-msgstr "Carga una vez: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2377
+msgid "Dock Microphone"
+msgstr "Micrófono de estación de acoplamiento"
-#: ../src/daemon/dumpmodules.c:74
-#, c-format
-msgid "DEPRECATION WARNING: %s\n"
-msgstr "ADVERTENCIA DE COMPATIBILIDAD: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2379
+msgid "Headset Microphone"
+msgstr "Micrófono acoplado a auriculares"
-#: ../src/daemon/dumpmodules.c:78
-#, c-format
-msgid "Path: %s\n"
-msgstr "Ruta: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:2383
+msgid "Analog Output"
+msgstr "Salida analógica"
-#: ../src/daemon/daemon-conf.c:275
-#, c-format
-msgid "[%s:%u] Invalid log target '%s'."
-msgstr "[%s:%u] Destino de log inválido '%s'."
+#: ../src/modules/alsa/alsa-mixer.c:2385
+msgid "LFE on Separate Mono Output"
+msgstr "LFE en salida mono separada"
-#: ../src/daemon/daemon-conf.c:291
-#, c-format
-msgid "[%s:%u] Invalid log level '%s'."
-msgstr "[%s:%u] Nivel de log inválido '%s'."
+#: ../src/modules/alsa/alsa-mixer.c:2386
+msgid "Line Out"
+msgstr "Línea de salida"
-#: ../src/daemon/daemon-conf.c:307
-#, c-format
-msgid "[%s:%u] Invalid resample method '%s'."
-msgstr "[%s:%u] Método de remuestreo inválido '%s'."
+#: ../src/modules/alsa/alsa-mixer.c:2387
+msgid "Analog Mono Output"
+msgstr "Salida mono analógica "
-#: ../src/daemon/daemon-conf.c:330
+#: ../src/modules/alsa/alsa-mixer.c:2388
+msgid "Speakers"
+msgstr "Altavoces"
+
+#: ../src/modules/alsa/alsa-mixer.c:2389
+msgid "HDMI / DisplayPort"
+msgstr "HDMI / DisplayPort"
+
+#: ../src/modules/alsa/alsa-mixer.c:2390
+msgid "Digital Output (S/PDIF)"
+msgstr "Salida digital (S/PDIF)"
+
+#: ../src/modules/alsa/alsa-mixer.c:2391
+msgid "Digital Input (S/PDIF)"
+msgstr "Entrada digital (S/PDIF)"
+
+#: ../src/modules/alsa/alsa-mixer.c:2392
+msgid "Digital Passthrough (S/PDIF)"
+msgstr "Túnel digital (S/PDIF)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3898
+msgid "Analog Mono"
+msgstr "Mono analógico"
+
+#: ../src/modules/alsa/alsa-mixer.c:3899
+msgid "Analog Stereo"
+msgstr "Estéreo analógico"
+
+#: ../src/modules/alsa/alsa-mixer.c:3900
+msgid "Multichannel"
+msgstr "Multicanal"
+
+#: ../src/modules/alsa/alsa-mixer.c:3901
+msgid "Analog Surround 2.1"
+msgstr "Envolvente analógico 2.1"
+
+#: ../src/modules/alsa/alsa-mixer.c:3902
+msgid "Analog Surround 3.0"
+msgstr "Envolvente analógico 3.0"
+
+#: ../src/modules/alsa/alsa-mixer.c:3903
+msgid "Analog Surround 3.1"
+msgstr "Envolvente analógico 3.1"
+
+#: ../src/modules/alsa/alsa-mixer.c:3904
+msgid "Analog Surround 4.0"
+msgstr "Envolvente analógico 4.0"
+
+#: ../src/modules/alsa/alsa-mixer.c:3905
+msgid "Analog Surround 4.1"
+msgstr "Envolvente análogico 4.1"
+
+#: ../src/modules/alsa/alsa-mixer.c:3906
+msgid "Analog Surround 5.0"
+msgstr "Envolvente analógico 5.0"
+
+#: ../src/modules/alsa/alsa-mixer.c:3907
+msgid "Analog Surround 5.1"
+msgstr "Envolvente analógico 5.1"
+
+#: ../src/modules/alsa/alsa-mixer.c:3908
+msgid "Analog Surround 6.0"
+msgstr "Envolvente analógico 6.0"
+
+#: ../src/modules/alsa/alsa-mixer.c:3909
+msgid "Analog Surround 6.1"
+msgstr "Envolvente analógico 6.1"
+
+#: ../src/modules/alsa/alsa-mixer.c:3910
+msgid "Analog Surround 7.0"
+msgstr "Envolvente analógico 7.0"
+
+#: ../src/modules/alsa/alsa-mixer.c:3911
+msgid "Analog Surround 7.1"
+msgstr "Envolvente analógico 7.1"
+
+#: ../src/modules/alsa/alsa-mixer.c:3912
+msgid "Digital Stereo (IEC958)"
+msgstr "Estéreo digital (IEC958)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3913
+msgid "Digital Passthrough (IEC958)"
+msgstr "Túnel digital (IEC958)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3914
+msgid "Digital Surround 4.0 (IEC958/AC3)"
+msgstr "Envolvente digital 4.0 (IEC9588/AC3)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3915
+msgid "Digital Surround 5.1 (IEC958/AC3)"
+msgstr "Envolvente digital 5.1 (IEC958/AC3)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3916
+msgid "Digital Surround 5.1 (IEC958/DTS)"
+msgstr "Envolvente digital 5.1 (IEC958/DTS)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3917
+msgid "Digital Stereo (HDMI)"
+msgstr "Estéreo digital (HDMI)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3918
+msgid "Digital Surround 5.1 (HDMI)"
+msgstr "Envolvente digital 5.1 (HDMI)"
+
+#: ../src/modules/alsa/alsa-mixer.c:4049
+msgid "Analog Mono Duplex"
+msgstr "Mono analógico dúplex"
+
+#: ../src/modules/alsa/alsa-mixer.c:4050
+msgid "Analog Stereo Duplex"
+msgstr "Estéreo analógico dúplex"
+
+#: ../src/modules/alsa/alsa-mixer.c:4051
+msgid "Digital Stereo Duplex (IEC958)"
+msgstr "Estéreo digital dúplex (IEC958)"
+
+#: ../src/modules/alsa/alsa-mixer.c:4052
+#: ../src/modules/alsa/module-alsa-card.c:190
+#: ../src/modules/bluetooth/module-bluez4-device.c:2298
+#: ../src/modules/bluetooth/module-bluez5-device.c:1941
+msgid "Off"
+msgstr "Apagado"
+
+#: ../src/modules/alsa/alsa-mixer.c:4151
#, c-format
-msgid "[%s:%u] Invalid rlimit '%s'."
-msgstr "[%s:%u] Rlimit inválido '%s'."
+msgid "%s Output"
+msgstr "Salida %s"
-#: ../src/daemon/daemon-conf.c:351
+#: ../src/modules/alsa/alsa-mixer.c:4159
#, c-format
-msgid "[%s:%u] Invalid sample format '%s'."
-msgstr "[%s:%u] Formato de muestra inválido '%s'."
+msgid "%s Input"
+msgstr "Entrada %s"
-#: ../src/daemon/daemon-conf.c:370 ../src/daemon/daemon-conf.c:389
+#: ../src/modules/alsa/alsa-sink.c:570 ../src/modules/alsa/alsa-sink.c:747
#, c-format
-msgid "[%s:%u] Invalid sample rate '%s'."
-msgstr "[%s:%u] Tasa de muestra inválida '%s'."
+msgid ""
+"ALSA woke us up to write new data to the device, but there was actually "
+"nothing to write!\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+"ALSA nos despertó para escribir nuevos datos al dispositivo, ¡pero en "
+"realidad no hay nada para escribir!\n"
+"Probablemente sea un error en el controlador ALSA '%s'. Por favor, informe "
+"de esto a los desarrolladores de ALSA.\n"
+"Nos despertaron con POLLOUT activado. Sin embargo, la llamada a "
+"snd_pcm_avail() devolvió 0 u otro valor < min_avail."
-#: ../src/daemon/daemon-conf.c:413
+#: ../src/modules/alsa/alsa-source.c:529 ../src/modules/alsa/alsa-source.c:680
#, c-format
-msgid "[%s:%u] Invalid sample channels '%s'."
-msgstr "[%s:%u] Canales de muestra inválidos '%s'."
+msgid ""
+"ALSA woke us up to read new data from the device, but there was actually "
+"nothing to read!\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+"ALSA nos despertó para leer nuevos datos desde el dispositivo, ¡pero en "
+"realidad no hay nada para leer!\n"
+"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
+"informe de esto a los desarrolladores de ALSA.\n"
+"Nos despertaron con POLLIN activado. Sin embargo, la llamada a "
+"snd_pcm_avail() devolvió 0 u otro valor < min_avail."
-#: ../src/daemon/daemon-conf.c:431
+#: ../src/modules/alsa/alsa-util.c:1134 ../src/modules/alsa/alsa-util.c:1209
#, c-format
-msgid "[%s:%u] Invalid channel map '%s'."
-msgstr "[%s:%u] Mapa de canal inválido '%s'."
+msgid ""
+"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
+"ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_avail() devolvió un valor que es excepcionalmente grande: %lu bytes "
+"(%lu ms).\n"
+"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
+"informe de esto a los desarrolladores de ALSA."
-#: ../src/daemon/daemon-conf.c:449
+#: ../src/modules/alsa/alsa-util.c:1184
#, c-format
-msgid "[%s:%u] Invalid number of fragments '%s'."
-msgstr "[%s:%u] Cantidad de fragmentoa inválidos '%s'."
+msgid ""
+"snd_pcm_delay() returned a value that is exceptionally large: %li bytes "
+"(%s%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_delay() devolvió un valor que es excepcionalmente grande: %li bytes "
+"(%s%lu ms).\n"
+"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
+"informe de esto a los desarrolladores de ALSA."
-#: ../src/daemon/daemon-conf.c:467
+#: ../src/modules/alsa/alsa-util.c:1225
#, c-format
-msgid "[%s:%u] Invalid fragment size '%s'."
-msgstr "[%s:%u] Tamaño inválido de fragmento '%s'."
+msgid ""
+"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
+"%lu.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_avail_delay() devolvió valores raros: %lu es menor que los "
+"disponibles %lu.\n"
+"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
+"informe de esto a los desarrolladores de ALSA."
-#: ../src/daemon/daemon-conf.c:485
+#: ../src/modules/alsa/alsa-util.c:1268
#, c-format
-msgid "[%s:%u] Invalid nice level '%s'."
-msgstr "[%s:%u] Nivel de nice inválido '%s'."
+msgid ""
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
+"(%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_mmap_begin() devolvió un valor que es excepcionalmente grande: %lu "
+"bytes (%lu ms).\n"
+"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
+"informe de esto a los desarrolladores de ALSA."
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2092
+#: ../src/modules/bluetooth/module-bluez5-device.c:1700
+msgid "Headset"
+msgstr "Auriculares"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2097
+#: ../src/modules/bluetooth/module-bluez5-device.c:1705
+msgid "Handsfree"
+msgstr "Manos libres"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2112
+#: ../src/modules/bluetooth/module-bluez5-device.c:1723
+msgid "Headphone"
+msgstr "Auriculares"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2117
+#: ../src/modules/bluetooth/module-bluez5-device.c:1728
+msgid "Portable"
+msgstr "Portátil"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2122
+#: ../src/modules/bluetooth/module-bluez5-device.c:1733
+msgid "Car"
+msgstr "Coche"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2127
+#: ../src/modules/bluetooth/module-bluez5-device.c:1738
+msgid "HiFi"
+msgstr "Alta fidelidad"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2132
+#: ../src/modules/bluetooth/module-bluez5-device.c:1743
+msgid "Phone"
+msgstr "Teléfono"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2140
+#: ../src/modules/bluetooth/module-bluez5-device.c:1695
+#: ../src/modules/bluetooth/module-bluez5-device.c:1711
+#: ../src/modules/bluetooth/module-bluez5-device.c:1749
+msgid "Bluetooth Output"
+msgstr "Salida bluetooth"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2143
+#: ../src/modules/bluetooth/module-bluez5-device.c:1694
+#: ../src/modules/bluetooth/module-bluez5-device.c:1716
+#: ../src/modules/bluetooth/module-bluez5-device.c:1722
+#: ../src/modules/bluetooth/module-bluez5-device.c:1748
+msgid "Bluetooth Input"
+msgstr "Entrada bluetooth"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2179
+msgid "High Fidelity Playback (A2DP)"
+msgstr "Reproducción de alta fidelidad (A2DP)"
-#: ../src/daemon/daemon-conf.c:528
-#, fuzzy, c-format
-msgid "[%s:%u] Invalid server type '%s'."
-msgstr "[%s:%u] Tasa de muestra inválida '%s'."
+#: ../src/modules/bluetooth/module-bluez4-device.c:2190
+msgid "High Fidelity Capture (A2DP)"
+msgstr "Captura de alta fidelidad (A2DP)"
-#: ../src/daemon/daemon-conf.c:641
-#, c-format
-msgid "Failed to open configuration file: %s"
-msgstr "No se pudo abrir el archivo de configuración: %s"
+#: ../src/modules/bluetooth/module-bluez4-device.c:2201
+msgid "Telephony Duplex (HSP/HFP)"
+msgstr "Telefonía dúplex (HSP/HFP)"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2213
+msgid "Handsfree Gateway"
+msgstr "Enlace de manos libres"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1786
+msgid "High Fidelity Playback (A2DP Sink)"
+msgstr "Reproducción de alta fidelidad (destino A2DP)"
-#: ../src/daemon/daemon-conf.c:657
+#: ../src/modules/bluetooth/module-bluez5-device.c:1797
+msgid "High Fidelity Capture (A2DP Source)"
+msgstr "Captura de alta fidelidad (fuente A2DP)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1808
+msgid "Headset Head Unit (HSP/HFP)"
+msgstr "Unidad de auriculares de diadema (HSP/HFP)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1820
+msgid "Headset Audio Gateway (HSP/HFP)"
+msgstr "Salida de audio para auriculares (HSP/HFP)"
+
+#: ../src/modules/echo-cancel/module-echo-cancel.c:61
msgid ""
-"The specified default channel map has a different number of channels than "
-"the specified default number of channels."
+"source_name=<name for the source> source_properties=<properties for the "
+"source> source_master=<name of source to filter> sink_name=<name for the "
+"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
+"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
+"much drift to readjust after in ms> format=<sample format> rate=<sample "
+"rate> channels=<number of channels> channel_map=<channel map> aec_method="
+"<implementation to use> aec_args=<parameters for the AEC engine> save_aec="
+"<save AEC data in /tmp> autoloaded=<set if this module is being loaded "
+"automatically> use_volume_sharing=<yes or no> "
+msgstr ""
+"source_name=<nombre para la fuente> source_properties=<propiedades para la "
+"fuente> source_master=<nombre de la fuente a filtrar> sink_name=<nombre para "
+"el destino> sink_properties=<propiedades para el destino> sink_master="
+"<nombre del destino a filtrar> adjust_time=<cada cuánto reajustar la tasa, "
+"en segundos> adjust_threshold=<tras cuánta deriva reajustar, en ms> format="
+"<formato de muestra> rate=<tasa de muestra> channels=<número de canales> "
+"channel_map=<mapa de canales> aec_method=<implementación a usar> aec_args="
+"<parámetros para el núcleo AEC> save_aec=<guardar datos AEC en /tmp> "
+"autoloaded=<activado si este módulo se está cargando automáticamente> "
+"use_volume_sharing=<yes o no> "
+
+#. add on profile
+#: ../src/modules/macosx/module-coreaudio-device.c:754
+msgid "On"
+msgstr "Activado"
+
+#: ../src/modules/module-always-sink.c:36
+msgid "Always keeps at least one sink loaded even if it's a null one"
+msgstr "Mantiene siempre un destino activo aunque sea el nulo"
+
+#: ../src/modules/module-always-sink.c:80
+msgid "Dummy Output"
+msgstr "Salida Ficticia"
+
+#: ../src/modules/module-equalizer-sink.c:70
+msgid "General Purpose Equalizer"
+msgstr "Ecualizador de propósito general"
+
+#: ../src/modules/module-equalizer-sink.c:74
+msgid ""
+"sink_name=<name of the sink> sink_properties=<properties for the sink> "
+"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
+"this module is being loaded automatically> use_volume_sharing=<yes or no> "
msgstr ""
-"El mapa de canal predeterminado especificado tiene un número de canales "
-"distinto al especificado como predeterminado."
+"sink_name=<nombre para el destino> sink_properties=<propiedades para el "
+"destino> sink_master=<destino al que conectar> format=<formato de muestra> "
+"rate=<tasa de muestra> channels=<número de canales> channel_map=<mapeo de "
+"canales> autoloaded=<activado si este módulo se está cargando "
+"automáticamente> use_volume_sharing=<yes o no>"
-#: ../src/daemon/daemon-conf.c:743
-#, c-format
-msgid "### Read from configuration file: %s ###\n"
-msgstr "### Leyendo desde el archivo de confioguración: %s ###\n"
+#: ../src/modules/module-filter-apply.c:46
+msgid "autoclean=<automatically unload unused filters?>"
+msgstr "autoclean=<¿descargar automáticamente los filtros que no se usan?>"
-#: ../src/daemon/caps.c:58
-msgid "Cleaning up privileges."
-msgstr "Abandonando privilegios."
+#: ../src/modules/module-ladspa-sink.c:51
+msgid "Virtual LADSPA sink"
+msgstr "Destino virtual LADSPA"
-#: ../src/daemon/pulseaudio.desktop.in.h:1
-msgid "PulseAudio Sound System"
-msgstr "Sistema de Sonido PulseAudio"
+#: ../src/modules/module-ladspa-sink.c:55
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<input channel map> plugin=<ladspa "
+"plugin name> label=<ladspa plugin label> control=<comma separated list of "
+"input control values> input_ladspaport_map=<comma separated list of input "
+"LADSPA port names> output_ladspaport_map=<comma separated list of output "
+"LADSPA port names> "
+msgstr ""
+"sink_name=<nombre para el destino> sink_properties=<propiedades para el "
+"destino> master=<nombre del destino a filtrar> format=<formato de muestra> "
+"rate=<tasa de muestra> channels=<número de canales> channel_map=<mapeo de "
+"canales de entrada> plugin=<nombre del complemento ladspa> label=<etiqueta "
+"del complemento ladspa> control=<lista separada por comas de valores de "
+"control de entrada> input_ladspaport_map=<lista separada por comas de "
+"nombres de puertos de entrada LADSPA> output_ladspaport_map=<lista separada "
+"por comas de nombres de puertos de salida LADSPA>"
-#: ../src/daemon/pulseaudio.desktop.in.h:2
-msgid "Start the PulseAudio Sound System"
-msgstr "Iniciar el Sistema de Sonido PulseAudio"
+#: ../src/modules/module-null-sink.c:47
+msgid "Clocked NULL sink"
+msgstr "Sumidero nulo sincronizado"
-#: ../src/daemon/pulseaudio-kde.desktop.in.h:1
-#, fuzzy
-msgid "PulseAudio Sound System KDE Routing Policy"
-msgstr "Sistema de Sonido PulseAudio"
+#: ../src/modules/module-null-sink.c:278
+msgid "Null Output"
+msgstr "Salida Nula"
-#: ../src/daemon/pulseaudio-kde.desktop.in.h:2
-#, fuzzy
-msgid "Start the PulseAudio Sound System with KDE Routing Policy"
-msgstr "Iniciar el Sistema de Sonido PulseAudio"
+#: ../src/modules/module-rygel-media-server.c:508
+#: ../src/modules/module-rygel-media-server.c:546
+#: ../src/modules/module-rygel-media-server.c:905
+msgid "Output Devices"
+msgstr "Dispositivos de salida"
+
+#: ../src/modules/module-rygel-media-server.c:509
+#: ../src/modules/module-rygel-media-server.c:547
+#: ../src/modules/module-rygel-media-server.c:906
+msgid "Input Devices"
+msgstr "Dispositivos de entrada"
+
+#: ../src/modules/module-rygel-media-server.c:1063
+msgid "Audio on @HOSTNAME@"
+msgstr "Audio en @HOSTNAME@"
+
+#. TODO: old tunnel put here the remote sink_name into stream name e.g. 'Null Output for lynxis@lazus'
+#. TODO: old tunnel put here the remote source_name into stream name e.g. 'Null Output for lynxis@lazus'
+#: ../src/modules/module-tunnel-sink-new.c:307
+#: ../src/modules/module-tunnel-source-new.c:305
+#, c-format
+msgid "Tunnel for %s@%s"
+msgstr "Túnel para %s@%s"
-#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:757
+#: ../src/modules/module-tunnel-sink-new.c:517
+#: ../src/modules/module-tunnel-source-new.c:516
+#, c-format
+msgid "Tunnel to %s/%s"
+msgstr "Túnel a %s/%s"
+
+#: ../src/modules/module-virtual-surround-sink.c:47
+msgid "Virtual surround sink"
+msgstr "Destino envolvente virtual"
+
+#: ../src/modules/module-virtual-surround-sink.c:51
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> use_volume_sharing="
+"<yes or no> force_flat_volume=<yes or no> hrir=/path/to/left_hrir.wav "
+msgstr ""
+"sink_name=<nombre para el destino> sink_properties=<propiedades para el "
+"destino> master=<nombre del destino a filtrar> format=<formato de muestra> "
+"rate=<tasa de muestra> channels=<número de canales> channel_map=<mapa de "
+"canales> use_volume_sharing=<yes o no> force_flat_volume=<yes o no> hrir=/"
+"ruta/a/left_hrir.wav "
+
+#: ../src/modules/reserve-wrap.c:149
+msgid "PulseAudio Sound Server"
+msgstr "Servidor de Sonido PulseAudio"
+
+#: ../src/pulse/channelmap.c:103 ../src/pulse/channelmap.c:758
msgid "Mono"
msgstr "Mono"
-#: ../src/pulse/channelmap.c:107
+#: ../src/pulse/channelmap.c:105
msgid "Front Center"
-msgstr "Frente central"
+msgstr "Frontal central"
-#: ../src/pulse/channelmap.c:108
+#: ../src/pulse/channelmap.c:106
msgid "Front Left"
-msgstr "Frente izquierdo"
+msgstr "Frontal izquierdo"
-#: ../src/pulse/channelmap.c:109
+#: ../src/pulse/channelmap.c:107
msgid "Front Right"
-msgstr "Frente derecho"
+msgstr "Frontal derecho"
-#: ../src/pulse/channelmap.c:111
+#: ../src/pulse/channelmap.c:109
msgid "Rear Center"
msgstr "Posterior central"
-#: ../src/pulse/channelmap.c:112
+#: ../src/pulse/channelmap.c:110
msgid "Rear Left"
-msgstr "POsterior izquierdo"
+msgstr "Posterior izquierdo"
-#: ../src/pulse/channelmap.c:113
+#: ../src/pulse/channelmap.c:111
msgid "Rear Right"
-msgstr "POsterior derecho"
+msgstr "Posterior derecho"
-#: ../src/pulse/channelmap.c:115
+#: ../src/pulse/channelmap.c:113
msgid "Subwoofer"
-msgstr ""
+msgstr "Subwoofer"
-#: ../src/pulse/channelmap.c:117
+#: ../src/pulse/channelmap.c:115
msgid "Front Left-of-center"
-msgstr "Frente izquierdo del centro"
+msgstr "Frontal a la izquierda del central"
-#: ../src/pulse/channelmap.c:118
+#: ../src/pulse/channelmap.c:116
msgid "Front Right-of-center"
-msgstr "Frente derecho del centro"
+msgstr "Frontal a la derecha del central"
-#: ../src/pulse/channelmap.c:120
+#: ../src/pulse/channelmap.c:118
msgid "Side Left"
msgstr "Lateral izquierdo"
-#: ../src/pulse/channelmap.c:121
+#: ../src/pulse/channelmap.c:119
msgid "Side Right"
msgstr "Lateral derecho"
-#: ../src/pulse/channelmap.c:123
+#: ../src/pulse/channelmap.c:121
msgid "Auxiliary 0"
msgstr "Auxiliar 0"
-#: ../src/pulse/channelmap.c:124
+#: ../src/pulse/channelmap.c:122
msgid "Auxiliary 1"
msgstr "Auxiliar 1"
-#: ../src/pulse/channelmap.c:125
+#: ../src/pulse/channelmap.c:123
msgid "Auxiliary 2"
msgstr "Auxiliar 2"
-#: ../src/pulse/channelmap.c:126
+#: ../src/pulse/channelmap.c:124
msgid "Auxiliary 3"
msgstr "Auxiliar 3"
-#: ../src/pulse/channelmap.c:127
+#: ../src/pulse/channelmap.c:125
msgid "Auxiliary 4"
msgstr "Auxiliar 4"
-#: ../src/pulse/channelmap.c:128
+#: ../src/pulse/channelmap.c:126
msgid "Auxiliary 5"
msgstr "Auxiliar 5"
-#: ../src/pulse/channelmap.c:129
+#: ../src/pulse/channelmap.c:127
msgid "Auxiliary 6"
msgstr "Auxiliar 6"
-#: ../src/pulse/channelmap.c:130
+#: ../src/pulse/channelmap.c:128
msgid "Auxiliary 7"
msgstr "Auxiliar 7"
-#: ../src/pulse/channelmap.c:131
+#: ../src/pulse/channelmap.c:129
msgid "Auxiliary 8"
msgstr "Auxiliar 8"
-#: ../src/pulse/channelmap.c:132
+#: ../src/pulse/channelmap.c:130
msgid "Auxiliary 9"
msgstr "Auxiliar 9"
-#: ../src/pulse/channelmap.c:133
+#: ../src/pulse/channelmap.c:131
msgid "Auxiliary 10"
msgstr "Auxiliar 10"
-#: ../src/pulse/channelmap.c:134
+#: ../src/pulse/channelmap.c:132
msgid "Auxiliary 11"
msgstr "Auxiliar 11"
-#: ../src/pulse/channelmap.c:135
+#: ../src/pulse/channelmap.c:133
msgid "Auxiliary 12"
msgstr "Auxiliar 12"
-#: ../src/pulse/channelmap.c:136
+#: ../src/pulse/channelmap.c:134
msgid "Auxiliary 13"
msgstr "Auxiliar 13"
-#: ../src/pulse/channelmap.c:137
+#: ../src/pulse/channelmap.c:135
msgid "Auxiliary 14"
msgstr "Auxiliar 14"
-#: ../src/pulse/channelmap.c:138
+#: ../src/pulse/channelmap.c:136
msgid "Auxiliary 15"
msgstr "Auxiliar 15"
-#: ../src/pulse/channelmap.c:139
+#: ../src/pulse/channelmap.c:137
msgid "Auxiliary 16"
msgstr "Auxiliar 16"
-#: ../src/pulse/channelmap.c:140
+#: ../src/pulse/channelmap.c:138
msgid "Auxiliary 17"
msgstr "Auxiliar 17"
-#: ../src/pulse/channelmap.c:141
+#: ../src/pulse/channelmap.c:139
msgid "Auxiliary 18"
msgstr "Auxiliar 18"
-#: ../src/pulse/channelmap.c:142
+#: ../src/pulse/channelmap.c:140
msgid "Auxiliary 19"
msgstr "Auxiliar 19"
-#: ../src/pulse/channelmap.c:143
+#: ../src/pulse/channelmap.c:141
msgid "Auxiliary 20"
msgstr "Auxiliar 20"
-#: ../src/pulse/channelmap.c:144
+#: ../src/pulse/channelmap.c:142
msgid "Auxiliary 21"
msgstr "Auxiliar 21"
-#: ../src/pulse/channelmap.c:145
+#: ../src/pulse/channelmap.c:143
msgid "Auxiliary 22"
msgstr "Auxiliar 22"
-#: ../src/pulse/channelmap.c:146
+#: ../src/pulse/channelmap.c:144
msgid "Auxiliary 23"
msgstr "Auxiliar 23"
-#: ../src/pulse/channelmap.c:147
+#: ../src/pulse/channelmap.c:145
msgid "Auxiliary 24"
msgstr "Auxiliar 24"
-#: ../src/pulse/channelmap.c:148
+#: ../src/pulse/channelmap.c:146
msgid "Auxiliary 25"
msgstr "Auxiliar 25"
-#: ../src/pulse/channelmap.c:149
+#: ../src/pulse/channelmap.c:147
msgid "Auxiliary 26"
msgstr "Auxiliar 26"
-#: ../src/pulse/channelmap.c:150
+#: ../src/pulse/channelmap.c:148
msgid "Auxiliary 27"
msgstr "Auxiliar 27"
-#: ../src/pulse/channelmap.c:151
+#: ../src/pulse/channelmap.c:149
msgid "Auxiliary 28"
msgstr "Auxiliar 28"
-#: ../src/pulse/channelmap.c:152
+#: ../src/pulse/channelmap.c:150
msgid "Auxiliary 29"
msgstr "Auxiliar 29"
-#: ../src/pulse/channelmap.c:153
+#: ../src/pulse/channelmap.c:151
msgid "Auxiliary 30"
msgstr "Auxiliar 30"
-#: ../src/pulse/channelmap.c:154
+#: ../src/pulse/channelmap.c:152
msgid "Auxiliary 31"
msgstr "Auxiliar 31"
-#: ../src/pulse/channelmap.c:156
+#: ../src/pulse/channelmap.c:154
msgid "Top Center"
msgstr "Central superior"
-#: ../src/pulse/channelmap.c:158
+#: ../src/pulse/channelmap.c:156
msgid "Top Front Center"
-msgstr "Central frontal superior"
+msgstr "Frontal superior central"
-#: ../src/pulse/channelmap.c:159
+#: ../src/pulse/channelmap.c:157
msgid "Top Front Left"
msgstr "Frontal superior izquierdo"
-#: ../src/pulse/channelmap.c:160
+#: ../src/pulse/channelmap.c:158
msgid "Top Front Right"
msgstr "Frontal superior derecho"
-#: ../src/pulse/channelmap.c:162
+#: ../src/pulse/channelmap.c:160
msgid "Top Rear Center"
msgstr "Posterior central superior "
-#: ../src/pulse/channelmap.c:163
+#: ../src/pulse/channelmap.c:161
msgid "Top Rear Left"
msgstr "Posterior izquierdo superior"
-#: ../src/pulse/channelmap.c:164
+#: ../src/pulse/channelmap.c:162
msgid "Top Rear Right"
msgstr "Posterior derecho superior"
-#: ../src/pulse/channelmap.c:484 ../src/pulse/sample.c:169
-#: ../src/pulse/volume.c:297 ../src/pulse/volume.c:323
-#: ../src/pulse/volume.c:343 ../src/pulse/volume.c:373
-#: ../src/pulse/format.c:125
+#: ../src/pulse/channelmap.c:479 ../src/pulse/format.c:121
+#: ../src/pulse/sample.c:175 ../src/pulse/volume.c:294
+#: ../src/pulse/volume.c:320 ../src/pulse/volume.c:340
+#: ../src/pulse/volume.c:372 ../src/pulse/volume.c:412
+#: ../src/pulse/volume.c:431
msgid "(invalid)"
msgstr "(inválido)"
-#: ../src/pulse/channelmap.c:761
+#: ../src/pulse/channelmap.c:762
msgid "Stereo"
msgstr "Estéreo"
-#: ../src/pulse/channelmap.c:766
+#: ../src/pulse/channelmap.c:767
msgid "Surround 4.0"
msgstr "Envolvente 4.0"
-#: ../src/pulse/channelmap.c:772
+#: ../src/pulse/channelmap.c:773
msgid "Surround 4.1"
msgstr "Envolvente 4.1"
-#: ../src/pulse/channelmap.c:778
+#: ../src/pulse/channelmap.c:779
msgid "Surround 5.0"
msgstr "Envolvente 5.0"
-#: ../src/pulse/channelmap.c:784
+#: ../src/pulse/channelmap.c:785
msgid "Surround 5.1"
msgstr "Envolvente 5.1"
-#: ../src/pulse/channelmap.c:791
+#: ../src/pulse/channelmap.c:792
msgid "Surround 7.1"
msgstr "Envolvente 7.1"
-#: ../src/pulse/error.c:40
+#: ../src/pulse/client-conf-x11.c:53 ../src/utils/pax11publish.c:97
+msgid "xcb_connect() failed"
+msgstr "Falló xcb_connect()"
+
+#: ../src/pulse/client-conf-x11.c:58 ../src/utils/pax11publish.c:102
+msgid "xcb_connection_has_error() returned true"
+msgstr "xcb_connection_has_error() indica error"
+
+#: ../src/pulse/client-conf-x11.c:94
+msgid "Failed to parse cookie data"
+msgstr "Fallo al analizar los datos de la cookie"
+
+#: ../src/pulse/context.c:656
+#, c-format
+msgid "fork(): %s"
+msgstr "fork(): %s"
+
+#: ../src/pulse/context.c:711
+#, c-format
+msgid "waitpid(): %s"
+msgstr "waitpid(:) %s"
+
+#: ../src/pulse/context.c:1412
+#, c-format
+msgid "Received message for unknown extension '%s'"
+msgstr "Se ha recibido un mensaje para una extensión desconocida '%s'"
+
+#: ../src/pulse/direction.c:37
+msgid "input"
+msgstr "entrada"
+
+#: ../src/pulse/direction.c:39
+msgid "output"
+msgstr "salida"
+
+#: ../src/pulse/direction.c:41
+msgid "bidirectional"
+msgstr "bidireccional"
+
+#: ../src/pulse/direction.c:43
+msgid "invalid"
+msgstr "inválido"
+
+#: ../src/pulsecore/core-util.c:1820
+#, c-format
+msgid ""
+"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could "
+"e g happen if you try to connect to a non-root PulseAudio as a root user, "
+"over the native protocol. Don't do that.)"
+msgstr ""
+"¡Los propietarios de XDG_RUNTIME_DIR (%s) no somos nosotrs (uid %d), sino "
+"uid %d! Puede pasar, por ejemplo, al intentar conectarse mediante protocolo "
+"nativo a un PulseAudio de usuario siendo root. No haga eso."
+
+#: ../src/pulsecore/core-util.h:93
+msgid "yes"
+msgstr "sí"
+
+#: ../src/pulsecore/core-util.h:93
+msgid "no"
+msgstr "no"
+
+#: ../src/pulsecore/lock-autospawn.c:141 ../src/pulsecore/lock-autospawn.c:227
+msgid "Cannot access autospawn lock."
+msgstr "No se puede acceder al bloqueo de autogeneración."
+
+#: ../src/pulsecore/log.c:153
+#, c-format
+msgid "Failed to open target file '%s'."
+msgstr "No se pudo abrir el archivo de destino '%s'"
+
+#: ../src/pulsecore/log.c:176
+#, c-format
+msgid ""
+"Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
+msgstr ""
+"Se intentó abrir los archivos de destino '%s', '%s.1', '%s.2' ... '%s.%d', "
+"pero todos fallaron."
+
+#: ../src/pulsecore/log.c:631
+msgid "Invalid log target."
+msgstr "El destino de registro no es válido."
+
+#: ../src/pulsecore/sink.c:3427
+msgid "Built-in Audio"
+msgstr "Audio Interno"
+
+#: ../src/pulsecore/sink.c:3432
+msgid "Modem"
+msgstr "Módem"
+
+#: ../src/pulse/error.c:38
msgid "OK"
msgstr "OK"
-#: ../src/pulse/error.c:41
+#: ../src/pulse/error.c:39
msgid "Access denied"
-msgstr "Acceso negado"
+msgstr "Acceso denegado"
-#: ../src/pulse/error.c:42
+#: ../src/pulse/error.c:40
msgid "Unknown command"
msgstr "Comando desconocido"
-#: ../src/pulse/error.c:43
+#: ../src/pulse/error.c:41
msgid "Invalid argument"
msgstr "Argumento inválido"
-#: ../src/pulse/error.c:44
+#: ../src/pulse/error.c:42
msgid "Entity exists"
msgstr "Entidad existente"
-#: ../src/pulse/error.c:45
+#: ../src/pulse/error.c:43
msgid "No such entity"
msgstr "No existe tal entidad"
-#: ../src/pulse/error.c:46
+#: ../src/pulse/error.c:44
msgid "Connection refused"
msgstr "Conexión negada"
-#: ../src/pulse/error.c:47
+#: ../src/pulse/error.c:45
msgid "Protocol error"
msgstr "Error de protocolo"
-#: ../src/pulse/error.c:48
+#: ../src/pulse/error.c:46
msgid "Timeout"
-msgstr "Timeout"
+msgstr "Tiempo de espera"
-#: ../src/pulse/error.c:49
-msgid "No authorization key"
-msgstr "Sin hay llave de autorización"
+#: ../src/pulse/error.c:47
+msgid "No authentication key"
+msgstr "No hay llave de autenticación"
-#: ../src/pulse/error.c:50
+#: ../src/pulse/error.c:48
msgid "Internal error"
msgstr "Error interno"
-#: ../src/pulse/error.c:51
+#: ../src/pulse/error.c:49
msgid "Connection terminated"
msgstr "Conexión finalizada"
-#: ../src/pulse/error.c:52
+#: ../src/pulse/error.c:50
msgid "Entity killed"
msgstr "Entidad terminada"
-#: ../src/pulse/error.c:53
+#: ../src/pulse/error.c:51
msgid "Invalid server"
msgstr "Servidor inválido"
-#: ../src/pulse/error.c:54
+#: ../src/pulse/error.c:52
msgid "Module initialization failed"
msgstr "Falló la inicialización del módulo"
-#: ../src/pulse/error.c:55
+#: ../src/pulse/error.c:53
msgid "Bad state"
msgstr "Mal estado"
-#: ../src/pulse/error.c:56
+#: ../src/pulse/error.c:54
msgid "No data"
msgstr "Sin datos"
-#: ../src/pulse/error.c:57
+#: ../src/pulse/error.c:55
msgid "Incompatible protocol version"
msgstr "Versión de protocolo incompatible"
-#: ../src/pulse/error.c:58
+#: ../src/pulse/error.c:56
msgid "Too large"
msgstr "Demasiado largo"
-#: ../src/pulse/error.c:59
+#: ../src/pulse/error.c:57
msgid "Not supported"
msgstr "No soportado"
-#: ../src/pulse/error.c:60
+#: ../src/pulse/error.c:58
msgid "Unknown error code"
msgstr "Código de error desconocido"
-#: ../src/pulse/error.c:61
+#: ../src/pulse/error.c:59
msgid "No such extension"
msgstr "No existe tal extensión"
-#: ../src/pulse/error.c:62
+#: ../src/pulse/error.c:60
msgid "Obsolete functionality"
msgstr "Funcionalidad Obsoleta"
-#: ../src/pulse/error.c:63
+#: ../src/pulse/error.c:61
msgid "Missing implementation"
msgstr "Falta implementación"
-#: ../src/pulse/error.c:64
+#: ../src/pulse/error.c:62
msgid "Client forked"
msgstr "Cliente iniciado"
-#: ../src/pulse/error.c:65
+#: ../src/pulse/error.c:63
msgid "Input/Output error"
msgstr "Error de Entrada/Salida"
-#: ../src/pulse/error.c:66
+#: ../src/pulse/error.c:64
msgid "Device or resource busy"
msgstr "Dispositivo o recurso ocupado"
-#: ../src/pulse/sample.c:171
+#: ../src/pulse/sample.c:177
#, c-format
msgid "%s %uch %uHz"
msgstr "%s %uch %uHz"
-#: ../src/pulse/sample.c:183
+#: ../src/pulse/sample.c:189
#, c-format
msgid "%0.1f GiB"
msgstr "%0.1f GiB"
-#: ../src/pulse/sample.c:185
+#: ../src/pulse/sample.c:191
#, c-format
msgid "%0.1f MiB"
msgstr "%0.1f MiB"
-#: ../src/pulse/sample.c:187
+#: ../src/pulse/sample.c:193
#, c-format
msgid "%0.1f KiB"
msgstr "%0.1f KiB"
-#: ../src/pulse/sample.c:189
+#: ../src/pulse/sample.c:195
#, c-format
msgid "%u B"
msgstr "%u B"
-#: ../src/pulse/client-conf-x11.c:54 ../src/utils/pax11publish.c:100
-#, fuzzy
-msgid "xcb_connect() failed"
-msgstr "pa_context_connect() falló: %s"
-
-#: ../src/pulse/client-conf-x11.c:59 ../src/utils/pax11publish.c:105
-msgid "xcb_connection_has_error() returned true"
-msgstr ""
-
-#: ../src/pulse/client-conf-x11.c:97
-msgid "Failed to parse cookie data"
-msgstr "Fallo al analizar los datos de la cookie"
-
-#: ../src/pulse/client-conf.c:117
-#, c-format
-msgid "Failed to open configuration file '%s': %s"
-msgstr "Fallo al abrir el archivo de configuración '%s': %s"
-
-#: ../src/pulse/context.c:528
-msgid "No cookie loaded. Attempting to connect without."
-msgstr "No se ha cargado ninguna cookie. Intentando conectar de todos modos."
-
-#: ../src/pulse/context.c:675
-#, c-format
-msgid "fork(): %s"
-msgstr "fork(): %s"
-
-#: ../src/pulse/context.c:730
+#: ../src/tests/resampler-test.c:255
#, c-format
-msgid "waitpid(): %s"
-msgstr "waitpid(:) %s"
+msgid ""
+"%s [options]\n"
+"\n"
+"-h, --help Show this help\n"
+"-v, --verbose Print debug messages\n"
+" --from-rate=SAMPLERATE From sample rate in Hz (defaults to "
+"44100)\n"
+" --from-format=SAMPLEFORMAT From sample type (defaults to s16le)\n"
+" --from-channels=CHANNELS From number of channels (defaults to "
+"1)\n"
+" --to-rate=SAMPLERATE To sample rate in Hz (defaults to "
+"44100)\n"
+" --to-format=SAMPLEFORMAT To sample type (defaults to s16le)\n"
+" --to-channels=CHANNELS To number of channels (defaults to 1)\n"
+" --resample-method=METHOD Resample method (defaults to auto)\n"
+" --seconds=SECONDS From stream duration (defaults to 60)\n"
+"\n"
+"If the formats are not specified, the test performs all formats "
+"combinations,\n"
+"back and forth.\n"
+"\n"
+"Sample type must be one of s16le, s16be, u8, float32le, float32be, ulaw, "
+"alaw,\n"
+"s24le, s24be, s24-32le, s24-32be, s32le, s32be (defaults to s16ne)\n"
+"\n"
+"See --dump-resample-methods for possible values of resample methods.\n"
+msgstr ""
+"%s [opciones]\n"
+"\n"
+"-h, --help Muestra esta ayuda\n"
+"-v, --verbose Saca mensajes de depuración\n"
+" --from-rate=TASA Tasa de muestreo de origen (pred. "
+"44100)\n"
+" --from-format=FORMATO Tipo de muestra de origen (pred. "
+"s16le)\n"
+" --from-channels=CANALES Número de canales de origen (pred. 1)\n"
+" --to-rate=TASA Tasa de muestreo de destino (pred. "
+"44100)\n"
+" --to-format=FORMATO Tipo de muestra de destino (pred. "
+"s16le)\n"
+" --to-channels=CANALES Número de canales de destino (pred. 1)\n"
+" --resample-method=MÉTODO Método de remuestreo (pred. auto)\n"
+" --seconds=SEGUNDOS Duración del flujo (pred. 60)\n"
+"\n"
+"Si no se indican los formatos, la prueba ejecuta todas las combinaciones.\n"
+"\n"
+"El formato ha de ser s16le, s16be, u8, float32le, float32be, ulaw, alaw, "
+"s24le,\n"
+"s24be, s24-32le, s24-32be, s32le o s32be (el valor predeterminado es s16ne)\n"
+"\n"
+"Consulte --dump-resample-methods para los método de remuestreo aceptados.\n"
-#: ../src/pulse/context.c:1431
+#: ../src/tests/resampler-test.c:354
#, c-format
-msgid "Received message for unknown extension '%s'"
-msgstr "Se ha recibido un mensaje para una extensión desconocida '%s'"
+msgid "%s %s\n"
+msgstr "%s %s\n"
-#: ../src/utils/pacat.c:112
+#: ../src/utils/pacat.c:116
#, c-format
msgid "Failed to drain stream: %s"
msgstr "Falló al drenar el flujo: %s"
-#: ../src/utils/pacat.c:117
+#: ../src/utils/pacat.c:121
msgid "Playback stream drained."
msgstr "El flujo de reproducción ha sido drenado."
-#: ../src/utils/pacat.c:128
+#: ../src/utils/pacat.c:132
msgid "Draining connection to server."
msgstr "Drenando conexión con el servidor."
-#: ../src/utils/pacat.c:141
+#: ../src/utils/pacat.c:145
#, c-format
msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s"
-#: ../src/utils/pacat.c:164
+#: ../src/utils/pacat.c:168
#, c-format
msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() falló: %s"
-#: ../src/utils/pacat.c:205
+#: ../src/utils/pacat.c:209
#, c-format
msgid "pa_stream_begin_write() failed: %s"
msgstr "pa_stream_write() falló: %s"
-#: ../src/utils/pacat.c:255 ../src/utils/pacat.c:285
+#: ../src/utils/pacat.c:259 ../src/utils/pacat.c:289
#, c-format
msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() falló: %s"
-#: ../src/utils/pacat.c:325
+#: ../src/utils/pacat.c:339
msgid "Stream successfully created."
msgstr "Se ha creado exitosamente el flujo (stream)."
-#: ../src/utils/pacat.c:328
+#: ../src/utils/pacat.c:342
#, c-format
msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() falló: %s"
-#: ../src/utils/pacat.c:332
+#: ../src/utils/pacat.c:346
#, c-format
msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Métrica del búfer: maxlenght=%u, tlenghth=%u, prebuf=%u, minreq=%u"
-#: ../src/utils/pacat.c:335
+#: ../src/utils/pacat.c:349
#, c-format
msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Métrica del búfer: maxlenght=%u, fragsize=%u"
-#: ../src/utils/pacat.c:339
+#: ../src/utils/pacat.c:353
#, c-format
msgid "Using sample spec '%s', channel map '%s'."
msgstr "Utilizando especificaciones de muestra '%s', mapa del canal '%s'."
-#: ../src/utils/pacat.c:343
+#: ../src/utils/pacat.c:357
#, c-format
-msgid "Connected to device %s (%u, %ssuspended)."
-msgstr "Conectado al dispositivo %s (%u, %ssuspended)."
+msgid "Connected to device %s (index: %u, suspended: %s)."
+msgstr "Conectado al dispositivo %s (índice %u, suspensión %s)."
-#: ../src/utils/pacat.c:353
+#: ../src/utils/pacat.c:367
#, c-format
msgid "Stream error: %s"
msgstr "Error de flujo: %s"
-#: ../src/utils/pacat.c:363
+#: ../src/utils/pacat.c:377
#, c-format
msgid "Stream device suspended.%s"
msgstr "Dispositivo de flujo suspendido.%s"
-#: ../src/utils/pacat.c:365
+#: ../src/utils/pacat.c:379
#, c-format
msgid "Stream device resumed.%s"
msgstr "Dispositivo de flujo reestablecido.%s"
-#: ../src/utils/pacat.c:373
+#: ../src/utils/pacat.c:387
#, c-format
msgid "Stream underrun.%s"
msgstr "Flujo agotado.%s"
-#: ../src/utils/pacat.c:380
+#: ../src/utils/pacat.c:394
#, c-format
msgid "Stream overrun.%s"
msgstr "Flujo saturado.%s"
-#: ../src/utils/pacat.c:387
+#: ../src/utils/pacat.c:401
#, c-format
msgid "Stream started.%s"
msgstr "Flujo iniciado.%s"
-#: ../src/utils/pacat.c:394
+#: ../src/utils/pacat.c:408
#, c-format
msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Fujo trasladado al dispositivo %s (%u, %ssuspended).%s"
-#: ../src/utils/pacat.c:394
+#: ../src/utils/pacat.c:408
msgid "not "
msgstr "no"
-#: ../src/utils/pacat.c:401
+#: ../src/utils/pacat.c:415
#, c-format
msgid "Stream buffer attributes changed.%s"
msgstr "Los atributos del búfer de flujo han cambiado.%s"
-#: ../src/utils/pacat.c:416
+#: ../src/utils/pacat.c:430
msgid "Cork request stack is empty: corking stream"
-msgstr ""
+msgstr "La pila de peticiones de pausa está vacía: pausando flujo"
-#: ../src/utils/pacat.c:422
+#: ../src/utils/pacat.c:436
msgid "Cork request stack is empty: uncorking stream"
-msgstr ""
+msgstr "La pila de peticiones de pausa está vacía: reactivando flujo"
-#: ../src/utils/pacat.c:426
+#: ../src/utils/pacat.c:440
msgid "Warning: Received more uncork requests than cork requests!"
-msgstr ""
+msgstr "Aviso: ¡se han recibido más peticiones de reactivación que de pausa!"
-#: ../src/utils/pacat.c:451
+#: ../src/utils/pacat.c:465
#, c-format
msgid "Connection established.%s"
msgstr "Conexión establecida.%s"
-#: ../src/utils/pacat.c:454
+#: ../src/utils/pacat.c:468
#, c-format
msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() falló: %s"
-#: ../src/utils/pacat.c:492
+#: ../src/utils/pacat.c:506
#, c-format
msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() falló: %s"
-#: ../src/utils/pacat.c:498
+#: ../src/utils/pacat.c:512
+#, c-format
+msgid "Failed to set monitor stream: %s"
+msgstr "No se pudo aplicar el flujo de monitorización: %s"
+
+#: ../src/utils/pacat.c:516
#, c-format
msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() falló: %s"
-#: ../src/utils/pacat.c:512 ../src/utils/pactl.c:1252
+#: ../src/utils/pacat.c:529 ../src/utils/pactl.c:1446
#, c-format
msgid "Connection failure: %s"
msgstr "Error en la conexión: %s"
-#: ../src/utils/pacat.c:545
+#: ../src/utils/pacat.c:562
msgid "Got EOF."
msgstr "Se tiene EOF."
-#: ../src/utils/pacat.c:582
+#: ../src/utils/pacat.c:599
#, c-format
msgid "write() failed: %s"
msgstr "write() falló: %s"
-#: ../src/utils/pacat.c:603
+#: ../src/utils/pacat.c:620
msgid "Got signal, exiting."
msgstr "Hay señal, saliendo (exiting)."
-#: ../src/utils/pacat.c:617
+#: ../src/utils/pacat.c:634
#, c-format
msgid "Failed to get latency: %s"
msgstr "No se pudo obtener latencia: %s"
-#: ../src/utils/pacat.c:622
+#: ../src/utils/pacat.c:639
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec."
msgstr "Tiempo: %0.3f seg; Latencia: %0.0f useg."
-#: ../src/utils/pacat.c:643
+#: ../src/utils/pacat.c:660
#, c-format
msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() falló: %s"
-#: ../src/utils/pacat.c:653
-#, fuzzy, c-format
+#: ../src/utils/pacat.c:670
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -1418,8 +1843,7 @@ msgid ""
"\n"
" -v, --verbose Enable verbose operations\n"
"\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
+" -s, --server=SERVER The name of the server to connect to\n"
" -d, --device=DEVICE The name of the sink/source to "
"connect to\n"
" -n, --client-name=NAME How to call this client on the "
@@ -1441,16 +1865,16 @@ msgid ""
" (defaults to 2)\n"
" --channel-map=CHANNELMAP Channel map to use instead of the "
"default\n"
-" --fix-format Take the sample format from the sink "
-"the stream is\n"
+" --fix-format Take the sample format from the sink/"
+"source the stream is\n"
" being connected to.\n"
-" --fix-rate Take the sampling rate from the sink "
-"the stream is\n"
+" --fix-rate Take the sampling rate from the sink/"
+"source the stream is\n"
" being connected to.\n"
" --fix-channels Take the number of channels and the "
"channel map\n"
-" from the sink the stream is being "
-"connected to.\n"
+" from the sink/source the stream is "
+"being connected to.\n"
" --no-remix Don't upmix or downmix channels.\n"
" --no-remap Map channels by index instead of "
"name.\n"
@@ -1465,142 +1889,137 @@ msgid ""
" --property=PROPERTY=VALUE Set the specified property to the "
"specified value.\n"
" --raw Record/play raw PCM data.\n"
-" --passthrough passthrough data \n"
+" --passthrough Passthrough data.\n"
" --file-format[=FFORMAT] Record/play formatted PCM data.\n"
" --list-file-formats List available file formats.\n"
+" --monitor-stream=INDEX Record from the sink input with "
+"index INDEX.\n"
msgstr ""
"%s [opciones]\n"
"\n"
-" -h, --help Muestra esta ayuda\n"
-" --version Muestra la versión\n"
+" -h, --help Muestra esta ayuda\n"
+" --version Muestra la versión\n"
"\n"
-" -r, --record Crea una conexión para grabar\n"
-" -p, --playback Create a connection for playback\n"
+" -r, --record Hace una conexión para grabación\n"
+" -p, --playback Hace una conexión para reproducción\n"
"\n"
-" -v, --verbose Habilita operaciones con vocabulario "
-"más detallado\n"
+" -v, --verbose Operación detallada\n"
"\n"
-" -s, --server=SERVER El nombre del servidor con el que "
-"conectarse\n"
-" -d, --device=DEVICE El nombre del sumidero/fuente a la "
-"que conectarse\n"
-" -n, --client-name=NAME Cómo llamar a este cliente en el "
-"servidor\n"
-" --stream-name=NAME Cómo llamar a este flujo en el "
+" -s, --server=SERVIDOR Nombre del servidor al que conectar\n"
+" -d, --device=DISPOSITIVO Nombre de la fuente/destino al que "
+"conectar\n"
+" -n, --client-name=NOMBRE Cómo llamar a este cliente en el "
"servidor\n"
-" --volume=VOLUME Especifica el salida inicial "
-"(linear) de volumen dentro del rango 0...65536\n"
-" --rate=SAMPLERATE Tasa de muestra en Hz (establecida "
-"en 44100 por defecto)\n"
-" --format=SAMPLEFORMAT El tipo de ejemplo, alguno entre "
-"s16le, s16be, u8, float32le,\n"
-" float32be, ulaw, alaw, s32le, s32be "
-"(establecido en s16ne por defecto)\n"
-" --channels=CHANNELS La cantidad de canales, 1 para mono, "
-"2 para stereo\n"
-" (establecido en 2 por defecto)\n"
-" --channel-map=CHANNELMAP Mapeo de canales a ser usado en "
-"lugar del establecido por defecto\n"
-" --fix-format Obtener el formato de ejemplo desde "
-"el sumidero al que el flujo\n"
-" se ha conectado.\n"
-" --fix-rate Obtiene la tasa de ejemplo desde el "
-"destino al que el flujo\n"
-" se ha conectado.\n"
-" --fix-channels Obtener el mapa y la cantidad de "
-"canales\n"
-" desde el sumidero al que el flujo se "
-"ha conectado.\n"
-" --no-remix No realiza un upmix o un downmix de "
-"los canales.\n"
-" --no-remap Mapea canales por índices en lugar "
-"de por nombres.\n"
-" --latency=BYTES Solicita la latencia especificada en "
-"bytes.\n"
-" --process-time=BYTES Solicita los procesos de tiempo por "
-"pedido especificados en bytes.\n"
-" --property=PROPERTY=VALUE Estabelce la propiedad especificada "
-"al valor especificado.\n"
-" --raw Graba/reproduce datos PCM con "
-"formato raw.\n"
-" --file-format=FFORMAT Graba/reproduce datos PCM "
-"formateados.\n"
-" --list-file-formats Muestra una lista con los formatos "
-"de archivo disponibles.\n"
-
-#: ../src/utils/pacat.c:786
-#, c-format
-msgid ""
-"pacat %s\n"
+" --stream-name=NOMBRE Cómo llamar a este flujo en el servidor\n"
+" --volume=VOLUMEN Volumen inicial (lineal) de 0 a 65536\n"
+" --rate=TASA Tasa de muestreo en Hz (pred. 44100)\n"
+" --format=FORMATO Tipo de muestra: s16le, s16be, u8,\n"
+" float32le, float32be, ulaw, alaw, "
+"s32le,\n"
+" s32be, s24le, s24be, s24-32le, s24-32be\n"
+" (pred. s16ne)\n"
+" --channels=CANALES Número de canales: 1 mono, 2 estéreo\n"
+" (pred. 2)\n"
+" --channel-map=MAPA Mapa de canales\n"
+" --fix-format Usa el formato de muestra que indique "
+"la\n"
+" fuente o destino a la que se conecta\n"
+" --fix-rate Usa la tasa de muestreo que indique la\n"
+" fuente o destino a la que se conecta\n"
+" --fix-channels Usa el número y mapa de canales que "
+"indique\n"
+" la fuente o destino a la que se conecta\n"
+" --no-remix No mezcla canales\n"
+" --no-remap Mapea canales por índice, no por nombre\n"
+" --latency=BYTES Solicita la latencia indicada en bytes\n"
+" --process-time=BYTES Solicita el tiempo de proceso indicado\n"
+" para cada petición en bytes\n"
+" --latency-msec=MSEG Solicita la latencia indicada en ms\n"
+" --process-time-msec=MSEG Solicita el tiempo de proceso indicado\n"
+" para cada petición en ms\n"
+" --property=PROPIEDAD=VALOR Da el VALOR a la PROPIEDAD\n"
+" --raw Graba/reproduce datos PCM en crudo\n"
+" --passthrough Túnel\n"
+" --file-format[=FORMATO] Graba/reproduce datos PCM formateados\n"
+" --list-file-formats Lista los formatos disponibles\n"
+" --monitor-stream=ÍNDICE Graba de la entrada con ÍNDICE del "
+"destino\n"
+
+#: ../src/utils/pacat.c:808
+#, c-format
+msgid "pacat %s\n"
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-msgstr ""
-"pacat %s\n"
+msgstr "pacat %s\n"
"Compilado con libpulse %s\n"
-"Linkeado con libpulse %s\n"
+"Enlazado con libpulse %s\n"
-#: ../src/utils/pacat.c:819 ../src/utils/pactl.c:1400
+#: ../src/utils/pacat.c:841 ../src/utils/pactl.c:1642
#, c-format
msgid "Invalid client name '%s'"
msgstr "Nombre de cliente '%s' inválido"
-#: ../src/utils/pacat.c:834
+#: ../src/utils/pacat.c:856
#, c-format
msgid "Invalid stream name '%s'"
msgstr "Nombre de flujo '%s' inválido"
-#: ../src/utils/pacat.c:871
+#: ../src/utils/pacat.c:893
#, c-format
msgid "Invalid channel map '%s'"
msgstr "Mapa de canales '%s' inválido"
-#: ../src/utils/pacat.c:900 ../src/utils/pacat.c:914
+#: ../src/utils/pacat.c:922 ../src/utils/pacat.c:936
#, c-format
msgid "Invalid latency specification '%s'"
msgstr "Especificación de latencia '%s' inválida"
-#: ../src/utils/pacat.c:907 ../src/utils/pacat.c:921
+#: ../src/utils/pacat.c:929 ../src/utils/pacat.c:943
#, c-format
msgid "Invalid process time specification '%s'"
msgstr "Especificación de tiempo de proceso '%s' inválida"
-#: ../src/utils/pacat.c:933
+#: ../src/utils/pacat.c:955
#, c-format
msgid "Invalid property '%s'"
msgstr "Propiedad '%s' inválida"
-#: ../src/utils/pacat.c:952
+#: ../src/utils/pacat.c:974
#, c-format
msgid "Unknown file format %s."
msgstr "Formato de archivo desconocido %s."
-#: ../src/utils/pacat.c:971
+#: ../src/utils/pacat.c:989
+msgid "Failed to parse the argument for --monitor-stream"
+msgstr "No se pudo interpretar el parámetro de --monitor-stream"
+
+#: ../src/utils/pacat.c:1000
msgid "Invalid sample specification"
msgstr "Especificación de muestra inválida"
-#: ../src/utils/pacat.c:981
+#: ../src/utils/pacat.c:1010
#, c-format
msgid "open(): %s"
msgstr "open() %s"
-#: ../src/utils/pacat.c:986
+#: ../src/utils/pacat.c:1015
#, c-format
msgid "dup2(): %s"
msgstr "dup2(): %s"
-#: ../src/utils/pacat.c:993
+#: ../src/utils/pacat.c:1022
msgid "Too many arguments."
msgstr "Demasiados argumentos."
-#: ../src/utils/pacat.c:1004
+#: ../src/utils/pacat.c:1033
msgid "Failed to generate sample specification for file."
msgstr "Falló al generar especificación de ejemplo para el archivo."
-#: ../src/utils/pacat.c:1030
+#: ../src/utils/pacat.c:1059
msgid "Failed to open audio file."
msgstr "Falló al abrir el archivo de sonido."
-#: ../src/utils/pacat.c:1036
+#: ../src/utils/pacat.c:1065
msgid ""
"Warning: specified sample specification will be overwritten with "
"specification from file."
@@ -1608,23 +2027,23 @@ msgstr ""
"Aviso: el ejemplo de especificación indicado será sobreescrito con las "
"especificaciones del archivo."
-#: ../src/utils/pacat.c:1039 ../src/utils/pactl.c:1467
+#: ../src/utils/pacat.c:1068 ../src/utils/pactl.c:1706
msgid "Failed to determine sample specification from file."
msgstr "Falló al determinar especificación de ejemplo del archivo."
-#: ../src/utils/pacat.c:1048
+#: ../src/utils/pacat.c:1077
msgid "Warning: Failed to determine channel map from file."
msgstr "Aviso: Falló al determinar el mapeo del canal desde el archivo."
-#: ../src/utils/pacat.c:1059
+#: ../src/utils/pacat.c:1088
msgid "Channel map doesn't match sample specification"
msgstr "El mapa del canal no se corresponde con la especificación de muestra"
-#: ../src/utils/pacat.c:1070
+#: ../src/utils/pacat.c:1099
msgid "Warning: failed to write channel map to file."
msgstr "Aviso: Faló al escribir el mapeo del canal en el archivo."
-#: ../src/utils/pacat.c:1085
+#: ../src/utils/pacat.c:1114
#, c-format
msgid ""
"Opening a %s stream with sample specification '%s' and channel map '%s'."
@@ -1632,157 +2051,221 @@ msgstr ""
"Abriendo un flujo %s con especificación de muestra '%s' y mapeo de canal "
"'%s'."
-#: ../src/utils/pacat.c:1086
+#: ../src/utils/pacat.c:1115
msgid "recording"
msgstr "grabando"
-#: ../src/utils/pacat.c:1086
+#: ../src/utils/pacat.c:1115
msgid "playback"
msgstr "playback"
-#: ../src/utils/pacat.c:1110
-#, fuzzy
+#: ../src/utils/pacat.c:1139
msgid "Failed to set media name."
-msgstr "Falló al analizar la línea de comando."
+msgstr "No se pudo establecer el nombre del medio"
-#: ../src/utils/pacat.c:1117 ../src/utils/pactl.c:1777
+#: ../src/utils/pacat.c:1146 ../src/utils/pactl.c:2056
msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() falló."
-#: ../src/utils/pacat.c:1136
+#: ../src/utils/pacat.c:1169
msgid "io_new() failed."
msgstr "io_new() falló."
-#: ../src/utils/pacat.c:1143 ../src/utils/pactl.c:1789
+#: ../src/utils/pacat.c:1176 ../src/utils/pactl.c:2068
msgid "pa_context_new() failed."
msgstr "pa_context_new() falló."
-#: ../src/utils/pacat.c:1151 ../src/utils/pactl.c:1795
+#: ../src/utils/pacat.c:1184 ../src/utils/pactl.c:2074
#, c-format
msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() falló: %s"
-#: ../src/utils/pacat.c:1157
+#: ../src/utils/pacat.c:1190
msgid "pa_context_rttime_new() failed."
msgstr "pa_context_rttime_new() falló."
-#: ../src/utils/pacat.c:1164 ../src/utils/pactl.c:1800
+#: ../src/utils/pacat.c:1197 ../src/utils/pactl.c:2079
msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() falló."
-#: ../src/utils/pasuspender.c:79
-#, c-format
-msgid "fork(): %s\n"
-msgstr "fork(): %s\n"
+#: ../src/utils/pacmd.c:51 ../src/utils/pactl.c:1564
+msgid "NAME [ARGS ...]"
+msgstr "NOMBRE [PARÁMETROS ...]"
-#: ../src/utils/pasuspender.c:90
-#, c-format
-msgid "execvp(): %s\n"
-msgstr "execvp(): %s\n"
+#: ../src/utils/pacmd.c:52 ../src/utils/pacmd.c:60 ../src/utils/pactl.c:1565
+msgid "NAME|#N"
+msgstr "NOMBRE|#N"
-#: ../src/utils/pasuspender.c:107
-#, c-format
-msgid "Failure to suspend: %s\n"
-msgstr "Error al suspender: %s\n"
+#: ../src/utils/pacmd.c:53 ../src/utils/pacmd.c:63 ../src/utils/pactl.c:1563
+#: ../src/utils/pactl.c:1569
+msgid "NAME"
+msgstr "NOMBRE"
-#: ../src/utils/pasuspender.c:122
-#, c-format
-msgid "Failure to resume: %s\n"
-msgstr "Error al continuar: %s\n"
+#: ../src/utils/pacmd.c:54
+msgid "NAME|#N VOLUME"
+msgstr "NOMBRE|#N VOLUMEN"
-#: ../src/utils/pasuspender.c:145
-#, c-format
-msgid "WARNING: Sound server is not local, not suspending.\n"
-msgstr "AVISO: El servidor de sonido no es local, no se suspende.\n"
+#: ../src/utils/pacmd.c:55
+msgid "#N VOLUME"
+msgstr "#N VOLUMEN"
-#: ../src/utils/pasuspender.c:157
-#, c-format
-msgid "Connection failure: %s\n"
-msgstr "Error en la conexión: %s\n"
+#: ../src/utils/pacmd.c:56 ../src/utils/pacmd.c:70 ../src/utils/pactl.c:1567
+msgid "NAME|#N 1|0"
+msgstr "NOMBRE|#N 1|0"
-#: ../src/utils/pasuspender.c:174
-#, c-format
-msgid "Got SIGINT, exiting.\n"
-msgstr "Hay SIGINT, saliendo.\n"
+#: ../src/utils/pacmd.c:57
+msgid "#N 1|0"
+msgstr "#N 1|0"
-#: ../src/utils/pasuspender.c:192
-#, c-format
-msgid "WARNING: Child process terminated by signal %u\n"
-msgstr "AVISO: El proceso niño terminado por la señal %u\n"
+#: ../src/utils/pacmd.c:58
+msgid "NAME|#N KEY=VALUE"
+msgstr "NOMBRE|#N CLAVE=VALOR"
+
+#: ../src/utils/pacmd.c:59
+msgid "#N KEY=VALUE"
+msgstr "#N CLAVE=VALOR"
+
+#: ../src/utils/pacmd.c:61
+msgid "#N"
+msgstr "#N"
+
+#: ../src/utils/pacmd.c:62
+msgid "NAME SINK|#N"
+msgstr "NOMBRE DESTINO|#N"
+
+#: ../src/utils/pacmd.c:64 ../src/utils/pacmd.c:65
+msgid "NAME FILENAME"
+msgstr "NOMBRE ARCHIVO"
+
+#: ../src/utils/pacmd.c:66
+msgid "PATHNAME"
+msgstr "RUTA"
+
+#: ../src/utils/pacmd.c:67
+msgid "FILENAME SINK|#N"
+msgstr "ARCHIVO DESTINO|#N"
+
+#: ../src/utils/pacmd.c:69 ../src/utils/pactl.c:1566
+msgid "#N SINK|SOURCE"
+msgstr "#N DESTINO|FUENTE"
+
+#: ../src/utils/pacmd.c:71 ../src/utils/pacmd.c:77 ../src/utils/pacmd.c:78
+msgid "1|0"
+msgstr "1|0"
+
+#: ../src/utils/pacmd.c:72 ../src/utils/pactl.c:1568
+msgid "CARD PROFILE"
+msgstr "PLACA PERFIL"
+
+#: ../src/utils/pacmd.c:73 ../src/utils/pactl.c:1570
+msgid "NAME|#N PORT"
+msgstr "NOMBRE|#N PUERTO"
+
+#: ../src/utils/pacmd.c:74 ../src/utils/pactl.c:1576
+msgid "CARD-NAME|CARD-#N PORT OFFSET"
+msgstr "NOMBRE-PLACA|#N-PLACA PUERTO DESPLAZAMIENTO"
+
+#: ../src/utils/pacmd.c:75
+msgid "TARGET"
+msgstr "DESTINO"
-#: ../src/utils/pasuspender.c:210
+#: ../src/utils/pacmd.c:76
+msgid "NUMERIC LEVEL"
+msgstr "NIVEL-NUMÉRICO"
+
+#: ../src/utils/pacmd.c:79
+msgid "FRAMES"
+msgstr "LOTES"
+
+#: ../src/utils/pacmd.c:81
#, c-format
msgid ""
-"%s [options] ... \n"
"\n"
" -h, --help Show this help\n"
" --version Show version\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
-"\n"
+"When no command is given pacmd starts in the interactive mode.\n"
msgstr ""
-"%s [opciones] ... \n"
"\n"
" -h, --help Muestra esta ayuda\n"
" --version Muestra la versión\n"
-" -s, --server=SERVER El nombre del servidor con el que "
-"conectarse\n"
-"\n"
+"Cuando no se da un comando, pacmd se ejecuta en modo interactivo.\n"
-#: ../src/utils/pasuspender.c:248
+#: ../src/utils/pacmd.c:128
#, c-format
-msgid ""
-"pasuspender %s\n"
+msgid "pacmd %s\n"
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-msgstr ""
-"pasuspender %s\n"
+msgstr "pacmd %s\n"
"Compilado con libpulse %s\n"
-"Linkeado con libpulse %s\n"
+"Enlazado con libpulse %s\n"
+
+#: ../src/utils/pacmd.c:142
+msgid "No PulseAudio daemon running, or not running as session daemon."
+msgstr ""
+"El demonio PulseAudio no está ejecutándose, o no se está ejecutando como un "
+"demonio de sesión."
-#: ../src/utils/pasuspender.c:277
+#: ../src/utils/pacmd.c:147
#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr "pa_mainloop_new() falló.\n"
+msgid "socket(PF_UNIX, SOCK_STREAM, 0): %s"
+msgstr "socket(PF_UNIX, SOCK_STREAM, 0): %s"
-#: ../src/utils/pasuspender.c:290
+#: ../src/utils/pacmd.c:164
#, c-format
-msgid "pa_context_new() failed.\n"
-msgstr "pa_context_new() falló.\n"
+msgid "connect(): %s"
+msgstr "connect(): %s"
+
+#: ../src/utils/pacmd.c:172
+msgid "Failed to kill PulseAudio daemon."
+msgstr "Error al intentar detener el demonio de PulseAudio."
+
+#: ../src/utils/pacmd.c:180
+msgid "Daemon not responding."
+msgstr "El demonio no responde."
-#: ../src/utils/pasuspender.c:298
+#: ../src/utils/pacmd.c:212 ../src/utils/pacmd.c:321 ../src/utils/pacmd.c:339
#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr "pa_mainloop_run() falló.\n"
+msgid "write(): %s"
+msgstr "write(): %s"
+
+#: ../src/utils/pacmd.c:268
+#, c-format
+msgid "poll(): %s"
+msgstr "poll(): %s"
+
+#: ../src/utils/pacmd.c:279 ../src/utils/pacmd.c:299
+#, c-format
+msgid "read(): %s"
+msgstr "read(): %s"
-#: ../src/utils/pactl.c:150
+#: ../src/utils/pactl.c:164
#, c-format
msgid "Failed to get statistics: %s"
msgstr "Error al intentar obtener estadísticas: %s"
-#: ../src/utils/pactl.c:156
+#: ../src/utils/pactl.c:170
#, c-format
msgid "Currently in use: %u blocks containing %s bytes total.\n"
msgstr "Actualmente en uso: %u bloques conteniendo %s bytes en total.\n"
-#: ../src/utils/pactl.c:159
+#: ../src/utils/pactl.c:173
#, c-format
msgid "Allocated during whole lifetime: %u blocks containing %s bytes total.\n"
msgstr ""
"Ubicados durante a lo largo del tiempo: %u bloques conteniendo %s bytes en "
"total.\n"
-#: ../src/utils/pactl.c:162
+#: ../src/utils/pactl.c:176
#, c-format
msgid "Sample cache size: %s\n"
msgstr "Tamaño del cache de muestra: %s\n"
-#: ../src/utils/pactl.c:171
+#: ../src/utils/pactl.c:185
#, c-format
msgid "Failed to get server information: %s"
msgstr "Error al intentar obtener información del servidor: %s"
-#: ../src/utils/pactl.c:176
+#: ../src/utils/pactl.c:190
#, c-format
msgid ""
"Server String: %s\n"
@@ -1792,9 +2275,15 @@ msgid ""
"Client Index: %u\n"
"Tile Size: %zu\n"
msgstr ""
+"Cadena de servidor: %s\n"
+"Versión de protocolo de biblioteca: %u\n"
+"Versión de protocolo de servidor: %u\n"
+"Es local: %s\n"
+"Índice de cliente: %u\n"
+"Tamaño de grupo: %zu\n"
-#: ../src/utils/pactl.c:192
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:206
+#, c-format
msgid ""
"User Name: %s\n"
"Host Name: %s\n"
@@ -1812,554 +2301,578 @@ msgstr ""
"Versión del servidor: %s\n"
"Especificación de muestra por defecto: %s\n"
"Mapa de canal por defecto: %s\n"
-"Sumidero por defecto: %s\n"
+"Destino por defecto: %s\n"
"Fuente por defecto: %s\n"
-"Cookie: %08x\n"
+"Cookie: %04x:%04x\n"
-#: ../src/utils/pactl.c:244 ../src/utils/pactl.c:830
+#: ../src/utils/pactl.c:255 ../src/utils/pactl.c:900 ../src/utils/pactl.c:978
#, c-format
msgid "Failed to get sink information: %s"
-msgstr "Error al intentar obtener información del sumidero: %s"
+msgstr "Error al intentar obtener información del destino: %s"
-#: ../src/utils/pactl.c:270
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:281
+#, c-format
msgid ""
"Sink #%u\n"
-"\tState: %s\n"
-"\tName: %s\n"
-"\tDescription: %s\n"
-"\tDriver: %s\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tOwner Module: %u\n"
-"\tMute: %s\n"
-"\tVolume: %s%s%s\n"
-"\t balance %0.2f\n"
-"\tBase Volume: %s%s%s\n"
-"\tMonitor Source: %s\n"
-"\tLatency: %0.0f usec, configured %0.0f usec\n"
-"\tFlags: %s%s%s%s%s%s%s\n"
-"\tProperties:\n"
-"\t\t%s\n"
-msgstr ""
-"Sumidero #%u\n"
-"\tEstado: %s\n"
-"\tNombre: %s\n"
-"\tDescripción: %s\n"
-"\tControlador: %s\n"
-"\tEspecificación de la Muestra: %s\n"
-"\tMapa del Canal: %s\n"
-"\tMódulo Dueño: %u\n"
-"\tMudo: %s\n"
-"\tVolume: %s%s%s\n"
-"\t balance %0.2f\n"
-"\tVolume Base: %s%s%s\n"
-"\tMonitorear Fuente: %s\n"
-"\tLatencia: %0.0f usec, configurado %0.0f useg\n"
-"\tBanderas: %s%s%s%s%s%s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:318 ../src/utils/pactl.c:430
-#, c-format
-msgid "\tPorts:\n"
-msgstr "\tPuertos:\n"
-
-#: ../src/utils/pactl.c:325 ../src/utils/pactl.c:437
-#, c-format
-msgid "\tActive Port: %s\n"
-msgstr "\tPuerto Activo: %s\n"
-
-#: ../src/utils/pactl.c:331 ../src/utils/pactl.c:443
-#, fuzzy, c-format
-msgid "\tFormats:\n"
-msgstr "\tPuertos:\n"
-
-#: ../src/utils/pactl.c:357 ../src/utils/pactl.c:849
+" State: %s\n"
+" Name: %s\n"
+" Description: %s\n"
+" Driver: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Owner Module: %u\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Base Volume: %s\n"
+" Monitor Source: %s\n"
+" Latency: %0.0f usec, configured %0.0f usec\n"
+" Flags: %s%s%s%s%s%s%s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+"Destino #%u\n"
+" Estado: %s\n"
+" Nombre: %s\n"
+" Descripción: %s\n"
+" Controlador: %s\n"
+" Especificación de muestra: %s\n"
+" Mapa de canales: %s\n"
+" Módulo propietario: %u\n"
+" Silencio: %s\n"
+" Volumen: %s\n"
+" balance %0.2f\n"
+" Volumen base: %s\n"
+" Fuente que lo monitoriza: %s\n"
+" Latencia: %0.0f usec, configurados %0.0f usec\n"
+" Indicadores: %s%s%s%s%s%s%s\n"
+" Propiedades:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:325 ../src/utils/pactl.c:431 ../src/utils/pactl.c:592
+#, c-format
+msgid " Ports:\n"
+msgstr " Puertos:\n"
+
+#: ../src/utils/pactl.c:332 ../src/utils/pactl.c:438
+#, c-format
+msgid " Active Port: %s\n"
+msgstr " Puerto Activo: %s\n"
+
+#: ../src/utils/pactl.c:338 ../src/utils/pactl.c:444
+#, c-format
+msgid " Formats:\n"
+msgstr " Formatos:\n"
+
+#: ../src/utils/pactl.c:362 ../src/utils/pactl.c:920 ../src/utils/pactl.c:993
#, c-format
msgid "Failed to get source information: %s"
msgstr "Error al intentar obtener información de la fuente: %s"
-#: ../src/utils/pactl.c:383
+#: ../src/utils/pactl.c:388
#, c-format
msgid ""
"Source #%u\n"
-"\tState: %s\n"
-"\tName: %s\n"
-"\tDescription: %s\n"
-"\tDriver: %s\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tOwner Module: %u\n"
-"\tMute: %s\n"
-"\tVolume: %s%s%s\n"
-"\t balance %0.2f\n"
-"\tBase Volume: %s%s%s\n"
-"\tMonitor of Sink: %s\n"
-"\tLatency: %0.0f usec, configured %0.0f usec\n"
-"\tFlags: %s%s%s%s%s%s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" State: %s\n"
+" Name: %s\n"
+" Description: %s\n"
+" Driver: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Owner Module: %u\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Base Volume: %s\n"
+" Monitor of Sink: %s\n"
+" Latency: %0.0f usec, configured %0.0f usec\n"
+" Flags: %s%s%s%s%s%s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"Fuente #%u\n"
-"\tEstado: %s\n"
-"\tNombre: %s\n"
-"\tDescripción: %s\n"
-"\tControlador: %s\n"
-"\tEspecificación de la Muestra: %s\n"
-"\tMapa del Canal: %s\n"
-"\tMódulo Dueño: %u\n"
-"\tMudo: %s\n"
-"\tVolume: %s%s%s\n"
-"\t balance %0.2f\n"
-"\tVolume Base: %s%s%s\n"
-"\tMonitoreo del Sumidero: %s\n"
-"\tLatencia: %0.0f usec, configurado %0.0f useg\n"
-"\tBanderas: %s%s%s%s%s%s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:415 ../src/utils/pactl.c:485 ../src/utils/pactl.c:528
-#: ../src/utils/pactl.c:570 ../src/utils/pactl.c:640 ../src/utils/pactl.c:641
-#: ../src/utils/pactl.c:652 ../src/utils/pactl.c:711 ../src/utils/pactl.c:712
-#: ../src/utils/pactl.c:723 ../src/utils/pactl.c:775 ../src/utils/pactl.c:776
-#: ../src/utils/pactl.c:783
+" Estado: %s\n"
+" Nombre: %s\n"
+" Descripción: %s\n"
+" Controlador: %s\n"
+" Especificación de muestra: %s\n"
+" Mapa de canales: %s\n"
+" Módulo propietario: %u\n"
+" Silencio: %s\n"
+" Volumen: %s\n"
+" balance %0.2f\n"
+" Volumen base: %s\n"
+" Monitor del destino: %s\n"
+" Latencia: %0.0f usec, configurados %0.0f usec\n"
+" Indicadores: %s%s%s%s%s%s\n"
+" Propiedades:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:416 ../src/utils/pactl.c:486 ../src/utils/pactl.c:529
+#: ../src/utils/pactl.c:571 ../src/utils/pactl.c:669 ../src/utils/pactl.c:670
+#: ../src/utils/pactl.c:681 ../src/utils/pactl.c:739 ../src/utils/pactl.c:740
+#: ../src/utils/pactl.c:751 ../src/utils/pactl.c:802 ../src/utils/pactl.c:803
+#: ../src/utils/pactl.c:809
msgid "n/a"
msgstr "n/a"
-#: ../src/utils/pactl.c:454
+#: ../src/utils/pactl.c:455 ../src/utils/pactl.c:859
#, c-format
msgid "Failed to get module information: %s"
msgstr "Error al intentar obtener información del módulo: %s"
-#: ../src/utils/pactl.c:477
+#: ../src/utils/pactl.c:478
#, c-format
msgid ""
"Module #%u\n"
-"\tName: %s\n"
-"\tArgument: %s\n"
-"\tUsage counter: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" Name: %s\n"
+" Argument: %s\n"
+" Usage counter: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"Módulo #%u\n"
-"\tNombre: %s\n"
-"\tArgumento: %s\n"
-"\tContador de uso: %s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
+" Nombre: %s\n"
+" Argumento: %s\n"
+" Contador de uso: %s\n"
+" Propiedades:\n"
+" %s\n"
-#: ../src/utils/pactl.c:496
+#: ../src/utils/pactl.c:497
#, c-format
msgid "Failed to get client information: %s"
msgstr "Error al intentar obtener información del cliente: %s"
-#: ../src/utils/pactl.c:522
+#: ../src/utils/pactl.c:523
#, c-format
-msgid ""
-"Client #%u\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+msgid "Client #%u\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"Cliente #%u\n"
-"\tControlador: %s\n"
-"\tMódulo dueño: %s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
+" Controlador: %s\n"
+" Módulo propietario: %s\n"
+" Propiedades:\n"
+" %s\n"
-#: ../src/utils/pactl.c:539
+#: ../src/utils/pactl.c:540
#, c-format
msgid "Failed to get card information: %s"
msgstr "Fallo al obtener la información de la placa: %s"
-#: ../src/utils/pactl.c:562
+#: ../src/utils/pactl.c:563
#, c-format
-msgid ""
-"Card #%u\n"
-"\tName: %s\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+msgid "Card #%u\n"
+" Name: %s\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"Placa #%u\n"
-"\tNombre: %s\n"
-"\tControlador: %s\n"
-"\tMódulo dueño: %s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
+" Nombre: %s\n"
+" Controlador: %s\n"
+" Módulo propietario: %s\n"
+" Propiedades:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:579
+#, c-format
+msgid " Profiles:\n"
+msgstr " Perfiles:\n"
-#: ../src/utils/pactl.c:576
+#: ../src/utils/pactl.c:586
#, c-format
-msgid "\tProfiles:\n"
-msgstr "\tPerfiles:\n"
+msgid " Active Profile: %s\n"
+msgstr " Perfil Activo: %s\n"
-#: ../src/utils/pactl.c:582
+#: ../src/utils/pactl.c:600
#, c-format
-msgid "\tActive Profile: %s\n"
-msgstr "\tPerfil Activo: %s\n"
+msgid " Properties:\n"
+" %s\n"
+msgstr " Propiedades:\n"
+" %s\n"
-#: ../src/utils/pactl.c:593 ../src/utils/pactl.c:868
+#: ../src/utils/pactl.c:605
+#, c-format
+msgid " Part of profile(s): %s"
+msgstr " Parte de perfil/es: %s"
+
+#: ../src/utils/pactl.c:622 ../src/utils/pactl.c:940 ../src/utils/pactl.c:1008
#, c-format
msgid "Failed to get sink input information: %s"
-msgstr "Error al intentar obtener información de entrada del sumidero: %s"
+msgstr "Error al intentar obtener información de entrada del destino: %s"
-#: ../src/utils/pactl.c:622
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:651
+#, c-format
msgid ""
"Sink Input #%u\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tClient: %s\n"
-"\tSink: %u\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tFormat: %s\n"
-"\tMute: %s\n"
-"\tVolume: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tBuffer Latency: %0.0f usec\n"
-"\tSink Latency: %0.0f usec\n"
-"\tResample method: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
-msgstr ""
-"Entrada del sumidero #%u\n"
-"\tControlador: %s\n"
-"\tMódulo dueño: %s\n"
-"\tCliente: %s\n"
-"\tSumidero: %u\n"
-"\tEspecificación de muestra: %s\n"
-"\tMapa de canales: %s\n"
-"\tMudo: %s\n"
-"\tVolumen: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tLatencia del búfer: %0.0f useg\n"
-"\tLatencia del sumidero: %0.0f useg\n"
-"\tMétodo de remuestreo: %s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:663 ../src/utils/pactl.c:887
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Client: %s\n"
+" Sink: %u\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Format: %s\n"
+" Corked: %s\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Buffer Latency: %0.0f usec\n"
+" Sink Latency: %0.0f usec\n"
+" Resample method: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+"Entrada de destino #%u\n"
+" Controlador: %s\n"
+" Módulo propietario: %s\n"
+" Cliente: %s\n"
+" Destino: %u\n"
+" Especificación de muestra: %s\n"
+" Mapa de canales: %s\n"
+" Formato: %s\n"
+" Pausado: %s\n"
+" Silencio: %s\n"
+" Volumen: %s\n"
+" balance %0.2f\n"
+" Latencia de búfer: %0.0f usec\n"
+" Latencia del destino: %0.0f usec\n"
+" Método de remuestreo: %s\n"
+" Propiedades:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:692 ../src/utils/pactl.c:960 ../src/utils/pactl.c:1023
#, c-format
msgid "Failed to get source output information: %s"
msgstr "Falló al obtener información de salida de la fuente: %s"
-#: ../src/utils/pactl.c:693
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:721
+#, c-format
msgid ""
"Source Output #%u\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tClient: %s\n"
-"\tSource: %u\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tFormat: %s\n"
-"\tMute: %s\n"
-"\tVolume: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tBuffer Latency: %0.0f usec\n"
-"\tSource Latency: %0.0f usec\n"
-"\tResample method: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
-msgstr ""
-"Entrada del sumidero #%u\n"
-"\tControlador: %s\n"
-"\tMódulo dueño: %s\n"
-"\tCliente: %s\n"
-"\tSumidero: %u\n"
-"\tEspecificación de muestra: %s\n"
-"\tMapa de canales: %s\n"
-"\tMudo: %s\n"
-"\tVolumen: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tLatencia del búfer: %0.0f useg\n"
-"\tLatencia del sumidero: %0.0f useg\n"
-"\tMétodo de remuestreo: %s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:734
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Client: %s\n"
+" Source: %u\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Format: %s\n"
+" Corked: %s\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Buffer Latency: %0.0f usec\n"
+" Source Latency: %0.0f usec\n"
+" Resample method: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr ""
+"Salida de fuente #%u\n"
+" Controlador: %s\n"
+" Módulo propietario: %s\n"
+" Cliente: %s\n"
+" Fuente: %u\n"
+" Especificación de muestra: %s\n"
+" Mapa de canales: %s\n"
+" Formato: %s\n"
+" Pausado: %s\n"
+" Silencio: %s\n"
+" Volumen: %s\n"
+" balance %0.2f\n"
+" Latencia de búfer: %0.0f usec\n"
+" Latencia de la fuente: %0.0f usec\n"
+" Método de remuestreo: %s\n"
+" Propiedades:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:762
#, c-format
msgid "Failed to get sample information: %s"
msgstr "Falló al obtener información de la muestra: %s"
-#: ../src/utils/pactl.c:761
+#: ../src/utils/pactl.c:789
#, c-format
msgid ""
"Sample #%u\n"
-"\tName: %s\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tVolume: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tDuration: %0.1fs\n"
-"\tSize: %s\n"
-"\tLazy: %s\n"
-"\tFilename: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" Name: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Duration: %0.1fs\n"
+" Size: %s\n"
+" Lazy: %s\n"
+" Filename: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"Muestra #%u\n"
-"\tNombre: %s\n"
-"\tEspecificaciones de la muestra: %s\n"
-"\tMapa del canal: %s\n"
-"\tVolumen: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tDuración: %0.1fs\n"
-"\tTamaño: %s\n"
-"\tLazy: %s\n"
-"\tNombre del archivo: %s\n"
-"\tPropiedades:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:791 ../src/utils/pactl.c:801
+" Nombre: %s\n"
+" Especificación de muestra: %s\n"
+" Mapa de canales: %s\n"
+" Volumen: %s\n"
+" balance %0.2f\n"
+" Duración: %0.1fs\n"
+" Tamaño: %s\n"
+" Vago: %s\n"
+" Archivo: %s\n"
+" Propiedades:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:817 ../src/utils/pactl.c:827
#, c-format
msgid "Failure: %s"
msgstr "Falla: %s"
-#: ../src/utils/pactl.c:915
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:866
+#, c-format
+msgid "Failed to unload module: Module %s not loaded"
+msgstr "No se pudo descargar módulo: el módulo %s no está cargado"
+
+#: ../src/utils/pactl.c:884
+#, c-format
+msgid ""
+"Failed to set volume: You tried to set volumes for %d channels, whereas "
+"channel/s supported = %d\n"
+msgstr ""
+"No se pudo ajustar el volumen por no corresponder el número de canales: "
+"intentó ajustarlo para %d, pero %d es todo lo que se admite\n"
+
+#: ../src/utils/pactl.c:1050
+#, c-format
msgid "Failed to set format: invalid format string %s"
-msgstr "Error al intentar obtener información de la fuente: %s"
+msgstr "No se pudo ajustar el formato: la cadena de formato %s no es válida"
-#: ../src/utils/pactl.c:954
+#: ../src/utils/pactl.c:1093
#, c-format
msgid "Failed to upload sample: %s"
msgstr "Falló al subir muestra: %s"
-#: ../src/utils/pactl.c:971
+#: ../src/utils/pactl.c:1110
msgid "Premature end of file"
msgstr "Fin de archivo prematuro"
-#: ../src/utils/pactl.c:991
+#: ../src/utils/pactl.c:1130
msgid "new"
-msgstr ""
+msgstr "nuevo"
-#: ../src/utils/pactl.c:994
+#: ../src/utils/pactl.c:1133
msgid "change"
-msgstr ""
+msgstr "cambiar"
-#: ../src/utils/pactl.c:997
+#: ../src/utils/pactl.c:1136
msgid "remove"
-msgstr ""
+msgstr "eliminar"
-#: ../src/utils/pactl.c:1000 ../src/utils/pactl.c:1035
+#: ../src/utils/pactl.c:1139 ../src/utils/pactl.c:1174
msgid "unknown"
-msgstr ""
+msgstr "desconocido"
-#: ../src/utils/pactl.c:1008
+#: ../src/utils/pactl.c:1147
msgid "sink"
msgstr "destino"
-#: ../src/utils/pactl.c:1011
+#: ../src/utils/pactl.c:1150
msgid "source"
msgstr "fuente"
-#: ../src/utils/pactl.c:1014
+#: ../src/utils/pactl.c:1153
msgid "sink-input"
-msgstr ""
+msgstr "entrada-destino"
-#: ../src/utils/pactl.c:1017
-#, fuzzy
+#: ../src/utils/pactl.c:1156
msgid "source-output"
-msgstr "fuente"
+msgstr "salida-fuente"
-#: ../src/utils/pactl.c:1020
+#: ../src/utils/pactl.c:1159
msgid "module"
-msgstr ""
+msgstr "módulo"
-#: ../src/utils/pactl.c:1023
+#: ../src/utils/pactl.c:1162
msgid "client"
-msgstr ""
+msgstr "cliente"
-#: ../src/utils/pactl.c:1026
+#: ../src/utils/pactl.c:1165
msgid "sample-cache"
-msgstr ""
+msgstr "muestra-caché"
-#: ../src/utils/pactl.c:1029 ../src/utils/pactl.c:1032
-#, fuzzy
+#: ../src/utils/pactl.c:1168
msgid "server"
-msgstr "Servidor inválido"
+msgstr "servidor"
-#: ../src/utils/pactl.c:1041
+#: ../src/utils/pactl.c:1171
+msgid "card"
+msgstr "placa"
+
+#: ../src/utils/pactl.c:1180
#, c-format
msgid "Event '%s' on %s #%u\n"
-msgstr ""
+msgstr "Evento '%s' en %s #%u\n"
-#: ../src/utils/pactl.c:1258
+#: ../src/utils/pactl.c:1452
msgid "Got SIGINT, exiting."
msgstr "Hay un SIGINT, saliendo."
-#: ../src/utils/pactl.c:1285
+#: ../src/utils/pactl.c:1479
msgid "Invalid volume specification"
msgstr "Especificación de volumen inválida"
-#: ../src/utils/pactl.c:1308
+#: ../src/utils/pactl.c:1502
msgid "Volume outside permissible range.\n"
-msgstr ""
+msgstr "Volumen fuera de rango.\n"
-#: ../src/utils/pactl.c:1319 ../src/utils/pactl.c:1320
-#: ../src/utils/pactl.c:1321 ../src/utils/pactl.c:1322
-#: ../src/utils/pactl.c:1323 ../src/utils/pactl.c:1324
-#: ../src/utils/pactl.c:1325 ../src/utils/pactl.c:1326
-#: ../src/utils/pactl.c:1327 ../src/utils/pactl.c:1328
-#: ../src/utils/pactl.c:1329 ../src/utils/pactl.c:1330
-#: ../src/utils/pactl.c:1331 ../src/utils/pactl.c:1332
-#: ../src/utils/pactl.c:1333 ../src/utils/pactl.c:1334
-#: ../src/utils/pactl.c:1335 ../src/utils/pactl.c:1336
-#: ../src/utils/pactl.c:1337
+#: ../src/utils/pactl.c:1515
+msgid "Invalid number of volume specifications.\n"
+msgstr "El número de especificaciones de volumen no es válido.\n"
+
+#: ../src/utils/pactl.c:1527
+msgid "Inconsistent volume specification.\n"
+msgstr "Especificación de volumen inconsistente.\n"
+
+#: ../src/utils/pactl.c:1557 ../src/utils/pactl.c:1558
+#: ../src/utils/pactl.c:1559 ../src/utils/pactl.c:1560
+#: ../src/utils/pactl.c:1561 ../src/utils/pactl.c:1562
+#: ../src/utils/pactl.c:1563 ../src/utils/pactl.c:1564
+#: ../src/utils/pactl.c:1565 ../src/utils/pactl.c:1566
+#: ../src/utils/pactl.c:1567 ../src/utils/pactl.c:1568
+#: ../src/utils/pactl.c:1569 ../src/utils/pactl.c:1570
+#: ../src/utils/pactl.c:1571 ../src/utils/pactl.c:1572
+#: ../src/utils/pactl.c:1573 ../src/utils/pactl.c:1574
+#: ../src/utils/pactl.c:1575 ../src/utils/pactl.c:1576
+#: ../src/utils/pactl.c:1577
msgid "[options]"
-msgstr ""
+msgstr "[opciones]"
-#: ../src/utils/pactl.c:1321
+#: ../src/utils/pactl.c:1559
msgid "[TYPE]"
-msgstr ""
+msgstr "[TIPO]"
-#: ../src/utils/pactl.c:1323
+#: ../src/utils/pactl.c:1561
msgid "FILENAME [NAME]"
-msgstr ""
+msgstr "ARCHIVO [NOMBRE]"
-#: ../src/utils/pactl.c:1324
+#: ../src/utils/pactl.c:1562
msgid "NAME [SINK]"
-msgstr ""
-
-#: ../src/utils/pactl.c:1325
-msgid "NAME"
-msgstr ""
-
-#: ../src/utils/pactl.c:1326
-msgid "NAME [ARGS ...]"
-msgstr ""
-
-#: ../src/utils/pactl.c:1327
-msgid "#N"
-msgstr ""
-
-#: ../src/utils/pactl.c:1328
-msgid "#N SINK|SOURCE"
-msgstr ""
-
-#: ../src/utils/pactl.c:1329 ../src/utils/pactl.c:1334
-msgid "NAME|#N 1|0"
-msgstr ""
+msgstr "NOMBRE [DESTINO]"
-#: ../src/utils/pactl.c:1330
-msgid "CARD PROFILE"
-msgstr ""
+#: ../src/utils/pactl.c:1571
+msgid "NAME|#N VOLUME [VOLUME ...]"
+msgstr "NOMBRE|#N VOLUMEN [VOLUMEN ...]"
-#: ../src/utils/pactl.c:1331
-msgid "NAME|#N PORT"
-msgstr ""
+#: ../src/utils/pactl.c:1572
+msgid "#N VOLUME [VOLUME ...]"
+msgstr "#N VOLUMEN [VOLUMEN ...]"
-#: ../src/utils/pactl.c:1332
-msgid "NAME|#N VOLUME"
-msgstr ""
+#: ../src/utils/pactl.c:1573
+msgid "NAME|#N 1|0|toggle"
+msgstr "NOMBRE|#N 1|0|toggle"
-#: ../src/utils/pactl.c:1333
-msgid "#N VOLUME"
-msgstr ""
+#: ../src/utils/pactl.c:1574
+msgid "#N 1|0|toggle"
+msgstr "#N 1|0|toggle"
-#: ../src/utils/pactl.c:1335
-msgid "#N 1|0"
-msgstr ""
-
-#: ../src/utils/pactl.c:1336
+#: ../src/utils/pactl.c:1575
msgid "#N FORMATS"
+msgstr "#N FORMATOS"
+
+#: ../src/utils/pactl.c:1578
+#, c-format
+msgid ""
+"\n"
+"The special names @DEFAULT_SINK@, @DEFAULT_SOURCE@ and @DEFAULT_MONITOR@\n"
+"can be used to specify the default sink, source and monitor.\n"
msgstr ""
+"\n"
+"Se pueden usar los nombres especiales @DEFAULT_SINK@, @DEFAULT_SOURCE@ y\n"
+"@DEFAULT_MONITOR@ para indicar el destino, fuente y monitor predeterminados."
+"\n"
-#: ../src/utils/pactl.c:1339
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:1581
+#, c-format
msgid ""
"\n"
" -h, --help Show this help\n"
" --version Show version\n"
"\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
+" -s, --server=SERVER The name of the server to connect to\n"
" -n, --client-name=NAME How to call this client on the "
"server\n"
msgstr ""
-"%s [opciones] ... \n"
"\n"
" -h, --help Muestra esta ayuda\n"
" --version Muestra la versión\n"
-" -s, --server=SERVER El nombre del servidor con el que "
-"conectarse\n"
"\n"
+" -s, --server=SERVIDOR El nombre del servidor al que "
+"conectar\n"
+" -n, --client-name=NOMBRE Cómo llamar a este cliente\n"
-#: ../src/utils/pactl.c:1380
+#: ../src/utils/pactl.c:1622
#, c-format
-msgid ""
-"pactl %s\n"
+msgid "pactl %s\n"
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-msgstr ""
-"pactl %s\n"
+msgstr "pactl %s\n"
"Compilado con libpulse %s\n"
-"Linked con libpulse %s\n"
+"Enlazado con libpulse %s\n"
-#: ../src/utils/pactl.c:1439
+#: ../src/utils/pactl.c:1678
#, c-format
msgid "Specify nothing, or one of: %s"
-msgstr ""
+msgstr "No indique nada, o bien uno de: %s"
-#: ../src/utils/pactl.c:1449
+#: ../src/utils/pactl.c:1688
msgid "Please specify a sample file to load"
msgstr "Por favor, especifique un archivo de muestra a cargar"
-#: ../src/utils/pactl.c:1462
+#: ../src/utils/pactl.c:1701
msgid "Failed to open sound file."
msgstr "Error al intentar abrir el archivo de sonido."
-#: ../src/utils/pactl.c:1474
+#: ../src/utils/pactl.c:1713
msgid "Warning: Failed to determine sample specification from file."
msgstr ""
"Aviso: Falló al intentar determinar especificación de la muestra desde el "
"archivo."
-#: ../src/utils/pactl.c:1484
+#: ../src/utils/pactl.c:1723
msgid "You have to specify a sample name to play"
msgstr "Debe especificar un nombre de muestra para reproducir"
-#: ../src/utils/pactl.c:1496
+#: ../src/utils/pactl.c:1735
msgid "You have to specify a sample name to remove"
msgstr "Debe especificar un nombre de muestra a eliminar"
-#: ../src/utils/pactl.c:1505
+#: ../src/utils/pactl.c:1744
msgid "You have to specify a sink input index and a sink"
-msgstr "Debe especificar un índice para la entrada al sumidero y un sumidero"
+msgstr "Debe especificar un índice para la entrada al destino y un destino"
-#: ../src/utils/pactl.c:1515
+#: ../src/utils/pactl.c:1754
msgid "You have to specify a source output index and a source"
msgstr "Debe especificar un índice para las salida de la fuente y una fuente"
-#: ../src/utils/pactl.c:1530
+#: ../src/utils/pactl.c:1769
msgid "You have to specify a module name and arguments."
msgstr "Debe especificar un nombre de módulo y los argumentos."
-#: ../src/utils/pactl.c:1550
-msgid "You have to specify a module index"
-msgstr "Debe especificar un índice de módulo"
+#: ../src/utils/pactl.c:1789
+msgid "You have to specify a module index or name"
+msgstr "Debe indicar un nombre o índice de módulo"
-#: ../src/utils/pactl.c:1560
+#: ../src/utils/pactl.c:1802
msgid ""
"You may not specify more than one sink. You have to specify a boolean value."
msgstr ""
-"No puede especificar más de un sumidero. Tiene que especificar un valor "
+"No puede especificar más de un destino. Tiene que especificar un valor "
"booleano."
-#: ../src/utils/pactl.c:1573
+#: ../src/utils/pactl.c:1807 ../src/utils/pactl.c:1827
+msgid "Invalid suspend specification."
+msgstr "La especificación de suspensión no es válida."
+
+#: ../src/utils/pactl.c:1822
msgid ""
"You may not specify more than one source. You have to specify a boolean "
"value."
@@ -2367,89 +2880,187 @@ msgstr ""
"No puede especificar más de una fuente. Tiene que especificar un valor "
"booleano."
-#: ../src/utils/pactl.c:1585
+#: ../src/utils/pactl.c:1839
msgid "You have to specify a card name/index and a profile name"
msgstr "Debe especificar un nombre/índice de placa y un nombre de perfil"
-#: ../src/utils/pactl.c:1596
+#: ../src/utils/pactl.c:1850
msgid "You have to specify a sink name/index and a port name"
-msgstr "Debe especificar un nombre/índice de sumidero y un nombre de puerto"
+msgstr "Debe especificar un nombre/índice de destino y un nombre de puerto"
+
+#: ../src/utils/pactl.c:1861
+msgid "You have to specify a sink name"
+msgstr "Debe indicar un nombre de destino"
-#: ../src/utils/pactl.c:1607
+#: ../src/utils/pactl.c:1871
msgid "You have to specify a source name/index and a port name"
msgstr "Debe especificar un nombre/índice de fuente y un nombre de puerto"
-#: ../src/utils/pactl.c:1618
+#: ../src/utils/pactl.c:1882
+msgid "You have to specify a source name"
+msgstr "Debe indicar un nombre de fuente"
+
+#: ../src/utils/pactl.c:1892
msgid "You have to specify a sink name/index and a volume"
-msgstr "Debe especificar un nombre/índice de sumidero y el volumen"
+msgstr "Debe especificar un nombre/índice de destino y el volumen"
-#: ../src/utils/pactl.c:1631
+#: ../src/utils/pactl.c:1905
msgid "You have to specify a source name/index and a volume"
msgstr "Debe especificar un nombre/índice de fuente y un volumen"
-#: ../src/utils/pactl.c:1644
+#: ../src/utils/pactl.c:1918
msgid "You have to specify a sink input index and a volume"
-msgstr "Debe especificar un índice de sumidero y un volumen"
+msgstr "Debe especificar un índice de entrada del destino y un volumen"
-#: ../src/utils/pactl.c:1649
+#: ../src/utils/pactl.c:1923
msgid "Invalid sink input index"
-msgstr "Indice de entrada a sumidero inválido"
+msgstr "El índice de entrada al destino no es válido"
-#: ../src/utils/pactl.c:1660
-#, fuzzy
+#: ../src/utils/pactl.c:1934
msgid "You have to specify a source output index and a volume"
-msgstr "Debe especificar un índice para las salida de la fuente y una fuente"
+msgstr "Debe indicar un índice de salida y un volumen"
-#: ../src/utils/pactl.c:1665
-#, fuzzy
+#: ../src/utils/pactl.c:1939
msgid "Invalid source output index"
-msgstr "Indice de entrada a sumidero inválido"
+msgstr "El índice de salida de la fuente no es válido"
-#: ../src/utils/pactl.c:1677
+#: ../src/utils/pactl.c:1950
msgid "You have to specify a sink name/index and a mute boolean"
-msgstr "Debe especificar un nombre/índice de sumidero y un booleano para mudo"
+msgstr ""
+"Debe especificar un nombre/índice de destino y un booleano de silenciador"
-#: ../src/utils/pactl.c:1682 ../src/utils/pactl.c:1699
-#: ../src/utils/pactl.c:1721 ../src/utils/pactl.c:1742
-#, fuzzy
+#: ../src/utils/pactl.c:1955 ../src/utils/pactl.c:1970
+#: ../src/utils/pactl.c:1990 ../src/utils/pactl.c:2008
msgid "Invalid mute specification"
-msgstr "Especificación de muestra inválida"
+msgstr "La especificación de silencio no es válida"
-#: ../src/utils/pactl.c:1694
+#: ../src/utils/pactl.c:1965
msgid "You have to specify a source name/index and a mute boolean"
msgstr "Debe especificar un nombre/índice de fuente y un booleano para mudo"
-#: ../src/utils/pactl.c:1711
+#: ../src/utils/pactl.c:1980
msgid "You have to specify a sink input index and a mute boolean"
msgstr ""
-"Debe especificar un índice de entrada a sumidero y un booleano para mudo"
+"Debe especificar un índice de entrada a destino y un booleano de silenciador"
-#: ../src/utils/pactl.c:1716
+#: ../src/utils/pactl.c:1985
msgid "Invalid sink input index specification"
-msgstr "Especificación de índice de entrada a sumidero inválida"
+msgstr "La especificación de índice de entrada a destino no es válida"
-#: ../src/utils/pactl.c:1732
-#, fuzzy
+#: ../src/utils/pactl.c:1998
msgid "You have to specify a source output index and a mute boolean"
-msgstr "Debe especificar un nombre/índice de fuente y un booleano para mudo"
+msgstr "Debe especificar un índice de salida y un indicador de silencio"
-#: ../src/utils/pactl.c:1737
-#, fuzzy
+#: ../src/utils/pactl.c:2003
msgid "Invalid source output index specification"
-msgstr "Especificación de índice de entrada a sumidero inválida"
+msgstr "La especificación de índice de salida de la fuente no es válida"
-#: ../src/utils/pactl.c:1756
-#, fuzzy
+#: ../src/utils/pactl.c:2020
msgid ""
"You have to specify a sink index and a semicolon-separated list of supported "
"formats"
-msgstr "Debe especificar un nombre/índice de sumidero y un booleano para mudo"
+msgstr ""
+"Debe especificar un nombre/índice de destino y una lista de formatos "
+"admitidos separados por punto y coma"
-#: ../src/utils/pactl.c:1772
+#: ../src/utils/pactl.c:2032
+msgid ""
+"You have to specify a card name/index, a port name and a latency offset"
+msgstr ""
+"Debe indicar un nombre o índice de place, un nombre de puerto y un "
+"desplazamiento de latencia"
+
+#: ../src/utils/pactl.c:2039
+msgid "Could not parse latency offset"
+msgstr "No se pudo interpretar el desplazamiento de latencia"
+
+#: ../src/utils/pactl.c:2051
msgid "No valid command specified."
msgstr "No se ha especificado ningún comando válido."
-#: ../src/utils/pax11publish.c:61
+#: ../src/utils/pasuspender.c:79
+#, c-format
+msgid "fork(): %s\n"
+msgstr "fork(): %s\n"
+
+#: ../src/utils/pasuspender.c:92
+#, c-format
+msgid "execvp(): %s\n"
+msgstr "execvp(): %s\n"
+
+#: ../src/utils/pasuspender.c:111
+#, c-format
+msgid "Failure to resume: %s\n"
+msgstr "Error al continuar: %s\n"
+
+#: ../src/utils/pasuspender.c:145
+#, c-format
+msgid "Failure to suspend: %s\n"
+msgstr "Error al suspender: %s\n"
+
+#: ../src/utils/pasuspender.c:170
+#, c-format
+msgid "WARNING: Sound server is not local, not suspending.\n"
+msgstr "AVISO: El servidor de sonido no es local, no se suspende.\n"
+
+#: ../src/utils/pasuspender.c:183
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Error en la conexión: %s\n"
+
+#: ../src/utils/pasuspender.c:201
+#, c-format
+msgid "Got SIGINT, exiting.\n"
+msgstr "Hay SIGINT, saliendo.\n"
+
+#: ../src/utils/pasuspender.c:219
+#, c-format
+msgid "WARNING: Child process terminated by signal %u\n"
+msgstr "AVISO: El proceso niño terminado por la señal %u\n"
+
+#: ../src/utils/pasuspender.c:228
+#, c-format
+msgid ""
+"%s [options] ... \n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+"\n"
+msgstr ""
+"%s [opciones] ... \n"
+"\n"
+" -h, --help Muestra esta ayuda\n"
+" --version Muestra la versión\n"
+" -s, --server=SERVER El nombre del servidor con el que "
+"conectarse\n"
+"\n"
+
+#: ../src/utils/pasuspender.c:266
+#, c-format
+msgid "pasuspender %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr "pasuspender %s\n"
+"Compilado con libpulse %s\n"
+"Enlazado con libpulse %s\n"
+
+#: ../src/utils/pasuspender.c:295
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() falló.\n"
+
+#: ../src/utils/pasuspender.c:308
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() falló.\n"
+
+#: ../src/utils/pasuspender.c:320
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() falló.\n"
+
+#: ../src/utils/pax11publish.c:58
#, c-format
msgid ""
"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
@@ -2469,878 +3080,52 @@ msgstr ""
"del entorno local y el archivo de cookies.\n"
" -r Elimina todo dato de PulseAudio de un display X11\n"
-#: ../src/utils/pax11publish.c:94
+#: ../src/utils/pax11publish.c:91
#, c-format
msgid "Failed to parse command line.\n"
msgstr "Error al interpretar una línea de comando.\n"
-#: ../src/utils/pax11publish.c:113
+#: ../src/utils/pax11publish.c:110
#, c-format
msgid "Server: %s\n"
msgstr "Servidor: %s\n"
-#: ../src/utils/pax11publish.c:115
+#: ../src/utils/pax11publish.c:112
#, c-format
msgid "Source: %s\n"
msgstr "Fuente: %s\n"
-#: ../src/utils/pax11publish.c:117
+#: ../src/utils/pax11publish.c:114
#, c-format
msgid "Sink: %s\n"
msgstr "Destino: %s\n"
-#: ../src/utils/pax11publish.c:119
+#: ../src/utils/pax11publish.c:116
#, c-format
msgid "Cookie: %s\n"
msgstr "Cookie: %s\n"
-#: ../src/utils/pax11publish.c:137
+#: ../src/utils/pax11publish.c:134
#, c-format
msgid "Failed to parse cookie data\n"
msgstr "Error al intepretar datos de cookie\n"
-#: ../src/utils/pax11publish.c:142
+#: ../src/utils/pax11publish.c:139
#, c-format
msgid "Failed to save cookie data\n"
msgstr "Error al intentar guardar datos de cookie\n"
-#: ../src/utils/pax11publish.c:157
-#, c-format
-msgid "Failed to load client configuration file.\n"
-msgstr "Error al intentar cargar el archivo de configuración del cliente.\n"
-
-#: ../src/utils/pax11publish.c:162
-#, c-format
-msgid "Failed to read environment configuration data.\n"
-msgstr "Error al intentar leer datos de configuración de entorno.\n"
-
-#: ../src/utils/pax11publish.c:179
+#: ../src/utils/pax11publish.c:168
#, c-format
msgid "Failed to get FQDN.\n"
msgstr "Error al obtener FQDN.\n"
-#: ../src/utils/pax11publish.c:199
+#: ../src/utils/pax11publish.c:188
#, c-format
msgid "Failed to load cookie data\n"
msgstr "Error al cargar datos de cookie\n"
-#: ../src/utils/pax11publish.c:217
+#: ../src/utils/pax11publish.c:206
#, c-format
msgid "Not yet implemented.\n"
msgstr "Aún no se ha implementado.\n"
-
-#: ../src/utils/pacmd.c:66
-msgid "No PulseAudio daemon running, or not running as session daemon."
-msgstr ""
-"El demonio PulseAudio no está ejecutándose, o no se está ejecutando como un "
-"demonio de sesión."
-
-#: ../src/utils/pacmd.c:71
-#, c-format
-msgid "socket(PF_UNIX, SOCK_STREAM, 0): %s"
-msgstr "socket(PF_UNIX, SOCK_STREAM, 0): %s"
-
-#: ../src/utils/pacmd.c:88
-#, c-format
-msgid "connect(): %s"
-msgstr "connect(): %s"
-
-#: ../src/utils/pacmd.c:96
-msgid "Failed to kill PulseAudio daemon."
-msgstr "Error al intentar detener el demonio de PulseAudio."
-
-#: ../src/utils/pacmd.c:104
-msgid "Daemon not responding."
-msgstr "El demonio no responde."
-
-#: ../src/utils/pacmd.c:184
-#, c-format
-msgid "poll(): %s"
-msgstr "poll(): %s"
-
-#: ../src/utils/pacmd.c:195 ../src/utils/pacmd.c:215
-#, c-format
-msgid "read(): %s"
-msgstr "read(): %s"
-
-#: ../src/utils/pacmd.c:237 ../src/utils/pacmd.c:255
-#, c-format
-msgid "write(): %s"
-msgstr "write(): %s"
-
-#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:222
-msgid "Cannot access autospawn lock."
-msgstr "No se puede acceder al candado de autogeneración."
-
-#: ../src/modules/alsa/alsa-sink.c:560 ../src/modules/alsa/alsa-sink.c:726
-#, c-format
-msgid ""
-"ALSA woke us up to write new data to the device, but there was actually "
-"nothing to write!\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
-msgstr ""
-"ALSA nos despertó para escribir nuevos datos al dispositivo, ¡pero en "
-"realidad no hay nada para escribir!\n"
-"Probablemente sea un error en el controlador ALSA '%s'. Por favor, informe "
-"esto a los desarrolladores de ALSA.\n"
-"Nos despertaron con POLLOUT puesto -- sin embargo, una llamada a "
-"snd_pcm_avail() devolvió 0 u otro valor < min_avail."
-
-#: ../src/modules/alsa/alsa-source.c:519 ../src/modules/alsa/alsa-source.c:672
-#, c-format
-msgid ""
-"ALSA woke us up to read new data from the device, but there was actually "
-"nothing to read!\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
-msgstr ""
-"ALSA nos despertó para leer nuevos datos desde el dispositivo, ¡pero en "
-"realidad no hay nada para leer!\n"
-"Lo más probable es que sea un error del controlador ALSA '%s'. Por favor, "
-"informe esto a los desarrolladores de ALSA.\n"
-"Nos despertaron con POLLIN puesto -- sin embargo, una llamada a snd_pcm_avail"
-"() devolvió 0 u otro valor < min_avail."
-
-#: ../src/modules/alsa/module-alsa-card.c:167
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2796
-#: ../src/modules/alsa/alsa-mixer.c:3898
-msgid "Off"
-msgstr "Apagado"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2738
-msgid "High Fidelity Playback (A2DP)"
-msgstr "Reproducción de Alta Fidelidad (A2DP)"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2752
-msgid "High Fidelity Capture (A2DP)"
-msgstr "Captura de Alta Fidelidad (A2DP)"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2767
-msgid "Telephony Duplex (HSP/HFP)"
-msgstr "Telefonía Duplex (HSP/HFP)"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2781
-msgid "Handsfree Gateway"
-msgstr ""
-
-#: ../src/modules/reserve-wrap.c:151
-msgid "PulseAudio Sound Server"
-msgstr "Servidor de Sonido PulseAudio"
-
-#: ../src/modules/module-rygel-media-server.c:510
-#: ../src/modules/module-rygel-media-server.c:548
-#: ../src/modules/module-rygel-media-server.c:903
-msgid "Output Devices"
-msgstr "Dispositivos de salida"
-
-#: ../src/modules/module-rygel-media-server.c:511
-#: ../src/modules/module-rygel-media-server.c:549
-#: ../src/modules/module-rygel-media-server.c:904
-msgid "Input Devices"
-msgstr "Dispositivos de entrada"
-
-#: ../src/modules/module-rygel-media-server.c:1056
-msgid "Audio on @HOSTNAME@"
-msgstr "Audio en @HOSTNAME@"
-
-#: ../src/modules/alsa/alsa-mixer.c:2219
-msgid "Input"
-msgstr "Entrada"
-
-#: ../src/modules/alsa/alsa-mixer.c:2220
-msgid "Docking Station Input"
-msgstr "Estación dock de entrada"
-
-#: ../src/modules/alsa/alsa-mixer.c:2221
-#, fuzzy
-msgid "Docking Station Microphone"
-msgstr "Micrófono de la estación Dock"
-
-#: ../src/modules/alsa/alsa-mixer.c:2222
-#, fuzzy
-msgid "Docking Station Line In"
-msgstr "Estación dock de entrada"
-
-#: ../src/modules/alsa/alsa-mixer.c:2223 ../src/modules/alsa/alsa-mixer.c:2307
-msgid "Line In"
-msgstr "En línea"
-
-#: ../src/modules/alsa/alsa-mixer.c:2224 ../src/modules/alsa/alsa-mixer.c:2302
-msgid "Microphone"
-msgstr "Micrófono"
-
-#: ../src/modules/alsa/alsa-mixer.c:2225 ../src/modules/alsa/alsa-mixer.c:2303
-#, fuzzy
-msgid "Front Microphone"
-msgstr "Micrófono de la estación Dock"
-
-#: ../src/modules/alsa/alsa-mixer.c:2226 ../src/modules/alsa/alsa-mixer.c:2304
-#, fuzzy
-msgid "Rear Microphone"
-msgstr "Micrófono"
-
-#: ../src/modules/alsa/alsa-mixer.c:2227
-msgid "External Microphone"
-msgstr "Micrófono externo"
-
-#: ../src/modules/alsa/alsa-mixer.c:2228 ../src/modules/alsa/alsa-mixer.c:2306
-msgid "Internal Microphone"
-msgstr "Micrófono interno"
-
-#: ../src/modules/alsa/alsa-mixer.c:2229 ../src/modules/alsa/alsa-mixer.c:2308
-msgid "Radio"
-msgstr "Radio"
-
-#: ../src/modules/alsa/alsa-mixer.c:2230 ../src/modules/alsa/alsa-mixer.c:2309
-msgid "Video"
-msgstr "Vídeo"
-
-#: ../src/modules/alsa/alsa-mixer.c:2231
-msgid "Automatic Gain Control"
-msgstr "Control automático de ganancia"
-
-#: ../src/modules/alsa/alsa-mixer.c:2232
-msgid "No Automatic Gain Control"
-msgstr "Sin control automático de ganancia"
-
-#: ../src/modules/alsa/alsa-mixer.c:2233
-msgid "Boost"
-msgstr "Incremento de ganancia"
-
-#: ../src/modules/alsa/alsa-mixer.c:2234
-msgid "No Boost"
-msgstr "Sin incremento de ganancia"
-
-#: ../src/modules/alsa/alsa-mixer.c:2235
-msgid "Amplifier"
-msgstr "Amplificador"
-
-#: ../src/modules/alsa/alsa-mixer.c:2236
-msgid "No Amplifier"
-msgstr "Sin amplificador"
-
-#: ../src/modules/alsa/alsa-mixer.c:2237
-#, fuzzy
-msgid "Bass Boost"
-msgstr "Incremento de ganancia"
-
-#: ../src/modules/alsa/alsa-mixer.c:2238
-#, fuzzy
-msgid "No Bass Boost"
-msgstr "Sin incremento de ganancia"
-
-#: ../src/modules/alsa/alsa-mixer.c:2239
-msgid "Speaker"
-msgstr ""
-
-#: ../src/modules/alsa/alsa-mixer.c:2240 ../src/modules/alsa/alsa-mixer.c:2311
-msgid "Headphones"
-msgstr "Auriculares analógicos"
-
-#: ../src/modules/alsa/alsa-mixer.c:2301
-msgid "Analog Input"
-msgstr "Entrada analógica"
-
-#: ../src/modules/alsa/alsa-mixer.c:2305
-msgid "Dock Microphone"
-msgstr "Micrófono de la estación Dock"
-
-#: ../src/modules/alsa/alsa-mixer.c:2310
-msgid "Analog Output"
-msgstr "Salida analógica"
-
-#: ../src/modules/alsa/alsa-mixer.c:2312
-msgid "LFE on Separate Mono Output"
-msgstr "Salida analógica (LFE)"
-
-#: ../src/modules/alsa/alsa-mixer.c:2313
-#, fuzzy
-msgid "Line Out"
-msgstr "En línea"
-
-#: ../src/modules/alsa/alsa-mixer.c:2314
-msgid "Analog Mono Output"
-msgstr "Salida Mono analógica "
-
-#: ../src/modules/alsa/alsa-mixer.c:2315
-#, fuzzy
-msgid "Speakers"
-msgstr "Estéreo Analógico"
-
-#: ../src/modules/alsa/alsa-mixer.c:2316
-msgid "HDMI / DisplayPort"
-msgstr ""
-
-#: ../src/modules/alsa/alsa-mixer.c:2317
-#, fuzzy
-msgid "Digital Output (S/PDIF)"
-msgstr "Estéreo Digital (HDMI)"
-
-#: ../src/modules/alsa/alsa-mixer.c:2318
-#, fuzzy
-msgid "Digital Passthrough (S/PDIF)"
-msgstr "Estéreo Digital (HDMI)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3756
-msgid "Analog Mono"
-msgstr "Mono Analógico"
-
-#: ../src/modules/alsa/alsa-mixer.c:3757
-msgid "Analog Stereo"
-msgstr "Estéreo Analógico"
-
-#: ../src/modules/alsa/alsa-mixer.c:3758
-msgid "Analog Surround 2.1"
-msgstr "Análogico Envolvente 2.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3759
-msgid "Analog Surround 3.0"
-msgstr "Análogico Envolvente 3.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3760
-msgid "Analog Surround 3.1"
-msgstr "Análogico Envolvente 3.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3761
-msgid "Analog Surround 4.0"
-msgstr "Análogo Envolvente 4.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3762
-msgid "Analog Surround 4.1"
-msgstr "Análogo Envolvente 4.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3763
-msgid "Analog Surround 5.0"
-msgstr "Análogo Envolvente 5.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3764
-msgid "Analog Surround 5.1"
-msgstr "Análogo Envolvente 5.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3765
-msgid "Analog Surround 6.0"
-msgstr "Análogico Envolvente 6.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3766
-msgid "Analog Surround 6.1"
-msgstr "Análogico Envolvente 6.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3767
-msgid "Analog Surround 7.0"
-msgstr "Análogico Envolvente 7.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3768
-msgid "Analog Surround 7.1"
-msgstr "Análogo Envolvénte 7.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3769
-msgid "Digital Stereo (IEC958)"
-msgstr "Estéreo Digital (IEC958)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3770
-#, fuzzy
-msgid "Digital Passthrough (IEC958)"
-msgstr "Estéreo Digital (IEC958)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3771
-msgid "Digital Surround 4.0 (IEC958/AC3)"
-msgstr "Digital Envolvente 4.0 (IEC9588/AC3)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3772
-msgid "Digital Surround 5.1 (IEC958/AC3)"
-msgstr "Digital Envolvente 5.1 (IEC958/AC3)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3773
-msgid "Digital Stereo (HDMI)"
-msgstr "Estéreo Digital (HDMI)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3774
-#, fuzzy
-msgid "Digital Surround 5.1 (HDMI)"
-msgstr "Digital Envolvente 5.1 (IEC958/AC3)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3895
-msgid "Analog Mono Duplex"
-msgstr "Mono Analógico.Duplex"
-
-#: ../src/modules/alsa/alsa-mixer.c:3896
-msgid "Analog Stereo Duplex"
-msgstr "Estéreo Analógico.Duplex"
-
-#: ../src/modules/alsa/alsa-mixer.c:3897
-msgid "Digital Stereo Duplex (IEC958)"
-msgstr "Estéreo Digital Duplex(IEC958)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3997
-#, fuzzy, c-format
-msgid "%s Output"
-msgstr "Salida Nula"
-
-#: ../src/modules/alsa/alsa-mixer.c:4005
-#, fuzzy, c-format
-msgid "%s Input"
-msgstr "Entrada"
-
-#: ../src/modules/echo-cancel/module-echo-cancel.c:63
-msgid ""
-"source_name=<name for the source> source_properties=<properties for the "
-"source> source_master=<name of source to filter> sink_name=<name for the "
-"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
-"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
-"much drift to readjust after in ms> format=<sample format> rate=<sample "
-"rate> channels=<number of channels> channel_map=<channel map> "
-"aec_method=<implementation to use> aec_args=<parameters for the AEC engine> "
-"save_aec=<save AEC data in /tmp> autoloaded=<set if this module is being "
-"loaded automatically> use_volume_sharing=<yes or no> "
-msgstr ""
-
-#: ../src/modules/module-equalizer-sink.c:72
-msgid "General Purpose Equalizer"
-msgstr ""
-
-#: ../src/modules/module-equalizer-sink.c:76
-#, fuzzy
-msgid ""
-"sink_name=<name of the sink> sink_properties=<properties for the sink> "
-"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
-"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
-"this module is being loaded automatically> use_volume_sharing=<yes or no> "
-msgstr ""
-"sink_name=<nombre para el sumidero> sink_properties=<propiedades para el "
-"sumidero> master=<nombre del sumidero a filtrar> format=<formato de ejemplo> "
-"rate=<tasa de ejemplo> channels=<cantidad de canaless> channel_map=<mapeo de "
-"canales> plugin=<nombre del complemento ladspa> label=<etiqueta del "
-"complemento ladspa> control=<lista separada por comas de valores de control "
-"de entrada>"
-
-#: ../src/modules/module-filter-apply.c:48
-msgid "autoclean=<automatically unload unused filters?>"
-msgstr ""
-
-#: ../src/tests/resampler-test.c:257
-#, c-format
-msgid ""
-"%s [options]\n"
-"\n"
-"-h, --help Show this help\n"
-"-v, --verbose Print debug messages\n"
-" --from-rate=SAMPLERATE From sample rate in Hz (defaults to "
-"44100)\n"
-" --from-format=SAMPLEFORMAT From sample type (defaults to s16le)\n"
-" --from-channels=CHANNELS From number of channels (defaults to "
-"1)\n"
-" --to-rate=SAMPLERATE To sample rate in Hz (defaults to "
-"44100)\n"
-" --to-format=SAMPLEFORMAT To sample type (defaults to s16le)\n"
-" --to-channels=CHANNELS To number of channels (defaults to 1)\n"
-" --resample-method=METHOD Resample method (defaults to auto)\n"
-" --seconds=SECONDS From stream duration (defaults to 60)\n"
-"\n"
-"If the formats are not specified, the test performs all formats "
-"combinations,\n"
-"back and forth.\n"
-"\n"
-"Sample type must be one of s16le, s16be, u8, float32le, float32be, ulaw, "
-"alaw,\n"
-"32le, s32be (defaults to s16ne)\n"
-"\n"
-"See --dump-resample-methods for possible values of resample methods.\n"
-msgstr ""
-
-#: ../src/tests/resampler-test.c:356
-#, fuzzy, c-format
-msgid "%s %s\n"
-msgstr "%s %s"
-
-#: ../src/tests/resampler-test.c:419
-#, c-format
-msgid "=== %d seconds: %d Hz %d ch (%s) -> %d Hz %d ch (%s)"
-msgstr ""
-
-#~ msgid "[%s:%u] rlimit not supported on this platform."
-#~ msgstr "[%s:%u] Rlimit no soportado en esta plataforma."
-
-#~ msgid "XOpenDisplay() failed"
-#~ msgstr "XOpenDisplay() falló"
-
-#~ msgid ""
-#~ "Source Output #%u\n"
-#~ "\tDriver: %s\n"
-#~ "\tOwner Module: %s\n"
-#~ "\tClient: %s\n"
-#~ "\tSource: %u\n"
-#~ "\tSample Specification: %s\n"
-#~ "\tChannel Map: %s\n"
-#~ "\tBuffer Latency: %0.0f usec\n"
-#~ "\tSource Latency: %0.0f usec\n"
-#~ "\tResample method: %s\n"
-#~ "\tProperties:\n"
-#~ "\t\t%s\n"
-#~ msgstr ""
-#~ "Salida de la fuente #%u\n"
-#~ "\tControlador: %s\n"
-#~ "\tMódulo dueño: %s\n"
-#~ "\tCliente: %s\n"
-#~ "\tFuente: %u\n"
-#~ "\tEspecificación de muestra: %s\n"
-#~ "\tMapa del canal: %s\n"
-#~ "\tLatencia del búfer: %0.0f useg\n"
-#~ "\tLatencia de la fuente: %0.0f useg\n"
-#~ "\tMétodo de remuestreo: %s\n"
-#~ "\tPropiedades:\n"
-#~ "\t\t%s\n"
-
-#, fuzzy
-#~ msgid ""
-#~ "%s [options] stat\n"
-#~ "%s [options] list\n"
-#~ "%s [options] exit\n"
-#~ "%s [options] upload-sample FILENAME [NAME]\n"
-#~ "%s [options] play-sample NAME [SINK]\n"
-#~ "%s [options] remove-sample NAME\n"
-#~ "%s [options] move-sink-input SINKINPUT SINK\n"
-#~ "%s [options] move-source-output SOURCEOUTPUT SOURCE\n"
-#~ "%s [options] load-module NAME [ARGS ...]\n"
-#~ "%s [options] unload-module MODULE\n"
-#~ "%s [options] suspend-sink SINK 1|0\n"
-#~ "%s [options] suspend-source SOURCE 1|0\n"
-#~ "%s [options] set-card-profile CARD PROFILE\n"
-#~ "%s [options] set-sink-port SINK PORT\n"
-#~ "%s [options] set-source-port SOURCE PORT\n"
-#~ "%s [options] set-sink-volume SINK VOLUME\n"
-#~ "%s [options] set-source-volume SOURCE VOLUME\n"
-#~ "%s [options] set-sink-input-volume SINKINPUT VOLUME\n"
-#~ "%s [options] set-sink-mute SINK 1|0\n"
-#~ "%s [options] set-source-mute SOURCE 1|0\n"
-#~ "%s [options] set-sink-input-mute SINKINPUT 1|0\n"
-#~ "%s [options] subscribe\n"
-#~ "\n"
-#~ " -h, --help Show this help\n"
-#~ " --version Show version\n"
-#~ "\n"
-#~ " -s, --server=SERVER The name of the server to connect "
-#~ "to\n"
-#~ " -n, --client-name=NAME How to call this client on the "
-#~ "server\n"
-#~ msgstr ""
-#~ "%s [opciones] stat\n"
-#~ "%s [opciones] list\n"
-#~ "%s [opciones] exit\n"
-#~ "%s [opciones] upload-sample FILENAME [NAME]\n"
-#~ "%s [opciones] play-sample NAME [SINK]\n"
-#~ "%s [opciones] remove-sample NAME\n"
-#~ "%s [opciones] move-sink-input ID SINK\n"
-#~ "%s [opciones] move-source-output ID SOURCE\n"
-#~ "%s [opciones] load-module NAME [ARGS ...]\n"
-#~ "%s [opciones] unload-module ID\n"
-#~ "%s [opciones] suspend-sink [SINK] 1|0\n"
-#~ "%s [opciones] suspend-source [SOURCE] 1|0\n"
-#~ "%s [opciones] set-card-profile [CARD] [PROFILE] \n"
-#~ "%s [opciones] set-sink-port [SINK] [PORT] \n"
-#~ "%s [opciones] set-source-port [SOURCE] [PORT] \n"
-#~ "%s [opciones] set-sink-volume SINK VOLUME\n"
-#~ "%s [opciones] set-source-volume SOURCE VOLUME\n"
-#~ "%s [opciones] set-sink-input-volume SINKINPUT VOLUME\n"
-#~ "%s [opciones] set-sink-mute SINK 1|0\n"
-#~ "%s [opciones] set-source-mute SOURCE 1|0\n"
-#~ "%s [opciones] set-sink-input-mute SINKINPUT 1|0\n"
-#~ "\n"
-#~ " -h, --help Muestra esta ayuda\n"
-#~ " --version Muestra la versión\n"
-#~ "\n"
-#~ " -s, --server=SERVER El nombre del servidor al que "
-#~ "conectarse\n"
-#~ " -n, --client-name=NAME El nombre de este cliente en el "
-#~ "servidor\n"
-
-#~ msgid "%s+%s"
-#~ msgstr "%s+%s"
-
-#~ msgid "%s / %s"
-#~ msgstr "%s / %s"
-
-#~ msgid "Digital Surround 4.0 (IEC958)"
-#~ msgstr "Digital Envolvente 4.0 (IEC9588)"
-
-#~ msgid "Low Frequency Emmiter"
-#~ msgstr "Emisor de baja frecuencia"
-
-#~ msgid "Invalid client name '%s'\n"
-#~ msgstr "Nombre de cliente inválido '%s'\n"
-
-#~ msgid "Failed to determine sample specification from file.\n"
-#~ msgstr ""
-#~ "Error al intentar determinar especificación de ejemplo del archivo.\n"
-
-#~ msgid "select(): %s"
-#~ msgstr "select(): %s"
-
-#~ msgid "Cannot connect to system bus: %s"
-#~ msgstr "No se puede conectar al bus del sistema: %s"
-
-#~ msgid "Cannot get caller from PID: %s"
-#~ msgstr "No se puede obtener el llamador desde el PID: %s"
-
-#~ msgid "Cannot set UID on caller object."
-#~ msgstr "No se puede poner UID en el objeto llamador."
-
-#~ msgid "Failed to get CK session."
-#~ msgstr "Falló al obtener sesión CK."
-
-#~ msgid "Cannot set UID on session object."
-#~ msgstr "No se puede poner UID en el objeto de sesión."
-
-#~ msgid "Cannot allocate PolKitAction."
-#~ msgstr "No se puede asignar PolKitAction."
-
-#~ msgid "Cannot set action_id"
-#~ msgstr "No se pudo poner action_id"
-
-#~ msgid "Cannot allocate PolKitContext."
-#~ msgstr "No se pudo asignar PolKitContext."
-
-#~ msgid "Cannot initialize PolKitContext: %s"
-#~ msgstr "No se pudo inicializar PolKitContext: %s"
-
-#~ msgid "Could not determine whether caller is authorized: %s"
-#~ msgstr "No se pudo determinar si el llamador está autorizado: %s"
-
-#~ msgid "Cannot obtain auth: %s"
-#~ msgstr "No se pudo obtener auth: %s"
-
-#~ msgid "PolicyKit responded with '%s'"
-#~ msgstr "PolicyKit respondió con '%s'"
-
-#~ msgid ""
-#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
-#~ "daemon"
-#~ msgstr ""
-#~ "Planificación de alta prioridad (nivel Unix negativo) para el demonio "
-#~ "PulseAudio"
-
-#~ msgid "Real-time scheduling for the PulseAudio daemon"
-#~ msgstr "Planificación de tiempo real para el demonio de PulseAudio."
-
-#~ msgid ""
-#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
-#~ msgstr ""
-#~ "Las políticas del sistema impidieron a PulseAudio adquirir la "
-#~ "planificación de alta prioridad."
-
-#~ msgid ""
-#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
-#~ msgstr ""
-#~ "Las políticas del sistema impidieron a PulseAudio adquirir la "
-#~ "planificación de tiempo real."
-
-#~ msgid "read() failed: %s\n"
-#~ msgstr "read() falló: %s\n"
-
-#~ msgid "pa_context_connect() failed: %s\n"
-#~ msgstr "pa_context_connect() falló: %s\n"
-
-#~ msgid "We're in the group '%s', allowing high-priority scheduling."
-#~ msgstr ""
-#~ "Estamos en el grupo '%s', permitiendo planificación de prioridad alta."
-
-#~ msgid "We're in the group '%s', allowing real-time scheduling."
-#~ msgstr "Estamos en el grupo '%s', permitiendo planificación en tiempo real."
-
-#~ msgid "PolicyKit grants us acquire-high-priority privilege."
-#~ msgstr "PolicyKit garantiza que se obtenga el privilegio de alta prioridad."
-
-#~ msgid "PolicyKit refuses acquire-high-priority privilege."
-#~ msgstr "PolicyKit se niega a dar acceso al privilegio de alta prioridad."
-
-#~ msgid "PolicyKit grants us acquire-real-time privilege."
-#~ msgstr "PolicyKit garantiza el acceso al privilegio de tiempo real."
-
-#~ msgid "PolicyKit refuses acquire-real-time privilege."
-#~ msgstr "PolicyKit se niega a dar acceso al privilegio de tiempo real."
-
-#~ msgid ""
-#~ "Called SUID root and real-time and/or high-priority scheduling was "
-#~ "requested in the configuration. However, we lack the necessary "
-#~ "privileges:\n"
-#~ "We are not in group '%s', PolicyKit refuse to grant us the requested "
-#~ "privileges and we have no increase RLIMIT_NICE/RLIMIT_RTPRIO resource "
-#~ "limits.\n"
-#~ "For enabling real-time/high-priority scheduling please acquire the "
-#~ "appropriate PolicyKit privileges, or become a member of '%s', or increase "
-#~ "the RLIMIT_NICE/RLIMIT_RTPRIO resource limits for this user."
-#~ msgstr ""
-#~ "Se llamó con SUID root y se pidió planificación en tiempo real y/o de "
-#~ "alta prioridad en la configuración. Sin embargo, no se tiene los "
-#~ "privilegios necesarios:\n"
-#~ "No se está en el grupo '%s'. PolicyKit rechaza darnos el permiso "
-#~ "necesario y no se puede aumentar los límites del recurso RLIMIT_NICE/"
-#~ "RLIMIT_RTPRIO.\n"
-#~ "Para habilitar la planifiación de tiempo real/alta prioridad por favor "
-#~ "adquiera los privilegios apropiados en PolicyKit, o hágase miembro de "
-#~ "'%s', o aumente los límites del recurso RLIMIT_NICE/RLIMIT_RTPRIO para "
-#~ "este usuario."
-
-#~ msgid ""
-#~ "High-priority scheduling enabled in configuration but not allowed by "
-#~ "policy."
-#~ msgstr ""
-#~ "Está habilitadada la planificación de prioridad alta, pero no están "
-#~ "permitidas por la política."
-
-#~ msgid "Successfully increased RLIMIT_RTPRIO"
-#~ msgstr "RLIMIT_RTPRIO incrementado en forma exitosa"
-
-#~ msgid "RLIMIT_RTPRIO failed: %s"
-#~ msgstr "Fallo en RLIMIT_RTPRIO: %s"
-
-#~ msgid "Giving up CAP_NICE"
-#~ msgstr "Abandonando CAP_NICE"
-
-#~ msgid ""
-#~ "Real-time scheduling enabled in configuration but not allowed by policy."
-#~ msgstr ""
-#~ "Está habilitada la planificación en tiempo real, pero no está permitido "
-#~ "por la política."
-
-#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
-#~ msgstr "Capacidades limitadas con éxito para CAP_SYS_NICE-"
-
-#~ msgid "time_new() failed.\n"
-#~ msgstr "time_new() falló.\n"
-
-#~ msgid "Output %s + Input %s"
-#~ msgstr "Salida %s + Entrada %s"
-
-#~ msgid "Stream successfully created\n"
-#~ msgstr "Se ha creado el flujo exitosamente\n"
-
-#~ msgid "Stream errror: %s\n"
-#~ msgstr "Error de flujo: %s\n"
-
-#~ msgid "Connection established.\n"
-#~ msgstr "Conección establecida.\n"
-
-#~ msgid ""
-#~ "%s [options] [FILE]\n"
-#~ "\n"
-#~ " -h, --help Show this help\n"
-#~ " --version Show version\n"
-#~ "\n"
-#~ " -v, --verbose Enable verbose operation\n"
-#~ "\n"
-#~ " -s, --server=SERVER The name of the server to connect "
-#~ "to\n"
-#~ " -d, --device=DEVICE The name of the sink to connect "
-#~ "to\n"
-#~ " -n, --client-name=NAME How to call this client on the "
-#~ "server\n"
-#~ " --stream-name=NAME How to call this stream on the "
-#~ "server\n"
-#~ " --volume=VOLUME Specify the initial (linear) "
-#~ "volume in range 0...65536\n"
-#~ " --channel-map=CHANNELMAP Set the channel map to the use\n"
-#~ msgstr ""
-#~ "%s [options] [FILE]\n"
-#~ "\n"
-#~ " -h, --help Muestra esta ayuda\n"
-#~ " --version Muestra la versión\n"
-#~ "\n"
-#~ " -v, --verbose Habilita operación con "
-#~ "vocabulario más detallado\n"
-#~ "\n"
-#~ " -s, --server=SERVER El nombre del servidor al que "
-#~ "conectarse\n"
-#~ " -d, --device=DEVICE El nombre del destino al que "
-#~ "conectarse\n"
-#~ " -n, --client-name=NAME Cómo llamar a este cliente en el "
-#~ "servidor\n"
-#~ " --stream-name=NAME Cómo llamar a este flujo en el "
-#~ "servidor\n"
-#~ " --volume=VOLUME Especifica el volumen inicial "
-#~ "(linear)en el rango de 0...65536\n"
-#~ " --channel-map=CHANNELMAP Establece el mapa del canal para "
-#~ "el uso\n"
-
-#~ msgid ""
-#~ "paplay %s\n"
-#~ "Compiled with libpulse %s\n"
-#~ "Linked with libpulse %s\n"
-#~ msgstr ""
-#~ "paplay %s\n"
-#~ "Compilado con libpulse %s\n"
-#~ "Linked con libpulse %s\n"
-
-#~ msgid "Invalid channel map\n"
-#~ msgstr "Mapa de canal inválido\n"
-
-#~ msgid "Failed to open file '%s'\n"
-#~ msgstr "Error al intentar abrir el archivo '%s'\n"
-
-#~ msgid "Channel map doesn't match file.\n"
-#~ msgstr "El mapa del canal no se corresponde con el archivo.\n"
-
-#~ msgid "Using sample spec '%s'\n"
-#~ msgstr "Utilizando especificaciones de muestra '%s'\n"
-
-#, fuzzy
-#~ msgid ""
-#~ "Called SUID root and real-time and/or high-priority scheduling was "
-#~ "requested in the configuration. However, we lack the necessary "
-#~ "privileges:\n"
-#~ "We are not in group '"
-#~ msgstr ""
-#~ "En la configuración se ha pedido una llamada de SUID root y planificación "
-#~ "en tiempo real/de prioridad alta. Sin embargo, carecemos de los "
-#~ "provilegios necesarios:\n"
-#~ "No estamos en el grupo '"
-
-#, fuzzy
-#~ msgid "--log-time boolean argument"
-#~ msgstr "--disallow-exit argumento booleano"
-
-#~ msgid ""
-#~ "' and PolicyKit refuse to grant us priviliges. Dropping SUID again.\n"
-#~ "For enabling real-time scheduling please acquire the appropriate "
-#~ "PolicyKit priviliges, or become a member of '"
-#~ msgstr ""
-#~ "' y PolicyKit se niega a darnos privilegios. Abandonando SUID de nuevo.\n"
-#~ "Para permitir planificación en tiempo real, por favor adquiera los "
-#~ "privilegios de PolicyKit adecuados, o forme parte de '"
-
-#~ msgid ""
-#~ "', or increase the RLIMIT_NICE/RLIMIT_RTPRIO resource limits for this "
-#~ "user."
-#~ msgstr ""
-#~ "', o incremente los límites del recurso RLIMIT_NICE/RLIMIT_RTPRIO para "
-#~ "ese usuario. "
-
-#~ msgid "Default sink name (%s) does not exist in name register."
-#~ msgstr ""
-#~ "El nombre de destino por defecto (%s) no existe en el registro de nombres."
-
-#~ msgid "Buffer overrun, dropping incoming data\n"
-#~ msgstr "Búfer desbordado, abandonando datos entrantes\n"
-
-#~ msgid "pa_stream_drop() failed: %s\n"
-#~ msgstr "pa_stream_drop() falló: %s\n"
-
-#~ msgid "muted"
-#~ msgstr "mudo"
-
-#~ msgid ""
-#~ "*** Autoload Entry #%u ***\n"
-#~ "Name: %s\n"
-#~ "Type: %s\n"
-#~ "Module: %s\n"
-#~ "Argument: %s\n"
-#~ msgstr ""
-#~ "*** Entrada de Autoload #%u ***\n"
-#~ "Nombre: %s\n"
-#~ "Tipo: %s\n"
-#~ "Módulo: %s\n"
-#~ "Argumento: %s\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index d573724..27c2e51 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fr.gmo b/po/fr.gmo
index 8efaf25..ddaa665 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 2abbfb7..aa570fa 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -16,15 +16,16 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-10-06 16:57+0200\n"
+"PO-Revision-Date: 2020-07-06 08:27+0000\n"
+"Last-Translator: Jean-Baptiste Holcroft <jean-baptiste@holcroft.fr>\n"
+"Language-Team: French <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/fr/>\n"
+"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"PO-Revision-Date: 2017-05-10 04:42-0400\n"
-"Last-Translator: Edouard Duliege <edouard.duliege@gmail.com>\n"
-"Language-Team: French <fedora-trans-fr@redhat.com>\n"
-"Language: fr\n"
-"Plural-Forms: nplurals=2; plural=n>1;\n"
-"X-Generator: Zanata 3.9.6\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.1.1\n"
#: ../src/daemon/cmdline.c:111
#, c-format
@@ -219,17 +220,17 @@ msgid ""
"Invalid log target: use either 'syslog', 'journal','stderr' or 'auto' or a "
"valid file name 'file:<path>', 'newfile:<path>'."
msgstr ""
-"Cible du journal invalide : veuillez utiliser « syslog », "
-"« journal »,« stderr » ou « auto », ou un nom de fichier valide « file:"
-"<path> », « newfile:<path> »."
+"Cible du journal invalide : veuillez utiliser « syslog », « journal »,« "
+"stderr » ou « auto », ou un nom de fichier valide « file:<path> », « newfile:"
+"<path> »."
#: ../src/daemon/cmdline.c:327
msgid ""
"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
"name 'file:<path>', 'newfile:<path>'."
msgstr ""
-"Cible du journal invalide : veuillez utiliser « syslog »,« stderr » ou "
-"« auto », ou un nom de fichier valide « file:<path> », « newfile:<path> »."
+"Cible du journal invalide : veuillez utiliser « syslog »,« stderr » ou « "
+"auto », ou un nom de fichier valide « file:<path> », « newfile:<path> »."
#: ../src/daemon/cmdline.c:335
msgid "--log-time expects boolean argument"
@@ -444,7 +445,7 @@ msgstr "Mode système étendu non pris en charge sur cette plateforme."
#: ../src/daemon/main.c:484
msgid "Failed to parse command line."
-msgstr "Échec lors de l'analyse de la ligne de commande"
+msgstr "Échec lors de l'analyse de la ligne de commande."
#: ../src/daemon/main.c:523
msgid ""
@@ -493,23 +494,23 @@ msgstr ""
#: ../src/daemon/main.c:712
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
-"Le démon s'exécute en mode système, mais --disallow-exit n'est pas défini."
+"Le démon s'exécute en mode système, mais --disallow-exit n'est pas défini !"
#: ../src/daemon/main.c:715
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"Le démon s'exécute en mode système, mais --disallow-module-loading n'est pas "
-"défini."
+"défini !"
#: ../src/daemon/main.c:718
msgid "Running in system mode, forcibly disabling SHM mode!"
-msgstr "Le démon s'exécute en mode système, désactivation forcée du mode SHM."
+msgstr "Le démon s'exécute en mode système, désactivation forcée du mode SHM !"
#: ../src/daemon/main.c:723
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"Le démon s'exécute en mode système, désactivation forcée de la fermeture "
-"après délai d'inactivité."
+"après délai d'inactivité !"
#: ../src/daemon/main.c:756
msgid "Failed to acquire stdio."
@@ -571,7 +572,7 @@ msgstr "Échec de pa_core_new()."
#: ../src/daemon/main.c:1088
msgid "Failed to initialize daemon."
-msgstr "Échec lors de l'initialisation du démon"
+msgstr "Échec lors de l'initialisation du démon."
#: ../src/daemon/main.c:1093
msgid "Daemon startup without any loaded modules, refusing to work."
@@ -991,10 +992,10 @@ msgid ""
"automatically> use_volume_sharing=<yes or no> "
msgstr ""
"source_name=<nom de la source> source_properties=<propriétés de la source> "
-"source_master=<nom de la source à filtrer> sink_name=<nom de la "
-"destination> sink_properties=<propriétés de la destination> sink_master=<nom "
-"de la destination à filtrer> adjust_time=<fréquence de réajustement des taux "
-"dans s> adjust_threshold=<décalage à réajuster en ms> format=<format des "
+"source_master=<nom de la source à filtrer> sink_name=<nom de la destination> "
+"sink_properties=<propriétés de la destination> sink_master=<nom de la "
+"destination à filtrer> adjust_time=<fréquence de réajustement des taux dans "
+"s> adjust_threshold=<décalage à réajuster en ms> format=<format des "
"échantillons> rate=<taux d'échantillonnage> channels=<nombre de canaux> "
"channel_map=<plan des canaux> aec_method=<implémentation à utiliser> "
"aec_args=<paramètres du moteur AEC> save_aec=<enregistrer les données AEC "
@@ -1026,10 +1027,11 @@ msgid ""
"this module is being loaded automatically> use_volume_sharing=<yes or no> "
msgstr ""
"sink_name=<nom de la destination> sink_properties=<propriétés de la "
-"destination> sink_master=<destination à laquelle se connecter> format="
-"<format de l'échantillon> rate=<taux d'échantillonage> channels=<nombre de "
-"canaux> channel_map=<plan des canaux> autoloaded=<définir si ce module est "
-"chargé automatiquement> use_volume_sharing=<oui ou non>"
+"destination> sink_master=<destination à laquelle se connecter> "
+"format=<format de l'échantillon> rate=<taux d'échantillonage> "
+"channels=<nombre de canaux> channel_map=<plan des canaux> "
+"autoloaded=<définir si ce module est chargé automatiquement> "
+"use_volume_sharing=<oui ou non> "
#: ../src/modules/module-filter-apply.c:46
msgid "autoclean=<automatically unload unused filters?>"
@@ -1052,9 +1054,9 @@ msgstr ""
"sink_name=<nom de la destination> sink_properties=<propriétés de la "
"destination> master=<nom de la destination à filter> format=<format de "
"l'échantillon> rate=<taux d'échantillonnage> channels=<nombre de canaux> "
-"channel_map=<plan des canaux> plugin=<nom de l'extension ladspa> label="
-"<étiquette de l'extension ladspa> control=<liste des valeurs de contrôle de "
-"l'entrée séparées par des virgules>"
+"channel_map=<plan des canaux> plugin=<nom de l'extension ladspa> "
+"label=<étiquette de l'extension ladspa> control=<liste des valeurs de "
+"contrôle de l'entrée séparées par des virgules> "
#: ../src/modules/module-null-sink.c:47
msgid "Clocked NULL sink"
@@ -1402,8 +1404,8 @@ msgid ""
"over the native protocol. Don't do that.)"
msgstr ""
"XDG_RUNTIME_DIR (%s) ne nous appartient pas (uid %d), mais appartient à uid "
-"%d! (Ceci peut se produire si par exemple vous tentez de vous connecter à un "
-"PulseAudio non root en tant qu'utilisateur root sur le protocole natif. "
+"%d ! (Ceci peut se produire si par exemple vous tentez de vous connecter à "
+"un PulseAudio non root en tant qu'utilisateur root sur le protocole natif. "
"Veuillez ne pas faire cela.)"
#: ../src/pulsecore/core-util.h:93
@@ -2289,12 +2291,12 @@ msgid ""
"Client Index: %u\n"
"Tile Size: %zu\n"
msgstr ""
-"Chaîne du serveur : %s\n"
-"Version du protocole de bibliothèque : %u\n"
-"Version du protocole du serveur : %u\n"
-"Local : %s\n"
-"Index client : %u\n"
-"Tile Size: %zu\n"
+"Chaîne du serveur : %s\n"
+"Version du protocole de bibliothèque : %u\n"
+"Version du protocole du serveur : %u\n"
+"Local : %s\n"
+"Index client : %u\n"
+"Tile Size : %zu\n"
#: ../src/utils/pactl.c:206
#, c-format
@@ -3148,4 +3150,3 @@ msgstr "Échec lors du chargement des données du cookie\n"
#, c-format
msgid "Not yet implemented.\n"
msgstr "Pas encore implémenté.\n"
-
diff --git a/po/gl.gmo b/po/gl.gmo
index 0450c89..d278038 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gu.gmo b/po/gu.gmo
index 7541b3c..6d9f8f9 100644
--- a/po/gu.gmo
+++ b/po/gu.gmo
Binary files differ
diff --git a/po/he.gmo b/po/he.gmo
index e7321cb..49fbab8 100644
--- a/po/he.gmo
+++ b/po/he.gmo
Binary files differ
diff --git a/po/hi.gmo b/po/hi.gmo
index e10d251..9d155d2 100644
--- a/po/hi.gmo
+++ b/po/hi.gmo
Binary files differ
diff --git a/po/hr.gmo b/po/hr.gmo
index 063f296..be191ca 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index 746d740..b88daf4 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -8,17 +8,18 @@ msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-11-10 14:12+0100\n"
-"PO-Revision-Date: 2019-11-10 14:21+0100\n"
-"Last-Translator: gogo <trebelnik2@gmail.com>\n"
-"Language-Team: Croatian <hr@li.org>\n"
+"PO-Revision-Date: 2020-07-15 19:29+0000\n"
+"Last-Translator: Milo Ivir <mail@milotype.de>\n"
+"Language-Team: Croatian <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/hr/>\n"
"Language: hr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.1.1\n"
"X-Launchpad-Export-Date: 2017-04-20 21:04+0000\n"
-"X-Generator: Poedit 2.2.1\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
#: ../src/daemon/cmdline.c:113
#, c-format
@@ -186,9 +187,8 @@ msgid ""
"--log-level expects log level argument (either numeric in range 0..4 or one "
"of debug, info, notice, warn, error)."
msgstr ""
-"--log-level očekuje argument na razini zapisa (ili brojeve u rasponu 0..4 "
-"ili jedan od zapisa uklanjanja grešaka,informacija,bilješka,upozorenje,"
-"greška)"
+"--log-level očekuje argument na razini zapisa (numerički u rasponu od 0 do 4 "
+"ili jedan od sljedećih: debug, info, notice, warn, error)."
#: ../src/daemon/cmdline.c:277
msgid "--high-priority expects boolean argument"
@@ -449,8 +449,8 @@ msgid ""
"System mode refused for non-root user. Only starting the D-Bus server lookup "
"service."
msgstr ""
-"Način rada sustava je nedostupan za nekorijenske korinike. Samo pokreni D-"
-"Bus poslužitelja usluge pretraživanja."
+"Način rada sustava nedostupan je za neadministratorske korisnike. Pokreće se "
+"samo usluga pretraživanja D-Bus poslužitelja."
#: ../src/daemon/main.c:633
#, c-format
@@ -462,8 +462,8 @@ msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr ""
-"Ovaj program nije namijenjen za korijensko pokretanje (osim -- ako je "
-"određeno sustavom)"
+"Ovaj program nije namijenjen za pokretanje kao administrator (osim ako je "
+"određen --system)."
#: ../src/daemon/main.c:665
msgid "Root privileges required."
@@ -706,7 +706,7 @@ msgstr "Zvučnici"
#: ../src/modules/alsa/alsa-mixer.c:2541
msgid "HDMI / DisplayPort"
-msgstr "HDMI / DisplayPort"
+msgstr "HDMI / Ekranski priključak"
#: ../src/modules/alsa/alsa-mixer.c:2542
msgid "Digital Output (S/PDIF)"
@@ -2205,7 +2205,7 @@ msgstr "NAZIV SLIVNIKA|#N"
#: ../src/utils/pacmd.c:64 ../src/utils/pacmd.c:65
msgid "NAME FILENAME"
-msgstr "NAZIV NAZIV DATOTEKE"
+msgstr "NAZIV NAZIV-DATOTEKE"
#: ../src/utils/pacmd.c:66
msgid "PATHNAME"
@@ -2385,7 +2385,7 @@ msgstr ""
"Zadane specifikacije uzorka: %s\n"
"Zadano mapiranje kanala: %s\n"
"Zadani slivnik: %s\n"
-"Zadani izvor: %s\n"
+"Zadani izvor: %s\n"
"Kolačić: %04x:%04x\n"
#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:908 ../src/utils/pactl.c:986
diff --git a/po/hu.gmo b/po/hu.gmo
index ead5ff6..f0bccfa 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index d679622..52fa496 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,20 +8,22 @@
msgid ""
msgstr ""
"Project-Id-Version: PulseAudio master\n"
-"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/new\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/"
+"issues/new\n"
"POT-Creation-Date: 2016-08-23 02:28+0000\n"
-"PO-Revision-Date: 2016-08-23 12:10+0200\n"
-"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
-"Language-Team: Hungarian <openscope at googlegroups dot com>\n"
+"PO-Revision-Date: 2020-07-21 15:29+0000\n"
+"Last-Translator: Balázs Meskó <meskobalazs@mailbox.org>\n"
+"Language-Team: Hungarian <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/hu/>\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.1.1\n"
"X-Poedit-Language: Hungarian\n"
"X-Poedit-Country: HUNGARY\n"
"X-Poedit-SourceCharset: utf-8\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 1.2\n"
#: ../src/daemon/cmdline.c:113
#, c-format
@@ -567,7 +569,7 @@ msgstr "A „pa_pid_file_create()” függvényhívás meghiúsult."
#: ../src/daemon/main.c:1022
msgid "pa_core_new() failed."
-msgstr "A „pa_core_new()” függvényhívás meghiúsult: %s"
+msgstr "A pa_core_new() sikertelen."
#: ../src/daemon/main.c:1090
msgid "Failed to initialize daemon."
@@ -1091,7 +1093,7 @@ msgstr ""
"sink_master=<csatlakozás ezen nyelőhöz> format=<mintaformátum> "
"rate=<mintavételezési gyakoriság> channels=<csatornák száma> "
"channel_map=<csatornaleképzés> autoloaded=<beállítva, ha ez a modul "
-"automatikusan betöltődik> use_volume_sharing=<igen vagy nem>"
+"automatikusan betöltődik> use_volume_sharing=<igen vagy nem> "
#: ../src/modules/module-filter-apply.c:47
msgid "autoclean=<automatically unload unused filters?>"
@@ -1115,10 +1117,10 @@ msgstr ""
"master=<szűrendő nyelő neve> format=<mintaformátum> rate=<mintavételezési "
"gyakoriság> channels=<csatornák száma> channel_map=<csatornaleképzés> "
"plugin=<ladspa bővítmény neve> label=<ladspa bővítmény címkéje> "
-"control=<bemenetszabályzó értékek vesszővel elválasztott listája> "
+"control=<bemenetszabályzó értékek vesszővel elválasztott listája> "
"input_ladspaport_map=<bemeneti LADSPA portnevek vesszővel elválasztott "
"listája> output_ladspaport_map=<kimeneti LADSPA portnevek vesszővel "
-"elválasztott listája>"
+"elválasztott listája> "
#: ../src/modules/module-null-sink.c:47
msgid "Clocked NULL sink"
@@ -1554,7 +1556,7 @@ msgstr "Belső hiba"
#: ../src/pulse/error.c:49
msgid "Connection terminated"
-msgstr "A kapcsolat megszakadt."
+msgstr "A kapcsolat megszakadt"
#: ../src/pulse/error.c:50
msgid "Entity killed"
@@ -1566,7 +1568,7 @@ msgstr "Érvénytelen kiszolgáló"
#: ../src/pulse/error.c:52
msgid "Module initialization failed"
-msgstr "A modul előkészítése meghiúsult."
+msgstr "A modul előkészítése sikertelen"
#: ../src/pulse/error.c:53
msgid "Bad state"
@@ -1744,7 +1746,7 @@ msgstr ""
#: ../src/utils/pacat.c:409
msgid "not "
-msgstr "nem"
+msgstr "nem "
#: ../src/utils/pacat.c:416
#, c-format
@@ -2852,6 +2854,7 @@ msgstr ""
"\n"
" -h, --help Ezen súgó megjelenítése\n"
" --version Verziószám megjelenítése\n"
+"\n"
" -s, --server=KISZOLGÁLÓ Csatlakozás ehhez a kiszolgálóhoz\n"
" -n, --client-name=NÉV A kliens neve a kiszolgálón\n"
diff --git a/po/id.gmo b/po/id.gmo
index c887ecf..5a4dc1f 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/it.gmo b/po/it.gmo
index a4c9974..ffd45f8 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 33cece3..0d66a7c 100644
--- a/po/it.po
+++ b/po/it.po
@@ -12,15 +12,16 @@ msgstr ""
"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/"
"issues\n"
"POT-Creation-Date: 2019-09-17 03:33+0000\n"
-"PO-Revision-Date: 2019-09-19 09:56+0200\n"
+"PO-Revision-Date: 2020-09-08 09:29+0000\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n"
-"Language-Team: Italian <tp@lists.linux.it>\n"
+"Language-Team: Italian <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/it/>\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 2.2.3\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.2.2\n"
# mamma mia che impressione
#: src/daemon/cmdline.c:113
@@ -1986,13 +1987,13 @@ msgstr ""
" connesso\n"
" --fix-channels Recupera il numero di canali e la "
"mappa\n"
-" dei canali dal sink a cui lo "
-"stream \n"
+" dei canali dal sink a cui lo stream "
+"\n"
" sta per essere connesso\n"
" --no-remix Non esegue l'upmix o il downmix \n"
" dei canali\n"
-" --no-remap Mappa i canali per indice invece "
-"che \n"
+" --no-remap Mappa i canali per indice invece che "
+"\n"
" per nome\n"
" --latency=BYTE Richiede la latenza specificata in "
"byte\n"
@@ -2006,9 +2007,9 @@ msgstr ""
" richiesta specificato in msec\n"
" --property=PROPRIETÀ=VAL Imposta la proprietà al valore "
"specificato\n"
-" --raw Registra/riproduce dati PCM grezzi\n"
+" --raw Registra/Riproduce dati PCM grezzi\n"
" --passthrough Dati pass-through\n"
-" --file-format=FFORMAT Registra/riproduce dati PCM "
+" --file-format=FFORMAT Registra/Riproduce dati PCM "
"formattati\n"
" --list-file-formats Elenca i formati disponibili\n"
" --monitor-stream=INDICE Registra dall'input sink con INDICE\n"
@@ -2894,7 +2895,7 @@ msgstr "Volume"
#: src/utils/pactl.c:1587
msgid "NAME|#N 1|0|toggle"
-msgstr "NAME|#N 1|0|toggle"
+msgstr "NOME|#N 1|0|toggle"
#: src/utils/pactl.c:1588
msgid "#N 1|0|toggle"
diff --git a/po/ja.gmo b/po/ja.gmo
index a790bfc..f7ff9b1 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 75d8296..2b274b9 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -5,1391 +5,1756 @@
#
# Hyu_gabaru Ryu_ichi <hyu_gabaru@yahoo.co.jp>, 2009.
# Kiyoto Hashida <khashida@redhat.com>, 2009, 2012.
-#
+# Kenzo Moriguchi <kmoriguc@redhat.com>, 2016. #zanata
+# Ooyama Yosiyuki <qqke6wd9k@apricot.ocn.ne.jp>, 2016. #zanata
+# Wim Taymans <wim.taymans@gmail.com>, 2016. #zanata
msgid ""
msgstr ""
-"Project-Id-Version: ja\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-30 10:10+0000\n"
-"PO-Revision-Date: 2012-01-30 09:54+0000\n"
-"Last-Translator: Kiyoto Hashida <khashida@redhat.com>\n"
-"Language-Team: Japanese <jp@li.org>\n"
-"Language: ja\n"
+"POT-Creation-Date: 2015-10-06 16:57+0200\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
+"PO-Revision-Date: 2016-03-15 08:25+0000\n"
+"Last-Translator: Kenzo Moriguchi <kmoriguc@redhat.com>\n"
+"Language-Team: Japanese <jp@li.org>\n"
+"Language: ja\n"
+"X-Generator: Zanata 4.6.2\n"
"Plural-Forms: Plural-Forms: nplurals=1; plural=0;\n"
-"\n"
-#: ../src/modules/alsa/alsa-util.c:1136 ../src/modules/alsa/alsa-util.c:1204
+#: ../src/daemon/cmdline.c:111
#, c-format
msgid ""
-"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
-"ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"%s [options]\n"
+"\n"
+"COMMANDS:\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" --dump-conf Dump default configuration\n"
+" --dump-modules Dump list of available modules\n"
+" --dump-resample-methods Dump available resample methods\n"
+" --cleanup-shm Cleanup stale shared memory segments\n"
+" --start Start the daemon if it is not "
+"running\n"
+" -k --kill Kill a running daemon\n"
+" --check Check for a running daemon (only "
+"returns exit code)\n"
+"\n"
+"OPTIONS:\n"
+" --system[=BOOL] Run as system-wide instance\n"
+" -D, --daemonize[=BOOL] Daemonize after startup\n"
+" --fail[=BOOL] Quit when startup fails\n"
+" --high-priority[=BOOL] Try to set high nice level\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_NICE)\n"
+" --realtime[=BOOL] Try to enable realtime scheduling\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_RTPRIO)\n"
+" --disallow-module-loading[=BOOL] Disallow module user requested "
+"module\n"
+" loading/unloading after startup\n"
+" --disallow-exit[=BOOL] Disallow user requested exit\n"
+" --exit-idle-time=SECS Terminate the daemon when idle and "
+"this\n"
+" time passed\n"
+" --scache-idle-time=SECS Unload autoloaded samples when idle "
+"and\n"
+" this time passed\n"
+" --log-level[=LEVEL] Increase or set verbosity level\n"
+" -v --verbose Increase the verbosity level\n"
+" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
+" Specify the log target\n"
+" --log-meta[=BOOL] Include code location in log "
+"messages\n"
+" --log-time[=BOOL] Include timestamps in log messages\n"
+" --log-backtrace=FRAMES Include a backtrace in log messages\n"
+" -p, --dl-search-path=PATH Set the search path for dynamic "
+"shared\n"
+" objects (plugins)\n"
+" --resample-method=METHOD Use the specified resampling method\n"
+" (See --dump-resample-methods for\n"
+" possible values)\n"
+" --use-pid-file[=BOOL] Create a PID file\n"
+" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
+" platforms that support it.\n"
+" --disable-shm[=BOOL] Disable shared memory support.\n"
+"\n"
+"STARTUP SCRIPT:\n"
+" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
+"with\n"
+" the specified argument\n"
+" -F, --file=FILENAME Run the specified script\n"
+" -C Open a command line on the running "
+"TTY\n"
+" after startup\n"
+"\n"
+" -n Don't load default script file\n"
msgstr ""
-"snd_pcm_avail() は 例外的に大きな値を返しました: %lu バイト(%lu ms)。\n"
-"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報"
-"告を提出して下さい。"
+"%s [options]\n"
+"\n"
+"コマンド:\n"
+" -h, --help このヘルプの表示\n"
+" --version バージョンの表示\n"
+" --dump-conf デフォルト設定をダンプ\n"
+" --dump-modules 利用可能なモジュール一覧をダンプ\n"
+" --dump-resample-methods 利用可能なリサンプル方法をダンプ\n"
+" --cleanup-shm 古い共有メモリーセグメントをクリーンアップ\n"
+" --start デーモンが実行中でない場合、開始\n"
+" -k --kill 実行中のデーモンを強制終了\n"
+" --check 実行中のデーモンを確認 (終了コードのみを返す)\n"
+"\n"
+"オプション:\n"
+" --system[=BOOL] システムワイドのインスタンスとして実行\n"
+" -D, --daemonize[=BOOL] 起動後にデーモン化\n"
+" --fail[=BOOL] 起動に失敗したら終了\n"
+" --high-priority[=BOOL] nice レベルを高く設定\n"
+" (SUID 時に root で、または\n"
+" RLIMIT_NICE を昇格させた場合のみ使用可能)\n"
+" --realtime[=BOOL] リアルタイムのスケジューリングを有効化\n"
+" (SUID 時に root で、または\n"
+" RLIMIT_RTPRIO を昇格させた場合のみ使用可能)\n"
+" --disallow-module-loading[=BOOL] 起動後にユーザーがロードまたはアンロードを要求したモジュールを許可しない "
+"\n"
+" --disallow-exit[=BOOL] ユーザーが要求した終了を許可しない\n"
+" --exit-idle-time=SECS デーモンがアイドル状態でこの時間を経過した場合に終了\n"
+" --scache-idle-time=SECS "
+"アイドル状態でこの時間が経過した場合に自動ロードされたサンプルをアンロード\n"
+" --log-level[=LEVEL] 詳細レベルを上昇または設定\n"
+" -v --verbose Increase the verbosity level\n"
+" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
+" ログターゲットを指定\n"
+" --log-meta[=BOOL] ログメッセージにコードの場所を含める\n"
+" --log-time[=BOOL] ログメッセージにタイムスタンプを含める\n"
+" --log-backtrace=FRAMES ログメッセージにバックトレースを含める\n"
+" -p, --dl-search-path=PATH 動的共有オブジェクト (プラグイン) の検索パスを設定\n"
+" --resample-method=METHOD 指定されたリサンプル方法を使用\n"
+" (使用可能な値は、--dump-resample-methods "
+"を参照)\n"
+" --use-pid-file[=BOOL] PID ファイルを作成\n"
+" --no-cpu-limit[=BOOL] CPU "
+"ロードリミッターをサポートしているプラットホームにインストールしない\n"
+" --disable-shm[=BOOL] 共有メモリーサポートを無効化\n"
+"\n"
+"STARTUP SCRIPT:\n"
+" -L, --load=\"MODULE ARGUMENTS\" 指定された引数で指定されたプラグインモジュールをロード\n"
+" -F, --file=FILENAME 指定されたスクリプトを実行\n"
+" -C 起動後に実行中の TTY でコマンドラインを開く\n"
+" \n"
+" -n デフォルトのスクリプトファイルをロードしない \n"
-#: ../src/modules/alsa/alsa-util.c:1179
-#, c-format
+#: ../src/daemon/cmdline.c:243
+msgid "--daemonize expects boolean argument"
+msgstr "--daemonize はブーリアン引数を予期します"
+
+#: ../src/daemon/cmdline.c:251
+msgid "--fail expects boolean argument"
+msgstr "--fail はブーリアン引数を予期します。"
+
+#: ../src/daemon/cmdline.c:262
msgid ""
-"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s"
-"%lu ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
-msgstr ""
-"snd_pcm_delay() は 例外的に大きな値を返しました: %li バイト(%s%lu ms)。\n"
-"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報"
-"告を提出して下さい。"
+"--log-level expects log level argument (either numeric in range 0..4 or one "
+"of debug, info, notice, warn, error)."
+msgstr "--log-level はログレベル引数を予期します(数値幅0~4、又はデバグ、情報、注記、警告、エラーの中の1つ)"
-#: ../src/modules/alsa/alsa-util.c:1220
-#, c-format
+#: ../src/daemon/cmdline.c:274
+msgid "--high-priority expects boolean argument"
+msgstr "--high-priority は ブーリアン引数を予期します"
+
+#: ../src/daemon/cmdline.c:282
+msgid "--realtime expects boolean argument"
+msgstr "--realtime はブーリアン引数を予期します "
+
+#: ../src/daemon/cmdline.c:290
+msgid "--disallow-module-loading expects boolean argument"
+msgstr "--disallow-module-loading はブーリアン引数を予期します "
+
+#: ../src/daemon/cmdline.c:298
+msgid "--disallow-exit expects boolean argument"
+msgstr "--disallow-exit はブーリアン引数を予期します "
+
+#: ../src/daemon/cmdline.c:306
+msgid "--use-pid-file expects boolean argument"
+msgstr "--use-pid-file はブーリアン引数を予期します "
+
+#: ../src/daemon/cmdline.c:325
msgid ""
-"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
-"%lu.\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"Invalid log target: use either 'syslog', 'journal','stderr' or 'auto' or a "
+"valid file name 'file:<path>', 'newfile:<path>'."
msgstr ""
-"snd_pcm_avail_delay() がおかしな値を返しました: 遅延 %lu は有効な値 %lu 未満"
-"です。\n"
-"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報"
-"告を提出して下さい。"
+"無効なログターゲット: 'syslog'、'journal'、'stderr' または 'auto' を使用するか、有効なファイル名 'file:"
+"<path>', 'newfile:<path>' を使用してください。"
-#: ../src/modules/alsa/alsa-util.c:1263
-#, c-format
+#: ../src/daemon/cmdline.c:327
msgid ""
-"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
-"(%lu ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
+"name 'file:<path>', 'newfile:<path>'."
msgstr ""
-"snd_pcm_mmap_begin() は 例外的に大きな値を返しました: %lu バイト(%lu "
-"ms)。\n"
-"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報"
-"告を提出して下さい。"
+"無効なログターゲット: 'syslog'、'stderr' または 'auto' を使用するか、有効なファイル名 'file:<path>', "
+"'newfile:<path>' を使用してください。"
-#: ../src/modules/module-always-sink.c:38
-msgid "Always keeps at least one sink loaded even if it's a null one"
-msgstr ""
-"null である場合でも、常に最低でもシンクが1つロードされるように維持します"
+#: ../src/daemon/cmdline.c:335
+msgid "--log-time expects boolean argument"
+msgstr "--log-time ブーリアン引数を予期します "
-#: ../src/modules/module-always-sink.c:82
-msgid "Dummy Output"
-msgstr "ダミー出力"
+#: ../src/daemon/cmdline.c:343
+msgid "--log-meta expects boolean argument"
+msgstr "--log-meta ブーリアン引数を予期します "
-#: ../src/modules/module-ladspa-sink.c:48
-msgid "Virtual LADSPA sink"
-msgstr "仮想 LADSPA シンク"
+#: ../src/daemon/cmdline.c:363
+#, c-format
+msgid "Invalid resample method '%s'."
+msgstr "無効な再サンプル方法 '%s'"
+
+#: ../src/daemon/cmdline.c:370
+msgid "--system expects boolean argument"
+msgstr "--system はブーリアン引数を予期します"
+
+#: ../src/daemon/cmdline.c:378
+msgid "--no-cpu-limit expects boolean argument"
+msgstr "--no-cpu-limit はブーリアン引数を予期します"
+
+#: ../src/daemon/cmdline.c:386
+msgid "--disable-shm expects boolean argument"
+msgstr "--disable-shm はブーリアン引数を予期します"
-#: ../src/modules/module-ladspa-sink.c:52
+#: ../src/daemon/daemon-conf.c:258
+#, c-format
+msgid "[%s:%u] Invalid log target '%s'."
+msgstr "[%s:%u] 無効なログターゲット '%s'"
+
+#: ../src/daemon/daemon-conf.c:273
+#, c-format
+msgid "[%s:%u] Invalid log level '%s'."
+msgstr "[%s:%u] 無効なログレベル '%s'"
+
+#: ../src/daemon/daemon-conf.c:288
+#, c-format
+msgid "[%s:%u] Invalid resample method '%s'."
+msgstr "[%s:%u] 無効な再サンプル方法 '%s'"
+
+#: ../src/daemon/daemon-conf.c:310
+#, c-format
+msgid "[%s:%u] Invalid rlimit '%s'."
+msgstr "[%s:%u] 無効な rlimit '%s'"
+
+#: ../src/daemon/daemon-conf.c:330
+#, c-format
+msgid "[%s:%u] Invalid sample format '%s'."
+msgstr "[%s:%u] 無効なサンプル形式 '%s'"
+
+#: ../src/daemon/daemon-conf.c:347 ../src/daemon/daemon-conf.c:364
+#, c-format
+msgid "[%s:%u] Invalid sample rate '%s'."
+msgstr "[%s:%u] 無効なサンプルレート '%s'"
+
+#: ../src/daemon/daemon-conf.c:387
+#, c-format
+msgid "[%s:%u] Invalid sample channels '%s'."
+msgstr "[%s:%u] 無効なサンプルチャンネル '%s'"
+
+#: ../src/daemon/daemon-conf.c:404
+#, c-format
+msgid "[%s:%u] Invalid channel map '%s'."
+msgstr "[%s:%u] 無効なチャンネルマップ '%s'"
+
+#: ../src/daemon/daemon-conf.c:421
+#, c-format
+msgid "[%s:%u] Invalid number of fragments '%s'."
+msgstr "[%s:%u] 無効なフラグメントの数 '%s'"
+
+#: ../src/daemon/daemon-conf.c:438
+#, c-format
+msgid "[%s:%u] Invalid fragment size '%s'."
+msgstr "[%s:%u] 無効なフラグメントサイズ '%s'"
+
+#: ../src/daemon/daemon-conf.c:455
+#, c-format
+msgid "[%s:%u] Invalid nice level '%s'."
+msgstr "[%s:%u] 無効なナイスレベル '%s'"
+
+#: ../src/daemon/daemon-conf.c:498
+#, c-format
+msgid "[%s:%u] Invalid server type '%s'."
+msgstr "[%s:%u] 無効なサーバータイプ '%s'"
+
+#: ../src/daemon/daemon-conf.c:611
+#, c-format
+msgid "Failed to open configuration file: %s"
+msgstr "設定ファイルを開くのに失敗: %s"
+
+#: ../src/daemon/daemon-conf.c:627
msgid ""
-"sink_name=<name for the sink> sink_properties=<properties for the sink> "
-"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
-"channels=<number of channels> channel_map=<input channel map> plugin=<ladspa "
-"plugin name> label=<ladspa plugin label> control=<comma separated list of "
-"input control values> input_ladspaport_map=<comma separated list of input "
-"LADSPA port names> output_ladspaport_map=<comma separated list of output "
-"LADSPA port names> "
-msgstr ""
-"sink_name=<シンクの名前> sink_properties=<シンクのプロパティ> master=<フィル"
-"タするシンク名> format=<サンプル形式> rate=<サンプルレート> channels=<チャン"
-"ネル数> channel_map=<入力チャンネルマップ> plugin=<ladspa plugin の名前> "
-"label=<ladspa plugin のラベル> control=<コンマで隔離した入力制御値の一覧> "
-"input_ladspaport_map=<コンマで隔離した入力 LADSPA ポート番号の一覧> "
-"output_ladspaport_map=<コンマで隔離した出力 LADSPA ポート番号の一覧> "
-
-#: ../src/modules/module-null-sink.c:49
-msgid "Clocked NULL sink"
-msgstr "クロック付き NULL シンク"
+"The specified default channel map has a different number of channels than "
+"the specified default number of channels."
+msgstr "指定されたデフォルトのチャンネルマップは、指定されたデフォルトのチャンネル数とは異なるチャンネル数を持っています。"
-#: ../src/modules/module-null-sink.c:284
-msgid "Null Output"
-msgstr "Null 出力"
+#: ../src/daemon/daemon-conf.c:714
+#, c-format
+msgid "### Read from configuration file: %s ###\n"
+msgstr "### 設定ファイルから読み込み: %s ###\n"
-#: ../src/pulsecore/sink.c:3349
-msgid "Built-in Audio"
-msgstr "内部オーディオ"
+#: ../src/daemon/dumpmodules.c:57
+#, c-format
+msgid "Name: %s\n"
+msgstr "名前: %s\n"
-#: ../src/pulsecore/sink.c:3354
-msgid "Modem"
-msgstr "モデム"
+#: ../src/daemon/dumpmodules.c:60
+#, c-format
+msgid "No module information available\n"
+msgstr "モジュール情報が使用できません\n"
-#: ../src/daemon/ltdl-bind-now.c:127
+#: ../src/daemon/dumpmodules.c:63
+#, c-format
+msgid "Version: %s\n"
+msgstr "バージョン: %s\n"
+
+#: ../src/daemon/dumpmodules.c:65
+#, c-format
+msgid "Description: %s\n"
+msgstr "説明: %s\n"
+
+#: ../src/daemon/dumpmodules.c:67
+#, c-format
+msgid "Author: %s\n"
+msgstr "著者: %s\n"
+
+#: ../src/daemon/dumpmodules.c:69
+#, c-format
+msgid "Usage: %s\n"
+msgstr "使用法: %s\n"
+
+#: ../src/daemon/dumpmodules.c:70
+#, c-format
+msgid "Load Once: %s\n"
+msgstr "1度だけロード: %s\n"
+
+#: ../src/daemon/dumpmodules.c:72
+#, c-format
+msgid "DEPRECATION WARNING: %s\n"
+msgstr "破棄の警告: %s\n"
+
+#: ../src/daemon/dumpmodules.c:76
+#, c-format
+msgid "Path: %s\n"
+msgstr "パス: %s\n"
+
+#: ../src/daemon/ltdl-bind-now.c:75
+#, c-format
+msgid "Failed to open module %s: %s"
+msgstr "モジュール %s を開くのに失敗しました: %s"
+
+#: ../src/daemon/ltdl-bind-now.c:126
msgid "Failed to find original lt_dlopen loader."
msgstr "オリジナルの lt_dlopen ローダーを見つけるのに失敗しました。"
-#: ../src/daemon/ltdl-bind-now.c:132
+#: ../src/daemon/ltdl-bind-now.c:131
msgid "Failed to allocate new dl loader."
msgstr "新規の dl ローダーの割り当てに失敗しました。"
-#: ../src/daemon/ltdl-bind-now.c:145
+#: ../src/daemon/ltdl-bind-now.c:144
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader の追加に失敗しました。"
-#: ../src/daemon/main.c:139
-#, c-format
-msgid "Got signal %s."
-msgstr "信号 %s を得ました。"
-
-#: ../src/daemon/main.c:166
-msgid "Exiting."
-msgstr "終了しています。"
-
-#: ../src/daemon/main.c:184
+#: ../src/daemon/main.c:160
#, c-format
msgid "Failed to find user '%s'."
msgstr "ユーザー '%s' が見つかりませんでした。"
-#: ../src/daemon/main.c:189
+#: ../src/daemon/main.c:165
#, c-format
msgid "Failed to find group '%s'."
msgstr "グループ '%s' が見つかりませんでした。"
-#: ../src/daemon/main.c:193
-#, c-format
-msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
-msgstr "ユーザー '%s' (UID %lu) とグループ '%s' (GID %lu) を見つけました。"
-
-#: ../src/daemon/main.c:198
+#: ../src/daemon/main.c:174
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "ユーザー '%s' と グループ '%s' の GID が一致しません。"
-#: ../src/daemon/main.c:203
+#: ../src/daemon/main.c:179
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "ユーザー '%s' のホームディレクトリは '%s' ではありません。無視します。"
-#: ../src/daemon/main.c:206 ../src/daemon/main.c:211
+#: ../src/daemon/main.c:182 ../src/daemon/main.c:187
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' の作成に失敗しました: %s"
-#: ../src/daemon/main.c:218
+#: ../src/daemon/main.c:194
#, c-format
msgid "Failed to change group list: %s"
msgstr "グループ一覧の変更に失敗しました: %s"
-#: ../src/daemon/main.c:234
+#: ../src/daemon/main.c:210
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID の変更に失敗しました: %s"
-#: ../src/daemon/main.c:250
+#: ../src/daemon/main.c:226
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID の変更に失敗しました: %s"
-#: ../src/daemon/main.c:269
-msgid "Successfully dropped root privileges."
-msgstr "root の権限を正しく破棄しました。"
-
-#: ../src/daemon/main.c:277
+#: ../src/daemon/main.c:255
msgid "System wide mode unsupported on this platform."
msgstr "このプラットフォームではシステム全域のモードはサポートがありません。"
-#: ../src/daemon/main.c:295
-#, c-format
-msgid "setrlimit(%s, (%u, %u)) failed: %s"
-msgstr "setrlimit(%s, (%u, %u)) は失敗: %s "
-
-#: ../src/daemon/main.c:496
+#: ../src/daemon/main.c:484
msgid "Failed to parse command line."
msgstr "コマンドラインの構文解析に失敗しました。"
-#: ../src/daemon/main.c:529
+#: ../src/daemon/main.c:523
msgid ""
"System mode refused for non-root user. Only starting the D-Bus server lookup "
"service."
-msgstr ""
-"システムモードは非 root ユーザーを拒否しました。D-Bus サーバー照合サービスだ"
-"けを開始します。"
-
-#: ../src/daemon/main.c:611
-msgid "Daemon not running"
-msgstr "デーモンは稼働していません"
+msgstr "システムモードは非 root ユーザーを拒否しました。D-Bus サーバー照合サービスだけを開始します。"
-#: ../src/daemon/main.c:613
-#, c-format
-msgid "Daemon running as PID %u"
-msgstr "デーモンは PID %u として稼働していません"
-
-#: ../src/daemon/main.c:628
+#: ../src/daemon/main.c:622
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "デーモンのキルに失敗しました: %s"
-#: ../src/daemon/main.c:657
+#: ../src/daemon/main.c:651
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
-msgstr ""
-"このプログラムは root として実行されるように意図されていません(--system を "
-"指定していない限り)。"
+msgstr "このプログラムは root として実行されるように意図されていません(--system を 指定していない限り)。"
-#: ../src/daemon/main.c:660
+#: ../src/daemon/main.c:654
msgid "Root privileges required."
msgstr "Root の権限が必要です。"
-#: ../src/daemon/main.c:667
+#: ../src/daemon/main.c:661
msgid "--start not supported for system instances."
msgstr "--start はシステムインスタンスではサポートがありません。"
-#: ../src/daemon/main.c:707
+#: ../src/daemon/main.c:701
#, c-format
msgid "User-configured server at %s, refusing to start/autospawn."
msgstr "ユーザーが設定したサーバー %s は start/autospawn を拒否しています。"
-#: ../src/daemon/main.c:713
+#: ../src/daemon/main.c:707
#, c-format
msgid ""
"User-configured server at %s, which appears to be local. Probing deeper."
-msgstr ""
-"ユーザーが設定したサーバー %s はローカルにあるようです。さらに調査します。"
+msgstr "ユーザーが設定したサーバー %s はローカルにあるようです。さらに調査します。"
-#: ../src/daemon/main.c:718
+#: ../src/daemon/main.c:712
msgid "Running in system mode, but --disallow-exit not set!"
-msgstr ""
-"システムモードで実行中です、しかし --disallow-exit がセットされていません!"
+msgstr "システムモードで実行中です、しかし --disallow-exit がセットされていません!"
-#: ../src/daemon/main.c:721
+#: ../src/daemon/main.c:715
msgid "Running in system mode, but --disallow-module-loading not set!"
-msgstr ""
-"システムモードで実行中です、しかし --disallow-module-loading がセットされてい"
-"ません!"
+msgstr "システムモードで実行中です、しかし --disallow-module-loading がセットされていません!"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:718
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "システムモードで実行中です、強制的に SHM モードを無効にしています!"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:723
msgid "Running in system mode, forcibly disabling exit idle time!"
-msgstr ""
-"システムモードで実行中です、強制的に exit の遊び時間を無効にしています!"
+msgstr "システムモードで実行中です、強制的に exit の遊び時間を無効にしています!"
-#: ../src/daemon/main.c:757
+#: ../src/daemon/main.c:756
msgid "Failed to acquire stdio."
msgstr "stdio の取得に失敗しました。"
-#: ../src/daemon/main.c:763 ../src/daemon/main.c:828
+#: ../src/daemon/main.c:762 ../src/daemon/main.c:833
#, c-format
msgid "pipe() failed: %s"
msgstr "pipe() は失敗: %s"
-#: ../src/daemon/main.c:768 ../src/daemon/main.c:833
+#: ../src/daemon/main.c:767 ../src/daemon/main.c:838
#, c-format
msgid "fork() failed: %s"
msgstr "fork() は失敗: %s"
-#: ../src/daemon/main.c:783 ../src/daemon/main.c:848 ../src/utils/pacat.c:550
+#: ../src/daemon/main.c:782 ../src/daemon/main.c:853 ../src/utils/pacat.c:567
#, c-format
msgid "read() failed: %s"
msgstr "read() は失敗: %s"
-#: ../src/daemon/main.c:789
+#: ../src/daemon/main.c:788
msgid "Daemon startup failed."
msgstr "デーモン開始に失敗しました。"
-#: ../src/daemon/main.c:791
-msgid "Daemon startup successful."
-msgstr "デーモンが正常に開始しました。"
-
-#: ../src/daemon/main.c:816
+#: ../src/daemon/main.c:821
#, c-format
msgid "setsid() failed: %s"
msgstr "setsid() は失敗: %s"
-#: ../src/daemon/main.c:901
-#, c-format
-msgid "This is PulseAudio %s"
-msgstr "これは PulseAudio %s です。"
+#: ../src/daemon/main.c:948
+msgid "Failed to get machine ID"
+msgstr "マシン ID の取得に失敗"
-#: ../src/daemon/main.c:902
-#, c-format
-msgid "Compilation host: %s"
-msgstr "コンパイルホスト: %s"
+#: ../src/daemon/main.c:974
+msgid ""
+"OK, so you are running PA in system mode. Please note that you most likely "
+"shouldn't be doing that.\n"
+"If you do it nonetheless then it's your own fault if things don't work as "
+"expected.\n"
+"Please read http://www.freedesktop.org/wiki/Software/PulseAudio/"
+"Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system "
+"mode is usually a bad idea."
+msgstr ""
+"そうすると、ユーザーはシステムモードで PA を実行しているわけです。その場合、実際にはそうすべきでないことに注意して下さい。\n"
+"それでも実行するのでしたら、期待どおりに機能しなくても責任はユーザー自身にあります。\n"
+"システムモードの使用が通常は良くない方針であることの説明については、http://www.freedesktop.org/wiki/Software/"
+"PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/ をお読み下さい。"
-#: ../src/daemon/main.c:903 ../src/tests/resampler-test.c:418
-#, c-format
-msgid "Compilation CFLAGS: %s"
-msgstr "コンパイル CFLAGS: %s"
+#: ../src/daemon/main.c:991
+msgid "pa_pid_file_create() failed."
+msgstr "pa_pid_file_create() は失敗"
-#: ../src/daemon/main.c:906
-#, c-format
-msgid "Running on host: %s"
-msgstr "ホスト上で実行中: %s"
+#: ../src/daemon/main.c:1021
+msgid "pa_core_new() failed."
+msgstr "pa_core_new() は失敗"
-#: ../src/daemon/main.c:909
-#, c-format
-msgid "Found %u CPUs."
-msgstr "CPU を %u 個見つけました。"
+#: ../src/daemon/main.c:1088
+msgid "Failed to initialize daemon."
+msgstr "デーモンの初期化に失敗しました。"
-#: ../src/daemon/main.c:911
-#, c-format
-msgid "Page size is %lu bytes"
-msgstr "ページサイズは %lu バイトです"
+#: ../src/daemon/main.c:1093
+msgid "Daemon startup without any loaded modules, refusing to work."
+msgstr "デーモンはモジュールの読み込みなしで開始しており、動作を拒否しています。"
-#: ../src/daemon/main.c:914
-msgid "Compiled with Valgrind support: yes"
-msgstr "Valgrind サポートでのコンパイル: はい"
+#: ../src/daemon/pulseaudio.desktop.in.h:1
+msgid "PulseAudio Sound System"
+msgstr "PulseAudio サウンドシステム"
-#: ../src/daemon/main.c:916
-msgid "Compiled with Valgrind support: no"
-msgstr "Valgrind サポートでのコンパイル: いいえ"
+#: ../src/daemon/pulseaudio.desktop.in.h:2
+msgid "Start the PulseAudio Sound System"
+msgstr "PulseAudio サウンドシステムを開始"
-#: ../src/daemon/main.c:919
-#, c-format
-msgid "Running in valgrind mode: %s"
-msgstr "valgrind モードで実行中: %s"
+#: ../src/modules/alsa/alsa-mixer.c:2291
+msgid "Input"
+msgstr "入力"
-#: ../src/daemon/main.c:921
-#, c-format
-msgid "Running in VM: %s"
-msgstr "VM 上で実行中: %s"
+#: ../src/modules/alsa/alsa-mixer.c:2292
+msgid "Docking Station Input"
+msgstr "ドッキングステーション入力"
-#: ../src/daemon/main.c:924
-msgid "Optimized build: yes"
-msgstr "最適化したビルド: はい"
+#: ../src/modules/alsa/alsa-mixer.c:2293
+msgid "Docking Station Microphone"
+msgstr "ドッキングステーションマイクロフォン"
-#: ../src/daemon/main.c:926
-msgid "Optimized build: no"
-msgstr "最適化したビルド: いいえ"
+#: ../src/modules/alsa/alsa-mixer.c:2294
+msgid "Docking Station Line In"
+msgstr "ドッキングステーションライン入力"
-#: ../src/daemon/main.c:930
-msgid "NDEBUG defined, all asserts disabled."
-msgstr "NDEBUG は定義済みです。アサーションは全て無効です。"
+#: ../src/modules/alsa/alsa-mixer.c:2295 ../src/modules/alsa/alsa-mixer.c:2380
+msgid "Line In"
+msgstr "ラインイン"
-#: ../src/daemon/main.c:932
-msgid "FASTPATH defined, only fast path asserts disabled."
-msgstr "FASTPATH は定義済みです。ファストパスアサーションのみが無効です。"
+#: ../src/modules/alsa/alsa-mixer.c:2296 ../src/modules/alsa/alsa-mixer.c:2374
+#: ../src/modules/bluetooth/module-bluez4-device.c:2102
+#: ../src/modules/bluetooth/module-bluez5-device.c:1710
+msgid "Microphone"
+msgstr "マイクロフォン"
-#: ../src/daemon/main.c:934
-msgid "All asserts enabled."
-msgstr "アサーションは全て有効です。"
+#: ../src/modules/alsa/alsa-mixer.c:2297 ../src/modules/alsa/alsa-mixer.c:2375
+msgid "Front Microphone"
+msgstr "フロントマイクロフォン"
-#: ../src/daemon/main.c:938
-msgid "Failed to get machine ID"
-msgstr "マシン ID の取得に失敗"
+#: ../src/modules/alsa/alsa-mixer.c:2298 ../src/modules/alsa/alsa-mixer.c:2376
+msgid "Rear Microphone"
+msgstr "リアマイクロフォン"
-#: ../src/daemon/main.c:941
-#, c-format
-msgid "Machine ID is %s."
-msgstr "マシン ID は %s"
+#: ../src/modules/alsa/alsa-mixer.c:2299
+msgid "External Microphone"
+msgstr "外部マイクロフォン"
-#: ../src/daemon/main.c:945
-#, c-format
-msgid "Session ID is %s."
-msgstr "セッション ID は %s"
+#: ../src/modules/alsa/alsa-mixer.c:2300 ../src/modules/alsa/alsa-mixer.c:2378
+msgid "Internal Microphone"
+msgstr "内部マイクロフォン"
-#: ../src/daemon/main.c:951
-#, c-format
-msgid "Using runtime directory %s."
-msgstr "ランタイムディレクトリ %s を使用"
+#: ../src/modules/alsa/alsa-mixer.c:2301 ../src/modules/alsa/alsa-mixer.c:2381
+msgid "Radio"
+msgstr "ラジオ"
-#: ../src/daemon/main.c:956
-#, c-format
-msgid "Using state directory %s."
-msgstr "状態ディレクトリ %s を使用"
+#: ../src/modules/alsa/alsa-mixer.c:2302 ../src/modules/alsa/alsa-mixer.c:2382
+msgid "Video"
+msgstr "ビデオ"
-#: ../src/daemon/main.c:959
-#, c-format
-msgid "Using modules directory %s."
-msgstr "モジュールディレクトリ %s を使用"
+#: ../src/modules/alsa/alsa-mixer.c:2303
+msgid "Automatic Gain Control"
+msgstr "自動ゲイン制御"
-#: ../src/daemon/main.c:961
-#, c-format
-msgid "Running in system mode: %s"
-msgstr "システムモードで実行中: %s"
+#: ../src/modules/alsa/alsa-mixer.c:2304
+msgid "No Automatic Gain Control"
+msgstr "自動ゲイン制御なし"
-#: ../src/daemon/main.c:964
-msgid ""
-"OK, so you are running PA in system mode. Please note that you most likely "
-"shouldn't be doing that.\n"
-"If you do it nonetheless then it's your own fault if things don't work as "
-"expected.\n"
-"Please read http://www.freedesktop.org/wiki/Software/PulseAudio/"
-"Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system "
-"mode is usually a bad idea."
-msgstr ""
-"そうすると、ユーザーはシステムモードで PA を実行しているわけです。その場合、"
-"実際にはそうすべきでないことに注意して下さい。\n"
-"それでも実行するのでしたら、期待どおりに機能しなくても責任はユーザー自身にあ"
-"ります。\n"
-"システムモードの使用が通常は良くない方針であることの説明については、http://"
-"www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/"
-"WhatIsWrongWithSystemWide/ をお読み下さい。"
-
-#: ../src/daemon/main.c:981
-msgid "pa_pid_file_create() failed."
-msgstr "pa_pid_file_create() は失敗"
+#: ../src/modules/alsa/alsa-mixer.c:2305
+msgid "Boost"
+msgstr "ブースト"
-#: ../src/daemon/main.c:991
-msgid "Fresh high-resolution timers available! Bon appetit!"
-msgstr "最新の高解像度タイマーが使用できます! 楽しんで下さい!"
+#: ../src/modules/alsa/alsa-mixer.c:2306
+msgid "No Boost"
+msgstr "ブーストなし"
-#: ../src/daemon/main.c:993
-msgid ""
-"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
-"resolution timers enabled!"
-msgstr ""
-"あらあら、ユーザーのカーネルはダメですよ! 今日のシェフのお薦めは高解像度タイ"
-"マーが有効になっている Linux です!"
+#: ../src/modules/alsa/alsa-mixer.c:2307
+msgid "Amplifier"
+msgstr "アンプ"
-#: ../src/daemon/main.c:1011
-msgid "pa_core_new() failed."
-msgstr "pa_core_new() は失敗"
+#: ../src/modules/alsa/alsa-mixer.c:2308
+msgid "No Amplifier"
+msgstr "アンプなし"
-#: ../src/daemon/main.c:1087
-msgid "Failed to initialize daemon."
-msgstr "デーモンの初期化に失敗しました。"
+#: ../src/modules/alsa/alsa-mixer.c:2309
+msgid "Bass Boost"
+msgstr "低音ブースト"
-#: ../src/daemon/main.c:1092
-msgid "Daemon startup without any loaded modules, refusing to work."
-msgstr ""
-"デーモンはモジュールの読み込みなしで開始しており、動作を拒否しています。"
+#: ../src/modules/alsa/alsa-mixer.c:2310
+msgid "No Bass Boost"
+msgstr "低音ブーストなし"
-#: ../src/daemon/main.c:1130
-msgid "Daemon startup complete."
-msgstr "デーモンの開始が完了です。"
+#: ../src/modules/alsa/alsa-mixer.c:2311
+#: ../src/modules/bluetooth/module-bluez4-device.c:2107
+#: ../src/modules/bluetooth/module-bluez5-device.c:1717
+msgid "Speaker"
+msgstr "スピーカー"
-#: ../src/daemon/main.c:1136
-msgid "Daemon shutdown initiated."
-msgstr "デーモンのシャットダウンが始まりました。"
+#: ../src/modules/alsa/alsa-mixer.c:2312 ../src/modules/alsa/alsa-mixer.c:2384
+msgid "Headphones"
+msgstr "アナログヘッドフォン"
-#: ../src/daemon/main.c:1167
-msgid "Daemon terminated."
-msgstr "デーモンは取り消されました。"
+#: ../src/modules/alsa/alsa-mixer.c:2373
+msgid "Analog Input"
+msgstr "アナログ入力"
-#: ../src/daemon/cmdline.c:113
-#, c-format
-msgid ""
-"%s [options]\n"
-"\n"
-"COMMANDS:\n"
-" -h, --help Show this help\n"
-" --version Show version\n"
-" --dump-conf Dump default configuration\n"
-" --dump-modules Dump list of available modules\n"
-" --dump-resample-methods Dump available resample methods\n"
-" --cleanup-shm Cleanup stale shared memory "
-"segments\n"
-" --start Start the daemon if it is not "
-"running\n"
-" -k --kill Kill a running daemon\n"
-" --check Check for a running daemon (only "
-"returns exit code)\n"
-"\n"
-"OPTIONS:\n"
-" --system[=BOOL] Run as system-wide instance\n"
-" -D, --daemonize[=BOOL] Daemonize after startup\n"
-" --fail[=BOOL] Quit when startup fails\n"
-" --high-priority[=BOOL] Try to set high nice level\n"
-" (only available as root, when SUID "
-"or\n"
-" with elevated RLIMIT_NICE)\n"
-" --realtime[=BOOL] Try to enable realtime scheduling\n"
-" (only available as root, when SUID "
-"or\n"
-" with elevated RLIMIT_RTPRIO)\n"
-" --disallow-module-loading[=BOOL] Disallow module user requested "
-"module\n"
-" loading/unloading after startup\n"
-" --disallow-exit[=BOOL] Disallow user requested exit\n"
-" --exit-idle-time=SECS Terminate the daemon when idle and "
-"this\n"
-" time passed\n"
-" --scache-idle-time=SECS Unload autoloaded samples when idle "
-"and\n"
-" this time passed\n"
-" --log-level[=LEVEL] Increase or set verbosity level\n"
-" -v Increase the verbosity level\n"
-" --log-target={auto,syslog,stderr,file:PATH}\n"
-" Specify the log target\n"
-" --log-meta[=BOOL] Include code location in log "
-"messages\n"
-" --log-time[=BOOL] Include timestamps in log messages\n"
-" --log-backtrace=FRAMES Include a backtrace in log messages\n"
-" -p, --dl-search-path=PATH Set the search path for dynamic "
-"shared\n"
-" objects (plugins)\n"
-" --resample-method=METHOD Use the specified resampling method\n"
-" (See --dump-resample-methods for\n"
-" possible values)\n"
-" --use-pid-file[=BOOL] Create a PID file\n"
-" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
-" platforms that support it.\n"
-" --disable-shm[=BOOL] Disable shared memory support.\n"
-"\n"
-"STARTUP SCRIPT:\n"
-" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
-"with\n"
-" the specified argument\n"
-" -F, --file=FILENAME Run the specified script\n"
-" -C Open a command line on the running "
-"TTY\n"
-" after startup\n"
-"\n"
-" -n Don't load default script file\n"
-msgstr ""
-"%s [オプション]\n"
-"\n"
-"コマンド:\n"
-" -h, --help このヘルプを表示\n"
-" --version バージョンを表示\n"
-" --dump-conf デフォルト設定をダンプ\n"
-" --dump-modules 使用可能なモジュール一覧をダンプ\n"
-" --dump-resample-methods 使用可能な再サンプル方法をダンプ\n"
-" --cleanup-shm 古い共有メモリーセグメントをクリーン"
-"アップ \n"
-" --start 実行していない場合、デーモンを開始 \n"
-" -k --kill 実行中のデーモンをキル\n"
-" --check 実行中のデーモンをチェック (退出コー"
-"ドを返すのみ)\n"
-"\n"
-"オプション:\n"
-" --system[=BOOL] システム全域インスタンスとして実行\n"
-" -D, --daemonize[=BOOL] 開始後デーモン化\n"
-" --fail[=BOOL] 開始失敗なら終了\n"
-" --high-priority[=BOOL] 高度なナイスレベルの設定を試行\n"
-" (root としてのみ可能, SUID の時、\n"
-" 又は昇格した RLIMIT_NICE で)\n"
-" --realtime[=BOOL] リアルタイムスケジュールを有効にする"
-"試行\n"
-" (root としてのみ可能, SUID の時、\n"
-" 又は昇格した RLIMIT_RTPRIO で)\n"
-" --disallow-module-loading[=BOOL] 起動後のユーザー要求のモジュールの"
-"ロード/アンロードを許可しない\n"
-"\n"
-" --disallow-exit[=BOOL] ユーザー要求の退出を許可しない\n"
-" --exit-idle-time=SECS 遊休時と指定時間後にデーモンを終了\n"
-"\n"
-" --scache-idle-time=SECS 遊休時と指定時間後に自動ロードサンプ"
-"ルをアンロード \n"
-"\n"
-" --log-level[=LEVEL] 詳細レベルを上げるか、又はセット\n"
-" -v 詳細レベルを上げる\n"
-"--log-target={auto,syslog,stderr,file:PATH}\n"
-" ログターゲットを指定\n"
-"--log-meta[=BOOL] ログメッセージ内にコードの場所を含む \n"
-" --log-time[=BOOL] ログメッセージ内にタイムスタンプを含"
-"む\n"
-" --log-backtrace=FRAMES ログメッセージ内にバックトレースを含"
-"む\n"
-" -p, --dl-search-path=PATH 動的共有オブジェクト(plugins)用に検索"
-"パスをセット\n"
-"\n"
-" --resample-method=METHOD 指定した再サンプリング方法を使用\n"
-" (使用可能な値は --dump-resample-"
-"methods で\n"
-" 参照)\n"
-" --use-pid-file[=BOOL] PID ファイルを作成\n"
-" --no-cpu-limit[=BOOL] サポートしているプラットフォームで CPU\n"
-" ロードリミッターをインストールしない\n"
-" --disable-shm[=BOOL] 共有メモリーサポートを無効にする\n"
-"\n"
-"スタートアップスクリプト:\n"
-" -L, --load=\"MODULE ARGUMENTS\" 指定した引数で指定したプラグインモ"
-"ジュールをロード\n"
-"\n"
-" -F, --file=FILENAME 指定したスクリプトを実行\n"
-" -C スタートアップ後に実行中の TTY 上でコ"
-"マンドラインを開く\n"
-"\n"
-" -n デフォルトのスクリプトファイルをロー"
-"ドしない\n"
+#: ../src/modules/alsa/alsa-mixer.c:2377
+msgid "Dock Microphone"
+msgstr "ドッキングステーションマイクロフォン"
-#: ../src/daemon/cmdline.c:244
-msgid "--daemonize expects boolean argument"
-msgstr "--daemonize はブーリアン引数を予期します"
+#: ../src/modules/alsa/alsa-mixer.c:2379
+msgid "Headset Microphone"
+msgstr "ヘッドセットマイクロフォン"
-#: ../src/daemon/cmdline.c:251
-msgid "--fail expects boolean argument"
-msgstr "--fail はブーリアン引数を予期します。"
+#: ../src/modules/alsa/alsa-mixer.c:2383
+msgid "Analog Output"
+msgstr "アナログ出力"
-#: ../src/daemon/cmdline.c:261
-msgid ""
-"--log-level expects log level argument (either numeric in range 0..4 or one "
-"of debug, info, notice, warn, error)."
-msgstr ""
-"--log-level はログレベル引数を予期します(数値幅0~4、又はデバグ、情報、注"
-"記、警告、エラーの中の1つ)"
+#: ../src/modules/alsa/alsa-mixer.c:2385
+msgid "LFE on Separate Mono Output"
+msgstr "アナログ出力 (LFE)"
-#: ../src/daemon/cmdline.c:273
-msgid "--high-priority expects boolean argument"
-msgstr "--high-priority は ブーリアン引数を予期します"
+#: ../src/modules/alsa/alsa-mixer.c:2386
+msgid "Line Out"
+msgstr "ライン出力"
-#: ../src/daemon/cmdline.c:280
-msgid "--realtime expects boolean argument"
-msgstr "--realtime はブーリアン引数を予期します "
+#: ../src/modules/alsa/alsa-mixer.c:2387
+msgid "Analog Mono Output"
+msgstr "アナログモノ出力"
-#: ../src/daemon/cmdline.c:287
-msgid "--disallow-module-loading expects boolean argument"
-msgstr "--disallow-module-loading はブーリアン引数を予期します "
+#: ../src/modules/alsa/alsa-mixer.c:2388
+msgid "Speakers"
+msgstr "スピーカー"
-#: ../src/daemon/cmdline.c:294
-msgid "--disallow-exit expects boolean argument"
-msgstr "--disallow-exit はブーリアン引数を予期します "
+#: ../src/modules/alsa/alsa-mixer.c:2389
+msgid "HDMI / DisplayPort"
+msgstr "HDMI / DisplayPort"
-#: ../src/daemon/cmdline.c:301
-msgid "--use-pid-file expects boolean argument"
-msgstr "--use-pid-file はブーリアン引数を予期します "
+#: ../src/modules/alsa/alsa-mixer.c:2390
+msgid "Digital Output (S/PDIF)"
+msgstr "デジタル出力 (S/PDIF)"
-#: ../src/daemon/cmdline.c:318
-msgid ""
-"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
-"name 'file:<path>'."
-msgstr ""
-"無効なログターゲット: 'syslog' か、 'stderr' か、'auto' か、正しいファイル名 "
-"'file:<path>' を使用して下さい。"
+#: ../src/modules/alsa/alsa-mixer.c:2391
+msgid "Digital Input (S/PDIF)"
+msgstr "デジタル入力 (S/PDIF)"
-#: ../src/daemon/cmdline.c:325
-msgid "--log-time expects boolean argument"
-msgstr "--log-time ブーリアン引数を予期します "
+#: ../src/modules/alsa/alsa-mixer.c:2392
+msgid "Digital Passthrough (S/PDIF)"
+msgstr "デジタルパススルー (S/PDIF)"
-#: ../src/daemon/cmdline.c:332
-msgid "--log-meta expects boolean argument"
-msgstr "--log-meta ブーリアン引数を予期します "
+#: ../src/modules/alsa/alsa-mixer.c:3898
+msgid "Analog Mono"
+msgstr "アナログモノ"
-#: ../src/daemon/cmdline.c:351
-#, c-format
-msgid "Invalid resample method '%s'."
-msgstr "無効な再サンプル方法 '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:3899
+msgid "Analog Stereo"
+msgstr "アナログステレオ"
-#: ../src/daemon/cmdline.c:358
-msgid "--system expects boolean argument"
-msgstr "--system はブーリアン引数を予期します"
+#: ../src/modules/alsa/alsa-mixer.c:3900
+msgid "Multichannel"
+msgstr "マルチチャネル"
-#: ../src/daemon/cmdline.c:365
-msgid "--no-cpu-limit expects boolean argument"
-msgstr "--no-cpu-limit はブーリアン引数を予期します"
+#: ../src/modules/alsa/alsa-mixer.c:3901
+msgid "Analog Surround 2.1"
+msgstr "アナログサラウンド 2.1"
-#: ../src/daemon/cmdline.c:372
-msgid "--disable-shm expects boolean argument"
-msgstr "--disable-shm はブーリアン引数を予期します"
+#: ../src/modules/alsa/alsa-mixer.c:3902
+msgid "Analog Surround 3.0"
+msgstr "アナログサラウンド 3.0"
-#: ../src/daemon/dumpmodules.c:59
-#, c-format
-msgid "Name: %s\n"
-msgstr "名前: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3903
+msgid "Analog Surround 3.1"
+msgstr "アナログサラウンド 3.1"
-#: ../src/daemon/dumpmodules.c:62
-#, c-format
-msgid "No module information available\n"
-msgstr "モジュール情報が使用できません\n"
+#: ../src/modules/alsa/alsa-mixer.c:3904
+msgid "Analog Surround 4.0"
+msgstr "アナログサラウンド 4.0"
-#: ../src/daemon/dumpmodules.c:65
-#, c-format
-msgid "Version: %s\n"
-msgstr "バージョン: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3905
+msgid "Analog Surround 4.1"
+msgstr "アナログサラウンド 4.1"
-#: ../src/daemon/dumpmodules.c:67
-#, c-format
-msgid "Description: %s\n"
-msgstr "説明: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3906
+msgid "Analog Surround 5.0"
+msgstr "アナログサラウンド 5.0"
-#: ../src/daemon/dumpmodules.c:69
-#, c-format
-msgid "Author: %s\n"
-msgstr "著者: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3907
+msgid "Analog Surround 5.1"
+msgstr "アナログサラウンド 5.1"
-#: ../src/daemon/dumpmodules.c:71
-#, c-format
-msgid "Usage: %s\n"
-msgstr "使用法: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3908
+msgid "Analog Surround 6.0"
+msgstr "アナログサラウンド 6.0"
-#: ../src/daemon/dumpmodules.c:72
-#, c-format
-msgid "Load Once: %s\n"
-msgstr "1度だけロード: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3909
+msgid "Analog Surround 6.1"
+msgstr "アナログサラウンド 6.1"
-#: ../src/daemon/dumpmodules.c:74
-#, c-format
-msgid "DEPRECATION WARNING: %s\n"
-msgstr "破棄の警告: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3910
+msgid "Analog Surround 7.0"
+msgstr "アナログサラウンド 7.0"
-#: ../src/daemon/dumpmodules.c:78
-#, c-format
-msgid "Path: %s\n"
-msgstr "パス: %s\n"
+#: ../src/modules/alsa/alsa-mixer.c:3911
+msgid "Analog Surround 7.1"
+msgstr "アナログサラウンド 7.1"
-#: ../src/daemon/daemon-conf.c:275
-#, c-format
-msgid "[%s:%u] Invalid log target '%s'."
-msgstr "[%s:%u] 無効なログターゲット '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:3912
+msgid "Digital Stereo (IEC958)"
+msgstr "デジタルステレオ (IEC958)"
-#: ../src/daemon/daemon-conf.c:291
-#, c-format
-msgid "[%s:%u] Invalid log level '%s'."
-msgstr "[%s:%u] 無効なログレベル '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:3913
+msgid "Digital Passthrough (IEC958)"
+msgstr "デジタルパススルー (IEC958)"
-#: ../src/daemon/daemon-conf.c:307
-#, c-format
-msgid "[%s:%u] Invalid resample method '%s'."
-msgstr "[%s:%u] 無効な再サンプル方法 '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:3914
+msgid "Digital Surround 4.0 (IEC958/AC3)"
+msgstr "デジタルサラウンド 4.0 (IEC958/AC3)"
-#: ../src/daemon/daemon-conf.c:330
-#, c-format
-msgid "[%s:%u] Invalid rlimit '%s'."
-msgstr "[%s:%u] 無効な rlimit '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:3915
+msgid "Digital Surround 5.1 (IEC958/AC3)"
+msgstr "デジタルサラウンド 5.1 (IEC958/AC3)"
-#: ../src/daemon/daemon-conf.c:351
-#, c-format
-msgid "[%s:%u] Invalid sample format '%s'."
-msgstr "[%s:%u] 無効なサンプル形式 '%s'"
+#: ../src/modules/alsa/alsa-mixer.c:3916
+msgid "Digital Surround 5.1 (IEC958/DTS)"
+msgstr "デジタルサラウンド 5.1 (IEC958/DTS)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3917
+msgid "Digital Stereo (HDMI)"
+msgstr "デジタルステレオ (HDMI)"
+
+#: ../src/modules/alsa/alsa-mixer.c:3918
+msgid "Digital Surround 5.1 (HDMI)"
+msgstr "デジタルサラウンド 5.1 (HDMI)"
+
+#: ../src/modules/alsa/alsa-mixer.c:4049
+msgid "Analog Mono Duplex"
+msgstr "アナログモノデュプレックス"
-#: ../src/daemon/daemon-conf.c:370 ../src/daemon/daemon-conf.c:389
+#: ../src/modules/alsa/alsa-mixer.c:4050
+msgid "Analog Stereo Duplex"
+msgstr "アナログステレオデュプレックス"
+
+#: ../src/modules/alsa/alsa-mixer.c:4051
+msgid "Digital Stereo Duplex (IEC958)"
+msgstr "デジタルステレオデュプレックス (IEC958)"
+
+#: ../src/modules/alsa/alsa-mixer.c:4052
+#: ../src/modules/alsa/module-alsa-card.c:190
+#: ../src/modules/bluetooth/module-bluez4-device.c:2298
+#: ../src/modules/bluetooth/module-bluez5-device.c:1941
+msgid "Off"
+msgstr "オフ"
+
+#: ../src/modules/alsa/alsa-mixer.c:4151
#, c-format
-msgid "[%s:%u] Invalid sample rate '%s'."
-msgstr "[%s:%u] 無効なサンプルレート '%s'"
+msgid "%s Output"
+msgstr "%s 出力"
-#: ../src/daemon/daemon-conf.c:413
+#: ../src/modules/alsa/alsa-mixer.c:4159
#, c-format
-msgid "[%s:%u] Invalid sample channels '%s'."
-msgstr "[%s:%u] 無効なサンプルチャンネル '%s'"
+msgid "%s Input"
+msgstr "%s 入力"
-#: ../src/daemon/daemon-conf.c:431
+#: ../src/modules/alsa/alsa-sink.c:570 ../src/modules/alsa/alsa-sink.c:747
#, c-format
-msgid "[%s:%u] Invalid channel map '%s'."
-msgstr "[%s:%u] 無効なチャンネルマップ '%s'"
+msgid ""
+"ALSA woke us up to write new data to the device, but there was actually "
+"nothing to write!\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+"ALSA が新規のデータをデバイスに書き込むように催促しましたが、書き込むことがありません!\n"
+"これは多分、ALSA ドライバー '%s' 内のバグです。この問題を ALSA 開発者に 報告して下さい。\n"
+"POLLOUT セットで呼び起こされましたが、その結果としての snd_pcm_avail() は 0 又は他の値 < min_avail "
+"を返しました。"
-#: ../src/daemon/daemon-conf.c:449
+#: ../src/modules/alsa/alsa-source.c:529 ../src/modules/alsa/alsa-source.c:680
#, c-format
-msgid "[%s:%u] Invalid number of fragments '%s'."
-msgstr "[%s:%u] 無効なフラグメントの数 '%s'"
+msgid ""
+"ALSA woke us up to read new data from the device, but there was actually "
+"nothing to read!\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+"ALSA はデバイスから新規データを読み込むように催促しましたが、読み込むものがありません!\n"
+"これは多分、ALSA ドライバー'%s' 内のバグです。この問題を ALSA 開発者に報告して下さい。\n"
+"POLLIN セットで呼び起こされましたが、その結果としての snd_pcm_avail() は 0 又は他の値 < min_avail を返しました。"
-#: ../src/daemon/daemon-conf.c:467
+#: ../src/modules/alsa/alsa-util.c:1134 ../src/modules/alsa/alsa-util.c:1209
#, c-format
-msgid "[%s:%u] Invalid fragment size '%s'."
-msgstr "[%s:%u] 無効なフラグメントサイズ '%s'"
+msgid ""
+"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
+"ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_avail() は 例外的に大きな値を返しました: %lu バイト(%lu ms)。\n"
+"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報告を提出して下さい。"
-#: ../src/daemon/daemon-conf.c:485
+#: ../src/modules/alsa/alsa-util.c:1184
#, c-format
-msgid "[%s:%u] Invalid nice level '%s'."
-msgstr "[%s:%u] 無効なナイスレベル '%s'"
+msgid ""
+"snd_pcm_delay() returned a value that is exceptionally large: %li bytes "
+"(%s%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_delay() は 例外的に大きな値を返しました: %li バイト(%s%lu ms)。\n"
+"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報告を提出して下さい。"
-#: ../src/daemon/daemon-conf.c:528
+#: ../src/modules/alsa/alsa-util.c:1225
#, c-format
-msgid "[%s:%u] Invalid server type '%s'."
-msgstr "[%s:%u] 無効なサーバータイプ '%s'"
+msgid ""
+"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
+"%lu.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_avail_delay() がおかしな値を返しました: 遅延 %lu は有効な値 %lu 未満です。\n"
+"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報告を提出して下さい。"
-#: ../src/daemon/daemon-conf.c:641
+#: ../src/modules/alsa/alsa-util.c:1268
#, c-format
-msgid "Failed to open configuration file: %s"
-msgstr "設定ファイルを開くのに失敗: %s"
+msgid ""
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
+"(%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+"snd_pcm_mmap_begin() は 例外的に大きな値を返しました: %lu バイト(%lu ms)。\n"
+"これは多分、ALSA ドライバー '%s' 内のバグです。この問題は ALSA 開発者宛に報告を提出して下さい。"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2092
+#: ../src/modules/bluetooth/module-bluez5-device.c:1700
+msgid "Headset"
+msgstr "ヘッドセット"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2097
+#: ../src/modules/bluetooth/module-bluez5-device.c:1705
+msgid "Handsfree"
+msgstr "ハンズフリー"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2112
+#: ../src/modules/bluetooth/module-bluez5-device.c:1723
+msgid "Headphone"
+msgstr "ヘッドフォン"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2117
+#: ../src/modules/bluetooth/module-bluez5-device.c:1728
+msgid "Portable"
+msgstr "ポータブル"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2122
+#: ../src/modules/bluetooth/module-bluez5-device.c:1733
+msgid "Car"
+msgstr "車"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2127
+#: ../src/modules/bluetooth/module-bluez5-device.c:1738
+msgid "HiFi"
+msgstr "HiFi"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2132
+#: ../src/modules/bluetooth/module-bluez5-device.c:1743
+msgid "Phone"
+msgstr "電話"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2140
+#: ../src/modules/bluetooth/module-bluez5-device.c:1695
+#: ../src/modules/bluetooth/module-bluez5-device.c:1711
+#: ../src/modules/bluetooth/module-bluez5-device.c:1749
+msgid "Bluetooth Output"
+msgstr "Bluetooth 出力"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2143
+#: ../src/modules/bluetooth/module-bluez5-device.c:1694
+#: ../src/modules/bluetooth/module-bluez5-device.c:1716
+#: ../src/modules/bluetooth/module-bluez5-device.c:1722
+#: ../src/modules/bluetooth/module-bluez5-device.c:1748
+msgid "Bluetooth Input"
+msgstr "Bluetooth 入力"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2179
+msgid "High Fidelity Playback (A2DP)"
+msgstr "ハイファイ再生 (A2DP)"
-#: ../src/daemon/daemon-conf.c:657
+#: ../src/modules/bluetooth/module-bluez4-device.c:2190
+msgid "High Fidelity Capture (A2DP)"
+msgstr "ハイファイキャプチャ (A2DP)"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2201
+msgid "Telephony Duplex (HSP/HFP)"
+msgstr "テレフォニーデュプレックス (HSP/HFP)"
+
+#: ../src/modules/bluetooth/module-bluez4-device.c:2213
+msgid "Handsfree Gateway"
+msgstr "ハンズフリーゲートウェイ"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1786
+msgid "High Fidelity Playback (A2DP Sink)"
+msgstr "ハイファイ再生 (A2DP シンク)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1797
+msgid "High Fidelity Capture (A2DP Source)"
+msgstr "ハイファイキャプチャー (A2DP ソース)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1808
+msgid "Headset Head Unit (HSP/HFP)"
+msgstr "ヘッドセットヘッドユニット (HSP/HFP)"
+
+#: ../src/modules/bluetooth/module-bluez5-device.c:1820
+msgid "Headset Audio Gateway (HSP/HFP)"
+msgstr "ヘッドセットオーディオゲートウェイ (HSP/HFP)"
+
+#: ../src/modules/echo-cancel/module-echo-cancel.c:61
msgid ""
-"The specified default channel map has a different number of channels than "
-"the specified default number of channels."
+"source_name=<name for the source> source_properties=<properties for the "
+"source> source_master=<name of source to filter> sink_name=<name for the "
+"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
+"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
+"much drift to readjust after in ms> format=<sample format> rate=<sample "
+"rate> channels=<number of channels> channel_map=<channel map> aec_method="
+"<implementation to use> aec_args=<parameters for the AEC engine> save_aec="
+"<save AEC data in /tmp> autoloaded=<set if this module is being loaded "
+"automatically> use_volume_sharing=<yes or no> "
msgstr ""
-"指定されたデフォルトのチャンネルマップは、指定されたデフォルトのチャンネル数"
-"とは異なるチャンネル数を持っています。"
+"source_name=<ソースの名前> source_properties=<ソースのプロパティ> source_master="
+"<フィルタするソースの名前> sink_name=<シンクの名前> sink_properties=<シンクのプロパティ> sink_master="
+"<フィルタするシンクの名前> adjust_time=<レートを再調整する頻度(秒)> adjust_threshold="
+"<再調整するズレ幅の閾値(ミリ秒)> format=<サンプル形式> rate=<サンプルレート> channels=<チャンネル数> "
+"channel_map=<チャンネルマップ> aec_method=<使用する実装> aec_args=<AEC エンジンのパラメータ> "
+"save_aec=</tmp に AEC データを保存> autoloaded=<このモジュールが自動でロードされている場合にセット> "
+"use_volume_sharing=<yes 又は no> "
+
+#. add on profile
+#: ../src/modules/macosx/module-coreaudio-device.c:754
+msgid "On"
+msgstr "オン"
+
+#: ../src/modules/module-always-sink.c:36
+msgid "Always keeps at least one sink loaded even if it's a null one"
+msgstr "null である場合でも、常に最低でもシンクが1つロードされるように維持します"
-#: ../src/daemon/daemon-conf.c:743
-#, c-format
-msgid "### Read from configuration file: %s ###\n"
-msgstr "### 設定ファイルから読み込み: %s ###\n"
+#: ../src/modules/module-always-sink.c:80
+msgid "Dummy Output"
+msgstr "ダミー出力"
-#: ../src/daemon/caps.c:58
-msgid "Cleaning up privileges."
-msgstr "権限をクリーンアップ"
+#: ../src/modules/module-equalizer-sink.c:70
+msgid "General Purpose Equalizer"
+msgstr "多目的イコライザー"
-#: ../src/daemon/pulseaudio.desktop.in.h:1
-msgid "PulseAudio Sound System"
-msgstr "PulseAudio サウンドシステム"
+#: ../src/modules/module-equalizer-sink.c:74
+msgid ""
+"sink_name=<name of the sink> sink_properties=<properties for the sink> "
+"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
+"this module is being loaded automatically> use_volume_sharing=<yes or no> "
+msgstr ""
+"sink_name=<シンクの名前> sink_properties=<シンクのプロパティ> sink_master=<接続先のシンク> format="
+"<サンプル形式> rate=<サンプルレート> channels=<チャンネル数> channel_map=<チャンネルマップ> autoloaded="
+"<このモジュールが自動でロードされている場合にセット> use_volume_sharing=<yes 又は no> "
-#: ../src/daemon/pulseaudio.desktop.in.h:2
-msgid "Start the PulseAudio Sound System"
-msgstr "PulseAudio サウンドシステムを開始"
+#: ../src/modules/module-filter-apply.c:46
+msgid "autoclean=<automatically unload unused filters?>"
+msgstr "autoclean=<使っていないフィルターを自動でアンロードするかどうか>"
+
+#: ../src/modules/module-ladspa-sink.c:51
+msgid "Virtual LADSPA sink"
+msgstr "仮想 LADSPA シンク"
+
+#: ../src/modules/module-ladspa-sink.c:55
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<input channel map> plugin=<ladspa "
+"plugin name> label=<ladspa plugin label> control=<comma separated list of "
+"input control values> input_ladspaport_map=<comma separated list of input "
+"LADSPA port names> output_ladspaport_map=<comma separated list of output "
+"LADSPA port names> "
+msgstr ""
+"sink_name=<シンクの名前> sink_properties=<シンクのプロパティ> master=<フィルタするシンク名> format="
+"<サンプル形式> rate=<サンプルレート> channels=<チャンネル数> channel_map=<入力チャンネルマップ> plugin="
+"<ladspa plugin の名前> label=<ladspa plugin のラベル> control=<コンマで隔離した入力制御値の一覧> "
+"input_ladspaport_map=<コンマで隔離した入力 LADSPA ポート番号の一覧> output_ladspaport_map="
+"<コンマで隔離した出力 LADSPA ポート番号の一覧> "
-#: ../src/daemon/pulseaudio-kde.desktop.in.h:1
-msgid "PulseAudio Sound System KDE Routing Policy"
-msgstr "PulseAudio サウンドシステム KDE ルーティングポリシー"
+#: ../src/modules/module-null-sink.c:47
+msgid "Clocked NULL sink"
+msgstr "クロック付き NULL シンク"
-#: ../src/daemon/pulseaudio-kde.desktop.in.h:2
-msgid "Start the PulseAudio Sound System with KDE Routing Policy"
-msgstr "KDE ルーティングポリシーを有効にして PulseAudio サウンドシステムを開始"
+#: ../src/modules/module-null-sink.c:278
+msgid "Null Output"
+msgstr "Null 出力"
+
+#: ../src/modules/module-rygel-media-server.c:508
+#: ../src/modules/module-rygel-media-server.c:546
+#: ../src/modules/module-rygel-media-server.c:905
+msgid "Output Devices"
+msgstr "出力デバイス"
-#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:757
+#: ../src/modules/module-rygel-media-server.c:509
+#: ../src/modules/module-rygel-media-server.c:547
+#: ../src/modules/module-rygel-media-server.c:906
+msgid "Input Devices"
+msgstr "入力デバイス"
+
+#: ../src/modules/module-rygel-media-server.c:1063
+msgid "Audio on @HOSTNAME@"
+msgstr "@HOSTNAME@ 上のオーディオ"
+
+#. TODO: old tunnel put here the remote sink_name into stream name e.g. 'Null Output for lynxis@lazus'
+#. TODO: old tunnel put here the remote source_name into stream name e.g. 'Null Output for lynxis@lazus'
+#: ../src/modules/module-tunnel-sink-new.c:307
+#: ../src/modules/module-tunnel-source-new.c:305
+#, c-format
+msgid "Tunnel for %s@%s"
+msgstr "%s@%s のトンネル"
+
+#: ../src/modules/module-tunnel-sink-new.c:517
+#: ../src/modules/module-tunnel-source-new.c:516
+#, c-format
+msgid "Tunnel to %s/%s"
+msgstr "%s/%s へのトンネル"
+
+#: ../src/modules/module-virtual-surround-sink.c:47
+msgid "Virtual surround sink"
+msgstr "仮想サラウンドシンク"
+
+#: ../src/modules/module-virtual-surround-sink.c:51
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> use_volume_sharing="
+"<yes or no> force_flat_volume=<yes or no> hrir=/path/to/left_hrir.wav "
+msgstr ""
+"sink_name=<シンクの名前> sink_properties=<シンクのプロパティ> master=<フィルターするシンク名> format="
+"<サンプル形式> rate=<サンプルレート> channels=<チャンネル数> channel_map=<チャンネルマップ> "
+"use_volume_sharing=<はい または いいえ> force_flat_volume=<はい または いいえ> hrir=/path/to/"
+"left_hrir.wav "
+
+#: ../src/modules/reserve-wrap.c:149
+msgid "PulseAudio Sound Server"
+msgstr "PulseAudio サウンドサーバー"
+
+#: ../src/pulse/channelmap.c:103 ../src/pulse/channelmap.c:758
msgid "Mono"
msgstr "モノ"
-#: ../src/pulse/channelmap.c:107
+#: ../src/pulse/channelmap.c:105
msgid "Front Center"
msgstr "中央前"
-#: ../src/pulse/channelmap.c:108
+#: ../src/pulse/channelmap.c:106
msgid "Front Left"
msgstr "左前"
-#: ../src/pulse/channelmap.c:109
+#: ../src/pulse/channelmap.c:107
msgid "Front Right"
msgstr "右前"
-#: ../src/pulse/channelmap.c:111
+#: ../src/pulse/channelmap.c:109
msgid "Rear Center"
msgstr "中央後ろ"
-#: ../src/pulse/channelmap.c:112
+#: ../src/pulse/channelmap.c:110
msgid "Rear Left"
msgstr "左後ろ"
-#: ../src/pulse/channelmap.c:113
+#: ../src/pulse/channelmap.c:111
msgid "Rear Right"
msgstr "右後ろ"
-#: ../src/pulse/channelmap.c:115
+#: ../src/pulse/channelmap.c:113
msgid "Subwoofer"
msgstr "サブウーファー"
-#: ../src/pulse/channelmap.c:117
+#: ../src/pulse/channelmap.c:115
msgid "Front Left-of-center"
msgstr "中央の左前"
-#: ../src/pulse/channelmap.c:118
+#: ../src/pulse/channelmap.c:116
msgid "Front Right-of-center"
msgstr "中央の右前"
-#: ../src/pulse/channelmap.c:120
+#: ../src/pulse/channelmap.c:118
msgid "Side Left"
msgstr "左側"
-#: ../src/pulse/channelmap.c:121
+#: ../src/pulse/channelmap.c:119
msgid "Side Right"
msgstr "右側"
-#: ../src/pulse/channelmap.c:123
+#: ../src/pulse/channelmap.c:121
msgid "Auxiliary 0"
msgstr "補助 0"
-#: ../src/pulse/channelmap.c:124
+#: ../src/pulse/channelmap.c:122
msgid "Auxiliary 1"
msgstr "補助 1"
-#: ../src/pulse/channelmap.c:125
+#: ../src/pulse/channelmap.c:123
msgid "Auxiliary 2"
msgstr "補助 2"
-#: ../src/pulse/channelmap.c:126
+#: ../src/pulse/channelmap.c:124
msgid "Auxiliary 3"
msgstr "補助 3"
-#: ../src/pulse/channelmap.c:127
+#: ../src/pulse/channelmap.c:125
msgid "Auxiliary 4"
msgstr "補助 4"
-#: ../src/pulse/channelmap.c:128
+#: ../src/pulse/channelmap.c:126
msgid "Auxiliary 5"
msgstr "補助 5"
-#: ../src/pulse/channelmap.c:129
+#: ../src/pulse/channelmap.c:127
msgid "Auxiliary 6"
msgstr "補助 6"
-#: ../src/pulse/channelmap.c:130
+#: ../src/pulse/channelmap.c:128
msgid "Auxiliary 7"
msgstr "補助 7"
-#: ../src/pulse/channelmap.c:131
+#: ../src/pulse/channelmap.c:129
msgid "Auxiliary 8"
msgstr "補助 8"
-#: ../src/pulse/channelmap.c:132
+#: ../src/pulse/channelmap.c:130
msgid "Auxiliary 9"
msgstr "補助 9"
-#: ../src/pulse/channelmap.c:133
+#: ../src/pulse/channelmap.c:131
msgid "Auxiliary 10"
msgstr "補助 10"
-#: ../src/pulse/channelmap.c:134
+#: ../src/pulse/channelmap.c:132
msgid "Auxiliary 11"
msgstr "補助 11"
-#: ../src/pulse/channelmap.c:135
+#: ../src/pulse/channelmap.c:133
msgid "Auxiliary 12"
msgstr "補助 12"
-#: ../src/pulse/channelmap.c:136
+#: ../src/pulse/channelmap.c:134
msgid "Auxiliary 13"
msgstr "補助 13"
-#: ../src/pulse/channelmap.c:137
+#: ../src/pulse/channelmap.c:135
msgid "Auxiliary 14"
msgstr "補助 14"
-#: ../src/pulse/channelmap.c:138
+#: ../src/pulse/channelmap.c:136
msgid "Auxiliary 15"
msgstr "補助 15"
-#: ../src/pulse/channelmap.c:139
+#: ../src/pulse/channelmap.c:137
msgid "Auxiliary 16"
msgstr "補助 16"
-#: ../src/pulse/channelmap.c:140
+#: ../src/pulse/channelmap.c:138
msgid "Auxiliary 17"
msgstr "補助 17"
-#: ../src/pulse/channelmap.c:141
+#: ../src/pulse/channelmap.c:139
msgid "Auxiliary 18"
msgstr "補助 18"
-#: ../src/pulse/channelmap.c:142
+#: ../src/pulse/channelmap.c:140
msgid "Auxiliary 19"
msgstr "補助 19"
-#: ../src/pulse/channelmap.c:143
+#: ../src/pulse/channelmap.c:141
msgid "Auxiliary 20"
msgstr "補助 20"
-#: ../src/pulse/channelmap.c:144
+#: ../src/pulse/channelmap.c:142
msgid "Auxiliary 21"
msgstr "補助 21"
-#: ../src/pulse/channelmap.c:145
+#: ../src/pulse/channelmap.c:143
msgid "Auxiliary 22"
msgstr "補助 22"
-#: ../src/pulse/channelmap.c:146
+#: ../src/pulse/channelmap.c:144
msgid "Auxiliary 23"
msgstr "補助 23"
-#: ../src/pulse/channelmap.c:147
+#: ../src/pulse/channelmap.c:145
msgid "Auxiliary 24"
msgstr "補助 24"
-#: ../src/pulse/channelmap.c:148
+#: ../src/pulse/channelmap.c:146
msgid "Auxiliary 25"
msgstr "補助 25"
-#: ../src/pulse/channelmap.c:149
+#: ../src/pulse/channelmap.c:147
msgid "Auxiliary 26"
msgstr "補助 26"
-#: ../src/pulse/channelmap.c:150
+#: ../src/pulse/channelmap.c:148
msgid "Auxiliary 27"
msgstr "補助 27"
-#: ../src/pulse/channelmap.c:151
+#: ../src/pulse/channelmap.c:149
msgid "Auxiliary 28"
msgstr "補助 28"
-#: ../src/pulse/channelmap.c:152
+#: ../src/pulse/channelmap.c:150
msgid "Auxiliary 29"
msgstr "補助 29"
-#: ../src/pulse/channelmap.c:153
+#: ../src/pulse/channelmap.c:151
msgid "Auxiliary 30"
msgstr "補助 30"
-#: ../src/pulse/channelmap.c:154
+#: ../src/pulse/channelmap.c:152
msgid "Auxiliary 31"
msgstr "補助 31"
-#: ../src/pulse/channelmap.c:156
+#: ../src/pulse/channelmap.c:154
msgid "Top Center"
msgstr "上部中央"
-#: ../src/pulse/channelmap.c:158
+#: ../src/pulse/channelmap.c:156
msgid "Top Front Center"
msgstr "上部中央前"
-#: ../src/pulse/channelmap.c:159
+#: ../src/pulse/channelmap.c:157
msgid "Top Front Left"
msgstr "上部左前"
-#: ../src/pulse/channelmap.c:160
+#: ../src/pulse/channelmap.c:158
msgid "Top Front Right"
msgstr "上部右前"
-#: ../src/pulse/channelmap.c:162
+#: ../src/pulse/channelmap.c:160
msgid "Top Rear Center"
msgstr "上部中央後ろ"
-#: ../src/pulse/channelmap.c:163
+#: ../src/pulse/channelmap.c:161
msgid "Top Rear Left"
msgstr "上部左後ろ"
-#: ../src/pulse/channelmap.c:164
+#: ../src/pulse/channelmap.c:162
msgid "Top Rear Right"
msgstr "上部右後ろ"
-#: ../src/pulse/channelmap.c:484 ../src/pulse/sample.c:169
-#: ../src/pulse/volume.c:297 ../src/pulse/volume.c:323
-#: ../src/pulse/volume.c:343 ../src/pulse/volume.c:373
-#: ../src/pulse/format.c:125
+#: ../src/pulse/channelmap.c:479 ../src/pulse/format.c:121
+#: ../src/pulse/sample.c:175 ../src/pulse/volume.c:294
+#: ../src/pulse/volume.c:320 ../src/pulse/volume.c:340
+#: ../src/pulse/volume.c:372 ../src/pulse/volume.c:412
+#: ../src/pulse/volume.c:431
msgid "(invalid)"
msgstr "無効)"
-#: ../src/pulse/channelmap.c:761
+#: ../src/pulse/channelmap.c:762
msgid "Stereo"
msgstr "ステレオ"
-#: ../src/pulse/channelmap.c:766
+#: ../src/pulse/channelmap.c:767
msgid "Surround 4.0"
msgstr "サラウンド 4.0"
-#: ../src/pulse/channelmap.c:772
+#: ../src/pulse/channelmap.c:773
msgid "Surround 4.1"
msgstr "サラウンド 4.1"
-#: ../src/pulse/channelmap.c:778
+#: ../src/pulse/channelmap.c:779
msgid "Surround 5.0"
msgstr "サラウンド 5.0"
-#: ../src/pulse/channelmap.c:784
+#: ../src/pulse/channelmap.c:785
msgid "Surround 5.1"
msgstr "サラウンド 5.1"
-#: ../src/pulse/channelmap.c:791
+#: ../src/pulse/channelmap.c:792
msgid "Surround 7.1"
msgstr "サラウンド 7.1"
-#: ../src/pulse/error.c:40
+#: ../src/pulse/client-conf-x11.c:53 ../src/utils/pax11publish.c:97
+msgid "xcb_connect() failed"
+msgstr "xcb_connect() は失敗"
+
+#: ../src/pulse/client-conf-x11.c:58 ../src/utils/pax11publish.c:102
+msgid "xcb_connection_has_error() returned true"
+msgstr "xcb_connection_has_error() は真を返しました"
+
+#: ../src/pulse/client-conf-x11.c:94
+msgid "Failed to parse cookie data"
+msgstr "クッキーデータの構文解析に失敗"
+
+#: ../src/pulse/context.c:656
+#, c-format
+msgid "fork(): %s"
+msgstr "fork(): %s"
+
+#: ../src/pulse/context.c:711
+#, c-format
+msgid "waitpid(): %s"
+msgstr "waitpid(): %s"
+
+#: ../src/pulse/context.c:1412
+#, c-format
+msgid "Received message for unknown extension '%s'"
+msgstr "不明な拡張子 '%s' のメッセージを受信"
+
+#: ../src/pulse/direction.c:37
+msgid "input"
+msgstr "入力"
+
+#: ../src/pulse/direction.c:39
+msgid "output"
+msgstr "出力"
+
+#: ../src/pulse/direction.c:41
+msgid "bidirectional"
+msgstr "双方向"
+
+#: ../src/pulse/direction.c:43
+msgid "invalid"
+msgstr "無効"
+
+#: ../src/pulsecore/core-util.c:1820
+#, c-format
+msgid ""
+"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could "
+"e g happen if you try to connect to a non-root PulseAudio as a root user, "
+"over the native protocol. Don't do that.)"
+msgstr ""
+"XDG_RUNTIME_DIR (%s) を所有しているのは私たち (uid %d) ではなく uid %d です! (たとえばこれは、root 以外の "
+"PulseAudio に root ユーザーとしてネイティブプロトコルで接続を試みた場合に起こります。これは行わないでください。)"
+
+#: ../src/pulsecore/core-util.h:93
+msgid "yes"
+msgstr "はい"
+
+#: ../src/pulsecore/core-util.h:93
+msgid "no"
+msgstr "いいえ"
+
+#: ../src/pulsecore/lock-autospawn.c:141 ../src/pulsecore/lock-autospawn.c:227
+msgid "Cannot access autospawn lock."
+msgstr "autospawn ロックにアクセスできません"
+
+#: ../src/pulsecore/log.c:153
+#, c-format
+msgid "Failed to open target file '%s'."
+msgstr "入手したファイル '%s' を開くのに失敗しました。"
+
+#: ../src/pulsecore/log.c:176
+#, c-format
+msgid ""
+"Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
+msgstr "ターゲットファイル '%s'、'%s.1'、'%s.2' ... '%s.%d' のオープンを試みましたが失敗しました。"
+
+#: ../src/pulsecore/log.c:631
+msgid "Invalid log target."
+msgstr "無効なログターゲット。"
+
+#: ../src/pulsecore/sink.c:3427
+msgid "Built-in Audio"
+msgstr "内部オーディオ"
+
+#: ../src/pulsecore/sink.c:3432
+msgid "Modem"
+msgstr "モデム"
+
+#: ../src/pulse/error.c:38
msgid "OK"
msgstr "OK"
-#: ../src/pulse/error.c:41
+#: ../src/pulse/error.c:39
msgid "Access denied"
msgstr "アクセス拒否"
-#: ../src/pulse/error.c:42
+#: ../src/pulse/error.c:40
msgid "Unknown command"
msgstr "不明なコマンド"
-#: ../src/pulse/error.c:43
+#: ../src/pulse/error.c:41
msgid "Invalid argument"
msgstr "無効な引数"
-#: ../src/pulse/error.c:44
+#: ../src/pulse/error.c:42
msgid "Entity exists"
msgstr "エンティティは存在します"
-#: ../src/pulse/error.c:45
+#: ../src/pulse/error.c:43
msgid "No such entity"
msgstr "そのようなエンティティはありません"
-#: ../src/pulse/error.c:46
+#: ../src/pulse/error.c:44
msgid "Connection refused"
msgstr "接続拒否"
-#: ../src/pulse/error.c:47
+#: ../src/pulse/error.c:45
msgid "Protocol error"
msgstr "プロトコルエラー"
-#: ../src/pulse/error.c:48
+#: ../src/pulse/error.c:46
msgid "Timeout"
msgstr "タイムアウト"
-#: ../src/pulse/error.c:49
-msgid "No authorization key"
-msgstr "認証キーがありません"
+#: ../src/pulse/error.c:47
+msgid "No authentication key"
+msgstr "認証されたキーなし"
-#: ../src/pulse/error.c:50
+#: ../src/pulse/error.c:48
msgid "Internal error"
msgstr "内部エラー"
-#: ../src/pulse/error.c:51
+#: ../src/pulse/error.c:49
msgid "Connection terminated"
msgstr "接続切断"
-#: ../src/pulse/error.c:52
+#: ../src/pulse/error.c:50
msgid "Entity killed"
msgstr "エンティティはキルされました"
-#: ../src/pulse/error.c:53
+#: ../src/pulse/error.c:51
msgid "Invalid server"
msgstr "無効なサーバー"
-#: ../src/pulse/error.c:54
+#: ../src/pulse/error.c:52
msgid "Module initialization failed"
msgstr "モジュール初期化失敗"
-#: ../src/pulse/error.c:55
+#: ../src/pulse/error.c:53
msgid "Bad state"
msgstr "悪い状態"
-#: ../src/pulse/error.c:56
+#: ../src/pulse/error.c:54
msgid "No data"
msgstr "データ無し"
-#: ../src/pulse/error.c:57
+#: ../src/pulse/error.c:55
msgid "Incompatible protocol version"
msgstr "互換性のないプロトコルバージョン"
-#: ../src/pulse/error.c:58
+#: ../src/pulse/error.c:56
msgid "Too large"
msgstr "大き過ぎます"
-#: ../src/pulse/error.c:59
+#: ../src/pulse/error.c:57
msgid "Not supported"
msgstr "サポートがありません"
-#: ../src/pulse/error.c:60
+#: ../src/pulse/error.c:58
msgid "Unknown error code"
msgstr "不明なエラーコード"
-#: ../src/pulse/error.c:61
+#: ../src/pulse/error.c:59
msgid "No such extension"
msgstr "そのような拡張子はありません"
-#: ../src/pulse/error.c:62
+#: ../src/pulse/error.c:60
msgid "Obsolete functionality"
msgstr "旧来の機能"
-#: ../src/pulse/error.c:63
+#: ../src/pulse/error.c:61
msgid "Missing implementation"
msgstr "実装の欠如"
-#: ../src/pulse/error.c:64
+#: ../src/pulse/error.c:62
msgid "Client forked"
msgstr "クライアントはフォークされています"
-#: ../src/pulse/error.c:65
+#: ../src/pulse/error.c:63
msgid "Input/Output error"
msgstr "入力/出力エラー"
-#: ../src/pulse/error.c:66
+#: ../src/pulse/error.c:64
msgid "Device or resource busy"
msgstr "デバイスか、リソースがビジー"
-#: ../src/pulse/sample.c:171
+#: ../src/pulse/sample.c:177
#, c-format
msgid "%s %uch %uHz"
msgstr "%s %uch %uHz"
-#: ../src/pulse/sample.c:183
+#: ../src/pulse/sample.c:189
#, c-format
msgid "%0.1f GiB"
msgstr "%0.1f GiB"
-#: ../src/pulse/sample.c:185
+#: ../src/pulse/sample.c:191
#, c-format
msgid "%0.1f MiB"
msgstr "%0.1f MiB"
-#: ../src/pulse/sample.c:187
+#: ../src/pulse/sample.c:193
#, c-format
msgid "%0.1f KiB"
msgstr "%0.1f KiB"
-#: ../src/pulse/sample.c:189
+#: ../src/pulse/sample.c:195
#, c-format
msgid "%u B"
msgstr "%u B"
-#: ../src/pulse/client-conf-x11.c:54 ../src/utils/pax11publish.c:100
-msgid "xcb_connect() failed"
-msgstr "xcb_connect() は失敗"
-
-#: ../src/pulse/client-conf-x11.c:59 ../src/utils/pax11publish.c:105
-msgid "xcb_connection_has_error() returned true"
-msgstr "xcb_connection_has_error() は真を返しました"
-
-#: ../src/pulse/client-conf-x11.c:97
-msgid "Failed to parse cookie data"
-msgstr "クッキーデータの構文解析に失敗"
-
-#: ../src/pulse/client-conf.c:117
+#: ../src/tests/resampler-test.c:255
#, c-format
-msgid "Failed to open configuration file '%s': %s"
-msgstr "設定ファイル'%s' を開くのに失敗: %s"
-
-#: ../src/pulse/context.c:528
-msgid "No cookie loaded. Attempting to connect without."
-msgstr "クッキーがロードされていません。無い状態で接続を試行"
-
-#: ../src/pulse/context.c:675
-#, c-format
-msgid "fork(): %s"
-msgstr "fork(): %s"
-
-#: ../src/pulse/context.c:730
-#, c-format
-msgid "waitpid(): %s"
-msgstr "waitpid(): %s"
+msgid ""
+"%s [options]\n"
+"\n"
+"-h, --help Show this help\n"
+"-v, --verbose Print debug messages\n"
+" --from-rate=SAMPLERATE From sample rate in Hz (defaults to "
+"44100)\n"
+" --from-format=SAMPLEFORMAT From sample type (defaults to s16le)\n"
+" --from-channels=CHANNELS From number of channels (defaults to "
+"1)\n"
+" --to-rate=SAMPLERATE To sample rate in Hz (defaults to "
+"44100)\n"
+" --to-format=SAMPLEFORMAT To sample type (defaults to s16le)\n"
+" --to-channels=CHANNELS To number of channels (defaults to 1)\n"
+" --resample-method=METHOD Resample method (defaults to auto)\n"
+" --seconds=SECONDS From stream duration (defaults to 60)\n"
+"\n"
+"If the formats are not specified, the test performs all formats "
+"combinations,\n"
+"back and forth.\n"
+"\n"
+"Sample type must be one of s16le, s16be, u8, float32le, float32be, ulaw, "
+"alaw,\n"
+"s24le, s24be, s24-32le, s24-32be, s32le, s32be (defaults to s16ne)\n"
+"\n"
+"See --dump-resample-methods for possible values of resample methods.\n"
+msgstr ""
+"%s [options]\n"
+"\n"
+"-h, --help このヘルプの表示\n"
+"-v, --verbose デバッグメッセージをプリント\n"
+" --from-rate=SAMPLERATE Hz 単位でのサンプルレート下限 (デフォルトは 44100)\n"
+" --from-format=SAMPLEFORMAT サンプルタイプの下限 (デフォルトは s16le)\n"
+" --from-channels=CHANNELS チャンネル数の下限 (デフォルトは 1)\n"
+" --to-rate=SAMPLERATE Hz 単位でのサンプルレート上限 (デフォルトは 44100)\n"
+" --to-format=SAMPLEFORMAT サンプルタイプの上限 (デフォルトは s16le)\n"
+" --to-channels=CHANNELS チャンネル数の上限 (デフォルトは 1)\n"
+" --resample-method=METHOD リサンプル方法 (デフォルトは auto)\n"
+" --seconds=SECONDS ストリーム期間の下限 (デフォルトは 60)\n"
+"\n"
+"フォーマットが指定されていない場合、テストはすべてのフォーマットの組み合わせを実行します。\n"
+"\n"
+"サンプルタイプは、以下のいずれかである必要があります。s16le、s16be、u8、float32le、float32be、ulaw、alaw、s24le、s24be、s24-"
+"32le、s24-32be、s32le、s32be (defaults to s16ne)\n"
+"\n"
+"リサンプル方法で利用可能な値については、 --dump-resample-methods を参照してください。\n"
-#: ../src/pulse/context.c:1431
+#: ../src/tests/resampler-test.c:354
#, c-format
-msgid "Received message for unknown extension '%s'"
-msgstr "不明な拡張子 '%s' のメッセージを受信"
+msgid "%s %s\n"
+msgstr "%s %s\n"
-#: ../src/utils/pacat.c:112
+#: ../src/utils/pacat.c:116
#, c-format
msgid "Failed to drain stream: %s"
msgstr "ストリームの排出に失敗: %s"
-#: ../src/utils/pacat.c:117
+#: ../src/utils/pacat.c:121
msgid "Playback stream drained."
msgstr "排出したストリームを再生"
-#: ../src/utils/pacat.c:128
+#: ../src/utils/pacat.c:132
msgid "Draining connection to server."
msgstr "サーバーへの排出接続"
-#: ../src/utils/pacat.c:141
+#: ../src/utils/pacat.c:145
#, c-format
msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s"
-#: ../src/utils/pacat.c:164
+#: ../src/utils/pacat.c:168
#, c-format
msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() は失敗: %s"
-#: ../src/utils/pacat.c:205
+#: ../src/utils/pacat.c:209
#, c-format
msgid "pa_stream_begin_write() failed: %s"
msgstr "pa_stream_begin_write() は失敗: %s"
-#: ../src/utils/pacat.c:255 ../src/utils/pacat.c:285
+#: ../src/utils/pacat.c:259 ../src/utils/pacat.c:289
#, c-format
msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() は失敗: %s"
-#: ../src/utils/pacat.c:325
+#: ../src/utils/pacat.c:339
msgid "Stream successfully created."
msgstr "ストリームは正常に作成完了"
-#: ../src/utils/pacat.c:328
+#: ../src/utils/pacat.c:342
#, c-format
msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() は失敗: %s"
-#: ../src/utils/pacat.c:332
+#: ../src/utils/pacat.c:346
#, c-format
msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "バッファメトリックス: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
-#: ../src/utils/pacat.c:335
+#: ../src/utils/pacat.c:349
#, c-format
msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "バッファメトリックス: maxlength=%u, fragsize=%u"
-#: ../src/utils/pacat.c:339
+#: ../src/utils/pacat.c:353
#, c-format
msgid "Using sample spec '%s', channel map '%s'."
msgstr "サンプル仕様 '%s' 、チャンネルマップ '%s' を使用。"
-#: ../src/utils/pacat.c:343
+#: ../src/utils/pacat.c:357
#, c-format
-msgid "Connected to device %s (%u, %ssuspended)."
-msgstr "デバイス %s に接続 (%u, %ssuspended)"
+msgid "Connected to device %s (index: %u, suspended: %s)."
+msgstr "デバイス %s に接続 (インデックス: %u、休止: %s)。"
-#: ../src/utils/pacat.c:353
+#: ../src/utils/pacat.c:367
#, c-format
msgid "Stream error: %s"
msgstr "ストリームエラー: %s"
-#: ../src/utils/pacat.c:363
+#: ../src/utils/pacat.c:377
#, c-format
msgid "Stream device suspended.%s"
msgstr "ストリームデバイス休止 %s"
-#: ../src/utils/pacat.c:365
+#: ../src/utils/pacat.c:379
#, c-format
msgid "Stream device resumed.%s"
msgstr "ストリームデバイス復帰 %s"
-#: ../src/utils/pacat.c:373
+#: ../src/utils/pacat.c:387
#, c-format
msgid "Stream underrun.%s"
msgstr "ストリームアンダーラン %s"
-#: ../src/utils/pacat.c:380
+#: ../src/utils/pacat.c:394
#, c-format
msgid "Stream overrun.%s"
msgstr "ストリームオーバーラン %s"
-#: ../src/utils/pacat.c:387
+#: ../src/utils/pacat.c:401
#, c-format
msgid "Stream started.%s"
msgstr "ストリーム開始 %s"
-#: ../src/utils/pacat.c:394
+#: ../src/utils/pacat.c:408
#, c-format
msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "ストリームはデバイス %s へ移動 (%u, %ssuspended)%s"
-#: ../src/utils/pacat.c:394
+#: ../src/utils/pacat.c:408
msgid "not "
msgstr "not "
-#: ../src/utils/pacat.c:401
+#: ../src/utils/pacat.c:415
#, c-format
msgid "Stream buffer attributes changed.%s"
msgstr "ストリームバッファの属性変更 %s"
-#: ../src/utils/pacat.c:416
+#: ../src/utils/pacat.c:430
msgid "Cork request stack is empty: corking stream"
msgstr "Cork リクエストスタックは空です: corking stream"
-#: ../src/utils/pacat.c:422
+#: ../src/utils/pacat.c:436
msgid "Cork request stack is empty: uncorking stream"
msgstr "Cork リクエストスタックは空です: uncorking stream"
-#: ../src/utils/pacat.c:426
+#: ../src/utils/pacat.c:440
msgid "Warning: Received more uncork requests than cork requests!"
msgstr "警告: uncork リクエストを cork リクエストよりも多く受け取りました"
-#: ../src/utils/pacat.c:451
+#: ../src/utils/pacat.c:465
#, c-format
msgid "Connection established.%s"
msgstr "接続が確立 %s"
-#: ../src/utils/pacat.c:454
+#: ../src/utils/pacat.c:468
#, c-format
msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() は失敗: %s"
-#: ../src/utils/pacat.c:492
+#: ../src/utils/pacat.c:506
#, c-format
msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() は失敗: %s"
-#: ../src/utils/pacat.c:498
+#: ../src/utils/pacat.c:512
+#, c-format
+msgid "Failed to set monitor stream: %s"
+msgstr "モニターストリームの設定に失敗しました: %s"
+
+#: ../src/utils/pacat.c:516
#, c-format
msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() は失敗: %s"
-#: ../src/utils/pacat.c:512 ../src/utils/pactl.c:1252
+#: ../src/utils/pacat.c:529 ../src/utils/pactl.c:1446
#, c-format
msgid "Connection failure: %s"
msgstr "接続失敗: %s"
-#: ../src/utils/pacat.c:545
+#: ../src/utils/pacat.c:562
msgid "Got EOF."
msgstr "EOF 取得"
-#: ../src/utils/pacat.c:582
+#: ../src/utils/pacat.c:599
#, c-format
msgid "write() failed: %s"
msgstr "write() は失敗: %s"
-#: ../src/utils/pacat.c:603
+#: ../src/utils/pacat.c:620
msgid "Got signal, exiting."
msgstr "信号取得、退出中"
-#: ../src/utils/pacat.c:617
+#: ../src/utils/pacat.c:634
#, c-format
msgid "Failed to get latency: %s"
msgstr "レイテンシー取得に失敗: %s"
-#: ../src/utils/pacat.c:622
+#: ../src/utils/pacat.c:639
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec."
msgstr "時間: %0.3f sec ; レイテンシー: %0.0f usec"
-#: ../src/utils/pacat.c:643
+#: ../src/utils/pacat.c:660
#, c-format
msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() は失敗: %s"
-#: ../src/utils/pacat.c:653
+#: ../src/utils/pacat.c:670
#, c-format
msgid ""
"%s [options]\n"
@@ -1402,8 +1767,7 @@ msgid ""
"\n"
" -v, --verbose Enable verbose operations\n"
"\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
+" -s, --server=SERVER The name of the server to connect to\n"
" -d, --device=DEVICE The name of the sink/source to "
"connect to\n"
" -n, --client-name=NAME How to call this client on the "
@@ -1425,16 +1789,16 @@ msgid ""
" (defaults to 2)\n"
" --channel-map=CHANNELMAP Channel map to use instead of the "
"default\n"
-" --fix-format Take the sample format from the sink "
-"the stream is\n"
+" --fix-format Take the sample format from the sink/"
+"source the stream is\n"
" being connected to.\n"
-" --fix-rate Take the sampling rate from the sink "
-"the stream is\n"
+" --fix-rate Take the sampling rate from the sink/"
+"source the stream is\n"
" being connected to.\n"
" --fix-channels Take the number of channels and the "
"channel map\n"
-" from the sink the stream is being "
-"connected to.\n"
+" from the sink/source the stream is "
+"being connected to.\n"
" --no-remix Don't upmix or downmix channels.\n"
" --no-remap Map channels by index instead of "
"name.\n"
@@ -1449,315 +1813,364 @@ msgid ""
" --property=PROPERTY=VALUE Set the specified property to the "
"specified value.\n"
" --raw Record/play raw PCM data.\n"
-" --passthrough passthrough data \n"
+" --passthrough Passthrough data.\n"
" --file-format[=FFORMAT] Record/play formatted PCM data.\n"
" --list-file-formats List available file formats.\n"
+" --monitor-stream=INDEX Record from the sink input with "
+"index INDEX.\n"
msgstr ""
"%s [options]\n"
"\n"
-" -h, --help このヘルプを表示\n"
-" --version バージョンを表示\n"
+" -h, --help このヘルプの表示\n"
+" --version バージョンの表示\n"
"\n"
-" -r, --record 録音用の接続を作成\n"
-" -p, --playback 再生用の接続を作成\n"
+" -r, --record 録音の接続を作成\n"
+" -p, --playback 再生の接続を作成\n"
"\n"
-" -v, --verbose 詳細操作を有効にする\n"
+" -v, --verbose 詳細表示を有効化\n"
"\n"
-" -s, --server=SERVER 接続先サーバーの名前\n"
-" -d, --device=DEVICE 接続先シンク/ソースの名前\n"
-" -n, --client-name=NAME サーバーでこのクライアントへのコール"
-"方法\n"
-" --stream-name=NAME サーバー上でこのストリームへのコール"
-"方法\n"
-" --volume=VOLUME 初期 (リニア) ボリューム幅を指定 "
-"0...65536\n"
-" --rate=SAMPLERATE サンプルレートを Hz で表示 (デフォル"
-"トは 44100)\n"
-" --format=SAMPLEFORMAT サンプルタイプ, 次の1つ s16le, "
-"s16be, u8, float32le,\n"
-" float32be, ulaw, alaw, s32le, s32be, "
-"s24le, s24be,\n"
-" s24-32le, s24-32be (デフォルトは "
-"s16ne)\n"
-" --channels=CHANNELS チャンネルの数, モノ用に1, ステレオ"
-"用に2\n"
+" -s, --server=SERVER 接続先のサーバー名\n"
+" -d, --device=DEVICE 接続先のシンク/ソース名\n"
+" -n, --client-name=NAME サーバー上でのこのクライアントの名前\n"
+" --stream-name=NAME サーバー上でのこのストリームの名前\n"
+" --volume=VOLUME 初期 (一次) ボリュームの範囲 0...65536\n"
+" --rate=SAMPLERATE Hz 単位でのサンプルレート (デフォルトは 44100)\n"
+" --format=SAMPLEFORMAT "
+"以下のいずれかのサンプルタイプ。s16le、s16be、u8、float32le、float32be、ulaw、alaw、s32le、s32be、s24le、s24be、s24-"
+"32le、s24-32be (デフォルトは s16ne)\n"
+" --channels=CHANNELS チャンネル数。モノは 1 、ステレオは 2\n"
" (デフォルトは 2)\n"
-" --channel-map=CHANNELMAP デフォルトの代わりに使用するチャンネ"
-"ルマップ \n"
-" --fix-format ストリームの接続先であるシンクからサ"
-"ンプル形式を取る \n"
-"\n"
-" --fix-rate ストリームの接続先であるシンクからサ"
-"ンプルレートを取る \n"
-"\n"
-" --fix-channels ストリームの接続先であるシンクから"
-"チャンネル数とチャンネルマップを取る\n"
-"\n"
-" --no-remix チャンネルのアップミックスやダウン"
-"ミックスをしない\n"
-" --no-remap 名前の代わりにインデックスでチャンネ"
-"ルをマップする\n"
-" --latency=BYTES 指定レイテンシーをバイトで要求\n"
-" --process-time=BYTES 要求毎の指定プロセスタイムをバイトで"
-"要求 \n"
-" --latency-msec=MSEC 指定レイテンシーをミリ秒で要求\n"
-" --process-time-msec=MSEC 要求毎の指定プロセスタイムをミリ秒で"
-"要求 \n"
-" --property=PROPERTY=VALUE 指定プロパティを指定値にセット\n"
-" --raw 録音/再生の生の PCM データ\n"
-" --passthrough データをそのまま通す\n"
-" --file-format=FFORMAT 録音/再生のフォーマットした PCM デー"
-"タ\n"
-" --list-file-formats 利用可能なファイル形式を一覧表示\n"
-
-#: ../src/utils/pacat.c:786
-#, c-format
-msgid ""
-"pacat %s\n"
+" --channel-map=CHANNELMAP デフォルトの代わりに使用するマップ\n"
+" --fix-format ストリームの接続先となるシンク/ソースからサンプル形式を取る。\n"
+" --fix-rate ストリームの接続先となるシンク/ソースからサンプルレートを取る。\n"
+" --fix-channels ストリームの接続先となるシンク/"
+"ソースからチャンネル数とチャンネルマップを取る。\n"
+" --no-remix チャンネルのアップミックスまたはダウンミックスを行わない。\n"
+" --no-remap 名前の代わりにインデックスでチャンネルをマップ。\n"
+" --latency=BYTES 指定された待機時間を要求 (バイト単位)。\n"
+" --process-time=BYTES リクエストごとの指定された処理時間を要求 (バイト単位)。 \n"
+" --latency-msec=MSEC 指定された待機時間を要求 (ミリ秒単位)。\n"
+" --process-time-msec=MSEC リクエストごとの指定された処理時間を要求 (ミリ秒単位)。 \n"
+" --property=PROPERTY=VALUE 指定されたプロパティーを値に設定。\n"
+" --raw 生 PCM データを録音/再生。\n"
+" --passthrough パススルーデータ。\n"
+" --file-format[=FFORMAT] フォーマットされた PCM データを録音/再生。\n"
+" --list-file-formats 利用可能な形式を一覧表示。\n"
+" --monitor-stream=INDEX インデックス INDEX のシンク入力から録音。\n"
+
+#: ../src/utils/pacat.c:808
+#, c-format
+msgid "pacat %s\n"
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-msgstr ""
-"pacat %s\n"
+msgstr "pacat %s\n"
"libpulse %s でコンパイル\n"
"libpulse %s で接続\n"
-#: ../src/utils/pacat.c:819 ../src/utils/pactl.c:1400
+#: ../src/utils/pacat.c:841 ../src/utils/pactl.c:1642
#, c-format
msgid "Invalid client name '%s'"
msgstr "無効なクライアント名 '%s'"
-#: ../src/utils/pacat.c:834
+#: ../src/utils/pacat.c:856
#, c-format
msgid "Invalid stream name '%s'"
msgstr "無効なストリーム名 '%s'"
-#: ../src/utils/pacat.c:871
+#: ../src/utils/pacat.c:893
#, c-format
msgid "Invalid channel map '%s'"
msgstr "無効なチャンネルマップ '%s'"
-#: ../src/utils/pacat.c:900 ../src/utils/pacat.c:914
+#: ../src/utils/pacat.c:922 ../src/utils/pacat.c:936
#, c-format
msgid "Invalid latency specification '%s'"
msgstr "無効なレイテンシー仕様 '%s'"
-#: ../src/utils/pacat.c:907 ../src/utils/pacat.c:921
+#: ../src/utils/pacat.c:929 ../src/utils/pacat.c:943
#, c-format
msgid "Invalid process time specification '%s'"
msgstr "無効なプロセスタイム仕様 '%s'"
-#: ../src/utils/pacat.c:933
+#: ../src/utils/pacat.c:955
#, c-format
msgid "Invalid property '%s'"
msgstr "無効なプロパティ '%s'"
-#: ../src/utils/pacat.c:952
+#: ../src/utils/pacat.c:974
#, c-format
msgid "Unknown file format %s."
msgstr "不明なファイル形式 '%s'"
-#: ../src/utils/pacat.c:971
+#: ../src/utils/pacat.c:989
+msgid "Failed to parse the argument for --monitor-stream"
+msgstr "--monitor-stream の引数解析に失敗しました"
+
+#: ../src/utils/pacat.c:1000
msgid "Invalid sample specification"
msgstr "無効なサンプル仕様"
-#: ../src/utils/pacat.c:981
+#: ../src/utils/pacat.c:1010
#, c-format
msgid "open(): %s"
msgstr "open(): %s"
-#: ../src/utils/pacat.c:986
+#: ../src/utils/pacat.c:1015
#, c-format
msgid "dup2(): %s"
msgstr "dup2(): %s"
-#: ../src/utils/pacat.c:993
+#: ../src/utils/pacat.c:1022
msgid "Too many arguments."
msgstr "引数が多過ぎます。"
-#: ../src/utils/pacat.c:1004
+#: ../src/utils/pacat.c:1033
msgid "Failed to generate sample specification for file."
msgstr "ファイル用のサンプル仕様の生成に失敗しました。"
-#: ../src/utils/pacat.c:1030
+#: ../src/utils/pacat.c:1059
msgid "Failed to open audio file."
msgstr "オーディオファイルを開くのに失敗しました。"
-#: ../src/utils/pacat.c:1036
+#: ../src/utils/pacat.c:1065
msgid ""
"Warning: specified sample specification will be overwritten with "
"specification from file."
msgstr "警告: 指定されたサンプルの仕様はファイルからの仕様で上書きされます。"
-#: ../src/utils/pacat.c:1039 ../src/utils/pactl.c:1467
+#: ../src/utils/pacat.c:1068 ../src/utils/pactl.c:1706
msgid "Failed to determine sample specification from file."
msgstr "ファイルからのサンプル仕様の決定に失敗しました。"
-#: ../src/utils/pacat.c:1048
+#: ../src/utils/pacat.c:1077
msgid "Warning: Failed to determine channel map from file."
msgstr "警告: ファイルからのチャンネルマップの決定に失敗しました。"
-#: ../src/utils/pacat.c:1059
+#: ../src/utils/pacat.c:1088
msgid "Channel map doesn't match sample specification"
msgstr "チャンネルマップはサンプル仕様に一致しません。"
-#: ../src/utils/pacat.c:1070
+#: ../src/utils/pacat.c:1099
msgid "Warning: failed to write channel map to file."
msgstr "警告: ファイルへのチャンネルマップ書き込みに失敗しました。"
-#: ../src/utils/pacat.c:1085
+#: ../src/utils/pacat.c:1114
#, c-format
msgid ""
"Opening a %s stream with sample specification '%s' and channel map '%s'."
-msgstr ""
-"サンプル仕様 '%s' とチャンネルマップ '%s' で %s ストリームを開いています。"
+msgstr "サンプル仕様 '%s' とチャンネルマップ '%s' で %s ストリームを開いています。"
-#: ../src/utils/pacat.c:1086
+#: ../src/utils/pacat.c:1115
msgid "recording"
msgstr "録音"
-#: ../src/utils/pacat.c:1086
+#: ../src/utils/pacat.c:1115
msgid "playback"
msgstr "再生"
-#: ../src/utils/pacat.c:1110
+#: ../src/utils/pacat.c:1139
msgid "Failed to set media name."
msgstr "メディア名のセットに失敗しました。"
-#: ../src/utils/pacat.c:1117 ../src/utils/pactl.c:1777
+#: ../src/utils/pacat.c:1146 ../src/utils/pactl.c:2056
msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() は失敗"
-#: ../src/utils/pacat.c:1136
+#: ../src/utils/pacat.c:1169
msgid "io_new() failed."
msgstr "io_new() は失敗"
-#: ../src/utils/pacat.c:1143 ../src/utils/pactl.c:1789
+#: ../src/utils/pacat.c:1176 ../src/utils/pactl.c:2068
msgid "pa_context_new() failed."
msgstr "pa_context_new() は失敗"
-#: ../src/utils/pacat.c:1151 ../src/utils/pactl.c:1795
+#: ../src/utils/pacat.c:1184 ../src/utils/pactl.c:2074
#, c-format
msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() は失敗: %s"
-#: ../src/utils/pacat.c:1157
+#: ../src/utils/pacat.c:1190
msgid "pa_context_rttime_new() failed."
msgstr "pa_context_rttime_new() は失敗"
-#: ../src/utils/pacat.c:1164 ../src/utils/pactl.c:1800
+#: ../src/utils/pacat.c:1197 ../src/utils/pactl.c:2079
msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() は失敗"
-#: ../src/utils/pasuspender.c:79
-#, c-format
-msgid "fork(): %s\n"
-msgstr "fork(): %s\n"
+#: ../src/utils/pacmd.c:51 ../src/utils/pactl.c:1564
+msgid "NAME [ARGS ...]"
+msgstr "名前 [引数 ...]"
-#: ../src/utils/pasuspender.c:90
-#, c-format
-msgid "execvp(): %s\n"
-msgstr "execvp(): %s\n"
+#: ../src/utils/pacmd.c:52 ../src/utils/pacmd.c:60 ../src/utils/pactl.c:1565
+msgid "NAME|#N"
+msgstr "名前|#N"
-#: ../src/utils/pasuspender.c:107
-#, c-format
-msgid "Failure to suspend: %s\n"
-msgstr "休止の失敗: %s\n"
+#: ../src/utils/pacmd.c:53 ../src/utils/pacmd.c:63 ../src/utils/pactl.c:1563
+#: ../src/utils/pactl.c:1569
+msgid "NAME"
+msgstr "名前"
-#: ../src/utils/pasuspender.c:122
-#, c-format
-msgid "Failure to resume: %s\n"
-msgstr "復帰の失敗: %s\n"
+#: ../src/utils/pacmd.c:54
+msgid "NAME|#N VOLUME"
+msgstr "名前|#N ボリューム"
-#: ../src/utils/pasuspender.c:145
-#, c-format
-msgid "WARNING: Sound server is not local, not suspending.\n"
-msgstr "警告: サウンドサーバーはローカルではありません。休止しません。\n"
+#: ../src/utils/pacmd.c:55
+msgid "#N VOLUME"
+msgstr "#N ボリューム"
-#: ../src/utils/pasuspender.c:157
-#, c-format
-msgid "Connection failure: %s\n"
-msgstr "接続失敗 : %s\n"
+#: ../src/utils/pacmd.c:56 ../src/utils/pacmd.c:70 ../src/utils/pactl.c:1567
+msgid "NAME|#N 1|0"
+msgstr "名前|#N 1|0"
-#: ../src/utils/pasuspender.c:174
-#, c-format
-msgid "Got SIGINT, exiting.\n"
-msgstr "SIGINT 取得、退出中\n"
+#: ../src/utils/pacmd.c:57
+msgid "#N 1|0"
+msgstr "#N 1|0"
-#: ../src/utils/pasuspender.c:192
-#, c-format
-msgid "WARNING: Child process terminated by signal %u\n"
-msgstr "警告: 子プロセスは信号 %u で終了しました\n"
+#: ../src/utils/pacmd.c:58
+msgid "NAME|#N KEY=VALUE"
+msgstr "名前|#N KEY=VALUE"
+
+#: ../src/utils/pacmd.c:59
+msgid "#N KEY=VALUE"
+msgstr "#N KEY=VALUE"
+
+#: ../src/utils/pacmd.c:61
+msgid "#N"
+msgstr "#N"
+
+#: ../src/utils/pacmd.c:62
+msgid "NAME SINK|#N"
+msgstr "名前 シンク|#N"
-#: ../src/utils/pasuspender.c:210
+#: ../src/utils/pacmd.c:64 ../src/utils/pacmd.c:65
+msgid "NAME FILENAME"
+msgstr "名前 ファイル名"
+
+#: ../src/utils/pacmd.c:66
+msgid "PATHNAME"
+msgstr "パス名"
+
+#: ../src/utils/pacmd.c:67
+msgid "FILENAME SINK|#N"
+msgstr "ファイル名 シンク|#N"
+
+#: ../src/utils/pacmd.c:69 ../src/utils/pactl.c:1566
+msgid "#N SINK|SOURCE"
+msgstr "#N シンク|ソース"
+
+#: ../src/utils/pacmd.c:71 ../src/utils/pacmd.c:77 ../src/utils/pacmd.c:78
+msgid "1|0"
+msgstr "1|0"
+
+#: ../src/utils/pacmd.c:72 ../src/utils/pactl.c:1568
+msgid "CARD PROFILE"
+msgstr "カードプロフィール"
+
+#: ../src/utils/pacmd.c:73 ../src/utils/pactl.c:1570
+msgid "NAME|#N PORT"
+msgstr "名前|#N ポート"
+
+#: ../src/utils/pacmd.c:74 ../src/utils/pactl.c:1576
+msgid "CARD-NAME|CARD-#N PORT OFFSET"
+msgstr "カード-名前|カード-#N ポート オフセット"
+
+#: ../src/utils/pacmd.c:75
+msgid "TARGET"
+msgstr "ターゲット"
+
+#: ../src/utils/pacmd.c:76
+msgid "NUMERIC LEVEL"
+msgstr "数的レベル"
+
+#: ../src/utils/pacmd.c:79
+msgid "FRAMES"
+msgstr "フレーム"
+
+#: ../src/utils/pacmd.c:81
#, c-format
msgid ""
-"%s [options] ... \n"
"\n"
" -h, --help Show this help\n"
" --version Show version\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
-"\n"
+"When no command is given pacmd starts in the interactive mode.\n"
msgstr ""
-"%s [オプション] ... \n"
"\n"
" -h, --help このヘルプを表示\n"
" --version バージョンを表示\n"
-" -s, --server=SERVER 接続先サーバーの名前\n"
-"\n"
+"コマンドがない場合、pacmd がインタラクティブモードで開始。\n"
-#: ../src/utils/pasuspender.c:248
+#: ../src/utils/pacmd.c:128
#, c-format
-msgid ""
-"pasuspender %s\n"
+msgid "pacmd %s\n"
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-msgstr ""
-"pasuspender %s\n"
+msgstr "pacmd %s\n"
"libpulse %s でコンパイル\n"
"libpulse %s でリンク\n"
-#: ../src/utils/pasuspender.c:277
+#: ../src/utils/pacmd.c:142
+msgid "No PulseAudio daemon running, or not running as session daemon."
+msgstr "PulseAudio デーモン自身が稼働していないか、又はセッションデーモンとして稼働していません。"
+
+#: ../src/utils/pacmd.c:147
#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr "pa_mainloop_new() は失敗\n"
+msgid "socket(PF_UNIX, SOCK_STREAM, 0): %s"
+msgstr "ソケット (PF_UNIX, SOCK_STREAM, 0): %s"
-#: ../src/utils/pasuspender.c:290
+#: ../src/utils/pacmd.c:164
#, c-format
-msgid "pa_context_new() failed.\n"
-msgstr "pa_context_new() は失敗\n"
+msgid "connect(): %s"
+msgstr "connect(): %s"
+
+#: ../src/utils/pacmd.c:172
+msgid "Failed to kill PulseAudio daemon."
+msgstr "PulseAudio のキルに失敗"
+
+#: ../src/utils/pacmd.c:180
+msgid "Daemon not responding."
+msgstr "デーモンが応答しません"
-#: ../src/utils/pasuspender.c:298
+#: ../src/utils/pacmd.c:212 ../src/utils/pacmd.c:321 ../src/utils/pacmd.c:339
#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr "pa_mainloop_run() は失敗\n"
+msgid "write(): %s"
+msgstr "write(): %s"
+
+#: ../src/utils/pacmd.c:268
+#, c-format
+msgid "poll(): %s"
+msgstr "poll(): %s"
-#: ../src/utils/pactl.c:150
+#: ../src/utils/pacmd.c:279 ../src/utils/pacmd.c:299
+#, c-format
+msgid "read(): %s"
+msgstr "read(): %s"
+
+#: ../src/utils/pactl.c:164
#, c-format
msgid "Failed to get statistics: %s"
msgstr "統計の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:156
+#: ../src/utils/pactl.c:170
#, c-format
msgid "Currently in use: %u blocks containing %s bytes total.\n"
msgstr "現在使用中: %u ブロックは合計 %s バイトを含む\n"
-#: ../src/utils/pactl.c:159
+#: ../src/utils/pactl.c:173
#, c-format
msgid "Allocated during whole lifetime: %u blocks containing %s bytes total.\n"
msgstr "総寿命の期間中に割り当て: %u ブロックは合計 %s バイトを含む\n"
-#: ../src/utils/pactl.c:162
+#: ../src/utils/pactl.c:176
#, c-format
msgid "Sample cache size: %s\n"
msgstr "サンプルのキャッシュサイズ: %s\n"
-#: ../src/utils/pactl.c:171
+#: ../src/utils/pactl.c:185
#, c-format
msgid "Failed to get server information: %s"
msgstr "サーバー情報の取得に失敗 : %s"
-#: ../src/utils/pactl.c:176
+#: ../src/utils/pactl.c:190
#, c-format
msgid ""
"Server String: %s\n"
@@ -1774,7 +2187,7 @@ msgstr ""
"クライアントインデックス: %u\n"
"タイルサイズ: %zu\n"
-#: ../src/utils/pactl.c:192
+#: ../src/utils/pactl.c:206
#, c-format
msgid ""
"User Name: %s\n"
@@ -1797,477 +2210,493 @@ msgstr ""
"デフォルトソース: %s\n"
"クッキー: %04x:%04x\n"
-#: ../src/utils/pactl.c:244 ../src/utils/pactl.c:830
+#: ../src/utils/pactl.c:255 ../src/utils/pactl.c:900 ../src/utils/pactl.c:978
#, c-format
msgid "Failed to get sink information: %s"
msgstr "シンク情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:270
+#: ../src/utils/pactl.c:281
#, c-format
msgid ""
"Sink #%u\n"
-"\tState: %s\n"
-"\tName: %s\n"
-"\tDescription: %s\n"
-"\tDriver: %s\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tOwner Module: %u\n"
-"\tMute: %s\n"
-"\tVolume: %s%s%s\n"
-"\t balance %0.2f\n"
-"\tBase Volume: %s%s%s\n"
-"\tMonitor Source: %s\n"
-"\tLatency: %0.0f usec, configured %0.0f usec\n"
-"\tFlags: %s%s%s%s%s%s%s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" State: %s\n"
+" Name: %s\n"
+" Description: %s\n"
+" Driver: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Owner Module: %u\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Base Volume: %s\n"
+" Monitor Source: %s\n"
+" Latency: %0.0f usec, configured %0.0f usec\n"
+" Flags: %s%s%s%s%s%s%s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"シンク #%u\n"
-"\t状態: %s\n"
-"\t名前: %s\n"
-"\t説明: %s\n"
-"\tドライバー: %s\n"
-"\tサンプル仕様: %s\n"
-"\tチャンネルマップ: %s\n"
-"\tオーナーモジュール: %u\n"
-"\tミュート: %s\n"
-"\tボリューム: %s%s%s\n"
-"\t バランス %0.2f\n"
-"\tベースボリューム: %s%s%s\n"
-"\tモニターソース: %s\n"
-"\tレイテンシー: %0.0f usec, 設定 %0.0f usec\n"
-"\tフラグ: %s%s%s%s%s%s%s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
+" 状態: %s\n"
+" 名前: %s\n"
+" 説明: %s\n"
+" ドライバー: %s\n"
+" サンプル仕様: %s\n"
+" チャンネルマップ: %s\n"
+" 所有者モジュール: %u\n"
+" ミュート: %s\n"
+" ボリューム: %s\n"
+" バランス %0.2f\n"
+" ベースボリューム: %s\n"
+" モニターソース: %s\n"
+" 待機時間: %0.0f usec, configured %0.0f usec\n"
+" フラグ: %s%s%s%s%s%s%s\n"
+" プロパティー:\n"
+" %s\n"
-#: ../src/utils/pactl.c:318 ../src/utils/pactl.c:430
+#: ../src/utils/pactl.c:325 ../src/utils/pactl.c:431 ../src/utils/pactl.c:592
#, c-format
-msgid "\tPorts:\n"
-msgstr "\tポート:\n"
+msgid " Ports:\n"
+msgstr " ポート:\n"
-#: ../src/utils/pactl.c:325 ../src/utils/pactl.c:437
+#: ../src/utils/pactl.c:332 ../src/utils/pactl.c:438
#, c-format
-msgid "\tActive Port: %s\n"
-msgstr "\t活動中ポート: %s\n"
+msgid " Active Port: %s\n"
+msgstr " 活動中ポート: %s\n"
-#: ../src/utils/pactl.c:331 ../src/utils/pactl.c:443
+#: ../src/utils/pactl.c:338 ../src/utils/pactl.c:444
#, c-format
-msgid "\tFormats:\n"
-msgstr "\t形式:\n"
+msgid " Formats:\n"
+msgstr " 形式:\n"
-#: ../src/utils/pactl.c:357 ../src/utils/pactl.c:849
+#: ../src/utils/pactl.c:362 ../src/utils/pactl.c:920 ../src/utils/pactl.c:993
#, c-format
msgid "Failed to get source information: %s"
msgstr "ソース情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:383
+#: ../src/utils/pactl.c:388
#, c-format
msgid ""
"Source #%u\n"
-"\tState: %s\n"
-"\tName: %s\n"
-"\tDescription: %s\n"
-"\tDriver: %s\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tOwner Module: %u\n"
-"\tMute: %s\n"
-"\tVolume: %s%s%s\n"
-"\t balance %0.2f\n"
-"\tBase Volume: %s%s%s\n"
-"\tMonitor of Sink: %s\n"
-"\tLatency: %0.0f usec, configured %0.0f usec\n"
-"\tFlags: %s%s%s%s%s%s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" State: %s\n"
+" Name: %s\n"
+" Description: %s\n"
+" Driver: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Owner Module: %u\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Base Volume: %s\n"
+" Monitor of Sink: %s\n"
+" Latency: %0.0f usec, configured %0.0f usec\n"
+" Flags: %s%s%s%s%s%s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"ソース #%u\n"
-"\t状態: %s\n"
-"\t名前: %s\n"
-"\t説明: %s\n"
-"\tドライバー: %s\n"
-"\tサンプル仕様: %s\n"
-"\tチャンネルマップ: %s\n"
-"\tオーナーモジュール: %u\n"
-"\tミュート: %s\n"
-"\tボリューム: %s%s%s\n"
-"\t バランス %0.2f\n"
-"\tベースボリューム: %s%s%s\n"
-"\tシンクのモニター: %s\n"
-"\tレイテンシー: %0.0f usec, 設定 %0.0f usec\n"
-"\tフラグ: %s%s%s%s%s%s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:415 ../src/utils/pactl.c:485 ../src/utils/pactl.c:528
-#: ../src/utils/pactl.c:570 ../src/utils/pactl.c:640 ../src/utils/pactl.c:641
-#: ../src/utils/pactl.c:652 ../src/utils/pactl.c:711 ../src/utils/pactl.c:712
-#: ../src/utils/pactl.c:723 ../src/utils/pactl.c:775 ../src/utils/pactl.c:776
-#: ../src/utils/pactl.c:783
+" 状態: %s\n"
+" 名前: %s\n"
+" 説明: %s\n"
+" ドライバー: %s\n"
+" サンプル仕様: %s\n"
+" チャンネルマップ: %s\n"
+" 所有者モジュール: %u\n"
+" ミュート: %s\n"
+" ボリューム: %s\n"
+" バランス %0.2f\n"
+" ベースボリューム: %s\n"
+" シンクのモニター: %s\n"
+" 待機時間: %0.0f usec, configured %0.0f usec\n"
+" フラグ: %s%s%s%s%s%s\n"
+" プロパティー:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:416 ../src/utils/pactl.c:486 ../src/utils/pactl.c:529
+#: ../src/utils/pactl.c:571 ../src/utils/pactl.c:669 ../src/utils/pactl.c:670
+#: ../src/utils/pactl.c:681 ../src/utils/pactl.c:739 ../src/utils/pactl.c:740
+#: ../src/utils/pactl.c:751 ../src/utils/pactl.c:802 ../src/utils/pactl.c:803
+#: ../src/utils/pactl.c:809
msgid "n/a"
msgstr "n/a"
-#: ../src/utils/pactl.c:454
+#: ../src/utils/pactl.c:455 ../src/utils/pactl.c:859
#, c-format
msgid "Failed to get module information: %s"
msgstr "モジュール情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:477
+#: ../src/utils/pactl.c:478
#, c-format
msgid ""
"Module #%u\n"
-"\tName: %s\n"
-"\tArgument: %s\n"
-"\tUsage counter: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
-msgstr ""
-"モジュール #%u\n"
-"\t名前: %s\n"
-"\t引数: %s\n"
-"\t使用度カウンター: %s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:496
+" Name: %s\n"
+" Argument: %s\n"
+" Usage counter: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr "モジュール #%u\n"
+" 名前: %s\n"
+" 引数: %s\n"
+" 使用度カウンター: %s\n"
+" プロパティ:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:497
#, c-format
msgid "Failed to get client information: %s"
msgstr "クライアント情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:522
+#: ../src/utils/pactl.c:523
#, c-format
-msgid ""
-"Client #%u\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
-msgstr ""
-"クライアント #%u\n"
-"\tドライバー: %s\n"
-"\tオーナーモジュール: %s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
+msgid "Client #%u\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr "クライアント #%u\n"
+" ドライバー: %s\n"
+" オーナーモジュール: %s\n"
+" プロパティ:\n"
+" %s\n"
-#: ../src/utils/pactl.c:539
+#: ../src/utils/pactl.c:540
#, c-format
msgid "Failed to get card information: %s"
msgstr "カード情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:562
+#: ../src/utils/pactl.c:563
#, c-format
-msgid ""
-"Card #%u\n"
-"\tName: %s\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
-msgstr ""
-"カード #%u\n"
-"\t名前: %s\n"
-"\tドライバー: %s\n"
-"\tモジュール: %s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
+msgid "Card #%u\n"
+" Name: %s\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Properties:\n"
+" %s\n"
+msgstr "カード #%u\n"
+" 名前: %s\n"
+" ドライバー: %s\n"
+" モジュール: %s\n"
+" プロパティ:\n"
+" %s\n"
-#: ../src/utils/pactl.c:576
+#: ../src/utils/pactl.c:579
#, c-format
-msgid "\tProfiles:\n"
-msgstr "\tプロフィール:\n"
+msgid " Profiles:\n"
+msgstr " プロフィール:\n"
-#: ../src/utils/pactl.c:582
+#: ../src/utils/pactl.c:586
#, c-format
-msgid "\tActive Profile: %s\n"
-msgstr "\t有効なプロフィール: %s\n"
+msgid " Active Profile: %s\n"
+msgstr " 有効なプロフィール: %s\n"
-#: ../src/utils/pactl.c:593 ../src/utils/pactl.c:868
+#: ../src/utils/pactl.c:600
+#, c-format
+msgid " Properties:\n"
+" %s\n"
+msgstr " プロパティ:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:605
+#, c-format
+msgid " Part of profile(s): %s"
+msgstr " プロファイルの一部: %s"
+
+#: ../src/utils/pactl.c:622 ../src/utils/pactl.c:940 ../src/utils/pactl.c:1008
#, c-format
msgid "Failed to get sink input information: %s"
msgstr "シンク入力情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:622
+#: ../src/utils/pactl.c:651
#, c-format
msgid ""
"Sink Input #%u\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tClient: %s\n"
-"\tSink: %u\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tFormat: %s\n"
-"\tMute: %s\n"
-"\tVolume: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tBuffer Latency: %0.0f usec\n"
-"\tSink Latency: %0.0f usec\n"
-"\tResample method: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Client: %s\n"
+" Sink: %u\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Format: %s\n"
+" Corked: %s\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Buffer Latency: %0.0f usec\n"
+" Sink Latency: %0.0f usec\n"
+" Resample method: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"シンク入力 #%u\n"
-"\tドライバー: %s\n"
-"\tオーナーモジュール: %s\n"
-"\tクライアント: %s\n"
-"\tシンク: %u\n"
-"\tサンプル仕様: %s\n"
-"\tチャンネルマップ: %s\n"
-"\t形式: %s\n"
-"\tミュート: %s\n"
-"\tボリューム: %s\n"
-"\t %s\n"
-"\t バランス %0.2f\n"
-"\tバッファレイテンシー: %0.0f usec\n"
-"\tシンクレイテンシー: %0.0f usec\n"
-"\t再サンプル方法: %s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:663 ../src/utils/pactl.c:887
+" ドライバー: %s\n"
+" 所有者モジュール: %s\n"
+" クライアント: %s\n"
+" シンク: %u\n"
+" サンプル仕様: %s\n"
+" チャンネルマップ: %s\n"
+" 形式: %s\n"
+" コルク: %s\n"
+" ミュート: %s\n"
+" ボリューム: %s\n"
+" バランス %0.2f\n"
+" バッファー待機時間: %0.0f usec\n"
+" シンク待機時間: %0.0f usec\n"
+" リサンプル方法: %s\n"
+" プロパティ:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:692 ../src/utils/pactl.c:960 ../src/utils/pactl.c:1023
#, c-format
msgid "Failed to get source output information: %s"
msgstr "ソース出力情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:693
+#: ../src/utils/pactl.c:721
#, c-format
msgid ""
"Source Output #%u\n"
-"\tDriver: %s\n"
-"\tOwner Module: %s\n"
-"\tClient: %s\n"
-"\tSource: %u\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tFormat: %s\n"
-"\tMute: %s\n"
-"\tVolume: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tBuffer Latency: %0.0f usec\n"
-"\tSource Latency: %0.0f usec\n"
-"\tResample method: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" Driver: %s\n"
+" Owner Module: %s\n"
+" Client: %s\n"
+" Source: %u\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Format: %s\n"
+" Corked: %s\n"
+" Mute: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Buffer Latency: %0.0f usec\n"
+" Source Latency: %0.0f usec\n"
+" Resample method: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"ソース出力 #%u\n"
-"\tドライバー: %s\n"
-"\tオーナーモジュール: %s\n"
-"\tクライアント: %s\n"
-"\tソース: %u\n"
-"\tサンプル仕様: %s\n"
-"\tチャンネルマップ: %s\n"
-"\t形式: %s\n"
-"\tミュート: %s\n"
-"\tボリューム: %s\n"
-"\t %s\n"
-"\t バランス %0.2f\n"
-"\tバッファレイテンシー: %0.0f usec\n"
-"\tソースレイテンシー: %0.0f usec\n"
-"\t再サンプル方法: %s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:734
+" ドライバー: %s\n"
+" 所有者モジュール: %s\n"
+" クライアント: %s\n"
+" ソース: %u\n"
+" サンプル仕様: %s\n"
+" チャンネルマップ: %s\n"
+" 形式: %s\n"
+" コルク: %s\n"
+" ミュート: %s\n"
+" ボリューム: %s\n"
+" バランス %0.2f\n"
+" バッファー待機時間: %0.0f usec\n"
+" ソース待機時間: %0.0f usec\n"
+" リサンプル方法: %s\n"
+" プロパティ:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:762
#, c-format
msgid "Failed to get sample information: %s"
msgstr "サンプル情報の取得に失敗しました: %s"
-#: ../src/utils/pactl.c:761
+#: ../src/utils/pactl.c:789
#, c-format
msgid ""
"Sample #%u\n"
-"\tName: %s\n"
-"\tSample Specification: %s\n"
-"\tChannel Map: %s\n"
-"\tVolume: %s\n"
-"\t %s\n"
-"\t balance %0.2f\n"
-"\tDuration: %0.1fs\n"
-"\tSize: %s\n"
-"\tLazy: %s\n"
-"\tFilename: %s\n"
-"\tProperties:\n"
-"\t\t%s\n"
+" Name: %s\n"
+" Sample Specification: %s\n"
+" Channel Map: %s\n"
+" Volume: %s\n"
+" balance %0.2f\n"
+" Duration: %0.1fs\n"
+" Size: %s\n"
+" Lazy: %s\n"
+" Filename: %s\n"
+" Properties:\n"
+" %s\n"
msgstr ""
"サンプル #%u\n"
-"\t名前: %s\n"
-"\tサンプル仕様: %s\n"
-"\tチャンネルマップ: %s\n"
-"\tボリューム: %s\n"
-"\t %s\n"
-"\t バランス %0.2f\n"
-"\t継続期間: %0.1fs\n"
-"\tサイズ: %s\n"
-"\tレイジー: %s\n"
-"\tファイル名: %s\n"
-"\tプロパティ:\n"
-"\t\t%s\n"
-
-#: ../src/utils/pactl.c:791 ../src/utils/pactl.c:801
+" 名前: %s\n"
+" サンプル仕様: %s\n"
+" チャンネルマップ: %s\n"
+" ボリューム: %s\n"
+" バランス %0.2f\n"
+" 期間: %0.1fs\n"
+" サイズ: %s\n"
+" 遅延: %s\n"
+" ファイル名: %s\n"
+" プロパティ:\n"
+" %s\n"
+
+#: ../src/utils/pactl.c:817 ../src/utils/pactl.c:827
#, c-format
msgid "Failure: %s"
msgstr "失敗: %s"
-#: ../src/utils/pactl.c:915
+#: ../src/utils/pactl.c:866
+#, c-format
+msgid "Failed to unload module: Module %s not loaded"
+msgstr "モジュールのアンロードに失敗: モジュール %s はロードされていません"
+
+#: ../src/utils/pactl.c:884
+#, c-format
+msgid ""
+"Failed to set volume: You tried to set volumes for %d channels, whereas "
+"channel/s supported = %d\n"
+msgstr "ボリュームの設定に失敗: %d チャンネルのボリューム設定を試みましたが、 チャンネルはサポートされています = %d\n"
+
+#: ../src/utils/pactl.c:1050
#, c-format
msgid "Failed to set format: invalid format string %s"
msgstr "形式のセットに失敗しました: 無効な形式文字列 %s"
-#: ../src/utils/pactl.c:954
+#: ../src/utils/pactl.c:1093
#, c-format
msgid "Failed to upload sample: %s"
msgstr "サンプルのアップロードに失敗しました: %s"
-#: ../src/utils/pactl.c:971
+#: ../src/utils/pactl.c:1110
msgid "Premature end of file"
msgstr "ファイルの早期終了"
-#: ../src/utils/pactl.c:991
+#: ../src/utils/pactl.c:1130
msgid "new"
msgstr "新規"
-#: ../src/utils/pactl.c:994
+#: ../src/utils/pactl.c:1133
msgid "change"
msgstr "変更"
-#: ../src/utils/pactl.c:997
+#: ../src/utils/pactl.c:1136
msgid "remove"
msgstr "削除"
-#: ../src/utils/pactl.c:1000 ../src/utils/pactl.c:1035
+#: ../src/utils/pactl.c:1139 ../src/utils/pactl.c:1174
msgid "unknown"
msgstr "不明"
-#: ../src/utils/pactl.c:1008
+#: ../src/utils/pactl.c:1147
msgid "sink"
msgstr "シンク"
-#: ../src/utils/pactl.c:1011
+#: ../src/utils/pactl.c:1150
msgid "source"
msgstr "ソース"
-#: ../src/utils/pactl.c:1014
+#: ../src/utils/pactl.c:1153
msgid "sink-input"
msgstr "シンク入力"
-#: ../src/utils/pactl.c:1017
+#: ../src/utils/pactl.c:1156
msgid "source-output"
msgstr "ソース出力"
-#: ../src/utils/pactl.c:1020
+#: ../src/utils/pactl.c:1159
msgid "module"
msgstr "モジュール"
-#: ../src/utils/pactl.c:1023
+#: ../src/utils/pactl.c:1162
msgid "client"
msgstr "クライアント"
-#: ../src/utils/pactl.c:1026
+#: ../src/utils/pactl.c:1165
msgid "sample-cache"
msgstr "サンプルキャッシュ"
-#: ../src/utils/pactl.c:1029 ../src/utils/pactl.c:1032
+#: ../src/utils/pactl.c:1168
msgid "server"
msgstr "サーバー"
-#: ../src/utils/pactl.c:1041
+#: ../src/utils/pactl.c:1171
+msgid "card"
+msgstr "カード"
+
+#: ../src/utils/pactl.c:1180
#, c-format
msgid "Event '%s' on %s #%u\n"
msgstr "イベント '%s' が %s #%u 上にあります\n"
-#: ../src/utils/pactl.c:1258
+#: ../src/utils/pactl.c:1452
msgid "Got SIGINT, exiting."
msgstr "SIGINT を取得、退出中"
-#: ../src/utils/pactl.c:1285
+#: ../src/utils/pactl.c:1479
msgid "Invalid volume specification"
msgstr "無効なボリューム仕様"
-#: ../src/utils/pactl.c:1308
+#: ../src/utils/pactl.c:1502
msgid "Volume outside permissible range.\n"
msgstr "許容範囲外のボリューム\n"
-#: ../src/utils/pactl.c:1319 ../src/utils/pactl.c:1320
-#: ../src/utils/pactl.c:1321 ../src/utils/pactl.c:1322
-#: ../src/utils/pactl.c:1323 ../src/utils/pactl.c:1324
-#: ../src/utils/pactl.c:1325 ../src/utils/pactl.c:1326
-#: ../src/utils/pactl.c:1327 ../src/utils/pactl.c:1328
-#: ../src/utils/pactl.c:1329 ../src/utils/pactl.c:1330
-#: ../src/utils/pactl.c:1331 ../src/utils/pactl.c:1332
-#: ../src/utils/pactl.c:1333 ../src/utils/pactl.c:1334
-#: ../src/utils/pactl.c:1335 ../src/utils/pactl.c:1336
-#: ../src/utils/pactl.c:1337
+#: ../src/utils/pactl.c:1515
+msgid "Invalid number of volume specifications.\n"
+msgstr "ボリューム仕様の数が無効。\n"
+
+#: ../src/utils/pactl.c:1527
+msgid "Inconsistent volume specification.\n"
+msgstr "ボリューム仕様が非整合。\n"
+
+#: ../src/utils/pactl.c:1557 ../src/utils/pactl.c:1558
+#: ../src/utils/pactl.c:1559 ../src/utils/pactl.c:1560
+#: ../src/utils/pactl.c:1561 ../src/utils/pactl.c:1562
+#: ../src/utils/pactl.c:1563 ../src/utils/pactl.c:1564
+#: ../src/utils/pactl.c:1565 ../src/utils/pactl.c:1566
+#: ../src/utils/pactl.c:1567 ../src/utils/pactl.c:1568
+#: ../src/utils/pactl.c:1569 ../src/utils/pactl.c:1570
+#: ../src/utils/pactl.c:1571 ../src/utils/pactl.c:1572
+#: ../src/utils/pactl.c:1573 ../src/utils/pactl.c:1574
+#: ../src/utils/pactl.c:1575 ../src/utils/pactl.c:1576
+#: ../src/utils/pactl.c:1577
msgid "[options]"
msgstr "[オプション]"
-#: ../src/utils/pactl.c:1321
+#: ../src/utils/pactl.c:1559
msgid "[TYPE]"
msgstr "[タイプ]"
-#: ../src/utils/pactl.c:1323
+#: ../src/utils/pactl.c:1561
msgid "FILENAME [NAME]"
msgstr "ファイル名 [名前]"
-#: ../src/utils/pactl.c:1324
+#: ../src/utils/pactl.c:1562
msgid "NAME [SINK]"
msgstr "名前 [シンク]"
-#: ../src/utils/pactl.c:1325
-msgid "NAME"
-msgstr "名前"
-
-#: ../src/utils/pactl.c:1326
-msgid "NAME [ARGS ...]"
-msgstr "名前 [引数 ...]"
+#: ../src/utils/pactl.c:1571
+msgid "NAME|#N VOLUME [VOLUME ...]"
+msgstr "名前|#N ボリューム [ボリューム ...]"
-#: ../src/utils/pactl.c:1327
-msgid "#N"
-msgstr "#N"
+#: ../src/utils/pactl.c:1572
+msgid "#N VOLUME [VOLUME ...]"
+msgstr "#N ボリューム [ボリューム ...]"
-#: ../src/utils/pactl.c:1328
-msgid "#N SINK|SOURCE"
-msgstr "#N シンク|ソース"
-
-#: ../src/utils/pactl.c:1329 ../src/utils/pactl.c:1334
-msgid "NAME|#N 1|0"
-msgstr "名前|#N 1|0"
-
-#: ../src/utils/pactl.c:1330
-msgid "CARD PROFILE"
-msgstr "カードプロフィール"
-
-#: ../src/utils/pactl.c:1331
-msgid "NAME|#N PORT"
-msgstr "名前|#N ポート"
-
-#: ../src/utils/pactl.c:1332
-msgid "NAME|#N VOLUME"
-msgstr "名前|#N ボリューム"
-
-#: ../src/utils/pactl.c:1333
-msgid "#N VOLUME"
-msgstr "#N ボリューム"
+#: ../src/utils/pactl.c:1573
+msgid "NAME|#N 1|0|toggle"
+msgstr "名前|#N 1|0|切り替え"
-#: ../src/utils/pactl.c:1335
-msgid "#N 1|0"
-msgstr "#N 1|0"
+#: ../src/utils/pactl.c:1574
+msgid "#N 1|0|toggle"
+msgstr "#N 1|0|切り替え"
-#: ../src/utils/pactl.c:1336
+#: ../src/utils/pactl.c:1575
msgid "#N FORMATS"
msgstr "#N 形式"
-#: ../src/utils/pactl.c:1339
+#: ../src/utils/pactl.c:1578
+#, c-format
+msgid ""
+"\n"
+"The special names @DEFAULT_SINK@, @DEFAULT_SOURCE@ and @DEFAULT_MONITOR@\n"
+"can be used to specify the default sink, source and monitor.\n"
+msgstr ""
+"\n"
+"特別な名前 @DEFAULT_SINK@, @DEFAULT_SOURCE@ と @DEFAULT_MONITOR@\n"
+"を使用して、デフォルトのシンク、ソースおよびモニターを指定することができます。\n"
+
+#: ../src/utils/pactl.c:1581
#, c-format
msgid ""
"\n"
" -h, --help Show this help\n"
" --version Show version\n"
"\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
+" -s, --server=SERVER The name of the server to connect to\n"
" -n, --client-name=NAME How to call this client on the "
"server\n"
msgstr ""
@@ -2278,149 +2707,245 @@ msgstr ""
" -s, --server=SERVER 接続先サーバーの名前\n"
" -n, --client-name=NAME サーバーでこのクライアントへのコール方法\n"
-#: ../src/utils/pactl.c:1380
+#: ../src/utils/pactl.c:1622
#, c-format
-msgid ""
-"pactl %s\n"
+msgid "pactl %s\n"
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-msgstr ""
-"pactl %s\n"
+msgstr "pactl %s\n"
"libpulse %s でコンパイル\n"
"libpulse %s でリンク\n"
-#: ../src/utils/pactl.c:1439
+#: ../src/utils/pactl.c:1678
#, c-format
msgid "Specify nothing, or one of: %s"
msgstr "何も指定しないか以下から1つ指定してください: %s"
-#: ../src/utils/pactl.c:1449
+#: ../src/utils/pactl.c:1688
msgid "Please specify a sample file to load"
msgstr "ロードするサンプルファイルを指定して下さい"
-#: ../src/utils/pactl.c:1462
+#: ../src/utils/pactl.c:1701
msgid "Failed to open sound file."
msgstr "サウンドファイルを開くのに失敗しました。"
-#: ../src/utils/pactl.c:1474
+#: ../src/utils/pactl.c:1713
msgid "Warning: Failed to determine sample specification from file."
msgstr "警告: ファイルからサンプル仕様を決定するのに失敗しました。"
-#: ../src/utils/pactl.c:1484
+#: ../src/utils/pactl.c:1723
msgid "You have to specify a sample name to play"
msgstr "再生するサンプル名を指定する必要があります"
-#: ../src/utils/pactl.c:1496
+#: ../src/utils/pactl.c:1735
msgid "You have to specify a sample name to remove"
msgstr "削除するサンプル名を指定する必要があります。"
-#: ../src/utils/pactl.c:1505
+#: ../src/utils/pactl.c:1744
msgid "You have to specify a sink input index and a sink"
msgstr "シンク入力インデックスとシンクを指定する必要があります"
-#: ../src/utils/pactl.c:1515
+#: ../src/utils/pactl.c:1754
msgid "You have to specify a source output index and a source"
msgstr "ソース出力インデックスとソースを指定する必要があります"
-#: ../src/utils/pactl.c:1530
+#: ../src/utils/pactl.c:1769
msgid "You have to specify a module name and arguments."
msgstr "モジュール名と引数を指定する必要があります"
-#: ../src/utils/pactl.c:1550
-msgid "You have to specify a module index"
-msgstr "モジュールインデックスを指定する必要があります"
+#: ../src/utils/pactl.c:1789
+msgid "You have to specify a module index or name"
+msgstr "モジュールインデックスもしくは名前を指定する必要があります"
-#: ../src/utils/pactl.c:1560
+#: ../src/utils/pactl.c:1802
msgid ""
"You may not specify more than one sink. You have to specify a boolean value."
-msgstr ""
-"シンクは1つ以上は指定できません。ブーリアン値を1つ指定する必要があります。"
+msgstr "シンクは1つ以上は指定できません。ブーリアン値を1つ指定する必要があります。"
-#: ../src/utils/pactl.c:1573
+#: ../src/utils/pactl.c:1807 ../src/utils/pactl.c:1827
+msgid "Invalid suspend specification."
+msgstr "無効なサスペンド仕様。"
+
+#: ../src/utils/pactl.c:1822
msgid ""
"You may not specify more than one source. You have to specify a boolean "
"value."
-msgstr ""
-"ソースは1つ以上は指定できません。ブーリアン値を1つ指定する必要があります。"
+msgstr "ソースは1つ以上は指定できません。ブーリアン値を1つ指定する必要があります。"
-#: ../src/utils/pactl.c:1585
+#: ../src/utils/pactl.c:1839
msgid "You have to specify a card name/index and a profile name"
msgstr "カードの名前/インデックスとプロフィール名を指定する必要があります"
-#: ../src/utils/pactl.c:1596
+#: ../src/utils/pactl.c:1850
msgid "You have to specify a sink name/index and a port name"
msgstr "シンクの名前/インデックスとポート名を指定する必要があります"
-#: ../src/utils/pactl.c:1607
+#: ../src/utils/pactl.c:1861
+msgid "You have to specify a sink name"
+msgstr "シンクの名前を指定する必要があります"
+
+#: ../src/utils/pactl.c:1871
msgid "You have to specify a source name/index and a port name"
msgstr "ソースの名前/インデックスとポート名を指定する必要があります"
-#: ../src/utils/pactl.c:1618
+#: ../src/utils/pactl.c:1882
+msgid "You have to specify a source name"
+msgstr "ソースの名前を指定する必要があります"
+
+#: ../src/utils/pactl.c:1892
msgid "You have to specify a sink name/index and a volume"
msgstr "シンクの名前/インデックスとボリュームを指定する必要があります"
-#: ../src/utils/pactl.c:1631
+#: ../src/utils/pactl.c:1905
msgid "You have to specify a source name/index and a volume"
msgstr "ソースの名前/インデックスとボリュームを指定する必要があります"
-#: ../src/utils/pactl.c:1644
+#: ../src/utils/pactl.c:1918
msgid "You have to specify a sink input index and a volume"
msgstr "シンク入力インデックスとボリュームを指定する必要があります"
-#: ../src/utils/pactl.c:1649
+#: ../src/utils/pactl.c:1923
msgid "Invalid sink input index"
msgstr "無効なシンク入力インデックス"
-#: ../src/utils/pactl.c:1660
+#: ../src/utils/pactl.c:1934
msgid "You have to specify a source output index and a volume"
msgstr "ソース出力インデックスとボリュームを指定する必要があります"
-#: ../src/utils/pactl.c:1665
+#: ../src/utils/pactl.c:1939
msgid "Invalid source output index"
msgstr "無効なソース出力インデックス"
-#: ../src/utils/pactl.c:1677
+#: ../src/utils/pactl.c:1950
msgid "You have to specify a sink name/index and a mute boolean"
msgstr "シンクの名前/インデックスとミュートブーリアンを指定する必要があります"
-#: ../src/utils/pactl.c:1682 ../src/utils/pactl.c:1699
-#: ../src/utils/pactl.c:1721 ../src/utils/pactl.c:1742
+#: ../src/utils/pactl.c:1955 ../src/utils/pactl.c:1970
+#: ../src/utils/pactl.c:1990 ../src/utils/pactl.c:2008
msgid "Invalid mute specification"
msgstr "無効なミュート仕様"
-#: ../src/utils/pactl.c:1694
+#: ../src/utils/pactl.c:1965
msgid "You have to specify a source name/index and a mute boolean"
msgstr "ソースの名前/インデックスとミュートブーリアンを指定する必要があります"
-#: ../src/utils/pactl.c:1711
+#: ../src/utils/pactl.c:1980
msgid "You have to specify a sink input index and a mute boolean"
msgstr "シンク入力インデックスとミュートブーリアンを指定する必要があります"
-#: ../src/utils/pactl.c:1716
+#: ../src/utils/pactl.c:1985
msgid "Invalid sink input index specification"
msgstr "無効なシンク入力インデックス仕様"
-#: ../src/utils/pactl.c:1732
+#: ../src/utils/pactl.c:1998
msgid "You have to specify a source output index and a mute boolean"
msgstr "ソース出力インデックスとミュートブーリアンを指定する必要があります"
-#: ../src/utils/pactl.c:1737
+#: ../src/utils/pactl.c:2003
msgid "Invalid source output index specification"
msgstr "無効なソース出力インデックス仕様"
-#: ../src/utils/pactl.c:1756
+#: ../src/utils/pactl.c:2020
msgid ""
"You have to specify a sink index and a semicolon-separated list of supported "
"formats"
-msgstr ""
-"シンクのインデックスとサポートしている形式のセミコロンで隔離した一覧を"
-"指定する必要があります"
+msgstr "シンクのインデックスとサポートしている形式のセミコロンで隔離した一覧を指定する必要があります"
+
+#: ../src/utils/pactl.c:2032
+msgid ""
+"You have to specify a card name/index, a port name and a latency offset"
+msgstr "カードの名前/インデックス、ポート名および待機時間オフセットを指定する必要があります"
-#: ../src/utils/pactl.c:1772
+#: ../src/utils/pactl.c:2039
+msgid "Could not parse latency offset"
+msgstr "待機時間オフセットを解析できませんでした"
+
+#: ../src/utils/pactl.c:2051
msgid "No valid command specified."
msgstr "有効なコマンドが指定されていません"
-#: ../src/utils/pax11publish.c:61
+#: ../src/utils/pasuspender.c:79
+#, c-format
+msgid "fork(): %s\n"
+msgstr "fork(): %s\n"
+
+#: ../src/utils/pasuspender.c:92
+#, c-format
+msgid "execvp(): %s\n"
+msgstr "execvp(): %s\n"
+
+#: ../src/utils/pasuspender.c:111
+#, c-format
+msgid "Failure to resume: %s\n"
+msgstr "復帰の失敗: %s\n"
+
+#: ../src/utils/pasuspender.c:145
+#, c-format
+msgid "Failure to suspend: %s\n"
+msgstr "休止の失敗: %s\n"
+
+#: ../src/utils/pasuspender.c:170
+#, c-format
+msgid "WARNING: Sound server is not local, not suspending.\n"
+msgstr "警告: サウンドサーバーはローカルではありません。休止しません。\n"
+
+#: ../src/utils/pasuspender.c:183
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "接続失敗 : %s\n"
+
+#: ../src/utils/pasuspender.c:201
+#, c-format
+msgid "Got SIGINT, exiting.\n"
+msgstr "SIGINT 取得、退出中\n"
+
+#: ../src/utils/pasuspender.c:219
+#, c-format
+msgid "WARNING: Child process terminated by signal %u\n"
+msgstr "警告: 子プロセスは信号 %u で終了しました\n"
+
+#: ../src/utils/pasuspender.c:228
+#, c-format
+msgid ""
+"%s [options] ... \n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+"\n"
+msgstr ""
+"%s [オプション] ... \n"
+"\n"
+" -h, --help このヘルプを表示\n"
+" --version バージョンを表示\n"
+" -s, --server=SERVER 接続先サーバーの名前\n"
+"\n"
+
+#: ../src/utils/pasuspender.c:266
+#, c-format
+msgid "pasuspender %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr "pasuspender %s\n"
+"libpulse %s でコンパイル\n"
+"libpulse %s でリンク\n"
+
+#: ../src/utils/pasuspender.c:295
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() は失敗\n"
+
+#: ../src/utils/pasuspender.c:308
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() は失敗\n"
+
+#: ../src/utils/pasuspender.c:320
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() は失敗\n"
+
+#: ../src/utils/pax11publish.c:58
#, c-format
msgid ""
"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
@@ -2433,523 +2958,57 @@ msgid ""
msgstr ""
"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
"\n"
-" -d X11 ディスプレイに接続した現在の PulseAudio のデータを表示 (デフォル"
-"ト)\n"
+" -d X11 ディスプレイに接続した現在の PulseAudio のデータを表示 (デフォルト)\n"
" -e X11 ディスプレイにローカル PulseAudio データをエキスポート\n"
-" -i X11 ディスプレイからローカル環境変数とクッキーに PulseAudio データをイ"
-"ンポート\n"
+" -i X11 ディスプレイからローカル環境変数とクッキーに PulseAudio データをインポート\n"
" -r X11 ディスプレイから PulseAudio データを削除\n"
-#: ../src/utils/pax11publish.c:94
+#: ../src/utils/pax11publish.c:91
#, c-format
msgid "Failed to parse command line.\n"
msgstr "コマンドラインの構文解析に失敗\n"
-#: ../src/utils/pax11publish.c:113
+#: ../src/utils/pax11publish.c:110
#, c-format
msgid "Server: %s\n"
msgstr "サーバー: %s\n"
-#: ../src/utils/pax11publish.c:115
+#: ../src/utils/pax11publish.c:112
#, c-format
msgid "Source: %s\n"
msgstr "ソース: %s\n"
-#: ../src/utils/pax11publish.c:117
+#: ../src/utils/pax11publish.c:114
#, c-format
msgid "Sink: %s\n"
msgstr "シンク: %s\n"
-#: ../src/utils/pax11publish.c:119
+#: ../src/utils/pax11publish.c:116
#, c-format
msgid "Cookie: %s\n"
msgstr "クッキー: %s\n"
-#: ../src/utils/pax11publish.c:137
+#: ../src/utils/pax11publish.c:134
#, c-format
msgid "Failed to parse cookie data\n"
msgstr "クッキーデータの構文解析に失敗\n"
-#: ../src/utils/pax11publish.c:142
+#: ../src/utils/pax11publish.c:139
#, c-format
msgid "Failed to save cookie data\n"
msgstr "クッキーデータの保存に失敗\n"
-#: ../src/utils/pax11publish.c:157
-#, c-format
-msgid "Failed to load client configuration file.\n"
-msgstr "クライアント設定ファイルのロードに失敗\n"
-
-#: ../src/utils/pax11publish.c:162
-#, c-format
-msgid "Failed to read environment configuration data.\n"
-msgstr "環境設定データの読み込みに失敗\n"
-
-#: ../src/utils/pax11publish.c:179
+#: ../src/utils/pax11publish.c:168
#, c-format
msgid "Failed to get FQDN.\n"
msgstr "FQDN の取得に失敗\n"
-#: ../src/utils/pax11publish.c:199
+#: ../src/utils/pax11publish.c:188
#, c-format
msgid "Failed to load cookie data\n"
msgstr "クッキーデータのロードに失敗\n"
-#: ../src/utils/pax11publish.c:217
+#: ../src/utils/pax11publish.c:206
#, c-format
msgid "Not yet implemented.\n"
msgstr "まだ実装されていません\n"
-
-#: ../src/utils/pacmd.c:66
-msgid "No PulseAudio daemon running, or not running as session daemon."
-msgstr ""
-"PulseAudio デーモン自身が稼働していないか、又はセッションデーモンとして稼働し"
-"ていません。"
-
-#: ../src/utils/pacmd.c:71
-#, c-format
-msgid "socket(PF_UNIX, SOCK_STREAM, 0): %s"
-msgstr "ソケット (PF_UNIX, SOCK_STREAM, 0): %s"
-
-#: ../src/utils/pacmd.c:88
-#, c-format
-msgid "connect(): %s"
-msgstr "connect(): %s"
-
-#: ../src/utils/pacmd.c:96
-msgid "Failed to kill PulseAudio daemon."
-msgstr "PulseAudio のキルに失敗"
-
-#: ../src/utils/pacmd.c:104
-msgid "Daemon not responding."
-msgstr "デーモンが応答しません"
-
-#: ../src/utils/pacmd.c:184
-#, c-format
-msgid "poll(): %s"
-msgstr "poll(): %s"
-
-#: ../src/utils/pacmd.c:195 ../src/utils/pacmd.c:215
-#, c-format
-msgid "read(): %s"
-msgstr "read(): %s"
-
-#: ../src/utils/pacmd.c:237 ../src/utils/pacmd.c:255
-#, c-format
-msgid "write(): %s"
-msgstr "write(): %s"
-
-#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:222
-msgid "Cannot access autospawn lock."
-msgstr "autospawn ロックにアクセスできません"
-
-#: ../src/modules/alsa/alsa-sink.c:560 ../src/modules/alsa/alsa-sink.c:726
-#, c-format
-msgid ""
-"ALSA woke us up to write new data to the device, but there was actually "
-"nothing to write!\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
-msgstr ""
-"ALSA が新規のデータをデバイスに書き込むように催促しましたが、書き込むことが"
-"ありません!\n"
-"これは多分、ALSA ドライバー '%s' 内のバグです。この問題を ALSA 開発者に 報告"
-"して下さい。\n"
-"POLLOUT セットで呼び起こされましたが、その結果としての snd_pcm_avail() は 0 "
-"又は他の値 < min_avail を返しました。"
-
-#: ../src/modules/alsa/alsa-source.c:519 ../src/modules/alsa/alsa-source.c:672
-#, c-format
-msgid ""
-"ALSA woke us up to read new data from the device, but there was actually "
-"nothing to read!\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
-msgstr ""
-"ALSA はデバイスから新規データを読み込むように催促しましたが、読み込むものが"
-"ありません!\n"
-"これは多分、ALSA ドライバー'%s' 内のバグです。この問題を ALSA 開発者に報告し"
-"て下さい。\n"
-"POLLIN セットで呼び起こされましたが、その結果としての snd_pcm_avail() は 0 又"
-"は他の値 < min_avail を返しました。"
-
-#: ../src/modules/alsa/module-alsa-card.c:167
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2796
-#: ../src/modules/alsa/alsa-mixer.c:3898
-msgid "Off"
-msgstr "オフ"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2738
-msgid "High Fidelity Playback (A2DP)"
-msgstr "ハイファイ再生 (A2DP)"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2752
-msgid "High Fidelity Capture (A2DP)"
-msgstr "ハイファイキャプチャ (A2DP)"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2767
-msgid "Telephony Duplex (HSP/HFP)"
-msgstr "テレフォニーデュプレックス (HSP/HFP)"
-
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2781
-msgid "Handsfree Gateway"
-msgstr "ハンズフリーゲートウェイ"
-
-#: ../src/modules/reserve-wrap.c:151
-msgid "PulseAudio Sound Server"
-msgstr "PulseAudio サウンドサーバー"
-
-#: ../src/modules/module-rygel-media-server.c:510
-#: ../src/modules/module-rygel-media-server.c:548
-#: ../src/modules/module-rygel-media-server.c:903
-msgid "Output Devices"
-msgstr "出力デバイス"
-
-#: ../src/modules/module-rygel-media-server.c:511
-#: ../src/modules/module-rygel-media-server.c:549
-#: ../src/modules/module-rygel-media-server.c:904
-msgid "Input Devices"
-msgstr "入力デバイス"
-
-#: ../src/modules/module-rygel-media-server.c:1056
-msgid "Audio on @HOSTNAME@"
-msgstr "@HOSTNAME@ 上のオーディオ"
-
-#: ../src/modules/alsa/alsa-mixer.c:2219
-msgid "Input"
-msgstr "入力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2220
-msgid "Docking Station Input"
-msgstr "ドッキングステーション入力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2221
-msgid "Docking Station Microphone"
-msgstr "ドッキングステーションマイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2222
-msgid "Docking Station Line In"
-msgstr "ドッキングステーションライン入力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2223 ../src/modules/alsa/alsa-mixer.c:2307
-msgid "Line In"
-msgstr "ラインイン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2224 ../src/modules/alsa/alsa-mixer.c:2302
-msgid "Microphone"
-msgstr "マイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2225 ../src/modules/alsa/alsa-mixer.c:2303
-msgid "Front Microphone"
-msgstr "フロントマイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2226 ../src/modules/alsa/alsa-mixer.c:2304
-msgid "Rear Microphone"
-msgstr "リアマイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2227
-msgid "External Microphone"
-msgstr "外部マイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2228 ../src/modules/alsa/alsa-mixer.c:2306
-msgid "Internal Microphone"
-msgstr "内部マイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2229 ../src/modules/alsa/alsa-mixer.c:2308
-msgid "Radio"
-msgstr "ラジオ"
-
-#: ../src/modules/alsa/alsa-mixer.c:2230 ../src/modules/alsa/alsa-mixer.c:2309
-msgid "Video"
-msgstr "ビデオ"
-
-#: ../src/modules/alsa/alsa-mixer.c:2231
-msgid "Automatic Gain Control"
-msgstr "自動ゲイン制御"
-
-#: ../src/modules/alsa/alsa-mixer.c:2232
-msgid "No Automatic Gain Control"
-msgstr "自動ゲイン制御なし"
-
-#: ../src/modules/alsa/alsa-mixer.c:2233
-msgid "Boost"
-msgstr "ブースト"
-
-#: ../src/modules/alsa/alsa-mixer.c:2234
-msgid "No Boost"
-msgstr "ブーストなし"
-
-#: ../src/modules/alsa/alsa-mixer.c:2235
-msgid "Amplifier"
-msgstr "アンプ"
-
-#: ../src/modules/alsa/alsa-mixer.c:2236
-msgid "No Amplifier"
-msgstr "アンプなし"
-
-#: ../src/modules/alsa/alsa-mixer.c:2237
-msgid "Bass Boost"
-msgstr "低音ブースト"
-
-#: ../src/modules/alsa/alsa-mixer.c:2238
-msgid "No Bass Boost"
-msgstr "低音ブーストなし"
-
-#: ../src/modules/alsa/alsa-mixer.c:2239
-msgid "Speaker"
-msgstr "スピーカー"
-
-#: ../src/modules/alsa/alsa-mixer.c:2240 ../src/modules/alsa/alsa-mixer.c:2311
-msgid "Headphones"
-msgstr "アナログヘッドフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2301
-msgid "Analog Input"
-msgstr "アナログ入力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2305
-msgid "Dock Microphone"
-msgstr "ドッキングステーションマイクロフォン"
-
-#: ../src/modules/alsa/alsa-mixer.c:2310
-msgid "Analog Output"
-msgstr "アナログ出力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2312
-msgid "LFE on Separate Mono Output"
-msgstr "アナログ出力 (LFE)"
-
-#: ../src/modules/alsa/alsa-mixer.c:2313
-msgid "Line Out"
-msgstr "ライン出力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2314
-msgid "Analog Mono Output"
-msgstr "アナログモノ出力"
-
-#: ../src/modules/alsa/alsa-mixer.c:2315
-msgid "Speakers"
-msgstr "スピーカー"
-
-#: ../src/modules/alsa/alsa-mixer.c:2316
-msgid "HDMI / DisplayPort"
-msgstr "HDMI / DisplayPort"
-
-#: ../src/modules/alsa/alsa-mixer.c:2317
-msgid "Digital Output (S/PDIF)"
-msgstr "デジタル出力 (S/PDIF)"
-
-#: ../src/modules/alsa/alsa-mixer.c:2318
-msgid "Digital Passthrough (S/PDIF)"
-msgstr "デジタルパススルー (S/PDIF)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3756
-msgid "Analog Mono"
-msgstr "アナログモノ"
-
-#: ../src/modules/alsa/alsa-mixer.c:3757
-msgid "Analog Stereo"
-msgstr "アナログステレオ"
-
-#: ../src/modules/alsa/alsa-mixer.c:3758
-msgid "Analog Surround 2.1"
-msgstr "アナログサラウンド 2.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3759
-msgid "Analog Surround 3.0"
-msgstr "アナログサラウンド 3.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3760
-msgid "Analog Surround 3.1"
-msgstr "アナログサラウンド 3.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3761
-msgid "Analog Surround 4.0"
-msgstr "アナログサラウンド 4.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3762
-msgid "Analog Surround 4.1"
-msgstr "アナログサラウンド 4.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3763
-msgid "Analog Surround 5.0"
-msgstr "アナログサラウンド 5.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3764
-msgid "Analog Surround 5.1"
-msgstr "アナログサラウンド 5.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3765
-msgid "Analog Surround 6.0"
-msgstr "アナログサラウンド 6.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3766
-msgid "Analog Surround 6.1"
-msgstr "アナログサラウンド 6.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3767
-msgid "Analog Surround 7.0"
-msgstr "アナログサラウンド 7.0"
-
-#: ../src/modules/alsa/alsa-mixer.c:3768
-msgid "Analog Surround 7.1"
-msgstr "アナログサラウンド 7.1"
-
-#: ../src/modules/alsa/alsa-mixer.c:3769
-msgid "Digital Stereo (IEC958)"
-msgstr "デジタルステレオ (IEC958)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3770
-msgid "Digital Passthrough (IEC958)"
-msgstr "デジタルパススルー (IEC958)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3771
-msgid "Digital Surround 4.0 (IEC958/AC3)"
-msgstr "デジタルサラウンド 4.0 (IEC958/AC3)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3772
-msgid "Digital Surround 5.1 (IEC958/AC3)"
-msgstr "デジタルサラウンド 5.1 (IEC958/AC3)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3773
-msgid "Digital Stereo (HDMI)"
-msgstr "デジタルステレオ (HDMI)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3774
-msgid "Digital Surround 5.1 (HDMI)"
-msgstr "デジタルサラウンド 5.1 (HDMI)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3895
-msgid "Analog Mono Duplex"
-msgstr "アナログモノデュプレックス"
-
-#: ../src/modules/alsa/alsa-mixer.c:3896
-msgid "Analog Stereo Duplex"
-msgstr "アナログステレオデュプレックス"
-
-#: ../src/modules/alsa/alsa-mixer.c:3897
-msgid "Digital Stereo Duplex (IEC958)"
-msgstr "デジタルステレオデュプレックス (IEC958)"
-
-#: ../src/modules/alsa/alsa-mixer.c:3997
-#, c-format
-msgid "%s Output"
-msgstr "%s 出力"
-
-#: ../src/modules/alsa/alsa-mixer.c:4005
-#, c-format
-msgid "%s Input"
-msgstr "%s 入力"
-
-#: ../src/modules/echo-cancel/module-echo-cancel.c:63
-msgid ""
-"source_name=<name for the source> source_properties=<properties for the "
-"source> source_master=<name of source to filter> sink_name=<name for the "
-"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
-"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
-"much drift to readjust after in ms> format=<sample format> rate=<sample "
-"rate> channels=<number of channels> channel_map=<channel map> "
-"aec_method=<implementation to use> aec_args=<parameters for the AEC engine> "
-"save_aec=<save AEC data in /tmp> autoloaded=<set if this module is being "
-"loaded automatically> use_volume_sharing=<yes or no> "
-msgstr ""
-"source_name=<ソースの名前> source_properties=<ソースのプロパティ> "
-"source_master=<フィルタするソースの名前> sink_name=<シンクの名前> "
-"sink_properties=<シンクのプロパティ> sink_master=<フィルタするシンクの名前> "
-"adjust_time=<レートを再調整する頻度(秒)> adjust_threshold=<再調整するズレ幅の"
-"閾値(ミリ秒)> format=<サンプル形式> rate=<サンプルレート> channels=<チャンネ"
-"ル数> channel_map=<チャンネルマップ> aec_method=<使用する実装> aec_args=<AEC "
-"エンジンのパラメータ> save_aec=</tmp に AEC データを保存> autoloaded=<このモ"
-"ジュールが自動でロードされている場合にセット> use_volume_sharing=<yes 又は "
-"no> "
-
-#: ../src/modules/module-equalizer-sink.c:72
-msgid "General Purpose Equalizer"
-msgstr "多目的イコライザー"
-
-#: ../src/modules/module-equalizer-sink.c:76
-msgid ""
-"sink_name=<name of the sink> sink_properties=<properties for the sink> "
-"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
-"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
-"this module is being loaded automatically> use_volume_sharing=<yes or no> "
-msgstr ""
-"sink_name=<シンクの名前> sink_properties=<シンクのプロパティ> sink_master=<"
-"接続先のシンク> format=<サンプル形式> rate=<サンプルレート> channels=<チャン"
-"ネル数> channel_map=<チャンネルマップ> autoloaded=<このモジュールが自動でロー"
-"ドされている場合にセット> use_volume_sharing=<yes 又は no> "
-
-#: ../src/modules/module-filter-apply.c:48
-msgid "autoclean=<automatically unload unused filters?>"
-msgstr "autoclean=<使っていないフィルターを自動でアンロードするかどうか>"
-
-#: ../src/tests/resampler-test.c:257
-#, c-format
-msgid ""
-"%s [options]\n"
-"\n"
-"-h, --help Show this help\n"
-"-v, --verbose Print debug messages\n"
-" --from-rate=SAMPLERATE From sample rate in Hz (defaults to "
-"44100)\n"
-" --from-format=SAMPLEFORMAT From sample type (defaults to s16le)\n"
-" --from-channels=CHANNELS From number of channels (defaults to "
-"1)\n"
-" --to-rate=SAMPLERATE To sample rate in Hz (defaults to "
-"44100)\n"
-" --to-format=SAMPLEFORMAT To sample type (defaults to s16le)\n"
-" --to-channels=CHANNELS To number of channels (defaults to 1)\n"
-" --resample-method=METHOD Resample method (defaults to auto)\n"
-" --seconds=SECONDS From stream duration (defaults to 60)\n"
-"\n"
-"If the formats are not specified, the test performs all formats "
-"combinations,\n"
-"back and forth.\n"
-"\n"
-"Sample type must be one of s16le, s16be, u8, float32le, float32be, ulaw, "
-"alaw,\n"
-"32le, s32be (defaults to s16ne)\n"
-"\n"
-"See --dump-resample-methods for possible values of resample methods.\n"
-msgstr ""
-"%s [オプション]\n"
-"\n"
-"-h, --help このヘルプを表示\n"
-"-v, --verbose デバッグメッセージを表示\n"
-" --from-rate=SAMPLERATE 変換前サンプルレート (Hz)\n"
-" (デフォルトは 44100)\n"
-" --from-format=SAMPLEFORMAT 変換前サンプルタイプ\n"
-" (デフォルトは s16le)\n"
-" --from-channels=CHANNELS 変換前チャンネル数\n"
-" (デフォルトは 1)\n"
-" --to-rate=SAMPLERATE 変換後サンプルレート (Hz)\n"
-" (デフォルトは 44100)\n"
-" --to-format=SAMPLEFORMAT 変換後サンプルタイプ\n"
-" (デフォルトは s16le)\n"
-" --to-channels=CHANNELS 変換後チャンネル数\n"
-" (デフォルトは 1)\n"
-" --resample-method=METHOD 再サンプリング方法\n"
-" (デフォルトは auto)\n"
-" --seconds=SECONDS 変換前ストリームの秒数\n"
-" (デフォルトは 60)\n"
-"\n"
-"形式が指定されない場合はあらゆる形式の組み合わせをテストします\n"
-"\n"
-"サンプルタイプは s16le, s16be, u8, float32le, float32be, ulaw, alaw,\n"
-"32le, s32be からどれかを選択 (デフォルトは s16ne)\n"
-"\n"
-"再サンプリングに使用可能な値は --dump-resample-methods を参照\n"
-
-#: ../src/tests/resampler-test.c:356
-#, c-format
-msgid "%s %s\n"
-msgstr "%s %s\n"
-
-#: ../src/tests/resampler-test.c:419
-#, c-format
-msgid "=== %d seconds: %d Hz %d ch (%s) -> %d Hz %d ch (%s)"
-msgstr "=== %d 秒: %d Hz %d ch (%s) -> %d Hz %d ch (%s)"
diff --git a/po/kk.gmo b/po/kk.gmo
new file mode 100644
index 0000000..fafa34b
--- /dev/null
+++ b/po/kk.gmo
Binary files differ
diff --git a/po/kk.po b/po/kk.po
new file mode 100644
index 0000000..f75e2a4
--- /dev/null
+++ b/po/kk.po
@@ -0,0 +1,2864 @@
+# Kazakh translation of pulseaudio.
+# Copyright (C) 2020 The pulseaudio authors.
+# This file is distributed under the same license as the pulseaudio package.
+# Baurzhan Muftakhidinov <baurthefirst@gmail.com>, 2020.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/"
+"issues\n"
+"POT-Creation-Date: 2020-06-18 03:28+0000\n"
+"PO-Revision-Date: 2020-06-30 08:04+0500\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 2.3.1\n"
+"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
+"Language: kk\n"
+
+#: src/daemon/cmdline.c:113
+#, c-format
+msgid ""
+"%s [options]\n"
+"\n"
+"COMMANDS:\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" --dump-conf Dump default configuration\n"
+" --dump-modules Dump list of available modules\n"
+" --dump-resample-methods Dump available resample methods\n"
+" --cleanup-shm Cleanup stale shared memory "
+"segments\n"
+" --start Start the daemon if it is not "
+"running\n"
+" -k --kill Kill a running daemon\n"
+" --check Check for a running daemon (only "
+"returns exit code)\n"
+"\n"
+"OPTIONS:\n"
+" --system[=BOOL] Run as system-wide instance\n"
+" -D, --daemonize[=BOOL] Daemonize after startup\n"
+" --fail[=BOOL] Quit when startup fails\n"
+" --high-priority[=BOOL] Try to set high nice level\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_NICE)\n"
+" --realtime[=BOOL] Try to enable realtime scheduling\n"
+" (only available as root, when SUID "
+"or\n"
+" with elevated RLIMIT_RTPRIO)\n"
+" --disallow-module-loading[=BOOL] Disallow user requested module\n"
+" loading/unloading after startup\n"
+" --disallow-exit[=BOOL] Disallow user requested exit\n"
+" --exit-idle-time=SECS Terminate the daemon when idle and "
+"this\n"
+" time passed\n"
+" --scache-idle-time=SECS Unload autoloaded samples when idle "
+"and\n"
+" this time passed\n"
+" --log-level[=LEVEL] Increase or set verbosity level\n"
+" -v --verbose Increase the verbosity level\n"
+" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
+" Specify the log target\n"
+" --log-meta[=BOOL] Include code location in log "
+"messages\n"
+" --log-time[=BOOL] Include timestamps in log messages\n"
+" --log-backtrace=FRAMES Include a backtrace in log messages\n"
+" -p, --dl-search-path=PATH Set the search path for dynamic "
+"shared\n"
+" objects (plugins)\n"
+" --resample-method=METHOD Use the specified resampling method\n"
+" (See --dump-resample-methods for\n"
+" possible values)\n"
+" --use-pid-file[=BOOL] Create a PID file\n"
+" --no-cpu-limit[=BOOL] Do not install CPU load limiter on\n"
+" platforms that support it.\n"
+" --disable-shm[=BOOL] Disable shared memory support.\n"
+" --enable-memfd[=BOOL] Enable memfd shared memory support.\n"
+"\n"
+"STARTUP SCRIPT:\n"
+" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
+"with\n"
+" the specified argument\n"
+" -F, --file=FILENAME Run the specified script\n"
+" -C Open a command line on the running "
+"TTY\n"
+" after startup\n"
+"\n"
+" -n Don't load default script file\n"
+msgstr ""
+
+#: src/daemon/cmdline.c:246
+msgid "--daemonize expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:254
+msgid "--fail expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:265
+msgid ""
+"--log-level expects log level argument (either numeric in range 0..4 or one "
+"of debug, info, notice, warn, error)."
+msgstr ""
+
+#: src/daemon/cmdline.c:277
+msgid "--high-priority expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:285
+msgid "--realtime expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:293
+msgid "--disallow-module-loading expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:301
+msgid "--disallow-exit expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:309
+msgid "--use-pid-file expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:328
+msgid ""
+"Invalid log target: use either 'syslog', 'journal', 'stderr' or 'auto' or a "
+"valid file name 'file:<path>', 'newfile:<path>'."
+msgstr ""
+
+#: src/daemon/cmdline.c:330
+msgid ""
+"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
+"name 'file:<path>', 'newfile:<path>'."
+msgstr ""
+
+#: src/daemon/cmdline.c:338
+msgid "--log-time expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:346
+msgid "--log-meta expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:366
+#, c-format
+msgid "Invalid resample method '%s'."
+msgstr ""
+
+#: src/daemon/cmdline.c:373
+msgid "--system expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:381
+msgid "--no-cpu-limit expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:389
+msgid "--disable-shm expects boolean argument"
+msgstr ""
+
+#: src/daemon/cmdline.c:397
+msgid "--enable-memfd expects boolean argument"
+msgstr ""
+
+#: src/daemon/daemon-conf.c:270
+#, c-format
+msgid "[%s:%u] Invalid log target '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:285
+#, c-format
+msgid "[%s:%u] Invalid log level '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:300
+#, c-format
+msgid "[%s:%u] Invalid resample method '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:322
+#, c-format
+msgid "[%s:%u] Invalid rlimit '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:342
+#, c-format
+msgid "[%s:%u] Invalid sample format '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:359 src/daemon/daemon-conf.c:376
+#, c-format
+msgid "[%s:%u] Invalid sample rate '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:399
+#, c-format
+msgid "[%s:%u] Invalid sample channels '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:416
+#, c-format
+msgid "[%s:%u] Invalid channel map '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:433
+#, c-format
+msgid "[%s:%u] Invalid number of fragments '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:450
+#, c-format
+msgid "[%s:%u] Invalid fragment size '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:467
+#, c-format
+msgid "[%s:%u] Invalid nice level '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:552
+#, c-format
+msgid "[%s:%u] Invalid server type '%s'."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:673
+#, c-format
+msgid "Failed to open configuration file: %s"
+msgstr "Баптаулар файлын ашу сәтсіз аяқталды: %s"
+
+#: src/daemon/daemon-conf.c:689
+msgid ""
+"The specified default channel map has a different number of channels than "
+"the specified default number of channels."
+msgstr ""
+
+#: src/daemon/daemon-conf.c:776
+#, c-format
+msgid "### Read from configuration file: %s ###\n"
+msgstr ""
+
+#: src/daemon/dumpmodules.c:57
+#, c-format
+msgid "Name: %s\n"
+msgstr "Аты: %s\n"
+
+#: src/daemon/dumpmodules.c:60
+#, c-format
+msgid "No module information available\n"
+msgstr "Модуль ақпараты жоқ\n"
+
+#: src/daemon/dumpmodules.c:63
+#, c-format
+msgid "Version: %s\n"
+msgstr "Нұсқасы: %s\n"
+
+#: src/daemon/dumpmodules.c:65
+#, c-format
+msgid "Description: %s\n"
+msgstr "Сипаттамасы: %s\n"
+
+#: src/daemon/dumpmodules.c:67
+#, c-format
+msgid "Author: %s\n"
+msgstr "Автор: %s\n"
+
+#: src/daemon/dumpmodules.c:69
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Қолданылуы: %s\n"
+
+#: src/daemon/dumpmodules.c:70
+#, c-format
+msgid "Load Once: %s\n"
+msgstr "Бір рет жүктеу: %s\n"
+
+#: src/daemon/dumpmodules.c:72
+#, c-format
+msgid "DEPRECATION WARNING: %s\n"
+msgstr ""
+
+#: src/daemon/dumpmodules.c:76
+#, c-format
+msgid "Path: %s\n"
+msgstr ""
+
+#: src/daemon/ltdl-bind-now.c:75
+#, c-format
+msgid "Failed to open module %s: %s"
+msgstr ""
+
+#: src/daemon/ltdl-bind-now.c:126
+msgid "Failed to find original lt_dlopen loader."
+msgstr ""
+
+#: src/daemon/ltdl-bind-now.c:131
+msgid "Failed to allocate new dl loader."
+msgstr ""
+
+#: src/daemon/ltdl-bind-now.c:144
+msgid "Failed to add bind-now-loader."
+msgstr ""
+
+#: src/daemon/main.c:171
+#, c-format
+msgid "Failed to find user '%s'."
+msgstr ""
+
+#: src/daemon/main.c:176
+#, c-format
+msgid "Failed to find group '%s'."
+msgstr ""
+
+#: src/daemon/main.c:185
+#, c-format
+msgid "GID of user '%s' and of group '%s' don't match."
+msgstr ""
+
+#: src/daemon/main.c:190
+#, c-format
+msgid "Home directory of user '%s' is not '%s', ignoring."
+msgstr ""
+
+#: src/daemon/main.c:193 src/daemon/main.c:198
+#, c-format
+msgid "Failed to create '%s': %s"
+msgstr ""
+
+#: src/daemon/main.c:205
+#, c-format
+msgid "Failed to change group list: %s"
+msgstr ""
+
+#: src/daemon/main.c:221
+#, c-format
+msgid "Failed to change GID: %s"
+msgstr ""
+
+#: src/daemon/main.c:237
+#, c-format
+msgid "Failed to change UID: %s"
+msgstr ""
+
+#: src/daemon/main.c:266
+msgid "System wide mode unsupported on this platform."
+msgstr ""
+
+#: src/daemon/main.c:495
+msgid "Failed to parse command line."
+msgstr ""
+
+#: src/daemon/main.c:534
+msgid ""
+"System mode refused for non-root user. Only starting the D-Bus server lookup "
+"service."
+msgstr ""
+
+#: src/daemon/main.c:633
+#, c-format
+msgid "Failed to kill daemon: %s"
+msgstr ""
+
+#: src/daemon/main.c:662
+msgid ""
+"This program is not intended to be run as root (unless --system is "
+"specified)."
+msgstr ""
+
+#: src/daemon/main.c:665
+msgid "Root privileges required."
+msgstr "Әкімші құқықтары керек."
+
+#: src/daemon/main.c:672
+msgid "--start not supported for system instances."
+msgstr ""
+
+#: src/daemon/main.c:712
+#, c-format
+msgid "User-configured server at %s, refusing to start/autospawn."
+msgstr ""
+
+#: src/daemon/main.c:718
+#, c-format
+msgid ""
+"User-configured server at %s, which appears to be local. Probing deeper."
+msgstr ""
+
+#: src/daemon/main.c:723
+msgid "Running in system mode, but --disallow-exit not set."
+msgstr ""
+
+#: src/daemon/main.c:726
+msgid "Running in system mode, but --disallow-module-loading not set."
+msgstr ""
+
+#: src/daemon/main.c:729
+msgid "Running in system mode, forcibly disabling SHM mode."
+msgstr ""
+
+#: src/daemon/main.c:734
+msgid "Running in system mode, forcibly disabling exit idle time."
+msgstr ""
+
+#: src/daemon/main.c:767
+msgid "Failed to acquire stdio."
+msgstr ""
+
+#: src/daemon/main.c:773 src/daemon/main.c:844
+#, c-format
+msgid "pipe() failed: %s"
+msgstr "pipe() сәтсіз аяқталды: %s"
+
+#: src/daemon/main.c:778 src/daemon/main.c:849
+#, c-format
+msgid "fork() failed: %s"
+msgstr "fork() сәтсіз аяқталды: %s"
+
+#: src/daemon/main.c:793 src/daemon/main.c:864 src/utils/pacat.c:562
+#, c-format
+msgid "read() failed: %s"
+msgstr "read() сәтсіз аяқталды: %s"
+
+#: src/daemon/main.c:799
+msgid "Daemon startup failed."
+msgstr ""
+
+#: src/daemon/main.c:832
+#, c-format
+msgid "setsid() failed: %s"
+msgstr "setsid() сәтсіз аяқталды: %s"
+
+#: src/daemon/main.c:965
+msgid "Failed to get machine ID"
+msgstr ""
+
+#: src/daemon/main.c:991
+msgid ""
+"OK, so you are running PA in system mode. Please make sure that you actually "
+"do want to do that.\n"
+"Please read http://www.freedesktop.org/wiki/Software/PulseAudio/"
+"Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system "
+"mode is usually a bad idea."
+msgstr ""
+
+#: src/daemon/main.c:1007
+msgid "pa_pid_file_create() failed."
+msgstr "pa_pid_file_create() сәтсіз аяқталды."
+
+#: src/daemon/main.c:1039
+msgid "pa_core_new() failed."
+msgstr "pa_core_new() сәтсіз аяқталды."
+
+#: src/daemon/main.c:1110
+msgid "command line arguments"
+msgstr "командалық жол аргументтері"
+
+#: src/daemon/main.c:1117
+#, c-format
+msgid ""
+"Failed to initialize daemon due to errors while executing startup commands. "
+"Source of commands: %s"
+msgstr ""
+
+#: src/daemon/main.c:1122
+msgid "Daemon startup without any loaded modules, refusing to work."
+msgstr ""
+
+#: src/daemon/pulseaudio.desktop.in:4
+msgid "PulseAudio Sound System"
+msgstr "PulseAudio дыбыс жүйесі"
+
+#: src/daemon/pulseaudio.desktop.in:5
+msgid "Start the PulseAudio Sound System"
+msgstr "PulseAudio дыбыс жүйесін іске қосу"
+
+#: src/modules/alsa/alsa-mixer.c:2621
+msgid "Input"
+msgstr "Кіріс"
+
+#: src/modules/alsa/alsa-mixer.c:2622
+msgid "Docking Station Input"
+msgstr "Док-станция кірісі"
+
+#: src/modules/alsa/alsa-mixer.c:2623
+msgid "Docking Station Microphone"
+msgstr "Док-станция микрофоны"
+
+#: src/modules/alsa/alsa-mixer.c:2624
+msgid "Docking Station Line In"
+msgstr "Док-станцияның сызықтық кірісі"
+
+#: src/modules/alsa/alsa-mixer.c:2625 src/modules/alsa/alsa-mixer.c:2716
+msgid "Line In"
+msgstr "Сызықтық кіріс"
+
+#: src/modules/alsa/alsa-mixer.c:2626 src/modules/alsa/alsa-mixer.c:2710
+#: src/modules/bluetooth/module-bluez5-device.c:1792
+msgid "Microphone"
+msgstr "Микрофон"
+
+#: src/modules/alsa/alsa-mixer.c:2627 src/modules/alsa/alsa-mixer.c:2711
+msgid "Front Microphone"
+msgstr "Алдыңғы микрофон"
+
+#: src/modules/alsa/alsa-mixer.c:2628 src/modules/alsa/alsa-mixer.c:2712
+msgid "Rear Microphone"
+msgstr "Артқы микрофон"
+
+#: src/modules/alsa/alsa-mixer.c:2629
+msgid "External Microphone"
+msgstr "Сыртқы микрофон"
+
+#: src/modules/alsa/alsa-mixer.c:2630 src/modules/alsa/alsa-mixer.c:2714
+msgid "Internal Microphone"
+msgstr "Ішкі микрофон"
+
+#: src/modules/alsa/alsa-mixer.c:2631 src/modules/alsa/alsa-mixer.c:2717
+#: src/utils/pactl.c:258
+msgid "Radio"
+msgstr "Радио"
+
+#: src/modules/alsa/alsa-mixer.c:2632 src/modules/alsa/alsa-mixer.c:2718
+#: src/utils/pactl.c:259
+msgid "Video"
+msgstr "Видео"
+
+#: src/modules/alsa/alsa-mixer.c:2633
+msgid "Automatic Gain Control"
+msgstr "Күшейтуді автореттеу"
+
+#: src/modules/alsa/alsa-mixer.c:2634
+msgid "No Automatic Gain Control"
+msgstr "Күшейтуді автореттеу жоқ"
+
+#: src/modules/alsa/alsa-mixer.c:2635
+msgid "Boost"
+msgstr "Күшейту"
+
+#: src/modules/alsa/alsa-mixer.c:2636
+msgid "No Boost"
+msgstr "Күшейту жоқ"
+
+#: src/modules/alsa/alsa-mixer.c:2637
+msgid "Amplifier"
+msgstr "Күшейткіш"
+
+#: src/modules/alsa/alsa-mixer.c:2638
+msgid "No Amplifier"
+msgstr "Күшейткіш жоқ"
+
+#: src/modules/alsa/alsa-mixer.c:2639
+msgid "Bass Boost"
+msgstr "Бас күшейту"
+
+#: src/modules/alsa/alsa-mixer.c:2640
+msgid "No Bass Boost"
+msgstr "Бас күшейту жоқ"
+
+#: src/modules/alsa/alsa-mixer.c:2641
+#: src/modules/bluetooth/module-bluez5-device.c:1800 src/utils/pactl.c:248
+msgid "Speaker"
+msgstr "Динамик"
+
+#: src/modules/alsa/alsa-mixer.c:2642 src/modules/alsa/alsa-mixer.c:2720
+#: src/utils/pactl.c:249
+msgid "Headphones"
+msgstr "Құлаққаптар"
+
+#: src/modules/alsa/alsa-mixer.c:2709
+msgid "Analog Input"
+msgstr "Аналогтық кіріс"
+
+#: src/modules/alsa/alsa-mixer.c:2713
+msgid "Dock Microphone"
+msgstr "Док-станция микрофоны"
+
+#: src/modules/alsa/alsa-mixer.c:2715
+msgid "Headset Microphone"
+msgstr "Гарнитура микрофоны"
+
+#: src/modules/alsa/alsa-mixer.c:2719
+msgid "Analog Output"
+msgstr "Аналогтық шығыс"
+
+#: src/modules/alsa/alsa-mixer.c:2721
+msgid "Headphones Mono Output"
+msgstr "Құлаққаптардың моно шығысы"
+
+#: src/modules/alsa/alsa-mixer.c:2722
+msgid "Line Out"
+msgstr "Сызықтық шығыс"
+
+#: src/modules/alsa/alsa-mixer.c:2723
+msgid "Analog Mono Output"
+msgstr "Аналогтық моно шығысы"
+
+#: src/modules/alsa/alsa-mixer.c:2724
+msgid "Speakers"
+msgstr "Динамиктер"
+
+#: src/modules/alsa/alsa-mixer.c:2725
+msgid "HDMI / DisplayPort"
+msgstr "HDMI / DisplayPort"
+
+#: src/modules/alsa/alsa-mixer.c:2726
+msgid "Digital Output (S/PDIF)"
+msgstr "Цифрлық шығыс (S/PDIF)"
+
+#: src/modules/alsa/alsa-mixer.c:2727
+msgid "Digital Input (S/PDIF)"
+msgstr "Цифрлық кіріс (S/PDIF)"
+
+#: src/modules/alsa/alsa-mixer.c:2728
+msgid "Digital Passthrough (S/PDIF)"
+msgstr "Өтпелі цифрлық арна (S/PDIF)"
+
+#: src/modules/alsa/alsa-mixer.c:2729
+msgid "Multichannel Input"
+msgstr "Көпарналы кіріс"
+
+#: src/modules/alsa/alsa-mixer.c:2730
+msgid "Multichannel Output"
+msgstr "Көпарналы шығыс"
+
+#: src/modules/alsa/alsa-mixer.c:2731
+msgid "Game Output"
+msgstr "Ойын шығысы"
+
+#: src/modules/alsa/alsa-mixer.c:2732
+msgid "Chat Output"
+msgstr "Чат шығысы"
+
+#: src/modules/alsa/alsa-mixer.c:4355
+msgid "Analog Mono"
+msgstr "Аналогтық моно"
+
+#. Note: Not translated to "Analog Stereo Input", because the source
+#. * name gets "Input" appended to it automatically, so adding "Input"
+#. * here would lead to the source name to become "Analog Stereo Input
+#. * Input". The same logic applies to analog-stereo-output,
+#. * multichannel-input and multichannel-output.
+#: src/modules/alsa/alsa-mixer.c:4356 src/modules/alsa/alsa-mixer.c:4364
+#: src/modules/alsa/alsa-mixer.c:4365
+msgid "Analog Stereo"
+msgstr "Аналогтық стерео"
+
+#: src/modules/alsa/alsa-mixer.c:4357 src/pulse/channelmap.c:103
+#: src/pulse/channelmap.c:771
+msgid "Mono"
+msgstr "Моно"
+
+#: src/modules/alsa/alsa-mixer.c:4358 src/pulse/channelmap.c:775
+msgid "Stereo"
+msgstr "Стерео"
+
+#: src/modules/alsa/alsa-mixer.c:4366 src/modules/alsa/alsa-mixer.c:4367
+msgid "Multichannel"
+msgstr "Көпарналы"
+
+#: src/modules/alsa/alsa-mixer.c:4368
+msgid "Analog Surround 2.1"
+msgstr "Аналогтық көлемді 2.1"
+
+#: src/modules/alsa/alsa-mixer.c:4369
+msgid "Analog Surround 3.0"
+msgstr "Аналогтық көлемді 3.0"
+
+#: src/modules/alsa/alsa-mixer.c:4370
+msgid "Analog Surround 3.1"
+msgstr "Аналогтық көлемді 3.1"
+
+#: src/modules/alsa/alsa-mixer.c:4371
+msgid "Analog Surround 4.0"
+msgstr "Аналогтық көлемді 4.0"
+
+#: src/modules/alsa/alsa-mixer.c:4372
+msgid "Analog Surround 4.1"
+msgstr "Аналогтық көлемді 4.1"
+
+#: src/modules/alsa/alsa-mixer.c:4373
+msgid "Analog Surround 5.0"
+msgstr "Аналогтық көлемді 5.0"
+
+#: src/modules/alsa/alsa-mixer.c:4374
+msgid "Analog Surround 5.1"
+msgstr "Аналогтық көлемді 5.1"
+
+#: src/modules/alsa/alsa-mixer.c:4375
+msgid "Analog Surround 6.0"
+msgstr "Аналогтық көлемді 6.0"
+
+#: src/modules/alsa/alsa-mixer.c:4376
+msgid "Analog Surround 6.1"
+msgstr "Аналогтық көлемді 6.1"
+
+#: src/modules/alsa/alsa-mixer.c:4377
+msgid "Analog Surround 7.0"
+msgstr "Аналогтық көлемді 7.0"
+
+#: src/modules/alsa/alsa-mixer.c:4378
+msgid "Analog Surround 7.1"
+msgstr "Аналогтық көлемді 7.1"
+
+#: src/modules/alsa/alsa-mixer.c:4379
+msgid "Digital Stereo (IEC958)"
+msgstr "Цифрлық стерео (IEC958)"
+
+#: src/modules/alsa/alsa-mixer.c:4380
+msgid "Digital Passthrough (IEC958)"
+msgstr "Цифрлық өтпелі арна (IEC958)"
+
+#: src/modules/alsa/alsa-mixer.c:4381
+msgid "Digital Surround 4.0 (IEC958/AC3)"
+msgstr "Цифрлық көлемді 4.0 (IEC958/AC3)"
+
+#: src/modules/alsa/alsa-mixer.c:4382
+msgid "Digital Surround 5.1 (IEC958/AC3)"
+msgstr "Цифрлық көлемді 5.1 (IEC958/AC3)"
+
+#: src/modules/alsa/alsa-mixer.c:4383
+msgid "Digital Surround 5.1 (IEC958/DTS)"
+msgstr "Цифрлық көлемді 5.1 (IEC958/DTS)"
+
+#: src/modules/alsa/alsa-mixer.c:4384
+msgid "Digital Stereo (HDMI)"
+msgstr "Цифрлық стерео (HDMI)"
+
+#: src/modules/alsa/alsa-mixer.c:4385
+msgid "Digital Surround 5.1 (HDMI)"
+msgstr "Цифрлық көлемді 5.1 (HDMI)"
+
+#: src/modules/alsa/alsa-mixer.c:4518
+msgid "Analog Mono Duplex"
+msgstr "Аналогтық моно дуплекс"
+
+#: src/modules/alsa/alsa-mixer.c:4519
+msgid "Analog Stereo Duplex"
+msgstr "Аналогтық стерео дуплекс"
+
+#: src/modules/alsa/alsa-mixer.c:4520
+msgid "Digital Stereo Duplex (IEC958)"
+msgstr "Цифрлық стерео дуплекс (IEC958)"
+
+#: src/modules/alsa/alsa-mixer.c:4521
+msgid "Multichannel Duplex"
+msgstr "Көпарналы дуплекс"
+
+#: src/modules/alsa/alsa-mixer.c:4522
+msgid "Stereo Duplex"
+msgstr "Стерео дуплекс"
+
+#: src/modules/alsa/alsa-mixer.c:4523 src/modules/alsa/module-alsa-card.c:188
+#: src/modules/bluetooth/module-bluez5-device.c:2053
+msgid "Off"
+msgstr "Сөнд."
+
+#: src/modules/alsa/alsa-mixer.c:4622
+#, c-format
+msgid "%s Output"
+msgstr "%s шығысы"
+
+#: src/modules/alsa/alsa-mixer.c:4630
+#, c-format
+msgid "%s Input"
+msgstr "%s кірісі"
+
+#: src/modules/alsa/alsa-sink.c:652 src/modules/alsa/alsa-sink.c:842
+#, c-format
+msgid ""
+"ALSA woke us up to write new data to the device, but there was actually "
+"nothing to write.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+
+#: src/modules/alsa/alsa-source.c:611 src/modules/alsa/alsa-source.c:777
+#, c-format
+msgid ""
+"ALSA woke us up to read new data from the device, but there was actually "
+"nothing to read.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers.\n"
+"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
+"returned 0 or another value < min_avail."
+msgstr ""
+
+#: src/modules/alsa/alsa-util.c:1183 src/modules/alsa/alsa-util.c:1277
+#, c-format
+msgid ""
+"snd_pcm_avail() returned a value that is exceptionally large: %lu byte (%lu "
+"ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgid_plural ""
+"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
+"ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/modules/alsa/alsa-util.c:1249
+#, c-format
+msgid ""
+"snd_pcm_delay() returned a value that is exceptionally large: %li byte (%s"
+"%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgid_plural ""
+"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s"
+"%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/modules/alsa/alsa-util.c:1296
+#, c-format
+msgid ""
+"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
+"%lu.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr ""
+
+#: src/modules/alsa/alsa-util.c:1339
+#, c-format
+msgid ""
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu byte "
+"(%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgid_plural ""
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
+"(%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
+"to the ALSA developers."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/modules/bluetooth/module-bluez5-device.c:1773
+#: src/modules/bluetooth/module-bluez5-device.c:1799
+#: src/modules/bluetooth/module-bluez5-device.c:1806
+msgid "Bluetooth Input"
+msgstr "Bluetooth кірісі"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1774
+#: src/modules/bluetooth/module-bluez5-device.c:1793
+msgid "Bluetooth Output"
+msgstr "Bluetooth шығысы"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1780 src/utils/pactl.c:252
+msgid "Headset"
+msgstr "Гарнитура"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1786 src/utils/pactl.c:263
+msgid "Handsfree"
+msgstr "Хендс-фри"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1807
+msgid "Headphone"
+msgstr "Құлаққап"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1813 src/utils/pactl.c:262
+msgid "Portable"
+msgstr "Портативті динамик"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1819 src/utils/pactl.c:264
+msgid "Car"
+msgstr "Автомобильдік динамик"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1825 src/utils/pactl.c:265
+msgid "HiFi"
+msgstr "HiFi"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1831 src/utils/pactl.c:266
+msgid "Phone"
+msgstr "Телефон"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1878
+msgid "High Fidelity Playback (A2DP Sink)"
+msgstr "Жоғарғы сапалы ойнату (A2DP қабылдағышы)"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1890
+msgid "High Fidelity Capture (A2DP Source)"
+msgstr "Жоғарғы сапалы жазу (A2DP қайнаркөзі)"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1902
+msgid "Headset Head Unit (HSP/HFP)"
+msgstr "Гарнитура (HSP/HFP)"
+
+#: src/modules/bluetooth/module-bluez5-device.c:1915
+msgid "Headset Audio Gateway (HSP/HFP)"
+msgstr "Аудиогарнитура адаптері (HSP/HFP)"
+
+#: src/modules/echo-cancel/module-echo-cancel.c:59
+msgid ""
+"source_name=<name for the source> source_properties=<properties for the "
+"source> source_master=<name of source to filter> sink_name=<name for the "
+"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
+"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
+"much drift to readjust after in ms> format=<sample format> rate=<sample "
+"rate> channels=<number of channels> channel_map=<channel map> "
+"aec_method=<implementation to use> aec_args=<parameters for the AEC engine> "
+"save_aec=<save AEC data in /tmp> autoloaded=<set if this module is being "
+"loaded automatically> use_volume_sharing=<yes or no> use_master_format=<yes "
+"or no> "
+msgstr ""
+
+#. add on profile
+#: src/modules/macosx/module-coreaudio-device.c:824
+msgid "On"
+msgstr "Іске қос."
+
+#: src/modules/module-allow-passthrough.c:71
+#: src/modules/module-always-sink.c:80
+msgid "Dummy Output"
+msgstr "Жалған шығыс"
+
+#: src/modules/module-always-sink.c:34
+msgid "Always keeps at least one sink loaded even if it's a null one"
+msgstr ""
+
+#: src/modules/module-always-source.c:35
+msgid "Always keeps at least one source loaded even if it's a null one"
+msgstr ""
+
+#: src/modules/module-equalizer-sink.c:68
+msgid "General Purpose Equalizer"
+msgstr "Жалпы мақсатты эквалайзер"
+
+#: src/modules/module-equalizer-sink.c:72
+msgid ""
+"sink_name=<name of the sink> sink_properties=<properties for the sink> "
+"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
+"this module is being loaded automatically> use_volume_sharing=<yes or no> "
+msgstr ""
+
+#: src/modules/module-equalizer-sink.c:1094
+#: src/modules/module-equalizer-sink.c:1217
+#, c-format
+msgid "FFT based equalizer on %s"
+msgstr ""
+
+#: src/modules/module-filter-apply.c:47
+msgid "autoclean=<automatically unload unused filters?>"
+msgstr ""
+
+#: src/modules/module-ladspa-sink.c:50
+msgid "Virtual LADSPA sink"
+msgstr "Виртуалды LADSPA аудиоқабылдағышы"
+
+#: src/modules/module-ladspa-sink.c:54
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"sink_input_properties=<properties for the sink input> master=<name of sink "
+"to filter> sink_master=<name of sink to filter> format=<sample format> "
+"rate=<sample rate> channels=<number of channels> channel_map=<input channel "
+"map> plugin=<ladspa plugin name> label=<ladspa plugin label> control=<comma "
+"separated list of input control values> input_ladspaport_map=<comma "
+"separated list of input LADSPA port names> output_ladspaport_map=<comma "
+"separated list of output LADSPA port names> autoloaded=<set if this module "
+"is being loaded automatically> "
+msgstr ""
+
+#: src/modules/module-null-sink.c:46
+msgid "Clocked NULL sink"
+msgstr ""
+
+#: src/modules/module-null-sink.c:333
+msgid "Null Output"
+msgstr "Бос шығысы"
+
+#: src/modules/module-null-sink.c:345 src/utils/pactl.c:1094
+#, c-format
+msgid "Failed to set format: invalid format string %s"
+msgstr ""
+
+#: src/modules/module-rygel-media-server.c:506
+#: src/modules/module-rygel-media-server.c:544
+#: src/modules/module-rygel-media-server.c:903
+msgid "Output Devices"
+msgstr "Шығыс құрылғылары"
+
+#: src/modules/module-rygel-media-server.c:507
+#: src/modules/module-rygel-media-server.c:545
+#: src/modules/module-rygel-media-server.c:904
+msgid "Input Devices"
+msgstr "Кіріс құрылғылары"
+
+#: src/modules/module-rygel-media-server.c:1061
+msgid "Audio on @HOSTNAME@"
+msgstr ""
+
+#. TODO: old tunnel put here the remote sink_name into stream name e.g. 'Null Output for lynxis@lazus'
+#. TODO: old tunnel put here the remote source_name into stream name e.g. 'Null Output for lynxis@lazus'
+#: src/modules/module-tunnel-sink-new.c:307
+#: src/modules/module-tunnel-source-new.c:305
+#, c-format
+msgid "Tunnel for %s@%s"
+msgstr ""
+
+#: src/modules/module-tunnel-sink-new.c:544
+#: src/modules/module-tunnel-source-new.c:540
+#, c-format
+msgid "Tunnel to %s/%s"
+msgstr ""
+
+#: src/modules/module-virtual-surround-sink.c:45
+msgid "Virtual surround sink"
+msgstr "Виртуалды көлемді аудиоқабылдағыш"
+
+#: src/modules/module-virtual-surround-sink.c:49
+msgid ""
+"sink_name=<name for the sink> sink_properties=<properties for the sink> "
+"master=<name of sink to filter> sink_master=<name of sink to filter> "
+"format=<sample format> rate=<sample rate> channels=<number of channels> "
+"channel_map=<channel map> use_volume_sharing=<yes or no> "
+"force_flat_volume=<yes or no> hrir=/path/to/left_hrir.wav autoloaded=<set if "
+"this module is being loaded automatically> "
+msgstr ""
+
+#: src/modules/raop/module-raop-discover.c:295
+msgid "Unknown device model"
+msgstr "Белгісіз құрылғы моделі"
+
+#: src/modules/raop/raop-sink.c:655
+msgid "RAOP standard profile"
+msgstr "RAOP қалыпты профилі"
+
+#: src/modules/reserve-wrap.c:149
+msgid "PulseAudio Sound Server"
+msgstr "PulseAudio дыбыс сервері"
+
+#: src/pulse/channelmap.c:105
+msgid "Front Center"
+msgstr "Алдыңғы орталық"
+
+#: src/pulse/channelmap.c:106
+msgid "Front Left"
+msgstr "Алдыңғы сол жақ"
+
+#: src/pulse/channelmap.c:107
+msgid "Front Right"
+msgstr "Алдыңғы оң жақ"
+
+#: src/pulse/channelmap.c:109
+msgid "Rear Center"
+msgstr "Артқы орталық"
+
+#: src/pulse/channelmap.c:110
+msgid "Rear Left"
+msgstr "Артқы сол жақ"
+
+#: src/pulse/channelmap.c:111
+msgid "Rear Right"
+msgstr "Артқы оң жақ"
+
+#: src/pulse/channelmap.c:113
+msgid "Subwoofer"
+msgstr "Сабвуфер"
+
+#: src/pulse/channelmap.c:115
+msgid "Front Left-of-center"
+msgstr "Алдыңғы орталықтан сол жақта"
+
+#: src/pulse/channelmap.c:116
+msgid "Front Right-of-center"
+msgstr "Алдыңғы орталықтан оң жақта"
+
+#: src/pulse/channelmap.c:118
+msgid "Side Left"
+msgstr "Сол жақ жаны"
+
+#: src/pulse/channelmap.c:119
+msgid "Side Right"
+msgstr "Оң жақ жаны"
+
+#: src/pulse/channelmap.c:121
+msgid "Auxiliary 0"
+msgstr "Қосалқы 0"
+
+#: src/pulse/channelmap.c:122
+msgid "Auxiliary 1"
+msgstr "Қосалқы 1"
+
+#: src/pulse/channelmap.c:123
+msgid "Auxiliary 2"
+msgstr "Қосалқы 2"
+
+#: src/pulse/channelmap.c:124
+msgid "Auxiliary 3"
+msgstr "Қосалқы 3"
+
+#: src/pulse/channelmap.c:125
+msgid "Auxiliary 4"
+msgstr "Қосалқы 4"
+
+#: src/pulse/channelmap.c:126
+msgid "Auxiliary 5"
+msgstr "Қосалқы 5"
+
+#: src/pulse/channelmap.c:127
+msgid "Auxiliary 6"
+msgstr "Қосалқы 6"
+
+#: src/pulse/channelmap.c:128
+msgid "Auxiliary 7"
+msgstr "Қосалқы 7"
+
+#: src/pulse/channelmap.c:129
+msgid "Auxiliary 8"
+msgstr "Қосалқы 8"
+
+#: src/pulse/channelmap.c:130
+msgid "Auxiliary 9"
+msgstr "Қосалқы 9"
+
+#: src/pulse/channelmap.c:131
+msgid "Auxiliary 10"
+msgstr "Қосалқы 10"
+
+#: src/pulse/channelmap.c:132
+msgid "Auxiliary 11"
+msgstr "Қосалқы 11"
+
+#: src/pulse/channelmap.c:133
+msgid "Auxiliary 12"
+msgstr "Қосалқы 12"
+
+#: src/pulse/channelmap.c:134
+msgid "Auxiliary 13"
+msgstr "Қосалқы 13"
+
+#: src/pulse/channelmap.c:135
+msgid "Auxiliary 14"
+msgstr "Қосалқы 14"
+
+#: src/pulse/channelmap.c:136
+msgid "Auxiliary 15"
+msgstr "Қосалқы 15"
+
+#: src/pulse/channelmap.c:137
+msgid "Auxiliary 16"
+msgstr "Қосалқы 16"
+
+#: src/pulse/channelmap.c:138
+msgid "Auxiliary 17"
+msgstr "Қосалқы 17"
+
+#: src/pulse/channelmap.c:139
+msgid "Auxiliary 18"
+msgstr "Қосалқы 18"
+
+#: src/pulse/channelmap.c:140
+msgid "Auxiliary 19"
+msgstr "Қосалқы 19"
+
+#: src/pulse/channelmap.c:141
+msgid "Auxiliary 20"
+msgstr "Қосалқы 20"
+
+#: src/pulse/channelmap.c:142
+msgid "Auxiliary 21"
+msgstr "Қосалқы 21"
+
+#: src/pulse/channelmap.c:143
+msgid "Auxiliary 22"
+msgstr "Қосалқы 22"
+
+#: src/pulse/channelmap.c:144
+msgid "Auxiliary 23"
+msgstr "Қосалқы 23"
+
+#: src/pulse/channelmap.c:145
+msgid "Auxiliary 24"
+msgstr "Қосалқы 24"
+
+#: src/pulse/channelmap.c:146
+msgid "Auxiliary 25"
+msgstr "Қосалқы 25"
+
+#: src/pulse/channelmap.c:147
+msgid "Auxiliary 26"
+msgstr "Қосалқы 26"
+
+#: src/pulse/channelmap.c:148
+msgid "Auxiliary 27"
+msgstr "Қосалқы 27"
+
+#: src/pulse/channelmap.c:149
+msgid "Auxiliary 28"
+msgstr "Қосалқы 28"
+
+#: src/pulse/channelmap.c:150
+msgid "Auxiliary 29"
+msgstr "Қосалқы 29"
+
+#: src/pulse/channelmap.c:151
+msgid "Auxiliary 30"
+msgstr "Қосалқы 30"
+
+#: src/pulse/channelmap.c:152
+msgid "Auxiliary 31"
+msgstr "Қосалқы 31"
+
+#: src/pulse/channelmap.c:154
+msgid "Top Center"
+msgstr "Жоғарғы орталық"
+
+#: src/pulse/channelmap.c:156
+msgid "Top Front Center"
+msgstr "Жоғарғы алдыңғы орталық"
+
+#: src/pulse/channelmap.c:157
+msgid "Top Front Left"
+msgstr "Жоғарғы алдыңғы сол жақ"
+
+#: src/pulse/channelmap.c:158
+msgid "Top Front Right"
+msgstr "Жоғарғы алдыңғы оң жақ"
+
+#: src/pulse/channelmap.c:160
+msgid "Top Rear Center"
+msgstr "Жоғарғы артқы орталық"
+
+#: src/pulse/channelmap.c:161
+msgid "Top Rear Left"
+msgstr "Жоғарғы артқы сол жақ"
+
+#: src/pulse/channelmap.c:162
+msgid "Top Rear Right"
+msgstr "Жоғарғы артқы оң жақ"
+
+#: src/pulse/channelmap.c:479 src/pulse/format.c:123 src/pulse/sample.c:177
+#: src/pulse/volume.c:306 src/pulse/volume.c:332 src/pulse/volume.c:352
+#: src/pulse/volume.c:384 src/pulse/volume.c:424 src/pulse/volume.c:443
+msgid "(invalid)"
+msgstr "(жарамсыз)"
+
+#: src/pulse/channelmap.c:780
+msgid "Surround 4.0"
+msgstr "Көлемді 4.0"
+
+#: src/pulse/channelmap.c:786
+msgid "Surround 4.1"
+msgstr "Көлемді 4.1"
+
+#: src/pulse/channelmap.c:792
+msgid "Surround 5.0"
+msgstr "Көлемді 5.0"
+
+#: src/pulse/channelmap.c:798
+msgid "Surround 5.1"
+msgstr "Көлемді 5.1"
+
+#: src/pulse/channelmap.c:805
+msgid "Surround 7.1"
+msgstr "Көлемді 7.1"
+
+#: src/pulse/client-conf-x11.c:61 src/utils/pax11publish.c:97
+msgid "xcb_connect() failed"
+msgstr "xcb_connect() сәтсіз аяқталды"
+
+#: src/pulse/client-conf-x11.c:66 src/utils/pax11publish.c:102
+msgid "xcb_connection_has_error() returned true"
+msgstr "xcb_connection_has_error() true қайтарды"
+
+#: src/pulse/client-conf-x11.c:102
+msgid "Failed to parse cookie data"
+msgstr ""
+
+#: src/pulse/context.c:706
+#, c-format
+msgid "fork(): %s"
+msgstr "fork(): %s"
+
+#: src/pulse/context.c:761
+#, c-format
+msgid "waitpid(): %s"
+msgstr "waitpid(): %s"
+
+#: src/pulse/context.c:1467
+#, c-format
+msgid "Received message for unknown extension '%s'"
+msgstr ""
+
+#: src/pulse/direction.c:37
+msgid "input"
+msgstr "кіріс"
+
+#: src/pulse/direction.c:39
+msgid "output"
+msgstr "шығыс"
+
+#: src/pulse/direction.c:41
+msgid "bidirectional"
+msgstr "қосбағытты"
+
+#: src/pulse/direction.c:43
+msgid "invalid"
+msgstr "жарамсыз"
+
+#: src/pulsecore/core-util.c:1712
+#, c-format
+msgid ""
+"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could "
+"e.g. happen if you try to connect to a non-root PulseAudio as a root user, "
+"over the native protocol. Don't do that.)"
+msgstr ""
+
+#: src/pulsecore/core-util.h:96
+msgid "yes"
+msgstr "иә"
+
+#: src/pulsecore/core-util.h:96
+msgid "no"
+msgstr "жоқ"
+
+#: src/pulsecore/lock-autospawn.c:141 src/pulsecore/lock-autospawn.c:227
+msgid "Cannot access autospawn lock."
+msgstr ""
+
+#: src/pulsecore/log.c:165
+#, c-format
+msgid "Failed to open target file '%s'."
+msgstr ""
+
+#: src/pulsecore/log.c:188
+#, c-format
+msgid ""
+"Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
+msgstr ""
+
+#: src/pulsecore/log.c:651
+msgid "Invalid log target."
+msgstr "Журнал мақсаты дұрыс емес."
+
+#: src/pulsecore/sink.c:3524
+msgid "Built-in Audio"
+msgstr "Құрамындағы аудио"
+
+#: src/pulsecore/sink.c:3529
+msgid "Modem"
+msgstr "Модем"
+
+#: src/pulse/error.c:38
+msgid "OK"
+msgstr "ОК"
+
+#: src/pulse/error.c:39
+msgid "Access denied"
+msgstr "Рұқсат етілмеген"
+
+#: src/pulse/error.c:40
+msgid "Unknown command"
+msgstr "Белгісіз команда"
+
+#: src/pulse/error.c:41
+msgid "Invalid argument"
+msgstr "Жарамсыз аргумент"
+
+#: src/pulse/error.c:42
+msgid "Entity exists"
+msgstr "Нәрсе бар болып тұр"
+
+#: src/pulse/error.c:43
+msgid "No such entity"
+msgstr "Ондай нәрсе жоқ"
+
+#: src/pulse/error.c:44
+msgid "Connection refused"
+msgstr "Байланыс тайдырылды"
+
+#: src/pulse/error.c:45
+msgid "Protocol error"
+msgstr "Хаттама қатесі"
+
+#: src/pulse/error.c:46
+msgid "Timeout"
+msgstr "Таймаут"
+
+#: src/pulse/error.c:47
+msgid "No authentication key"
+msgstr "Аутентификация кілті жоқ"
+
+#: src/pulse/error.c:48
+msgid "Internal error"
+msgstr "Ішкі қате"
+
+#: src/pulse/error.c:49
+msgid "Connection terminated"
+msgstr "Байланыс тоқтатылды"
+
+#: src/pulse/error.c:50
+msgid "Entity killed"
+msgstr "Нәрсе үзілді"
+
+#: src/pulse/error.c:51
+msgid "Invalid server"
+msgstr "Жарамсыз сервер"
+
+#: src/pulse/error.c:52
+msgid "Module initialization failed"
+msgstr "Модуль инициализациясы сәтсіз аяқталды"
+
+#: src/pulse/error.c:53
+msgid "Bad state"
+msgstr "Жаман қалып-күйі"
+
+#: src/pulse/error.c:54
+msgid "No data"
+msgstr "Деректер жоқ"
+
+#: src/pulse/error.c:55
+msgid "Incompatible protocol version"
+msgstr "Үйлеспейтін хаттама нұсқасы"
+
+#: src/pulse/error.c:56
+msgid "Too large"
+msgstr "Тым үлкен"
+
+#: src/pulse/error.c:57
+msgid "Not supported"
+msgstr "Қолдау жоқ"
+
+#: src/pulse/error.c:58
+msgid "Unknown error code"
+msgstr "Белгісіз қате коды"
+
+#: src/pulse/error.c:59
+msgid "No such extension"
+msgstr "Ондай кеңейту жоқ"
+
+#: src/pulse/error.c:60
+msgid "Obsolete functionality"
+msgstr "Ескірген функционалдылық"
+
+#: src/pulse/error.c:61
+msgid "Missing implementation"
+msgstr "Іске асыруы жоқ"
+
+#: src/pulse/error.c:62
+msgid "Client forked"
+msgstr ""
+
+#: src/pulse/error.c:63
+msgid "Input/Output error"
+msgstr "Енгізу/шығару қатесі"
+
+#: src/pulse/error.c:64
+msgid "Device or resource busy"
+msgstr "Құрылғы немесе ресурс бос емес"
+
+#: src/pulse/sample.c:179
+#, c-format
+msgid "%s %uch %uHz"
+msgstr "%s %u арна %u Гц"
+
+#: src/pulse/sample.c:191
+#, c-format
+msgid "%0.1f GiB"
+msgstr "%0.1f ГиБ"
+
+#: src/pulse/sample.c:193
+#, c-format
+msgid "%0.1f MiB"
+msgstr "%0.1f МиБ"
+
+#: src/pulse/sample.c:195
+#, c-format
+msgid "%0.1f KiB"
+msgstr "%0.1f КиБ"
+
+#: src/pulse/sample.c:197
+#, c-format
+msgid "%u B"
+msgstr "%u Б"
+
+#: src/utils/pacat.c:134
+#, c-format
+msgid "Failed to drain stream: %s"
+msgstr ""
+
+#: src/utils/pacat.c:139
+msgid "Playback stream drained."
+msgstr ""
+
+#: src/utils/pacat.c:150
+msgid "Draining connection to server."
+msgstr ""
+
+#: src/utils/pacat.c:163
+#, c-format
+msgid "pa_stream_drain(): %s"
+msgstr "pa_stream_drain(): %s"
+
+#: src/utils/pacat.c:194 src/utils/pacat.c:543
+#, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_begin_write() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:244 src/utils/pacat.c:274
+#, c-format
+msgid "pa_stream_peek() failed: %s"
+msgstr "pa_stream_peek() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:324
+msgid "Stream successfully created."
+msgstr "Ағын сәтті жасалды."
+
+#: src/utils/pacat.c:327
+#, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
+msgstr "pa_stream_get_buffer_attr() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:331
+#, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
+msgstr ""
+
+#: src/utils/pacat.c:334
+#, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
+msgstr ""
+
+#: src/utils/pacat.c:338
+#, c-format
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr ""
+
+#: src/utils/pacat.c:342
+#, c-format
+msgid "Connected to device %s (index: %u, suspended: %s)."
+msgstr ""
+
+#: src/utils/pacat.c:352
+#, c-format
+msgid "Stream error: %s"
+msgstr "Ағын қатесі: %s"
+
+#: src/utils/pacat.c:362
+#, c-format
+msgid "Stream device suspended.%s"
+msgstr ""
+
+#: src/utils/pacat.c:364
+#, c-format
+msgid "Stream device resumed.%s"
+msgstr ""
+
+#: src/utils/pacat.c:372
+#, c-format
+msgid "Stream underrun.%s"
+msgstr ""
+
+#: src/utils/pacat.c:379
+#, c-format
+msgid "Stream overrun.%s"
+msgstr ""
+
+#: src/utils/pacat.c:386
+#, c-format
+msgid "Stream started.%s"
+msgstr ""
+
+#: src/utils/pacat.c:393
+#, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr ""
+
+#: src/utils/pacat.c:393
+msgid "not "
+msgstr "емес "
+
+#: src/utils/pacat.c:400
+#, c-format
+msgid "Stream buffer attributes changed.%s"
+msgstr ""
+
+#: src/utils/pacat.c:415
+msgid "Cork request stack is empty: corking stream"
+msgstr ""
+
+#: src/utils/pacat.c:421
+msgid "Cork request stack is empty: uncorking stream"
+msgstr ""
+
+#: src/utils/pacat.c:425
+msgid "Warning: Received more uncork requests than cork requests."
+msgstr ""
+
+#: src/utils/pacat.c:450
+#, c-format
+msgid "Connection established.%s"
+msgstr ""
+
+#: src/utils/pacat.c:453
+#, c-format
+msgid "pa_stream_new() failed: %s"
+msgstr "pa_stream_new() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:491
+#, c-format
+msgid "pa_stream_connect_playback() failed: %s"
+msgstr "pa_stream_connect_playback() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:497
+#, c-format
+msgid "Failed to set monitor stream: %s"
+msgstr ""
+
+#: src/utils/pacat.c:501
+#, c-format
+msgid "pa_stream_connect_record() failed: %s"
+msgstr ""
+
+#: src/utils/pacat.c:514 src/utils/pactl.c:1490
+#, c-format
+msgid "Connection failure: %s"
+msgstr "Байланысты орнату сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:557
+msgid "Got EOF."
+msgstr "EOF алынды."
+
+#: src/utils/pacat.c:581
+#, c-format
+msgid "pa_stream_write() failed: %s"
+msgstr "pa_stream_write() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:605
+#, c-format
+msgid "write() failed: %s"
+msgstr "write() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:626
+msgid "Got signal, exiting."
+msgstr "Сигнал алынды, шығу."
+
+#: src/utils/pacat.c:640
+#, c-format
+msgid "Failed to get latency: %s"
+msgstr ""
+
+#: src/utils/pacat.c:645
+#, c-format
+msgid "Time: %0.3f sec; Latency: %0.0f usec."
+msgstr ""
+
+#: src/utils/pacat.c:666
+#, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
+msgstr ""
+
+#: src/utils/pacat.c:676
+#, c-format
+msgid ""
+"%s [options]\n"
+"%s\n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"\n"
+" -r, --record Create a connection for recording\n"
+" -p, --playback Create a connection for playback\n"
+"\n"
+" -v, --verbose Enable verbose operations\n"
+"\n"
+" -s, --server=SERVER The name of the server to connect "
+"to\n"
+" -d, --device=DEVICE The name of the sink/source to "
+"connect to\n"
+" -n, --client-name=NAME How to call this client on the "
+"server\n"
+" --stream-name=NAME How to call this stream on the "
+"server\n"
+" --volume=VOLUME Specify the initial (linear) volume "
+"in range 0...65536\n"
+" --rate=SAMPLERATE The sample rate in Hz (defaults to "
+"44100)\n"
+" --format=SAMPLEFORMAT The sample format, see\n"
+" https://www.freedesktop.org/wiki/"
+"Software/PulseAudio/Documentation/User/SupportedAudioFormats/\n"
+" for possible values (defaults to "
+"s16ne)\n"
+" --channels=CHANNELS The number of channels, 1 for mono, "
+"2 for stereo\n"
+" (defaults to 2)\n"
+" --channel-map=CHANNELMAP Channel map to use instead of the "
+"default\n"
+" --fix-format Take the sample format from the sink/"
+"source the stream is\n"
+" being connected to.\n"
+" --fix-rate Take the sampling rate from the sink/"
+"source the stream is\n"
+" being connected to.\n"
+" --fix-channels Take the number of channels and the "
+"channel map\n"
+" from the sink/source the stream is "
+"being connected to.\n"
+" --no-remix Don't upmix or downmix channels.\n"
+" --no-remap Map channels by index instead of "
+"name.\n"
+" --latency=BYTES Request the specified latency in "
+"bytes.\n"
+" --process-time=BYTES Request the specified process time "
+"per request in bytes.\n"
+" --latency-msec=MSEC Request the specified latency in "
+"msec.\n"
+" --process-time-msec=MSEC Request the specified process time "
+"per request in msec.\n"
+" --property=PROPERTY=VALUE Set the specified property to the "
+"specified value.\n"
+" --raw Record/play raw PCM data.\n"
+" --passthrough Passthrough data.\n"
+" --file-format[=FFORMAT] Record/play formatted PCM data.\n"
+" --list-file-formats List available file formats.\n"
+" --monitor-stream=INDEX Record from the sink input with "
+"index INDEX.\n"
+msgstr ""
+
+#: src/utils/pacat.c:793
+msgid "Play back encoded audio files on a PulseAudio sound server."
+msgstr ""
+
+#: src/utils/pacat.c:797
+msgid ""
+"Capture audio data from a PulseAudio sound server and write it to a file."
+msgstr ""
+
+#: src/utils/pacat.c:801
+msgid ""
+"Capture audio data from a PulseAudio sound server and write it to STDOUT or "
+"the specified file."
+msgstr ""
+
+#: src/utils/pacat.c:805
+msgid ""
+"Play back audio data from STDIN or the specified file on a PulseAudio sound "
+"server."
+msgstr ""
+
+#: src/utils/pacat.c:819
+#, c-format
+msgid ""
+"pacat %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: src/utils/pacat.c:852 src/utils/pactl.c:1692
+#, c-format
+msgid "Invalid client name '%s'"
+msgstr ""
+
+#: src/utils/pacat.c:867
+#, c-format
+msgid "Invalid stream name '%s'"
+msgstr ""
+
+#: src/utils/pacat.c:904
+#, c-format
+msgid "Invalid channel map '%s'"
+msgstr ""
+
+#: src/utils/pacat.c:933 src/utils/pacat.c:947
+#, c-format
+msgid "Invalid latency specification '%s'"
+msgstr ""
+
+#: src/utils/pacat.c:940 src/utils/pacat.c:954
+#, c-format
+msgid "Invalid process time specification '%s'"
+msgstr ""
+
+#: src/utils/pacat.c:966
+#, c-format
+msgid "Invalid property '%s'"
+msgstr ""
+
+#: src/utils/pacat.c:985
+#, c-format
+msgid "Unknown file format %s."
+msgstr "%s файл пішімі белгісіз."
+
+#: src/utils/pacat.c:1000
+msgid "Failed to parse the argument for --monitor-stream"
+msgstr ""
+
+#: src/utils/pacat.c:1011
+msgid "Invalid sample specification"
+msgstr ""
+
+#: src/utils/pacat.c:1021
+#, c-format
+msgid "open(): %s"
+msgstr "open(): %s"
+
+#: src/utils/pacat.c:1026
+#, c-format
+msgid "dup2(): %s"
+msgstr "dup2(): %s"
+
+#: src/utils/pacat.c:1033
+msgid "Too many arguments."
+msgstr "Тым көп аргументтер."
+
+#: src/utils/pacat.c:1044
+msgid "Failed to generate sample specification for file."
+msgstr ""
+
+#: src/utils/pacat.c:1070
+msgid "Failed to open audio file."
+msgstr "Аудио файлын ашу сәтсіз аяқталды."
+
+#: src/utils/pacat.c:1076
+msgid ""
+"Warning: specified sample specification will be overwritten with "
+"specification from file."
+msgstr ""
+
+#: src/utils/pacat.c:1079 src/utils/pactl.c:1756
+msgid "Failed to determine sample specification from file."
+msgstr ""
+
+#: src/utils/pacat.c:1088
+msgid "Warning: Failed to determine channel map from file."
+msgstr ""
+
+#: src/utils/pacat.c:1099
+msgid "Channel map doesn't match sample specification"
+msgstr ""
+
+#: src/utils/pacat.c:1110
+msgid "Warning: failed to write channel map to file."
+msgstr ""
+
+#: src/utils/pacat.c:1125
+#, c-format
+msgid ""
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr ""
+
+#: src/utils/pacat.c:1126
+msgid "recording"
+msgstr "жазуда"
+
+#: src/utils/pacat.c:1126
+msgid "playback"
+msgstr "ойнау"
+
+#: src/utils/pacat.c:1150
+msgid "Failed to set media name."
+msgstr ""
+
+#: src/utils/pacat.c:1160 src/utils/pactl.c:2106
+msgid "pa_mainloop_new() failed."
+msgstr "pa_mainloop_new() сәтсіз аяқталды."
+
+#: src/utils/pacat.c:1183
+msgid "io_new() failed."
+msgstr "io_new() сәтсіз аяқталды."
+
+#: src/utils/pacat.c:1190 src/utils/pactl.c:2118
+msgid "pa_context_new() failed."
+msgstr "pa_context_new() сәтсіз аяқталды."
+
+#: src/utils/pacat.c:1198 src/utils/pactl.c:2124
+#, c-format
+msgid "pa_context_connect() failed: %s"
+msgstr "pa_context_connect() сәтсіз аяқталды: %s"
+
+#: src/utils/pacat.c:1204
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_rttime_new() сәтсіз аяқталды."
+
+#: src/utils/pacat.c:1211 src/utils/pactl.c:2129
+msgid "pa_mainloop_run() failed."
+msgstr "pa_mainloop_run() сәтсіз аяқталды."
+
+#: src/utils/pacmd.c:51 src/utils/pactl.c:1614
+msgid "NAME [ARGS ...]"
+msgstr ""
+
+#: src/utils/pacmd.c:52 src/utils/pacmd.c:60 src/utils/pactl.c:1615
+msgid "NAME|#N"
+msgstr ""
+
+#: src/utils/pacmd.c:53 src/utils/pacmd.c:63 src/utils/pactl.c:1613
+#: src/utils/pactl.c:1619
+msgid "NAME"
+msgstr ""
+
+#: src/utils/pacmd.c:54
+msgid "NAME|#N VOLUME"
+msgstr ""
+
+#: src/utils/pacmd.c:55
+msgid "#N VOLUME"
+msgstr ""
+
+#: src/utils/pacmd.c:56 src/utils/pacmd.c:70 src/utils/pactl.c:1617
+msgid "NAME|#N 1|0"
+msgstr ""
+
+#: src/utils/pacmd.c:57
+msgid "#N 1|0"
+msgstr ""
+
+#: src/utils/pacmd.c:58
+msgid "NAME|#N KEY=VALUE"
+msgstr ""
+
+#: src/utils/pacmd.c:59
+msgid "#N KEY=VALUE"
+msgstr ""
+
+#: src/utils/pacmd.c:61
+msgid "#N"
+msgstr ""
+
+#: src/utils/pacmd.c:62
+msgid "NAME SINK|#N"
+msgstr ""
+
+#: src/utils/pacmd.c:64 src/utils/pacmd.c:65
+msgid "NAME FILENAME"
+msgstr ""
+
+#: src/utils/pacmd.c:66
+msgid "PATHNAME"
+msgstr ""
+
+#: src/utils/pacmd.c:67
+msgid "FILENAME SINK|#N"
+msgstr ""
+
+#: src/utils/pacmd.c:69 src/utils/pactl.c:1616
+msgid "#N SINK|SOURCE"
+msgstr ""
+
+#: src/utils/pacmd.c:71 src/utils/pacmd.c:77 src/utils/pacmd.c:78
+msgid "1|0"
+msgstr ""
+
+#: src/utils/pacmd.c:72 src/utils/pactl.c:1618
+msgid "CARD PROFILE"
+msgstr ""
+
+#: src/utils/pacmd.c:73 src/utils/pactl.c:1620
+msgid "NAME|#N PORT"
+msgstr ""
+
+#: src/utils/pacmd.c:74 src/utils/pactl.c:1626
+msgid "CARD-NAME|CARD-#N PORT OFFSET"
+msgstr ""
+
+#: src/utils/pacmd.c:75
+msgid "TARGET"
+msgstr ""
+
+#: src/utils/pacmd.c:76
+msgid "NUMERIC-LEVEL"
+msgstr ""
+
+#: src/utils/pacmd.c:79
+msgid "FRAMES"
+msgstr ""
+
+#: src/utils/pacmd.c:81
+#, c-format
+msgid ""
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"When no command is given pacmd starts in the interactive mode.\n"
+msgstr ""
+
+#: src/utils/pacmd.c:128
+#, c-format
+msgid ""
+"pacmd %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: src/utils/pacmd.c:142
+msgid "No PulseAudio daemon running, or not running as session daemon."
+msgstr ""
+
+#: src/utils/pacmd.c:147
+#, c-format
+msgid "socket(PF_UNIX, SOCK_STREAM, 0): %s"
+msgstr ""
+
+#: src/utils/pacmd.c:164
+#, c-format
+msgid "connect(): %s"
+msgstr "connect(): %s"
+
+#: src/utils/pacmd.c:172
+msgid "Failed to kill PulseAudio daemon."
+msgstr ""
+
+#: src/utils/pacmd.c:180
+msgid "Daemon not responding."
+msgstr "Демон жауап бермейді."
+
+#: src/utils/pacmd.c:212 src/utils/pacmd.c:321 src/utils/pacmd.c:339
+#, c-format
+msgid "write(): %s"
+msgstr "write(): %s"
+
+#: src/utils/pacmd.c:268
+#, c-format
+msgid "poll(): %s"
+msgstr "poll(): %s"
+
+#: src/utils/pacmd.c:279 src/utils/pacmd.c:299
+#, c-format
+msgid "read(): %s"
+msgstr "read(): %s"
+
+#: src/utils/pactl.c:164
+#, c-format
+msgid "Failed to get statistics: %s"
+msgstr "Статистиканы алу сәтсіз аяқталды: %s"
+
+#: src/utils/pactl.c:170
+#, c-format
+msgid "Currently in use: %u block containing %s bytes total.\n"
+msgid_plural "Currently in use: %u blocks containing %s bytes total.\n"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/utils/pactl.c:176
+#, c-format
+msgid "Allocated during whole lifetime: %u block containing %s bytes total.\n"
+msgid_plural ""
+"Allocated during whole lifetime: %u blocks containing %s bytes total.\n"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/utils/pactl.c:182
+#, c-format
+msgid "Sample cache size: %s\n"
+msgstr ""
+
+#: src/utils/pactl.c:191
+#, c-format
+msgid "Failed to get server information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:196
+#, c-format
+msgid ""
+"Server String: %s\n"
+"Library Protocol Version: %u\n"
+"Server Protocol Version: %u\n"
+"Is Local: %s\n"
+"Client Index: %u\n"
+"Tile Size: %zu\n"
+msgstr ""
+
+#: src/utils/pactl.c:212
+#, c-format
+msgid ""
+"User Name: %s\n"
+"Host Name: %s\n"
+"Server Name: %s\n"
+"Server Version: %s\n"
+"Default Sample Specification: %s\n"
+"Default Channel Map: %s\n"
+"Default Sink: %s\n"
+"Default Source: %s\n"
+"Cookie: %04x:%04x\n"
+msgstr ""
+
+#: src/utils/pactl.c:237
+msgid ", available"
+msgstr ", қолжетімді"
+
+#: src/utils/pactl.c:238
+msgid ", not available"
+msgstr ", қолжетімсіз"
+
+#: src/utils/pactl.c:246 src/utils/pactl.c:270
+msgid "Unknown"
+msgstr "Белгісіз"
+
+#: src/utils/pactl.c:247
+msgid "Aux"
+msgstr "Қосалқы"
+
+#: src/utils/pactl.c:250
+msgid "Line"
+msgstr "Сызықтық"
+
+#: src/utils/pactl.c:251
+msgid "Mic"
+msgstr "Микрофон"
+
+#: src/utils/pactl.c:253
+msgid "Handset"
+msgstr "Телефон тұтқасы"
+
+#: src/utils/pactl.c:254
+msgid "Earpiece"
+msgstr "Құлаққап"
+
+#: src/utils/pactl.c:255
+msgid "SPDIF"
+msgstr "SPDIF"
+
+#: src/utils/pactl.c:256
+msgid "HDMI"
+msgstr "HDMI"
+
+#: src/utils/pactl.c:257
+msgid "TV"
+msgstr "TV"
+
+#: src/utils/pactl.c:260
+msgid "USB"
+msgstr "USB"
+
+#: src/utils/pactl.c:261
+msgid "Bluetooth"
+msgstr "Bluetooth"
+
+#: src/utils/pactl.c:267
+msgid "Network"
+msgstr "Желі"
+
+#: src/utils/pactl.c:268
+msgid "Analog"
+msgstr "Аналогтық"
+
+#: src/utils/pactl.c:292 src/utils/pactl.c:944 src/utils/pactl.c:1022
+#, c-format
+msgid "Failed to get sink information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:318
+#, c-format
+msgid ""
+"Sink #%u\n"
+"\tState: %s\n"
+"\tName: %s\n"
+"\tDescription: %s\n"
+"\tDriver: %s\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tOwner Module: %u\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBase Volume: %s\n"
+"\tMonitor Source: %s\n"
+"\tLatency: %0.0f usec, configured %0.0f usec\n"
+"\tFlags: %s%s%s%s%s%s%s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:362 src/utils/pactl.c:470 src/utils/pactl.c:633
+#, c-format
+msgid "\tPorts:\n"
+msgstr "\tПорттар:\n"
+
+#: src/utils/pactl.c:364 src/utils/pactl.c:472
+#, c-format
+msgid "\t\t%s: %s (type: %s, priority: %u%s%s%s)\n"
+msgstr ""
+
+#: src/utils/pactl.c:366 src/utils/pactl.c:474 src/utils/pactl.c:638
+msgid ", available group: "
+msgstr ", қолжетімді топ: "
+
+#: src/utils/pactl.c:371 src/utils/pactl.c:479
+#, c-format
+msgid "\tActive Port: %s\n"
+msgstr "\tБелсенді порт: %s\n"
+
+#: src/utils/pactl.c:377 src/utils/pactl.c:485
+#, c-format
+msgid "\tFormats:\n"
+msgstr "\tПішімдер:\n"
+
+#: src/utils/pactl.c:401 src/utils/pactl.c:964 src/utils/pactl.c:1037
+#, c-format
+msgid "Failed to get source information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:427
+#, c-format
+msgid ""
+"Source #%u\n"
+"\tState: %s\n"
+"\tName: %s\n"
+"\tDescription: %s\n"
+"\tDriver: %s\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tOwner Module: %u\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBase Volume: %s\n"
+"\tMonitor of Sink: %s\n"
+"\tLatency: %0.0f usec, configured %0.0f usec\n"
+"\tFlags: %s%s%s%s%s%s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:455 src/utils/pactl.c:527 src/utils/pactl.c:570
+#: src/utils/pactl.c:612 src/utils/pactl.c:711 src/utils/pactl.c:712
+#: src/utils/pactl.c:723 src/utils/pactl.c:781 src/utils/pactl.c:782
+#: src/utils/pactl.c:793 src/utils/pactl.c:844 src/utils/pactl.c:845
+#: src/utils/pactl.c:851
+msgid "n/a"
+msgstr "қ/ж"
+
+#: src/utils/pactl.c:496 src/utils/pactl.c:901
+#, c-format
+msgid "Failed to get module information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:519
+#, c-format
+msgid ""
+"Module #%u\n"
+"\tName: %s\n"
+"\tArgument: %s\n"
+"\tUsage counter: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:538
+#, c-format
+msgid "Failed to get client information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:564
+#, c-format
+msgid ""
+"Client #%u\n"
+"\tDriver: %s\n"
+"\tOwner Module: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:581
+#, c-format
+msgid "Failed to get card information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:604
+#, c-format
+msgid ""
+"Card #%u\n"
+"\tName: %s\n"
+"\tDriver: %s\n"
+"\tOwner Module: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:620
+#, c-format
+msgid "\tProfiles:\n"
+msgstr "\tПрофильдер:\n"
+
+#: src/utils/pactl.c:622
+#, c-format
+msgid "\t\t%s: %s (sinks: %u, sources: %u, priority: %u, available: %s)\n"
+msgstr ""
+
+#: src/utils/pactl.c:627
+#, c-format
+msgid "\tActive Profile: %s\n"
+msgstr "\tБелсенді профиль: %s\n"
+
+#: src/utils/pactl.c:636
+#, c-format
+msgid ""
+"\t\t%s: %s (type: %s, priority: %u, latency offset: %<PRId64> usec%s%s%s)\n"
+msgstr ""
+
+#: src/utils/pactl.c:642
+#, c-format
+msgid ""
+"\t\t\tProperties:\n"
+"\t\t\t\t%s\n"
+msgstr ""
+"\t\t\tҚасиеттері:\n"
+"\t\t\t\t%s\n"
+
+#: src/utils/pactl.c:647
+#, c-format
+msgid "\t\t\tPart of profile(s): %s"
+msgstr ""
+
+#: src/utils/pactl.c:664 src/utils/pactl.c:984 src/utils/pactl.c:1052
+#, c-format
+msgid "Failed to get sink input information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:693
+#, c-format
+msgid ""
+"Sink Input #%u\n"
+"\tDriver: %s\n"
+"\tOwner Module: %s\n"
+"\tClient: %s\n"
+"\tSink: %u\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tFormat: %s\n"
+"\tCorked: %s\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBuffer Latency: %0.0f usec\n"
+"\tSink Latency: %0.0f usec\n"
+"\tResample method: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:734 src/utils/pactl.c:1004 src/utils/pactl.c:1067
+#, c-format
+msgid "Failed to get source output information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:763
+#, c-format
+msgid ""
+"Source Output #%u\n"
+"\tDriver: %s\n"
+"\tOwner Module: %s\n"
+"\tClient: %s\n"
+"\tSource: %u\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tFormat: %s\n"
+"\tCorked: %s\n"
+"\tMute: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tBuffer Latency: %0.0f usec\n"
+"\tSource Latency: %0.0f usec\n"
+"\tResample method: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:804
+#, c-format
+msgid "Failed to get sample information: %s"
+msgstr ""
+
+#: src/utils/pactl.c:831
+#, c-format
+msgid ""
+"Sample #%u\n"
+"\tName: %s\n"
+"\tSample Specification: %s\n"
+"\tChannel Map: %s\n"
+"\tVolume: %s\n"
+"\t balance %0.2f\n"
+"\tDuration: %0.1fs\n"
+"\tSize: %s\n"
+"\tLazy: %s\n"
+"\tFilename: %s\n"
+"\tProperties:\n"
+"\t\t%s\n"
+msgstr ""
+
+#: src/utils/pactl.c:859 src/utils/pactl.c:869
+#, c-format
+msgid "Failure: %s"
+msgstr ""
+
+#: src/utils/pactl.c:908
+#, c-format
+msgid "Failed to unload module: Module %s not loaded"
+msgstr ""
+
+#: src/utils/pactl.c:926
+#, c-format
+msgid ""
+"Failed to set volume: You tried to set volumes for %d channel, whereas "
+"channel(s) supported = %d\n"
+msgid_plural ""
+"Failed to set volume: You tried to set volumes for %d channels, whereas "
+"channel(s) supported = %d\n"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/utils/pactl.c:1137
+#, c-format
+msgid "Failed to upload sample: %s"
+msgstr ""
+
+#: src/utils/pactl.c:1154
+msgid "Premature end of file"
+msgstr "Файлдың уақытынан бұрын аяқталуы"
+
+#: src/utils/pactl.c:1174
+msgid "new"
+msgstr "жаңа"
+
+#: src/utils/pactl.c:1177
+msgid "change"
+msgstr "өзгерту"
+
+#: src/utils/pactl.c:1180
+msgid "remove"
+msgstr "өшіру"
+
+#: src/utils/pactl.c:1183 src/utils/pactl.c:1218
+msgid "unknown"
+msgstr "белгісіз"
+
+#: src/utils/pactl.c:1191
+msgid "sink"
+msgstr "аудиоқабылдағыш"
+
+#: src/utils/pactl.c:1194
+msgid "source"
+msgstr "қайнаркөз"
+
+#: src/utils/pactl.c:1197
+msgid "sink-input"
+msgstr "аудиоқабылдағыш-кіріс"
+
+#: src/utils/pactl.c:1200
+msgid "source-output"
+msgstr "қайнаркөз-шығыс"
+
+#: src/utils/pactl.c:1203
+msgid "module"
+msgstr "модуль"
+
+#: src/utils/pactl.c:1206
+msgid "client"
+msgstr "клиент"
+
+#: src/utils/pactl.c:1209
+msgid "sample-cache"
+msgstr ""
+
+#: src/utils/pactl.c:1212
+msgid "server"
+msgstr "сервер"
+
+#: src/utils/pactl.c:1215
+msgid "card"
+msgstr "карта"
+
+#: src/utils/pactl.c:1224
+#, c-format
+msgid "Event '%s' on %s #%u\n"
+msgstr ""
+
+#: src/utils/pactl.c:1496
+msgid "Got SIGINT, exiting."
+msgstr "SIGINT алынды, шығу."
+
+#: src/utils/pactl.c:1529
+msgid "Invalid volume specification"
+msgstr ""
+
+#: src/utils/pactl.c:1552
+msgid "Volume outside permissible range.\n"
+msgstr ""
+
+#: src/utils/pactl.c:1565
+msgid "Invalid number of volume specifications.\n"
+msgstr ""
+
+#: src/utils/pactl.c:1577
+msgid "Inconsistent volume specification.\n"
+msgstr ""
+
+#: src/utils/pactl.c:1607 src/utils/pactl.c:1608 src/utils/pactl.c:1609
+#: src/utils/pactl.c:1610 src/utils/pactl.c:1611 src/utils/pactl.c:1612
+#: src/utils/pactl.c:1613 src/utils/pactl.c:1614 src/utils/pactl.c:1615
+#: src/utils/pactl.c:1616 src/utils/pactl.c:1617 src/utils/pactl.c:1618
+#: src/utils/pactl.c:1619 src/utils/pactl.c:1620 src/utils/pactl.c:1621
+#: src/utils/pactl.c:1622 src/utils/pactl.c:1623 src/utils/pactl.c:1624
+#: src/utils/pactl.c:1625 src/utils/pactl.c:1626 src/utils/pactl.c:1627
+msgid "[options]"
+msgstr "[опциялар]"
+
+#: src/utils/pactl.c:1609
+msgid "[TYPE]"
+msgstr "[ТҮРІ]"
+
+#: src/utils/pactl.c:1611
+msgid "FILENAME [NAME]"
+msgstr ""
+
+#: src/utils/pactl.c:1612
+msgid "NAME [SINK]"
+msgstr ""
+
+#: src/utils/pactl.c:1621
+msgid "NAME|#N VOLUME [VOLUME ...]"
+msgstr ""
+
+#: src/utils/pactl.c:1622
+msgid "#N VOLUME [VOLUME ...]"
+msgstr ""
+
+#: src/utils/pactl.c:1623
+msgid "NAME|#N 1|0|toggle"
+msgstr ""
+
+#: src/utils/pactl.c:1624
+msgid "#N 1|0|toggle"
+msgstr ""
+
+#: src/utils/pactl.c:1625
+msgid "#N FORMATS"
+msgstr ""
+
+#: src/utils/pactl.c:1628
+#, c-format
+msgid ""
+"\n"
+"The special names @DEFAULT_SINK@, @DEFAULT_SOURCE@ and @DEFAULT_MONITOR@\n"
+"can be used to specify the default sink, source and monitor.\n"
+msgstr ""
+
+#: src/utils/pactl.c:1631
+#, c-format
+msgid ""
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+"\n"
+" -s, --server=SERVER The name of the server to connect "
+"to\n"
+" -n, --client-name=NAME How to call this client on the "
+"server\n"
+msgstr ""
+"\n"
+" -h, --help Бұл көмекті көрсету\n"
+" --version Нұсқасын көрсету\n"
+"\n"
+" -s, --server=СЕРВЕР Байланысу үшін сервер аты\n"
+" -n, --client-name=АТЫ Бұл клиентті серверде қалай атау "
+"керек\n"
+
+#: src/utils/pactl.c:1672
+#, c-format
+msgid ""
+"pactl %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: src/utils/pactl.c:1728
+#, c-format
+msgid "Specify nothing, or one of: %s"
+msgstr ""
+
+#: src/utils/pactl.c:1738
+msgid "Please specify a sample file to load"
+msgstr "Жүктеу үшін үлгі файлын көрсетіңіз"
+
+#: src/utils/pactl.c:1751
+msgid "Failed to open sound file."
+msgstr "Дыбыс файлын ашу сәтсіз аяқталды."
+
+#: src/utils/pactl.c:1763
+msgid "Warning: Failed to determine sample specification from file."
+msgstr ""
+
+#: src/utils/pactl.c:1773
+msgid "You have to specify a sample name to play"
+msgstr ""
+
+#: src/utils/pactl.c:1785
+msgid "You have to specify a sample name to remove"
+msgstr ""
+
+#: src/utils/pactl.c:1794
+msgid "You have to specify a sink input index and a sink"
+msgstr ""
+
+#: src/utils/pactl.c:1804
+msgid "You have to specify a source output index and a source"
+msgstr ""
+
+#: src/utils/pactl.c:1819
+msgid "You have to specify a module name and arguments."
+msgstr ""
+
+#: src/utils/pactl.c:1839
+msgid "You have to specify a module index or name"
+msgstr ""
+
+#: src/utils/pactl.c:1852
+msgid ""
+"You may not specify more than one sink. You have to specify a boolean value."
+msgstr ""
+
+#: src/utils/pactl.c:1857 src/utils/pactl.c:1877
+msgid "Invalid suspend specification."
+msgstr ""
+
+#: src/utils/pactl.c:1872
+msgid ""
+"You may not specify more than one source. You have to specify a boolean "
+"value."
+msgstr ""
+
+#: src/utils/pactl.c:1889
+msgid "You have to specify a card name/index and a profile name"
+msgstr ""
+
+#: src/utils/pactl.c:1900
+msgid "You have to specify a sink name/index and a port name"
+msgstr ""
+
+#: src/utils/pactl.c:1911
+msgid "You have to specify a sink name"
+msgstr ""
+
+#: src/utils/pactl.c:1921
+msgid "You have to specify a source name/index and a port name"
+msgstr ""
+
+#: src/utils/pactl.c:1932
+msgid "You have to specify a source name"
+msgstr ""
+
+#: src/utils/pactl.c:1942
+msgid "You have to specify a sink name/index and a volume"
+msgstr ""
+
+#: src/utils/pactl.c:1955
+msgid "You have to specify a source name/index and a volume"
+msgstr ""
+
+#: src/utils/pactl.c:1968
+msgid "You have to specify a sink input index and a volume"
+msgstr ""
+
+#: src/utils/pactl.c:1973
+msgid "Invalid sink input index"
+msgstr ""
+
+#: src/utils/pactl.c:1984
+msgid "You have to specify a source output index and a volume"
+msgstr ""
+
+#: src/utils/pactl.c:1989
+msgid "Invalid source output index"
+msgstr ""
+
+#: src/utils/pactl.c:2000
+msgid ""
+"You have to specify a sink name/index and a mute action (0, 1, or 'toggle')"
+msgstr ""
+
+#: src/utils/pactl.c:2005 src/utils/pactl.c:2020 src/utils/pactl.c:2040
+#: src/utils/pactl.c:2058
+msgid "Invalid mute specification"
+msgstr ""
+
+#: src/utils/pactl.c:2015
+msgid ""
+"You have to specify a source name/index and a mute action (0, 1, or 'toggle')"
+msgstr ""
+
+#: src/utils/pactl.c:2030
+msgid ""
+"You have to specify a sink input index and a mute action (0, 1, or 'toggle')"
+msgstr ""
+
+#: src/utils/pactl.c:2035
+msgid "Invalid sink input index specification"
+msgstr ""
+
+#: src/utils/pactl.c:2048
+msgid ""
+"You have to specify a source output index and a mute action (0, 1, or "
+"'toggle')"
+msgstr ""
+
+#: src/utils/pactl.c:2053
+msgid "Invalid source output index specification"
+msgstr ""
+
+#: src/utils/pactl.c:2070
+msgid ""
+"You have to specify a sink index and a semicolon-separated list of supported "
+"formats"
+msgstr ""
+
+#: src/utils/pactl.c:2082
+msgid "You have to specify a card name/index, a port name and a latency offset"
+msgstr ""
+
+#: src/utils/pactl.c:2089
+msgid "Could not parse latency offset"
+msgstr ""
+
+#: src/utils/pactl.c:2101
+msgid "No valid command specified."
+msgstr "Жарамды команда көрсетілмеген."
+
+#: src/utils/pasuspender.c:79
+#, c-format
+msgid "fork(): %s\n"
+msgstr "fork(): %s\n"
+
+#: src/utils/pasuspender.c:92
+#, c-format
+msgid "execvp(): %s\n"
+msgstr "execvp(): %s\n"
+
+#: src/utils/pasuspender.c:111
+#, c-format
+msgid "Failure to resume: %s\n"
+msgstr ""
+
+#: src/utils/pasuspender.c:145
+#, c-format
+msgid "Failure to suspend: %s\n"
+msgstr ""
+
+#: src/utils/pasuspender.c:170
+#, c-format
+msgid "WARNING: Sound server is not local, not suspending.\n"
+msgstr ""
+
+#: src/utils/pasuspender.c:183
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Байланысты орнату қатесі: %s\n"
+
+#: src/utils/pasuspender.c:201
+#, c-format
+msgid "Got SIGINT, exiting.\n"
+msgstr "SIGINT алынды, шығу.\n"
+
+#: src/utils/pasuspender.c:219
+#, c-format
+msgid "WARNING: Child process terminated by signal %u\n"
+msgstr ""
+
+#: src/utils/pasuspender.c:228
+#, c-format
+msgid ""
+"%s [options] -- PROGRAM [ARGUMENTS ...]\n"
+"\n"
+"Temporarily suspend PulseAudio while PROGRAM runs.\n"
+"\n"
+" -h, --help Show this help\n"
+" --version Show version\n"
+" -s, --server=SERVER The name of the server to connect "
+"to\n"
+"\n"
+msgstr ""
+
+#: src/utils/pasuspender.c:267
+#, c-format
+msgid ""
+"pasuspender %s\n"
+"Compiled with libpulse %s\n"
+"Linked with libpulse %s\n"
+msgstr ""
+
+#: src/utils/pasuspender.c:296
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() сәтсіз аяқталды.\n"
+
+#: src/utils/pasuspender.c:309
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() сәтсіз аяқталды.\n"
+
+#: src/utils/pasuspender.c:321
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() сәтсіз аяқталды.\n"
+
+#: src/utils/pax11publish.c:58
+#, c-format
+msgid ""
+"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
+"\n"
+" -d Show current PulseAudio data attached to X11 display (default)\n"
+" -e Export local PulseAudio data to X11 display\n"
+" -i Import PulseAudio data from X11 display to local environment "
+"variables and cookie file.\n"
+" -r Remove PulseAudio data from X11 display\n"
+msgstr ""
+
+#: src/utils/pax11publish.c:91
+#, c-format
+msgid "Failed to parse command line.\n"
+msgstr "Командалық жолды талдау сәтсіз аяқталды.\n"
+
+#: src/utils/pax11publish.c:110
+#, c-format
+msgid "Server: %s\n"
+msgstr "Сервер: %s\n"
+
+#: src/utils/pax11publish.c:112
+#, c-format
+msgid "Source: %s\n"
+msgstr "Қайнар көзі: %s\n"
+
+#: src/utils/pax11publish.c:114
+#, c-format
+msgid "Sink: %s\n"
+msgstr "Аудиоқабылдағыш: %s\n"
+
+#: src/utils/pax11publish.c:116
+#, c-format
+msgid "Cookie: %s\n"
+msgstr "Cookie: %s\n"
+
+#: src/utils/pax11publish.c:134
+#, c-format
+msgid "Failed to parse cookie data\n"
+msgstr "Cookie деректерін талдау сәтсіз аяқталды\n"
+
+#: src/utils/pax11publish.c:139
+#, c-format
+msgid "Failed to save cookie data\n"
+msgstr "Cookie деректерін сақтау сәтсіз аяқталды\n"
+
+#: src/utils/pax11publish.c:168
+#, c-format
+msgid "Failed to get FQDN.\n"
+msgstr "FQDN алу сәтсіз аяқталды.\n"
+
+#: src/utils/pax11publish.c:188
+#, c-format
+msgid "Failed to load cookie data\n"
+msgstr "Cookie деректерін жүктеу сәтсіз аяқталды\n"
+
+#: src/utils/pax11publish.c:206
+#, c-format
+msgid "Not yet implemented.\n"
+msgstr "Әлі іске асырылмаған.\n"
diff --git a/po/kn.gmo b/po/kn.gmo
index fd58791..d7d53b5 100644
--- a/po/kn.gmo
+++ b/po/kn.gmo
Binary files differ
diff --git a/po/ko.gmo b/po/ko.gmo
index 82774c9..2435052 100644
--- a/po/ko.gmo
+++ b/po/ko.gmo
Binary files differ
diff --git a/po/lt.gmo b/po/lt.gmo
index ac01845..342bc62 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/meson.build b/po/meson.build
index 91b73ea..34278db 100644
--- a/po/meson.build
+++ b/po/meson.build
@@ -1,4 +1,11 @@
i18n = import('i18n')
-i18n.gettext(meson.project_name(), preset: 'glib')
+i18n.gettext(
+ meson.project_name(),
+ preset: 'glib',
+ # Page width is set to 90 characters in order to avoid bad wrapping of the
+ # bug reporting address.
+ args: ['--msgid-bugs-address=https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/new',
+ '--width=90'],
+)
po_dir = meson.current_source_dir()
diff --git a/po/ml.gmo b/po/ml.gmo
index 6bffe36..3e0c7e7 100644
--- a/po/ml.gmo
+++ b/po/ml.gmo
Binary files differ
diff --git a/po/mr.gmo b/po/mr.gmo
index 861c888..08b3ec7 100644
--- a/po/mr.gmo
+++ b/po/mr.gmo
Binary files differ
diff --git a/po/nl.gmo b/po/nl.gmo
index a73f2eb..afd046e 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index e5be84d..4470aef 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -9,13 +9,16 @@ msgstr ""
"Project-Id-Version: pulseaudio.master-tx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-01-30 10:10+0000\n"
-"PO-Revision-Date: 2012-01-30 09:54+0000\n"
-"Last-Translator: Reinout van Schouwen <reinout@gmail.com>\n"
-"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
+"PO-Revision-Date: 2020-07-11 20:27+0000\n"
+"Last-Translator: Geert Warrink <geert.warrink@onsnet.nu>\n"
+"Language-Team: Dutch <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/nl/>\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: \n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.1.1\n"
#: ../src/modules/alsa/alsa-util.c:1136 ../src/modules/alsa/alsa-util.c:1204
#, c-format
@@ -44,17 +47,17 @@ msgstr ""
"probleem alstublieft aan de ALSA-ontwikkelaars."
#: ../src/modules/alsa/alsa-util.c:1220
-#, fuzzy, c-format
+#, c-format
msgid ""
"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
"%lu.\n"
"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
"to the ALSA developers."
msgstr ""
-"snd_pcm_avail() gaf een waarde terug die uitzonderlijk groot is: %lu bytes "
-"(%lu ms).\n"
-"Waarschijnlijk is dit een fout in het ALSA-stuurprogramma ‘%s’. Meld dit "
-"probleem alstublieft aan de ALSA-ontwikkelaars."
+"snd_pcm_avail_delay() gaf vreemde waardes terug: vertraging %lu is minder "
+"dan %lu.\n"
+"Waarschijnlijk is dit een fout in het ALSA-stuurprogramma '%s'. Meld dit "
+"probleem aan de ALSA-ontwikkelaars."
#: ../src/modules/alsa/alsa-util.c:1263
#, c-format
@@ -83,7 +86,6 @@ msgid "Virtual LADSPA sink"
msgstr "Virtuele LADSPA afvoer"
#: ../src/modules/module-ladspa-sink.c:52
-#, fuzzy
msgid ""
"sink_name=<name for the sink> sink_properties=<properties for the sink> "
"master=<name of sink to filter> format=<sample format> rate=<sample rate> "
@@ -95,9 +97,11 @@ msgid ""
msgstr ""
"sink_name=<naam voor de afvoer> sink_properties=<eigenschappen van de "
"afvoer> master=<naam van de te filteren afvoer> format=<sampleformaat> "
-"rate=<sample snelheid> channels=<aantal kanalen> channel_map=<kanaalkaart> "
-"plugin=<ladspa pluginnaam> label=<ladspa pluginlabel> "
-"control=<kommagescheiden lijst van invoercontrolewaarden>"
+"rate=<sample snelheid> channels=<aantal kanalen> "
+"channel_map=<inputkanaalkaart> plugin=<ladspa pluginnaam> label=<ladspa "
+"pluginlabel> control=<kommagescheiden lijst van invoercontrolewaarden> "
+"input_ladspaport_map=<kommagescheiden lijst van input LADSPA poortnamen> "
+"output_ladspaport_map=<kommagescheiden lijst van output LADSPA poortnamen> "
#: ../src/modules/module-null-sink.c:49
msgid "Clocked NULL sink"
@@ -203,6 +207,8 @@ msgid ""
"System mode refused for non-root user. Only starting the D-Bus server lookup "
"service."
msgstr ""
+"Systeemmodus geweigerd voor niet-rootgebruiker. Alleen starten van de D-Bus-"
+"server zoekservice."
#: ../src/daemon/main.c:611
msgid "Daemon not running"
@@ -238,12 +244,16 @@ msgstr "--start wordt niet ondersteund voor systeeminstanties"
#, c-format
msgid "User-configured server at %s, refusing to start/autospawn."
msgstr ""
+"Door gebruiker geconfigureerde server op %s, die weigert te starten/"
+"autospawn."
#: ../src/daemon/main.c:713
#, c-format
msgid ""
"User-configured server at %s, which appears to be local. Probing deeper."
msgstr ""
+"Door gebruiker geconfigureerde server op %s, die lokaal lijkt te zijn. "
+"Dieper onderzoeken."
#: ../src/daemon/main.c:718
msgid "Running in system mode, but --disallow-exit not set!"
@@ -267,9 +277,9 @@ msgid "Failed to acquire stdio."
msgstr "Verkrijgen van stdio mislukte."
#: ../src/daemon/main.c:763 ../src/daemon/main.c:828
-#, fuzzy, c-format
+#, c-format
msgid "pipe() failed: %s"
-msgstr "pipe mislukte: %s"
+msgstr "pipe() mislukte: %s"
#: ../src/daemon/main.c:768 ../src/daemon/main.c:833
#, c-format
@@ -290,9 +300,9 @@ msgid "Daemon startup successful."
msgstr "Voorziening met succes opgestart."
#: ../src/daemon/main.c:816
-#, fuzzy, c-format
+#, c-format
msgid "setsid() failed: %s"
-msgstr "read() mislukte: %s"
+msgstr "setsid() mislukte: %s"
#: ../src/daemon/main.c:901
#, c-format
@@ -338,9 +348,9 @@ msgid "Running in valgrind mode: %s"
msgstr "Draaiend in valgrind-modus: %s"
#: ../src/daemon/main.c:921
-#, fuzzy, c-format
+#, c-format
msgid "Running in VM: %s"
-msgstr "Draaiend op host: %s"
+msgstr "Draaiend in VM: %s"
#: ../src/daemon/main.c:924
msgid "Optimized build: yes"
@@ -455,7 +465,7 @@ msgid "Daemon terminated."
msgstr "Voorziening is afgesloten."
#: ../src/daemon/cmdline.c:113
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -547,7 +557,8 @@ msgstr ""
" --fail[=BOOL] Verlaat als opstarten mislukt\n"
" --high-priority[=BOOL] Probeer een hoog nice nivo in te "
"stellen\n"
-" (only beschikbaar voor, als SUID of\n"
+" (alleen beschikbaar voor, als SUID "
+"of\n"
" met verhoogde RLIMIT_NICE)\n"
" --realtime[=BOOL] Probeer realtime scheduling aan te "
"zetten \n"
@@ -563,26 +574,24 @@ msgstr ""
" --exit-idle-time=SECS Sluit de daemon af deze niets doet "
"en deze tijd\n"
" verstreken is\n"
-" --module-idle-time=SECS Verwijder automatisch geladen "
-"modules als deze niets\n"
-" doen en deze tijd verstreken is\n"
-" --scache-idle-time=SECS Verwijder automatisch geladen "
-"samples als deze niets\n"
+" --scache-idle-time=SECS Verwijder automatisch geladen samples "
+"als deze niets\n"
" doen en deze tijd verstreken is\n"
" --log-level[=LEVEL] Verhoog of instellen van "
"breedsprakigheids nivo\n"
-" -v Verhoog breedsprakigheids nivo\n"
-" --log-target={auto,syslog,stderr} Specificeer het log doel\n"
+" -v Verhoog breedsprakigheids-niveau\n"
+" --log-target={auto,syslog,stderr,file:PAD}\n"
+" Specificeer het log doel\n"
" --log-meta[=BOOL] Voeg code locatie toe aan log "
"boodschappen\n"
" --log-time[=BOOL] Voeg tijdstempels toe aan log "
"boodschappen\n"
" --log-backtrace=FRAMES Voeg een backtrace toe aan log "
"boodscvhappen\n"
-" -p, --dl-search-path=PATH Stel het zoek pad voor dynamisch "
+" -p, --dl-search-path=PAD Stel het zoek pad voor dynamisch "
"gedeelde\n"
" objecten in (plugins)\n"
-" --resample-method=METHOD Gebruik de opgegeven resampling "
+" --resample-method=METHODE Gebruik de opgegeven resampling "
"methode\n"
" (Zie --dump-resample-methods voor\n"
" mogelijke waardes)\n"
@@ -590,14 +599,14 @@ msgstr ""
" --no-cpu-limit[=BOOL] Installeer geen CPU load begrenzer "
"op\n"
" platforms die dat ondersteunen.\n"
-" --disable-shm[=BOOL] Zet gedeeld heugen ondersteuning "
-"uit.\n"
+" --disable-shm[=BOOL] Zet gedeeld heugen ondersteuning uit."
+"\n"
"\n"
"OPSTART SCRIPT:\n"
" -L, --load=\"MODULE ARGUMENTS\" Laad de opgegeven plugin module "
"met\n"
" de opgegeven argumenten\n"
-" -F, --file=FILENAME Draai het opgegeven script\n"
+" -F, --file=BESTANSNAAM Draai het opgegeven script\n"
" -C Open een opdrachtregel op de "
"draaiende TTY\n"
" na het opstarten\n"
@@ -642,11 +651,12 @@ msgid "--use-pid-file expects boolean argument"
msgstr "--use-pid-file verwacht een boolean argument"
#: ../src/daemon/cmdline.c:318
-#, fuzzy
msgid ""
"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
"name 'file:<path>'."
-msgstr "Ongeldig log doel: gebruik een van 'syslog', 'stderr', 'auto'."
+msgstr ""
+"Ongeldig log doel: gebruik een van 'syslog', 'stderr' of 'auto' of een "
+"geldige bestandsnaam 'file:<path>'."
#: ../src/daemon/cmdline.c:325
msgid "--log-time expects boolean argument"
@@ -774,9 +784,9 @@ msgid "[%s:%u] Invalid nice level '%s'."
msgstr "[%s:%u] Ongeldig nice niveau ‘%s’."
#: ../src/daemon/daemon-conf.c:528
-#, fuzzy, c-format
+#, c-format
msgid "[%s:%u] Invalid server type '%s'."
-msgstr "[%s:%u] Ongeldige samlperate ‘%s’."
+msgstr "[%s:%u] Ongeldige servertype '%s'."
#: ../src/daemon/daemon-conf.c:641
#, c-format
@@ -809,14 +819,12 @@ msgid "Start the PulseAudio Sound System"
msgstr "Start het PulseAudio geluidssysteem"
#: ../src/daemon/pulseaudio-kde.desktop.in.h:1
-#, fuzzy
msgid "PulseAudio Sound System KDE Routing Policy"
-msgstr "PulseAudio geluidssysteem"
+msgstr "PulseAudio geluidssysteem KDE-routeringsbeleid"
#: ../src/daemon/pulseaudio-kde.desktop.in.h:2
-#, fuzzy
msgid "Start the PulseAudio Sound System with KDE Routing Policy"
-msgstr "Start het PulseAudio geluidssysteem"
+msgstr "Start het PulseAudio geluidssysteem met KDE-routeringsbeleid"
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:757
msgid "Mono"
@@ -848,7 +856,7 @@ msgstr "Achter rechts"
#: ../src/pulse/channelmap.c:115
msgid "Subwoofer"
-msgstr ""
+msgstr "Subwoofer"
#: ../src/pulse/channelmap.c:117
msgid "Front Left-of-center"
@@ -1187,13 +1195,12 @@ msgid "%u B"
msgstr "%u B"
#: ../src/pulse/client-conf-x11.c:54 ../src/utils/pax11publish.c:100
-#, fuzzy
msgid "xcb_connect() failed"
-msgstr "pa_context_connect() mislukte: %s"
+msgstr "xcb_connect() mislukte"
#: ../src/pulse/client-conf-x11.c:59 ../src/utils/pax11publish.c:105
msgid "xcb_connection_has_error() returned true"
-msgstr ""
+msgstr "xcb_connection_has_error() gaf true terug"
#: ../src/pulse/client-conf-x11.c:97
msgid "Failed to parse cookie data"
@@ -1331,15 +1338,15 @@ msgstr "Stroom buffer attributen veranderden.%s"
#: ../src/utils/pacat.c:416
msgid "Cork request stack is empty: corking stream"
-msgstr ""
+msgstr "Cork verzoekstack is leeg: corking stream"
#: ../src/utils/pacat.c:422
msgid "Cork request stack is empty: uncorking stream"
-msgstr ""
+msgstr "Cork verzoekstack is leeg: uncorking stream"
#: ../src/utils/pacat.c:426
msgid "Warning: Received more uncork requests than cork requests!"
-msgstr ""
+msgstr "Waarschuwing: meer ontkurkverzoeken ontvangen dan kurkverzoeken!"
#: ../src/utils/pacat.c:451
#, c-format
diff --git a/po/nn.gmo b/po/nn.gmo
index 7476877..5284aee 100644
--- a/po/nn.gmo
+++ b/po/nn.gmo
Binary files differ
diff --git a/po/oc.gmo b/po/oc.gmo
index 24e4d6a..c1c4df8 100644
--- a/po/oc.gmo
+++ b/po/oc.gmo
Binary files differ
diff --git a/po/or.gmo b/po/or.gmo
index 1007431..11c4d2a 100644
--- a/po/or.gmo
+++ b/po/or.gmo
Binary files differ
diff --git a/po/pa.gmo b/po/pa.gmo
index 38ce8d9..441052a 100644
--- a/po/pa.gmo
+++ b/po/pa.gmo
Binary files differ
diff --git a/po/pl.gmo b/po/pl.gmo
index 7b730c2..ace9c2e 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 746ee82..59941a2 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -9,15 +9,17 @@ msgstr ""
"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/"
"issues\n"
"POT-Creation-Date: 2019-07-16 15:29+0000\n"
-"PO-Revision-Date: 2019-07-20 14:12+0200\n"
+"PO-Revision-Date: 2020-07-04 10:50+0000\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
-"Language-Team: Polish <trans-pl@lists.fedoraproject.org>\n"
+"Language-Team: Polish <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/pl/>\n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
-"|| n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.1.1\n"
#: src/daemon/cmdline.c:113
#, c-format
@@ -1771,7 +1773,7 @@ msgstr "Potok został przeniesiony do urządzenia %s (%u, %swstrzymane).%s"
#: src/utils/pacat.c:393
msgid "not "
-msgstr "nie"
+msgstr "nie "
#: src/utils/pacat.c:400
#, c-format
diff --git a/po/pt.gmo b/po/pt.gmo
index 6c1f79b..2f3d99c 100644
--- a/po/pt.gmo
+++ b/po/pt.gmo
Binary files differ
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index d68bb89..2bbb0a2 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 76839ce..4845985 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -1,16 +1,16 @@
# Brazilian Portuguese translation for pulseaudio
-# Copyright (C) 2019 Rafael Fontenelle <rafaelff@gnome.org>
+# Copyright (C) 2020 Rafael Fontenelle <rafaelff@gnome.org>
# This file is distributed under the same license as the pulseaudio package.
# Fabian Affolter <fab@fedoraproject.org>, 2008.
# Igor Pires Soares <igor@projetofedora.org>, 2009, 2012.
-# Rafael Fontenelle <rafaelff@gnome.org>, 2013-2019.
+# Rafael Fontenelle <rafaelff@gnome.org>, 2013-2020.
#
msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues\n"
-"POT-Creation-Date: 2019-08-30 03:28+0000\n"
-"PO-Revision-Date: 2019-08-30 08:56-0300\n"
+"POT-Creation-Date: 2020-09-12 03:32+0000\n"
+"PO-Revision-Date: 2020-09-12 12:12-0300\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n"
"Language: pt_BR\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1)\n"
-"X-Generator: Gtranslator 3.32.0\n"
+"X-Generator: Gtranslator 3.38.0\n"
#: src/daemon/cmdline.c:113
#, c-format
@@ -222,76 +222,76 @@ msgstr "--disable-shm espera argumento booleano"
msgid "--enable-memfd expects boolean argument"
msgstr "--enable-memfd espera um argumento booleano"
-#: src/daemon/daemon-conf.c:268
+#: src/daemon/daemon-conf.c:270
#, c-format
msgid "[%s:%u] Invalid log target '%s'."
msgstr "[%s:%u] Alvo do log inválido “%s”."
-#: src/daemon/daemon-conf.c:283
+#: src/daemon/daemon-conf.c:285
#, c-format
msgid "[%s:%u] Invalid log level '%s'."
msgstr "[%s:%u] Nível de log inválido “%s”."
-#: src/daemon/daemon-conf.c:298
+#: src/daemon/daemon-conf.c:300
#, c-format
msgid "[%s:%u] Invalid resample method '%s'."
msgstr "[%s:%u] Método de reamostragem inválido “%s”."
-#: src/daemon/daemon-conf.c:320
+#: src/daemon/daemon-conf.c:322
#, c-format
msgid "[%s:%u] Invalid rlimit '%s'."
msgstr "[%s:%u] rlimit inválido “%s”."
-#: src/daemon/daemon-conf.c:340
+#: src/daemon/daemon-conf.c:342
#, c-format
msgid "[%s:%u] Invalid sample format '%s'."
msgstr "[%s:%u] Formato de amostragem inválido “%s”."
-#: src/daemon/daemon-conf.c:357 src/daemon/daemon-conf.c:374
+#: src/daemon/daemon-conf.c:359 src/daemon/daemon-conf.c:376
#, c-format
msgid "[%s:%u] Invalid sample rate '%s'."
msgstr "[%s:%u] Taxa de amostragem inválida “%s”."
-#: src/daemon/daemon-conf.c:397
+#: src/daemon/daemon-conf.c:399
#, c-format
msgid "[%s:%u] Invalid sample channels '%s'."
msgstr "[%s:%u] Canais de amostragem inválidos “%s”."
-#: src/daemon/daemon-conf.c:414
+#: src/daemon/daemon-conf.c:416
#, c-format
msgid "[%s:%u] Invalid channel map '%s'."
msgstr "[%s:%u] Mapa de canais inválido “%s”."
-#: src/daemon/daemon-conf.c:431
+#: src/daemon/daemon-conf.c:433
#, c-format
msgid "[%s:%u] Invalid number of fragments '%s'."
msgstr "[%s:%u] Números de fragmentos inválidos “%s”."
-#: src/daemon/daemon-conf.c:448
+#: src/daemon/daemon-conf.c:450
#, c-format
msgid "[%s:%u] Invalid fragment size '%s'."
msgstr "[%s:%u] Tamanho de fragmentos inválido “%s”."
-#: src/daemon/daemon-conf.c:465
+#: src/daemon/daemon-conf.c:467
#, c-format
msgid "[%s:%u] Invalid nice level '%s'."
msgstr "[%s:%u] Número de nice inválido “%s”."
-#: src/daemon/daemon-conf.c:508
+#: src/daemon/daemon-conf.c:552
#, c-format
msgid "[%s:%u] Invalid server type '%s'."
msgstr "[%s:%u] Tipo de servidor inválido “%s”."
-#: src/daemon/daemon-conf.c:626
+#: src/daemon/daemon-conf.c:673
#, c-format
msgid "Failed to open configuration file: %s"
msgstr "Falha em abrir o arquivo de configuração: %s"
-#: src/daemon/daemon-conf.c:642
+#: src/daemon/daemon-conf.c:689
msgid "The specified default channel map has a different number of channels than the specified default number of channels."
msgstr "O mapa padrão dos canais especificado tem um número diferente de canais do que o número de canais padrão especificado."
-#: src/daemon/daemon-conf.c:729
+#: src/daemon/daemon-conf.c:776
#, c-format
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lido do arquivo de configuração: %s ###\n"
@@ -501,16 +501,16 @@ msgstr "pa_pid_file_create() falhou."
msgid "pa_core_new() failed."
msgstr "pa_core_new() falhou."
-#: src/daemon/main.c:1108
+#: src/daemon/main.c:1114
msgid "command line arguments"
msgstr "argumentos de linha de comando"
-#: src/daemon/main.c:1115
+#: src/daemon/main.c:1121
#, c-format
msgid "Failed to initialize daemon due to errors while executing startup commands. Source of commands: %s"
msgstr "Falha ao inicializar o daemon devido a erros ao executar comandos de inicialização. Fonte dos comandos: %s"
-#: src/daemon/main.c:1120
+#: src/daemon/main.c:1126
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "O Daemon iniciou sem qualquer módulo carregado, recusando-se a trabalhar."
@@ -520,173 +520,168 @@ msgstr "Sistema de som PulseAudio"
#: src/daemon/pulseaudio.desktop.in:5
msgid "Start the PulseAudio Sound System"
-msgstr "Iniciar o sistema de som PulseAudio"
+msgstr "Inicie o sistema de som PulseAudio"
-#: src/modules/alsa/alsa-mixer.c:2443
+#: src/modules/alsa/alsa-mixer.c:2621
msgid "Input"
msgstr "Entrada"
-#: src/modules/alsa/alsa-mixer.c:2444
+#: src/modules/alsa/alsa-mixer.c:2622
msgid "Docking Station Input"
msgstr "Entrada da base de encaixe"
-#: src/modules/alsa/alsa-mixer.c:2445
+#: src/modules/alsa/alsa-mixer.c:2623
msgid "Docking Station Microphone"
msgstr "Microfone de estação de base de encaixe"
-#: src/modules/alsa/alsa-mixer.c:2446
+#: src/modules/alsa/alsa-mixer.c:2624
msgid "Docking Station Line In"
msgstr "Entrada de linha de estação de base de encaixe"
-#: src/modules/alsa/alsa-mixer.c:2447 src/modules/alsa/alsa-mixer.c:2532
+#: src/modules/alsa/alsa-mixer.c:2625 src/modules/alsa/alsa-mixer.c:2716
msgid "Line In"
msgstr "Entrada de linha"
-#: src/modules/alsa/alsa-mixer.c:2448 src/modules/alsa/alsa-mixer.c:2526
-#: src/modules/bluetooth/module-bluez5-device.c:1757
+#: src/modules/alsa/alsa-mixer.c:2626 src/modules/alsa/alsa-mixer.c:2710
+#: src/modules/bluetooth/module-bluez5-device.c:1792
msgid "Microphone"
msgstr "Microfone"
-#: src/modules/alsa/alsa-mixer.c:2449 src/modules/alsa/alsa-mixer.c:2527
+#: src/modules/alsa/alsa-mixer.c:2627 src/modules/alsa/alsa-mixer.c:2711
msgid "Front Microphone"
msgstr "Microfone frontal"
-#: src/modules/alsa/alsa-mixer.c:2450 src/modules/alsa/alsa-mixer.c:2528
+#: src/modules/alsa/alsa-mixer.c:2628 src/modules/alsa/alsa-mixer.c:2712
msgid "Rear Microphone"
-msgstr "Microfone posterior"
+msgstr "Microfone traseiro"
-#: src/modules/alsa/alsa-mixer.c:2451
+#: src/modules/alsa/alsa-mixer.c:2629
msgid "External Microphone"
msgstr "Microfone externo"
-#: src/modules/alsa/alsa-mixer.c:2452 src/modules/alsa/alsa-mixer.c:2530
+#: src/modules/alsa/alsa-mixer.c:2630 src/modules/alsa/alsa-mixer.c:2714
msgid "Internal Microphone"
msgstr "Microfone interno"
-#: src/modules/alsa/alsa-mixer.c:2453 src/modules/alsa/alsa-mixer.c:2533
+#: src/modules/alsa/alsa-mixer.c:2631 src/modules/alsa/alsa-mixer.c:2717
+#: src/utils/pactl.c:258
msgid "Radio"
msgstr "Rádio"
-#: src/modules/alsa/alsa-mixer.c:2454 src/modules/alsa/alsa-mixer.c:2534
+#: src/modules/alsa/alsa-mixer.c:2632 src/modules/alsa/alsa-mixer.c:2718
+#: src/utils/pactl.c:259
msgid "Video"
msgstr "Vídeo"
# https://pt.wikipedia.org/wiki/Controle_autom%C3%A1tico_de_ganho
-#: src/modules/alsa/alsa-mixer.c:2455
+#: src/modules/alsa/alsa-mixer.c:2633
msgid "Automatic Gain Control"
msgstr "Controle automático de ganho"
# https://pt.wikipedia.org/wiki/Controle_autom%C3%A1tico_de_ganho
-#: src/modules/alsa/alsa-mixer.c:2456
+#: src/modules/alsa/alsa-mixer.c:2634
msgid "No Automatic Gain Control"
msgstr "Sem controle automático de ganho"
# Este contexto de Boost é "reforço" no áudio, e não "impulso".
-#: src/modules/alsa/alsa-mixer.c:2457
+#: src/modules/alsa/alsa-mixer.c:2635
msgid "Boost"
msgstr "Reforço"
# Este contexto de Boost é "reforço" no áudio, e não "impulso".
-#: src/modules/alsa/alsa-mixer.c:2458
+#: src/modules/alsa/alsa-mixer.c:2636
msgid "No Boost"
msgstr "Sem reforço"
-#: src/modules/alsa/alsa-mixer.c:2459
+#: src/modules/alsa/alsa-mixer.c:2637
msgid "Amplifier"
msgstr "Amplificador"
-#: src/modules/alsa/alsa-mixer.c:2460
+#: src/modules/alsa/alsa-mixer.c:2638
msgid "No Amplifier"
msgstr "Sem amplificador"
# Este contexto de Boost é "reforço" no áudio, e não "impulso".
-#: src/modules/alsa/alsa-mixer.c:2461
+#: src/modules/alsa/alsa-mixer.c:2639
msgid "Bass Boost"
msgstr "Reforço de graves"
# Este contexto de Boost é "reforço" no áudio, e não "impulso".
-#: src/modules/alsa/alsa-mixer.c:2462
+#: src/modules/alsa/alsa-mixer.c:2640
msgid "No Bass Boost"
msgstr "Sem reforço de graves"
-#: src/modules/alsa/alsa-mixer.c:2463
-#: src/modules/bluetooth/module-bluez5-device.c:1764
+#: src/modules/alsa/alsa-mixer.c:2641
+#: src/modules/bluetooth/module-bluez5-device.c:1800 src/utils/pactl.c:248
msgid "Speaker"
msgstr "Auto-falante"
-#: src/modules/alsa/alsa-mixer.c:2464 src/modules/alsa/alsa-mixer.c:2536
+#: src/modules/alsa/alsa-mixer.c:2642 src/modules/alsa/alsa-mixer.c:2720
+#: src/utils/pactl.c:249
msgid "Headphones"
msgstr "Fones de ouvido"
-#: src/modules/alsa/alsa-mixer.c:2525
+#: src/modules/alsa/alsa-mixer.c:2709
msgid "Analog Input"
msgstr "Entrada analógica"
-#: src/modules/alsa/alsa-mixer.c:2529
+#: src/modules/alsa/alsa-mixer.c:2713
msgid "Dock Microphone"
msgstr "Microfone de base de encaixe"
-#: src/modules/alsa/alsa-mixer.c:2531
+#: src/modules/alsa/alsa-mixer.c:2715
msgid "Headset Microphone"
msgstr "Microfone de headset"
-#: src/modules/alsa/alsa-mixer.c:2535
+#: src/modules/alsa/alsa-mixer.c:2719
msgid "Analog Output"
msgstr "Saída analógica"
-#: src/modules/alsa/alsa-mixer.c:2537
+#: src/modules/alsa/alsa-mixer.c:2721
msgid "Headphones Mono Output"
msgstr "Saída analógica fones de ouvido"
-#: src/modules/alsa/alsa-mixer.c:2538
-msgid "LFE on Separate Mono Output"
-msgstr "Saída monofônica separada em LFE"
-
-#: src/modules/alsa/alsa-mixer.c:2539
+#: src/modules/alsa/alsa-mixer.c:2722
msgid "Line Out"
msgstr "Saída de linha"
-#: src/modules/alsa/alsa-mixer.c:2540
+#: src/modules/alsa/alsa-mixer.c:2723
msgid "Analog Mono Output"
msgstr "Saída analógica monofônica"
-#: src/modules/alsa/alsa-mixer.c:2541
+#: src/modules/alsa/alsa-mixer.c:2724
msgid "Speakers"
msgstr "Alto-falantes"
-#: src/modules/alsa/alsa-mixer.c:2542
+#: src/modules/alsa/alsa-mixer.c:2725
msgid "HDMI / DisplayPort"
msgstr "HDMI / DisplayPort"
-#: src/modules/alsa/alsa-mixer.c:2543
+#: src/modules/alsa/alsa-mixer.c:2726
msgid "Digital Output (S/PDIF)"
msgstr "Saída digital (S/PDIF)"
-#: src/modules/alsa/alsa-mixer.c:2544
+#: src/modules/alsa/alsa-mixer.c:2727
msgid "Digital Input (S/PDIF)"
msgstr "Entrada digital (S/PDIF)"
-#: src/modules/alsa/alsa-mixer.c:2545
-msgid "Digital Passthrough (S/PDIF)"
-msgstr "Conversor digital (S/PDIF)"
-
-#: src/modules/alsa/alsa-mixer.c:2546
+#: src/modules/alsa/alsa-mixer.c:2728
msgid "Multichannel Input"
msgstr "Entrada multicanal"
-#: src/modules/alsa/alsa-mixer.c:2547
+#: src/modules/alsa/alsa-mixer.c:2729
msgid "Multichannel Output"
msgstr "Saída multicanal"
-#: src/modules/alsa/alsa-mixer.c:2548
+#: src/modules/alsa/alsa-mixer.c:2730
msgid "Game Output"
msgstr "Saída de jogo"
-#: src/modules/alsa/alsa-mixer.c:2549
+#: src/modules/alsa/alsa-mixer.c:2731
msgid "Chat Output"
msgstr "Saída de bate-papo"
-#: src/modules/alsa/alsa-mixer.c:4063
+#: src/modules/alsa/alsa-mixer.c:4380
msgid "Analog Mono"
msgstr "Monofônico analógico"
@@ -695,132 +690,136 @@ msgstr "Monofônico analógico"
#. * here would lead to the source name to become "Analog Stereo Input
#. * Input". The same logic applies to analog-stereo-output,
#. * multichannel-input and multichannel-output.
-#: src/modules/alsa/alsa-mixer.c:4064 src/modules/alsa/alsa-mixer.c:4072
-#: src/modules/alsa/alsa-mixer.c:4073
+#: src/modules/alsa/alsa-mixer.c:4381 src/modules/alsa/alsa-mixer.c:4389
+#: src/modules/alsa/alsa-mixer.c:4390
msgid "Analog Stereo"
msgstr "Estéreo analógico"
-#: src/modules/alsa/alsa-mixer.c:4065 src/pulse/channelmap.c:103
+#: src/modules/alsa/alsa-mixer.c:4382 src/pulse/channelmap.c:103
#: src/pulse/channelmap.c:771
msgid "Mono"
msgstr "Mono"
-#: src/modules/alsa/alsa-mixer.c:4066 src/pulse/channelmap.c:775
+#: src/modules/alsa/alsa-mixer.c:4383 src/pulse/channelmap.c:775
msgid "Stereo"
msgstr "Estéreo"
-#: src/modules/alsa/alsa-mixer.c:4074 src/modules/alsa/alsa-mixer.c:4075
+#: src/modules/alsa/alsa-mixer.c:4391 src/modules/alsa/alsa-mixer.c:4392
msgid "Multichannel"
msgstr "Multicanal"
-#: src/modules/alsa/alsa-mixer.c:4076
+#: src/modules/alsa/alsa-mixer.c:4393
msgid "Analog Surround 2.1"
msgstr "Surround analógico 2.1"
-#: src/modules/alsa/alsa-mixer.c:4077
+#: src/modules/alsa/alsa-mixer.c:4394
msgid "Analog Surround 3.0"
msgstr "Surround analógico 3.0"
-#: src/modules/alsa/alsa-mixer.c:4078
+#: src/modules/alsa/alsa-mixer.c:4395
msgid "Analog Surround 3.1"
msgstr "Surround analógico 3.1"
-#: src/modules/alsa/alsa-mixer.c:4079
+#: src/modules/alsa/alsa-mixer.c:4396
msgid "Analog Surround 4.0"
msgstr "Surround analógico 4.0"
-#: src/modules/alsa/alsa-mixer.c:4080
+#: src/modules/alsa/alsa-mixer.c:4397
msgid "Analog Surround 4.1"
msgstr "Surround analógico 4.1"
-#: src/modules/alsa/alsa-mixer.c:4081
+#: src/modules/alsa/alsa-mixer.c:4398
msgid "Analog Surround 5.0"
msgstr "Surround analógico 5.0"
-#: src/modules/alsa/alsa-mixer.c:4082
+#: src/modules/alsa/alsa-mixer.c:4399
msgid "Analog Surround 5.1"
msgstr "Surround analógico 5.1"
-#: src/modules/alsa/alsa-mixer.c:4083
+#: src/modules/alsa/alsa-mixer.c:4400
msgid "Analog Surround 6.0"
msgstr "Surround analógico 6.0"
-#: src/modules/alsa/alsa-mixer.c:4084
+#: src/modules/alsa/alsa-mixer.c:4401
msgid "Analog Surround 6.1"
msgstr "Surround analógico 6.1"
-#: src/modules/alsa/alsa-mixer.c:4085
+#: src/modules/alsa/alsa-mixer.c:4402
msgid "Analog Surround 7.0"
msgstr "Surround analógico 7.0"
-#: src/modules/alsa/alsa-mixer.c:4086
+#: src/modules/alsa/alsa-mixer.c:4403
msgid "Analog Surround 7.1"
msgstr "Surround analógico 7.1"
-#: src/modules/alsa/alsa-mixer.c:4087
+#: src/modules/alsa/alsa-mixer.c:4404
msgid "Digital Stereo (IEC958)"
msgstr "Estéreo digital (IEC958)"
-#: src/modules/alsa/alsa-mixer.c:4088
-msgid "Digital Passthrough (IEC958)"
-msgstr "Conversor digital (IEC958)"
-
-#: src/modules/alsa/alsa-mixer.c:4089
+#: src/modules/alsa/alsa-mixer.c:4405
msgid "Digital Surround 4.0 (IEC958/AC3)"
msgstr "Surround digital 4.0 (IEC958/AC3)"
-#: src/modules/alsa/alsa-mixer.c:4090
+#: src/modules/alsa/alsa-mixer.c:4406
msgid "Digital Surround 5.1 (IEC958/AC3)"
msgstr "Surround digital 5.1 (IEC958/AC3)"
-#: src/modules/alsa/alsa-mixer.c:4091
+#: src/modules/alsa/alsa-mixer.c:4407
msgid "Digital Surround 5.1 (IEC958/DTS)"
msgstr "Surround digital 5.1 (IEC958/DTS)"
-#: src/modules/alsa/alsa-mixer.c:4092
+#: src/modules/alsa/alsa-mixer.c:4408
msgid "Digital Stereo (HDMI)"
msgstr "Estéreo digital (HDMI)"
-#: src/modules/alsa/alsa-mixer.c:4093
+#: src/modules/alsa/alsa-mixer.c:4409
msgid "Digital Surround 5.1 (HDMI)"
msgstr "Surround digital 5.1 (HDMI)"
-#: src/modules/alsa/alsa-mixer.c:4226
+#: src/modules/alsa/alsa-mixer.c:4410
+msgid "Chat"
+msgstr "Bate-papo"
+
+#: src/modules/alsa/alsa-mixer.c:4411
+msgid "Game"
+msgstr "Jogo"
+
+#: src/modules/alsa/alsa-mixer.c:4545
msgid "Analog Mono Duplex"
msgstr "Duplex monofônico analógico"
-#: src/modules/alsa/alsa-mixer.c:4227
+#: src/modules/alsa/alsa-mixer.c:4546
msgid "Analog Stereo Duplex"
msgstr "Duplex estéreo analógico"
-#: src/modules/alsa/alsa-mixer.c:4228
+#: src/modules/alsa/alsa-mixer.c:4547
msgid "Digital Stereo Duplex (IEC958)"
msgstr "Duplex estéreo digital (IEC958)"
-#: src/modules/alsa/alsa-mixer.c:4229
+#: src/modules/alsa/alsa-mixer.c:4548
msgid "Multichannel Duplex"
msgstr "Duplex multicanal"
-#: src/modules/alsa/alsa-mixer.c:4230
+#: src/modules/alsa/alsa-mixer.c:4549
msgid "Stereo Duplex"
msgstr "Duplex estéreo"
-#: src/modules/alsa/alsa-mixer.c:4231 src/modules/alsa/module-alsa-card.c:189
-#: src/modules/bluetooth/module-bluez5-device.c:2012
+#: src/modules/alsa/alsa-mixer.c:4550 src/modules/alsa/module-alsa-card.c:188
+#: src/modules/bluetooth/module-bluez5-device.c:2053
msgid "Off"
msgstr "Desligado"
-#: src/modules/alsa/alsa-mixer.c:4330
+#: src/modules/alsa/alsa-mixer.c:4650
#, c-format
msgid "%s Output"
-msgstr "Saída de %s"
+msgstr "Saída %s"
-#: src/modules/alsa/alsa-mixer.c:4338
+#: src/modules/alsa/alsa-mixer.c:4658
#, c-format
msgid "%s Input"
-msgstr "Entrada de %s"
+msgstr "Entrada %s"
-#: src/modules/alsa/alsa-sink.c:651 src/modules/alsa/alsa-sink.c:841
+#: src/modules/alsa/alsa-sink.c:652 src/modules/alsa/alsa-sink.c:842
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually nothing to write.\n"
@@ -831,7 +830,7 @@ msgstr ""
"É mais provável que isso seja um erro no driver “%s” do ALSA. Por favor, relate esse problema para os desenvolvedores do ALSA.\n"
"Nós fomos acordados com o conjunto POLLOUT -- entretanto, a snd_pcm_avail() subsequente retornou 0 ou outro valor < min_avail."
-#: src/modules/alsa/alsa-source.c:610 src/modules/alsa/alsa-source.c:776
+#: src/modules/alsa/alsa-source.c:611 src/modules/alsa/alsa-source.c:777
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually nothing to read.\n"
@@ -842,7 +841,7 @@ msgstr ""
"É mais provável que isso seja um erro no driver “%s” do ALSA. Por favor, relate esse problema para os desenvolvedores do ALSA.\n"
"Nós fomos acordados com o conjunto POLLIN -- entretanto, a snd_pcm_avail() subsequente retornou 0 ou outro valor < min_avail."
-#: src/modules/alsa/alsa-util.c:1173 src/modules/alsa/alsa-util.c:1267
+#: src/modules/alsa/alsa-util.c:1183 src/modules/alsa/alsa-util.c:1277
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu byte (%lu ms).\n"
@@ -857,7 +856,7 @@ msgstr[1] ""
"snd_pcm_avail() retornou um valor que é excepcionalmente grande: %lu bytes (%lu ms).\n"
"É mais provável que isso seja um erro no driver “%s” do ALSA. Por favor, relate esse problema aos desenvolvedores do ALSA."
-#: src/modules/alsa/alsa-util.c:1239
+#: src/modules/alsa/alsa-util.c:1249
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li byte (%s%lu ms).\n"
@@ -872,7 +871,7 @@ msgstr[1] ""
"snd_pcm_delay() retornou um valor que é excepcionalmente grande: %li bytes (%s%lu ms).\n"
"É mais provável que isso seja um erro no driver “%s” do ALSA. Por favor, relate esse problema aos desenvolvedores do ALSA."
-#: src/modules/alsa/alsa-util.c:1286
+#: src/modules/alsa/alsa-util.c:1296
#, c-format
msgid ""
"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail %lu.\n"
@@ -881,7 +880,7 @@ msgstr ""
"snd_pcm_avail() retornou um valor estranho: o atraso de %lu é menor do que (%lu ms).\n"
"É mais provável que isso seja um erro no driver “%s” do ALSA. Por favor, relate esse problema aos desenvolvedores do ALSA."
-#: src/modules/alsa/alsa-util.c:1329
+#: src/modules/alsa/alsa-util.c:1339
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu byte (%lu ms).\n"
@@ -896,62 +895,60 @@ msgstr[1] ""
"snd_pcm_mmap_begin() retornou um valor que é excepcionalmente grande: %lu bytes (%lu ms).\n"
"É mais provável que isso seja um erro no driver “%s” do ALSA. Por favor, relate esse problema aos desenvolvedores do ALSA."
-#: src/modules/bluetooth/module-bluez5-device.c:1741
-#: src/modules/bluetooth/module-bluez5-device.c:1763
-#: src/modules/bluetooth/module-bluez5-device.c:1769
-#: src/modules/bluetooth/module-bluez5-device.c:1795
+#: src/modules/bluetooth/module-bluez5-device.c:1773
+#: src/modules/bluetooth/module-bluez5-device.c:1799
+#: src/modules/bluetooth/module-bluez5-device.c:1806
msgid "Bluetooth Input"
msgstr "Entrada Bluetooth"
-#: src/modules/bluetooth/module-bluez5-device.c:1742
-#: src/modules/bluetooth/module-bluez5-device.c:1758
-#: src/modules/bluetooth/module-bluez5-device.c:1796
+#: src/modules/bluetooth/module-bluez5-device.c:1774
+#: src/modules/bluetooth/module-bluez5-device.c:1793
msgid "Bluetooth Output"
msgstr "Saída Bluetooth"
# Fone de ouvido não se encaixa como tradução aqui, pois há ou pode haver microfone junto.
-#: src/modules/bluetooth/module-bluez5-device.c:1747
+#: src/modules/bluetooth/module-bluez5-device.c:1780 src/utils/pactl.c:252
msgid "Headset"
msgstr "Headset"
# Desconheço tradução comum para esta palavra.
-#: src/modules/bluetooth/module-bluez5-device.c:1752
+#: src/modules/bluetooth/module-bluez5-device.c:1786 src/utils/pactl.c:263
msgid "Handsfree"
msgstr "Handsfree"
-#: src/modules/bluetooth/module-bluez5-device.c:1770
+#: src/modules/bluetooth/module-bluez5-device.c:1807
msgid "Headphone"
msgstr "Fones de ouvido"
-#: src/modules/bluetooth/module-bluez5-device.c:1775
+#: src/modules/bluetooth/module-bluez5-device.c:1813 src/utils/pactl.c:262
msgid "Portable"
msgstr "Portátil"
-#: src/modules/bluetooth/module-bluez5-device.c:1780
+#: src/modules/bluetooth/module-bluez5-device.c:1819 src/utils/pactl.c:264
msgid "Car"
msgstr "Carro"
-#: src/modules/bluetooth/module-bluez5-device.c:1785
+#: src/modules/bluetooth/module-bluez5-device.c:1825 src/utils/pactl.c:265
msgid "HiFi"
msgstr "HiFi"
-#: src/modules/bluetooth/module-bluez5-device.c:1790
+#: src/modules/bluetooth/module-bluez5-device.c:1831 src/utils/pactl.c:266
msgid "Phone"
msgstr "Telefone"
-#: src/modules/bluetooth/module-bluez5-device.c:1837
+#: src/modules/bluetooth/module-bluez5-device.c:1878
msgid "High Fidelity Playback (A2DP Sink)"
msgstr "Reprodução de alta fidelidade (Destino A2DP)"
-#: src/modules/bluetooth/module-bluez5-device.c:1849
+#: src/modules/bluetooth/module-bluez5-device.c:1890
msgid "High Fidelity Capture (A2DP Source)"
msgstr "Captura de alta fidelidade (Fonte A2DP)"
-#: src/modules/bluetooth/module-bluez5-device.c:1861
+#: src/modules/bluetooth/module-bluez5-device.c:1902
msgid "Headset Head Unit (HSP/HFP)"
msgstr "Unidade de headset (HSP/HFP)"
-#: src/modules/bluetooth/module-bluez5-device.c:1874
+#: src/modules/bluetooth/module-bluez5-device.c:1915
msgid "Headset Audio Gateway (HSP/HFP)"
msgstr "Gateway de Áudio do Headset (HSP/HFP)"
@@ -1011,7 +1008,7 @@ msgstr "Destino nulo temporizado"
msgid "Null Output"
msgstr "Saída nula"
-#: src/modules/module-null-sink.c:345 src/utils/pactl.c:1058
+#: src/modules/module-null-sink.c:345 src/utils/pactl.c:1094
#, c-format
msgid "Failed to set format: invalid format string %s"
msgstr "Falha ao definir formato: string %s de formato inválida"
@@ -1058,7 +1055,7 @@ msgstr "sink_name=<nome do destino> sink_properties=<propriedades do destino> ma
msgid "Unknown device model"
msgstr "Modelo desconhecido de dispositivo"
-#: src/modules/raop/raop-sink.c:511
+#: src/modules/raop/raop-sink.c:655
msgid "RAOP standard profile"
msgstr "Perfil padrão RAOP"
@@ -1072,23 +1069,23 @@ msgstr "Frontal central"
#: src/pulse/channelmap.c:106
msgid "Front Left"
-msgstr "Frontal esquerdo"
+msgstr "Frontal esquerda"
#: src/pulse/channelmap.c:107
msgid "Front Right"
-msgstr "Frontal direito"
+msgstr "Frontal direita"
#: src/pulse/channelmap.c:109
msgid "Rear Center"
-msgstr "Posterior central"
+msgstr "Traseira central"
#: src/pulse/channelmap.c:110
msgid "Rear Left"
-msgstr "Posterior esquerdo"
+msgstr "Traseira esquerda"
#: src/pulse/channelmap.c:111
msgid "Rear Right"
-msgstr "Posterior direito"
+msgstr "Traseira direita"
#: src/pulse/channelmap.c:113
msgid "Subwoofer"
@@ -1240,31 +1237,31 @@ msgstr "Auxiliar 31"
#: src/pulse/channelmap.c:154
msgid "Top Center"
-msgstr "Central superior"
+msgstr "Superior central"
#: src/pulse/channelmap.c:156
msgid "Top Front Center"
-msgstr "Central frontal superior"
+msgstr "Frontal superior central"
#: src/pulse/channelmap.c:157
msgid "Top Front Left"
-msgstr "Frontal superior esquerdo"
+msgstr "Frontal superior esquerda"
#: src/pulse/channelmap.c:158
msgid "Top Front Right"
-msgstr "Fontal superior direito"
+msgstr "Frontal superior direita"
#: src/pulse/channelmap.c:160
msgid "Top Rear Center"
-msgstr "Central superior posterior"
+msgstr "Traseira superior central"
#: src/pulse/channelmap.c:161
msgid "Top Rear Left"
-msgstr "Posterior superior esquerdo"
+msgstr "Traseira superior esquerda"
#: src/pulse/channelmap.c:162
msgid "Top Rear Right"
-msgstr "Posterior superior direito"
+msgstr "Traseira superior direita"
#: src/pulse/channelmap.c:479 src/pulse/format.c:123 src/pulse/sample.c:177
#: src/pulse/volume.c:306 src/pulse/volume.c:332 src/pulse/volume.c:352
@@ -1304,17 +1301,17 @@ msgstr "xcb_connection_has_error() retornou verdadeiro"
msgid "Failed to parse cookie data"
msgstr "Falha ao analisar os dados do cookie"
-#: src/pulse/context.c:705
+#: src/pulse/context.c:706
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: src/pulse/context.c:760
+#: src/pulse/context.c:761
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: src/pulse/context.c:1466
+#: src/pulse/context.c:1467
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Foi recebida uma mensagem para uma extensão desconhecida “%s”"
@@ -1335,7 +1332,7 @@ msgstr "bidirecional"
msgid "invalid"
msgstr "inválido"
-#: src/pulsecore/core-util.c:1692
+#: src/pulsecore/core-util.c:1712
#, c-format
msgid "XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could e.g. happen if you try to connect to a non-root PulseAudio as a root user, over the native protocol. Don't do that.)"
msgstr "XDG_RUNTIME_DIR (%s) não é propriedade nossa (uid %d), e sim do uid %d! (Isso poderia acontecer, por exemplo, se você tentar conectar a um PulseAudio não-root como um usuário root, por meio do protocolo nativo. Não faça isso.)"
@@ -1366,11 +1363,11 @@ msgstr "Tentado abrir arquivo alvo “%s”, “%s.1”, “%s.2” ... “%s.%d
msgid "Invalid log target."
msgstr "Alvo do log inválido."
-#: src/pulsecore/sink.c:3516
+#: src/pulsecore/sink.c:3534
msgid "Built-in Audio"
msgstr "Áudio interno"
-#: src/pulsecore/sink.c:3521
+#: src/pulsecore/sink.c:3539
msgid "Modem"
msgstr "Modem"
@@ -1647,7 +1644,7 @@ msgstr "Falha ao definir o fluxo de monitoração: %s"
msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() falhou: %s"
-#: src/utils/pacat.c:514 src/utils/pactl.c:1454
+#: src/utils/pacat.c:514 src/utils/pactl.c:1490
#, c-format
msgid "Connection failure: %s"
msgstr "Falha na conexão: %s"
@@ -1705,9 +1702,9 @@ msgid ""
" --stream-name=NAME How to call this stream on the server\n"
" --volume=VOLUME Specify the initial (linear) volume in range 0...65536\n"
" --rate=SAMPLERATE The sample rate in Hz (defaults to 44100)\n"
-" --format=SAMPLEFORMAT The sample type, one of s16le, s16be, u8, float32le,\n"
-" float32be, ulaw, alaw, s32le, s32be, s24le, s24be,\n"
-" s24-32le, s24-32be (defaults to s16ne)\n"
+" --format=SAMPLEFORMAT The sample format, see\n"
+" https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/\n"
+" for possible values (defaults to s16ne)\n"
" --channels=CHANNELS The number of channels, 1 for mono, 2 for stereo\n"
" (defaults to 2)\n"
" --channel-map=CHANNELMAP Channel map to use instead of the default\n"
@@ -1748,19 +1745,19 @@ msgstr ""
" --volume=VOLUME Especifica a faixa (linear) inicial\n"
" de volume no intervalo 0...65536\n"
" --rate=TAXA_DE_AMOSTRAGEM Taxa de amostragem, Hz (padrão 44100)\n"
-" --format=FORMATO_DE_AMOSTRAGEM Tipo de amostragem, um de s16le,\n"
-" s16be, u8, float32le, float32be,\n"
-" ulaw, alaw, s32le, s32be, s24le, s24be\n"
-" s24-32le, s24-32be (padrão s16ne)\n"
+" --format=FORMATO_DE_AMOSTRAGEM Tipo de amostragem, veja\n"
+" https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/\n"
+" para valores possíveis (padrão: s16ne)\n"
" --channels=CANAIS O número de canais, 1 para mono,\n"
-" 2 para estéreo (o padrão é 2)\n"
+" 2 para estéreo (padrão: 2)\n"
" --channel-map=MAPA_DE_CANAIS Mapeamento de canais a ser usado no\n"
" lugar do padrão\n"
" --fix-format Obtém o formato da amostragem do\n"
" destino/fonte onde o fluxo está\n"
" sendo conectado.\n"
-" --fix-rate Obtém a taxa de amostragem do destino/fonte\n"
-" onde o fluxo está sendo conectado.\n"
+" --fix-rate Obtém a taxa de amostragem do\n"
+" destino/fonte onde o fluxo está\n"
+" sendo conectado.\n"
" --fix-channels Obtém o número de canais e o mapa de\n"
" canais do destino onde o fluxo está\n"
" sendo conectado.\n"
@@ -1810,7 +1807,7 @@ msgstr ""
"Compilado com libpulse %s\n"
"Vinculado com libpulse %s\n"
-#: src/utils/pacat.c:852 src/utils/pactl.c:1656
+#: src/utils/pacat.c:852 src/utils/pactl.c:1692
#, c-format
msgid "Invalid client name '%s'"
msgstr "Nome do cliente “%s” inválido"
@@ -1879,7 +1876,7 @@ msgstr "Falha ao abrir o arquivo de áudio."
msgid "Warning: specified sample specification will be overwritten with specification from file."
msgstr "Aviso: a especificação de amostragem especificada será sobrescrita pela especificação do arquivo."
-#: src/utils/pacat.c:1079 src/utils/pactl.c:1720
+#: src/utils/pacat.c:1079 src/utils/pactl.c:1756
msgid "Failed to determine sample specification from file."
msgstr "Falha ao determinar a especificação de amostragem a partir do arquivo."
@@ -1912,7 +1909,7 @@ msgstr "playback"
msgid "Failed to set media name."
msgstr "Falha ao definir o nome da mídia."
-#: src/utils/pacat.c:1160 src/utils/pactl.c:2070
+#: src/utils/pacat.c:1160 src/utils/pactl.c:2106
msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() falhou."
@@ -1920,11 +1917,11 @@ msgstr "pa_mainloop_new() falhou."
msgid "io_new() failed."
msgstr "io_new() falhou."
-#: src/utils/pacat.c:1190 src/utils/pactl.c:2082
+#: src/utils/pacat.c:1190 src/utils/pactl.c:2118
msgid "pa_context_new() failed."
msgstr "pa_context_new() falhou."
-#: src/utils/pacat.c:1198 src/utils/pactl.c:2088
+#: src/utils/pacat.c:1198 src/utils/pactl.c:2124
#, c-format
msgid "pa_context_connect() failed: %s"
msgstr "pa_context_new() falhou: %s"
@@ -1933,20 +1930,20 @@ msgstr "pa_context_new() falhou: %s"
msgid "pa_context_rttime_new() failed."
msgstr "pa_context_rttime_new() falhou."
-#: src/utils/pacat.c:1211 src/utils/pactl.c:2093
+#: src/utils/pacat.c:1211 src/utils/pactl.c:2129
msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() falhou."
-#: src/utils/pacmd.c:51 src/utils/pactl.c:1578
+#: src/utils/pacmd.c:51 src/utils/pactl.c:1614
msgid "NAME [ARGS ...]"
msgstr "NOME [ARGS ...]"
-#: src/utils/pacmd.c:52 src/utils/pacmd.c:60 src/utils/pactl.c:1579
+#: src/utils/pacmd.c:52 src/utils/pacmd.c:60 src/utils/pactl.c:1615
msgid "NAME|#N"
msgstr "NOME|#N"
-#: src/utils/pacmd.c:53 src/utils/pacmd.c:63 src/utils/pactl.c:1577
-#: src/utils/pactl.c:1583
+#: src/utils/pacmd.c:53 src/utils/pacmd.c:63 src/utils/pactl.c:1613
+#: src/utils/pactl.c:1619
msgid "NAME"
msgstr "NOME"
@@ -1958,7 +1955,7 @@ msgstr "NOME|#N VOLUME"
msgid "#N VOLUME"
msgstr "#N VOLUME"
-#: src/utils/pacmd.c:56 src/utils/pacmd.c:70 src/utils/pactl.c:1581
+#: src/utils/pacmd.c:56 src/utils/pacmd.c:70 src/utils/pactl.c:1617
msgid "NAME|#N 1|0"
msgstr "NOME|#N 1|0"
@@ -1994,7 +1991,7 @@ msgstr "NOME_DE_CAMINHO"
msgid "FILENAME SINK|#N"
msgstr "NOME_DE_ARQUIVO DESTINO|#N"
-#: src/utils/pacmd.c:69 src/utils/pactl.c:1580
+#: src/utils/pacmd.c:69 src/utils/pactl.c:1616
msgid "#N SINK|SOURCE"
msgstr "#N DESTINO|FONTE"
@@ -2002,15 +1999,15 @@ msgstr "#N DESTINO|FONTE"
msgid "1|0"
msgstr "1|0"
-#: src/utils/pacmd.c:72 src/utils/pactl.c:1582
+#: src/utils/pacmd.c:72 src/utils/pactl.c:1618
msgid "CARD PROFILE"
msgstr "PLACA PERFIL"
-#: src/utils/pacmd.c:73 src/utils/pactl.c:1584
+#: src/utils/pacmd.c:73 src/utils/pactl.c:1620
msgid "NAME|#N PORT"
msgstr "NOME|#N PORTA"
-#: src/utils/pacmd.c:74 src/utils/pactl.c:1590
+#: src/utils/pacmd.c:74 src/utils/pactl.c:1626
msgid "CARD-NAME|CARD-#N PORT OFFSET"
msgstr "NOME-PLACA|PLACA-#N PORTA POSIÇÃO"
@@ -2156,12 +2153,72 @@ msgstr ""
"Fonte padrão: %s\n"
"Cookie: %04x:%04x\n"
-#: src/utils/pactl.c:261 src/utils/pactl.c:908 src/utils/pactl.c:986
+#: src/utils/pactl.c:237
+msgid ", available"
+msgstr ", disponível"
+
+#: src/utils/pactl.c:238
+msgid ", not available"
+msgstr ", não disponível"
+
+#: src/utils/pactl.c:246 src/utils/pactl.c:270
+msgid "Unknown"
+msgstr "Desconhecido"
+
+#: src/utils/pactl.c:247
+msgid "Aux"
+msgstr "Aux"
+
+#: src/utils/pactl.c:250
+msgid "Line"
+msgstr "Linha"
+
+#: src/utils/pactl.c:251
+msgid "Mic"
+msgstr "Mic"
+
+#: src/utils/pactl.c:253
+msgid "Handset"
+msgstr "Monofone"
+
+#: src/utils/pactl.c:254
+msgid "Earpiece"
+msgstr "Fone de ouvido"
+
+#: src/utils/pactl.c:255
+msgid "SPDIF"
+msgstr "SPDIF"
+
+#: src/utils/pactl.c:256
+msgid "HDMI"
+msgstr "HDMI"
+
+#: src/utils/pactl.c:257
+msgid "TV"
+msgstr "TV"
+
+#: src/utils/pactl.c:260
+msgid "USB"
+msgstr "USB"
+
+#: src/utils/pactl.c:261
+msgid "Bluetooth"
+msgstr "Bluetooth"
+
+#: src/utils/pactl.c:267
+msgid "Network"
+msgstr "Rede"
+
+#: src/utils/pactl.c:268
+msgid "Analog"
+msgstr "Analógico"
+
+#: src/utils/pactl.c:292 src/utils/pactl.c:944 src/utils/pactl.c:1022
#, c-format
msgid "Failed to get sink information: %s"
msgstr "Falha ao obter informações do destino: %s"
-#: src/utils/pactl.c:287
+#: src/utils/pactl.c:318
#, c-format
msgid ""
"Sink #%u\n"
@@ -2200,27 +2257,36 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:331 src/utils/pactl.c:437 src/utils/pactl.c:598
+#: src/utils/pactl.c:362 src/utils/pactl.c:470 src/utils/pactl.c:633
#, c-format
msgid "\tPorts:\n"
msgstr "\tPortas:\n"
-#: src/utils/pactl.c:338 src/utils/pactl.c:444
+#: src/utils/pactl.c:364 src/utils/pactl.c:472
+#, c-format
+msgid "\t\t%s: %s (type: %s, priority: %u%s%s%s)\n"
+msgstr "\t\t%s: %s (tipo: %s, prioridade: %u%s%s%s)\n"
+
+#: src/utils/pactl.c:366 src/utils/pactl.c:474 src/utils/pactl.c:638
+msgid ", availability group: "
+msgstr ", grupo de disponibilidade: "
+
+#: src/utils/pactl.c:371 src/utils/pactl.c:479
#, c-format
msgid "\tActive Port: %s\n"
msgstr "\tPorta ativa: %s\n"
-#: src/utils/pactl.c:344 src/utils/pactl.c:450
+#: src/utils/pactl.c:377 src/utils/pactl.c:485
#, c-format
msgid "\tFormats:\n"
msgstr "\tFormatos:\n"
-#: src/utils/pactl.c:368 src/utils/pactl.c:928 src/utils/pactl.c:1001
+#: src/utils/pactl.c:401 src/utils/pactl.c:964 src/utils/pactl.c:1037
#, c-format
msgid "Failed to get source information: %s"
msgstr "Falha ao obter informações da fonte: %s"
-#: src/utils/pactl.c:394
+#: src/utils/pactl.c:427
#, c-format
msgid ""
"Source #%u\n"
@@ -2259,20 +2325,20 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:422 src/utils/pactl.c:492 src/utils/pactl.c:535
-#: src/utils/pactl.c:577 src/utils/pactl.c:675 src/utils/pactl.c:676
-#: src/utils/pactl.c:687 src/utils/pactl.c:745 src/utils/pactl.c:746
-#: src/utils/pactl.c:757 src/utils/pactl.c:808 src/utils/pactl.c:809
-#: src/utils/pactl.c:815
+#: src/utils/pactl.c:455 src/utils/pactl.c:527 src/utils/pactl.c:570
+#: src/utils/pactl.c:612 src/utils/pactl.c:711 src/utils/pactl.c:712
+#: src/utils/pactl.c:723 src/utils/pactl.c:781 src/utils/pactl.c:782
+#: src/utils/pactl.c:793 src/utils/pactl.c:844 src/utils/pactl.c:845
+#: src/utils/pactl.c:851
msgid "n/a"
msgstr "n/d"
-#: src/utils/pactl.c:461 src/utils/pactl.c:865
+#: src/utils/pactl.c:496 src/utils/pactl.c:901
#, c-format
msgid "Failed to get module information: %s"
msgstr "Falha ao obter informações do módulo: %s"
-#: src/utils/pactl.c:484
+#: src/utils/pactl.c:519
#, c-format
msgid ""
"Module #%u\n"
@@ -2289,12 +2355,12 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:503
+#: src/utils/pactl.c:538
#, c-format
msgid "Failed to get client information: %s"
msgstr "Falha ao obter informações do cliente: %s"
-#: src/utils/pactl.c:529
+#: src/utils/pactl.c:564
#, c-format
msgid ""
"Client #%u\n"
@@ -2309,12 +2375,12 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:546
+#: src/utils/pactl.c:581
#, c-format
msgid "Failed to get card information: %s"
msgstr "Falha ao obter informações da placa: %s"
-#: src/utils/pactl.c:569
+#: src/utils/pactl.c:604
#, c-format
msgid ""
"Card #%u\n"
@@ -2331,22 +2397,27 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:585
+#: src/utils/pactl.c:620
#, c-format
msgid "\tProfiles:\n"
msgstr "\tPerfis:\n"
-#: src/utils/pactl.c:587
+#: src/utils/pactl.c:622
#, c-format
msgid "\t\t%s: %s (sinks: %u, sources: %u, priority: %u, available: %s)\n"
msgstr "\t\t%s: %s (destino: %u, fontes: %u, prioridade: %u, disponível: %s)\n"
-#: src/utils/pactl.c:592
+#: src/utils/pactl.c:627
#, c-format
msgid "\tActive Profile: %s\n"
msgstr "\tPerfil ativo: %s\n"
-#: src/utils/pactl.c:606
+#: src/utils/pactl.c:636
+#, c-format
+msgid "\t\t%s: %s (type: %s, priority: %u, latency offset: %<PRId64> usec%s%s%s)\n"
+msgstr "\t\t%s: %s (tipo: %s, prioridade: %u, mudança da latência: %<PRId64> usec%s%s%s)\n"
+
+#: src/utils/pactl.c:642
#, c-format
msgid ""
"\t\t\tProperties:\n"
@@ -2355,17 +2426,17 @@ msgstr ""
"\t\t\tPropriedades:\n"
"\t\t\t\t%s\n"
-#: src/utils/pactl.c:611
+#: src/utils/pactl.c:647
#, c-format
msgid "\t\t\tPart of profile(s): %s"
msgstr "\t\t\tParte de perfil/perfis: %s"
-#: src/utils/pactl.c:628 src/utils/pactl.c:948 src/utils/pactl.c:1016
+#: src/utils/pactl.c:664 src/utils/pactl.c:984 src/utils/pactl.c:1052
#, c-format
msgid "Failed to get sink input information: %s"
msgstr "Falha ao obter informações da entrada do destino: %s"
-#: src/utils/pactl.c:657
+#: src/utils/pactl.c:693
#, c-format
msgid ""
"Sink Input #%u\n"
@@ -2404,12 +2475,12 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:698 src/utils/pactl.c:968 src/utils/pactl.c:1031
+#: src/utils/pactl.c:734 src/utils/pactl.c:1004 src/utils/pactl.c:1067
#, c-format
msgid "Failed to get source output information: %s"
msgstr "Falha ao obter informações da saída da fonte: %s"
-#: src/utils/pactl.c:727
+#: src/utils/pactl.c:763
#, c-format
msgid ""
"Source Output #%u\n"
@@ -2448,12 +2519,12 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:768
+#: src/utils/pactl.c:804
#, c-format
msgid "Failed to get sample information: %s"
msgstr "Falha ao obter informações sobre a amostragem: %s"
-#: src/utils/pactl.c:795
+#: src/utils/pactl.c:831
#, c-format
msgid ""
"Sample #%u\n"
@@ -2482,152 +2553,152 @@ msgstr ""
"\tPropriedades:\n"
"\t\t%s\n"
-#: src/utils/pactl.c:823 src/utils/pactl.c:833
+#: src/utils/pactl.c:859 src/utils/pactl.c:869
#, c-format
msgid "Failure: %s"
msgstr "Falha: %s"
-#: src/utils/pactl.c:872
+#: src/utils/pactl.c:908
#, c-format
msgid "Failed to unload module: Module %s not loaded"
msgstr "Falha ao descarregar o módulo: módulo %s não carregado"
-#: src/utils/pactl.c:890
+#: src/utils/pactl.c:926
#, c-format
msgid "Failed to set volume: You tried to set volumes for %d channel, whereas channel(s) supported = %d\n"
msgid_plural "Failed to set volume: You tried to set volumes for %d channels, whereas channel(s) supported = %d\n"
msgstr[0] "Falha ao definir volume: Você tentou definir volumes para %d canal, havendo suporte ao(s) canal(is) = %d\n"
msgstr[1] "Falha ao definir volume: Você tentou definir volumes para %d canais, havendo suporte ao(s) canal(is) = %d\n"
-#: src/utils/pactl.c:1101
+#: src/utils/pactl.c:1137
#, c-format
msgid "Failed to upload sample: %s"
msgstr "Falha ao enviar a amostragem: %s"
-#: src/utils/pactl.c:1118
+#: src/utils/pactl.c:1154
msgid "Premature end of file"
msgstr "Fim prematuro do arquivo"
-#: src/utils/pactl.c:1138
+#: src/utils/pactl.c:1174
msgid "new"
msgstr "novo"
-#: src/utils/pactl.c:1141
+#: src/utils/pactl.c:1177
msgid "change"
msgstr "alterar"
-#: src/utils/pactl.c:1144
+#: src/utils/pactl.c:1180
msgid "remove"
msgstr "remover"
-#: src/utils/pactl.c:1147 src/utils/pactl.c:1182
+#: src/utils/pactl.c:1183 src/utils/pactl.c:1218
msgid "unknown"
msgstr "desconhecido"
-#: src/utils/pactl.c:1155
+#: src/utils/pactl.c:1191
msgid "sink"
msgstr "destino"
-#: src/utils/pactl.c:1158
+#: src/utils/pactl.c:1194
msgid "source"
msgstr "fonte"
-#: src/utils/pactl.c:1161
+#: src/utils/pactl.c:1197
msgid "sink-input"
msgstr "entrada-destino"
-#: src/utils/pactl.c:1164
+#: src/utils/pactl.c:1200
msgid "source-output"
msgstr "saída-fonte"
-#: src/utils/pactl.c:1167
+#: src/utils/pactl.c:1203
msgid "module"
msgstr "módulo"
-#: src/utils/pactl.c:1170
+#: src/utils/pactl.c:1206
msgid "client"
msgstr "cliente"
-#: src/utils/pactl.c:1173
+#: src/utils/pactl.c:1209
msgid "sample-cache"
msgstr "cache-amostragem"
-#: src/utils/pactl.c:1176
+#: src/utils/pactl.c:1212
msgid "server"
msgstr "servidor"
-#: src/utils/pactl.c:1179
+#: src/utils/pactl.c:1215
msgid "card"
msgstr "placa"
-#: src/utils/pactl.c:1188
+#: src/utils/pactl.c:1224
#, c-format
msgid "Event '%s' on %s #%u\n"
msgstr "Evento “%s” em %s #%u\n"
-#: src/utils/pactl.c:1460
+#: src/utils/pactl.c:1496
msgid "Got SIGINT, exiting."
msgstr "SIGINT recebido, saindo."
-#: src/utils/pactl.c:1493
+#: src/utils/pactl.c:1529
msgid "Invalid volume specification"
msgstr "Especificação de volume inválida"
-#: src/utils/pactl.c:1516
+#: src/utils/pactl.c:1552
msgid "Volume outside permissible range.\n"
msgstr "Volume fora da faixa admissível.\n"
-#: src/utils/pactl.c:1529
+#: src/utils/pactl.c:1565
msgid "Invalid number of volume specifications.\n"
msgstr "Número de especificações de volume inválido.\n"
-#: src/utils/pactl.c:1541
+#: src/utils/pactl.c:1577
msgid "Inconsistent volume specification.\n"
msgstr "Especificação de volume inconsistente.\n"
-#: src/utils/pactl.c:1571 src/utils/pactl.c:1572 src/utils/pactl.c:1573
-#: src/utils/pactl.c:1574 src/utils/pactl.c:1575 src/utils/pactl.c:1576
-#: src/utils/pactl.c:1577 src/utils/pactl.c:1578 src/utils/pactl.c:1579
-#: src/utils/pactl.c:1580 src/utils/pactl.c:1581 src/utils/pactl.c:1582
-#: src/utils/pactl.c:1583 src/utils/pactl.c:1584 src/utils/pactl.c:1585
-#: src/utils/pactl.c:1586 src/utils/pactl.c:1587 src/utils/pactl.c:1588
-#: src/utils/pactl.c:1589 src/utils/pactl.c:1590 src/utils/pactl.c:1591
+#: src/utils/pactl.c:1607 src/utils/pactl.c:1608 src/utils/pactl.c:1609
+#: src/utils/pactl.c:1610 src/utils/pactl.c:1611 src/utils/pactl.c:1612
+#: src/utils/pactl.c:1613 src/utils/pactl.c:1614 src/utils/pactl.c:1615
+#: src/utils/pactl.c:1616 src/utils/pactl.c:1617 src/utils/pactl.c:1618
+#: src/utils/pactl.c:1619 src/utils/pactl.c:1620 src/utils/pactl.c:1621
+#: src/utils/pactl.c:1622 src/utils/pactl.c:1623 src/utils/pactl.c:1624
+#: src/utils/pactl.c:1625 src/utils/pactl.c:1626 src/utils/pactl.c:1627
msgid "[options]"
msgstr "[opções]"
-#: src/utils/pactl.c:1573
+#: src/utils/pactl.c:1609
msgid "[TYPE]"
msgstr "[TIPO]"
-#: src/utils/pactl.c:1575
+#: src/utils/pactl.c:1611
msgid "FILENAME [NAME]"
msgstr "NOME_DE_ARQUIVO [NOME]"
-#: src/utils/pactl.c:1576
+#: src/utils/pactl.c:1612
msgid "NAME [SINK]"
msgstr "NOME [DESTINO]"
-#: src/utils/pactl.c:1585
+#: src/utils/pactl.c:1621
msgid "NAME|#N VOLUME [VOLUME ...]"
msgstr "NOME|#N VOLUME [VOLUME ...]"
-#: src/utils/pactl.c:1586
+#: src/utils/pactl.c:1622
msgid "#N VOLUME [VOLUME ...]"
msgstr "#N VOLUME [VOLUME ...]"
-#: src/utils/pactl.c:1587
+#: src/utils/pactl.c:1623
msgid "NAME|#N 1|0|toggle"
msgstr "NOME|#N 1|0|toggle"
-#: src/utils/pactl.c:1588
+#: src/utils/pactl.c:1624
msgid "#N 1|0|toggle"
msgstr "#N 1|0|toggle"
-#: src/utils/pactl.c:1589
+#: src/utils/pactl.c:1625
msgid "#N FORMATS"
msgstr "#N FORMATOS"
-#: src/utils/pactl.c:1592
+#: src/utils/pactl.c:1628
#, c-format
msgid ""
"\n"
@@ -2638,7 +2709,7 @@ msgstr ""
"Os nomes especiais @DEFAULT_SINK@, @DEFAULT_SOURCE@ e @DEFAULT_MONITOR@\n"
"podem ser usados para especificar o destino, a fonte e a monitoração padrão.\n"
-#: src/utils/pactl.c:1595
+#: src/utils/pactl.c:1631
#, c-format
msgid ""
"\n"
@@ -2655,7 +2726,7 @@ msgstr ""
" -s, --server=SERVIDOR Nome do servidor a ser conectado\n"
" -n, --client-name=NOME Como chamar este cliente no servidor\n"
-#: src/utils/pactl.c:1636
+#: src/utils/pactl.c:1672
#, c-format
msgid ""
"pactl %s\n"
@@ -2666,145 +2737,145 @@ msgstr ""
"Compilado com libpulse %s\n"
"Vinculado com libpulse %s\n"
-#: src/utils/pactl.c:1692
+#: src/utils/pactl.c:1728
#, c-format
msgid "Specify nothing, or one of: %s"
msgstr "Especifique nada ou uma de: %s"
-#: src/utils/pactl.c:1702
+#: src/utils/pactl.c:1738
msgid "Please specify a sample file to load"
msgstr "Por favor, especifique um arquivo de amostragem a ser carregado"
-#: src/utils/pactl.c:1715
+#: src/utils/pactl.c:1751
msgid "Failed to open sound file."
msgstr "Falha ao abrir o arquivo de som."
-#: src/utils/pactl.c:1727
+#: src/utils/pactl.c:1763
msgid "Warning: Failed to determine sample specification from file."
msgstr "Aviso: Falha ao determinar a especificação da amostragem a partir do arquivo."
-#: src/utils/pactl.c:1737
+#: src/utils/pactl.c:1773
msgid "You have to specify a sample name to play"
msgstr "Você deve especificar um nome para amostra a ser reproduzida"
-#: src/utils/pactl.c:1749
+#: src/utils/pactl.c:1785
msgid "You have to specify a sample name to remove"
msgstr "Você deve especificar um nome para a amostra a ser removida"
-#: src/utils/pactl.c:1758
+#: src/utils/pactl.c:1794
msgid "You have to specify a sink input index and a sink"
msgstr "Você deve especificar a entrada do destino e um destino"
-#: src/utils/pactl.c:1768
+#: src/utils/pactl.c:1804
msgid "You have to specify a source output index and a source"
msgstr "Você deve especificar um índice de saída da fonte e uma fonte"
-#: src/utils/pactl.c:1783
+#: src/utils/pactl.c:1819
msgid "You have to specify a module name and arguments."
msgstr "Você deve especificar um nome para o módulo e seus argumentos."
-#: src/utils/pactl.c:1803
+#: src/utils/pactl.c:1839
msgid "You have to specify a module index or name"
msgstr "Você deve especificar um nome ou índice do módulo"
-#: src/utils/pactl.c:1816
+#: src/utils/pactl.c:1852
msgid "You may not specify more than one sink. You have to specify a boolean value."
msgstr "Você não pode especificar mais de um destino. Você deve especificar um valor booleano."
-#: src/utils/pactl.c:1821 src/utils/pactl.c:1841
+#: src/utils/pactl.c:1857 src/utils/pactl.c:1877
msgid "Invalid suspend specification."
msgstr "Especificação de suspensão inválida."
-#: src/utils/pactl.c:1836
+#: src/utils/pactl.c:1872
msgid "You may not specify more than one source. You have to specify a boolean value."
msgstr "Você não pode especificar mais de uma fonte. Você deve especificar um valor booleano."
-#: src/utils/pactl.c:1853
+#: src/utils/pactl.c:1889
msgid "You have to specify a card name/index and a profile name"
msgstr "Você deve especificar um nome/índice para a placa e um nome de perfil"
-#: src/utils/pactl.c:1864
+#: src/utils/pactl.c:1900
msgid "You have to specify a sink name/index and a port name"
msgstr "Você deve especificar um nome/índice do destino e o nome da porta"
-#: src/utils/pactl.c:1875
+#: src/utils/pactl.c:1911
msgid "You have to specify a sink name"
msgstr "Você deve especificar um nome de destino"
-#: src/utils/pactl.c:1885
+#: src/utils/pactl.c:1921
msgid "You have to specify a source name/index and a port name"
msgstr "Você deve especificar um nome/índice da fonte e o nome da porta"
-#: src/utils/pactl.c:1896
+#: src/utils/pactl.c:1932
msgid "You have to specify a source name"
msgstr "Você deve especificar um nome de fonte"
-#: src/utils/pactl.c:1906
+#: src/utils/pactl.c:1942
msgid "You have to specify a sink name/index and a volume"
msgstr "Você deve especificar um nome/índice do destino e um volume"
-#: src/utils/pactl.c:1919
+#: src/utils/pactl.c:1955
msgid "You have to specify a source name/index and a volume"
msgstr "Você deve especificar um nome/índice da fonte e um volume"
-#: src/utils/pactl.c:1932
+#: src/utils/pactl.c:1968
msgid "You have to specify a sink input index and a volume"
msgstr "Você deve especificar um índice de entrada para o destino e um volume"
-#: src/utils/pactl.c:1937
+#: src/utils/pactl.c:1973
msgid "Invalid sink input index"
msgstr "Índice de entrada de destino inválido"
-#: src/utils/pactl.c:1948
+#: src/utils/pactl.c:1984
msgid "You have to specify a source output index and a volume"
msgstr "Você deve especificar um índice de saída da fonte e um volume"
-#: src/utils/pactl.c:1953
+#: src/utils/pactl.c:1989
msgid "Invalid source output index"
msgstr "Índice de saída de fonte inválido"
-#: src/utils/pactl.c:1964
+#: src/utils/pactl.c:2000
msgid "You have to specify a sink name/index and a mute action (0, 1, or 'toggle')"
msgstr "Você deve especificar um nome/índice do destino e uma ação de mudo (0, 1 ou “toogle”)"
-#: src/utils/pactl.c:1969 src/utils/pactl.c:1984 src/utils/pactl.c:2004
-#: src/utils/pactl.c:2022
+#: src/utils/pactl.c:2005 src/utils/pactl.c:2020 src/utils/pactl.c:2040
+#: src/utils/pactl.c:2058
msgid "Invalid mute specification"
msgstr "Especificação de mudo inválida"
-#: src/utils/pactl.c:1979
+#: src/utils/pactl.c:2015
msgid "You have to specify a source name/index and a mute action (0, 1, or 'toggle')"
msgstr "Você deve especificar um nome/índice da fonte e uma ação de mudo (0, 1 ou “toogle”)"
-#: src/utils/pactl.c:1994
+#: src/utils/pactl.c:2030
msgid "You have to specify a sink input index and a mute action (0, 1, or 'toggle')"
msgstr "Você deve especificar um índice de entrada do destino e uma ação de mudo (0, 1 ou “toogle”)"
-#: src/utils/pactl.c:1999
+#: src/utils/pactl.c:2035
msgid "Invalid sink input index specification"
msgstr "Especificação do índice de entrada de destino inválida"
-#: src/utils/pactl.c:2012
+#: src/utils/pactl.c:2048
msgid "You have to specify a source output index and a mute action (0, 1, or 'toggle')"
msgstr "Você deve especificar um índice de saída de fonte e uma ação de mudo (0, 1 ou “toogle”)"
-#: src/utils/pactl.c:2017
+#: src/utils/pactl.c:2053
msgid "Invalid source output index specification"
msgstr "Especificação do índice de saída de fonte inválida"
-#: src/utils/pactl.c:2034
+#: src/utils/pactl.c:2070
msgid "You have to specify a sink index and a semicolon-separated list of supported formats"
msgstr "Você deve especificar um índice do destino e uma lista separada por ponto-e-vírgulas de formatos aceitos"
-#: src/utils/pactl.c:2046
+#: src/utils/pactl.c:2082
msgid "You have to specify a card name/index, a port name and a latency offset"
msgstr "Você deve especificar nome/índice de uma placa, um nome de porta e uma mudança de latência"
-#: src/utils/pactl.c:2053
+#: src/utils/pactl.c:2089
msgid "Could not parse latency offset"
msgstr "Não foi possível analisar a mudança da latência"
-#: src/utils/pactl.c:2065
+#: src/utils/pactl.c:2101
msgid "No valid command specified."
msgstr "Nenhum comando válido especificado."
@@ -2963,6 +3034,15 @@ msgstr "Falha ao carregar os dados do cookie\n"
msgid "Not yet implemented.\n"
msgstr "Não implementado ainda.\n"
+#~ msgid "Digital Passthrough (S/PDIF)"
+#~ msgstr "Conversor digital (S/PDIF)"
+
+#~ msgid "Digital Passthrough (IEC958)"
+#~ msgstr "Conversor digital (IEC958)"
+
+#~ msgid "LFE on Separate Mono Output"
+#~ msgstr "Saída monofônica separada em LFE"
+
#~ msgid "Failed to initialize daemon."
#~ msgstr "Falha em iniciar o daemon."
@@ -3474,4 +3554,4 @@ msgstr "Não implementado ainda.\n"
#~ msgstr "', ou eleve o RLIMIT_NICE/RLIMIT_RTPRIO dos limites do recurso para este usuário."
#~ msgid "socketpair(): %s"
-#~ msgstr "socketpair(): %s" \ No newline at end of file
+#~ msgstr "socketpair(): %s"
diff --git a/po/pulseaudio.pot b/po/pulseaudio.pot
index a9f83a2..a082fa2 100644
--- a/po/pulseaudio.pot
+++ b/po/pulseaudio.pot
@@ -1,15 +1,14 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR PulseAudio contributors
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the pulseaudio package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: pulseaudio 12.0-107-g8fdd8\n"
-"Report-Msgid-Bugs-To: pulseaudio-discuss (at) lists (dot) freedesktop (dot) "
-"org\n"
-"POT-Creation-Date: 2018-08-23 07:45+0530\n"
+"Project-Id-Version: pulseaudio\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/new\n"
+"POT-Creation-Date: 2020-08-13 22:00+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,6 +16,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
#: src/daemon/cmdline.c:113
#, c-format
@@ -29,46 +29,37 @@ msgid ""
" --dump-conf Dump default configuration\n"
" --dump-modules Dump list of available modules\n"
" --dump-resample-methods Dump available resample methods\n"
-" --cleanup-shm Cleanup stale shared memory "
-"segments\n"
-" --start Start the daemon if it is not "
-"running\n"
+" --cleanup-shm Cleanup stale shared memory segments\n"
+" --start Start the daemon if it is not running\n"
" -k --kill Kill a running daemon\n"
-" --check Check for a running daemon (only "
-"returns exit code)\n"
+" --check Check for a running daemon (only returns exit "
+"code)\n"
"\n"
"OPTIONS:\n"
" --system[=BOOL] Run as system-wide instance\n"
" -D, --daemonize[=BOOL] Daemonize after startup\n"
" --fail[=BOOL] Quit when startup fails\n"
" --high-priority[=BOOL] Try to set high nice level\n"
-" (only available as root, when SUID "
-"or\n"
+" (only available as root, when SUID or\n"
" with elevated RLIMIT_NICE)\n"
" --realtime[=BOOL] Try to enable realtime scheduling\n"
-" (only available as root, when SUID "
-"or\n"
+" (only available as root, when SUID or\n"
" with elevated RLIMIT_RTPRIO)\n"
-" --disallow-module-loading[=BOOL] Disallow module user requested "
-"module\n"
+" --disallow-module-loading[=BOOL] Disallow user requested module\n"
" loading/unloading after startup\n"
" --disallow-exit[=BOOL] Disallow user requested exit\n"
-" --exit-idle-time=SECS Terminate the daemon when idle and "
-"this\n"
+" --exit-idle-time=SECS Terminate the daemon when idle and this\n"
" time passed\n"
-" --scache-idle-time=SECS Unload autoloaded samples when idle "
-"and\n"
+" --scache-idle-time=SECS Unload autoloaded samples when idle and\n"
" this time passed\n"
" --log-level[=LEVEL] Increase or set verbosity level\n"
" -v --verbose Increase the verbosity level\n"
" --log-target={auto,syslog,stderr,file:PATH,newfile:PATH}\n"
" Specify the log target\n"
-" --log-meta[=BOOL] Include code location in log "
-"messages\n"
+" --log-meta[=BOOL] Include code location in log messages\n"
" --log-time[=BOOL] Include timestamps in log messages\n"
" --log-backtrace=FRAMES Include a backtrace in log messages\n"
-" -p, --dl-search-path=PATH Set the search path for dynamic "
-"shared\n"
+" -p, --dl-search-path=PATH Set the search path for dynamic shared\n"
" objects (plugins)\n"
" --resample-method=METHOD Use the specified resampling method\n"
" (See --dump-resample-methods for\n"
@@ -80,12 +71,10 @@ msgid ""
" --enable-memfd[=BOOL] Enable memfd shared memory support.\n"
"\n"
"STARTUP SCRIPT:\n"
-" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module "
-"with\n"
+" -L, --load=\"MODULE ARGUMENTS\" Load the specified plugin module with\n"
" the specified argument\n"
" -F, --file=FILENAME Run the specified script\n"
-" -C Open a command line on the running "
-"TTY\n"
+" -C Open a command line on the running TTY\n"
" after startup\n"
"\n"
" -n Don't load default script file\n"
@@ -101,8 +90,8 @@ msgstr ""
#: src/daemon/cmdline.c:265
msgid ""
-"--log-level expects log level argument (either numeric in range 0..4 or one "
-"of debug, info, notice, warn, error)."
+"--log-level expects log level argument (either numeric in range 0..4 or one of debug, "
+"info, notice, warn, error)."
msgstr ""
#: src/daemon/cmdline.c:277
@@ -127,14 +116,14 @@ msgstr ""
#: src/daemon/cmdline.c:328
msgid ""
-"Invalid log target: use either 'syslog', 'journal','stderr' or 'auto' or a "
-"valid file name 'file:<path>', 'newfile:<path>'."
+"Invalid log target: use either 'syslog', 'journal', 'stderr' or 'auto' or a valid file "
+"name 'file:<path>', 'newfile:<path>'."
msgstr ""
#: src/daemon/cmdline.c:330
msgid ""
-"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file "
-"name 'file:<path>', 'newfile:<path>'."
+"Invalid log target: use either 'syslog', 'stderr' or 'auto' or a valid file name 'file:"
+"<path>', 'newfile:<path>'."
msgstr ""
#: src/daemon/cmdline.c:338
@@ -166,78 +155,78 @@ msgstr ""
msgid "--enable-memfd expects boolean argument"
msgstr ""
-#: src/daemon/daemon-conf.c:266
+#: src/daemon/daemon-conf.c:270
#, c-format
msgid "[%s:%u] Invalid log target '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:281
+#: src/daemon/daemon-conf.c:285
#, c-format
msgid "[%s:%u] Invalid log level '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:296
+#: src/daemon/daemon-conf.c:300
#, c-format
msgid "[%s:%u] Invalid resample method '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:318
+#: src/daemon/daemon-conf.c:322
#, c-format
msgid "[%s:%u] Invalid rlimit '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:338
+#: src/daemon/daemon-conf.c:342
#, c-format
msgid "[%s:%u] Invalid sample format '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:355 src/daemon/daemon-conf.c:372
+#: src/daemon/daemon-conf.c:359 src/daemon/daemon-conf.c:376
#, c-format
msgid "[%s:%u] Invalid sample rate '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:395
+#: src/daemon/daemon-conf.c:399
#, c-format
msgid "[%s:%u] Invalid sample channels '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:412
+#: src/daemon/daemon-conf.c:416
#, c-format
msgid "[%s:%u] Invalid channel map '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:429
+#: src/daemon/daemon-conf.c:433
#, c-format
msgid "[%s:%u] Invalid number of fragments '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:446
+#: src/daemon/daemon-conf.c:450
#, c-format
msgid "[%s:%u] Invalid fragment size '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:463
+#: src/daemon/daemon-conf.c:467
#, c-format
msgid "[%s:%u] Invalid nice level '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:506
+#: src/daemon/daemon-conf.c:552
#, c-format
msgid "[%s:%u] Invalid server type '%s'."
msgstr ""
-#: src/daemon/daemon-conf.c:624
+#: src/daemon/daemon-conf.c:673
#, c-format
msgid "Failed to open configuration file: %s"
msgstr ""
-#: src/daemon/daemon-conf.c:640
+#: src/daemon/daemon-conf.c:689
msgid ""
-"The specified default channel map has a different number of channels than "
-"the specified default number of channels."
+"The specified default channel map has a different number of channels than the specified "
+"default number of channels."
msgstr ""
-#: src/daemon/daemon-conf.c:727
+#: src/daemon/daemon-conf.c:776
#, c-format
msgid "### Read from configuration file: %s ###\n"
msgstr ""
@@ -354,8 +343,7 @@ msgstr ""
#: src/daemon/main.c:534
msgid ""
-"System mode refused for non-root user. Only starting the D-Bus server lookup "
-"service."
+"System mode refused for non-root user. Only starting the D-Bus server lookup service."
msgstr ""
#: src/daemon/main.c:633
@@ -364,9 +352,7 @@ msgid "Failed to kill daemon: %s"
msgstr ""
#: src/daemon/main.c:662
-msgid ""
-"This program is not intended to be run as root (unless --system is "
-"specified)."
+msgid "This program is not intended to be run as root (unless --system is specified)."
msgstr ""
#: src/daemon/main.c:665
@@ -384,8 +370,7 @@ msgstr ""
#: src/daemon/main.c:718
#, c-format
-msgid ""
-"User-configured server at %s, which appears to be local. Probing deeper."
+msgid "User-configured server at %s, which appears to be local. Probing deeper."
msgstr ""
#: src/daemon/main.c:723
@@ -432,32 +417,38 @@ msgstr ""
msgid "setsid() failed: %s"
msgstr ""
-#: src/daemon/main.c:959
+#: src/daemon/main.c:965
msgid "Failed to get machine ID"
msgstr ""
-#: src/daemon/main.c:985
+#: src/daemon/main.c:991
msgid ""
-"OK, so you are running PA in system mode. Please make sure that you actually "
-"do want to do that.\n"
-"Please read http://www.freedesktop.org/wiki/Software/PulseAudio/"
-"Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system "
-"mode is usually a bad idea."
+"OK, so you are running PA in system mode. Please make sure that you actually do want to "
+"do that.\n"
+"Please read http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/"
+"WhatIsWrongWithSystemWide/ for an explanation why system mode is usually a bad idea."
msgstr ""
-#: src/daemon/main.c:1001
+#: src/daemon/main.c:1007
msgid "pa_pid_file_create() failed."
msgstr ""
-#: src/daemon/main.c:1033
+#: src/daemon/main.c:1039
msgid "pa_core_new() failed."
msgstr ""
-#: src/daemon/main.c:1103
-msgid "Failed to initialize daemon."
+#: src/daemon/main.c:1110
+msgid "command line arguments"
+msgstr ""
+
+#: src/daemon/main.c:1117
+#, c-format
+msgid ""
+"Failed to initialize daemon due to errors while executing startup commands. Source of "
+"commands: %s"
msgstr ""
-#: src/daemon/main.c:1108
+#: src/daemon/main.c:1122
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
@@ -469,450 +460,440 @@ msgstr ""
msgid "Start the PulseAudio Sound System"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2443
+#: src/modules/alsa/alsa-mixer.c:2621
msgid "Input"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2444
+#: src/modules/alsa/alsa-mixer.c:2622
msgid "Docking Station Input"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2445
+#: src/modules/alsa/alsa-mixer.c:2623
msgid "Docking Station Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2446
+#: src/modules/alsa/alsa-mixer.c:2624
msgid "Docking Station Line In"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2447 src/modules/alsa/alsa-mixer.c:2532
+#: src/modules/alsa/alsa-mixer.c:2625 src/modules/alsa/alsa-mixer.c:2716
msgid "Line In"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2448 src/modules/alsa/alsa-mixer.c:2526
-#: src/modules/bluetooth/module-bluez5-device.c:1904
+#: src/modules/alsa/alsa-mixer.c:2626 src/modules/alsa/alsa-mixer.c:2710
+#: src/modules/bluetooth/module-bluez5-device.c:1792
msgid "Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2449 src/modules/alsa/alsa-mixer.c:2527
+#: src/modules/alsa/alsa-mixer.c:2627 src/modules/alsa/alsa-mixer.c:2711
msgid "Front Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2450 src/modules/alsa/alsa-mixer.c:2528
+#: src/modules/alsa/alsa-mixer.c:2628 src/modules/alsa/alsa-mixer.c:2712
msgid "Rear Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2451
+#: src/modules/alsa/alsa-mixer.c:2629
msgid "External Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2452 src/modules/alsa/alsa-mixer.c:2530
+#: src/modules/alsa/alsa-mixer.c:2630 src/modules/alsa/alsa-mixer.c:2714
msgid "Internal Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2453 src/modules/alsa/alsa-mixer.c:2533
+#: src/modules/alsa/alsa-mixer.c:2631 src/modules/alsa/alsa-mixer.c:2717
+#: src/utils/pactl.c:258
msgid "Radio"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2454 src/modules/alsa/alsa-mixer.c:2534
+#: src/modules/alsa/alsa-mixer.c:2632 src/modules/alsa/alsa-mixer.c:2718
+#: src/utils/pactl.c:259
msgid "Video"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2455
+#: src/modules/alsa/alsa-mixer.c:2633
msgid "Automatic Gain Control"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2456
+#: src/modules/alsa/alsa-mixer.c:2634
msgid "No Automatic Gain Control"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2457
+#: src/modules/alsa/alsa-mixer.c:2635
msgid "Boost"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2458
+#: src/modules/alsa/alsa-mixer.c:2636
msgid "No Boost"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2459
+#: src/modules/alsa/alsa-mixer.c:2637
msgid "Amplifier"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2460
+#: src/modules/alsa/alsa-mixer.c:2638
msgid "No Amplifier"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2461
+#: src/modules/alsa/alsa-mixer.c:2639
msgid "Bass Boost"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2462
+#: src/modules/alsa/alsa-mixer.c:2640
msgid "No Bass Boost"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2463
-#: src/modules/bluetooth/module-bluez5-device.c:1911
+#: src/modules/alsa/alsa-mixer.c:2641 src/modules/bluetooth/module-bluez5-device.c:1800
+#: src/utils/pactl.c:248
msgid "Speaker"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2464 src/modules/alsa/alsa-mixer.c:2536
+#: src/modules/alsa/alsa-mixer.c:2642 src/modules/alsa/alsa-mixer.c:2720
+#: src/utils/pactl.c:249
msgid "Headphones"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2525
+#: src/modules/alsa/alsa-mixer.c:2709
msgid "Analog Input"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2529
+#: src/modules/alsa/alsa-mixer.c:2713
msgid "Dock Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2531
+#: src/modules/alsa/alsa-mixer.c:2715
msgid "Headset Microphone"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2535
+#: src/modules/alsa/alsa-mixer.c:2719
msgid "Analog Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2537
+#: src/modules/alsa/alsa-mixer.c:2721
msgid "Headphones Mono Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2538
-msgid "LFE on Separate Mono Output"
-msgstr ""
-
-#: src/modules/alsa/alsa-mixer.c:2539
+#: src/modules/alsa/alsa-mixer.c:2722
msgid "Line Out"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2540
+#: src/modules/alsa/alsa-mixer.c:2723
msgid "Analog Mono Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2541
+#: src/modules/alsa/alsa-mixer.c:2724
msgid "Speakers"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2542
+#: src/modules/alsa/alsa-mixer.c:2725
msgid "HDMI / DisplayPort"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2543
+#: src/modules/alsa/alsa-mixer.c:2726
msgid "Digital Output (S/PDIF)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2544
+#: src/modules/alsa/alsa-mixer.c:2727
msgid "Digital Input (S/PDIF)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2545
-msgid "Digital Passthrough (S/PDIF)"
-msgstr ""
-
-#: src/modules/alsa/alsa-mixer.c:2546
+#: src/modules/alsa/alsa-mixer.c:2728
msgid "Multichannel Input"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2547
+#: src/modules/alsa/alsa-mixer.c:2729
msgid "Multichannel Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2548
+#: src/modules/alsa/alsa-mixer.c:2730
msgid "Game Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:2549
+#: src/modules/alsa/alsa-mixer.c:2731
msgid "Chat Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4061
+#: src/modules/alsa/alsa-mixer.c:4380
msgid "Analog Mono"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4062 src/modules/alsa/alsa-mixer.c:4070
-#: src/modules/alsa/alsa-mixer.c:4071
+#. Note: Not translated to "Analog Stereo Input", because the source
+#. * name gets "Input" appended to it automatically, so adding "Input"
+#. * here would lead to the source name to become "Analog Stereo Input
+#. * Input". The same logic applies to analog-stereo-output,
+#. * multichannel-input and multichannel-output.
+#: src/modules/alsa/alsa-mixer.c:4381 src/modules/alsa/alsa-mixer.c:4389
+#: src/modules/alsa/alsa-mixer.c:4390
msgid "Analog Stereo"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4063 src/pulse/channelmap.c:103
+#: src/modules/alsa/alsa-mixer.c:4382 src/pulse/channelmap.c:103
#: src/pulse/channelmap.c:771
msgid "Mono"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4064 src/pulse/channelmap.c:775
+#: src/modules/alsa/alsa-mixer.c:4383 src/pulse/channelmap.c:775
msgid "Stereo"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4072 src/modules/alsa/alsa-mixer.c:4073
+#: src/modules/alsa/alsa-mixer.c:4391 src/modules/alsa/alsa-mixer.c:4392
msgid "Multichannel"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4074
+#: src/modules/alsa/alsa-mixer.c:4393
msgid "Analog Surround 2.1"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4075
+#: src/modules/alsa/alsa-mixer.c:4394
msgid "Analog Surround 3.0"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4076
+#: src/modules/alsa/alsa-mixer.c:4395
msgid "Analog Surround 3.1"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4077
+#: src/modules/alsa/alsa-mixer.c:4396
msgid "Analog Surround 4.0"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4078
+#: src/modules/alsa/alsa-mixer.c:4397
msgid "Analog Surround 4.1"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4079
+#: src/modules/alsa/alsa-mixer.c:4398
msgid "Analog Surround 5.0"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4080
+#: src/modules/alsa/alsa-mixer.c:4399
msgid "Analog Surround 5.1"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4081
+#: src/modules/alsa/alsa-mixer.c:4400
msgid "Analog Surround 6.0"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4082
+#: src/modules/alsa/alsa-mixer.c:4401
msgid "Analog Surround 6.1"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4083
+#: src/modules/alsa/alsa-mixer.c:4402
msgid "Analog Surround 7.0"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4084
+#: src/modules/alsa/alsa-mixer.c:4403
msgid "Analog Surround 7.1"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4085
+#: src/modules/alsa/alsa-mixer.c:4404
msgid "Digital Stereo (IEC958)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4086
-msgid "Digital Passthrough (IEC958)"
-msgstr ""
-
-#: src/modules/alsa/alsa-mixer.c:4087
+#: src/modules/alsa/alsa-mixer.c:4405
msgid "Digital Surround 4.0 (IEC958/AC3)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4088
+#: src/modules/alsa/alsa-mixer.c:4406
msgid "Digital Surround 5.1 (IEC958/AC3)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4089
+#: src/modules/alsa/alsa-mixer.c:4407
msgid "Digital Surround 5.1 (IEC958/DTS)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4090
+#: src/modules/alsa/alsa-mixer.c:4408
msgid "Digital Stereo (HDMI)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4091
+#: src/modules/alsa/alsa-mixer.c:4409
msgid "Digital Surround 5.1 (HDMI)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4224
+#: src/modules/alsa/alsa-mixer.c:4410
+msgid "Chat"
+msgstr ""
+
+#: src/modules/alsa/alsa-mixer.c:4411
+msgid "Game"
+msgstr ""
+
+#: src/modules/alsa/alsa-mixer.c:4545
msgid "Analog Mono Duplex"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4225
+#: src/modules/alsa/alsa-mixer.c:4546
msgid "Analog Stereo Duplex"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4226
+#: src/modules/alsa/alsa-mixer.c:4547
msgid "Digital Stereo Duplex (IEC958)"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4227
+#: src/modules/alsa/alsa-mixer.c:4548
msgid "Multichannel Duplex"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4228
+#: src/modules/alsa/alsa-mixer.c:4549
msgid "Stereo Duplex"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4229 src/modules/alsa/module-alsa-card.c:187
-#: src/modules/bluetooth/module-bluez5-device.c:2159
+#: src/modules/alsa/alsa-mixer.c:4550 src/modules/alsa/module-alsa-card.c:188
+#: src/modules/bluetooth/module-bluez5-device.c:2053
msgid "Off"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4328
+#: src/modules/alsa/alsa-mixer.c:4650
#, c-format
msgid "%s Output"
msgstr ""
-#: src/modules/alsa/alsa-mixer.c:4336
+#: src/modules/alsa/alsa-mixer.c:4658
#, c-format
msgid "%s Input"
msgstr ""
-#: src/modules/alsa/alsa-sink.c:578
+#: src/modules/alsa/alsa-sink.c:652 src/modules/alsa/alsa-sink.c:842
#, c-format
msgid ""
-"ALSA woke us up to write new data to the device, but there was actually "
-"nothing to write.\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
+"ALSA woke us up to write new data to the device, but there was actually nothing to "
+"write.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers.\n"
+"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or "
+"another value < min_avail."
msgstr ""
-#: src/modules/alsa/alsa-sink.c:762
+#: src/modules/alsa/alsa-source.c:611 src/modules/alsa/alsa-source.c:777
#, c-format
msgid ""
-"ALSA woke us up to write new data to the device, but there was actually "
-"nothing to write!\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
+"ALSA woke us up to read new data from the device, but there was actually nothing to "
+"read.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers.\n"
+"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() returned 0 or "
+"another value < min_avail."
msgstr ""
-#: src/modules/alsa/alsa-source.c:535
+#: src/modules/alsa/alsa-util.c:1183 src/modules/alsa/alsa-util.c:1277
#, c-format
msgid ""
-"ALSA woke us up to read new data from the device, but there was actually "
-"nothing to read.\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
-msgstr ""
-
-#: src/modules/alsa/alsa-source.c:686
-#, c-format
-msgid ""
-"ALSA woke us up to read new data from the device, but there was actually "
-"nothing to read!\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers.\n"
-"We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() "
-"returned 0 or another value < min_avail."
-msgstr ""
-
-#: src/modules/alsa/alsa-util.c:1168 src/modules/alsa/alsa-util.c:1256
-#, c-format
-msgid ""
-"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
-"ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
-msgstr ""
-
-#: src/modules/alsa/alsa-util.c:1231
+"snd_pcm_avail() returned a value that is exceptionally large: %lu byte (%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
+msgid_plural ""
+"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/modules/alsa/alsa-util.c:1249
#, c-format
msgid ""
-"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s"
-"%lu ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
-msgstr ""
-
-#: src/modules/alsa/alsa-util.c:1272
+"snd_pcm_delay() returned a value that is exceptionally large: %li byte (%s%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
+msgid_plural ""
+"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/modules/alsa/alsa-util.c:1296
#, c-format
msgid ""
-"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail "
-"%lu.\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
+"snd_pcm_avail_delay() returned strange values: delay %lu is less than avail %lu.\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
msgstr ""
-#: src/modules/alsa/alsa-util.c:1315
+#: src/modules/alsa/alsa-util.c:1339
#, c-format
msgid ""
-"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
-"(%lu ms).\n"
-"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
-"to the ALSA developers."
-msgstr ""
-
-#: src/modules/bluetooth/module-bluez5-device.c:1888
-#: src/modules/bluetooth/module-bluez5-device.c:1910
-#: src/modules/bluetooth/module-bluez5-device.c:1916
-#: src/modules/bluetooth/module-bluez5-device.c:1942
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu byte (%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
+msgid_plural ""
+"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes (%lu ms).\n"
+"Most likely this is a bug in the ALSA driver '%s'. Please report this issue to the ALSA "
+"developers."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/modules/bluetooth/module-bluez5-device.c:1773
+#: src/modules/bluetooth/module-bluez5-device.c:1799
+#: src/modules/bluetooth/module-bluez5-device.c:1806
msgid "Bluetooth Input"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1889
-#: src/modules/bluetooth/module-bluez5-device.c:1905
-#: src/modules/bluetooth/module-bluez5-device.c:1943
+#: src/modules/bluetooth/module-bluez5-device.c:1774
+#: src/modules/bluetooth/module-bluez5-device.c:1793
msgid "Bluetooth Output"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1894
+#: src/modules/bluetooth/module-bluez5-device.c:1780 src/utils/pactl.c:252
msgid "Headset"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1899
+#: src/modules/bluetooth/module-bluez5-device.c:1786 src/utils/pactl.c:263
msgid "Handsfree"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1917
+#: src/modules/bluetooth/module-bluez5-device.c:1807
msgid "Headphone"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1922
+#: src/modules/bluetooth/module-bluez5-device.c:1813 src/utils/pactl.c:262
msgid "Portable"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1927
+#: src/modules/bluetooth/module-bluez5-device.c:1819 src/utils/pactl.c:264
msgid "Car"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1932
+#: src/modules/bluetooth/module-bluez5-device.c:1825 src/utils/pactl.c:265
msgid "HiFi"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1937
+#: src/modules/bluetooth/module-bluez5-device.c:1831 src/utils/pactl.c:266
msgid "Phone"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1984
+#: src/modules/bluetooth/module-bluez5-device.c:1878
msgid "High Fidelity Playback (A2DP Sink)"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:1996
+#: src/modules/bluetooth/module-bluez5-device.c:1890
msgid "High Fidelity Capture (A2DP Source)"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:2008
+#: src/modules/bluetooth/module-bluez5-device.c:1902
msgid "Headset Head Unit (HSP/HFP)"
msgstr ""
-#: src/modules/bluetooth/module-bluez5-device.c:2021
+#: src/modules/bluetooth/module-bluez5-device.c:1915
msgid "Headset Audio Gateway (HSP/HFP)"
msgstr ""
#: src/modules/echo-cancel/module-echo-cancel.c:59
msgid ""
-"source_name=<name for the source> source_properties=<properties for the "
-"source> source_master=<name of source to filter> sink_name=<name for the "
-"sink> sink_properties=<properties for the sink> sink_master=<name of sink to "
-"filter> adjust_time=<how often to readjust rates in s> adjust_threshold=<how "
-"much drift to readjust after in ms> format=<sample format> rate=<sample "
-"rate> channels=<number of channels> channel_map=<channel map> "
-"aec_method=<implementation to use> aec_args=<parameters for the AEC engine> "
-"save_aec=<save AEC data in /tmp> autoloaded=<set if this module is being "
-"loaded automatically> use_volume_sharing=<yes or no> use_master_format=<yes "
-"or no> "
-msgstr ""
-
+"source_name=<name for the source> source_properties=<properties for the source> "
+"source_master=<name of source to filter> sink_name=<name for the sink> "
+"sink_properties=<properties for the sink> sink_master=<name of sink to filter> "
+"adjust_time=<how often to readjust rates in s> adjust_threshold=<how much drift to "
+"readjust after in ms> format=<sample format> rate=<sample rate> channels=<number of "
+"channels> channel_map=<channel map> aec_method=<implementation to use> "
+"aec_args=<parameters for the AEC engine> save_aec=<save AEC data in /tmp> "
+"autoloaded=<set if this module is being loaded automatically> use_volume_sharing=<yes "
+"or no> use_master_format=<yes or no> "
+msgstr ""
+
+#. add on profile
#: src/modules/macosx/module-coreaudio-device.c:824
msgid "On"
msgstr ""
-#: src/modules/module-allow-passthrough.c:71
-#: src/modules/module-always-sink.c:80
+#: src/modules/module-allow-passthrough.c:71 src/modules/module-always-sink.c:80
msgid "Dummy Output"
msgstr ""
@@ -932,12 +913,11 @@ msgstr ""
msgid ""
"sink_name=<name of the sink> sink_properties=<properties for the sink> "
"sink_master=<sink to connect to> format=<sample format> rate=<sample rate> "
-"channels=<number of channels> channel_map=<channel map> autoloaded=<set if "
-"this module is being loaded automatically> use_volume_sharing=<yes or no> "
+"channels=<number of channels> channel_map=<channel map> autoloaded=<set if this module "
+"is being loaded automatically> use_volume_sharing=<yes or no> "
msgstr ""
-#: src/modules/module-equalizer-sink.c:1094
-#: src/modules/module-equalizer-sink.c:1217
+#: src/modules/module-equalizer-sink.c:1094 src/modules/module-equalizer-sink.c:1217
#, c-format
msgid "FFT based equalizer on %s"
msgstr ""
@@ -953,32 +933,34 @@ msgstr ""
#: src/modules/module-ladspa-sink.c:54
msgid ""
"sink_name=<name for the sink> sink_properties=<properties for the sink> "
-"sink_input_properties=<properties for the sink input> master=<name of sink "
-"to filter> sink_master=<name of sink to filter> format=<sample format> "
-"rate=<sample rate> channels=<number of channels> channel_map=<input channel "
-"map> plugin=<ladspa plugin name> label=<ladspa plugin label> control=<comma "
-"separated list of input control values> input_ladspaport_map=<comma "
-"separated list of input LADSPA port names> output_ladspaport_map=<comma "
-"separated list of output LADSPA port names> autoloaded=<set if this module "
-"is being loaded automatically> "
+"sink_input_properties=<properties for the sink input> master=<name of sink to filter> "
+"sink_master=<name of sink to filter> format=<sample format> rate=<sample rate> "
+"channels=<number of channels> channel_map=<input channel map> plugin=<ladspa plugin "
+"name> label=<ladspa plugin label> control=<comma separated list of input control "
+"values> input_ladspaport_map=<comma separated list of input LADSPA port names> "
+"output_ladspaport_map=<comma separated list of output LADSPA port names> "
+"autoloaded=<set if this module is being loaded automatically> "
msgstr ""
#: src/modules/module-null-sink.c:46
msgid "Clocked NULL sink"
msgstr ""
-#: src/modules/module-null-sink.c:292
+#: src/modules/module-null-sink.c:333
msgid "Null Output"
msgstr ""
-#: src/modules/module-rygel-media-server.c:506
-#: src/modules/module-rygel-media-server.c:544
+#: src/modules/module-null-sink.c:345 src/utils/pactl.c:1094
+#, c-format
+msgid "Failed to set format: invalid format string %s"
+msgstr ""
+
+#: src/modules/module-rygel-media-server.c:506 src/modules/module-rygel-media-server.c:544
#: src/modules/module-rygel-media-server.c:903
msgid "Output Devices"
msgstr ""
-#: src/modules/module-rygel-media-server.c:507
-#: src/modules/module-rygel-media-server.c:545
+#: src/modules/module-rygel-media-server.c:507 src/modules/module-rygel-media-server.c:545
#: src/modules/module-rygel-media-server.c:904
msgid "Input Devices"
msgstr ""
@@ -987,14 +969,14 @@ msgstr ""
msgid "Audio on @HOSTNAME@"
msgstr ""
-#: src/modules/module-tunnel-sink-new.c:307
-#: src/modules/module-tunnel-source-new.c:305
+#. TODO: old tunnel put here the remote sink_name into stream name e.g. 'Null Output for lynxis@lazus'
+#. TODO: old tunnel put here the remote source_name into stream name e.g. 'Null Output for lynxis@lazus'
+#: src/modules/module-tunnel-sink-new.c:307 src/modules/module-tunnel-source-new.c:305
#, c-format
msgid "Tunnel for %s@%s"
msgstr ""
-#: src/modules/module-tunnel-sink-new.c:544
-#: src/modules/module-tunnel-source-new.c:540
+#: src/modules/module-tunnel-sink-new.c:544 src/modules/module-tunnel-source-new.c:540
#, c-format
msgid "Tunnel to %s/%s"
msgstr ""
@@ -1005,19 +987,18 @@ msgstr ""
#: src/modules/module-virtual-surround-sink.c:49
msgid ""
-"sink_name=<name for the sink> sink_properties=<properties for the sink> "
-"master=<name of sink to filter> sink_master=<name of sink to filter> "
-"format=<sample format> rate=<sample rate> channels=<number of channels> "
-"channel_map=<channel map> use_volume_sharing=<yes or no> "
-"force_flat_volume=<yes or no> hrir=/path/to/left_hrir.wav autoloaded=<set if "
-"this module is being loaded automatically> "
+"sink_name=<name for the sink> sink_properties=<properties for the sink> master=<name of "
+"sink to filter> sink_master=<name of sink to filter> format=<sample format> "
+"rate=<sample rate> channels=<number of channels> channel_map=<channel map> "
+"use_volume_sharing=<yes or no> force_flat_volume=<yes or no> hrir=/path/to/left_hrir."
+"wav autoloaded=<set if this module is being loaded automatically> "
msgstr ""
#: src/modules/raop/module-raop-discover.c:295
msgid "Unknown device model"
msgstr ""
-#: src/modules/raop/raop-sink.c:507
+#: src/modules/raop/raop-sink.c:655
msgid "RAOP standard profile"
msgstr ""
@@ -1251,29 +1232,29 @@ msgstr ""
msgid "Surround 7.1"
msgstr ""
-#: src/pulse/client-conf-x11.c:53 src/utils/pax11publish.c:97
+#: src/pulse/client-conf-x11.c:61 src/utils/pax11publish.c:97
msgid "xcb_connect() failed"
msgstr ""
-#: src/pulse/client-conf-x11.c:58 src/utils/pax11publish.c:102
+#: src/pulse/client-conf-x11.c:66 src/utils/pax11publish.c:102
msgid "xcb_connection_has_error() returned true"
msgstr ""
-#: src/pulse/client-conf-x11.c:94
+#: src/pulse/client-conf-x11.c:102
msgid "Failed to parse cookie data"
msgstr ""
-#: src/pulse/context.c:705
+#: src/pulse/context.c:706
#, c-format
msgid "fork(): %s"
msgstr ""
-#: src/pulse/context.c:760
+#: src/pulse/context.c:761
#, c-format
msgid "waitpid(): %s"
msgstr ""
-#: src/pulse/context.c:1466
+#: src/pulse/context.c:1467
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr ""
@@ -1294,12 +1275,12 @@ msgstr ""
msgid "invalid"
msgstr ""
-#: src/pulsecore/core-util.c:1692
+#: src/pulsecore/core-util.c:1712
#, c-format
msgid ""
-"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could "
-"e g happen if you try to connect to a non-root PulseAudio as a root user, "
-"over the native protocol. Don't do that.)"
+"XDG_RUNTIME_DIR (%s) is not owned by us (uid %d), but by uid %d! (This could e.g. "
+"happen if you try to connect to a non-root PulseAudio as a root user, over the native "
+"protocol. Don't do that.)"
msgstr ""
#: src/pulsecore/core-util.h:96
@@ -1321,19 +1302,18 @@ msgstr ""
#: src/pulsecore/log.c:188
#, c-format
-msgid ""
-"Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
+msgid "Tried to open target file '%s', '%s.1', '%s.2' ... '%s.%d', but all failed."
msgstr ""
#: src/pulsecore/log.c:651
msgid "Invalid log target."
msgstr ""
-#: src/pulsecore/sink.c:3508
+#: src/pulsecore/sink.c:3534
msgid "Built-in Audio"
msgstr ""
-#: src/pulsecore/sink.c:3513
+#: src/pulsecore/sink.c:3539
msgid "Modem"
msgstr ""
@@ -1608,7 +1588,7 @@ msgstr ""
msgid "pa_stream_connect_record() failed: %s"
msgstr ""
-#: src/utils/pacat.c:514 src/utils/pactl.c:1446
+#: src/utils/pacat.c:514 src/utils/pactl.c:1490
#, c-format
msgid "Connection failure: %s"
msgstr ""
@@ -1660,58 +1640,46 @@ msgid ""
"\n"
" -v, --verbose Enable verbose operations\n"
"\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
-" -d, --device=DEVICE The name of the sink/source to "
-"connect to\n"
-" -n, --client-name=NAME How to call this client on the "
-"server\n"
-" --stream-name=NAME How to call this stream on the "
-"server\n"
-" --volume=VOLUME Specify the initial (linear) volume "
-"in range 0...65536\n"
-" --rate=SAMPLERATE The sample rate in Hz (defaults to "
-"44100)\n"
-" --format=SAMPLEFORMAT The sample type, one of s16le, "
-"s16be, u8, float32le,\n"
-" float32be, ulaw, alaw, s32le, s32be, "
-"s24le, s24be,\n"
-" s24-32le, s24-32be (defaults to "
-"s16ne)\n"
-" --channels=CHANNELS The number of channels, 1 for mono, "
-"2 for stereo\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+" -d, --device=DEVICE The name of the sink/source to connect to\n"
+" -n, --client-name=NAME How to call this client on the server\n"
+" --stream-name=NAME How to call this stream on the server\n"
+" --volume=VOLUME Specify the initial (linear) volume in range "
+"0...65536\n"
+" --rate=SAMPLERATE The sample rate in Hz (defaults to 44100)\n"
+" --format=SAMPLEFORMAT The sample format, see\n"
+" https://www.freedesktop.org/wiki/Software/"
+"PulseAudio/Documentation/User/SupportedAudioFormats/\n"
+" for possible values (defaults to s16ne)\n"
+" --channels=CHANNELS The number of channels, 1 for mono, 2 for "
+"stereo\n"
" (defaults to 2)\n"
-" --channel-map=CHANNELMAP Channel map to use instead of the "
-"default\n"
-" --fix-format Take the sample format from the sink/"
-"source the stream is\n"
+" --channel-map=CHANNELMAP Channel map to use instead of the default\n"
+" --fix-format Take the sample format from the sink/source the "
+"stream is\n"
" being connected to.\n"
-" --fix-rate Take the sampling rate from the sink/"
-"source the stream is\n"
+" --fix-rate Take the sampling rate from the sink/source the "
+"stream is\n"
" being connected to.\n"
-" --fix-channels Take the number of channels and the "
-"channel map\n"
-" from the sink/source the stream is "
-"being connected to.\n"
+" --fix-channels Take the number of channels and the channel "
+"map\n"
+" from the sink/source the stream is being "
+"connected to.\n"
" --no-remix Don't upmix or downmix channels.\n"
-" --no-remap Map channels by index instead of "
-"name.\n"
-" --latency=BYTES Request the specified latency in "
-"bytes.\n"
-" --process-time=BYTES Request the specified process time "
-"per request in bytes.\n"
-" --latency-msec=MSEC Request the specified latency in "
-"msec.\n"
-" --process-time-msec=MSEC Request the specified process time "
-"per request in msec.\n"
-" --property=PROPERTY=VALUE Set the specified property to the "
-"specified value.\n"
+" --no-remap Map channels by index instead of name.\n"
+" --latency=BYTES Request the specified latency in bytes.\n"
+" --process-time=BYTES Request the specified process time per request "
+"in bytes.\n"
+" --latency-msec=MSEC Request the specified latency in msec.\n"
+" --process-time-msec=MSEC Request the specified process time per request "
+"in msec.\n"
+" --property=PROPERTY=VALUE Set the specified property to the specified "
+"value.\n"
" --raw Record/play raw PCM data.\n"
" --passthrough Passthrough data.\n"
" --file-format[=FFORMAT] Record/play formatted PCM data.\n"
" --list-file-formats List available file formats.\n"
-" --monitor-stream=INDEX Record from the sink input with "
-"index INDEX.\n"
+" --monitor-stream=INDEX Record from the sink input with index INDEX.\n"
msgstr ""
#: src/utils/pacat.c:793
@@ -1719,20 +1687,18 @@ msgid "Play back encoded audio files on a PulseAudio sound server."
msgstr ""
#: src/utils/pacat.c:797
-msgid ""
-"Capture audio data from a PulseAudio sound server and write it to a file."
+msgid "Capture audio data from a PulseAudio sound server and write it to a file."
msgstr ""
#: src/utils/pacat.c:801
msgid ""
-"Capture audio data from a PulseAudio sound server and write it to STDOUT or "
-"the specified file."
+"Capture audio data from a PulseAudio sound server and write it to STDOUT or the "
+"specified file."
msgstr ""
#: src/utils/pacat.c:805
msgid ""
-"Play back audio data from STDIN or the specified file on a PulseAudio sound "
-"server."
+"Play back audio data from STDIN or the specified file on a PulseAudio sound server."
msgstr ""
#: src/utils/pacat.c:819
@@ -1743,7 +1709,7 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
-#: src/utils/pacat.c:852 src/utils/pactl.c:1648
+#: src/utils/pacat.c:852 src/utils/pactl.c:1692
#, c-format
msgid "Invalid client name '%s'"
msgstr ""
@@ -1810,11 +1776,11 @@ msgstr ""
#: src/utils/pacat.c:1076
msgid ""
-"Warning: specified sample specification will be overwritten with "
-"specification from file."
+"Warning: specified sample specification will be overwritten with specification from "
+"file."
msgstr ""
-#: src/utils/pacat.c:1079 src/utils/pactl.c:1712
+#: src/utils/pacat.c:1079 src/utils/pactl.c:1756
msgid "Failed to determine sample specification from file."
msgstr ""
@@ -1832,8 +1798,7 @@ msgstr ""
#: src/utils/pacat.c:1125
#, c-format
-msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgid "Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr ""
#: src/utils/pacat.c:1126
@@ -1848,7 +1813,7 @@ msgstr ""
msgid "Failed to set media name."
msgstr ""
-#: src/utils/pacat.c:1160 src/utils/pactl.c:2062
+#: src/utils/pacat.c:1160 src/utils/pactl.c:2106
msgid "pa_mainloop_new() failed."
msgstr ""
@@ -1856,11 +1821,11 @@ msgstr ""
msgid "io_new() failed."
msgstr ""
-#: src/utils/pacat.c:1190 src/utils/pactl.c:2074
+#: src/utils/pacat.c:1190 src/utils/pactl.c:2118
msgid "pa_context_new() failed."
msgstr ""
-#: src/utils/pacat.c:1198 src/utils/pactl.c:2080
+#: src/utils/pacat.c:1198 src/utils/pactl.c:2124
#, c-format
msgid "pa_context_connect() failed: %s"
msgstr ""
@@ -1869,20 +1834,19 @@ msgstr ""
msgid "pa_context_rttime_new() failed."
msgstr ""
-#: src/utils/pacat.c:1211 src/utils/pactl.c:2085
+#: src/utils/pacat.c:1211 src/utils/pactl.c:2129
msgid "pa_mainloop_run() failed."
msgstr ""
-#: src/utils/pacmd.c:51 src/utils/pactl.c:1570
+#: src/utils/pacmd.c:51 src/utils/pactl.c:1614
msgid "NAME [ARGS ...]"
msgstr ""
-#: src/utils/pacmd.c:52 src/utils/pacmd.c:60 src/utils/pactl.c:1571
+#: src/utils/pacmd.c:52 src/utils/pacmd.c:60 src/utils/pactl.c:1615
msgid "NAME|#N"
msgstr ""
-#: src/utils/pacmd.c:53 src/utils/pacmd.c:63 src/utils/pactl.c:1569
-#: src/utils/pactl.c:1575
+#: src/utils/pacmd.c:53 src/utils/pacmd.c:63 src/utils/pactl.c:1613 src/utils/pactl.c:1619
msgid "NAME"
msgstr ""
@@ -1894,7 +1858,7 @@ msgstr ""
msgid "#N VOLUME"
msgstr ""
-#: src/utils/pacmd.c:56 src/utils/pacmd.c:70 src/utils/pactl.c:1573
+#: src/utils/pacmd.c:56 src/utils/pacmd.c:70 src/utils/pactl.c:1617
msgid "NAME|#N 1|0"
msgstr ""
@@ -1930,7 +1894,7 @@ msgstr ""
msgid "FILENAME SINK|#N"
msgstr ""
-#: src/utils/pacmd.c:69 src/utils/pactl.c:1572
+#: src/utils/pacmd.c:69 src/utils/pactl.c:1616
msgid "#N SINK|SOURCE"
msgstr ""
@@ -1938,15 +1902,15 @@ msgstr ""
msgid "1|0"
msgstr ""
-#: src/utils/pacmd.c:72 src/utils/pactl.c:1574
+#: src/utils/pacmd.c:72 src/utils/pactl.c:1618
msgid "CARD PROFILE"
msgstr ""
-#: src/utils/pacmd.c:73 src/utils/pactl.c:1576
+#: src/utils/pacmd.c:73 src/utils/pactl.c:1620
msgid "NAME|#N PORT"
msgstr ""
-#: src/utils/pacmd.c:74 src/utils/pactl.c:1582
+#: src/utils/pacmd.c:74 src/utils/pactl.c:1626
msgid "CARD-NAME|CARD-#N PORT OFFSET"
msgstr ""
@@ -2023,25 +1987,29 @@ msgstr ""
#: src/utils/pactl.c:170
#, c-format
-msgid "Currently in use: %u blocks containing %s bytes total.\n"
-msgstr ""
+msgid "Currently in use: %u block containing %s bytes total.\n"
+msgid_plural "Currently in use: %u blocks containing %s bytes total.\n"
+msgstr[0] ""
+msgstr[1] ""
-#: src/utils/pactl.c:173
+#: src/utils/pactl.c:176
#, c-format
-msgid "Allocated during whole lifetime: %u blocks containing %s bytes total.\n"
-msgstr ""
+msgid "Allocated during whole lifetime: %u block containing %s bytes total.\n"
+msgid_plural "Allocated during whole lifetime: %u blocks containing %s bytes total.\n"
+msgstr[0] ""
+msgstr[1] ""
-#: src/utils/pactl.c:176
+#: src/utils/pactl.c:182
#, c-format
msgid "Sample cache size: %s\n"
msgstr ""
-#: src/utils/pactl.c:185
+#: src/utils/pactl.c:191
#, c-format
msgid "Failed to get server information: %s"
msgstr ""
-#: src/utils/pactl.c:190
+#: src/utils/pactl.c:196
#, c-format
msgid ""
"Server String: %s\n"
@@ -2052,7 +2020,7 @@ msgid ""
"Tile Size: %zu\n"
msgstr ""
-#: src/utils/pactl.c:206
+#: src/utils/pactl.c:212
#, c-format
msgid ""
"User Name: %s\n"
@@ -2066,12 +2034,72 @@ msgid ""
"Cookie: %04x:%04x\n"
msgstr ""
-#: src/utils/pactl.c:255 src/utils/pactl.c:900 src/utils/pactl.c:978
+#: src/utils/pactl.c:237
+msgid ", available"
+msgstr ""
+
+#: src/utils/pactl.c:238
+msgid ", not available"
+msgstr ""
+
+#: src/utils/pactl.c:246 src/utils/pactl.c:270
+msgid "Unknown"
+msgstr ""
+
+#: src/utils/pactl.c:247
+msgid "Aux"
+msgstr ""
+
+#: src/utils/pactl.c:250
+msgid "Line"
+msgstr ""
+
+#: src/utils/pactl.c:251
+msgid "Mic"
+msgstr ""
+
+#: src/utils/pactl.c:253
+msgid "Handset"
+msgstr ""
+
+#: src/utils/pactl.c:254
+msgid "Earpiece"
+msgstr ""
+
+#: src/utils/pactl.c:255
+msgid "SPDIF"
+msgstr ""
+
+#: src/utils/pactl.c:256
+msgid "HDMI"
+msgstr ""
+
+#: src/utils/pactl.c:257
+msgid "TV"
+msgstr ""
+
+#: src/utils/pactl.c:260
+msgid "USB"
+msgstr ""
+
+#: src/utils/pactl.c:261
+msgid "Bluetooth"
+msgstr ""
+
+#: src/utils/pactl.c:267
+msgid "Network"
+msgstr ""
+
+#: src/utils/pactl.c:268
+msgid "Analog"
+msgstr ""
+
+#: src/utils/pactl.c:292 src/utils/pactl.c:944 src/utils/pactl.c:1022
#, c-format
msgid "Failed to get sink information: %s"
msgstr ""
-#: src/utils/pactl.c:281
+#: src/utils/pactl.c:318
#, c-format
msgid ""
"Sink #%u\n"
@@ -2093,27 +2121,36 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:325 src/utils/pactl.c:431 src/utils/pactl.c:592
+#: src/utils/pactl.c:362 src/utils/pactl.c:470 src/utils/pactl.c:633
#, c-format
msgid "\tPorts:\n"
msgstr ""
-#: src/utils/pactl.c:332 src/utils/pactl.c:438
+#: src/utils/pactl.c:364 src/utils/pactl.c:472
+#, c-format
+msgid "\t\t%s: %s (type: %s, priority: %u%s%s%s)\n"
+msgstr ""
+
+#: src/utils/pactl.c:366 src/utils/pactl.c:474 src/utils/pactl.c:638
+msgid ", availability group: "
+msgstr ""
+
+#: src/utils/pactl.c:371 src/utils/pactl.c:479
#, c-format
msgid "\tActive Port: %s\n"
msgstr ""
-#: src/utils/pactl.c:338 src/utils/pactl.c:444
+#: src/utils/pactl.c:377 src/utils/pactl.c:485
#, c-format
msgid "\tFormats:\n"
msgstr ""
-#: src/utils/pactl.c:362 src/utils/pactl.c:920 src/utils/pactl.c:993
+#: src/utils/pactl.c:401 src/utils/pactl.c:964 src/utils/pactl.c:1037
#, c-format
msgid "Failed to get source information: %s"
msgstr ""
-#: src/utils/pactl.c:388
+#: src/utils/pactl.c:427
#, c-format
msgid ""
"Source #%u\n"
@@ -2135,20 +2172,19 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:416 src/utils/pactl.c:486 src/utils/pactl.c:529
-#: src/utils/pactl.c:571 src/utils/pactl.c:669 src/utils/pactl.c:670
-#: src/utils/pactl.c:681 src/utils/pactl.c:739 src/utils/pactl.c:740
-#: src/utils/pactl.c:751 src/utils/pactl.c:802 src/utils/pactl.c:803
-#: src/utils/pactl.c:809
+#: src/utils/pactl.c:455 src/utils/pactl.c:527 src/utils/pactl.c:570 src/utils/pactl.c:612
+#: src/utils/pactl.c:711 src/utils/pactl.c:712 src/utils/pactl.c:723 src/utils/pactl.c:781
+#: src/utils/pactl.c:782 src/utils/pactl.c:793 src/utils/pactl.c:844 src/utils/pactl.c:845
+#: src/utils/pactl.c:851
msgid "n/a"
msgstr ""
-#: src/utils/pactl.c:455 src/utils/pactl.c:859
+#: src/utils/pactl.c:496 src/utils/pactl.c:901
#, c-format
msgid "Failed to get module information: %s"
msgstr ""
-#: src/utils/pactl.c:478
+#: src/utils/pactl.c:519
#, c-format
msgid ""
"Module #%u\n"
@@ -2159,12 +2195,12 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:497
+#: src/utils/pactl.c:538
#, c-format
msgid "Failed to get client information: %s"
msgstr ""
-#: src/utils/pactl.c:523
+#: src/utils/pactl.c:564
#, c-format
msgid ""
"Client #%u\n"
@@ -2174,12 +2210,12 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:540
+#: src/utils/pactl.c:581
#, c-format
msgid "Failed to get card information: %s"
msgstr ""
-#: src/utils/pactl.c:563
+#: src/utils/pactl.c:604
#, c-format
msgid ""
"Card #%u\n"
@@ -2190,39 +2226,44 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:579
+#: src/utils/pactl.c:620
#, c-format
msgid "\tProfiles:\n"
msgstr ""
-#: src/utils/pactl.c:581
+#: src/utils/pactl.c:622
#, c-format
msgid "\t\t%s: %s (sinks: %u, sources: %u, priority: %u, available: %s)\n"
msgstr ""
-#: src/utils/pactl.c:586
+#: src/utils/pactl.c:627
#, c-format
msgid "\tActive Profile: %s\n"
msgstr ""
-#: src/utils/pactl.c:600
+#: src/utils/pactl.c:636
+#, c-format
+msgid "\t\t%s: %s (type: %s, priority: %u, latency offset: %<PRId64> usec%s%s%s)\n"
+msgstr ""
+
+#: src/utils/pactl.c:642
#, c-format
msgid ""
"\t\t\tProperties:\n"
"\t\t\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:605
+#: src/utils/pactl.c:647
#, c-format
msgid "\t\t\tPart of profile(s): %s"
msgstr ""
-#: src/utils/pactl.c:622 src/utils/pactl.c:940 src/utils/pactl.c:1008
+#: src/utils/pactl.c:664 src/utils/pactl.c:984 src/utils/pactl.c:1052
#, c-format
msgid "Failed to get sink input information: %s"
msgstr ""
-#: src/utils/pactl.c:651
+#: src/utils/pactl.c:693
#, c-format
msgid ""
"Sink Input #%u\n"
@@ -2244,12 +2285,12 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:692 src/utils/pactl.c:960 src/utils/pactl.c:1023
+#: src/utils/pactl.c:734 src/utils/pactl.c:1004 src/utils/pactl.c:1067
#, c-format
msgid "Failed to get source output information: %s"
msgstr ""
-#: src/utils/pactl.c:721
+#: src/utils/pactl.c:763
#, c-format
msgid ""
"Source Output #%u\n"
@@ -2271,12 +2312,12 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:762
+#: src/utils/pactl.c:804
#, c-format
msgid "Failed to get sample information: %s"
msgstr ""
-#: src/utils/pactl.c:789
+#: src/utils/pactl.c:831
#, c-format
msgid ""
"Sample #%u\n"
@@ -2293,157 +2334,156 @@ msgid ""
"\t\t%s\n"
msgstr ""
-#: src/utils/pactl.c:817 src/utils/pactl.c:827
+#: src/utils/pactl.c:859 src/utils/pactl.c:869
#, c-format
msgid "Failure: %s"
msgstr ""
-#: src/utils/pactl.c:866
+#: src/utils/pactl.c:908
#, c-format
msgid "Failed to unload module: Module %s not loaded"
msgstr ""
-#: src/utils/pactl.c:884
+#: src/utils/pactl.c:926
#, c-format
msgid ""
-"Failed to set volume: You tried to set volumes for %d channels, whereas "
-"channel/s supported = %d\n"
-msgstr ""
-
-#: src/utils/pactl.c:1050
-#, c-format
-msgid "Failed to set format: invalid format string %s"
-msgstr ""
+"Failed to set volume: You tried to set volumes for %d channel, whereas channel(s) "
+"supported = %d\n"
+msgid_plural ""
+"Failed to set volume: You tried to set volumes for %d channels, whereas channel(s) "
+"supported = %d\n"
+msgstr[0] ""
+msgstr[1] ""
-#: src/utils/pactl.c:1093
+#: src/utils/pactl.c:1137
#, c-format
msgid "Failed to upload sample: %s"
msgstr ""
-#: src/utils/pactl.c:1110
+#: src/utils/pactl.c:1154
msgid "Premature end of file"
msgstr ""
-#: src/utils/pactl.c:1130
+#: src/utils/pactl.c:1174
msgid "new"
msgstr ""
-#: src/utils/pactl.c:1133
+#: src/utils/pactl.c:1177
msgid "change"
msgstr ""
-#: src/utils/pactl.c:1136
+#: src/utils/pactl.c:1180
msgid "remove"
msgstr ""
-#: src/utils/pactl.c:1139 src/utils/pactl.c:1174
+#: src/utils/pactl.c:1183 src/utils/pactl.c:1218
msgid "unknown"
msgstr ""
-#: src/utils/pactl.c:1147
+#: src/utils/pactl.c:1191
msgid "sink"
msgstr ""
-#: src/utils/pactl.c:1150
+#: src/utils/pactl.c:1194
msgid "source"
msgstr ""
-#: src/utils/pactl.c:1153
+#: src/utils/pactl.c:1197
msgid "sink-input"
msgstr ""
-#: src/utils/pactl.c:1156
+#: src/utils/pactl.c:1200
msgid "source-output"
msgstr ""
-#: src/utils/pactl.c:1159
+#: src/utils/pactl.c:1203
msgid "module"
msgstr ""
-#: src/utils/pactl.c:1162
+#: src/utils/pactl.c:1206
msgid "client"
msgstr ""
-#: src/utils/pactl.c:1165
+#: src/utils/pactl.c:1209
msgid "sample-cache"
msgstr ""
-#: src/utils/pactl.c:1168
+#: src/utils/pactl.c:1212
msgid "server"
msgstr ""
-#: src/utils/pactl.c:1171
+#: src/utils/pactl.c:1215
msgid "card"
msgstr ""
-#: src/utils/pactl.c:1180
+#: src/utils/pactl.c:1224
#, c-format
msgid "Event '%s' on %s #%u\n"
msgstr ""
-#: src/utils/pactl.c:1452
+#: src/utils/pactl.c:1496
msgid "Got SIGINT, exiting."
msgstr ""
-#: src/utils/pactl.c:1485
+#: src/utils/pactl.c:1529
msgid "Invalid volume specification"
msgstr ""
-#: src/utils/pactl.c:1508
+#: src/utils/pactl.c:1552
msgid "Volume outside permissible range.\n"
msgstr ""
-#: src/utils/pactl.c:1521
+#: src/utils/pactl.c:1565
msgid "Invalid number of volume specifications.\n"
msgstr ""
-#: src/utils/pactl.c:1533
+#: src/utils/pactl.c:1577
msgid "Inconsistent volume specification.\n"
msgstr ""
-#: src/utils/pactl.c:1563 src/utils/pactl.c:1564 src/utils/pactl.c:1565
-#: src/utils/pactl.c:1566 src/utils/pactl.c:1567 src/utils/pactl.c:1568
-#: src/utils/pactl.c:1569 src/utils/pactl.c:1570 src/utils/pactl.c:1571
-#: src/utils/pactl.c:1572 src/utils/pactl.c:1573 src/utils/pactl.c:1574
-#: src/utils/pactl.c:1575 src/utils/pactl.c:1576 src/utils/pactl.c:1577
-#: src/utils/pactl.c:1578 src/utils/pactl.c:1579 src/utils/pactl.c:1580
-#: src/utils/pactl.c:1581 src/utils/pactl.c:1582 src/utils/pactl.c:1583
+#: src/utils/pactl.c:1607 src/utils/pactl.c:1608 src/utils/pactl.c:1609
+#: src/utils/pactl.c:1610 src/utils/pactl.c:1611 src/utils/pactl.c:1612
+#: src/utils/pactl.c:1613 src/utils/pactl.c:1614 src/utils/pactl.c:1615
+#: src/utils/pactl.c:1616 src/utils/pactl.c:1617 src/utils/pactl.c:1618
+#: src/utils/pactl.c:1619 src/utils/pactl.c:1620 src/utils/pactl.c:1621
+#: src/utils/pactl.c:1622 src/utils/pactl.c:1623 src/utils/pactl.c:1624
+#: src/utils/pactl.c:1625 src/utils/pactl.c:1626 src/utils/pactl.c:1627
msgid "[options]"
msgstr ""
-#: src/utils/pactl.c:1565
+#: src/utils/pactl.c:1609
msgid "[TYPE]"
msgstr ""
-#: src/utils/pactl.c:1567
+#: src/utils/pactl.c:1611
msgid "FILENAME [NAME]"
msgstr ""
-#: src/utils/pactl.c:1568
+#: src/utils/pactl.c:1612
msgid "NAME [SINK]"
msgstr ""
-#: src/utils/pactl.c:1577
+#: src/utils/pactl.c:1621
msgid "NAME|#N VOLUME [VOLUME ...]"
msgstr ""
-#: src/utils/pactl.c:1578
+#: src/utils/pactl.c:1622
msgid "#N VOLUME [VOLUME ...]"
msgstr ""
-#: src/utils/pactl.c:1579
+#: src/utils/pactl.c:1623
msgid "NAME|#N 1|0|toggle"
msgstr ""
-#: src/utils/pactl.c:1580
+#: src/utils/pactl.c:1624
msgid "#N 1|0|toggle"
msgstr ""
-#: src/utils/pactl.c:1581
+#: src/utils/pactl.c:1625
msgid "#N FORMATS"
msgstr ""
-#: src/utils/pactl.c:1584
+#: src/utils/pactl.c:1628
#, c-format
msgid ""
"\n"
@@ -2451,20 +2491,18 @@ msgid ""
"can be used to specify the default sink, source and monitor.\n"
msgstr ""
-#: src/utils/pactl.c:1587
+#: src/utils/pactl.c:1631
#, c-format
msgid ""
"\n"
" -h, --help Show this help\n"
" --version Show version\n"
"\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
-" -n, --client-name=NAME How to call this client on the "
-"server\n"
+" -s, --server=SERVER The name of the server to connect to\n"
+" -n, --client-name=NAME How to call this client on the server\n"
msgstr ""
-#: src/utils/pactl.c:1628
+#: src/utils/pactl.c:1672
#, c-format
msgid ""
"pactl %s\n"
@@ -2472,155 +2510,146 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
-#: src/utils/pactl.c:1684
+#: src/utils/pactl.c:1728
#, c-format
msgid "Specify nothing, or one of: %s"
msgstr ""
-#: src/utils/pactl.c:1694
+#: src/utils/pactl.c:1738
msgid "Please specify a sample file to load"
msgstr ""
-#: src/utils/pactl.c:1707
+#: src/utils/pactl.c:1751
msgid "Failed to open sound file."
msgstr ""
-#: src/utils/pactl.c:1719
+#: src/utils/pactl.c:1763
msgid "Warning: Failed to determine sample specification from file."
msgstr ""
-#: src/utils/pactl.c:1729
+#: src/utils/pactl.c:1773
msgid "You have to specify a sample name to play"
msgstr ""
-#: src/utils/pactl.c:1741
+#: src/utils/pactl.c:1785
msgid "You have to specify a sample name to remove"
msgstr ""
-#: src/utils/pactl.c:1750
+#: src/utils/pactl.c:1794
msgid "You have to specify a sink input index and a sink"
msgstr ""
-#: src/utils/pactl.c:1760
+#: src/utils/pactl.c:1804
msgid "You have to specify a source output index and a source"
msgstr ""
-#: src/utils/pactl.c:1775
+#: src/utils/pactl.c:1819
msgid "You have to specify a module name and arguments."
msgstr ""
-#: src/utils/pactl.c:1795
+#: src/utils/pactl.c:1839
msgid "You have to specify a module index or name"
msgstr ""
-#: src/utils/pactl.c:1808
-msgid ""
-"You may not specify more than one sink. You have to specify a boolean value."
+#: src/utils/pactl.c:1852
+msgid "You may not specify more than one sink. You have to specify a boolean value."
msgstr ""
-#: src/utils/pactl.c:1813 src/utils/pactl.c:1833
+#: src/utils/pactl.c:1857 src/utils/pactl.c:1877
msgid "Invalid suspend specification."
msgstr ""
-#: src/utils/pactl.c:1828
-msgid ""
-"You may not specify more than one source. You have to specify a boolean "
-"value."
+#: src/utils/pactl.c:1872
+msgid "You may not specify more than one source. You have to specify a boolean value."
msgstr ""
-#: src/utils/pactl.c:1845
+#: src/utils/pactl.c:1889
msgid "You have to specify a card name/index and a profile name"
msgstr ""
-#: src/utils/pactl.c:1856
+#: src/utils/pactl.c:1900
msgid "You have to specify a sink name/index and a port name"
msgstr ""
-#: src/utils/pactl.c:1867
+#: src/utils/pactl.c:1911
msgid "You have to specify a sink name"
msgstr ""
-#: src/utils/pactl.c:1877
+#: src/utils/pactl.c:1921
msgid "You have to specify a source name/index and a port name"
msgstr ""
-#: src/utils/pactl.c:1888
+#: src/utils/pactl.c:1932
msgid "You have to specify a source name"
msgstr ""
-#: src/utils/pactl.c:1898
+#: src/utils/pactl.c:1942
msgid "You have to specify a sink name/index and a volume"
msgstr ""
-#: src/utils/pactl.c:1911
+#: src/utils/pactl.c:1955
msgid "You have to specify a source name/index and a volume"
msgstr ""
-#: src/utils/pactl.c:1924
+#: src/utils/pactl.c:1968
msgid "You have to specify a sink input index and a volume"
msgstr ""
-#: src/utils/pactl.c:1929
+#: src/utils/pactl.c:1973
msgid "Invalid sink input index"
msgstr ""
-#: src/utils/pactl.c:1940
+#: src/utils/pactl.c:1984
msgid "You have to specify a source output index and a volume"
msgstr ""
-#: src/utils/pactl.c:1945
+#: src/utils/pactl.c:1989
msgid "Invalid source output index"
msgstr ""
-#: src/utils/pactl.c:1956
-msgid ""
-"You have to specify a sink name/index and a mute action (0, 1, or 'toggle')"
+#: src/utils/pactl.c:2000
+msgid "You have to specify a sink name/index and a mute action (0, 1, or 'toggle')"
msgstr ""
-#: src/utils/pactl.c:1961 src/utils/pactl.c:1976 src/utils/pactl.c:1996
-#: src/utils/pactl.c:2014
+#: src/utils/pactl.c:2005 src/utils/pactl.c:2020 src/utils/pactl.c:2040
+#: src/utils/pactl.c:2058
msgid "Invalid mute specification"
msgstr ""
-#: src/utils/pactl.c:1971
-msgid ""
-"You have to specify a source name/index and a mute action (0, 1, or 'toggle')"
+#: src/utils/pactl.c:2015
+msgid "You have to specify a source name/index and a mute action (0, 1, or 'toggle')"
msgstr ""
-#: src/utils/pactl.c:1986
-msgid ""
-"You have to specify a sink input index and a mute action (0, 1, or 'toggle')"
+#: src/utils/pactl.c:2030
+msgid "You have to specify a sink input index and a mute action (0, 1, or 'toggle')"
msgstr ""
-#: src/utils/pactl.c:1991
+#: src/utils/pactl.c:2035
msgid "Invalid sink input index specification"
msgstr ""
-#: src/utils/pactl.c:2004
-msgid ""
-"You have to specify a source output index and a mute action (0, 1, or "
-"'toggle')"
+#: src/utils/pactl.c:2048
+msgid "You have to specify a source output index and a mute action (0, 1, or 'toggle')"
msgstr ""
-#: src/utils/pactl.c:2009
+#: src/utils/pactl.c:2053
msgid "Invalid source output index specification"
msgstr ""
-#: src/utils/pactl.c:2026
+#: src/utils/pactl.c:2070
msgid ""
-"You have to specify a sink index and a semicolon-separated list of supported "
-"formats"
+"You have to specify a sink index and a semicolon-separated list of supported formats"
msgstr ""
-#: src/utils/pactl.c:2038
+#: src/utils/pactl.c:2082
msgid "You have to specify a card name/index, a port name and a latency offset"
msgstr ""
-#: src/utils/pactl.c:2045
+#: src/utils/pactl.c:2089
msgid "Could not parse latency offset"
msgstr ""
-#: src/utils/pactl.c:2057
+#: src/utils/pactl.c:2101
msgid "No valid command specified."
msgstr ""
@@ -2667,16 +2696,17 @@ msgstr ""
#: src/utils/pasuspender.c:228
#, c-format
msgid ""
-"%s [options] ... \n"
+"%s [options] -- PROGRAM [ARGUMENTS ...]\n"
+"\n"
+"Temporarily suspend PulseAudio while PROGRAM runs.\n"
"\n"
" -h, --help Show this help\n"
" --version Show version\n"
-" -s, --server=SERVER The name of the server to connect "
-"to\n"
+" -s, --server=SERVER The name of the server to connect to\n"
"\n"
msgstr ""
-#: src/utils/pasuspender.c:266
+#: src/utils/pasuspender.c:267
#, c-format
msgid ""
"pasuspender %s\n"
@@ -2684,17 +2714,17 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
-#: src/utils/pasuspender.c:295
+#: src/utils/pasuspender.c:296
#, c-format
msgid "pa_mainloop_new() failed.\n"
msgstr ""
-#: src/utils/pasuspender.c:308
+#: src/utils/pasuspender.c:309
#, c-format
msgid "pa_context_new() failed.\n"
msgstr ""
-#: src/utils/pasuspender.c:320
+#: src/utils/pasuspender.c:321
#, c-format
msgid "pa_mainloop_run() failed.\n"
msgstr ""
@@ -2706,8 +2736,8 @@ msgid ""
"\n"
" -d Show current PulseAudio data attached to X11 display (default)\n"
" -e Export local PulseAudio data to X11 display\n"
-" -i Import PulseAudio data from X11 display to local environment "
-"variables and cookie file.\n"
+" -i Import PulseAudio data from X11 display to local environment variables and "
+"cookie file.\n"
" -r Remove PulseAudio data from X11 display\n"
msgstr ""
diff --git a/po/ru.gmo b/po/ru.gmo
index 34f819d..64127e9 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/sk.gmo b/po/sk.gmo
index 1c24ead..ca435c6 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sr.gmo b/po/sr.gmo
index 17f6e0a..1c3c229 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr@latin.gmo b/po/sr@latin.gmo
index a14e48a..cdc4879 100644
--- a/po/sr@latin.gmo
+++ b/po/sr@latin.gmo
Binary files differ
diff --git a/po/sv.gmo b/po/sv.gmo
index d92aece..d8fcb9b 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index ac9e7a6..9260259 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -20,15 +20,16 @@ msgstr ""
"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/"
"issues\n"
"POT-Creation-Date: 2018-12-11 15:29+0000\n"
-"PO-Revision-Date: 2019-01-08 23:44+0100\n"
-"Last-Translator: Josef Andersson <l10nl18nsweja@gmail.com>\n"
-"Language-Team: Svenska <tp-sv@listor.tp-sv.se>\n"
+"PO-Revision-Date: 2020-08-14 19:29+0000\n"
+"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
+"Language-Team: Swedish <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/sv/>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 2.1.1\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.1.1\n"
#: src/daemon/cmdline.c:113
#, c-format
@@ -1289,131 +1290,131 @@ msgstr "Höger sida"
#: src/pulse/channelmap.c:121
msgid "Auxiliary 0"
-msgstr "Auxiliary 0"
+msgstr "Extra 0"
#: src/pulse/channelmap.c:122
msgid "Auxiliary 1"
-msgstr "Auxiliary 1"
+msgstr "Extra 1"
#: src/pulse/channelmap.c:123
msgid "Auxiliary 2"
-msgstr "Auxiliary 2"
+msgstr "Extra 2"
#: src/pulse/channelmap.c:124
msgid "Auxiliary 3"
-msgstr "Auxiliary 3"
+msgstr "Extra 3"
#: src/pulse/channelmap.c:125
msgid "Auxiliary 4"
-msgstr "Auxiliary 4"
+msgstr "Extra 4"
#: src/pulse/channelmap.c:126
msgid "Auxiliary 5"
-msgstr "Auxiliary 5"
+msgstr "Extra 5"
#: src/pulse/channelmap.c:127
msgid "Auxiliary 6"
-msgstr "Auxiliary 6"
+msgstr "Extra 6"
#: src/pulse/channelmap.c:128
msgid "Auxiliary 7"
-msgstr "Auxiliary 7"
+msgstr "Extra 7"
#: src/pulse/channelmap.c:129
msgid "Auxiliary 8"
-msgstr "Auxiliary 8"
+msgstr "Extra 8"
#: src/pulse/channelmap.c:130
msgid "Auxiliary 9"
-msgstr "Auxiliary 9"
+msgstr "Extra 9"
#: src/pulse/channelmap.c:131
msgid "Auxiliary 10"
-msgstr "Auxiliary 10"
+msgstr "Extra 10"
#: src/pulse/channelmap.c:132
msgid "Auxiliary 11"
-msgstr "Auxiliary 11"
+msgstr "Extra 11"
#: src/pulse/channelmap.c:133
msgid "Auxiliary 12"
-msgstr "Auxiliary 12"
+msgstr "Extra 12"
#: src/pulse/channelmap.c:134
msgid "Auxiliary 13"
-msgstr "Auxiliary 13"
+msgstr "Extra 13"
#: src/pulse/channelmap.c:135
msgid "Auxiliary 14"
-msgstr "Auxiliary 14"
+msgstr "Extra 14"
#: src/pulse/channelmap.c:136
msgid "Auxiliary 15"
-msgstr "Auxiliary 15"
+msgstr "Extra 15"
#: src/pulse/channelmap.c:137
msgid "Auxiliary 16"
-msgstr "Auxiliary 16"
+msgstr "Extra 16"
#: src/pulse/channelmap.c:138
msgid "Auxiliary 17"
-msgstr "Auxiliary 17"
+msgstr "Extra 17"
#: src/pulse/channelmap.c:139
msgid "Auxiliary 18"
-msgstr "Auxiliary 18"
+msgstr "Extra 18"
#: src/pulse/channelmap.c:140
msgid "Auxiliary 19"
-msgstr "Auxiliary 19"
+msgstr "Extra 19"
#: src/pulse/channelmap.c:141
msgid "Auxiliary 20"
-msgstr "Auxiliary 20"
+msgstr "Extra 20"
#: src/pulse/channelmap.c:142
msgid "Auxiliary 21"
-msgstr "Auxiliary 21"
+msgstr "Extra 21"
#: src/pulse/channelmap.c:143
msgid "Auxiliary 22"
-msgstr "Auxiliary 22"
+msgstr "Extra 22"
#: src/pulse/channelmap.c:144
msgid "Auxiliary 23"
-msgstr "Auxiliary 23"
+msgstr "Extra 23"
#: src/pulse/channelmap.c:145
msgid "Auxiliary 24"
-msgstr "Auxiliary 24"
+msgstr "Extra 24"
#: src/pulse/channelmap.c:146
msgid "Auxiliary 25"
-msgstr "Auxiliary 25"
+msgstr "Extra 25"
#: src/pulse/channelmap.c:147
msgid "Auxiliary 26"
-msgstr "Auxiliary 26"
+msgstr "Extra 26"
#: src/pulse/channelmap.c:148
msgid "Auxiliary 27"
-msgstr "Auxiliary 27"
+msgstr "Extra 27"
#: src/pulse/channelmap.c:149
msgid "Auxiliary 28"
-msgstr "Auxiliary 28"
+msgstr "Extra 28"
#: src/pulse/channelmap.c:150
msgid "Auxiliary 29"
-msgstr "Auxiliary 29"
+msgstr "Extra 29"
#: src/pulse/channelmap.c:151
msgid "Auxiliary 30"
-msgstr "Auxiliary 30"
+msgstr "Extra 30"
#: src/pulse/channelmap.c:152
msgid "Auxiliary 31"
-msgstr "Auxiliary 31"
+msgstr "Extra 31"
#: src/pulse/channelmap.c:154
msgid "Top Center"
diff --git a/po/ta.gmo b/po/ta.gmo
index 0b10915..42167fe 100644
--- a/po/ta.gmo
+++ b/po/ta.gmo
Binary files differ
diff --git a/po/te.gmo b/po/te.gmo
index c678849..42692d6 100644
--- a/po/te.gmo
+++ b/po/te.gmo
Binary files differ
diff --git a/po/tr.gmo b/po/tr.gmo
index 6536399..48e8cff 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index b0214f8..6dca25a 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -8,17 +8,19 @@
msgid ""
msgstr ""
"Project-Id-Version: PulseAudio master\n"
-"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/new\n"
+"Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/"
+"issues/new\n"
"POT-Creation-Date: 2017-05-02 15:27+0000\n"
-"PO-Revision-Date: 2017-05-20 11:16+0300\n"
-"Last-Translator: Muhammet Kara <muhammetk@gmail.com>\n"
-"Language-Team: Türkçe <gnome-turk@gnome.org>\n"
+"PO-Revision-Date: 2020-07-01 10:40+0000\n"
+"Last-Translator: Oğuz Ersen <oguzersen@protonmail.com>\n"
+"Language-Team: Turkish <https://translate.fedoraproject.org/projects/"
+"pulseaudio/pulseaudio/tr/>\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Gtranslator 2.91.7\n"
+"X-Generator: Weblate 4.1.1\n"
#: ../src/daemon/cmdline.c:113
#, c-format
@@ -557,7 +559,7 @@ msgid ""
"User-configured server at %s, which appears to be local. Probing deeper."
msgstr ""
"Kullanıcı tarafından yapılandırılmış, yerel olarak görülen şuradaki sunucu: "
-"%s. "
+"%s. Daha derinlemesine sorgulanıyor."
#: ../src/daemon/main.c:712
msgid "Running in system mode, but --disallow-exit not set."
@@ -2001,12 +2003,12 @@ msgstr ""
" --fix-format Alıcı/kaynaktan bağlı olunan akışın "
"örnekleme türünü alır.\n"
" --fix-rate Alıcı/kaynaktan bağlı olunan akışın "
-"örnekleme türünü alır.\n"
+"örnekleme oranını alır.\n"
" --fix-channels Alıcı/kaynaktan bağlı olunan akışın "
"kanal eşlemesini\n"
" ve kanal sayısını alır.\n"
-" --no-remix Kanalları indirgemez ya da "
-"çoğaltamaz.\n"
+" --no-remix Kanalları indirgemez ya da çoğaltamaz."
+"\n"
" --no-remap Ad yerine dizin ile kanalları eşler.\n"
" --latency=BAYT Bayt cinsinden belirtilen gecikmeyi "
"ister.\n"
@@ -2992,7 +2994,7 @@ msgstr ""
#: ../src/utils/pactl.c:1813 ../src/utils/pactl.c:1833
msgid "Invalid suspend specification."
-msgstr "Geçersiz bekletme tanımlaması"
+msgstr "Geçersiz bekletme tanımlaması."
#: ../src/utils/pactl.c:1828
msgid ""
diff --git a/po/uk.gmo b/po/uk.gmo
index 91df9f8..0f32697 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index f807631..5e185c8 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo
index 73136cf..5439370 100644
--- a/po/zh_TW.gmo
+++ b/po/zh_TW.gmo
Binary files differ
diff --git a/shell-completion/zsh/_pulseaudio b/shell-completion/zsh/_pulseaudio
index 0e9e89b..da72010 100644
--- a/shell-completion/zsh/_pulseaudio
+++ b/shell-completion/zsh/_pulseaudio
@@ -668,7 +668,7 @@ _pacat_completion() {
'--process-time-msec=[request the specified process time in msec]:msec' \
'--property=[set the specified property]:property' \
'--raw[record/play raw PCM data]' \
- '--passthrough[passtrough data]' \
+ '--passthrough[passthrough data]' \
'--file-format=[record/play formatted PCM data]:format:_pacat_file_formats' \
'--list-file-formats[list available formats]' \
'::files:_files' \
diff --git a/src/.gitignore b/src/.gitignore
index aa7b571..3197482 100644
--- a/src/.gitignore
+++ b/src/.gitignore
@@ -49,6 +49,7 @@ flist-test
format-test
get-binary-name-test
gtk-test
+hashmap-test
hook-list-test
interpol-test
ipacl-test
diff --git a/src/Makefile.am b/src/Makefile.am
index 0f1ded7..bd76403 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -28,8 +28,8 @@ if HAVE_X11
xdgautostartdir=$(sysconfdir)/xdg/autostart
endif
if HAVE_ALSA
-alsaprofilesetsdir=$(datadir)/pulseaudio/alsa-mixer/profile-sets
-alsapathsdir=$(datadir)/pulseaudio/alsa-mixer/paths
+alsaprofilesetsdir=$(alsadatadir)/profile-sets
+alsapathsdir=$(alsadatadir)/paths
endif
if HAVE_DBUS
dbuspolicydir=$(sysconfdir)/dbus-1/system.d
@@ -253,36 +253,37 @@ endif
noinst_LTLIBRARIES =
TESTS_default = \
- core-util-test \
- mainloop-test \
- strlist-test \
- close-test \
- memblockq-test \
- channelmap-test \
- thread-mainloop-test \
- utf8-test \
- format-test \
- json-test \
- get-binary-name-test \
- hook-list-test \
- memblock-test \
- asyncq-test \
- asyncmsgq-test \
- queue-test \
- rtpoll-test \
- resampler-test \
- smoother-test \
- thread-test \
- volume-test \
- mix-test \
- proplist-test \
- cpu-mix-test \
- cpu-remap-test \
- cpu-sconv-test \
- cpu-volume-test \
- lock-autospawn-test \
- mult-s16-test \
- lfe-filter-test
+ asyncmsgq-test \
+ asyncq-test \
+ channelmap-test \
+ close-test \
+ core-util-test \
+ cpu-mix-test \
+ cpu-remap-test \
+ cpu-sconv-test \
+ cpu-volume-test \
+ format-test \
+ get-binary-name-test \
+ hashmap-test \
+ hook-list-test \
+ json-test \
+ lfe-filter-test \
+ lock-autospawn-test \
+ mainloop-test \
+ memblock-test \
+ memblockq-test \
+ mix-test \
+ mult-s16-test \
+ proplist-test \
+ queue-test \
+ resampler-test \
+ rtpoll-test \
+ smoother-test \
+ strlist-test \
+ thread-mainloop-test \
+ thread-test \
+ utf8-test \
+ volume-test
TESTS_norun = \
ipacl-test \
@@ -295,8 +296,7 @@ TESTS_norun = \
sig2str-test \
stripnul \
echo-cancel-test \
- lo-latency-test \
- atomic-test
+ lo-latency-test
# These tests need a running pulseaudio daemon
TESTS_daemon = \
@@ -315,6 +315,11 @@ TESTS_default += \
usergroup-test
endif
+if HAVE_PTHREAD_SETAFFINITY_NP
+TESTS_norun += \
+ atomic-test
+endif
+
if HAVE_SYS_EVENTFD_H
TESTS_default += \
srbchannel-test
@@ -385,6 +390,11 @@ core_util_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS)
core_util_test_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
core_util_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(LIBCHECK_LIBS)
+hashmap_test_SOURCES = tests/hashmap-test.c
+hashmap_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS)
+hashmap_test_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
+hashmap_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(LIBCHECK_LIBS)
+
mainloop_test_SOURCES = tests/mainloop-test.c
mainloop_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS)
mainloop_test_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
@@ -1343,6 +1353,7 @@ dist_alsaprofilesets_DATA = \
modules/alsa/mixer/profile-sets/default.conf \
modules/alsa/mixer/profile-sets/force-speaker.conf \
modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf \
+ modules/alsa/mixer/profile-sets/audigy.conf \
modules/alsa/mixer/profile-sets/maudio-fasttrack-pro.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio4dj.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio8dj.conf \
diff --git a/src/Makefile.in b/src/Makefile.in
index 5b7d99d..5fd87dd 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -159,255 +159,258 @@ bin_PROGRAMS = pulseaudio$(EXEEXT) pacat$(EXEEXT) pactl$(EXEEXT) \
@OS_IS_WIN32_FALSE@ sigbus-test \
@OS_IS_WIN32_FALSE@ usergroup-test
-@HAVE_SYS_EVENTFD_H_TRUE@am__append_19 = \
+@HAVE_PTHREAD_SETAFFINITY_NP_TRUE@am__append_19 = \
+@HAVE_PTHREAD_SETAFFINITY_NP_TRUE@ atomic-test
+
+@HAVE_SYS_EVENTFD_H_TRUE@am__append_20 = \
@HAVE_SYS_EVENTFD_H_TRUE@ srbchannel-test
-@OS_IS_DARWIN_FALSE@am__append_20 = \
+@OS_IS_DARWIN_FALSE@am__append_21 = \
@OS_IS_DARWIN_FALSE@ once-test
-@HAVE_SIGXCPU_TRUE@am__append_21 = \
+@HAVE_SIGXCPU_TRUE@am__append_22 = \
@HAVE_SIGXCPU_TRUE@ cpulimit-test \
@HAVE_SIGXCPU_TRUE@ cpulimit-test2
-@HAVE_GLIB20_TRUE@am__append_22 = \
+@HAVE_GLIB20_TRUE@am__append_23 = \
@HAVE_GLIB20_TRUE@ mainloop-test-glib
# gtk-test depends on both glib and gtk
-@HAVE_GLIB20_TRUE@@HAVE_GTK30_TRUE@am__append_23 = \
+@HAVE_GLIB20_TRUE@@HAVE_GTK30_TRUE@am__append_24 = \
@HAVE_GLIB20_TRUE@@HAVE_GTK30_TRUE@ gtk-test
-@HAVE_ALSA_TRUE@am__append_24 = \
+@HAVE_ALSA_TRUE@am__append_25 = \
@HAVE_ALSA_TRUE@ alsa-time-test
-@HAVE_ALSA_TRUE@am__append_25 = \
+@HAVE_ALSA_TRUE@am__append_26 = \
@HAVE_ALSA_TRUE@ alsa-mixer-path-test
@HAVE_TESTS_TRUE@TESTS = $(am__EXEEXT_9)
@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@noinst_PROGRAMS = \
@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_9) \
-@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_13) \
@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_14) \
-@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_15)
+@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_15) \
+@BUILD_TESTS_DEFAULT_TRUE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_16)
@BUILD_TESTS_DEFAULT_FALSE@@HAVE_TESTS_TRUE@check_PROGRAMS = \
@BUILD_TESTS_DEFAULT_FALSE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_9) \
-@BUILD_TESTS_DEFAULT_FALSE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_13)
-@OS_IS_WIN32_TRUE@am__append_26 = \
+@BUILD_TESTS_DEFAULT_FALSE@@HAVE_TESTS_TRUE@ $(am__EXEEXT_14)
+@OS_IS_WIN32_TRUE@am__append_27 = \
@OS_IS_WIN32_TRUE@ pulsecore/poll-win32.c pulsecore/poll.h \
@OS_IS_WIN32_TRUE@ pulsecore/winerrno.h
-@OS_IS_WIN32_FALSE@am__append_27 = pulsecore/poll-posix.c pulsecore/poll.h
-@HAVE_MEMFD_TRUE@am__append_28 = \
+@OS_IS_WIN32_FALSE@am__append_28 = pulsecore/poll-posix.c pulsecore/poll.h
+@HAVE_MEMFD_TRUE@am__append_29 = \
@HAVE_MEMFD_TRUE@ pulsecore/memfd-wrappers.h
-@HAVE_X11_TRUE@am__append_29 = \
+@HAVE_X11_TRUE@am__append_30 = \
@HAVE_X11_TRUE@ pulse/client-conf-x11.c pulse/client-conf-x11.h \
@HAVE_X11_TRUE@ pulsecore/x11prop.c pulsecore/x11prop.h
-@HAVE_X11_TRUE@am__append_30 = $(X11_CFLAGS)
-@HAVE_X11_TRUE@am__append_31 = $(X11_LIBS)
-@HAVE_SYSTEMD_DAEMON_TRUE@am__append_32 = $(SYSTEMD_FLAGS) $(SYSTEMDDAEMON_FLAGS)
-@HAVE_SYSTEMD_DAEMON_TRUE@am__append_33 = $(SYSTEMD_LIBS) $(SYSTEMDDAEMON_LIBS)
-@HAVE_SYSTEMD_JOURNAL_TRUE@am__append_34 = $(SYSTEMD_FLAGS) $(SYSTEMDJOURNAL_FLAGS)
-@HAVE_SYSTEMD_JOURNAL_TRUE@am__append_35 = $(SYSTEMD_LIBS) $(SYSTEMDJOURNAL_LIBS)
-@OS_IS_WIN32_TRUE@am__append_36 = \
+@HAVE_X11_TRUE@am__append_31 = $(X11_CFLAGS)
+@HAVE_X11_TRUE@am__append_32 = $(X11_LIBS)
+@HAVE_SYSTEMD_DAEMON_TRUE@am__append_33 = $(SYSTEMD_FLAGS) $(SYSTEMDDAEMON_FLAGS)
+@HAVE_SYSTEMD_DAEMON_TRUE@am__append_34 = $(SYSTEMD_LIBS) $(SYSTEMDDAEMON_LIBS)
+@HAVE_SYSTEMD_JOURNAL_TRUE@am__append_35 = $(SYSTEMD_FLAGS) $(SYSTEMDJOURNAL_FLAGS)
+@HAVE_SYSTEMD_JOURNAL_TRUE@am__append_36 = $(SYSTEMD_LIBS) $(SYSTEMDJOURNAL_LIBS)
+@OS_IS_WIN32_TRUE@am__append_37 = \
@OS_IS_WIN32_TRUE@ pulsecore/mutex-win32.c pulsecore/mutex.h \
@OS_IS_WIN32_TRUE@ pulsecore/thread-win32.c pulsecore/thread.h \
@OS_IS_WIN32_TRUE@ pulsecore/semaphore-win32.c pulsecore/semaphore.h
-@OS_IS_DARWIN_TRUE@@OS_IS_WIN32_FALSE@am__append_37 = \
+@OS_IS_DARWIN_TRUE@@OS_IS_WIN32_FALSE@am__append_38 = \
@OS_IS_DARWIN_TRUE@@OS_IS_WIN32_FALSE@ pulsecore/mutex-posix.c pulsecore/mutex.h \
@OS_IS_DARWIN_TRUE@@OS_IS_WIN32_FALSE@ pulsecore/thread-posix.c pulsecore/thread.h \
@OS_IS_DARWIN_TRUE@@OS_IS_WIN32_FALSE@ pulsecore/semaphore-osx.c pulsecore/semaphore.h
-@OS_IS_DARWIN_FALSE@@OS_IS_WIN32_FALSE@am__append_38 = \
+@OS_IS_DARWIN_FALSE@@OS_IS_WIN32_FALSE@am__append_39 = \
@OS_IS_DARWIN_FALSE@@OS_IS_WIN32_FALSE@ pulsecore/mutex-posix.c pulsecore/mutex.h \
@OS_IS_DARWIN_FALSE@@OS_IS_WIN32_FALSE@ pulsecore/thread-posix.c pulsecore/thread.h \
@OS_IS_DARWIN_FALSE@@OS_IS_WIN32_FALSE@ pulsecore/semaphore-posix.c pulsecore/semaphore.h
-@HAVE_LIBASYNCNS_TRUE@am__append_39 = $(LIBASYNCNS_CFLAGS)
-@HAVE_LIBASYNCNS_TRUE@am__append_40 = $(LIBASYNCNS_LIBS)
-@OS_IS_WIN32_TRUE@am__append_41 = pulsecore/dllmain.c
-@HAVE_DBUS_TRUE@am__append_42 = \
+@HAVE_LIBASYNCNS_TRUE@am__append_40 = $(LIBASYNCNS_CFLAGS)
+@HAVE_LIBASYNCNS_TRUE@am__append_41 = $(LIBASYNCNS_LIBS)
+@OS_IS_WIN32_TRUE@am__append_42 = pulsecore/dllmain.c
+@HAVE_DBUS_TRUE@am__append_43 = \
@HAVE_DBUS_TRUE@ pulsecore/dbus-util.c pulsecore/dbus-util.h \
@HAVE_DBUS_TRUE@ pulsecore/rtkit.c pulsecore/rtkit.h
-@HAVE_DBUS_TRUE@am__append_43 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_44 = $(DBUS_LIBS)
-@HAVE_GLIB20_TRUE@am__append_45 = \
+@HAVE_DBUS_TRUE@am__append_44 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_45 = $(DBUS_LIBS)
+@HAVE_GLIB20_TRUE@am__append_46 = \
@HAVE_GLIB20_TRUE@ pulse/glib-mainloop.h
-@HAVE_GLIB20_TRUE@am__append_46 = \
+@HAVE_GLIB20_TRUE@am__append_47 = \
@HAVE_GLIB20_TRUE@ libpulse-mainloop-glib.la
-@HAVE_DBUS_TRUE@am__append_47 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_48 = $(DBUS_LIBS)
-@HAVE_OSS_WRAPPER_TRUE@am__append_49 = padsp
+@HAVE_DBUS_TRUE@am__append_48 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_49 = $(DBUS_LIBS)
@HAVE_OSS_WRAPPER_TRUE@am__append_50 = padsp
-@HAVE_NEON_TRUE@am__append_51 = libpulsecore_sconv_neon.la libpulsecore_mix_neon.la libpulsecore_remap_neon.la
+@HAVE_OSS_WRAPPER_TRUE@am__append_51 = padsp
@HAVE_NEON_TRUE@am__append_52 = libpulsecore_sconv_neon.la libpulsecore_mix_neon.la libpulsecore_remap_neon.la
-@HAVE_ORC_TRUE@am__append_53 = pulsecore/svolume_orc.c
-@HAVE_ORC_TRUE@am__append_54 = $(ORC_CFLAGS)
-@HAVE_ORC_TRUE@am__append_55 = $(ORC_LIBS)
-@HAVE_X11_TRUE@am__append_56 = pulsecore/x11wrap.c pulsecore/x11wrap.h
-@HAVE_X11_TRUE@am__append_57 = $(X11_CFLAGS)
-@HAVE_X11_TRUE@am__append_58 = $(X11_LIBS)
-@HAVE_DBUS_TRUE@am__append_59 = \
+@HAVE_NEON_TRUE@am__append_53 = libpulsecore_sconv_neon.la libpulsecore_mix_neon.la libpulsecore_remap_neon.la
+@HAVE_ORC_TRUE@am__append_54 = pulsecore/svolume_orc.c
+@HAVE_ORC_TRUE@am__append_55 = $(ORC_CFLAGS)
+@HAVE_ORC_TRUE@am__append_56 = $(ORC_LIBS)
+@HAVE_X11_TRUE@am__append_57 = pulsecore/x11wrap.c pulsecore/x11wrap.h
+@HAVE_X11_TRUE@am__append_58 = $(X11_CFLAGS)
+@HAVE_X11_TRUE@am__append_59 = $(X11_LIBS)
+@HAVE_DBUS_TRUE@am__append_60 = \
@HAVE_DBUS_TRUE@ pulsecore/dbus-shared.c pulsecore/dbus-shared.h \
@HAVE_DBUS_TRUE@ pulsecore/protocol-dbus.c pulsecore/protocol-dbus.h
-@HAVE_DBUS_TRUE@am__append_60 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_61 = $(DBUS_LIBS)
-@HAVE_GDBM_TRUE@am__append_62 = pulsecore/database-gdbm.c
-@HAVE_GDBM_TRUE@am__append_63 = $(GDBM_CFLAGS)
-@HAVE_GDBM_TRUE@am__append_64 = $(GDBM_LIBS)
-@HAVE_TDB_TRUE@am__append_65 = pulsecore/database-tdb.c
-@HAVE_TDB_TRUE@am__append_66 = $(TDB_CFLAGS)
-@HAVE_TDB_TRUE@am__append_67 = $(TDB_LIBS)
-@HAVE_SIMPLEDB_TRUE@am__append_68 = pulsecore/database-simple.c
-@HAVE_SPEEX_TRUE@am__append_69 = pulsecore/resampler/speex.c
-@HAVE_SPEEX_TRUE@am__append_70 = $(LIBSPEEX_CFLAGS)
-@HAVE_SPEEX_TRUE@am__append_71 = $(LIBSPEEX_LIBS)
-@HAVE_SOXR_TRUE@am__append_72 = pulsecore/resampler/soxr.c
-@HAVE_SOXR_TRUE@am__append_73 = $(LIBSOXR_CFLAGS)
-@HAVE_SOXR_TRUE@am__append_74 = $(LIBSOXR_LIBS)
-@HAVE_LIBSAMPLERATE_TRUE@am__append_75 = pulsecore/resampler/libsamplerate.c
-@HAVE_LIBSAMPLERATE_TRUE@am__append_76 = $(LIBSAMPLERATE_CFLAGS)
-@HAVE_LIBSAMPLERATE_TRUE@am__append_77 = $(LIBSAMPLERATE_LIBS)
-@HAVE_WEBRTC_TRUE@am__append_78 = libwebrtc-util.la
-@HAVE_ESOUND_TRUE@am__append_79 = \
+@HAVE_DBUS_TRUE@am__append_61 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_62 = $(DBUS_LIBS)
+@HAVE_GDBM_TRUE@am__append_63 = pulsecore/database-gdbm.c
+@HAVE_GDBM_TRUE@am__append_64 = $(GDBM_CFLAGS)
+@HAVE_GDBM_TRUE@am__append_65 = $(GDBM_LIBS)
+@HAVE_TDB_TRUE@am__append_66 = pulsecore/database-tdb.c
+@HAVE_TDB_TRUE@am__append_67 = $(TDB_CFLAGS)
+@HAVE_TDB_TRUE@am__append_68 = $(TDB_LIBS)
+@HAVE_SIMPLEDB_TRUE@am__append_69 = pulsecore/database-simple.c
+@HAVE_SPEEX_TRUE@am__append_70 = pulsecore/resampler/speex.c
+@HAVE_SPEEX_TRUE@am__append_71 = $(LIBSPEEX_CFLAGS)
+@HAVE_SPEEX_TRUE@am__append_72 = $(LIBSPEEX_LIBS)
+@HAVE_SOXR_TRUE@am__append_73 = pulsecore/resampler/soxr.c
+@HAVE_SOXR_TRUE@am__append_74 = $(LIBSOXR_CFLAGS)
+@HAVE_SOXR_TRUE@am__append_75 = $(LIBSOXR_LIBS)
+@HAVE_LIBSAMPLERATE_TRUE@am__append_76 = pulsecore/resampler/libsamplerate.c
+@HAVE_LIBSAMPLERATE_TRUE@am__append_77 = $(LIBSAMPLERATE_CFLAGS)
+@HAVE_LIBSAMPLERATE_TRUE@am__append_78 = $(LIBSAMPLERATE_LIBS)
+@HAVE_WEBRTC_TRUE@am__append_79 = libwebrtc-util.la
+@HAVE_ESOUND_TRUE@am__append_80 = \
@HAVE_ESOUND_TRUE@ libprotocol-esound.la
# We need to emulate sendmsg/recvmsg to support this on Win32
-@OS_IS_WIN32_FALSE@am__append_80 = \
+@OS_IS_WIN32_FALSE@am__append_81 = \
@OS_IS_WIN32_FALSE@ librtp.la
-@HAVE_AVAHI_TRUE@am__append_81 = \
+@HAVE_AVAHI_TRUE@am__append_82 = \
@HAVE_AVAHI_TRUE@ libavahi-wrap.la
-@HAVE_DBUS_TRUE@am__append_82 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_83 = $(DBUS_LIBS)
-@HAVE_GSTREAMER_TRUE@am__append_84 = modules/rtp/rtp-gstreamer.c
-@HAVE_GSTREAMER_TRUE@am__append_85 = $(GSTREAMER_CFLAGS)
-@HAVE_GSTREAMER_TRUE@am__append_86 = $(GSTREAMER_LIBS)
-@HAVE_GSTREAMER_FALSE@am__append_87 = modules/rtp/rtp-native.c
+@HAVE_DBUS_TRUE@am__append_83 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_84 = $(DBUS_LIBS)
+@HAVE_GSTREAMER_TRUE@am__append_85 = modules/rtp/rtp-gstreamer.c
+@HAVE_GSTREAMER_TRUE@am__append_86 = $(GSTREAMER_CFLAGS)
+@HAVE_GSTREAMER_TRUE@am__append_87 = $(GSTREAMER_LIBS)
+@HAVE_GSTREAMER_FALSE@am__append_88 = modules/rtp/rtp-native.c
###################################
# Plug-in libraries #
###################################
# Serveral module (e.g. libalsa-util.la)
-@HAVE_DBUS_TRUE@am__append_88 = \
+@HAVE_DBUS_TRUE@am__append_89 = \
@HAVE_DBUS_TRUE@ module-console-kit.la
-@HAVE_ESOUND_TRUE@am__append_89 = \
+@HAVE_ESOUND_TRUE@am__append_90 = \
@HAVE_ESOUND_TRUE@ module-esound-protocol-tcp.la \
@HAVE_ESOUND_TRUE@ module-esound-sink.la
# See comment at librtp.la above
-@OS_IS_WIN32_FALSE@am__append_90 = \
+@OS_IS_WIN32_FALSE@am__append_91 = \
@OS_IS_WIN32_FALSE@ module-rtp-send.la \
@OS_IS_WIN32_FALSE@ module-rtp-recv.la
-@HAVE_AF_UNIX_TRUE@am__append_91 = \
+@HAVE_AF_UNIX_TRUE@am__append_92 = \
@HAVE_AF_UNIX_TRUE@ module-cli-protocol-unix.la \
@HAVE_AF_UNIX_TRUE@ module-simple-protocol-unix.la \
@HAVE_AF_UNIX_TRUE@ module-http-protocol-unix.la \
@HAVE_AF_UNIX_TRUE@ module-native-protocol-unix.la
-@HAVE_AF_UNIX_TRUE@@HAVE_ESOUND_TRUE@am__append_92 = \
+@HAVE_AF_UNIX_TRUE@@HAVE_ESOUND_TRUE@am__append_93 = \
@HAVE_AF_UNIX_TRUE@@HAVE_ESOUND_TRUE@ module-esound-protocol-unix.la
-@HAVE_MKFIFO_TRUE@am__append_93 = \
+@HAVE_MKFIFO_TRUE@am__append_94 = \
@HAVE_MKFIFO_TRUE@ module-pipe-sink.la \
@HAVE_MKFIFO_TRUE@ module-pipe-source.la
-@HAVE_ESOUND_TRUE@@OS_IS_WIN32_FALSE@am__append_94 = \
+@HAVE_ESOUND_TRUE@@OS_IS_WIN32_FALSE@am__append_95 = \
@HAVE_ESOUND_TRUE@@OS_IS_WIN32_FALSE@ module-esound-compat-spawnfd.la \
@HAVE_ESOUND_TRUE@@OS_IS_WIN32_FALSE@ module-esound-compat-spawnpid.la
-@HAVE_REGEX_TRUE@am__append_95 = \
+@HAVE_REGEX_TRUE@am__append_96 = \
@HAVE_REGEX_TRUE@ module-match.la
-@HAVE_X11_TRUE@am__append_96 = \
+@HAVE_X11_TRUE@am__append_97 = \
@HAVE_X11_TRUE@ module-x11-bell.la \
@HAVE_X11_TRUE@ module-x11-publish.la \
@HAVE_X11_TRUE@ module-x11-xsmp.la \
@HAVE_X11_TRUE@ module-x11-cork-request.la
-@HAVE_OSS_OUTPUT_TRUE@am__append_97 = \
+@HAVE_OSS_OUTPUT_TRUE@am__append_98 = \
@HAVE_OSS_OUTPUT_TRUE@ liboss-util.la \
@HAVE_OSS_OUTPUT_TRUE@ module-oss.la
-@HAVE_COREAUDIO_TRUE@am__append_98 = \
+@HAVE_COREAUDIO_TRUE@am__append_99 = \
@HAVE_COREAUDIO_TRUE@ module-coreaudio-detect.la \
@HAVE_COREAUDIO_TRUE@ module-coreaudio-device.la
-pulselibexec_PROGRAMS = $(am__EXEEXT_16) $(am__EXEEXT_17)
-@HAVE_ALSA_TRUE@am__append_99 = \
+pulselibexec_PROGRAMS = $(am__EXEEXT_17) $(am__EXEEXT_18)
+@HAVE_ALSA_TRUE@am__append_100 = \
@HAVE_ALSA_TRUE@ libalsa-util.la \
@HAVE_ALSA_TRUE@ module-alsa-sink.la \
@HAVE_ALSA_TRUE@ module-alsa-source.la \
@HAVE_ALSA_TRUE@ module-alsa-card.la
-@HAVE_SOLARIS_TRUE@am__append_100 = \
+@HAVE_SOLARIS_TRUE@am__append_101 = \
@HAVE_SOLARIS_TRUE@ module-solaris.la
-@HAVE_AVAHI_TRUE@am__append_101 = \
+@HAVE_AVAHI_TRUE@am__append_102 = \
@HAVE_AVAHI_TRUE@ module-zeroconf-publish.la \
@HAVE_AVAHI_TRUE@ module-zeroconf-discover.la
-@HAVE_BONJOUR_TRUE@am__append_102 = \
+@HAVE_BONJOUR_TRUE@am__append_103 = \
@HAVE_BONJOUR_TRUE@ module-bonjour-publish.la
-@HAVE_LIRC_TRUE@am__append_103 = \
+@HAVE_LIRC_TRUE@am__append_104 = \
@HAVE_LIRC_TRUE@ module-lirc.la
-@HAVE_EVDEV_TRUE@am__append_104 = \
+@HAVE_EVDEV_TRUE@am__append_105 = \
@HAVE_EVDEV_TRUE@ module-mmkbd-evdev.la
-@HAVE_JACK_TRUE@am__append_105 = \
+@HAVE_JACK_TRUE@am__append_106 = \
@HAVE_JACK_TRUE@ module-jack-sink.la \
@HAVE_JACK_TRUE@ module-jack-source.la
-@HAVE_DBUS_TRUE@@HAVE_JACK_TRUE@am__append_106 = \
+@HAVE_DBUS_TRUE@@HAVE_JACK_TRUE@am__append_107 = \
@HAVE_DBUS_TRUE@@HAVE_JACK_TRUE@ module-jackdbus-detect.la
-@HAVE_GCONF_TRUE@am__append_107 = \
+@HAVE_GCONF_TRUE@am__append_108 = \
@HAVE_GCONF_TRUE@ module-gconf.la
-@HAVE_GCONF_TRUE@am__append_108 = \
+@HAVE_GCONF_TRUE@am__append_109 = \
@HAVE_GCONF_TRUE@ gconf-helper
-@HAVE_GSETTINGS_TRUE@am__append_109 = \
+@HAVE_GSETTINGS_TRUE@am__append_110 = \
@HAVE_GSETTINGS_TRUE@ module-gsettings.la
-@HAVE_GSETTINGS_TRUE@am__append_110 = \
+@HAVE_GSETTINGS_TRUE@am__append_111 = \
@HAVE_GSETTINGS_TRUE@ gsettings-helper
-@HAVE_WAVEOUT_TRUE@am__append_111 = \
+@HAVE_WAVEOUT_TRUE@am__append_112 = \
@HAVE_WAVEOUT_TRUE@ module-waveout.la
-@HAVE_HAL_COMPAT_TRUE@am__append_112 = \
+@HAVE_HAL_COMPAT_TRUE@am__append_113 = \
@HAVE_HAL_COMPAT_TRUE@ module-hal-detect.la
-@HAVE_UDEV_TRUE@am__append_113 = \
+@HAVE_UDEV_TRUE@am__append_114 = \
@HAVE_UDEV_TRUE@ module-udev-detect.la
-@HAVE_SYSTEMD_LOGIN_TRUE@am__append_114 = \
+@HAVE_SYSTEMD_LOGIN_TRUE@am__append_115 = \
@HAVE_SYSTEMD_LOGIN_TRUE@ module-systemd-login.la
-@HAVE_DBUS_TRUE@am__append_115 = \
+@HAVE_DBUS_TRUE@am__append_116 = \
@HAVE_DBUS_TRUE@ module-rygel-media-server.la \
@HAVE_DBUS_TRUE@ module-dbus-protocol.la
-@HAVE_BLUEZ_TRUE@am__append_116 = \
+@HAVE_BLUEZ_TRUE@am__append_117 = \
@HAVE_BLUEZ_TRUE@ module-bluetooth-discover.la \
@HAVE_BLUEZ_TRUE@ module-bluetooth-policy.la
-@HAVE_BLUEZ_5_TRUE@am__append_117 = \
+@HAVE_BLUEZ_5_TRUE@am__append_118 = \
@HAVE_BLUEZ_5_TRUE@ libbluez5-util.la \
@HAVE_BLUEZ_5_TRUE@ module-bluez5-discover.la \
@HAVE_BLUEZ_5_TRUE@ module-bluez5-device.la
@@ -415,46 +418,46 @@ pulselibexec_PROGRAMS = $(am__EXEEXT_16) $(am__EXEEXT_17)
# RAOP depends on RTP, and we don't support RTP on Windows, see comment at
# librtp.la above.
-@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@am__append_118 = \
+@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@am__append_119 = \
@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@ libraop.la \
@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@ module-raop-sink.la
-@HAVE_AVAHI_TRUE@@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@am__append_119 = \
+@HAVE_AVAHI_TRUE@@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@am__append_120 = \
@HAVE_AVAHI_TRUE@@HAVE_OPENSSL_TRUE@@OS_IS_WIN32_FALSE@ module-raop-discover.la
-@HAVE_DBUS_TRUE@@HAVE_FFTW_TRUE@am__append_120 = \
+@HAVE_DBUS_TRUE@@HAVE_FFTW_TRUE@am__append_121 = \
@HAVE_DBUS_TRUE@@HAVE_FFTW_TRUE@ module-equalizer-sink.la
-@HAVE_DBUS_TRUE@@HAVE_FFTW_TRUE@am__append_121 = utils/qpaeq
-@HAVE_DBUS_TRUE@am__append_122 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_123 = $(DBUS_LIBS)
-@HAVE_UDEV_TRUE@am__append_124 = modules/udev-util.h modules/udev-util.c
-@HAVE_UDEV_TRUE@am__append_125 = $(UDEV_LIBS)
-@HAVE_UDEV_TRUE@am__append_126 = $(UDEV_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_127 = modules/reserve.h modules/reserve.c modules/reserve-monitor.h modules/reserve-monitor.c
-@HAVE_DBUS_TRUE@am__append_128 = $(DBUS_LIBS)
-@HAVE_DBUS_TRUE@am__append_129 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_130 = $(DBUS_LIBS)
-@HAVE_DBUS_TRUE@am__append_131 = $(DBUS_CFLAGS)
-@HAVE_DBUS_TRUE@am__append_132 = $(DBUS_LIBS)
-@HAVE_DBUS_TRUE@am__append_133 = $(DBUS_CFLAGS)
-@HAVE_ADRIAN_EC_TRUE@am__append_134 = \
+@HAVE_DBUS_TRUE@@HAVE_FFTW_TRUE@am__append_122 = utils/qpaeq
+@HAVE_DBUS_TRUE@am__append_123 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_124 = $(DBUS_LIBS)
+@HAVE_UDEV_TRUE@am__append_125 = modules/udev-util.h modules/udev-util.c
+@HAVE_UDEV_TRUE@am__append_126 = $(UDEV_LIBS)
+@HAVE_UDEV_TRUE@am__append_127 = $(UDEV_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_128 = modules/reserve.h modules/reserve.c modules/reserve-monitor.h modules/reserve-monitor.c
+@HAVE_DBUS_TRUE@am__append_129 = $(DBUS_LIBS)
+@HAVE_DBUS_TRUE@am__append_130 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_131 = $(DBUS_LIBS)
+@HAVE_DBUS_TRUE@am__append_132 = $(DBUS_CFLAGS)
+@HAVE_DBUS_TRUE@am__append_133 = $(DBUS_LIBS)
+@HAVE_DBUS_TRUE@am__append_134 = $(DBUS_CFLAGS)
+@HAVE_ADRIAN_EC_TRUE@am__append_135 = \
@HAVE_ADRIAN_EC_TRUE@ modules/echo-cancel/adrian-aec.c modules/echo-cancel/adrian-aec.h \
@HAVE_ADRIAN_EC_TRUE@ modules/echo-cancel/adrian.c modules/echo-cancel/adrian.h
-@HAVE_ADRIAN_EC_TRUE@am__append_135 = -DHAVE_ADRIAN_EC=1
-@HAVE_ADRIAN_EC_TRUE@am__append_136 = modules/echo-cancel/adrian-aec
-@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@am__append_137 = $(ORC_LIBS)
-@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@am__append_138 = $(ORC_CFLAGS) -I$(top_builddir)/src/modules/echo-cancel
-@HAVE_SPEEX_TRUE@am__append_139 = modules/echo-cancel/speex.c
-@HAVE_SPEEX_TRUE@am__append_140 = $(LIBSPEEX_CFLAGS)
-@HAVE_SPEEX_TRUE@am__append_141 = $(LIBSPEEX_LIBS)
-@HAVE_WEBRTC_TRUE@am__append_142 = -DHAVE_WEBRTC=1
-@HAVE_WEBRTC_TRUE@am__append_143 = libwebrtc-util.la
-@HAVE_BLUEZ_5_OFONO_HEADSET_TRUE@am__append_144 = \
+@HAVE_ADRIAN_EC_TRUE@am__append_136 = -DHAVE_ADRIAN_EC=1
+@HAVE_ADRIAN_EC_TRUE@am__append_137 = modules/echo-cancel/adrian-aec
+@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@am__append_138 = $(ORC_LIBS)
+@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@am__append_139 = $(ORC_CFLAGS) -I$(top_builddir)/src/modules/echo-cancel
+@HAVE_SPEEX_TRUE@am__append_140 = modules/echo-cancel/speex.c
+@HAVE_SPEEX_TRUE@am__append_141 = $(LIBSPEEX_CFLAGS)
+@HAVE_SPEEX_TRUE@am__append_142 = $(LIBSPEEX_LIBS)
+@HAVE_WEBRTC_TRUE@am__append_143 = -DHAVE_WEBRTC=1
+@HAVE_WEBRTC_TRUE@am__append_144 = libwebrtc-util.la
+@HAVE_BLUEZ_5_OFONO_HEADSET_TRUE@am__append_145 = \
@HAVE_BLUEZ_5_OFONO_HEADSET_TRUE@ modules/bluetooth/backend-ofono.c
-@HAVE_BLUEZ_5_NATIVE_HEADSET_TRUE@am__append_145 = \
+@HAVE_BLUEZ_5_NATIVE_HEADSET_TRUE@am__append_146 = \
@HAVE_BLUEZ_5_NATIVE_HEADSET_TRUE@ modules/bluetooth/backend-native.c
subdir = src
@@ -503,38 +506,41 @@ am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pulselibexecdir)" \
@OS_IS_DARWIN_FALSE@am__EXEEXT_6 = once-test$(EXEEXT)
@HAVE_GLIB20_TRUE@am__EXEEXT_7 = mainloop-test-glib$(EXEEXT)
@HAVE_ALSA_TRUE@am__EXEEXT_8 = alsa-mixer-path-test$(EXEEXT)
-am__EXEEXT_9 = core-util-test$(EXEEXT) mainloop-test$(EXEEXT) \
- strlist-test$(EXEEXT) close-test$(EXEEXT) \
- memblockq-test$(EXEEXT) channelmap-test$(EXEEXT) \
- thread-mainloop-test$(EXEEXT) utf8-test$(EXEEXT) \
- format-test$(EXEEXT) json-test$(EXEEXT) \
- get-binary-name-test$(EXEEXT) hook-list-test$(EXEEXT) \
- memblock-test$(EXEEXT) asyncq-test$(EXEEXT) \
- asyncmsgq-test$(EXEEXT) queue-test$(EXEEXT) \
- rtpoll-test$(EXEEXT) resampler-test$(EXEEXT) \
- smoother-test$(EXEEXT) thread-test$(EXEEXT) \
- volume-test$(EXEEXT) mix-test$(EXEEXT) proplist-test$(EXEEXT) \
- cpu-mix-test$(EXEEXT) cpu-remap-test$(EXEEXT) \
- cpu-sconv-test$(EXEEXT) cpu-volume-test$(EXEEXT) \
- lock-autospawn-test$(EXEEXT) mult-s16-test$(EXEEXT) \
- lfe-filter-test$(EXEEXT) $(am__EXEEXT_4) $(am__EXEEXT_5) \
- $(am__EXEEXT_6) $(am__EXEEXT_7) $(am__EXEEXT_8)
-@HAVE_SIGXCPU_TRUE@am__EXEEXT_10 = cpulimit-test$(EXEEXT) \
+am__EXEEXT_9 = asyncmsgq-test$(EXEEXT) asyncq-test$(EXEEXT) \
+ channelmap-test$(EXEEXT) close-test$(EXEEXT) \
+ core-util-test$(EXEEXT) cpu-mix-test$(EXEEXT) \
+ cpu-remap-test$(EXEEXT) cpu-sconv-test$(EXEEXT) \
+ cpu-volume-test$(EXEEXT) format-test$(EXEEXT) \
+ get-binary-name-test$(EXEEXT) hashmap-test$(EXEEXT) \
+ hook-list-test$(EXEEXT) json-test$(EXEEXT) \
+ lfe-filter-test$(EXEEXT) lock-autospawn-test$(EXEEXT) \
+ mainloop-test$(EXEEXT) memblock-test$(EXEEXT) \
+ memblockq-test$(EXEEXT) mix-test$(EXEEXT) \
+ mult-s16-test$(EXEEXT) proplist-test$(EXEEXT) \
+ queue-test$(EXEEXT) resampler-test$(EXEEXT) \
+ rtpoll-test$(EXEEXT) smoother-test$(EXEEXT) \
+ strlist-test$(EXEEXT) thread-mainloop-test$(EXEEXT) \
+ thread-test$(EXEEXT) utf8-test$(EXEEXT) volume-test$(EXEEXT) \
+ $(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6) \
+ $(am__EXEEXT_7) $(am__EXEEXT_8)
+@HAVE_PTHREAD_SETAFFINITY_NP_TRUE@am__EXEEXT_10 = \
+@HAVE_PTHREAD_SETAFFINITY_NP_TRUE@ atomic-test$(EXEEXT)
+@HAVE_SIGXCPU_TRUE@am__EXEEXT_11 = cpulimit-test$(EXEEXT) \
@HAVE_SIGXCPU_TRUE@ cpulimit-test2$(EXEEXT)
-@HAVE_GLIB20_TRUE@@HAVE_GTK30_TRUE@am__EXEEXT_11 = gtk-test$(EXEEXT)
-@HAVE_ALSA_TRUE@am__EXEEXT_12 = alsa-time-test$(EXEEXT)
-am__EXEEXT_13 = ipacl-test$(EXEEXT) mcalign-test$(EXEEXT) \
+@HAVE_GLIB20_TRUE@@HAVE_GTK30_TRUE@am__EXEEXT_12 = gtk-test$(EXEEXT)
+@HAVE_ALSA_TRUE@am__EXEEXT_13 = alsa-time-test$(EXEEXT)
+am__EXEEXT_14 = ipacl-test$(EXEEXT) mcalign-test$(EXEEXT) \
pacat-simple$(EXEEXT) parec-simple$(EXEEXT) \
flist-test$(EXEEXT) remix-test$(EXEEXT) rtstutter$(EXEEXT) \
sig2str-test$(EXEEXT) stripnul$(EXEEXT) \
echo-cancel-test$(EXEEXT) lo-latency-test$(EXEEXT) \
- atomic-test$(EXEEXT) $(am__EXEEXT_10) $(am__EXEEXT_11) \
- $(am__EXEEXT_12)
-am__EXEEXT_14 = extended-test$(EXEEXT) passthrough-test$(EXEEXT) \
+ $(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12) \
+ $(am__EXEEXT_13)
+am__EXEEXT_15 = extended-test$(EXEEXT) passthrough-test$(EXEEXT) \
sync-playback$(EXEEXT)
-am__EXEEXT_15 = connect-stress$(EXEEXT) interpol-test$(EXEEXT)
-@HAVE_GCONF_TRUE@am__EXEEXT_16 = gconf-helper$(EXEEXT)
-@HAVE_GSETTINGS_TRUE@am__EXEEXT_17 = gsettings-helper$(EXEEXT)
+am__EXEEXT_16 = connect-stress$(EXEEXT) interpol-test$(EXEEXT)
+@HAVE_GCONF_TRUE@am__EXEEXT_17 = gconf-helper$(EXEEXT)
+@HAVE_GSETTINGS_TRUE@am__EXEEXT_18 = gsettings-helper$(EXEEXT)
PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(pulselibexec_PROGRAMS)
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
@@ -939,7 +945,7 @@ libpulsecore_@PA_MAJORMINOR@_la_DEPENDENCIES = $(am__DEPENDENCIES_2) \
$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
libpulsecommon-@PA_MAJORMINOR@.la libpulse.la \
- libpulsecore-foreign.la $(am__append_52) $(am__DEPENDENCIES_7) \
+ libpulsecore-foreign.la $(am__append_53) $(am__DEPENDENCIES_7) \
$(am__DEPENDENCIES_5) $(am__DEPENDENCIES_8) \
$(am__DEPENDENCIES_9) $(am__DEPENDENCIES_10) \
$(am__DEPENDENCIES_11) $(am__DEPENDENCIES_12)
@@ -1434,7 +1440,7 @@ module_device_restore_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@ $(am__DEPENDENCIES_1)
module_echo_cancel_la_DEPENDENCIES = $(am__DEPENDENCIES_3) \
$(am__DEPENDENCIES_14) $(am__DEPENDENCIES_10) \
- $(am__append_143)
+ $(am__append_144)
am__module_echo_cancel_la_SOURCES_DIST = \
modules/echo-cancel/module-echo-cancel.c \
modules/echo-cancel/null.c modules/echo-cancel/echo-cancel.h \
@@ -2266,7 +2272,7 @@ nodist_echo_cancel_test_OBJECTS = $(am__objects_30)
echo_cancel_test_OBJECTS = $(am_echo_cancel_test_OBJECTS) \
$(nodist_echo_cancel_test_OBJECTS)
am__DEPENDENCIES_15 = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_14) \
- $(am__DEPENDENCIES_10) $(am__append_143)
+ $(am__DEPENDENCIES_10) $(am__append_144)
echo_cancel_test_DEPENDENCIES = $(am__DEPENDENCIES_15)
echo_cancel_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
@@ -2332,6 +2338,13 @@ gtk_test_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \
gtk_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(gtk_test_CFLAGS) \
$(CFLAGS) $(gtk_test_LDFLAGS) $(LDFLAGS) -o $@
+am_hashmap_test_OBJECTS = tests/hashmap_test-hashmap-test.$(OBJEXT)
+hashmap_test_OBJECTS = $(am_hashmap_test_OBJECTS)
+hashmap_test_DEPENDENCIES = $(am__DEPENDENCIES_2) libpulse.la \
+ libpulsecommon-@PA_MAJORMINOR@.la
+hashmap_test_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(hashmap_test_CFLAGS) \
+ $(CFLAGS) $(hashmap_test_LDFLAGS) $(LDFLAGS) -o $@
am_hook_list_test_OBJECTS = \
tests/hook_list_test-hook-list-test.$(OBJEXT)
hook_list_test_OBJECTS = $(am_hook_list_test_OBJECTS)
@@ -3074,6 +3087,7 @@ am__depfiles_remade = daemon/$(DEPDIR)/cpulimit_test-cpulimit.Po \
tests/$(DEPDIR)/format_test-format-test.Po \
tests/$(DEPDIR)/get_binary_name_test-get-binary-name-test.Po \
tests/$(DEPDIR)/gtk_test-gtk-test.Po \
+ tests/$(DEPDIR)/hashmap_test-hashmap-test.Po \
tests/$(DEPDIR)/hook_list_test-hook-list-test.Po \
tests/$(DEPDIR)/interpol_test-interpol-test.Po \
tests/$(DEPDIR)/ipacl_test-ipacl-test.Po \
@@ -3266,26 +3280,27 @@ SOURCES = $(libalsa_util_la_SOURCES) $(libavahi_wrap_la_SOURCES) \
$(flist_test_SOURCES) $(format_test_SOURCES) \
$(gconf_helper_SOURCES) $(get_binary_name_test_SOURCES) \
$(gsettings_helper_SOURCES) $(gtk_test_SOURCES) \
- $(hook_list_test_SOURCES) $(interpol_test_SOURCES) \
- $(ipacl_test_SOURCES) $(json_test_SOURCES) \
- $(lfe_filter_test_SOURCES) $(lo_latency_test_SOURCES) \
- $(lock_autospawn_test_SOURCES) $(mainloop_test_SOURCES) \
- $(mainloop_test_glib_SOURCES) $(mcalign_test_SOURCES) \
- $(memblock_test_SOURCES) $(memblockq_test_SOURCES) \
- $(mix_test_SOURCES) $(mult_s16_test_SOURCES) \
- $(once_test_SOURCES) $(pacat_SOURCES) $(pacat_simple_SOURCES) \
- $(pacmd_SOURCES) $(pactl_SOURCES) $(parec_simple_SOURCES) \
- $(passthrough_test_SOURCES) $(pasuspender_SOURCES) \
- $(pax11publish_SOURCES) $(proplist_test_SOURCES) \
- $(pulseaudio_SOURCES) $(queue_test_SOURCES) \
- $(remix_test_SOURCES) $(resampler_test_SOURCES) \
- $(rtpoll_test_SOURCES) $(rtstutter_SOURCES) \
- $(sig2str_test_SOURCES) $(sigbus_test_SOURCES) \
- $(smoother_test_SOURCES) $(srbchannel_test_SOURCES) \
- $(stripnul_SOURCES) $(strlist_test_SOURCES) \
- $(sync_playback_SOURCES) $(thread_mainloop_test_SOURCES) \
- $(thread_test_SOURCES) $(usergroup_test_SOURCES) \
- $(utf8_test_SOURCES) $(volume_test_SOURCES)
+ $(hashmap_test_SOURCES) $(hook_list_test_SOURCES) \
+ $(interpol_test_SOURCES) $(ipacl_test_SOURCES) \
+ $(json_test_SOURCES) $(lfe_filter_test_SOURCES) \
+ $(lo_latency_test_SOURCES) $(lock_autospawn_test_SOURCES) \
+ $(mainloop_test_SOURCES) $(mainloop_test_glib_SOURCES) \
+ $(mcalign_test_SOURCES) $(memblock_test_SOURCES) \
+ $(memblockq_test_SOURCES) $(mix_test_SOURCES) \
+ $(mult_s16_test_SOURCES) $(once_test_SOURCES) $(pacat_SOURCES) \
+ $(pacat_simple_SOURCES) $(pacmd_SOURCES) $(pactl_SOURCES) \
+ $(parec_simple_SOURCES) $(passthrough_test_SOURCES) \
+ $(pasuspender_SOURCES) $(pax11publish_SOURCES) \
+ $(proplist_test_SOURCES) $(pulseaudio_SOURCES) \
+ $(queue_test_SOURCES) $(remix_test_SOURCES) \
+ $(resampler_test_SOURCES) $(rtpoll_test_SOURCES) \
+ $(rtstutter_SOURCES) $(sig2str_test_SOURCES) \
+ $(sigbus_test_SOURCES) $(smoother_test_SOURCES) \
+ $(srbchannel_test_SOURCES) $(stripnul_SOURCES) \
+ $(strlist_test_SOURCES) $(sync_playback_SOURCES) \
+ $(thread_mainloop_test_SOURCES) $(thread_test_SOURCES) \
+ $(usergroup_test_SOURCES) $(utf8_test_SOURCES) \
+ $(volume_test_SOURCES)
DIST_SOURCES = $(am__libalsa_util_la_SOURCES_DIST) \
$(libavahi_wrap_la_SOURCES) \
$(am__libbluez5_util_la_SOURCES_DIST) $(libcli_la_SOURCES) \
@@ -3399,27 +3414,27 @@ DIST_SOURCES = $(am__libalsa_util_la_SOURCES_DIST) \
$(extended_test_SOURCES) $(flist_test_SOURCES) \
$(format_test_SOURCES) $(gconf_helper_SOURCES) \
$(get_binary_name_test_SOURCES) $(gsettings_helper_SOURCES) \
- $(gtk_test_SOURCES) $(hook_list_test_SOURCES) \
- $(interpol_test_SOURCES) $(ipacl_test_SOURCES) \
- $(json_test_SOURCES) $(lfe_filter_test_SOURCES) \
- $(lo_latency_test_SOURCES) $(lock_autospawn_test_SOURCES) \
- $(mainloop_test_SOURCES) $(mainloop_test_glib_SOURCES) \
- $(mcalign_test_SOURCES) $(memblock_test_SOURCES) \
- $(memblockq_test_SOURCES) $(mix_test_SOURCES) \
- $(mult_s16_test_SOURCES) $(once_test_SOURCES) $(pacat_SOURCES) \
- $(pacat_simple_SOURCES) $(pacmd_SOURCES) $(pactl_SOURCES) \
- $(parec_simple_SOURCES) $(passthrough_test_SOURCES) \
- $(pasuspender_SOURCES) $(pax11publish_SOURCES) \
- $(proplist_test_SOURCES) $(am__pulseaudio_SOURCES_DIST) \
- $(queue_test_SOURCES) $(remix_test_SOURCES) \
- $(resampler_test_SOURCES) $(rtpoll_test_SOURCES) \
- $(rtstutter_SOURCES) $(sig2str_test_SOURCES) \
- $(sigbus_test_SOURCES) $(smoother_test_SOURCES) \
- $(srbchannel_test_SOURCES) $(stripnul_SOURCES) \
- $(strlist_test_SOURCES) $(sync_playback_SOURCES) \
- $(thread_mainloop_test_SOURCES) $(thread_test_SOURCES) \
- $(usergroup_test_SOURCES) $(utf8_test_SOURCES) \
- $(volume_test_SOURCES)
+ $(gtk_test_SOURCES) $(hashmap_test_SOURCES) \
+ $(hook_list_test_SOURCES) $(interpol_test_SOURCES) \
+ $(ipacl_test_SOURCES) $(json_test_SOURCES) \
+ $(lfe_filter_test_SOURCES) $(lo_latency_test_SOURCES) \
+ $(lock_autospawn_test_SOURCES) $(mainloop_test_SOURCES) \
+ $(mainloop_test_glib_SOURCES) $(mcalign_test_SOURCES) \
+ $(memblock_test_SOURCES) $(memblockq_test_SOURCES) \
+ $(mix_test_SOURCES) $(mult_s16_test_SOURCES) \
+ $(once_test_SOURCES) $(pacat_SOURCES) $(pacat_simple_SOURCES) \
+ $(pacmd_SOURCES) $(pactl_SOURCES) $(parec_simple_SOURCES) \
+ $(passthrough_test_SOURCES) $(pasuspender_SOURCES) \
+ $(pax11publish_SOURCES) $(proplist_test_SOURCES) \
+ $(am__pulseaudio_SOURCES_DIST) $(queue_test_SOURCES) \
+ $(remix_test_SOURCES) $(resampler_test_SOURCES) \
+ $(rtpoll_test_SOURCES) $(rtstutter_SOURCES) \
+ $(sig2str_test_SOURCES) $(sigbus_test_SOURCES) \
+ $(smoother_test_SOURCES) $(srbchannel_test_SOURCES) \
+ $(stripnul_SOURCES) $(strlist_test_SOURCES) \
+ $(sync_playback_SOURCES) $(thread_mainloop_test_SOURCES) \
+ $(thread_test_SOURCES) $(usergroup_test_SOURCES) \
+ $(utf8_test_SOURCES) $(volume_test_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -3470,6 +3485,7 @@ am__dist_alsaprofilesets_DATA_DIST = \
modules/alsa/mixer/profile-sets/default.conf \
modules/alsa/mixer/profile-sets/force-speaker.conf \
modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf \
+ modules/alsa/mixer/profile-sets/audigy.conf \
modules/alsa/mixer/profile-sets/maudio-fasttrack-pro.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio4dj.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio8dj.conf \
@@ -3739,6 +3755,7 @@ DBUS_LIBS = @DBUS_LIBS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
+DOXYGEN_OUTPUT_DIRECTORY = @DOXYGEN_OUTPUT_DIRECTORY@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
@@ -3936,6 +3953,7 @@ ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+alsadatadir = @alsadatadir@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -3993,8 +4011,8 @@ pulseincludedir = $(includedir)/pulse
pulsecoreincludedir = $(includedir)/pulsecore
pulselibexecdir = $(libexecdir)/pulse
@HAVE_X11_TRUE@xdgautostartdir = $(sysconfdir)/xdg/autostart
-@HAVE_ALSA_TRUE@alsaprofilesetsdir = $(datadir)/pulseaudio/alsa-mixer/profile-sets
-@HAVE_ALSA_TRUE@alsapathsdir = $(datadir)/pulseaudio/alsa-mixer/paths
+@HAVE_ALSA_TRUE@alsaprofilesetsdir = $(alsadatadir)/profile-sets
+@HAVE_ALSA_TRUE@alsapathsdir = $(alsadatadir)/paths
@HAVE_DBUS_TRUE@dbuspolicydir = $(sysconfdir)/dbus-1/system.d
@HAVE_GSETTINGS_TRUE@gsettingsdataconvertdir = $(datadir)/GConf/gsettings
@@ -4062,7 +4080,7 @@ BUILT_SOURCES = $(am__append_6)
###################################
# Some minor stuff #
###################################
-CLEANFILES = $(am__append_7) $(am__append_50) \
+CLEANFILES = $(am__append_7) $(am__append_51) \
daemon/pulseaudio.desktop
@HAVE_ORC_TRUE@ORC_BUILT_SOURCE = $(addsuffix -orc-gen.c,$(ORC_SOURCE))
@HAVE_ORC_TRUE@ORC_BUILT_HEADER = $(addsuffix -orc-gen.h,$(ORC_SOURCE))
@@ -4072,7 +4090,7 @@ CLEANFILES = $(am__append_7) $(am__append_50) \
@HAVE_ORC_TRUE@cp_v_gen = $(cp_v_gen_$(V))
@HAVE_ORC_TRUE@cp_v_gen_ = $(cp_v_gen_$(AM_DEFAULT_VERBOSITY))
@HAVE_ORC_TRUE@cp_v_gen_0 = @echo " CP $@";
-ORC_SOURCE = pulsecore/svolume $(am__append_136)
+ORC_SOURCE = pulsecore/svolume $(am__append_137)
pulseaudio_SOURCES = daemon/caps.c daemon/caps.h daemon/cmdline.c \
daemon/cmdline.h daemon/cpulimit.c daemon/cpulimit.h \
daemon/daemon-conf.c daemon/daemon-conf.h daemon/dumpmodules.c \
@@ -4101,7 +4119,7 @@ pulseaudio_DEPENDENCIES = libpulsecore-@PA_MAJORMINOR@.la libpulsecommon-@PA_MAJ
# Utility programs #
###################################
bin_SCRIPTS = utils/pa-info $(am__append_13) $(am__append_17) \
- $(am__append_49) $(am__append_121)
+ $(am__append_50) $(am__append_122)
pacat_SOURCES = utils/pacat.c
pacat_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la $(LIBSNDFILE_LIBS)
pacat_CFLAGS = $(AM_CFLAGS) $(LIBSNDFILE_CFLAGS)
@@ -4132,22 +4150,22 @@ pax11publish_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
###################################
# We split the foreign code off to not be annoyed by warnings we don't care about
-noinst_LTLIBRARIES = liblo-test-util.la $(am__append_51) \
+noinst_LTLIBRARIES = liblo-test-util.la $(am__append_52) \
libpulsecore-foreign.la
-TESTS_default = core-util-test mainloop-test strlist-test close-test \
- memblockq-test channelmap-test thread-mainloop-test utf8-test \
- format-test json-test get-binary-name-test hook-list-test \
- memblock-test asyncq-test asyncmsgq-test queue-test \
- rtpoll-test resampler-test smoother-test thread-test \
- volume-test mix-test proplist-test cpu-mix-test cpu-remap-test \
- cpu-sconv-test cpu-volume-test lock-autospawn-test \
- mult-s16-test lfe-filter-test $(am__append_18) \
- $(am__append_19) $(am__append_20) $(am__append_22) \
- $(am__append_25)
+TESTS_default = asyncmsgq-test asyncq-test channelmap-test close-test \
+ core-util-test cpu-mix-test cpu-remap-test cpu-sconv-test \
+ cpu-volume-test format-test get-binary-name-test hashmap-test \
+ hook-list-test json-test lfe-filter-test lock-autospawn-test \
+ mainloop-test memblock-test memblockq-test mix-test \
+ mult-s16-test proplist-test queue-test resampler-test \
+ rtpoll-test smoother-test strlist-test thread-mainloop-test \
+ thread-test utf8-test volume-test $(am__append_18) \
+ $(am__append_20) $(am__append_21) $(am__append_23) \
+ $(am__append_26)
TESTS_norun = ipacl-test mcalign-test pacat-simple parec-simple \
flist-test remix-test rtstutter sig2str-test stripnul \
- echo-cancel-test lo-latency-test atomic-test $(am__append_21) \
- $(am__append_23) $(am__append_24)
+ echo-cancel-test lo-latency-test $(am__append_19) \
+ $(am__append_22) $(am__append_24) $(am__append_25)
# These tests need a running pulseaudio daemon
TESTS_daemon = \
@@ -4167,6 +4185,10 @@ core_util_test_SOURCES = tests/core-util-test.c
core_util_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS)
core_util_test_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
core_util_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(LIBCHECK_LIBS)
+hashmap_test_SOURCES = tests/hashmap-test.c
+hashmap_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS)
+hashmap_test_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
+hashmap_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(LIBCHECK_LIBS)
mainloop_test_SOURCES = tests/mainloop-test.c
mainloop_test_CFLAGS = $(AM_CFLAGS) $(LIBCHECK_CFLAGS)
mainloop_test_LDADD = $(AM_LDADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
@@ -4462,22 +4484,22 @@ libpulsecommon_@PA_MAJORMINOR@_la_SOURCES = pulse/client-conf.c \
pulsecore/time-smoother.h pulsecore/tokenizer.c \
pulsecore/tokenizer.h pulsecore/usergroup.c \
pulsecore/usergroup.h pulsecore/sndfile-util.c \
- pulsecore/sndfile-util.h pulsecore/socket.h $(am__append_26) \
- $(am__append_27) $(am__append_28) $(am__append_29) \
- $(am__append_36) $(am__append_37) $(am__append_38) \
- $(am__append_41) $(am__append_42)
+ pulsecore/sndfile-util.h pulsecore/socket.h $(am__append_27) \
+ $(am__append_28) $(am__append_29) $(am__append_30) \
+ $(am__append_37) $(am__append_38) $(am__append_39) \
+ $(am__append_42) $(am__append_43)
# proplist-util.h uses these header files, but not the library itself!
libpulsecommon_@PA_MAJORMINOR@_la_CFLAGS = $(AM_CFLAGS) \
- $(LIBSNDFILE_CFLAGS) $(am__append_30) $(am__append_32) \
- $(am__append_34) $(GLIB20_CFLAGS) $(GTK30_CFLAGS) \
- $(am__append_39) $(am__append_43)
+ $(LIBSNDFILE_CFLAGS) $(am__append_31) $(am__append_33) \
+ $(am__append_35) $(GLIB20_CFLAGS) $(GTK30_CFLAGS) \
+ $(am__append_40) $(am__append_44)
libpulsecommon_@PA_MAJORMINOR@_la_LDFLAGS = $(AM_LDFLAGS) \
- $(AM_LIBLDFLAGS) -avoid-version $(am__append_31) \
- $(am__append_33) $(am__append_35)
+ $(AM_LIBLDFLAGS) -avoid-version $(am__append_32) \
+ $(am__append_34) $(am__append_36)
libpulsecommon_@PA_MAJORMINOR@_la_LIBADD = $(AM_LIBADD) \
$(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) \
- $(LIBSNDFILE_LIBS) $(am__append_40) $(am__append_44)
+ $(LIBSNDFILE_LIBS) $(am__append_41) $(am__append_45)
###################################
# Client library #
@@ -4492,8 +4514,8 @@ pulseinclude_HEADERS = pulse/cdecl.h pulse/channelmap.h \
pulse/sample.h pulse/scache.h pulse/simple.h pulse/stream.h \
pulse/subscribe.h pulse/thread-mainloop.h pulse/timeval.h \
pulse/utf8.h pulse/util.h pulse/version.h pulse/volume.h \
- pulse/xmalloc.h $(am__append_45)
-lib_LTLIBRARIES = libpulse.la libpulse-simple.la $(am__append_46)
+ pulse/xmalloc.h $(am__append_46)
+lib_LTLIBRARIES = libpulse.la libpulse-simple.la $(am__append_47)
# Public interface
libpulse_la_SOURCES = \
@@ -4528,9 +4550,9 @@ libpulse_la_SOURCES = \
pulse/volume.c pulse/volume.h \
pulse/xmalloc.c pulse/xmalloc.h
-libpulse_la_CFLAGS = $(AM_CFLAGS) $(am__append_47)
+libpulse_la_CFLAGS = $(AM_CFLAGS) $(am__append_48)
libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LTLIBICONV) \
- libpulsecommon-@PA_MAJORMINOR@.la $(am__append_48)
+ libpulsecommon-@PA_MAJORMINOR@.la $(am__append_49)
libpulse_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_VERSION_INFO)
libpulse_simple_la_SOURCES = pulse/simple.c pulse/simple.h
libpulse_simple_la_CFLAGS = $(AM_CFLAGS)
@@ -4605,23 +4627,23 @@ libpulsecore_@PA_MAJORMINOR@_la_SOURCES = \
pulsecore/source-output.c pulsecore/source-output.h \
pulsecore/source.c pulsecore/source.h pulsecore/start-child.c \
pulsecore/start-child.h pulsecore/thread-mq.c \
- pulsecore/thread-mq.h pulsecore/database.h $(am__append_53) \
- $(am__append_56) $(am__append_59) $(am__append_62) \
- $(am__append_65) $(am__append_68) $(am__append_69) \
- $(am__append_72) $(am__append_75)
-libpulsecore_@PA_MAJORMINOR@_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) \
- $(LIBSNDFILE_CFLAGS) $(WINSOCK_CFLAGS) $(am__append_54) \
+ pulsecore/thread-mq.h pulsecore/database.h $(am__append_54) \
$(am__append_57) $(am__append_60) $(am__append_63) \
- $(am__append_66) $(am__append_70) $(am__append_73) \
- $(am__append_76)
+ $(am__append_66) $(am__append_69) $(am__append_70) \
+ $(am__append_73) $(am__append_76)
+libpulsecore_@PA_MAJORMINOR@_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) \
+ $(LIBSNDFILE_CFLAGS) $(WINSOCK_CFLAGS) $(am__append_55) \
+ $(am__append_58) $(am__append_61) $(am__append_64) \
+ $(am__append_67) $(am__append_71) $(am__append_74) \
+ $(am__append_77)
libpulsecore_@PA_MAJORMINOR@_la_LDFLAGS = $(AM_LDFLAGS) \
- $(AM_LIBLDFLAGS) -avoid-version $(am__append_58)
+ $(AM_LIBLDFLAGS) -avoid-version $(am__append_59)
libpulsecore_@PA_MAJORMINOR@_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) \
$(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) \
libpulsecommon-@PA_MAJORMINOR@.la libpulse.la \
- libpulsecore-foreign.la $(am__append_52) $(am__append_55) \
- $(am__append_61) $(am__append_64) $(am__append_67) \
- $(am__append_71) $(am__append_74) $(am__append_77)
+ libpulsecore-foreign.la $(am__append_53) $(am__append_56) \
+ $(am__append_62) $(am__append_65) $(am__append_68) \
+ $(am__append_72) $(am__append_75) $(am__append_78)
@HAVE_NEON_TRUE@libpulsecore_sconv_neon_la_SOURCES = pulsecore/sconv_neon.c
@HAVE_NEON_TRUE@libpulsecore_sconv_neon_la_CFLAGS = $(AM_CFLAGS) $(NEON_CFLAGS)
@HAVE_NEON_TRUE@libpulsecore_mix_neon_la_SOURCES = pulsecore/mix_neon.c
@@ -4644,8 +4666,8 @@ libpulsecore_foreign_la_CFLAGS = $(AM_CFLAGS) $(FOREIGN_CFLAGS)
### the head, and not the other way!
modlibexec_LTLIBRARIES = libcli.la libprotocol-cli.la \
libprotocol-simple.la libprotocol-http.la \
- libprotocol-native.la $(am__append_78) $(am__append_79) \
- $(am__append_80) $(am__append_81) $(am__append_88) \
+ libprotocol-native.la $(am__append_79) $(am__append_80) \
+ $(am__append_81) $(am__append_82) $(am__append_89) \
module-cli.la module-cli-protocol-tcp.la \
module-simple-protocol-tcp.la module-null-sink.la \
module-null-source.la module-sine-source.la module-detect.la \
@@ -4667,16 +4689,16 @@ modlibexec_LTLIBRARIES = libcli.la libprotocol-cli.la \
module-switch-on-connect.la module-switch-on-port-available.la \
module-filter-apply.la module-filter-heuristics.la \
module-role-ducking.la module-allow-passthrough.la \
- $(am__append_89) $(am__append_90) $(am__append_91) \
- $(am__append_92) $(am__append_93) $(am__append_94) \
- $(am__append_95) $(am__append_96) $(am__append_97) \
- $(am__append_98) $(am__append_99) $(am__append_100) \
- $(am__append_101) $(am__append_102) $(am__append_103) \
- $(am__append_104) $(am__append_105) $(am__append_106) \
- $(am__append_107) $(am__append_109) $(am__append_111) \
- $(am__append_112) $(am__append_113) $(am__append_114) \
- $(am__append_115) $(am__append_116) $(am__append_117) \
- $(am__append_118) $(am__append_119) $(am__append_120)
+ $(am__append_90) $(am__append_91) $(am__append_92) \
+ $(am__append_93) $(am__append_94) $(am__append_95) \
+ $(am__append_96) $(am__append_97) $(am__append_98) \
+ $(am__append_99) $(am__append_100) $(am__append_101) \
+ $(am__append_102) $(am__append_103) $(am__append_104) \
+ $(am__append_105) $(am__append_106) $(am__append_107) \
+ $(am__append_108) $(am__append_110) $(am__append_112) \
+ $(am__append_113) $(am__append_114) $(am__append_115) \
+ $(am__append_116) $(am__append_117) $(am__append_118) \
+ $(am__append_119) $(am__append_120) $(am__append_121)
libprotocol_simple_la_SOURCES = pulsecore/protocol-simple.c pulsecore/protocol-simple.h
libprotocol_simple_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
libprotocol_simple_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINOR@.la libpulsecommon-@PA_MAJORMINOR@.la libpulse.la
@@ -4691,11 +4713,11 @@ libprotocol_http_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
libprotocol_http_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINOR@.la libpulsecommon-@PA_MAJORMINOR@.la libpulse.la
libprotocol_native_la_SOURCES = pulsecore/protocol-native.c pulsecore/protocol-native.h pulsecore/native-common.h
libprotocol_native_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) \
- $(am__append_82)
+ $(am__append_83)
libprotocol_native_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
libprotocol_native_la_LIBADD = $(AM_LIBADD) \
libpulsecore-@PA_MAJORMINOR@.la \
- libpulsecommon-@PA_MAJORMINOR@.la libpulse.la $(am__append_83)
+ libpulsecommon-@PA_MAJORMINOR@.la libpulse.la $(am__append_84)
@HAVE_ESOUND_TRUE@libprotocol_esound_la_SOURCES = pulsecore/protocol-esound.c pulsecore/protocol-esound.h pulsecore/esound.h
@HAVE_ESOUND_TRUE@libprotocol_esound_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
@HAVE_ESOUND_TRUE@libprotocol_esound_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINOR@.la libpulsecommon-@PA_MAJORMINOR@.la libpulse.la
@@ -4703,11 +4725,11 @@ librtp_la_SOURCES = modules/rtp/rtp-common.c modules/rtp/rtp.h \
modules/rtp/sdp.c modules/rtp/sdp.h modules/rtp/sap.c \
modules/rtp/sap.h modules/rtp/rtsp_client.c \
modules/rtp/rtsp_client.h modules/rtp/headerlist.c \
- modules/rtp/headerlist.h $(am__append_84) $(am__append_87)
-librtp_la_CFLAGS = $(AM_CFLAGS) $(am__append_85)
+ modules/rtp/headerlist.h $(am__append_85) $(am__append_88)
+librtp_la_CFLAGS = $(AM_CFLAGS) $(am__append_86)
librtp_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
librtp_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINOR@.la \
- libpulsecommon-@PA_MAJORMINOR@.la libpulse.la $(am__append_86)
+ libpulsecommon-@PA_MAJORMINOR@.la libpulse.la $(am__append_87)
libraop_la_SOURCES = \
modules/raop/raop-util.c modules/raop/raop-util.h \
modules/raop/raop-crypto.c modules/raop/raop-crypto.h \
@@ -4728,6 +4750,7 @@ libavahi_wrap_la_LIBADD = $(AM_LIBADD) $(AVAHI_CFLAGS) libpulsecore-@PA_MAJORMIN
@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/default.conf \
@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/force-speaker.conf \
@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf \
+@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/audigy.conf \
@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/maudio-fasttrack-pro.conf \
@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/native-instruments-audio4dj.conf \
@HAVE_ALSA_TRUE@ modules/alsa/mixer/profile-sets/native-instruments-audio8dj.conf \
@@ -4944,10 +4967,10 @@ module_remap_source_la_CFLAGS = $(AM_CFLAGS) -DPA_MODULE_NAME=module_remap_sourc
module_ladspa_sink_la_SOURCES = modules/module-ladspa-sink.c modules/ladspa.h
module_ladspa_sink_la_CFLAGS = -DLADSPA_PATH="$(libdir)/ladspa:/usr/local/lib/ladspa:/usr/lib/ladspa:/usr/local/lib64/ladspa:/usr/lib64/ladspa" \
$(AM_CFLAGS) $(SERVER_CFLAGS) \
- -DPA_MODULE_NAME=module_ladspa_sink $(am__append_122)
+ -DPA_MODULE_NAME=module_ladspa_sink $(am__append_123)
module_ladspa_sink_la_LDFLAGS = $(MODULE_LDFLAGS)
module_ladspa_sink_la_LIBADD = $(MODULE_LIBADD) $(LIBLTDL) \
- $(am__append_123)
+ $(am__append_124)
module_equalizer_sink_la_SOURCES = modules/module-equalizer-sink.c
module_equalizer_sink_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) $(DBUS_CFLAGS) $(FFTW_CFLAGS) -DPA_MODULE_NAME=module_equalizer_sink
module_equalizer_sink_la_LDFLAGS = $(MODULE_LDFLAGS)
@@ -5039,12 +5062,12 @@ libalsa_util_la_SOURCES = modules/alsa/alsa-util.c \
modules/alsa/alsa-mixer.h modules/alsa/alsa-sink.c \
modules/alsa/alsa-sink.h modules/alsa/alsa-source.c \
modules/alsa/alsa-source.h modules/reserve-wrap.c \
- modules/reserve-wrap.h $(am__append_124) $(am__append_127)
+ modules/reserve-wrap.h $(am__append_125) $(am__append_128)
libalsa_util_la_LDFLAGS = -avoid-version
libalsa_util_la_LIBADD = $(MODULE_LIBADD) $(ASOUNDLIB_LIBS) \
- $(am__append_125) $(am__append_128)
+ $(am__append_126) $(am__append_129)
libalsa_util_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) \
- $(ASOUNDLIB_CFLAGS) $(am__append_126) $(am__append_129)
+ $(ASOUNDLIB_CFLAGS) $(am__append_127) $(am__append_130)
module_alsa_sink_la_SOURCES = modules/alsa/module-alsa-sink.c
module_alsa_sink_la_LDFLAGS = $(MODULE_LDFLAGS)
module_alsa_sink_la_LIBADD = $(MODULE_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la
@@ -5151,17 +5174,17 @@ module_device_manager_la_CFLAGS = $(AM_CFLAGS) -DPA_MODULE_NAME=module_device_ma
module_device_restore_la_SOURCES = modules/module-device-restore.c
module_device_restore_la_LDFLAGS = $(MODULE_LDFLAGS)
module_device_restore_la_LIBADD = $(MODULE_LIBADD) \
- libprotocol-native.la $(am__append_130)
+ libprotocol-native.la $(am__append_131)
module_device_restore_la_CFLAGS = $(AM_CFLAGS) \
- -DPA_MODULE_NAME=module_device_restore $(am__append_131)
+ -DPA_MODULE_NAME=module_device_restore $(am__append_132)
# Stream volume/muted/device restore module
module_stream_restore_la_SOURCES = modules/module-stream-restore.c
module_stream_restore_la_LDFLAGS = $(MODULE_LDFLAGS)
module_stream_restore_la_LIBADD = $(MODULE_LIBADD) \
- libprotocol-native.la $(am__append_132)
+ libprotocol-native.la $(am__append_133)
module_stream_restore_la_CFLAGS = $(AM_CFLAGS) \
- -DPA_MODULE_NAME=module_stream_restore $(am__append_133)
+ -DPA_MODULE_NAME=module_stream_restore $(am__append_134)
# Card profile restore module
module_card_restore_la_SOURCES = modules/module-card-restore.c
@@ -5209,13 +5232,13 @@ module_suspend_on_idle_la_CFLAGS = $(AM_CFLAGS) -DPA_MODULE_NAME=module_suspend_
module_echo_cancel_la_SOURCES = \
modules/echo-cancel/module-echo-cancel.c \
modules/echo-cancel/null.c modules/echo-cancel/echo-cancel.h \
- $(am__append_134) $(am__append_139)
+ $(am__append_135) $(am__append_140)
module_echo_cancel_la_LDFLAGS = $(MODULE_LDFLAGS)
-module_echo_cancel_la_LIBADD = $(MODULE_LIBADD) $(am__append_137) \
- $(am__append_141) $(am__append_143)
+module_echo_cancel_la_LIBADD = $(MODULE_LIBADD) $(am__append_138) \
+ $(am__append_142) $(am__append_144)
module_echo_cancel_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) \
- -DPA_MODULE_NAME=module_echo_cancel $(am__append_135) \
- $(am__append_138) $(am__append_140) $(am__append_142)
+ -DPA_MODULE_NAME=module_echo_cancel $(am__append_136) \
+ $(am__append_139) $(am__append_141) $(am__append_143)
@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@nodist_module_echo_cancel_la_SOURCES = \
@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@ modules/echo-cancel/adrian-aec-orc-gen.c \
@HAVE_ADRIAN_EC_TRUE@@HAVE_ORC_TRUE@ modules/echo-cancel/adrian-aec-orc-gen.h
@@ -5314,7 +5337,7 @@ libbluez5_util_la_SOURCES = modules/bluetooth/bluez5-util.c \
modules/bluetooth/a2dp-codec-util.c \
modules/bluetooth/a2dp-codec-util.h \
modules/bluetooth/a2dp-codecs.h modules/bluetooth/rtp.h \
- $(am__append_144) $(am__append_145) \
+ $(am__append_145) $(am__append_146) \
modules/bluetooth/a2dp-codec-sbc.c
libbluez5_util_la_LDFLAGS = -avoid-version
libbluez5_util_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS) $(SBC_LIBS)
@@ -7078,6 +7101,12 @@ tests/gtk_test-gtk-test.$(OBJEXT): tests/$(am__dirstamp) \
gtk-test$(EXEEXT): $(gtk_test_OBJECTS) $(gtk_test_DEPENDENCIES) $(EXTRA_gtk_test_DEPENDENCIES)
@rm -f gtk-test$(EXEEXT)
$(AM_V_CCLD)$(gtk_test_LINK) $(gtk_test_OBJECTS) $(gtk_test_LDADD) $(LIBS)
+tests/hashmap_test-hashmap-test.$(OBJEXT): tests/$(am__dirstamp) \
+ tests/$(DEPDIR)/$(am__dirstamp)
+
+hashmap-test$(EXEEXT): $(hashmap_test_OBJECTS) $(hashmap_test_DEPENDENCIES) $(EXTRA_hashmap_test_DEPENDENCIES)
+ @rm -f hashmap-test$(EXEEXT)
+ $(AM_V_CCLD)$(hashmap_test_LINK) $(hashmap_test_OBJECTS) $(hashmap_test_LDADD) $(LIBS)
tests/hook_list_test-hook-list-test.$(OBJEXT): tests/$(am__dirstamp) \
tests/$(DEPDIR)/$(am__dirstamp)
@@ -7792,6 +7821,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/format_test-format-test.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/get_binary_name_test-get-binary-name-test.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/gtk_test-gtk-test.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/hashmap_test-hashmap-test.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/hook_list_test-hook-list-test.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/interpol_test-interpol-test.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/ipacl_test-ipacl-test.Po@am__quote@ # am--include-marker
@@ -10526,6 +10556,20 @@ tests/gtk_test-gtk-test.obj: tests/gtk-test.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gtk_test_CFLAGS) $(CFLAGS) -c -o tests/gtk_test-gtk-test.obj `if test -f 'tests/gtk-test.c'; then $(CYGPATH_W) 'tests/gtk-test.c'; else $(CYGPATH_W) '$(srcdir)/tests/gtk-test.c'; fi`
+tests/hashmap_test-hashmap-test.o: tests/hashmap-test.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(hashmap_test_CFLAGS) $(CFLAGS) -MT tests/hashmap_test-hashmap-test.o -MD -MP -MF tests/$(DEPDIR)/hashmap_test-hashmap-test.Tpo -c -o tests/hashmap_test-hashmap-test.o `test -f 'tests/hashmap-test.c' || echo '$(srcdir)/'`tests/hashmap-test.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/hashmap_test-hashmap-test.Tpo tests/$(DEPDIR)/hashmap_test-hashmap-test.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/hashmap-test.c' object='tests/hashmap_test-hashmap-test.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(hashmap_test_CFLAGS) $(CFLAGS) -c -o tests/hashmap_test-hashmap-test.o `test -f 'tests/hashmap-test.c' || echo '$(srcdir)/'`tests/hashmap-test.c
+
+tests/hashmap_test-hashmap-test.obj: tests/hashmap-test.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(hashmap_test_CFLAGS) $(CFLAGS) -MT tests/hashmap_test-hashmap-test.obj -MD -MP -MF tests/$(DEPDIR)/hashmap_test-hashmap-test.Tpo -c -o tests/hashmap_test-hashmap-test.obj `if test -f 'tests/hashmap-test.c'; then $(CYGPATH_W) 'tests/hashmap-test.c'; else $(CYGPATH_W) '$(srcdir)/tests/hashmap-test.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/hashmap_test-hashmap-test.Tpo tests/$(DEPDIR)/hashmap_test-hashmap-test.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/hashmap-test.c' object='tests/hashmap_test-hashmap-test.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(hashmap_test_CFLAGS) $(CFLAGS) -c -o tests/hashmap_test-hashmap-test.obj `if test -f 'tests/hashmap-test.c'; then $(CYGPATH_W) 'tests/hashmap-test.c'; else $(CYGPATH_W) '$(srcdir)/tests/hashmap-test.c'; fi`
+
tests/hook_list_test-hook-list-test.o: tests/hook-list-test.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(hook_list_test_CFLAGS) $(CFLAGS) -MT tests/hook_list_test-hook-list-test.o -MD -MP -MF tests/$(DEPDIR)/hook_list_test-hook-list-test.Tpo -c -o tests/hook_list_test-hook-list-test.o `test -f 'tests/hook-list-test.c' || echo '$(srcdir)/'`tests/hook-list-test.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/hook_list_test-hook-list-test.Tpo tests/$(DEPDIR)/hook_list_test-hook-list-test.Po
@@ -11651,23 +11695,23 @@ recheck: all $(check_PROGRAMS)
am__force_recheck=am--force-recheck \
TEST_LOGS="$$log_list"; \
exit $$?
-core-util-test.log: core-util-test$(EXEEXT)
- @p='core-util-test$(EXEEXT)'; \
- b='core-util-test'; \
+asyncmsgq-test.log: asyncmsgq-test$(EXEEXT)
+ @p='asyncmsgq-test$(EXEEXT)'; \
+ b='asyncmsgq-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-mainloop-test.log: mainloop-test$(EXEEXT)
- @p='mainloop-test$(EXEEXT)'; \
- b='mainloop-test'; \
+asyncq-test.log: asyncq-test$(EXEEXT)
+ @p='asyncq-test$(EXEEXT)'; \
+ b='asyncq-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-strlist-test.log: strlist-test$(EXEEXT)
- @p='strlist-test$(EXEEXT)'; \
- b='strlist-test'; \
+channelmap-test.log: channelmap-test$(EXEEXT)
+ @p='channelmap-test$(EXEEXT)'; \
+ b='channelmap-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
@@ -11679,44 +11723,44 @@ close-test.log: close-test$(EXEEXT)
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-memblockq-test.log: memblockq-test$(EXEEXT)
- @p='memblockq-test$(EXEEXT)'; \
- b='memblockq-test'; \
+core-util-test.log: core-util-test$(EXEEXT)
+ @p='core-util-test$(EXEEXT)'; \
+ b='core-util-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-channelmap-test.log: channelmap-test$(EXEEXT)
- @p='channelmap-test$(EXEEXT)'; \
- b='channelmap-test'; \
+cpu-mix-test.log: cpu-mix-test$(EXEEXT)
+ @p='cpu-mix-test$(EXEEXT)'; \
+ b='cpu-mix-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-thread-mainloop-test.log: thread-mainloop-test$(EXEEXT)
- @p='thread-mainloop-test$(EXEEXT)'; \
- b='thread-mainloop-test'; \
+cpu-remap-test.log: cpu-remap-test$(EXEEXT)
+ @p='cpu-remap-test$(EXEEXT)'; \
+ b='cpu-remap-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-utf8-test.log: utf8-test$(EXEEXT)
- @p='utf8-test$(EXEEXT)'; \
- b='utf8-test'; \
+cpu-sconv-test.log: cpu-sconv-test$(EXEEXT)
+ @p='cpu-sconv-test$(EXEEXT)'; \
+ b='cpu-sconv-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-format-test.log: format-test$(EXEEXT)
- @p='format-test$(EXEEXT)'; \
- b='format-test'; \
+cpu-volume-test.log: cpu-volume-test$(EXEEXT)
+ @p='cpu-volume-test$(EXEEXT)'; \
+ b='cpu-volume-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-json-test.log: json-test$(EXEEXT)
- @p='json-test$(EXEEXT)'; \
- b='json-test'; \
+format-test.log: format-test$(EXEEXT)
+ @p='format-test$(EXEEXT)'; \
+ b='format-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
@@ -11728,6 +11772,13 @@ get-binary-name-test.log: get-binary-name-test$(EXEEXT)
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
+hashmap-test.log: hashmap-test$(EXEEXT)
+ @p='hashmap-test$(EXEEXT)'; \
+ b='hashmap-test'; \
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+ --log-file $$b.log --trs-file $$b.trs \
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
hook-list-test.log: hook-list-test$(EXEEXT)
@p='hook-list-test$(EXEEXT)'; \
b='hook-list-test'; \
@@ -11735,128 +11786,128 @@ hook-list-test.log: hook-list-test$(EXEEXT)
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-memblock-test.log: memblock-test$(EXEEXT)
- @p='memblock-test$(EXEEXT)'; \
- b='memblock-test'; \
+json-test.log: json-test$(EXEEXT)
+ @p='json-test$(EXEEXT)'; \
+ b='json-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-asyncq-test.log: asyncq-test$(EXEEXT)
- @p='asyncq-test$(EXEEXT)'; \
- b='asyncq-test'; \
+lfe-filter-test.log: lfe-filter-test$(EXEEXT)
+ @p='lfe-filter-test$(EXEEXT)'; \
+ b='lfe-filter-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-asyncmsgq-test.log: asyncmsgq-test$(EXEEXT)
- @p='asyncmsgq-test$(EXEEXT)'; \
- b='asyncmsgq-test'; \
+lock-autospawn-test.log: lock-autospawn-test$(EXEEXT)
+ @p='lock-autospawn-test$(EXEEXT)'; \
+ b='lock-autospawn-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-queue-test.log: queue-test$(EXEEXT)
- @p='queue-test$(EXEEXT)'; \
- b='queue-test'; \
+mainloop-test.log: mainloop-test$(EXEEXT)
+ @p='mainloop-test$(EXEEXT)'; \
+ b='mainloop-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-rtpoll-test.log: rtpoll-test$(EXEEXT)
- @p='rtpoll-test$(EXEEXT)'; \
- b='rtpoll-test'; \
+memblock-test.log: memblock-test$(EXEEXT)
+ @p='memblock-test$(EXEEXT)'; \
+ b='memblock-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-resampler-test.log: resampler-test$(EXEEXT)
- @p='resampler-test$(EXEEXT)'; \
- b='resampler-test'; \
+memblockq-test.log: memblockq-test$(EXEEXT)
+ @p='memblockq-test$(EXEEXT)'; \
+ b='memblockq-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-smoother-test.log: smoother-test$(EXEEXT)
- @p='smoother-test$(EXEEXT)'; \
- b='smoother-test'; \
+mix-test.log: mix-test$(EXEEXT)
+ @p='mix-test$(EXEEXT)'; \
+ b='mix-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-thread-test.log: thread-test$(EXEEXT)
- @p='thread-test$(EXEEXT)'; \
- b='thread-test'; \
+mult-s16-test.log: mult-s16-test$(EXEEXT)
+ @p='mult-s16-test$(EXEEXT)'; \
+ b='mult-s16-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-volume-test.log: volume-test$(EXEEXT)
- @p='volume-test$(EXEEXT)'; \
- b='volume-test'; \
+proplist-test.log: proplist-test$(EXEEXT)
+ @p='proplist-test$(EXEEXT)'; \
+ b='proplist-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-mix-test.log: mix-test$(EXEEXT)
- @p='mix-test$(EXEEXT)'; \
- b='mix-test'; \
+queue-test.log: queue-test$(EXEEXT)
+ @p='queue-test$(EXEEXT)'; \
+ b='queue-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-proplist-test.log: proplist-test$(EXEEXT)
- @p='proplist-test$(EXEEXT)'; \
- b='proplist-test'; \
+resampler-test.log: resampler-test$(EXEEXT)
+ @p='resampler-test$(EXEEXT)'; \
+ b='resampler-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-cpu-mix-test.log: cpu-mix-test$(EXEEXT)
- @p='cpu-mix-test$(EXEEXT)'; \
- b='cpu-mix-test'; \
+rtpoll-test.log: rtpoll-test$(EXEEXT)
+ @p='rtpoll-test$(EXEEXT)'; \
+ b='rtpoll-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-cpu-remap-test.log: cpu-remap-test$(EXEEXT)
- @p='cpu-remap-test$(EXEEXT)'; \
- b='cpu-remap-test'; \
+smoother-test.log: smoother-test$(EXEEXT)
+ @p='smoother-test$(EXEEXT)'; \
+ b='smoother-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-cpu-sconv-test.log: cpu-sconv-test$(EXEEXT)
- @p='cpu-sconv-test$(EXEEXT)'; \
- b='cpu-sconv-test'; \
+strlist-test.log: strlist-test$(EXEEXT)
+ @p='strlist-test$(EXEEXT)'; \
+ b='strlist-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-cpu-volume-test.log: cpu-volume-test$(EXEEXT)
- @p='cpu-volume-test$(EXEEXT)'; \
- b='cpu-volume-test'; \
+thread-mainloop-test.log: thread-mainloop-test$(EXEEXT)
+ @p='thread-mainloop-test$(EXEEXT)'; \
+ b='thread-mainloop-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-lock-autospawn-test.log: lock-autospawn-test$(EXEEXT)
- @p='lock-autospawn-test$(EXEEXT)'; \
- b='lock-autospawn-test'; \
+thread-test.log: thread-test$(EXEEXT)
+ @p='thread-test$(EXEEXT)'; \
+ b='thread-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-mult-s16-test.log: mult-s16-test$(EXEEXT)
- @p='mult-s16-test$(EXEEXT)'; \
- b='mult-s16-test'; \
+utf8-test.log: utf8-test$(EXEEXT)
+ @p='utf8-test$(EXEEXT)'; \
+ b='utf8-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
"$$tst" $(AM_TESTS_FD_REDIRECT)
-lfe-filter-test.log: lfe-filter-test$(EXEEXT)
- @p='lfe-filter-test$(EXEEXT)'; \
- b='lfe-filter-test'; \
+volume-test.log: volume-test$(EXEEXT)
+ @p='volume-test$(EXEEXT)'; \
+ b='volume-test'; \
$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
--log-file $$b.log --trs-file $$b.trs \
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
@@ -12418,6 +12469,7 @@ distclean: distclean-am
-rm -f tests/$(DEPDIR)/format_test-format-test.Po
-rm -f tests/$(DEPDIR)/get_binary_name_test-get-binary-name-test.Po
-rm -f tests/$(DEPDIR)/gtk_test-gtk-test.Po
+ -rm -f tests/$(DEPDIR)/hashmap_test-hashmap-test.Po
-rm -f tests/$(DEPDIR)/hook_list_test-hook-list-test.Po
-rm -f tests/$(DEPDIR)/interpol_test-interpol-test.Po
-rm -f tests/$(DEPDIR)/ipacl_test-ipacl-test.Po
@@ -12879,6 +12931,7 @@ maintainer-clean: maintainer-clean-am
-rm -f tests/$(DEPDIR)/format_test-format-test.Po
-rm -f tests/$(DEPDIR)/get_binary_name_test-get-binary-name-test.Po
-rm -f tests/$(DEPDIR)/gtk_test-gtk-test.Po
+ -rm -f tests/$(DEPDIR)/hashmap_test-hashmap-test.Po
-rm -f tests/$(DEPDIR)/hook_list_test-hook-list-test.Po
-rm -f tests/$(DEPDIR)/interpol_test-interpol-test.Po
-rm -f tests/$(DEPDIR)/ipacl_test-ipacl-test.Po
diff --git a/src/daemon/main.c b/src/daemon/main.c
index f1810c5..59f9312 100644
--- a/src/daemon/main.c
+++ b/src/daemon/main.c
@@ -1067,6 +1067,10 @@ int main(int argc, char *argv[]) {
c->server_type = conf->local_server_type;
#endif
+ pa_core_check_idle(c);
+
+ c->state = PA_CORE_RUNNING;
+
pa_cpu_init(&c->cpu_info);
pa_assert_se(pa_signal_init(pa_mainloop_get_api(mainloop)) == 0);
diff --git a/src/daemon/systemd/user/pulseaudio.service.in b/src/daemon/systemd/user/pulseaudio.service.in
index e2640b6..ae0caf8 100644
--- a/src/daemon/systemd/user/pulseaudio.service.in
+++ b/src/daemon/systemd/user/pulseaudio.service.in
@@ -17,7 +17,7 @@ Requires=pulseaudio.socket
ConditionUser=!root
[Service]
-ExecStart=@PA_BINARY@ --daemonize=no
+ExecStart=@PA_BINARY@ --daemonize=no --log-target=journal
LockPersonality=yes
MemoryDenyWriteExecute=yes
NoNewPrivileges=yes
diff --git a/src/meson.build b/src/meson.build
index 832c0de..8d74a31 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -1,8 +1,10 @@
libpulsecommon_sources = [
'pulse/client-conf.c',
+ 'pulse/error.c',
'pulse/fork-detect.c',
'pulse/format.c',
'pulse/json.c',
+ 'pulse/mainloop-api.c',
'pulse/xmalloc.c',
'pulse/proplist.c',
'pulse/utf8.c',
@@ -71,9 +73,11 @@ libpulsecommon_sources = [
libpulsecommon_headers = [
'pulse/client-conf.h',
+ 'pulse/error.h',
'pulse/fork-detect.h',
'pulse/format.h',
'pulse/json.h',
+ 'pulse/mainloop-api.h',
'pulse/xmalloc.h',
'pulse/proplist.h',
'pulse/utf8.h',
diff --git a/src/modules/alsa/90-pulseaudio.rules b/src/modules/alsa/90-pulseaudio.rules
index fa43cb8..2f82e8e 100644
--- a/src/modules/alsa/90-pulseaudio.rules
+++ b/src/modules/alsa/90-pulseaudio.rules
@@ -19,6 +19,7 @@ SUBSYSTEM!="sound", GOTO="pulseaudio_end"
ACTION!="change", GOTO="pulseaudio_end"
KERNEL!="card*", GOTO="pulseaudio_end"
SUBSYSTEMS=="usb", GOTO="pulseaudio_check_usb"
+SUBSYSTEMS=="pci", GOTO="pulseaudio_check_pci"
SUBSYSTEMS=="firewire", GOTO="pulseaudio_firewire_quirk"
SUBSYSTEMS=="platform", DRIVERS=="thinkpad_acpi", ENV{PULSE_IGNORE}="1"
@@ -119,6 +120,8 @@ ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1294", ENV{PULSE_PROFILE_SET}="usb-g
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1730", ENV{PULSE_PROFILE_SET}="usb-gaming-headset.conf"
# Lucidsound LS31
ATTRS{idVendor}=="2f12", ATTRS{idProduct}=="0109", ENV{PULSE_PROFILE_SET}="usb-gaming-headset.conf"
+# ID 9886:002c is for the Astro A50 Gen4
+ATTRS{idVendor}=="9886", ATTRS{idProduct}=="002c", ENV{PULSE_PROFILE_SET}="usb-gaming-headset.conf"
# ID 1038:1250 is for the Arctis 5
# ID 1037:12aa is for the Arctis 5 2019
@@ -129,6 +132,26 @@ ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1252", ENV{PULSE_PROFILE_SET}="steel
ATTRS{idVendor}=="147a", ATTRS{idProduct}=="e055", ENV{PULSE_PROFILE_SET}="cmedia-high-speed-true-hdaudio.conf"
+# HyperX Cloud Orbit S has three modes. Each mode has a separate product ID.
+# ID_SERIAL for this device is the device name + mode repeated three times.
+# ID_SERIAL is used for the ID_ID property, and the ID_ID property is used in
+# the card name in PulseAudio. The resulting card name is too long for the name
+# length limit, so we set a more sensible ID_ID here (the same as the default
+# ID_ID, but without repetition in the serial part).
+ATTRS{idVendor}=="0951", ATTRS{idProduct}=="16ff", ENV{ID_ID}="usb-HyperX_Cloud_Orbit_S_2Ch-$env{ID_USB_INTERFACE_NUM}"
+ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1702", ENV{ID_ID}="usb-HyperX_Cloud_Orbit_S_Hi-Res_2Ch-$env{ID_USB_INTERFACE_NUM}"
+ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1703", ENV{ID_ID}="usb-HyperX_Cloud_Orbit_S_3D_8Ch-$env{ID_USB_INTERFACE_NUM}"
+
+GOTO="pulseaudio_end"
+
+LABEL="pulseaudio_check_pci"
+
+# Creative SoundBlaster Audigy-based cards
+# EMU10k2/CA0100/CA0102/CA10200
+ATTRS{vendor}=="0x1102", ATTRS{device}=="0x0004", ENV{PULSE_PROFILE_SET}="audigy.conf"
+# CA0108/CA10300
+ATTRS{vendor}=="0x1102", ATTRS{device}=="0x0008", ENV{PULSE_PROFILE_SET}="audigy.conf"
+
GOTO="pulseaudio_end"
LABEL="pulseaudio_firewire_quirk"
diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
index d184aec..b1f6c49 100644
--- a/src/modules/alsa/alsa-mixer.c
+++ b/src/modules/alsa/alsa-mixer.c
@@ -107,6 +107,12 @@ struct description_map {
const char *description;
};
+struct description2_map {
+ const char *key;
+ const char *description;
+ pa_device_port_type_t type;
+};
+
static char *alsa_id_str(char *dst, size_t dst_len, pa_alsa_mixer_id *id) {
if (id->index > 0) {
snprintf(dst, dst_len, "'%s',%d", id->name, id->index);
@@ -249,10 +255,23 @@ void pa_alsa_jack_set_plugged_in(pa_alsa_jack *jack, bool plugged_in) {
}
void pa_alsa_jack_add_ucm_device(pa_alsa_jack *jack, pa_alsa_ucm_device *device) {
+ pa_alsa_ucm_device *idevice;
+ unsigned idx, prio, iprio;
+
pa_assert(jack);
pa_assert(device);
- pa_dynarray_append(jack->ucm_devices, device);
+ /* store the ucm device with the sequence of priority from low to high. this
+ * could guarantee when the jack state is changed, the device with highest
+ * priority will send to the module-switch-on-port-available last */
+ prio = device->playback_priority ? device->playback_priority : device->capture_priority;
+
+ PA_DYNARRAY_FOREACH(idevice, jack->ucm_devices, idx) {
+ iprio = idevice->playback_priority ? idevice->playback_priority : idevice->capture_priority;
+ if (iprio > prio)
+ break;
+ }
+ pa_dynarray_insert_by_index(jack->ucm_devices, device, idx);
}
void pa_alsa_jack_add_ucm_hw_mute_device(pa_alsa_jack *jack, pa_alsa_ucm_device *device) {
@@ -275,6 +294,19 @@ static const char *lookup_description(const char *key, const struct description_
return NULL;
}
+static const struct description2_map *lookup_description2(const char *key, const struct description2_map dm[], unsigned n) {
+ unsigned i;
+
+ if (!key)
+ return NULL;
+
+ for (i = 0; i < n; i++)
+ if (pa_streq(dm[i].key, key))
+ return &dm[i];
+
+ return NULL;
+}
+
struct pa_alsa_fdlist {
unsigned num_fds;
struct pollfd *fds;
@@ -726,6 +758,7 @@ void pa_alsa_path_free(pa_alsa_path *p) {
}
pa_proplist_free(p->proplist);
+ pa_xfree(p->availability_group);
pa_xfree(p->name);
pa_xfree(p->description);
pa_xfree(p->description_key);
@@ -2146,6 +2179,50 @@ static int element_parse_enumeration(pa_config_parser_state *state) {
return 0;
}
+static int parse_type(pa_config_parser_state *state) {
+ struct device_port_types {
+ const char *name;
+ pa_device_port_type_t type;
+ } device_port_types[] = {
+ { "unknown", PA_DEVICE_PORT_TYPE_UNKNOWN },
+ { "aux", PA_DEVICE_PORT_TYPE_AUX },
+ { "speaker", PA_DEVICE_PORT_TYPE_SPEAKER },
+ { "headphones", PA_DEVICE_PORT_TYPE_HEADPHONES },
+ { "line", PA_DEVICE_PORT_TYPE_LINE },
+ { "mic", PA_DEVICE_PORT_TYPE_MIC },
+ { "headset", PA_DEVICE_PORT_TYPE_HEADSET },
+ { "handset", PA_DEVICE_PORT_TYPE_HANDSET },
+ { "earpiece", PA_DEVICE_PORT_TYPE_EARPIECE },
+ { "spdif", PA_DEVICE_PORT_TYPE_SPDIF },
+ { "hdmi", PA_DEVICE_PORT_TYPE_HDMI },
+ { "tv", PA_DEVICE_PORT_TYPE_TV },
+ { "radio", PA_DEVICE_PORT_TYPE_RADIO },
+ { "video", PA_DEVICE_PORT_TYPE_VIDEO },
+ { "usb", PA_DEVICE_PORT_TYPE_USB },
+ { "bluetooth", PA_DEVICE_PORT_TYPE_BLUETOOTH },
+ { "portable", PA_DEVICE_PORT_TYPE_PORTABLE },
+ { "handsfree", PA_DEVICE_PORT_TYPE_HANDSFREE },
+ { "car", PA_DEVICE_PORT_TYPE_CAR },
+ { "hifi", PA_DEVICE_PORT_TYPE_HIFI },
+ { "phone", PA_DEVICE_PORT_TYPE_PHONE },
+ { "network", PA_DEVICE_PORT_TYPE_NETWORK },
+ { "analog", PA_DEVICE_PORT_TYPE_ANALOG },
+ };
+ pa_alsa_path *path;
+ unsigned int idx;
+
+ path = state->userdata;
+
+ for (idx = 0; idx < PA_ELEMENTSOF(device_port_types); idx++)
+ if (pa_streq(state->rvalue, device_port_types[idx].name)) {
+ path->device_port_type = device_port_types[idx].type;
+ return 0;
+ }
+
+ pa_log("[%s:%u] Invalid value for option 'type': %s", state->filename, state->lineno, state->rvalue);
+ return -1;
+}
+
static int parse_eld_device(pa_config_parser_state *state) {
pa_alsa_path *path;
uint32_t eld_device;
@@ -2628,35 +2705,37 @@ static int element_verify(pa_alsa_element *e) {
}
static int path_verify(pa_alsa_path *p) {
- static const struct description_map well_known_descriptions[] = {
- { "analog-input", N_("Analog Input") },
- { "analog-input-microphone", N_("Microphone") },
- { "analog-input-microphone-front", N_("Front Microphone") },
- { "analog-input-microphone-rear", N_("Rear Microphone") },
- { "analog-input-microphone-dock", N_("Dock Microphone") },
- { "analog-input-microphone-internal", N_("Internal Microphone") },
- { "analog-input-microphone-headset", N_("Headset Microphone") },
- { "analog-input-linein", N_("Line In") },
- { "analog-input-radio", N_("Radio") },
- { "analog-input-video", N_("Video") },
- { "analog-output", N_("Analog Output") },
- { "analog-output-headphones", N_("Headphones") },
- { "analog-output-headphones-mono", N_("Headphones Mono Output") },
- { "analog-output-lfe-on-mono", N_("LFE on Separate Mono Output") },
- { "analog-output-lineout", N_("Line Out") },
- { "analog-output-mono", N_("Analog Mono Output") },
- { "analog-output-speaker", N_("Speakers") },
- { "hdmi-output", N_("HDMI / DisplayPort") },
- { "iec958-stereo-output", N_("Digital Output (S/PDIF)") },
- { "iec958-stereo-input", N_("Digital Input (S/PDIF)") },
- { "iec958-passthrough-output", N_("Digital Passthrough (S/PDIF)") },
- { "multichannel-input", N_("Multichannel Input") },
- { "multichannel-output", N_("Multichannel Output") },
- { "steelseries-arctis-5-output-game", N_("Game Output") },
- { "steelseries-arctis-5-output-chat", N_("Chat Output") },
+ static const struct description2_map well_known_descriptions[] = {
+ { "analog-input", N_("Analog Input"), PA_DEVICE_PORT_TYPE_ANALOG },
+ { "analog-input-microphone", N_("Microphone"), PA_DEVICE_PORT_TYPE_MIC },
+ { "analog-input-microphone-front", N_("Front Microphone"), PA_DEVICE_PORT_TYPE_MIC },
+ { "analog-input-microphone-rear", N_("Rear Microphone"), PA_DEVICE_PORT_TYPE_MIC },
+ { "analog-input-microphone-dock", N_("Dock Microphone"), PA_DEVICE_PORT_TYPE_MIC },
+ { "analog-input-microphone-internal", N_("Internal Microphone"), PA_DEVICE_PORT_TYPE_MIC },
+ { "analog-input-microphone-headset", N_("Headset Microphone"), PA_DEVICE_PORT_TYPE_MIC },
+ { "analog-input-linein", N_("Line In"), PA_DEVICE_PORT_TYPE_LINE },
+ { "analog-input-radio", N_("Radio"), PA_DEVICE_PORT_TYPE_RADIO },
+ { "analog-input-video", N_("Video"), PA_DEVICE_PORT_TYPE_VIDEO },
+ { "analog-output", N_("Analog Output"), PA_DEVICE_PORT_TYPE_ANALOG },
+ { "analog-output-headphones", N_("Headphones"), PA_DEVICE_PORT_TYPE_HEADPHONES },
+ { "analog-output-headphones-mono", N_("Headphones Mono Output"), PA_DEVICE_PORT_TYPE_HEADPHONES },
+ { "analog-output-lineout", N_("Line Out"), PA_DEVICE_PORT_TYPE_LINE },
+ { "analog-output-mono", N_("Analog Mono Output"), PA_DEVICE_PORT_TYPE_ANALOG },
+ { "analog-output-speaker", N_("Speakers"), PA_DEVICE_PORT_TYPE_SPEAKER },
+ { "hdmi-output", N_("HDMI / DisplayPort"), PA_DEVICE_PORT_TYPE_HDMI },
+ { "iec958-stereo-output", N_("Digital Output (S/PDIF)"), PA_DEVICE_PORT_TYPE_SPDIF },
+ { "iec958-stereo-input", N_("Digital Input (S/PDIF)"), PA_DEVICE_PORT_TYPE_SPDIF },
+ { "multichannel-input", N_("Multichannel Input"), PA_DEVICE_PORT_TYPE_LINE },
+ { "multichannel-output", N_("Multichannel Output"), PA_DEVICE_PORT_TYPE_LINE },
+ { "steelseries-arctis-output-game-common", N_("Game Output"), PA_DEVICE_PORT_TYPE_HEADSET },
+ { "steelseries-arctis-output-chat-common", N_("Chat Output"), PA_DEVICE_PORT_TYPE_HEADSET },
};
pa_alsa_element *e;
+ const char *key = p->description_key ? p->description_key : p->name;
+ const struct description2_map *map = lookup_description2(key,
+ well_known_descriptions,
+ PA_ELEMENTSOF(well_known_descriptions));
pa_assert(p);
@@ -2664,10 +2743,12 @@ static int path_verify(pa_alsa_path *p) {
if (element_verify(e) < 0)
return -1;
- if (!p->description)
- p->description = pa_xstrdup(lookup_description(p->description_key ? p->description_key : p->name,
- well_known_descriptions,
- PA_ELEMENTSOF(well_known_descriptions)));
+ if (map) {
+ if (p->device_port_type == PA_DEVICE_PORT_TYPE_UNKNOWN)
+ p->device_port_type = map->type;
+ if (!p->description)
+ p->description = pa_xstrdup(map->description);
+ }
if (!p->description) {
if (p->description_key)
@@ -2700,6 +2781,7 @@ pa_alsa_path* pa_alsa_path_new(const char *paths_dir, const char *fname, pa_alsa
{ "priority", pa_config_parse_unsigned, NULL, "General" },
{ "description-key", pa_config_parse_string, NULL, "General" },
{ "description", pa_config_parse_string, NULL, "General" },
+ { "type", parse_type, NULL, "General" },
{ "mute-during-activation", pa_config_parse_bool, NULL, "General" },
{ "eld-device", parse_eld_device, NULL, "General" },
@@ -3632,6 +3714,7 @@ static void mapping_free(pa_alsa_mapping *m) {
pa_xfree(m->name);
pa_xfree(m->description);
+ pa_xfree(m->description_key);
pa_proplist_free(m->proplist);
@@ -3658,6 +3741,7 @@ static void profile_free(pa_alsa_profile *p) {
pa_xfree(p->name);
pa_xfree(p->description);
+ pa_xfree(p->description_key);
pa_xfree(p->input_name);
pa_xfree(p->output_name);
@@ -3932,6 +4016,30 @@ static int mapping_parse_description(pa_config_parser_state *state) {
return 0;
}
+static int mapping_parse_description_key(pa_config_parser_state *state) {
+ pa_alsa_profile_set *ps;
+ pa_alsa_profile *p;
+ pa_alsa_mapping *m;
+
+ pa_assert(state);
+
+ ps = state->userdata;
+
+ if ((m = pa_alsa_mapping_get(ps, state->section))) {
+ pa_xfree(m->description_key);
+ m->description_key = pa_xstrdup(state->rvalue);
+ } else if ((p = profile_get(ps, state->section))) {
+ pa_xfree(p->description_key);
+ p->description_key = pa_xstrdup(state->rvalue);
+ } else {
+ pa_log("[%s:%u] Section name %s invalid.", state->filename, state->lineno, state->section);
+ return -1;
+ }
+
+ return 0;
+}
+
+
static int mapping_parse_priority(pa_config_parser_state *state) {
pa_alsa_profile_set *ps;
pa_alsa_profile *p;
@@ -4167,6 +4275,51 @@ fail:
return -1;
}
+/* the logic is simple: if we see the jack in multiple paths */
+/* assign all those jacks to one availability_group */
+static void mapping_group_available(pa_hashmap *paths)
+{
+ void *state, *state2;
+ pa_alsa_path *p, *p2;
+ pa_alsa_jack *j, *j2;
+ uint32_t num = 1;
+
+ PA_HASHMAP_FOREACH(p, paths, state) {
+ const char *found = NULL;
+ bool has_control = false;
+ PA_LLIST_FOREACH(j, p->jacks) {
+ if (!j->has_control || j->state_plugged == PA_AVAILABLE_NO)
+ continue;
+ has_control = true;
+ PA_HASHMAP_FOREACH(p2, paths, state2) {
+ if (p2 == p)
+ break;
+ PA_LLIST_FOREACH(j2, p2->jacks) {
+ if (!j2->has_control || j2->state_plugged == PA_AVAILABLE_NO)
+ continue;
+ if (pa_streq(j->name, j2->name)) {
+ j->state_plugged = PA_AVAILABLE_UNKNOWN;
+ j2->state_plugged = PA_AVAILABLE_UNKNOWN;
+ found = p2->availability_group;
+ break;
+ }
+ }
+ }
+ if (found)
+ break;
+ }
+ if (!has_control)
+ continue;
+ if (!found) {
+ p->availability_group = pa_sprintf_malloc("Legacy %d", num);
+ } else {
+ p->availability_group = pa_xstrdup(found);
+ }
+ if (!found)
+ num++;
+ }
+}
+
static void mapping_paths_probe(pa_alsa_mapping *m, pa_alsa_profile *profile,
pa_alsa_direction_t direction, pa_hashmap *used_paths,
pa_hashmap *mixers) {
@@ -4215,6 +4368,8 @@ static void mapping_paths_probe(pa_alsa_mapping *m, pa_alsa_profile *profile,
PA_HASHMAP_FOREACH(p, ps->paths, state)
pa_hashmap_put(used_paths, p, p);
+ mapping_group_available(ps->paths);
+
pa_log_debug("Available mixer paths (after tidying):");
pa_alsa_path_set_dump(ps);
}
@@ -4247,13 +4402,15 @@ static int mapping_verify(pa_alsa_mapping *m, const pa_channel_map *bonus) {
{ "analog-surround-70", N_("Analog Surround 7.0") },
{ "analog-surround-71", N_("Analog Surround 7.1") },
{ "iec958-stereo", N_("Digital Stereo (IEC958)") },
- { "iec958-passthrough", N_("Digital Passthrough (IEC958)") },
{ "iec958-ac3-surround-40", N_("Digital Surround 4.0 (IEC958/AC3)") },
{ "iec958-ac3-surround-51", N_("Digital Surround 5.1 (IEC958/AC3)") },
{ "iec958-dts-surround-51", N_("Digital Surround 5.1 (IEC958/DTS)") },
{ "hdmi-stereo", N_("Digital Stereo (HDMI)") },
{ "hdmi-surround-51", N_("Digital Surround 5.1 (HDMI)") },
+ { "gaming-headset-chat", N_("Chat") },
+ { "gaming-headset-game", N_("Game") },
};
+ const char *description_key = m->description_key ? m->description_key : m->name;
pa_assert(m);
@@ -4274,7 +4431,7 @@ static int mapping_verify(pa_alsa_mapping *m, const pa_channel_map *bonus) {
}
if (!m->description)
- m->description = pa_xstrdup(lookup_description(m->name,
+ m->description = pa_xstrdup(lookup_description(description_key,
well_known_descriptions,
PA_ELEMENTSOF(well_known_descriptions)));
@@ -4392,6 +4549,7 @@ static int profile_verify(pa_alsa_profile *p) {
{ "output:unknown-stereo+input:unknown-stereo", N_("Stereo Duplex") },
{ "off", N_("Off") }
};
+ const char *description_key = p->description_key ? p->description_key : p->name;
pa_assert(p);
@@ -4473,7 +4631,7 @@ static int profile_verify(pa_alsa_profile *p) {
}
if (!p->description)
- p->description = pa_xstrdup(lookup_description(p->name,
+ p->description = pa_xstrdup(lookup_description(description_key,
well_known_descriptions,
PA_ELEMENTSOF(well_known_descriptions)));
@@ -4597,6 +4755,7 @@ pa_alsa_profile_set* pa_alsa_profile_set_new(const char *fname, const pa_channel
/* Shared by [Mapping ...] and [Profile ...] */
{ "description", mapping_parse_description, NULL, NULL },
+ { "description-key", mapping_parse_description_key,NULL, NULL },
{ "priority", mapping_parse_priority, NULL, NULL },
{ "fallback", mapping_parse_fallback, NULL, NULL },
@@ -5013,6 +5172,8 @@ static pa_device_port* device_port_alsa_init(pa_hashmap *ports, /* card ports */
pa_device_port_new_data_set_name(&port_data, name);
pa_device_port_new_data_set_description(&port_data, description);
pa_device_port_new_data_set_direction(&port_data, path->direction == PA_ALSA_DIRECTION_OUTPUT ? PA_DIRECTION_OUTPUT : PA_DIRECTION_INPUT);
+ pa_device_port_new_data_set_type(&port_data, path->device_port_type);
+ pa_device_port_new_data_set_availability_group(&port_data, path->availability_group);
p = pa_device_port_new(core, &port_data, sizeof(pa_alsa_port_data));
pa_device_port_new_data_done(&port_data);
diff --git a/src/modules/alsa/alsa-mixer.h b/src/modules/alsa/alsa-mixer.h
index df739cc..905e312 100644
--- a/src/modules/alsa/alsa-mixer.h
+++ b/src/modules/alsa/alsa-mixer.h
@@ -211,6 +211,8 @@ struct pa_alsa_path {
char *name;
char *description_key;
char *description;
+ char *availability_group;
+ pa_device_port_type_t device_port_type;
unsigned priority;
bool autodetect_eld_device;
pa_alsa_mixer *eld_mixer_handle;
@@ -279,6 +281,7 @@ struct pa_alsa_mapping {
char *name;
char *description;
+ char *description_key;
unsigned priority;
pa_alsa_direction_t direction;
/* These are copied over to the resultant sink/source */
@@ -320,6 +323,7 @@ struct pa_alsa_profile {
char *name;
char *description;
+ char *description_key;
unsigned priority;
char *input_name;
diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c
index 042d4df..3fe429c 100644
--- a/src/modules/alsa/alsa-sink.c
+++ b/src/modules/alsa/alsa-sink.c
@@ -1152,7 +1152,7 @@ static void update_size(struct userdata *u, pa_sample_spec *ss) {
/* Called from IO context */
static int unsuspend(struct userdata *u, bool recovering) {
pa_sample_spec ss;
- int err;
+ int err, i;
bool b, d;
snd_pcm_uframes_t period_frames, buffer_frames;
snd_pcm_uframes_t tsched_frames = 0;
@@ -1172,13 +1172,26 @@ static int unsuspend(struct userdata *u, bool recovering) {
pa_snprintf(device_name, len, "%s,AES0=6", u->device_name);
}
- if ((err = snd_pcm_open(&u->pcm_handle, device_name ? device_name : u->device_name, SND_PCM_STREAM_PLAYBACK,
- SND_PCM_NONBLOCK|
- SND_PCM_NO_AUTO_RESAMPLE|
- SND_PCM_NO_AUTO_CHANNELS|
- SND_PCM_NO_AUTO_FORMAT)) < 0) {
- pa_log("Error opening PCM device %s: %s", u->device_name, pa_alsa_strerror(err));
- goto fail;
+ /*
+ * On some machines, during the system suspend and resume, the thread_func could receive
+ * POLLERR events before the dev nodes in /dev/snd/ are accessible, and thread_func calls
+ * the unsuspend() to try to recover the PCM, this will make the snd_pcm_open() fail, here
+ * we add msleep and retry to make sure those nodes are accessible.
+ */
+ for (i = 0; i < 4; i++) {
+ if ((err = snd_pcm_open(&u->pcm_handle, device_name ? device_name : u->device_name, SND_PCM_STREAM_PLAYBACK,
+ SND_PCM_NONBLOCK|
+ SND_PCM_NO_AUTO_RESAMPLE|
+ SND_PCM_NO_AUTO_CHANNELS|
+ SND_PCM_NO_AUTO_FORMAT)) < 0 && recovering)
+ pa_msleep(25);
+ else
+ break;
+ }
+
+ if (err < 0) {
+ pa_log("Error opening PCM device %s: %s", u->device_name, pa_alsa_strerror(err));
+ goto fail;
}
if (pa_frame_size(&u->sink->sample_spec) != u->frame_size) {
@@ -1654,7 +1667,7 @@ static int sink_set_port_ucm_cb(pa_sink *s, pa_device_port *p) {
pa_assert(u->ucm_context);
data = PA_DEVICE_PORT_DATA(p);
- pa_assert_se(u->mixer_path = data->path);
+ u->mixer_path = data->path;
mixer_volume_init(u);
if (s->flags & PA_SINK_DEFERRED_VOLUME)
@@ -2138,6 +2151,15 @@ static int setup_mixer(struct userdata *u, bool ignore_dB) {
pa_assert(u);
+ /* This code is before the u->mixer_handle check, because if the UCM
+ * configuration doesn't specify volume or mute controls, u->mixer_handle
+ * will be NULL, but the UCM device enable sequence will still need to be
+ * executed. */
+ if (u->sink->active_port && u->ucm_context) {
+ if (pa_alsa_ucm_set_port(u->ucm_context, u->sink->active_port, true) < 0)
+ return -1;
+ }
+
if (!u->mixer_handle)
return 0;
@@ -2155,10 +2177,6 @@ static int setup_mixer(struct userdata *u, bool ignore_dB) {
} else {
pa_alsa_ucm_port_data *data;
- /* First activate the port on the UCM side */
- if (pa_alsa_ucm_set_port(u->ucm_context, u->sink->active_port, true) < 0)
- return -1;
-
data = PA_DEVICE_PORT_DATA(u->sink->active_port);
/* Now activate volume controls, if any */
@@ -2506,8 +2524,6 @@ pa_sink *pa_alsa_sink_new(pa_module *m, pa_modargs *ma, const char*driver, pa_ca
/* ALSA might tweak the sample spec, so recalculate the frame size */
frame_size = pa_frame_size(&ss);
- find_mixer(u, mapping, pa_modargs_get_value(ma, "control", NULL), ignore_dB);
-
pa_sink_new_data_init(&data);
data.driver = driver;
data.module = m;
@@ -2531,7 +2547,7 @@ pa_sink *pa_alsa_sink_new(pa_module *m, pa_modargs *ma, const char*driver, pa_ca
pa_sink_new_data_done(&data);
goto fail;
}
- data.avoid_resampling = avoid_resampling;
+ pa_sink_new_data_set_avoid_resampling(&data, avoid_resampling);
pa_sink_new_data_set_sample_spec(&data, &ss);
pa_sink_new_data_set_channel_map(&data, &map);
@@ -2582,6 +2598,19 @@ pa_sink *pa_alsa_sink_new(pa_module *m, pa_modargs *ma, const char*driver, pa_ca
goto fail;
}
+ if (u->ucm_context) {
+ pa_device_port *port;
+ void *state;
+ unsigned h_prio = 0;
+ PA_HASHMAP_FOREACH(port, u->sink->ports, state) {
+ if (!h_prio || port->priority > h_prio)
+ h_prio = port->priority;
+ }
+ /* ucm ports prioriy is 100, 200, ..., 900, change it to units digit */
+ h_prio = h_prio / 100;
+ u->sink->priority += h_prio;
+ }
+
if (pa_modargs_get_value_u32(ma, "deferred_volume_safety_margin",
&u->sink->thread_info.volume_change_safety_margin) < 0) {
pa_log("Failed to parse deferred_volume_safety_margin parameter");
diff --git a/src/modules/alsa/alsa-source.c b/src/modules/alsa/alsa-source.c
index 104de4e..b1149c6 100644
--- a/src/modules/alsa/alsa-source.c
+++ b/src/modules/alsa/alsa-source.c
@@ -1033,7 +1033,7 @@ static void update_size(struct userdata *u, pa_sample_spec *ss) {
/* Called from IO context */
static int unsuspend(struct userdata *u, bool recovering) {
pa_sample_spec ss;
- int err;
+ int err, i;
bool b, d;
snd_pcm_uframes_t period_frames, buffer_frames;
snd_pcm_uframes_t tsched_frames = 0;
@@ -1044,12 +1044,25 @@ static int unsuspend(struct userdata *u, bool recovering) {
pa_log_info("Trying resume...");
- if ((err = snd_pcm_open(&u->pcm_handle, u->device_name, SND_PCM_STREAM_CAPTURE,
- SND_PCM_NONBLOCK|
- SND_PCM_NO_AUTO_RESAMPLE|
- SND_PCM_NO_AUTO_CHANNELS|
- SND_PCM_NO_AUTO_FORMAT)) < 0) {
- pa_log("Error opening PCM device %s: %s", u->device_name, pa_alsa_strerror(err));
+ /*
+ * On some machines, during the system suspend and resume, the thread_func could receive
+ * POLLERR events before the dev nodes in /dev/snd/ are accessible, and thread_func calls
+ * the unsuspend() to try to recover the PCM, this will make the snd_pcm_open() fail, here
+ * we add msleep and retry to make sure those nodes are accessible.
+ */
+ for (i = 0; i < 4; i++) {
+ if ((err = snd_pcm_open(&u->pcm_handle, u->device_name, SND_PCM_STREAM_CAPTURE,
+ SND_PCM_NONBLOCK|
+ SND_PCM_NO_AUTO_RESAMPLE|
+ SND_PCM_NO_AUTO_CHANNELS|
+ SND_PCM_NO_AUTO_FORMAT)) < 0 && recovering)
+ pa_msleep(25);
+ else
+ break;
+ }
+
+ if (err < 0) {
+ pa_log("Error opening PCM device %s: %s", u->device_name, pa_alsa_strerror(err));
goto fail;
}
@@ -1525,7 +1538,7 @@ static int source_set_port_ucm_cb(pa_source *s, pa_device_port *p) {
pa_assert(u->ucm_context);
data = PA_DEVICE_PORT_DATA(p);
- pa_assert_se(u->mixer_path = data->path);
+ u->mixer_path = data->path;
mixer_volume_init(u);
if (s->flags & PA_SOURCE_DEFERRED_VOLUME)
@@ -1844,6 +1857,15 @@ static int setup_mixer(struct userdata *u, bool ignore_dB) {
pa_assert(u);
+ /* This code is before the u->mixer_handle check, because if the UCM
+ * configuration doesn't specify volume or mute controls, u->mixer_handle
+ * will be NULL, but the UCM device enable sequence will still need to be
+ * executed. */
+ if (u->source->active_port && u->ucm_context) {
+ if (pa_alsa_ucm_set_port(u->ucm_context, u->source->active_port, false) < 0)
+ return -1;
+ }
+
if (!u->mixer_handle)
return 0;
@@ -1861,10 +1883,6 @@ static int setup_mixer(struct userdata *u, bool ignore_dB) {
} else {
pa_alsa_ucm_port_data *data;
- /* First activate the port on the UCM side */
- if (pa_alsa_ucm_set_port(u->ucm_context, u->source->active_port, false) < 0)
- return -1;
-
data = PA_DEVICE_PORT_DATA(u->source->active_port);
/* Now activate volume controls, if any */
@@ -2193,8 +2211,6 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
/* ALSA might tweak the sample spec, so recalculate the frame size */
frame_size = pa_frame_size(&ss);
- find_mixer(u, mapping, pa_modargs_get_value(ma, "control", NULL), ignore_dB);
-
pa_source_new_data_init(&data);
data.driver = driver;
data.module = m;
@@ -2218,7 +2234,7 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
pa_source_new_data_done(&data);
goto fail;
}
- data.avoid_resampling = avoid_resampling;
+ pa_source_new_data_set_avoid_resampling(&data, avoid_resampling);
pa_source_new_data_set_sample_spec(&data, &ss);
pa_source_new_data_set_channel_map(&data, &map);
@@ -2249,10 +2265,14 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
goto fail;
}
- if (u->ucm_context)
+ if (u->ucm_context) {
pa_alsa_ucm_add_ports(&data.ports, data.proplist, u->ucm_context, false, card, u->pcm_handle, ignore_dB);
- else if (u->mixer_path_set)
- pa_alsa_add_ports(&data, u->mixer_path_set, card);
+ find_mixer(u, mapping, pa_modargs_get_value(ma, "control", NULL), ignore_dB);
+ } else {
+ find_mixer(u, mapping, pa_modargs_get_value(ma, "control", NULL), ignore_dB);
+ if (u->mixer_path_set)
+ pa_alsa_add_ports(&data, u->mixer_path_set, card);
+ }
u->source = pa_source_new(m->core, &data, PA_SOURCE_HARDWARE|PA_SOURCE_LATENCY|(u->use_tsched ? PA_SOURCE_DYNAMIC_LATENCY : 0));
volume_is_set = data.volume_is_set;
@@ -2264,6 +2284,19 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
goto fail;
}
+ if (u->ucm_context) {
+ pa_device_port *port;
+ void *state;
+ unsigned h_prio = 0;
+ PA_HASHMAP_FOREACH(port, u->source->ports, state) {
+ if (!h_prio || port->priority > h_prio)
+ h_prio = port->priority;
+ }
+ /* ucm ports prioriy is 100, 200, ..., 900, change it to units digit */
+ h_prio = h_prio / 100;
+ u->source->priority += h_prio;
+ }
+
if (pa_modargs_get_value_u32(ma, "deferred_volume_safety_margin",
&u->source->thread_info.volume_change_safety_margin) < 0) {
pa_log("Failed to parse deferred_volume_safety_margin parameter");
diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c
index a57be6d..18925b7 100644
--- a/src/modules/alsa/alsa-ucm.c
+++ b/src/modules/alsa/alsa-ucm.c
@@ -66,6 +66,11 @@
#ifdef HAVE_ALSA_UCM
+struct ucm_type {
+ const char *prefix;
+ pa_device_port_type_t type;
+};
+
struct ucm_items {
const char *id;
const char *property;
@@ -76,6 +81,7 @@ struct ucm_info {
unsigned priority;
};
+static pa_alsa_jack* ucm_get_jack(pa_alsa_ucm_config *ucm, pa_alsa_ucm_device *device);
static void device_set_jack(pa_alsa_ucm_device *device, pa_alsa_jack *jack);
static void device_add_hw_mute_jack(pa_alsa_ucm_device *device, pa_alsa_jack *jack);
@@ -87,6 +93,21 @@ static void ucm_port_data_init(pa_alsa_ucm_port_data *port, pa_alsa_ucm_config *
static void ucm_port_data_free(pa_device_port *port);
static void ucm_port_update_available(pa_alsa_ucm_port_data *port);
+static struct ucm_type types[] = {
+ {"None", PA_DEVICE_PORT_TYPE_UNKNOWN},
+ {"Speaker", PA_DEVICE_PORT_TYPE_SPEAKER},
+ {"Line", PA_DEVICE_PORT_TYPE_LINE},
+ {"Mic", PA_DEVICE_PORT_TYPE_MIC},
+ {"Headphones", PA_DEVICE_PORT_TYPE_HEADPHONES},
+ {"Headset", PA_DEVICE_PORT_TYPE_HEADSET},
+ {"Handset", PA_DEVICE_PORT_TYPE_HANDSET},
+ {"Bluetooth", PA_DEVICE_PORT_TYPE_BLUETOOTH},
+ {"Earpiece", PA_DEVICE_PORT_TYPE_EARPIECE},
+ {"SPDIF", PA_DEVICE_PORT_TYPE_SPDIF},
+ {"HDMI", PA_DEVICE_PORT_TYPE_HDMI},
+ {NULL, 0}
+};
+
static struct ucm_items item[] = {
{"PlaybackPCM", PA_ALSA_PROP_UCM_SINK},
{"CapturePCM", PA_ALSA_PROP_UCM_SOURCE},
@@ -343,13 +364,27 @@ static int ucm_get_device_property(
const char *value;
const char **devices;
- char *id;
+ char *id, *s;
int i;
int err;
uint32_t ui;
int n_confdev, n_suppdev;
pa_alsa_ucm_volume *vol;
+ /* determine the device type */
+ device->type = PA_DEVICE_PORT_TYPE_UNKNOWN;
+ id = s = pa_xstrdup(device_name);
+ while (s && *s && isalpha(*s)) s++;
+ if (s)
+ *s = '\0';
+ for (i = 0; types[i].prefix; i++)
+ if (pa_streq(id, types[i].prefix)) {
+ device->type = types[i].type;
+ break;
+ }
+ pa_xfree(id);
+
+ /* set properties */
for (i = 0; item[i].id; i++) {
id = pa_sprintf_malloc("%s/%s", item[i].id, device_name);
err = snd_use_case_get(uc_mgr, id, &value);
@@ -377,6 +412,13 @@ static int ucm_get_device_property(
pa_log("UCM playback device %s fetch pcm failed", device_name);
}
+ if (pa_proplist_gets(device->proplist, PA_ALSA_PROP_UCM_SINK) &&
+ device->playback_channels == 0) {
+ pa_log_info("UCM file does not specify 'PlaybackChannels' "
+ "for device %s, assuming stereo.", device_name);
+ device->playback_channels = 2;
+ }
+
value = pa_proplist_gets(device->proplist, PA_ALSA_PROP_UCM_CAPTURE_CHANNELS);
if (value) { /* input */
/* get channels */
@@ -391,10 +433,10 @@ static int ucm_get_device_property(
pa_log("UCM capture device %s fetch pcm failed", device_name);
}
- if (device->playback_channels == 0 && device->capture_channels == 0) {
- pa_log_warn("UCM file does not specify 'PlaybackChannels' or 'CaptureChannels'"
- "for device %s, assuming stereo duplex.", device_name);
- device->playback_channels = 2;
+ if (pa_proplist_gets(device->proplist, PA_ALSA_PROP_UCM_SOURCE) &&
+ device->capture_channels == 0) {
+ pa_log_info("UCM file does not specify 'CaptureChannels' "
+ "for device %s, assuming stereo.", device_name);
device->capture_channels = 2;
}
@@ -715,13 +757,11 @@ static void append_lost_relationship(pa_alsa_ucm_device *dev) {
int pa_alsa_ucm_query_profiles(pa_alsa_ucm_config *ucm, int card_index) {
char *card_name;
- const char **verb_list;
+ const char **verb_list, *value;
int num_verbs, i, err = 0;
/* support multiple card instances, address card directly by index */
card_name = pa_sprintf_malloc("hw:%i", card_index);
- if (card_name == NULL)
- return -ENOMEM;
err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name);
if (err < 0) {
/* fallback longname: is UCM available for this card ? */
@@ -729,22 +769,36 @@ int pa_alsa_ucm_query_profiles(pa_alsa_ucm_config *ucm, int card_index) {
err = snd_card_get_name(card_index, &card_name);
if (err < 0) {
pa_log("Card can't get card_name from card_index %d", card_index);
+ err = -PA_ALSA_ERR_UNSPECIFIED;
goto name_fail;
}
err = snd_use_case_mgr_open(&ucm->ucm_mgr, card_name);
if (err < 0) {
pa_log_info("UCM not available for card %s", card_name);
+ err = -PA_ALSA_ERR_UCM_OPEN;
goto ucm_mgr_fail;
}
}
+ err = snd_use_case_get(ucm->ucm_mgr, "=Linked", &value);
+ if (err >= 0) {
+ if (strcasecmp(value, "true") == 0 || strcasecmp(value, "1") == 0) {
+ free((void *)value);
+ pa_log_info("Empty (linked) UCM for card %s", card_name);
+ err = -PA_ALSA_ERR_UCM_LINKED;
+ goto ucm_verb_fail;
+ }
+ free((void *)value);
+ }
+
pa_log_info("UCM available for card %s", card_name);
/* get a list of all UCM verbs (profiles) for this card */
num_verbs = snd_use_case_verb_list(ucm->ucm_mgr, &verb_list);
if (num_verbs < 0) {
pa_log("UCM verb list not found for %s", card_name);
+ err = -PA_ALSA_ERR_UNSPECIFIED;
goto ucm_verb_fail;
}
@@ -764,7 +818,7 @@ int pa_alsa_ucm_query_profiles(pa_alsa_ucm_config *ucm, int card_index) {
if (!ucm->verbs) {
pa_log("No UCM verb is valid for %s", card_name);
- err = -1;
+ err = -PA_ALSA_ERR_UCM_NO_VERB;
}
snd_use_case_free_list(verb_list, num_verbs);
@@ -893,14 +947,15 @@ static void probe_volumes(pa_hashmap *hash, bool is_sink, snd_pcm_t *pcm_handle,
mdev = NULL;
PA_DYNARRAY_FOREACH(dev, data->devices, idx) {
mdev2 = get_mixer_device(dev, is_sink);
- if (mdev && !pa_streq(mdev, mdev2)) {
+ if (mdev && mdev2 && !pa_streq(mdev, mdev2)) {
pa_log_error("Two mixer device names found ('%s', '%s'), using s/w volume", mdev, mdev2);
goto fail;
}
- mdev = mdev2;
+ if (mdev2)
+ mdev = mdev2;
}
- if (!(mixer_handle = pa_alsa_open_mixer_by_name(mixers, mdev, true))) {
+ if (mdev == NULL || !(mixer_handle = pa_alsa_open_mixer_by_name(mixers, mdev, true))) {
pa_log_error("Failed to find a working mixer device (%s).", mdev);
goto fail;
}
@@ -948,6 +1003,8 @@ static void ucm_add_port_combination(
pa_alsa_ucm_device *sorted[num], *dev;
pa_alsa_ucm_port_data *data;
pa_alsa_ucm_volume *vol;
+ pa_alsa_jack *jack, *jack2;
+ pa_device_port_type_t type, type2;
void *state;
for (i = 0; i < num; i++)
@@ -966,6 +1023,8 @@ static void ucm_add_port_combination(
priority = is_sink ? dev->playback_priority : dev->capture_priority;
prio2 = (priority == 0 ? 0 : 1.0/priority);
+ jack = ucm_get_jack(context->ucm, dev);
+ type = dev->type;
for (i = 1; i < num; i++) {
char *tmp;
@@ -984,6 +1043,20 @@ static void ucm_add_port_combination(
priority = is_sink ? dev->playback_priority : dev->capture_priority;
if (priority != 0 && prio2 > 0)
prio2 += 1.0/priority;
+
+ jack2 = ucm_get_jack(context->ucm, dev);
+ if (jack2) {
+ if (jack && jack != jack2)
+ pa_log_warn("Multiple jacks per combined device '%s': '%s' '%s'", name, jack->name, jack2->name);
+ jack = jack2;
+ }
+
+ type2 = dev->type;
+ if (type2 != PA_DEVICE_PORT_TYPE_UNKNOWN) {
+ if (type != PA_DEVICE_PORT_TYPE_UNKNOWN && type != type2)
+ pa_log_warn("Multiple device types per combined device '%s': %d %d", name, type, type2);
+ type = type2;
+ }
}
/* Make combination ports always have lower priority, and use the formula
@@ -1001,7 +1074,10 @@ static void ucm_add_port_combination(
pa_device_port_new_data_init(&port_data);
pa_device_port_new_data_set_name(&port_data, name);
pa_device_port_new_data_set_description(&port_data, desc);
+ pa_device_port_new_data_set_type(&port_data, type);
pa_device_port_new_data_set_direction(&port_data, is_sink ? PA_DIRECTION_OUTPUT : PA_DIRECTION_INPUT);
+ if (jack)
+ pa_device_port_new_data_set_availability_group(&port_data, jack->name);
port = pa_device_port_new(core, &port_data, sizeof(pa_alsa_ucm_port_data));
pa_device_port_new_data_done(&port_data);
@@ -1308,7 +1384,7 @@ int pa_alsa_ucm_set_profile(pa_alsa_ucm_config *ucm, pa_card *card, const char *
/* select volume controls on ports */
PA_HASHMAP_FOREACH(port, card->ports, state) {
data = PA_DEVICE_PORT_DATA(port);
- data->path = pa_hashmap_get(data->paths, new_profile);
+ data->path = pa_hashmap_get(data->paths, profile);
}
return ret;
@@ -1723,6 +1799,10 @@ static int ucm_create_profile(
/* JackHWMute contains a list of device names. Each listed device must
* be associated with the jack object that we just created. */
jack_hw_mute = pa_proplist_gets(dev->proplist, PA_ALSA_PROP_UCM_JACK_HW_MUTE);
+ if (jack_hw_mute && !jack) {
+ pa_log("[%s] JackHWMute set, but JackControl is missing", name);
+ jack_hw_mute = NULL;
+ }
if (jack_hw_mute) {
char *hw_mute_device_name;
const char *state = NULL;
diff --git a/src/modules/alsa/alsa-ucm.h b/src/modules/alsa/alsa-ucm.h
index e7a795c..0bb2eb5 100644
--- a/src/modules/alsa/alsa-ucm.h
+++ b/src/modules/alsa/alsa-ucm.h
@@ -179,6 +179,8 @@ struct pa_alsa_ucm_device {
pa_proplist *proplist;
+ pa_device_port_type_t type;
+
unsigned playback_priority;
unsigned capture_priority;
diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
index d86f43c..02e6ff1 100644
--- a/src/modules/alsa/alsa-util.c
+++ b/src/modules/alsa/alsa-util.c
@@ -1752,7 +1752,7 @@ snd_mixer_t *pa_alsa_open_mixer_by_name(pa_hashmap *mixers, const char *dev, boo
if (!pm && pa_strneq(dev, "hw:", 3)) {
const char *s = dev + 3;
int card_index;
- while (*s && *s >= 0 && *s <= '9') s++;
+ while (*s && *s >= '0' && *s <= '9') s++;
if (*s == '\0' && pa_atoi(dev + 3, &card_index) >= 0) {
PA_HASHMAP_FOREACH_KV(dev2, pm, mixers, state) {
if (pm->card_index == card_index) {
diff --git a/src/modules/alsa/alsa-util.h b/src/modules/alsa/alsa-util.h
index 0d3d5af..cb8be22 100644
--- a/src/modules/alsa/alsa-util.h
+++ b/src/modules/alsa/alsa-util.h
@@ -33,6 +33,13 @@
#include "alsa-mixer.h"
+enum {
+ PA_ALSA_ERR_UNSPECIFIED = 1,
+ PA_ALSA_ERR_UCM_OPEN = 1000,
+ PA_ALSA_ERR_UCM_NO_VERB = 1001,
+ PA_ALSA_ERR_UCM_LINKED = 1002
+};
+
int pa_alsa_set_hw_params(
snd_pcm_t *pcm_handle,
pa_sample_spec *ss, /* modified at return */
diff --git a/src/modules/alsa/mixer/paths/analog-input-linein.conf b/src/modules/alsa/mixer/paths/analog-input-linein.conf
index 8163ffb..cf20790 100644
--- a/src/modules/alsa/mixer/paths/analog-input-linein.conf
+++ b/src/modules/alsa/mixer/paths/analog-input-linein.conf
@@ -28,6 +28,9 @@ required-any = any
state.plugged = unknown
state.unplugged = unknown
+[Jack Line - Input]
+required-any = any
+
[Element Capture]
switch = mute
volume = merge
diff --git a/src/modules/alsa/mixer/paths/analog-input-mic.conf b/src/modules/alsa/mixer/paths/analog-input-mic.conf
index 123439b..53c03c8 100644
--- a/src/modules/alsa/mixer/paths/analog-input-mic.conf
+++ b/src/modules/alsa/mixer/paths/analog-input-mic.conf
@@ -29,6 +29,9 @@ required-any = any
state.plugged = unknown
state.unplugged = unknown
+[Jack Mic - Input]
+required-any = any
+
[Element Capture]
switch = mute
volume = merge
diff --git a/src/modules/alsa/mixer/paths/analog-output-headphones.conf b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
index d2147c5..d4ad777 100644
--- a/src/modules/alsa/mixer/paths/analog-output-headphones.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
@@ -52,6 +52,9 @@ state.unplugged = unknown
[Jack Headphone Mic]
required-any = any
+[Jack Headphone - Output]
+required-any = any
+
[Element Hardware Master]
switch = mute
volume = merge
diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker.conf b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
index 6f9968e..27a3983 100644
--- a/src/modules/alsa/mixer/paths/analog-output-speaker.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
@@ -69,6 +69,9 @@ required-any = any
state.plugged = unknown
state.unplugged = unknown
+[Jack Speaker - Output]
+required-any = any
+
[Element Hardware Master]
switch = mute
volume = merge
diff --git a/src/modules/alsa/mixer/paths/analog-output.conf.common b/src/modules/alsa/mixer/paths/analog-output.conf.common
index 7bf3463..31d4b44 100644
--- a/src/modules/alsa/mixer/paths/analog-output.conf.common
+++ b/src/modules/alsa/mixer/paths/analog-output.conf.common
@@ -53,6 +53,8 @@
; [General]
+; type = ... # The device type. It's highly recommended to set a type for every path.
+; # See parse_type() in alsa-mixer.c for supported values.
; priority = ... # Priority for this path
; description-key = ... # The path description is looked up from a table in path_verify() in
; # src/modules/alsa/alsa-mixer.c. By default the path name (i.e. the file name
diff --git a/src/modules/alsa/mixer/profile-sets/audigy.conf b/src/modules/alsa/mixer/profile-sets/audigy.conf
new file mode 100644
index 0000000..043596e
--- /dev/null
+++ b/src/modules/alsa/mixer/profile-sets/audigy.conf
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio 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 Lesser General Public License
+# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
+
+; Creative Sound Blaster Audigy product line
+;
+; These are just copies of the mappings we find in default.conf, with the
+; small change of making analog-stereo and analog-mono non-fallback mappings.
+; This is needed because these cards only support duplex profiles with mono
+; inputs, and in the default configuration, with stereo being a fallback
+; mapping, the mono mapping is never tried.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = yes
+
+# Based on stereo-fallback
+[Mapping analog-stereo]
+device-strings = hw:%f
+channel-map = front-left,front-right
+paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-headphones analog-output-headphones-2
+paths-input = analog-input-front-mic analog-input-rear-mic analog-input-internal-mic analog-input-dock-mic analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line analog-input-headphone-mic analog-input-headset-mic
+priority = 1
+
+# Based on mono-fallback
+[Mapping analog-mono]
+device-strings = hw:%f
+channel-map = mono
+paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono
+paths-input = analog-input-front-mic analog-input-rear-mic analog-input-internal-mic analog-input-dock-mic analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line analog-input-headset-mic
+priority = 1
+
+# The rest of these are identical to what's in default.conf
+[Mapping analog-surround-21]
+device-strings = surround21:%f
+channel-map = front-left,front-right,lfe
+paths-output = analog-output analog-output-lineout analog-output-speaker
+priority = 13
+direction = output
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-lineout analog-output-speaker
+priority = 12
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-lineout analog-output-speaker
+priority = 13
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-lineout analog-output-speaker
+priority = 12
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-lineout analog-output-speaker
+priority = 13
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-lineout analog-output-speaker
+priority = 12
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+paths-input = iec958-stereo-input
+paths-output = iec958-stereo-output
+priority = 5
diff --git a/src/modules/alsa/mixer/profile-sets/steelseries-arctis-common-usb-audio.conf b/src/modules/alsa/mixer/profile-sets/steelseries-arctis-common-usb-audio.conf
index 5f11ed1..0c58917 100644
--- a/src/modules/alsa/mixer/profile-sets/steelseries-arctis-common-usb-audio.conf
+++ b/src/modules/alsa/mixer/profile-sets/steelseries-arctis-common-usb-audio.conf
@@ -2,7 +2,7 @@
auto-profiles = yes
[Mapping analog-chat]
-description = Chat
+description-key = gaming-headset-chat
device-strings = hw:%f,0,0
channel-map = left,right
paths-input = analog-input-mic
@@ -10,7 +10,7 @@ paths-output = steelseries-arctis-output-chat-common
intended-roles = phone
[Mapping analog-game]
-description = Game
+description-key = gaming-headset-game
device-strings = hw:%f,1,0
channel-map = left,right
paths-output = steelseries-arctis-output-game-common
diff --git a/src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf b/src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf
index f48b44f..adda54d 100644
--- a/src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf
+++ b/src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf
@@ -14,36 +14,51 @@
# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
; USB gaming headset.
-; These headsets usually have two output devices. The first one is mono,
-; meant for voice audio, and the second one is stereo, meant for everything
-; else. The purpose of this unusual design is to provide separate volume
+; These headsets usually have two output devices. The first one is meant
+; for voice audio, and the second one is meant for everything else.
+; The purpose of this unusual design is to provide separate volume
; controls for voice and other audio, which can be useful in gaming.
;
; Works with:
; Steelseries Arctis 7
; Steelseries Arctis Pro Wireless.
; Lucidsound LS31
+; Astro A50
;
; See default.conf for an explanation on the directives used here.
[General]
auto-profiles = yes
-[Mapping analog-mono]
+[Mapping mono-chat]
+description-key = gaming-headset-chat
device-strings = hw:%f,0,0
channel-map = mono
paths-output = usb-gaming-headset-output-mono
paths-input = usb-gaming-headset-input
intended-roles = phone
-[Mapping analog-stereo]
+[Mapping stereo-chat]
+description-key = gaming-headset-chat
+device-strings = hw:%f,0,0
+channel-map = left,right
+paths-output = usb-gaming-headset-output-stereo
+paths-input = usb-gaming-headset-input
+intended-roles = phone
+
+[Mapping stereo-game]
+description-key = gaming-headset-game
device-strings = hw:%f,1,0
channel-map = left,right
paths-output = usb-gaming-headset-output-stereo
direction = output
-[Profile output:analog-mono+output:analog-stereo+input:analog-mono]
-output-mappings = analog-mono analog-stereo
-input-mappings = analog-mono
+[Profile output:mono-chat+output:stereo-game+input:mono-chat]
+output-mappings = mono-chat stereo-game
+input-mappings = mono-chat
+priority = 5100
+
+[Profile output:stereo-game+output:stereo-chat+input:mono-chat]
+output-mappings = stereo-game stereo-chat
+input-mappings = mono-chat
priority = 5100
-skip-probe = yes
diff --git a/src/modules/alsa/module-alsa-card.c b/src/modules/alsa/module-alsa-card.c
index c5852b4..267d30c 100644
--- a/src/modules/alsa/module-alsa-card.c
+++ b/src/modules/alsa/module-alsa-card.c
@@ -144,7 +144,7 @@ static void add_profiles(struct userdata *u, pa_hashmap *h, pa_hashmap *ports) {
uint32_t idx;
cp = pa_card_profile_new(ap->name, ap->description, sizeof(struct profile_data));
- cp->priority = ap->priority;
+ cp->priority = ap->priority ? ap->priority : 1;
cp->input_name = pa_xstrdup(ap->input_name);
cp->output_name = pa_xstrdup(ap->output_name);
@@ -785,6 +785,7 @@ int pa__init(pa_module *m) {
const char *profile_str = NULL;
char *fn = NULL;
bool namereg_fail = false;
+ int err = -PA_MODULE_ERR_UNSPECIFIED, rval;
pa_alsa_refcnt_inc();
@@ -841,7 +842,12 @@ int pa__init(pa_module *m) {
snd_config_update_free_global();
- if (u->use_ucm && !pa_alsa_ucm_query_profiles(&u->ucm, u->alsa_card_index)) {
+ rval = u->use_ucm ? pa_alsa_ucm_query_profiles(&u->ucm, u->alsa_card_index) : -1;
+ if (rval == -PA_ALSA_ERR_UCM_LINKED) {
+ err = -PA_MODULE_ERR_SKIP;
+ goto fail;
+ }
+ if (rval == 0) {
pa_log_info("Found UCM profiles");
u->profile_set = pa_alsa_ucm_add_profile_set(&u->ucm, &u->core->default_channel_map);
@@ -1009,7 +1015,7 @@ fail:
pa__done(m);
- return -1;
+ return err;
}
int pa__get_n_used(pa_module *m) {
diff --git a/src/modules/bluetooth/bluez5-util.c b/src/modules/bluetooth/bluez5-util.c
index d95c9c1..a21896e 100644
--- a/src/modules/bluetooth/bluez5-util.c
+++ b/src/modules/bluetooth/bluez5-util.c
@@ -944,8 +944,9 @@ static void parse_interfaces_and_properties(pa_bluetooth_discovery *y, DBusMessa
pa_assert(dbus_message_iter_get_arg_type(&iface_i) == DBUS_TYPE_ARRAY);
if (pa_streq(interface, BLUEZ_ADAPTER_INTERFACE)) {
+
+ const pa_a2dp_codec *a2dp_codec_sbc;
pa_bluetooth_adapter *a;
- unsigned a2dp_codec_i;
if ((a = pa_hashmap_get(y->adapters, path))) {
pa_log_error("Found duplicated D-Bus path for adapter %s", path);
@@ -960,20 +961,13 @@ static void parse_interfaces_and_properties(pa_bluetooth_discovery *y, DBusMessa
if (!a->valid)
return;
- /* Order is important. bluez prefers endpoints registered earlier.
- * And codec with higher number has higher priority. So iterate in reverse order. */
- for (a2dp_codec_i = pa_bluetooth_a2dp_codec_count(); a2dp_codec_i > 0; a2dp_codec_i--) {
- const pa_a2dp_codec *a2dp_codec = pa_bluetooth_a2dp_codec_iter(a2dp_codec_i-1);
- char *endpoint;
-
- endpoint = pa_sprintf_malloc("%s/%s", A2DP_SINK_ENDPOINT, a2dp_codec->name);
- register_endpoint(y, a2dp_codec, path, endpoint, PA_BLUETOOTH_UUID_A2DP_SINK);
- pa_xfree(endpoint);
-
- endpoint = pa_sprintf_malloc("%s/%s", A2DP_SOURCE_ENDPOINT, a2dp_codec->name);
- register_endpoint(y, a2dp_codec, path, endpoint, PA_BLUETOOTH_UUID_A2DP_SOURCE);
- pa_xfree(endpoint);
- }
+ /* Currently only one A2DP codec is supported, so register only SBC
+ * Support for multiple codecs needs to use a new Bluez API which
+ * pulseaudio does not implement yet, patches are waiting in queue */
+ a2dp_codec_sbc = pa_bluetooth_get_a2dp_codec("sbc");
+ pa_assert(a2dp_codec_sbc);
+ register_endpoint(y, a2dp_codec_sbc, path, A2DP_SINK_ENDPOINT "/sbc", PA_BLUETOOTH_UUID_A2DP_SINK);
+ register_endpoint(y, a2dp_codec_sbc, path, A2DP_SOURCE_ENDPOINT "/sbc", PA_BLUETOOTH_UUID_A2DP_SOURCE);
} else if (pa_streq(interface, BLUEZ_DEVICE_INTERFACE)) {
diff --git a/src/modules/bluetooth/module-bluetooth-policy.c b/src/modules/bluetooth/module-bluetooth-policy.c
index 0a6d59d..ffaa140 100644
--- a/src/modules/bluetooth/module-bluetooth-policy.c
+++ b/src/modules/bluetooth/module-bluetooth-policy.c
@@ -44,7 +44,6 @@ static const char* const valid_modargs[] = {
"auto_switch",
"a2dp_source",
"ag",
- "hfgw",
NULL
};
diff --git a/src/modules/bluetooth/module-bluez5-device.c b/src/modules/bluetooth/module-bluez5-device.c
index 9da5d1a..402053a 100644
--- a/src/modules/bluetooth/module-bluez5-device.c
+++ b/src/modules/bluetooth/module-bluez5-device.c
@@ -1762,6 +1762,7 @@ static pa_available_t transport_state_to_availability(pa_bluetooth_transport_sta
static void create_card_ports(struct userdata *u, pa_hashmap *ports) {
pa_device_port *port;
pa_device_port_new_data port_data;
+ pa_device_port_type_t input_type, output_type;
const char *name_prefix, *input_description, *output_description;
pa_assert(u);
@@ -1771,60 +1772,67 @@ static void create_card_ports(struct userdata *u, pa_hashmap *ports) {
name_prefix = "unknown";
input_description = _("Bluetooth Input");
output_description = _("Bluetooth Output");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_BLUETOOTH;
switch (form_factor_from_class(u->device->class_of_device)) {
case PA_BLUETOOTH_FORM_FACTOR_HEADSET:
name_prefix = "headset";
input_description = output_description = _("Headset");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_HEADSET;
break;
case PA_BLUETOOTH_FORM_FACTOR_HANDSFREE:
name_prefix = "handsfree";
input_description = output_description = _("Handsfree");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_HANDSFREE;
break;
case PA_BLUETOOTH_FORM_FACTOR_MICROPHONE:
name_prefix = "microphone";
input_description = _("Microphone");
output_description = _("Bluetooth Output");
+ input_type = PA_DEVICE_PORT_TYPE_MIC;
break;
case PA_BLUETOOTH_FORM_FACTOR_SPEAKER:
name_prefix = "speaker";
input_description = _("Bluetooth Input");
output_description = _("Speaker");
+ output_type = PA_DEVICE_PORT_TYPE_SPEAKER;
break;
case PA_BLUETOOTH_FORM_FACTOR_HEADPHONE:
name_prefix = "headphone";
input_description = _("Bluetooth Input");
output_description = _("Headphone");
+ output_type = PA_DEVICE_PORT_TYPE_HEADPHONES;
break;
case PA_BLUETOOTH_FORM_FACTOR_PORTABLE:
name_prefix = "portable";
input_description = output_description = _("Portable");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_PORTABLE;
break;
case PA_BLUETOOTH_FORM_FACTOR_CAR:
name_prefix = "car";
input_description = output_description = _("Car");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_CAR;
break;
case PA_BLUETOOTH_FORM_FACTOR_HIFI:
name_prefix = "hifi";
input_description = output_description = _("HiFi");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_HIFI;
break;
case PA_BLUETOOTH_FORM_FACTOR_PHONE:
name_prefix = "phone";
input_description = output_description = _("Phone");
+ input_type = output_type = PA_DEVICE_PORT_TYPE_PHONE;
break;
case PA_BLUETOOTH_FORM_FACTOR_UNKNOWN:
- name_prefix = "unknown";
- input_description = _("Bluetooth Input");
- output_description = _("Bluetooth Output");
break;
}
@@ -1833,6 +1841,7 @@ static void create_card_ports(struct userdata *u, pa_hashmap *ports) {
pa_device_port_new_data_set_name(&port_data, u->output_port_name);
pa_device_port_new_data_set_description(&port_data, output_description);
pa_device_port_new_data_set_direction(&port_data, PA_DIRECTION_OUTPUT);
+ pa_device_port_new_data_set_type(&port_data, output_type);
pa_device_port_new_data_set_available(&port_data, get_port_availability(u, PA_DIRECTION_OUTPUT));
pa_assert_se(port = pa_device_port_new(u->core, &port_data, 0));
pa_assert_se(pa_hashmap_put(ports, port->name, port) >= 0);
@@ -1843,6 +1852,7 @@ static void create_card_ports(struct userdata *u, pa_hashmap *ports) {
pa_device_port_new_data_set_name(&port_data, u->input_port_name);
pa_device_port_new_data_set_description(&port_data, input_description);
pa_device_port_new_data_set_direction(&port_data, PA_DIRECTION_INPUT);
+ pa_device_port_new_data_set_type(&port_data, input_type);
pa_device_port_new_data_set_available(&port_data, get_port_availability(u, PA_DIRECTION_INPUT));
pa_assert_se(port = pa_device_port_new(u->core, &port_data, 0));
pa_assert_se(pa_hashmap_put(ports, port->name, port) >= 0);
diff --git a/src/modules/module-card-restore.c b/src/modules/module-card-restore.c
index 6aeef49..80506cd 100644
--- a/src/modules/module-card-restore.c
+++ b/src/modules/module-card-restore.c
@@ -562,7 +562,7 @@ static pa_hook_result_t card_choose_initial_profile_callback(pa_core *core, pa_c
if (!u->restore_bluetooth_profile) {
const char *s = pa_proplist_gets(card->proplist, PA_PROP_DEVICE_BUS);
if (pa_safe_streq(s, "bluetooth"))
- return PA_HOOK_OK;
+ goto finish;
}
if (e->profile[0]) {
@@ -582,6 +582,7 @@ static pa_hook_result_t card_choose_initial_profile_callback(pa_core *core, pa_c
}
}
+finish:
entry_free(e);
return PA_HOOK_OK;
diff --git a/src/modules/module-loopback.c b/src/modules/module-loopback.c
index ed559e4..871f011 100644
--- a/src/modules/module-loopback.c
+++ b/src/modules/module-loopback.c
@@ -401,7 +401,7 @@ static void adjust_rates(struct userdata *u) {
/* Drop or insert samples if fast_adjust_threshold_msec was specified and the latency difference is too large. */
if (u->fast_adjust_threshold > 0 && abs(latency_difference) > u->fast_adjust_threshold) {
- pa_log_debug ("Latency difference larger than %lu msec, skipping or inserting samples.", u->fast_adjust_threshold / PA_USEC_PER_MSEC);
+ pa_log_debug ("Latency difference larger than %" PRIu64 " msec, skipping or inserting samples.", u->fast_adjust_threshold / PA_USEC_PER_MSEC);
pa_asyncmsgq_send(u->sink_input->sink->asyncmsgq, PA_MSGOBJECT(u->sink_input), SINK_INPUT_MESSAGE_FAST_ADJUST, NULL, current_source_sink_latency, NULL);
@@ -539,13 +539,13 @@ static void memblockq_adjust(struct userdata *u, int64_t latency_offset_usec, bo
if (current_memblockq_length > requested_memblockq_length) {
/* Drop audio from queue */
buffer_correction = current_memblockq_length - requested_memblockq_length;
- pa_log_info("Dropping %lu usec of audio from queue", pa_bytes_to_usec(buffer_correction, &u->sink_input->sample_spec));
+ pa_log_info("Dropping %" PRIu64 " usec of audio from queue", pa_bytes_to_usec(buffer_correction, &u->sink_input->sample_spec));
pa_memblockq_drop(u->memblockq, buffer_correction);
} else if (current_memblockq_length < requested_memblockq_length && allow_push) {
/* Add silence to queue */
buffer_correction = requested_memblockq_length - current_memblockq_length;
- pa_log_info("Adding %lu usec of silence to queue", pa_bytes_to_usec(buffer_correction, &u->sink_input->sample_spec));
+ pa_log_info("Adding %" PRIu64 " usec of silence to queue", pa_bytes_to_usec(buffer_correction, &u->sink_input->sample_spec));
pa_memblockq_seek(u->memblockq, (int64_t)buffer_correction, PA_SEEK_RELATIVE, true);
}
}
diff --git a/src/modules/module-null-sink.c b/src/modules/module-null-sink.c
index 336676b..bbbf834 100644
--- a/src/modules/module-null-sink.c
+++ b/src/modules/module-null-sink.c
@@ -343,8 +343,10 @@ int pa__init(pa_module*m) {
if (!format) {
pa_log(_("Failed to set format: invalid format string %s"), f);
+ pa_xfree(f);
goto fail;
}
+ pa_xfree(f);
pa_idxset_put(u->formats, format, NULL);
}
diff --git a/src/modules/module-stream-restore.c b/src/modules/module-stream-restore.c
index 6a42466..a3c7671 100644
--- a/src/modules/module-stream-restore.c
+++ b/src/modules/module-stream-restore.c
@@ -113,10 +113,9 @@ struct userdata {
#endif
};
-#define ENTRY_VERSION 1
+#define ENTRY_VERSION 2
struct entry {
- uint8_t version;
bool muted_valid, volume_valid, device_valid, card_valid;
bool muted;
pa_channel_map channel_map;
@@ -968,7 +967,6 @@ static void save_time_callback(pa_mainloop_api*a, pa_time_event* e, const struct
static struct entry* entry_new(void) {
struct entry *r = pa_xnew0(struct entry, 1);
- r->version = ENTRY_VERSION;
return r;
}
@@ -990,7 +988,7 @@ static bool entry_write(struct userdata *u, const char *name, const struct entry
pa_assert(e);
t = pa_tagstruct_new();
- pa_tagstruct_putu8(t, e->version);
+ pa_tagstruct_putu8(t, ENTRY_VERSION);
pa_tagstruct_put_boolean(t, e->volume_valid);
pa_tagstruct_put_channel_map(t, &e->channel_map);
pa_tagstruct_put_cvolume(t, &e->volume);
@@ -1108,6 +1106,7 @@ static struct entry *entry_read(struct userdata *u, const char *name) {
pa_datum key, data;
struct entry *e = NULL;
pa_tagstruct *t = NULL;
+ uint8_t version;
const char *device, *card;
pa_assert(u);
@@ -1124,8 +1123,8 @@ static struct entry *entry_read(struct userdata *u, const char *name) {
t = pa_tagstruct_new_fixed(data.data, data.size);
e = entry_new();
- if (pa_tagstruct_getu8(t, &e->version) < 0 ||
- e->version > ENTRY_VERSION ||
+ if (pa_tagstruct_getu8(t, &version) < 0 ||
+ version > ENTRY_VERSION ||
pa_tagstruct_get_boolean(t, &e->volume_valid) < 0 ||
pa_tagstruct_get_channel_map(t, &e->channel_map) < 0 ||
pa_tagstruct_get_cvolume(t, &e->volume) < 0 ||
@@ -1145,12 +1144,12 @@ static struct entry *entry_read(struct userdata *u, const char *name) {
if (!pa_tagstruct_eof(t))
goto fail;
- if (e->device_valid && !pa_namereg_is_valid_name(e->device)) {
+ if (e->device_valid && (!e->device || !pa_namereg_is_valid_name(e->device))) {
pa_log_warn("Invalid device name stored in database for stream %s", name);
goto fail;
}
- if (e->card_valid && !pa_namereg_is_valid_name(e->card)) {
+ if (e->card_valid && (!e->card || !pa_namereg_is_valid_name(e->card))) {
pa_log_warn("Invalid card name stored in database for stream %s", name);
goto fail;
}
@@ -1168,6 +1167,46 @@ static struct entry *entry_read(struct userdata *u, const char *name) {
pa_tagstruct_free(t);
pa_datum_free(&data);
+#ifdef STREAM_RESTORE_CLEAR_OLD_DEVICES
+ if (version < ENTRY_VERSION && e->device_valid) {
+ /* Prior to PulseAudio 14.0, GNOME's sound settings overwrote the
+ * routing for all entries in the stream-restore database when
+ * selecting a device. PulseAudio 14.0 prevents that from happening,
+ * but the old overwritten settings can still be in the database after
+ * updating to PulseAudio 14.0, and they can cause problems, as
+ * documented here:
+ * https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832
+ *
+ * We can't distinguish between devices set by GNOME's sound settings
+ * and devices set by the user, so we discard all old device settings,
+ * even though that is going to cause PulseAudio to forget routing
+ * settings for many users. This is less bad than keeping the incorrect
+ * routing settings in the database, because it's difficult for users
+ * to figure out how to fix the situation when e.g. speaker test tones
+ * go to the internal speakers no matter what device is selected as the
+ * default, whereas old manual configuration can be restored restored
+ * by doing the manual configuration again. Also, it's probably more
+ * common to have at some point changed the default device in GNOME's
+ * sound settings than it is to have any manual per-stream routing
+ * settings. */
+ pa_log_warn("Device set, but it might be incorrect. Clearing the device. If this messes up your manual stream "
+ "routing configuration, sorry about that. This is a workaround for this bug: "
+ "https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832");
+ pa_log_warn("%s: device: %s -> (unset)", name, e->device);
+ pa_xfree(e->device);
+ e->device = NULL;
+ e->device_valid = false;
+ if (e->card_valid) {
+ pa_log_warn("%s: card: %s -> (unset)", name, e->card);
+ pa_xfree(e->card);
+ e->card = NULL;
+ e->card_valid = false;
+ }
+ entry_write(u, name, e, true);
+ trigger_save(u);
+ }
+#endif
+
return e;
fail:
@@ -1450,8 +1489,10 @@ static pa_hook_result_t sink_input_new_hook_callback(pa_core *c, pa_sink_input_n
else if ((e = entry_read(u, name))) {
pa_sink *s = NULL;
- if (e->device_valid)
+ if (e->device_valid) {
s = pa_namereg_get(c, e->device, PA_NAMEREG_SINK);
+ new_data->preferred_sink = pa_xstrdup(e->device);
+ }
if (!s && e->card_valid) {
pa_card *card;
@@ -1555,8 +1596,10 @@ static pa_hook_result_t source_output_new_hook_callback(pa_core *c, pa_source_ou
else if ((e = entry_read(u, name))) {
pa_source *s = NULL;
- if (e->device_valid)
+ if (e->device_valid) {
s = pa_namereg_get(c, e->device, PA_NAMEREG_SOURCE);
+ new_data->preferred_source = pa_xstrdup(e->device);
+ }
if (!s && e->card_valid) {
pa_card *card;
@@ -1690,7 +1733,6 @@ static int fill_db(struct userdata *u, const char *filename) {
struct entry e;
pa_zero(e);
- e.version = ENTRY_VERSION;
e.volume_valid = true;
pa_cvolume_set(&e.volume, 1, pa_sw_volume_from_dB(db));
pa_channel_map_init_mono(&e.channel_map);
diff --git a/src/modules/module-tunnel.c b/src/modules/module-tunnel.c
index 054d7d8..4c384ee 100644
--- a/src/modules/module-tunnel.c
+++ b/src/modules/module-tunnel.c
@@ -1034,9 +1034,17 @@ static int read_ports(struct userdata *u, pa_tagstruct *t) {
pa_log("Parse failure");
return -PA_ERR_PROTOCOL;
}
- if (u->version >= 24 && pa_tagstruct_getu32(t, &priority) < 0) { /* available */
- pa_log("Parse failure");
- return -PA_ERR_PROTOCOL;
+ if (u->version >= 24) {
+ if (pa_tagstruct_getu32(t, &priority) < 0) { /* available */
+ pa_log("Parse failure");
+ return -PA_ERR_PROTOCOL;
+ }
+ if (u->version >= 34 &&
+ (pa_tagstruct_gets(t, &s) < 0 || /* availability group */
+ pa_tagstruct_getu32(t, &priority) < 0)) { /* device port type */
+ pa_log("Parse failure");
+ return -PA_ERR_PROTOCOL;
+ }
}
}
diff --git a/src/modules/module-udev-detect.c b/src/modules/module-udev-detect.c
index d119f96..7a107c4 100644
--- a/src/modules/module-udev-detect.c
+++ b/src/modules/module-udev-detect.c
@@ -52,6 +52,7 @@ PA_MODULE_USAGE(
struct device {
char *path;
bool need_verify;
+ bool ignore;
char *card_name;
char *args;
uint32_t module;
@@ -286,6 +287,9 @@ static void verify_access(struct userdata *u, struct device *d) {
pa_assert(u);
pa_assert(d);
+ if (d->ignore)
+ return;
+
cd = pa_sprintf_malloc("/dev/snd/controlC%s", path_get_card_id(d->path));
accessible = access(cd, R_OK|W_OK) >= 0;
pa_log_debug("%s is accessible: %s", cd, pa_yes_no(accessible));
@@ -332,14 +336,20 @@ static void verify_access(struct userdata *u, struct device *d) {
* failure or a "fatal" failure. */
if (pa_ratelimit_test(&d->ratelimit, PA_LOG_DEBUG)) {
+ int err;
+
pa_log_debug("Loading module-alsa-card with arguments '%s'", d->args);
- pa_module_load(&m, u->core, "module-alsa-card", d->args);
+ err = pa_module_load(&m, u->core, "module-alsa-card", d->args);
if (m) {
d->module = m->index;
pa_log_info("Card %s (%s) module loaded.", d->path, d->card_name);
- } else
+ } else if (err == -PA_ERR_NOENTITY) {
+ pa_log_info("Card %s (%s) module skipped.", d->path, d->card_name);
+ d->ignore = true;
+ } else {
pa_log_info("Card %s (%s) failed to load module.", d->path, d->card_name);
+ }
} else
pa_log_warn("Tried to configure %s (%s) more often than %u times in %llus",
d->path,
diff --git a/src/modules/raop/raop-client.c b/src/modules/raop/raop-client.c
index 9a026db..885b3f1 100644
--- a/src/modules/raop/raop-client.c
+++ b/src/modules/raop/raop-client.c
@@ -669,7 +669,7 @@ static size_t handle_udp_timing_packet(pa_raop_client *c, const uint8_t packet[]
payload = packet[1] ^ 0x80;
switch (payload) {
case PAYLOAD_TIMING_REQUEST:
- pa_log_debug("Sending timing packet at %lu", rci);
+ pa_log_debug("Sending timing packet at %" PRIu64 , rci);
written = send_udp_timing_packet(c, data, rci);
break;
case PAYLOAD_TIMING_REPLY:
@@ -681,6 +681,18 @@ static size_t handle_udp_timing_packet(pa_raop_client *c, const uint8_t packet[]
return written;
}
+static void send_initial_udp_timing_packet(pa_raop_client *c) {
+ uint32_t data[6] = { 0 };
+ struct timeval tv;
+ uint64_t initial_time = 0;
+
+ initial_time = timeval_to_ntp(pa_rtclock_get(&tv));
+ data[4] = htonl(initial_time >> 32);
+ data[5] = htonl(initial_time & 0xffffffff);
+
+ send_udp_timing_packet(c, data, initial_time);
+}
+
static int connect_udp_socket(pa_raop_client *c, int fd, uint16_t port) {
struct sockaddr_in sa4;
#ifdef HAVE_IPV6
@@ -1077,6 +1089,13 @@ connect_finish:
pa_log_debug("Connection established (UDP;control_port=%d;timing_port=%d)", cport, tport);
+ /* Send an initial UDP packet so a connection tracking firewall
+ * knows the src_ip:src_port <-> dest_ip:dest_port relation
+ * and accepts the incoming timing packets.
+ */
+ send_initial_udp_timing_packet(c);
+ pa_log_debug("Sent initial timing packet to UDP port %d", tport);
+
if (c->state_callback)
c->state_callback(PA_RAOP_CONNECTED, c->state_userdata);
}
diff --git a/src/modules/raop/raop-crypto.c b/src/modules/raop/raop-crypto.c
index 83a862c..710e93c 100644
--- a/src/modules/raop/raop-crypto.c
+++ b/src/modules/raop/raop-crypto.c
@@ -30,6 +30,7 @@
#include <openssl/err.h>
#include <openssl/aes.h>
#include <openssl/rsa.h>
+#include <openssl/bn.h>
#include <pulse/xmalloc.h>
diff --git a/src/modules/raop/raop-sink.c b/src/modules/raop/raop-sink.c
index aa66af2..114f6d1 100644
--- a/src/modules/raop/raop-sink.c
+++ b/src/modules/raop/raop-sink.c
@@ -400,8 +400,9 @@ static void sink_set_mute_cb(pa_sink *s) {
static void thread_func(void *userdata) {
struct userdata *u = userdata;
size_t offset = 0;
- pa_usec_t last_timing;
- uint32_t check_timing_count;
+ pa_usec_t last_timing = 0;
+ uint32_t check_timing_count = 1;
+ pa_usec_t intvl = 0;
pa_assert(u);
@@ -413,7 +414,7 @@ static void thread_func(void *userdata) {
for (;;) {
struct pollfd *pollfd = NULL;
unsigned int i, nbfds = 0;
- pa_usec_t now, estimated, intvl;
+ pa_usec_t now, estimated;
uint64_t position;
size_t index;
int ret;
@@ -634,6 +635,7 @@ static pa_device_port *raop_create_port(struct userdata *u, const char *server)
pa_device_port_new_data_set_name(&data, "network-output");
pa_device_port_new_data_set_description(&data, server);
pa_device_port_new_data_set_direction(&data, PA_DIRECTION_OUTPUT);
+ pa_device_port_new_data_set_type(&data, PA_DEVICE_PORT_TYPE_NETWORK);
port = pa_device_port_new(u->core, &data, 0);
diff --git a/src/modules/rtp/rtp-gstreamer.c b/src/modules/rtp/rtp-gstreamer.c
index 3ee77cb..0db3309 100644
--- a/src/modules/rtp/rtp-gstreamer.c
+++ b/src/modules/rtp/rtp-gstreamer.c
@@ -32,6 +32,7 @@
#include <gst/gst.h>
#include <gst/app/gstappsrc.h>
#include <gst/app/gstappsink.h>
+#include <gst/base/gstadapter.h>
#include <gst/rtp/gstrtpbuffer.h>
#define MAKE_ELEMENT_NAMED(v, e, n) \
@@ -438,36 +439,73 @@ fail:
/* Called from I/O thread context */
int pa_rtp_recv(pa_rtp_context *c, pa_memchunk *chunk, pa_mempool *pool, uint32_t *rtp_tstamp, struct timeval *tstamp) {
GstSample *sample = NULL;
+ GstBufferList *buf_list;
+ GstAdapter *adapter;
GstBuffer *buf;
GstMapInfo info;
- void *data;
+ uint8_t *data;
+ uint64_t data_len = 0;
if (!process_bus_messages(c))
goto fail;
- sample = gst_app_sink_pull_sample(GST_APP_SINK(c->appsink));
- if (!sample) {
- pa_log_warn("Could not get any more data");
- goto fail;
- }
+ adapter = gst_adapter_new();
+ pa_assert(adapter);
- buf = gst_sample_get_buffer(sample);
+ while (true) {
+ sample = gst_app_sink_try_pull_sample(GST_APP_SINK(c->appsink), 0);
+ if (!sample)
+ break;
- if (GST_BUFFER_IS_DISCONT(buf))
- pa_log_info("Discontinuity detected, possibly lost some packets");
+ buf = gst_sample_get_buffer(sample);
- if (!gst_buffer_map(buf, &info, GST_MAP_READ))
- goto fail;
+ if (GST_BUFFER_IS_DISCONT(buf))
+ pa_log_info("Discontinuity detected, possibly lost some packets");
+
+ if (!gst_buffer_map(buf, &info, GST_MAP_READ)) {
+ pa_log_info("Failed to map buffer");
+ gst_sample_unref(sample);
+ goto fail;
+ }
+
+ data_len += info.size;
+ /* We need the buffer to be valid longer than the sample, which will
+ * be valid only for the duration of this loop.
+ *
+ * To do this, increase the ref count. Ownership is transferred to the
+ * adapter in gst_adapter_push.
+ */
+ gst_buffer_ref(buf);
+ gst_adapter_push(adapter, buf);
+ gst_buffer_unmap(buf, &info);
+
+ gst_sample_unref(sample);
+ }
+
+ buf_list = gst_adapter_take_buffer_list(adapter, data_len);
+ pa_assert(buf_list);
- pa_assert(pa_mempool_block_size_max(pool) >= info.size);
+ pa_assert(pa_mempool_block_size_max(pool) >= data_len);
- chunk->memblock = pa_memblock_new(pool, info.size);
+ chunk->memblock = pa_memblock_new(pool, data_len);
chunk->index = 0;
- chunk->length = info.size;
+ chunk->length = data_len;
+
+ data = (uint8_t *) pa_memblock_acquire_chunk(chunk);
+
+ for (int i = 0; i < gst_buffer_list_length(buf_list); i++) {
+ buf = gst_buffer_list_get(buf_list, i);
+
+ if (!gst_buffer_map(buf, &info, GST_MAP_READ)) {
+ gst_buffer_list_unref(buf_list);
+ goto fail;
+ }
+
+ memcpy(data, info.data, info.size);
+ data += info.size;
+ gst_buffer_unmap(buf, &info);
+ }
- data = pa_memblock_acquire_chunk(chunk);
- /* TODO: we could probably just provide an allocator and avoid a memcpy */
- memcpy(data, info.data, info.size);
pa_memblock_release(chunk->memblock);
/* When buffer-mode = none, the buffer PTS is the RTP timestamp, converted
@@ -475,17 +513,17 @@ int pa_rtp_recv(pa_rtp_context *c, pa_memchunk *chunk, pa_mempool *pool, uint32_
* wraparound-corrected, and the DTS is the pipeline clock timestamp from
* when the buffer was acquired at the source (this is actually the running
* time which is why we need to add base time). */
- *rtp_tstamp = gst_util_uint64_scale_int(GST_BUFFER_PTS(buf), c->ss.rate, GST_SECOND) & 0xFFFFFFFFU;
- pa_timeval_rtstore(tstamp, (GST_BUFFER_DTS(buf) + gst_element_get_base_time(c->pipeline)) / GST_USECOND, false);
+ *rtp_tstamp = gst_util_uint64_scale_int(GST_BUFFER_PTS(gst_buffer_list_get(buf_list, 0)), c->ss.rate, GST_SECOND) & 0xFFFFFFFFU;
+ pa_timeval_rtstore(tstamp, (GST_BUFFER_DTS(gst_buffer_list_get(buf_list, 0)) + gst_element_get_base_time(c->pipeline)) / GST_USECOND, false);
- gst_buffer_unmap(buf, &info);
- gst_sample_unref(sample);
+ gst_buffer_list_unref(buf_list);
+ gst_object_unref(adapter);
return 0;
fail:
- if (sample)
- gst_sample_unref(sample);
+ if (adapter)
+ gst_object_unref(adapter);
if (chunk->memblock)
pa_memblock_unref(chunk->memblock);
diff --git a/src/pulse/def.h b/src/pulse/def.h
index 100df5b..4097bd8 100644
--- a/src/pulse/def.h
+++ b/src/pulse/def.h
@@ -1070,6 +1070,35 @@ typedef enum pa_port_available {
/** \endcond */
#endif
+/** Port type. New types can be added in the future, so applications should
+ * gracefully handle situations where a type identifier doesn't match any item
+ * in this enumeration. \since 14.0 */
+typedef enum pa_device_port_type {
+ PA_DEVICE_PORT_TYPE_UNKNOWN = 0,
+ PA_DEVICE_PORT_TYPE_AUX = 1,
+ PA_DEVICE_PORT_TYPE_SPEAKER = 2,
+ PA_DEVICE_PORT_TYPE_HEADPHONES = 3,
+ PA_DEVICE_PORT_TYPE_LINE = 4,
+ PA_DEVICE_PORT_TYPE_MIC = 5,
+ PA_DEVICE_PORT_TYPE_HEADSET = 6,
+ PA_DEVICE_PORT_TYPE_HANDSET = 7,
+ PA_DEVICE_PORT_TYPE_EARPIECE = 8,
+ PA_DEVICE_PORT_TYPE_SPDIF = 9,
+ PA_DEVICE_PORT_TYPE_HDMI = 10,
+ PA_DEVICE_PORT_TYPE_TV = 11,
+ PA_DEVICE_PORT_TYPE_RADIO = 12,
+ PA_DEVICE_PORT_TYPE_VIDEO = 13,
+ PA_DEVICE_PORT_TYPE_USB = 14,
+ PA_DEVICE_PORT_TYPE_BLUETOOTH = 15,
+ PA_DEVICE_PORT_TYPE_PORTABLE = 16,
+ PA_DEVICE_PORT_TYPE_HANDSFREE = 17,
+ PA_DEVICE_PORT_TYPE_CAR = 18,
+ PA_DEVICE_PORT_TYPE_HIFI = 19,
+ PA_DEVICE_PORT_TYPE_PHONE = 20,
+ PA_DEVICE_PORT_TYPE_NETWORK = 21,
+ PA_DEVICE_PORT_TYPE_ANALOG = 22,
+} pa_device_port_type_t;
+
PA_C_DECL_END
#endif
diff --git a/src/pulse/format.h b/src/pulse/format.h
index 82a8be7..5f97929 100644
--- a/src/pulse/format.h
+++ b/src/pulse/format.h
@@ -62,6 +62,10 @@ typedef enum pa_encoding {
PA_ENCODING_DTSHD_IEC61937,
/**< DTS-HD Master Audio encapsulated in IEC 61937 header/padding. \since 13.0 */
+ /* Remeber to update
+ * https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/
+ * when adding new encodings! */
+
PA_ENCODING_MAX,
/**< Valid encoding types must be less than this value */
diff --git a/src/pulse/introspect.c b/src/pulse/introspect.c
index 510d784..3027f38 100644
--- a/src/pulse/introspect.c
+++ b/src/pulse/introspect.c
@@ -219,6 +219,13 @@ static void context_get_sink_info_callback(pa_pdispatch *pd, uint32_t command, u
goto fail;
i.ports[j]->available = av;
}
+ i.ports[j]->availability_group = NULL;
+ i.ports[j]->type = PA_DEVICE_PORT_TYPE_UNKNOWN;
+ if (o->context->version >= 34) {
+ if (pa_tagstruct_gets(t, &i.ports[j]->availability_group) < 0 ||
+ pa_tagstruct_getu32(t, &i.ports[j]->type) < 0)
+ goto fail;
+ }
}
i.ports[j] = NULL;
@@ -492,11 +499,17 @@ static void context_get_source_info_callback(pa_pdispatch *pd, uint32_t command,
goto fail;
i.ports[j]->available = av;
}
+ i.ports[j]->availability_group = NULL;
+ i.ports[j]->type = PA_DEVICE_PORT_TYPE_UNKNOWN;
+ if (o->context->version >= 34) {
+ if (pa_tagstruct_gets(t, &i.ports[j]->availability_group) < 0 ||
+ pa_tagstruct_getu32(t, &i.ports[j]->type))
+ goto fail;
+ }
}
i.ports[j] = NULL;
}
-
if (pa_tagstruct_gets(t, &ap) < 0)
goto fail;
@@ -863,6 +876,14 @@ static int fill_card_port_info(pa_context *context, pa_tagstruct* t, pa_card_inf
return -PA_ERR_PROTOCOL;
} else
port->latency_offset = 0;
+
+ port->type = PA_DEVICE_PORT_TYPE_UNKNOWN;
+ if (context->version >= 34) {
+ if (pa_tagstruct_gets(t, &port->availability_group) < 0 ||
+ pa_tagstruct_getu32(t, &port->type) < 0)
+ return -PA_ERR_PROTOCOL;
+ } else
+ port->availability_group = NULL;
}
return 0;
diff --git a/src/pulse/introspect.h b/src/pulse/introspect.h
index 43389b7..8fff1ac 100644
--- a/src/pulse/introspect.h
+++ b/src/pulse/introspect.h
@@ -229,6 +229,31 @@ typedef struct pa_sink_port_info {
const char *description; /**< Description of this port */
uint32_t priority; /**< The higher this value is, the more useful this port is as a default. */
int available; /**< A flags (see #pa_port_available), indicating availability status of this port. \since 2.0 */
+ const char *availability_group; /**< An indentifier for the group of ports that share their availability status with
+ * each other. This is meant especially for handling cases where one 3.5 mm connector
+ * is used for headphones, headsets and microphones, and the hardware can only tell
+ * that something was plugged in but not what exactly. In this situation the ports for
+ * all those devices share their availability status, and PulseAudio can't tell which
+ * one is actually plugged in, and some application may ask the user what was plugged
+ * in. Such applications should get a list of all card ports and compare their
+ * `availability_group` fields. Ports that have the same group are those that need
+ * input from the user to determine which device was plugged in. The application should
+ * then activate the user-chosen port.
+ *
+ * May be NULL, in which case the port is not part of any availability group (which is
+ * the same as having a group with only one member).
+ *
+ * The group identifier must be treated as an opaque identifier. The string may look
+ * like an ALSA control name, but applications must not assume any such relationship.
+ * The group naming scheme can change without a warning.
+ *
+ * Since one group can include both input and output ports, the grouping should be done
+ * using pa_card_port_info instead of pa_sink_port_info, but this field is duplicated
+ * also in pa_sink_port_info (and pa_source_port_info) in case someone finds that
+ * convenient.
+ *
+ * \since 14.0 */
+ uint32_t type; /**< Port type, see #pa_device_port_type. \since 14.0 */
} pa_sink_port_info;
/** Stores information about sinks. Please note that this structure
@@ -309,6 +334,31 @@ typedef struct pa_source_port_info {
const char *description; /**< Description of this port */
uint32_t priority; /**< The higher this value is, the more useful this port is as a default. */
int available; /**< A flags (see #pa_port_available), indicating availability status of this port. \since 2.0 */
+ const char *availability_group; /**< An indentifier for the group of ports that share their availability status with
+ * each other. This is meant especially for handling cases where one 3.5 mm connector
+ * is used for headphones, headsets and microphones, and the hardware can only tell
+ * that something was plugged in but not what exactly. In this situation the ports for
+ * all those devices share their availability status, and PulseAudio can't tell which
+ * one is actually plugged in, and some application may ask the user what was plugged
+ * in. Such applications should get a list of all card ports and compare their
+ * `availability_group` fields. Ports that have the same group are those that need
+ * input from the user to determine which device was plugged in. The application should
+ * then activate the user-chosen port.
+ *
+ * May be NULL, in which case the port is not part of any availability group (which is
+ * the same as having a group with only one member).
+ *
+ * The group identifier must be treated as an opaque identifier. The string may look
+ * like an ALSA control name, but applications must not assume any such relationship.
+ * The group naming scheme can change without a warning.
+ *
+ * Since one group can include both input and output ports, the grouping should be done
+ * using pa_card_port_info instead of pa_source_port_info, but this field is duplicated
+ * also in pa_source_port_info (and pa_sink_port_info) in case someone finds that
+ * convenient.
+ *
+ * \since 14.0 */
+ uint32_t type; /**< Port type, see #pa_device_port_type. \since 14.0 */
} pa_source_port_info;
/** Stores information about sources. Please note that this structure
@@ -509,6 +559,26 @@ typedef struct pa_card_port_info {
pa_proplist *proplist; /**< Property list */
int64_t latency_offset; /**< Latency offset of the port that gets added to the sink/source latency when the port is active. \since 3.0 */
pa_card_profile_info2** profiles2; /**< Array of pointers to available profiles, or NULL. Array is terminated by an entry set to NULL. \since 5.0 */
+ const char *availability_group; /**< An indentifier for the group of ports that share their availability status with
+ * each other. This is meant especially for handling cases where one 3.5 mm connector
+ * is used for headphones, headsets and microphones, and the hardware can only tell
+ * that something was plugged in but not what exactly. In this situation the ports for
+ * all those devices share their availability status, and PulseAudio can't tell which
+ * one is actually plugged in, and some application may ask the user what was plugged
+ * in. Such applications should get a list of all card ports and compare their
+ * `availability_group` fields. Ports that have the same group are those that need
+ * input from the user to determine which device was plugged in. The application should
+ * then activate the user-chosen port.
+ *
+ * May be NULL, in which case the port is not part of any availability group (which is
+ * the same as having a group with only one member).
+ *
+ * The group identifier must be treated as an opaque identifier. The string may look
+ * like an ALSA control name, but applications must not assume any such relationship.
+ * The group naming scheme can change without a warning.
+ *
+ * \since 14.0 */
+ uint32_t type; /**< Port type, see #pa_device_port_type. \since 14.0 */
} pa_card_port_info;
/** Stores information about cards. Please note that this structure
diff --git a/src/pulse/sample.h b/src/pulse/sample.h
index b368fda..35346a8 100644
--- a/src/pulse/sample.h
+++ b/src/pulse/sample.h
@@ -171,6 +171,10 @@ typedef enum pa_sample_format {
PA_SAMPLE_S24_32BE,
/**< Signed 24 Bit PCM in LSB of 32 Bit words, big endian. \since 0.9.15 */
+ /* Remeber to update
+ * https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/
+ * when adding new formats! */
+
PA_SAMPLE_MAX,
/**< Upper limit of valid sample types */
diff --git a/src/pulse/thread-mainloop.h b/src/pulse/thread-mainloop.h
index 26fa4ed..fd9ad3c 100644
--- a/src/pulse/thread-mainloop.h
+++ b/src/pulse/thread-mainloop.h
@@ -66,9 +66,11 @@ PA_C_DECL_BEGIN
* number of times you called pa_threaded_mainloop_lock().
*
* The lock needs to be held whenever you call any PulseAudio function that
- * uses an object associated with this main loop. Make sure you do not hold
- * on to the lock more than necessary though, as the threaded main loop stops
- * while the lock is held.
+ * uses an object associated with this main loop. Those objects include
+ * pa_mainloop, pa_context, pa_stream and pa_operation, and the various event
+ * objects (pa_io_event, pa_time_event, pa_defer_event). Make sure you do not
+ * hold on to the lock more than necessary though, as the threaded main loop
+ * stops while the lock is held.
*
* Example:
*
diff --git a/src/pulse/version.h b/src/pulse/version.h
index c01760a..84b53a3 100644
--- a/src/pulse/version.h
+++ b/src/pulse/version.h
@@ -47,7 +47,7 @@ const char* pa_get_library_version(void);
/** The current protocol version. Version 8 relates to Polypaudio
* 0.8/PulseAudio 0.9. */
-#define PA_PROTOCOL_VERSION 33
+#define PA_PROTOCOL_VERSION 34
/** The major version of PA. \since 0.9.15 */
#define PA_MAJOR 13
diff --git a/src/pulsecore/client.h b/src/pulsecore/client.h
index eb8173d..c6952e3 100644
--- a/src/pulsecore/client.h
+++ b/src/pulsecore/client.h
@@ -29,7 +29,7 @@
/* Every connection to the server should have a pa_client
* attached. That way the user may generate a listing of all connected
- * clients easily and kill them if he wants.*/
+ * clients easily and kill them if they want.*/
struct pa_client {
uint32_t index;
diff --git a/src/pulsecore/core-subscribe.c b/src/pulsecore/core-subscribe.c
index 61c779b..8c91059 100644
--- a/src/pulsecore/core-subscribe.c
+++ b/src/pulsecore/core-subscribe.c
@@ -133,7 +133,8 @@ static void dump_event(const char * prefix, pa_subscription_event*e) {
[PA_SUBSCRIPTION_EVENT_CLIENT] = "CLIENT",
[PA_SUBSCRIPTION_EVENT_SAMPLE_CACHE] = "SAMPLE_CACHE",
[PA_SUBSCRIPTION_EVENT_SERVER] = "SERVER",
- [PA_SUBSCRIPTION_EVENT_AUTOLOAD] = "AUTOLOAD"
+ [PA_SUBSCRIPTION_EVENT_AUTOLOAD] = "AUTOLOAD",
+ [PA_SUBSCRIPTION_EVENT_CARD] = "CARD"
};
const char * const type_table[] = {
diff --git a/src/pulsecore/core.c b/src/pulsecore/core.c
index 335f802..c28c531 100644
--- a/src/pulsecore/core.c
+++ b/src/pulsecore/core.c
@@ -159,10 +159,6 @@ pa_core* pa_core_new(pa_mainloop_api *m, bool shared, bool enable_memfd, size_t
pa_check_signal_is_blocked(SIGPIPE);
#endif
- pa_core_check_idle(c);
-
- c->state = PA_CORE_RUNNING;
-
return c;
}
diff --git a/src/pulsecore/device-port.c b/src/pulsecore/device-port.c
index b104c49..8263c9e 100644
--- a/src/pulsecore/device-port.c
+++ b/src/pulsecore/device-port.c
@@ -29,6 +29,7 @@ pa_device_port_new_data *pa_device_port_new_data_init(pa_device_port_new_data *d
pa_assert(data);
pa_zero(*data);
+ data->type = PA_DEVICE_PORT_TYPE_UNKNOWN;
data->available = PA_AVAILABLE_UNKNOWN;
return data;
}
@@ -53,17 +54,31 @@ void pa_device_port_new_data_set_available(pa_device_port_new_data *data, pa_ava
data->available = available;
}
+void pa_device_port_new_data_set_availability_group(pa_device_port_new_data *data, const char *group) {
+ pa_assert(data);
+
+ pa_xfree(data->availability_group);
+ data->availability_group = pa_xstrdup(group);
+}
+
void pa_device_port_new_data_set_direction(pa_device_port_new_data *data, pa_direction_t direction) {
pa_assert(data);
data->direction = direction;
}
+void pa_device_port_new_data_set_type(pa_device_port_new_data *data, pa_device_port_type_t type) {
+ pa_assert(data);
+
+ data->type = type;
+}
+
void pa_device_port_new_data_done(pa_device_port_new_data *data) {
pa_assert(data);
pa_xfree(data->name);
pa_xfree(data->description);
+ pa_xfree(data->availability_group);
}
void pa_device_port_set_preferred_profile(pa_device_port *p, const char *new_pp) {
@@ -92,6 +107,20 @@ void pa_device_port_set_available(pa_device_port *p, pa_available_t status) {
* be created before port objects, and then p->card could be non-NULL for
* the whole lifecycle of pa_device_port. */
if (p->card && p->card->linked) {
+ pa_sink *sink;
+ pa_source *source;
+
+ pa_subscription_post(p->core, PA_SUBSCRIPTION_EVENT_CARD|PA_SUBSCRIPTION_EVENT_CHANGE, p->card->index);
+
+ sink = pa_device_port_get_sink(p);
+ source = pa_device_port_get_source(p);
+ if (sink)
+ pa_subscription_post(p->core, PA_SUBSCRIPTION_EVENT_SINK|PA_SUBSCRIPTION_EVENT_CHANGE, sink->index);
+ if (source)
+ pa_subscription_post(p->core, PA_SUBSCRIPTION_EVENT_SOURCE|PA_SUBSCRIPTION_EVENT_CHANGE, source->index);
+
+ pa_hook_fire(&p->core->hooks[PA_CORE_HOOK_PORT_AVAILABLE_CHANGED], p);
+
/* A sink or source whose active port is unavailable can't be the
* default sink/source, so port availability changes may affect the
* default sink/source choice. */
@@ -101,9 +130,6 @@ void pa_device_port_set_available(pa_device_port *p, pa_available_t status) {
pa_core_update_default_source(p->core);
if (p->direction == PA_DIRECTION_OUTPUT) {
- pa_sink *sink;
-
- sink = pa_device_port_get_sink(p);
if (sink && p == sink->active_port) {
if (sink->active_port->available == PA_AVAILABLE_NO) {
if (p->core->rescue_streams)
@@ -112,9 +138,6 @@ void pa_device_port_set_available(pa_device_port *p, pa_available_t status) {
pa_core_move_streams_to_newly_available_preferred_sink(p->core, sink);
}
} else {
- pa_source *source;
-
- source = pa_device_port_get_source(p);
if (source && p == source->active_port) {
if (source->active_port->available == PA_AVAILABLE_NO) {
if (p->core->rescue_streams)
@@ -123,9 +146,6 @@ void pa_device_port_set_available(pa_device_port *p, pa_available_t status) {
pa_core_move_streams_to_newly_available_preferred_source(p->core, source);
}
}
-
- pa_subscription_post(p->core, PA_SUBSCRIPTION_EVENT_CARD|PA_SUBSCRIPTION_EVENT_CHANGE, p->card->index);
- pa_hook_fire(&p->core->hooks[PA_CORE_HOOK_PORT_AVAILABLE_CHANGED], p);
}
}
@@ -144,6 +164,7 @@ static void device_port_free(pa_object *o) {
if (p->profiles)
pa_hashmap_free(p->profiles);
+ pa_xfree(p->availability_group);
pa_xfree(p->preferred_profile);
pa_xfree(p->name);
pa_xfree(p->description);
@@ -169,8 +190,11 @@ pa_device_port *pa_device_port_new(pa_core *c, pa_device_port_new_data *data, si
p->card = NULL;
p->priority = 0;
p->available = data->available;
+ p->availability_group = data->availability_group;
+ data->availability_group = NULL;
p->profiles = pa_hashmap_new(pa_idxset_string_hash_func, pa_idxset_string_compare_func);
p->direction = data->direction;
+ p->type = data->type;
p->latency_offset = 0;
p->proplist = pa_proplist_new();
diff --git a/src/pulsecore/device-port.h b/src/pulsecore/device-port.h
index 41198f6..7178ff2 100644
--- a/src/pulsecore/device-port.h
+++ b/src/pulsecore/device-port.h
@@ -43,9 +43,11 @@ struct pa_device_port {
char *name;
char *description;
char *preferred_profile;
+ pa_device_port_type_t type;
unsigned priority;
pa_available_t available; /* PA_AVAILABLE_UNKNOWN, PA_AVAILABLE_NO or PA_AVAILABLE_YES */
+ char *availability_group; /* a string indentifier which determine the group of devices handling the available state simulteneously */
pa_proplist *proplist;
pa_hashmap *profiles; /* Does not own the profiles */
@@ -67,14 +69,18 @@ typedef struct pa_device_port_new_data {
char *name;
char *description;
pa_available_t available;
+ char *availability_group;
pa_direction_t direction;
+ pa_device_port_type_t type;
} pa_device_port_new_data;
pa_device_port_new_data *pa_device_port_new_data_init(pa_device_port_new_data *data);
void pa_device_port_new_data_set_name(pa_device_port_new_data *data, const char *name);
void pa_device_port_new_data_set_description(pa_device_port_new_data *data, const char *description);
void pa_device_port_new_data_set_available(pa_device_port_new_data *data, pa_available_t available);
+void pa_device_port_new_data_set_availability_group(pa_device_port_new_data *data, const char *group);
void pa_device_port_new_data_set_direction(pa_device_port_new_data *data, pa_direction_t direction);
+void pa_device_port_new_data_set_type(pa_device_port_new_data *data, pa_device_port_type_t type);
void pa_device_port_new_data_done(pa_device_port_new_data *data);
pa_device_port *pa_device_port_new(pa_core *c, pa_device_port_new_data *data, size_t extra);
diff --git a/src/pulsecore/dynarray.c b/src/pulsecore/dynarray.c
index 6a3eb5f..a948f26 100644
--- a/src/pulsecore/dynarray.c
+++ b/src/pulsecore/dynarray.c
@@ -140,3 +140,26 @@ unsigned pa_dynarray_size(pa_dynarray *array) {
return array->n_entries;
}
+
+int pa_dynarray_insert_by_index(pa_dynarray *array, void *p, unsigned i) {
+ void *entry;
+ unsigned j;
+
+ pa_assert(array);
+
+ if (i > array->n_entries)
+ return -PA_ERR_NOENTITY;
+
+ if (i == array->n_entries)
+ pa_dynarray_append(array, p);
+ else {
+ entry = pa_dynarray_last(array);
+ pa_dynarray_append(array, entry);
+ j = array->n_entries - 2;
+ for (;j > i; j--)
+ array->data[j] = array->data[j-1];
+ array->data[i] = p;
+ }
+
+ return 0;
+}
diff --git a/src/pulsecore/dynarray.h b/src/pulsecore/dynarray.h
index bf7dddc..4c0925e 100644
--- a/src/pulsecore/dynarray.h
+++ b/src/pulsecore/dynarray.h
@@ -63,6 +63,10 @@ void *pa_dynarray_steal_last(pa_dynarray *array);
unsigned pa_dynarray_size(pa_dynarray *array);
+/* Returns -PA_ERR_NOENTITY if i is out of bounds, and zero otherwise.
+ * Here i is the location index in the array like 0, ..., array->entries */
+int pa_dynarray_insert_by_index(pa_dynarray *array, void *p, unsigned i);
+
#define PA_DYNARRAY_FOREACH(elem, array, idx) \
for ((idx) = 0; ((elem) = pa_dynarray_get(array, idx)); (idx)++)
diff --git a/src/pulsecore/mcalign.h b/src/pulsecore/mcalign.h
index e29d82e..353e66a 100644
--- a/src/pulsecore/mcalign.h
+++ b/src/pulsecore/mcalign.h
@@ -28,7 +28,7 @@
/* Method of operation: the user creates a new mcalign object by
* calling pa_mcalign_new() with the appropriate aligning
- * granularity. After that he may call pa_mcalign_push() for an input
+ * granularity. After that they may call pa_mcalign_push() for an input
* memchunk. After exactly one memchunk the user has to call
* pa_mcalign_pop() until it returns -1. If pa_mcalign_pop() returns
* 0, the memchunk *c is valid and aligned to the granularity. Some
diff --git a/src/pulsecore/memblock.h b/src/pulsecore/memblock.h
index 57ae4b2..4273c09 100644
--- a/src/pulsecore/memblock.h
+++ b/src/pulsecore/memblock.h
@@ -99,7 +99,7 @@ void pa_memblock_unref(pa_memblock*b);
pa_memblock* pa_memblock_ref(pa_memblock*b);
/* This special unref function has to be called by the owner of the
-memory of a static memory block when he wants to release all
+memory of a static memory block when they want to release all
references to the memory. This causes the memory to be copied and
converted into a pool of malloc'ed memory block. Please note that this
function is not multiple caller safe, i.e. needs to be locked
diff --git a/src/pulsecore/meson.build b/src/pulsecore/meson.build
index 0bd596c..5f78be0 100644
--- a/src/pulsecore/meson.build
+++ b/src/pulsecore/meson.build
@@ -198,7 +198,7 @@ libpulsecore = shared_library('pulsecore-' + pa_version_major_minor,
install_rpath : privlibdir,
install_dir : privlibdir,
link_with : libpulsecore_simd_lib,
- dependencies : [libm_dep, libpulsecommon_dep, libpulse_dep, ltdl_dep, shm_dep, sndfile_dep, database_dep, dbus_dep, libatomic_ops_dep, orc_dep, samplerate_dep, soxr_dep, speex_dep, x11_dep, libintl_dep],
+ dependencies : [libm_dep, libpulsecommon_dep, ltdl_dep, shm_dep, sndfile_dep, database_dep, dbus_dep, libatomic_ops_dep, orc_dep, samplerate_dep, soxr_dep, speex_dep, x11_dep, libintl_dep],
implicit_include_directories : false)
libpulsecore_dep = declare_dependency(link_with: libpulsecore)
diff --git a/src/pulsecore/module.c b/src/pulsecore/module.c
index 70b8160..15a54b6 100644
--- a/src/pulsecore/module.c
+++ b/src/pulsecore/module.c
@@ -116,7 +116,7 @@ int pa_module_load(pa_module** module, pa_core *c, const char *name, const char
bool (*load_once)(void);
const char* (*get_deprecated)(void);
pa_modinfo *mi;
- int errcode;
+ int errcode, rval;
pa_assert(module);
pa_assert(c);
@@ -188,7 +188,11 @@ int pa_module_load(pa_module** module, pa_core *c, const char *name, const char
pa_assert_se(pa_idxset_put(c->modules, m, &m->index) >= 0);
pa_assert(m->index != PA_IDXSET_INVALID);
- if (m->init(m) < 0) {
+ if ((rval = m->init(m)) < 0) {
+ if (rval == -PA_MODULE_ERR_SKIP) {
+ errcode = -PA_ERR_NOENTITY;
+ goto fail;
+ }
pa_log_error("Failed to load module \"%s\" (argument: \"%s\"): initialization failed.", name, argument ? argument : "");
errcode = -PA_ERR_IO;
goto fail;
diff --git a/src/pulsecore/module.h b/src/pulsecore/module.h
index b5a7fad..f918ea6 100644
--- a/src/pulsecore/module.h
+++ b/src/pulsecore/module.h
@@ -30,6 +30,11 @@ typedef struct pa_module pa_module;
#include <pulsecore/core.h>
+enum {
+ PA_MODULE_ERR_UNSPECIFIED = 1,
+ PA_MODULE_ERR_SKIP = 2
+};
+
struct pa_module {
pa_core *core;
char *name, *argument;
diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c
index 7245741..e8559b2 100644
--- a/src/pulsecore/protocol-native.c
+++ b/src/pulsecore/protocol-native.c
@@ -2145,7 +2145,7 @@ static void command_delete_stream(pa_pdispatch *pd, uint32_t command, uint32_t t
case PA_COMMAND_DELETE_PLAYBACK_STREAM: {
playback_stream *s;
if (!(s = pa_idxset_get_by_index(c->output_streams, channel)) || !playback_stream_isinstance(s)) {
- pa_pstream_send_error(c->pstream, tag, PA_ERR_EXIST);
+ pa_pstream_send_error(c->pstream, tag, PA_ERR_NOENTITY);
return;
}
@@ -2156,7 +2156,7 @@ static void command_delete_stream(pa_pdispatch *pd, uint32_t command, uint32_t t
case PA_COMMAND_DELETE_RECORD_STREAM: {
record_stream *s;
if (!(s = pa_idxset_get_by_index(c->record_streams, channel))) {
- pa_pstream_send_error(c->pstream, tag, PA_ERR_EXIST);
+ pa_pstream_send_error(c->pstream, tag, PA_ERR_NOENTITY);
return;
}
@@ -2168,7 +2168,7 @@ static void command_delete_stream(pa_pdispatch *pd, uint32_t command, uint32_t t
upload_stream *s;
if (!(s = pa_idxset_get_by_index(c->output_streams, channel)) || !upload_stream_isinstance(s)) {
- pa_pstream_send_error(c->pstream, tag, PA_ERR_EXIST);
+ pa_pstream_send_error(c->pstream, tag, PA_ERR_NOENTITY);
return;
}
@@ -3205,8 +3205,13 @@ static void sink_fill_tagstruct(pa_native_connection *c, pa_tagstruct *t, pa_sin
pa_tagstruct_puts(t, p->name);
pa_tagstruct_puts(t, p->description);
pa_tagstruct_putu32(t, p->priority);
- if (c->version >= 24)
+ if (c->version >= 24) {
pa_tagstruct_putu32(t, p->available);
+ if (c->version >= 34) {
+ pa_tagstruct_puts(t, p->availability_group);
+ pa_tagstruct_putu32(t, p->type);
+ }
+ }
}
pa_tagstruct_puts(t, sink->active_port ? sink->active_port->name : NULL);
@@ -3275,8 +3280,13 @@ static void source_fill_tagstruct(pa_native_connection *c, pa_tagstruct *t, pa_s
pa_tagstruct_puts(t, p->name);
pa_tagstruct_puts(t, p->description);
pa_tagstruct_putu32(t, p->priority);
- if (c->version >= 24)
+ if (c->version >= 24) {
pa_tagstruct_putu32(t, p->available);
+ if (c->version >= 34) {
+ pa_tagstruct_puts(t, p->availability_group);
+ pa_tagstruct_putu32(t, p->type);
+ }
+ }
}
pa_tagstruct_puts(t, source->active_port ? source->active_port->name : NULL);
@@ -3358,8 +3368,13 @@ static void card_fill_tagstruct(pa_native_connection *c, pa_tagstruct *t, pa_car
PA_HASHMAP_FOREACH(p, port->profiles, state2)
pa_tagstruct_puts(t, p->name);
- if (c->version >= 27)
+ if (c->version >= 27) {
pa_tagstruct_puts64(t, port->latency_offset);
+ if (c->version >= 34) {
+ pa_tagstruct_puts(t, port->availability_group);
+ pa_tagstruct_putu32(t, port->type);
+ }
+ }
}
}
diff --git a/src/pulsecore/pstream.c b/src/pulsecore/pstream.c
index 3b94a3a..eb70508 100644
--- a/src/pulsecore/pstream.c
+++ b/src/pulsecore/pstream.c
@@ -244,8 +244,16 @@ static void do_pstream_read_write(pa_pstream *p) {
p->mainloop->defer_enable(p->defer_event, 0);
if (!p->dead && p->srb) {
- do_write(p);
- while (!p->dead && do_read(p, &p->readsrb) == 0);
+ int r = 0;
+
+ if(do_write(p) < 0)
+ goto fail;
+
+ while (!p->dead && r == 0) {
+ r = do_read(p, &p->readsrb);
+ if (r < 0)
+ goto fail;
+ }
}
if (!p->dead && pa_iochannel_is_readable(p->io)) {
diff --git a/src/pulsecore/remap_neon.c b/src/pulsecore/remap_neon.c
index 4120898..6f71345 100644
--- a/src/pulsecore/remap_neon.c
+++ b/src/pulsecore/remap_neon.c
@@ -52,11 +52,15 @@ static void remap_mono_to_stereo_float32ne_generic_arm(pa_remap_t *m, float *dst
__asm__ __volatile__ (
"ldm %[src]!, {r4,r6} \n\t"
"mov r5, r4 \n\t"
- "mov r7, r6 \n\t"
- "stm %[dst]!, {r4-r7} \n\t"
+
+ /* We use r12 instead of r7 here, because r7 is reserved for the
+ * frame pointer when using Thumb. */
+ "mov r12, r6 \n\t"
+
+ "stm %[dst]!, {r4-r6,r12} \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: /* input operands */
- : "memory", "r4", "r5", "r6", "r7" /* clobber list */
+ : "memory", "r4", "r5", "r6", "r12" /* clobber list */
);
}
@@ -189,7 +193,7 @@ static void remap_ch4_to_mono_float32ne_neon(pa_remap_t *m, float *dst, const fl
"vadd.f32 d0, d0, d1 \n\t"
"vadd.f32 d2, d2, d3 \n\t"
"vadd.f32 d0, d0, d2 \n\t"
- "vmul.f32 d0, d0, %[quart] \n\t"
+ "vmul.f32 d0, d0, %P[quart] \n\t"
"vst1.32 {d0}, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [quart] "w" (quart) /* input operands */
@@ -276,7 +280,7 @@ static void remap_arrange_stereo_s16ne_neon(pa_remap_t *m, int16_t *dst, const i
for (; n >= 2; n -= 2) {
__asm__ __volatile__ (
"vld1.s16 d0, [%[src]]! \n\t"
- "vtbl.8 d0, {d0}, %[t] \n\t"
+ "vtbl.8 d0, {d0}, %P[t] \n\t"
"vst1.s16 d0, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t] "w" (t) /* input operands */
@@ -287,7 +291,7 @@ static void remap_arrange_stereo_s16ne_neon(pa_remap_t *m, int16_t *dst, const i
if (n > 0) {
__asm__ __volatile__ (
"vld1.32 d0[0], [%[src]]! \n\t"
- "vtbl.8 d0, {d0}, %[t] \n\t"
+ "vtbl.8 d0, {d0}, %P[t] \n\t"
"vst1.32 d0[0], [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t] "w" (t) /* input operands */
@@ -302,8 +306,8 @@ static void remap_arrange_ch2_ch4_s16ne_neon(pa_remap_t *m, int16_t *dst, const
for (; n > 0; n--) {
__asm__ __volatile__ (
"vld1.32 d0[0], [%[src]]! \n\t"
- "vtbl.8 d0, {d0}, %[t] \n\t"
- "vst1.s16 d0, [%[dst]]! \n\t"
+ "vtbl.8 d0, {d0}, %P[t] \n\t"
+ "vst1.s16 d0, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t] "w" (t) /* input operands */
: "memory", "d0" /* clobber list */
@@ -317,7 +321,7 @@ static void remap_arrange_ch4_s16ne_neon(pa_remap_t *m, int16_t *dst, const int1
for (; n > 0; n--) {
__asm__ __volatile__ (
"vld1.s16 d0, [%[src]]! \n\t"
- "vtbl.8 d0, {d0}, %[t] \n\t"
+ "vtbl.8 d0, {d0}, %P[t] \n\t"
"vst1.s16 d0, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t] "w" (t) /* input operands */
@@ -332,7 +336,7 @@ static void remap_arrange_stereo_float32ne_neon(pa_remap_t *m, float *dst, const
for (; n > 0; n--) {
__asm__ __volatile__ (
"vld1.f32 d0, [%[src]]! \n\t"
- "vtbl.8 d0, {d0}, %[t] \n\t"
+ "vtbl.8 d0, {d0}, %P[t] \n\t"
"vst1.s16 {d0}, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t] "w" (t) /* input operands */
@@ -349,8 +353,8 @@ static void remap_arrange_ch2_ch4_any32ne_neon(pa_remap_t *m, float *dst, const
for (; n > 0; n--) {
__asm__ __volatile__ (
"vld1.f32 d0, [%[src]]! \n\t"
- "vtbl.8 d1, {d0}, %[t0] \n\t"
- "vtbl.8 d2, {d0}, %[t1] \n\t"
+ "vtbl.8 d1, {d0}, %P[t0] \n\t"
+ "vtbl.8 d2, {d0}, %P[t1] \n\t"
"vst1.s16 {d1,d2}, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t0] "w" (t0), [t1] "w" (t1) /* input operands */
@@ -366,8 +370,8 @@ static void remap_arrange_ch4_float32ne_neon(pa_remap_t *m, float *dst, const fl
for (; n > 0; n--) {
__asm__ __volatile__ (
"vld1.f32 {d0,d1}, [%[src]]! \n\t"
- "vtbl.8 d2, {d0,d1}, %[t0] \n\t"
- "vtbl.8 d3, {d0,d1}, %[t1] \n\t"
+ "vtbl.8 d2, {d0,d1}, %P[t0] \n\t"
+ "vtbl.8 d3, {d0,d1}, %P[t1] \n\t"
"vst1.s16 {d2,d3}, [%[dst]]! \n\t"
: [dst] "+r" (dst), [src] "+r" (src) /* output operands */
: [t0] "w" (t0), [t1] "w" (t1) /* input operands */
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c
index 11c3849..56a3ce4 100644
--- a/src/pulsecore/sink.c
+++ b/src/pulsecore/sink.c
@@ -113,6 +113,13 @@ void pa_sink_new_data_set_alternate_sample_rate(pa_sink_new_data *data, const ui
data->alternate_sample_rate = alternate_sample_rate;
}
+void pa_sink_new_data_set_avoid_resampling(pa_sink_new_data *data, bool avoid_resampling) {
+ pa_assert(data);
+
+ data->avoid_resampling_is_set = true;
+ data->avoid_resampling = avoid_resampling;
+}
+
void pa_sink_new_data_set_volume(pa_sink_new_data *data, const pa_cvolume *volume) {
pa_assert(data);
@@ -271,7 +278,10 @@ pa_sink* pa_sink_new(
else
s->alternate_sample_rate = s->core->alternate_sample_rate;
- s->avoid_resampling = data->avoid_resampling;
+ if (data->avoid_resampling_is_set)
+ s->avoid_resampling = data->avoid_resampling;
+ else
+ s->avoid_resampling = s->core->avoid_resampling;
s->inputs = pa_idxset_new(NULL, NULL);
s->n_corked = 0;
@@ -363,11 +373,11 @@ pa_sink* pa_sink_new(
pa_source_new_data_set_sample_spec(&source_data, &s->sample_spec);
pa_source_new_data_set_channel_map(&source_data, &s->channel_map);
pa_source_new_data_set_alternate_sample_rate(&source_data, s->alternate_sample_rate);
+ pa_source_new_data_set_avoid_resampling(&source_data, s->avoid_resampling);
source_data.name = pa_sprintf_malloc("%s.monitor", name);
source_data.driver = data->driver;
source_data.module = data->module;
source_data.card = data->card;
- source_data.avoid_resampling = data->avoid_resampling;
dn = pa_proplist_gets(s->proplist, PA_PROP_DEVICE_DESCRIPTION);
pa_proplist_setf(source_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "Monitor of %s", dn ? dn : s->name);
@@ -694,8 +704,8 @@ void pa_sink_put(pa_sink* s) {
pa_cvolume_remap(&s->real_volume, &root_sink->channel_map, &s->channel_map);
} else
/* We assume that if the sink implementor changed the default
- * volume he did so in real_volume, because that is the usual
- * place where he is supposed to place his changes. */
+ * volume they did so in real_volume, because that is the usual
+ * place where they are supposed to place their changes. */
s->reference_volume = s->real_volume;
s->thread_info.soft_volume = s->soft_volume;
diff --git a/src/pulsecore/sink.h b/src/pulsecore/sink.h
index 1778eb7..c3f5fbc 100644
--- a/src/pulsecore/sink.h
+++ b/src/pulsecore/sink.h
@@ -384,6 +384,7 @@ typedef struct pa_sink_new_data {
bool sample_spec_is_set:1;
bool channel_map_is_set:1;
bool alternate_sample_rate_is_set:1;
+ bool avoid_resampling_is_set:1;
bool volume_is_set:1;
bool muted_is_set:1;
@@ -399,6 +400,7 @@ void pa_sink_new_data_set_name(pa_sink_new_data *data, const char *name);
void pa_sink_new_data_set_sample_spec(pa_sink_new_data *data, const pa_sample_spec *spec);
void pa_sink_new_data_set_channel_map(pa_sink_new_data *data, const pa_channel_map *map);
void pa_sink_new_data_set_alternate_sample_rate(pa_sink_new_data *data, const uint32_t alternate_sample_rate);
+void pa_sink_new_data_set_avoid_resampling(pa_sink_new_data *data, bool avoid_resampling);
void pa_sink_new_data_set_volume(pa_sink_new_data *data, const pa_cvolume *volume);
void pa_sink_new_data_set_muted(pa_sink_new_data *data, bool mute);
void pa_sink_new_data_set_port(pa_sink_new_data *data, const char *port);
diff --git a/src/pulsecore/source.c b/src/pulsecore/source.c
index 1cb83f9..705c939 100644
--- a/src/pulsecore/source.c
+++ b/src/pulsecore/source.c
@@ -104,6 +104,13 @@ void pa_source_new_data_set_alternate_sample_rate(pa_source_new_data *data, cons
data->alternate_sample_rate = alternate_sample_rate;
}
+void pa_source_new_data_set_avoid_resampling(pa_source_new_data *data, bool avoid_resampling) {
+ pa_assert(data);
+
+ data->avoid_resampling_is_set = true;
+ data->avoid_resampling = avoid_resampling;
+}
+
void pa_source_new_data_set_volume(pa_source_new_data *data, const pa_cvolume *volume) {
pa_assert(data);
@@ -258,7 +265,10 @@ pa_source* pa_source_new(
else
s->alternate_sample_rate = s->core->alternate_sample_rate;
- s->avoid_resampling = data->avoid_resampling;
+ if (data->avoid_resampling_is_set)
+ s->avoid_resampling = data->avoid_resampling;
+ else
+ s->avoid_resampling = s->core->avoid_resampling;
s->outputs = pa_idxset_new(NULL, NULL);
s->n_corked = 0;
@@ -644,8 +654,8 @@ void pa_source_put(pa_source *s) {
pa_cvolume_remap(&s->real_volume, &root_source->channel_map, &s->channel_map);
} else
/* We assume that if the sink implementor changed the default
- * volume he did so in real_volume, because that is the usual
- * place where he is supposed to place his changes. */
+ * volume they did so in real_volume, because that is the usual
+ * place where they are supposed to place their changes. */
s->reference_volume = s->real_volume;
s->thread_info.soft_volume = s->soft_volume;
diff --git a/src/pulsecore/source.h b/src/pulsecore/source.h
index 12e37d6..aa45e6d 100644
--- a/src/pulsecore/source.h
+++ b/src/pulsecore/source.h
@@ -324,6 +324,7 @@ typedef struct pa_source_new_data {
bool sample_spec_is_set:1;
bool channel_map_is_set:1;
bool alternate_sample_rate_is_set:1;
+ bool avoid_resampling_is_set:1;
bool namereg_fail:1;
@@ -337,6 +338,7 @@ void pa_source_new_data_set_name(pa_source_new_data *data, const char *name);
void pa_source_new_data_set_sample_spec(pa_source_new_data *data, const pa_sample_spec *spec);
void pa_source_new_data_set_channel_map(pa_source_new_data *data, const pa_channel_map *map);
void pa_source_new_data_set_alternate_sample_rate(pa_source_new_data *data, const uint32_t alternate_sample_rate);
+void pa_source_new_data_set_avoid_resampling(pa_source_new_data *data, bool avoid_resampling);
void pa_source_new_data_set_volume(pa_source_new_data *data, const pa_cvolume *volume);
void pa_source_new_data_set_muted(pa_source_new_data *data, bool mute);
void pa_source_new_data_set_port(pa_source_new_data *data, const char *port);
diff --git a/src/tests/cpu-remap-test.c b/src/tests/cpu-remap-test.c
index 7e2b7a4..28c3b34 100644
--- a/src/tests/cpu-remap-test.c
+++ b/src/tests/cpu-remap-test.c
@@ -26,6 +26,7 @@
#include <pulsecore/random.h>
#include <pulsecore/macro.h>
#include <pulsecore/remap.h>
+#include <pulse/xmalloc.h>
#include "runtime-test-util.h"
@@ -290,7 +291,7 @@ static void remap_init2_test_channels(
bool rearrange) {
pa_cpu_info cpu_info = { PA_CPU_UNDEFINED, {}, false };
- pa_remap_t remap_orig, remap_func;
+ pa_remap_t remap_orig, remap_func = {0};
cpu_info.force_generic_code = true;
pa_remap_func_init(&cpu_info);
@@ -303,6 +304,8 @@ static void remap_init2_test_channels(
pa_init_remap_func(&remap_func);
remap_test_channels(&remap_func, &remap_orig);
+
+ pa_xfree(remap_func.state);
}
START_TEST (remap_special_test) {
diff --git a/src/tests/hashmap-test.c b/src/tests/hashmap-test.c
new file mode 100644
index 0000000..f460bd4
--- /dev/null
+++ b/src/tests/hashmap-test.c
@@ -0,0 +1,260 @@
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <check.h>
+#include <pulsecore/hashmap.h>
+
+struct int_entry {
+ int key;
+ int value;
+};
+
+static unsigned int_trivial_hash_func(const void* pa) {
+ int a = *((unsigned*) pa);
+ if (a < 0) {
+ return -a;
+ }
+ return a;
+}
+
+static int int_compare_func(const void* pa, const void* pb) {
+ int a, b;
+ a = *((int*) pa);
+ b = *((int*) pb);
+ if (a < b) {
+ return -1;
+ }
+ if (a == b) {
+ return 0;
+ }
+ return 1;
+}
+
+/* single_key_test exercises basic hashmap functionality on a single key. */
+START_TEST(single_key_test)
+ {
+ pa_hashmap* map;
+ struct int_entry entry;
+ int lookup_key;
+ int put_ret;
+ void* get_ret;
+ unsigned size_ret;
+
+ entry.key = 0;
+ entry.value = 0;
+
+ lookup_key = 0;
+
+ map = pa_hashmap_new(int_trivial_hash_func, int_compare_func);
+
+ if ((put_ret = pa_hashmap_put(map, &entry.key, &entry)) != 0) {
+ ck_abort_msg("Hashmap rejected k=0/v=0; got %d, want %d", put_ret, 0);
+ }
+
+ if ((size_ret = pa_hashmap_size(map)) != 1) {
+ ck_abort_msg("Hashmap reported wrong size; got %u, want 1", size_ret);
+ }
+
+ if ((get_ret = pa_hashmap_get(map, &lookup_key)) != &entry) {
+ ck_abort_msg("Got wrong value from hashmap for k=0; got %p, want %p", get_ret, &entry);
+ }
+
+ if ((put_ret = pa_hashmap_put(map, &entry.key, &entry)) == 0) {
+ ck_abort_msg("Hashmap allowed duplicate key for k=0; got %d, want non-zero", put_ret);
+ }
+
+ if ((size_ret = pa_hashmap_size(map)) != 1) {
+ ck_abort_msg("Hashmap reported wrong size; got %u, want 1", size_ret);
+ }
+
+ if ((get_ret = pa_hashmap_remove(map, &lookup_key)) != &entry) {
+ ck_abort_msg("Hashmap returned wrong value during free; got %p, want %p", get_ret, &entry);
+ }
+
+ if ((size_ret = pa_hashmap_size(map)) != 0) {
+ ck_abort_msg("Hashmap reported wrong size; got %u, want 1", size_ret);
+ }
+
+ pa_hashmap_free(map);
+ }
+END_TEST
+
+/* remove_all_test checks that pa_hashmap_remove_all really removes all entries
+ * from the map.*/
+START_TEST(remove_all_test)
+ {
+ pa_hashmap* map;
+ struct int_entry entries[1000];
+ unsigned size;
+
+ for (int i = 0; i < 1000; i++) {
+ entries[i].key = i;
+ entries[i].value = i;
+ }
+
+ map = pa_hashmap_new(int_trivial_hash_func, int_compare_func);
+
+ for (int i = 0; i < 1000; i++) {
+ pa_hashmap_put(map, &entries[i].key, &entries[i]);
+ }
+
+ if ((size = pa_hashmap_size(map)) != 1000) {
+ ck_abort_msg("Hashmap has wrong size; got %u, want 1000", size);
+ }
+
+ pa_hashmap_remove_all(map);
+
+ if ((size = pa_hashmap_size(map)) != 0) {
+ ck_abort_msg("Hashmap has wrong size; got %u, want 0", size);
+ }
+
+ pa_hashmap_free(map);
+ }
+END_TEST
+
+/* fill_all_buckets hits the hashmap with enough keys to exercise the bucket
+ * linked list for every bucket. */
+START_TEST(fill_all_buckets)
+ {
+ pa_hashmap* map;
+ struct int_entry entries[1000];
+ int lookup_keys[1000]; /* Don't share addresses with insertion keys */
+
+ map = pa_hashmap_new(int_trivial_hash_func, int_compare_func);
+
+ for (int i = 0; i < 1000; i++) {
+ entries[i].key = i;
+ lookup_keys[i] = i;
+ entries[i].value = i;
+ }
+
+ for (int i = 0; i < 1000; i++) {
+ int put_ret;
+ unsigned size_ret;
+
+ if ((put_ret = pa_hashmap_put(map, &entries[i].key, &entries[i])) != 0) {
+ ck_abort_msg("Unexpected failure putting k=%d v=%d into the map", entries[i].key, entries[i].value);
+ }
+
+ if ((size_ret = pa_hashmap_size(map)) != i + 1) {
+ ck_abort_msg("Hashmap reported wrong size; got %u, want %d", size_ret, i);
+ }
+ }
+
+ for (int i = 0; i < 1000; i++) {
+ unsigned size_ret;
+ int* k;
+ struct int_entry* v;
+
+ k = lookup_keys + i;
+
+ v = (struct int_entry*) pa_hashmap_remove(map, k);
+ if (v == NULL) {
+ ck_abort_msg("Hashmap returned NULL for k=%d; wanted nonnull", *k);
+ }
+ if ((*v).value != i) {
+ ck_abort_msg("Hashmap returned wrong value for k=%d; got %d, want %d", *k, (*v).value, i);
+ }
+
+ if ((size_ret = pa_hashmap_size(map)) != 1000 - i - 1) {
+ ck_abort_msg("Hashmap reported wrong size; got %u, want %d", size_ret, 1000 - i);
+ }
+ }
+
+ pa_hashmap_free(map);
+ }
+END_TEST
+
+/* iterate_test exercises the iteration list maintained by the hashtable. */
+START_TEST(iterate_test)
+ {
+ pa_hashmap* map;
+ struct int_entry entries[1000];
+ void* state;
+ struct int_entry* v;
+ int expected;
+
+ for (int i = 0; i < 1000; i++) {
+ entries[i].key = i;
+ entries[i].value = i;
+ }
+
+ map = pa_hashmap_new(int_trivial_hash_func, int_compare_func);
+
+ for (int i = 0; i < 1000; i++) {
+ if (pa_hashmap_put(map, &(entries[i].key), &(entries[i])) != 0) {
+ ck_abort_msg("Unexpected failure putting k=%d v=%d into the map", entries[i].key, entries[i].value);
+ }
+ }
+
+ expected = 0;
+ PA_HASHMAP_FOREACH (v, map, state) {
+ if ((*v).value != expected) {
+ ck_abort_msg("Got bad order iterating over hashmap: got %d, want %d", v->value, expected);
+ }
+ expected++;
+ }
+
+ expected = 999;
+ PA_HASHMAP_FOREACH_BACKWARDS (v, map, state) {
+ if ((*v).value != expected) {
+ ck_abort_msg("Got bad order iterating over hashmap: got %d, want %d", v->value, expected);
+ }
+ expected--;
+ }
+
+ /* Now empty out the hashmap. The iteration list should be empty. */
+ for(int i = 0; i < 1000; i++) {
+ pa_hashmap_remove(map, &(entries[i].key));
+ }
+
+ PA_HASHMAP_FOREACH(v, map, state) {
+ ck_abort_msg("Iteration over empty map returned entries");
+ }
+
+ /* Now add one element back. The iteration list should only contain this
+ * one element, even though the entry nodes are reused. */
+ if(pa_hashmap_put(map, &(entries[0].key), &(entries[0])) != 0) {
+ ck_abort_msg("Unexpected failure putting k=%d v=%d into the map", entries[0].key, entries[0].value);
+ }
+
+ expected = 0;
+ PA_HASHMAP_FOREACH(v, map, state) {
+ if ((*v).value != expected) {
+ ck_abort_msg("Got bad order iterating over hashmap: got %d, want %d", v->value, expected);
+ }
+ expected++;
+ }
+ if (expected != 1) {
+ ck_abort_msg("Got too many elements while iterating: got %d, want 1", expected);
+ }
+
+ pa_hashmap_free(map);
+ }
+END_TEST
+
+int main(int argc, char** argv) {
+ int failed = 0;
+ Suite* s;
+ TCase* tc;
+ SRunner* sr;
+
+ s = suite_create("HashMap");
+ tc = tcase_create("hashmap");
+ tcase_add_test(tc, single_key_test);
+ tcase_add_test(tc, remove_all_test);
+ tcase_add_test(tc, fill_all_buckets);
+ tcase_add_test(tc, iterate_test);
+ suite_add_tcase(s, tc);
+
+ sr = srunner_create(s);
+ srunner_run_all(sr, CK_NORMAL);
+ failed = srunner_ntests_failed(sr);
+ srunner_free(sr);
+
+ if (failed > 0) {
+ return EXIT_FAILURE;
+ }
+ return EXIT_SUCCESS;
+}
diff --git a/src/tests/meson.build b/src/tests/meson.build
index 643a08d..5caf3ab 100644
--- a/src/tests/meson.build
+++ b/src/tests/meson.build
@@ -30,6 +30,8 @@ default_tests = [
[ check_dep, libpulse_dep, libpulsecommon_dep, libpulsecore_dep ] ],
[ 'get-binary-name-test', 'get-binary-name-test.c',
[ check_dep, libpulse_dep, libpulsecommon_dep ] ],
+ [ 'hashmap-test', 'hashmap-test.c',
+ [ check_dep, libpulse_dep, libpulsecommon_dep ] ],
[ 'hook-list-test', 'hook-list-test.c',
[ check_dep, libpulse_dep, libpulsecommon_dep, libpulsecore_dep ] ],
[ 'json-test', 'json-test.c',
@@ -158,6 +160,13 @@ if cc.has_header_symbol('signal.h', 'SIGXCPU')
]
endif
+if cc.has_function('pthread_setaffinity_np', dependencies : thread_dep)
+ norun_tests += [
+ [ 'atomic-test', 'atomic-test.c',
+ [ check_dep, libpulsecommon_dep, thread_dep ] ]
+ ]
+endif
+
if alsa_dep.found()
norun_tests += [
[ 'alsa-time-test', 'alsa-time-test.c', [ alsa_dep ] ]
diff --git a/src/utils/pacat.c b/src/utils/pacat.c
index 275fb7c..4d2ecf7 100644
--- a/src/utils/pacat.c
+++ b/src/utils/pacat.c
@@ -686,9 +686,9 @@ static void help(const char *argv0) {
" --stream-name=NAME How to call this stream on the server\n"
" --volume=VOLUME Specify the initial (linear) volume in range 0...65536\n"
" --rate=SAMPLERATE The sample rate in Hz (defaults to 44100)\n"
- " --format=SAMPLEFORMAT The sample type, one of s16le, s16be, u8, float32le,\n"
- " float32be, ulaw, alaw, s32le, s32be, s24le, s24be,\n"
- " s24-32le, s24-32be (defaults to s16ne)\n"
+ " --format=SAMPLEFORMAT The sample format, see\n"
+ " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SupportedAudioFormats/\n"
+ " for possible values (defaults to s16ne)\n"
" --channels=CHANNELS The number of channels, 1 for mono, 2 for stereo\n"
" (defaults to 2)\n"
" --channel-map=CHANNELMAP Channel map to use instead of the default\n"
diff --git a/src/utils/pactl.c b/src/utils/pactl.c
index 8f103fb..1f9ce46 100644
--- a/src/utils/pactl.c
+++ b/src/utils/pactl.c
@@ -234,12 +234,43 @@ static void get_server_info_callback(pa_context *c, const pa_server_info *i, voi
static const char* get_available_str_ynonly(int available) {
switch (available) {
- case PA_PORT_AVAILABLE_YES: return ", available";
- case PA_PORT_AVAILABLE_NO: return ", not available";
+ case PA_PORT_AVAILABLE_YES: return _(", available");
+ case PA_PORT_AVAILABLE_NO: return _(", not available");
}
return "";
}
+static const char* get_device_port_type(unsigned int type) {
+ static char buf[32];
+ switch (type) {
+ case PA_DEVICE_PORT_TYPE_UNKNOWN: return _("Unknown");
+ case PA_DEVICE_PORT_TYPE_AUX: return _("Aux");
+ case PA_DEVICE_PORT_TYPE_SPEAKER: return _("Speaker");
+ case PA_DEVICE_PORT_TYPE_HEADPHONES: return _("Headphones");
+ case PA_DEVICE_PORT_TYPE_LINE: return _("Line");
+ case PA_DEVICE_PORT_TYPE_MIC: return _("Mic");
+ case PA_DEVICE_PORT_TYPE_HEADSET: return _("Headset");
+ case PA_DEVICE_PORT_TYPE_HANDSET: return _("Handset");
+ case PA_DEVICE_PORT_TYPE_EARPIECE: return _("Earpiece");
+ case PA_DEVICE_PORT_TYPE_SPDIF: return _("SPDIF");
+ case PA_DEVICE_PORT_TYPE_HDMI: return _("HDMI");
+ case PA_DEVICE_PORT_TYPE_TV: return _("TV");
+ case PA_DEVICE_PORT_TYPE_RADIO: return _("Radio");
+ case PA_DEVICE_PORT_TYPE_VIDEO: return _("Video");
+ case PA_DEVICE_PORT_TYPE_USB: return _("USB");
+ case PA_DEVICE_PORT_TYPE_BLUETOOTH: return _("Bluetooth");
+ case PA_DEVICE_PORT_TYPE_PORTABLE: return _("Portable");
+ case PA_DEVICE_PORT_TYPE_HANDSFREE: return _("Handsfree");
+ case PA_DEVICE_PORT_TYPE_CAR: return _("Car");
+ case PA_DEVICE_PORT_TYPE_HIFI: return _("HiFi");
+ case PA_DEVICE_PORT_TYPE_PHONE: return _("Phone");
+ case PA_DEVICE_PORT_TYPE_NETWORK: return _("Network");
+ case PA_DEVICE_PORT_TYPE_ANALOG: return _("Analog");
+ }
+ snprintf(buf, sizeof(buf), "%s-%u", _("Unknown"), type);
+ return buf;
+}
+
static void get_sink_info_callback(pa_context *c, const pa_sink_info *i, int is_last, void *userdata) {
static const char *state_table[] = {
@@ -330,8 +361,10 @@ static void get_sink_info_callback(pa_context *c, const pa_sink_info *i, int is_
printf(_("\tPorts:\n"));
for (p = i->ports; *p; p++)
- printf("\t\t%s: %s (priority: %u%s)\n", (*p)->name, (*p)->description,
- (*p)->priority, get_available_str_ynonly((*p)->available));
+ printf(_("\t\t%s: %s (type: %s, priority: %u%s%s%s)\n"),
+ (*p)->name, (*p)->description, get_device_port_type((*p)->type),
+ (*p)->priority, (*p)->availability_group ? _(", availability group: ") : "",
+ (*p)->availability_group ?: "", get_available_str_ynonly((*p)->available));
}
if (i->active_port)
@@ -436,8 +469,10 @@ static void get_source_info_callback(pa_context *c, const pa_source_info *i, int
printf(_("\tPorts:\n"));
for (p = i->ports; *p; p++)
- printf("\t\t%s: %s (priority: %u%s)\n", (*p)->name, (*p)->description,
- (*p)->priority, get_available_str_ynonly((*p)->available));
+ printf(_("\t\t%s: %s (type: %s, priority: %u%s%s%s)\n"),
+ (*p)->name, (*p)->description, get_device_port_type((*p)->type),
+ (*p)->priority, (*p)->availability_group ? _(", availability group: ") : "",
+ (*p)->availability_group ?: "", get_available_str_ynonly((*p)->available));
}
if (i->active_port)
@@ -598,8 +633,9 @@ static void get_card_info_callback(pa_context *c, const pa_card_info *i, int is_
printf(_("\tPorts:\n"));
for (p = i->ports; *p; p++) {
pa_card_profile_info **pr = (*p)->profiles;
- printf("\t\t%s: %s (priority: %u, latency offset: %" PRId64 " usec%s)\n", (*p)->name,
- (*p)->description, (*p)->priority, (*p)->latency_offset,
+ printf(_("\t\t%s: %s (type: %s, priority: %u, latency offset: %" PRId64 " usec%s%s%s)\n"), (*p)->name,
+ (*p)->description, get_device_port_type((*p)->type), (*p)->priority, (*p)->latency_offset,
+ (*p)->availability_group ? _(", availability group: ") : "", (*p)->availability_group ?: "",
get_available_str_ynonly((*p)->available));
if (!pa_proplist_isempty((*p)->proplist)) {