From: Tanu Kaskinen
Date: Sun, 16 Aug 2009 18:25:48 +0000 (+0300)
Subject: Merge branch 'master' of git://0pointer.de/pulseaudio into dbus-work
X-Git-Url: https://code.delx.au/pulseaudio/commitdiff_plain/bcaba0b1b43d6a1b32aadfa98860f40b2c93e136?hp=2bb3eef414f80189cf6af6cd66c519630e4c0a43
Merge branch 'master' of git://0pointer.de/pulseaudio into dbus-work
Conflicts:
src/Makefile.am
src/daemon/daemon-conf.c
src/daemon/daemon.conf.in
src/modules/module-stream-restore.c
src/pulse/client-conf.c
src/pulsecore/namereg.c
---
diff --git a/Makefile.am b/Makefile.am
index 4d45a07d..5967f2ce 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -17,7 +17,7 @@
ACLOCAL_AMFLAGS = -I m4
-EXTRA_DIST = bootstrap.sh LICENSE GPL LGPL doxygen/Makefile.am doxygen/Makefile.in doxygen/doxygen.conf.in README todo
+EXTRA_DIST = bootstrap.sh git-version-gen LICENSE GPL LGPL doxygen/Makefile.am doxygen/Makefile.in doxygen/doxygen.conf.in README todo
SUBDIRS = src doxygen man po
MAINTAINERCLEANFILES =
diff --git a/bootstrap.sh b/bootstrap.sh
index d5025db6..970e884e 100755
--- a/bootstrap.sh
+++ b/bootstrap.sh
@@ -40,10 +40,21 @@ run_versioned() {
set -ex
+case $(uname) in
+ *Darwin*)
+ LIBTOOLIZE="glibtoolize"
+ ;;
+esac
+
if [ -f .git/hooks/pre-commit.sample -a ! -f .git/hooks/pre-commit ] ; then
echo "Activating pre-commit hook."
- cp -av .git/hooks/pre-commit.sample .git/hooks/pre-commit
- chmod -c +x .git/hooks/pre-commit
+ cp -pv .git/hooks/pre-commit.sample .git/hooks/pre-commit
+ chmod -v +x .git/hooks/pre-commit
+fi
+
+if [ -f .tarball-version ]; then
+ echo "Marking tarball version as modified."
+ echo -n `cat .tarball-version | sed 's/-rebootstrapped$//'`-rebootstrapped >.tarball-version
fi
# We check for this here, because if pkg-config is not found in the
@@ -83,7 +94,7 @@ else
run_versioned automake "$VERSION" --copy --foreign --add-missing
if test "x$NOCONFIGURE" = "x"; then
- CFLAGS="-g -O0" ./configure --sysconfdir=/etc --localstatedir=/var --enable-force-preopen "$@"
+ CFLAGS="$CFLAGS -g -O0" ./configure --sysconfdir=/etc --localstatedir=/var --enable-force-preopen "$@"
make clean
fi
fi
diff --git a/configure.ac b/configure.ac
index 7e83a9c9..735b406f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -44,11 +44,11 @@ AC_SUBST(PA_PROTOCOL_VERSION, 16)
# The stable ABI for client applications, for the version info x:y:z
# always will hold y=z
-AC_SUBST(LIBPULSE_VERSION_INFO, [8:0:8])
+AC_SUBST(LIBPULSE_VERSION_INFO, [9:0:9])
# A simplified, synchronous, ABI-stable interface for client
# applications, for the version info x:y:z always will hold y=z
-AC_SUBST(LIBPULSE_SIMPLE_VERSION_INFO, [0:2:0])
+AC_SUBST(LIBPULSE_SIMPLE_VERSION_INFO, [0:3:0])
# The ABI-stable network browsing interface for client applications,
# for the version info x:y:z always will hold y=z
@@ -73,6 +73,10 @@ case $host in
AC_DEFINE(_XOPEN_SOURCE, 600, Needed to get declarations for msg_control and msg_controllen on Solaris)
AC_DEFINE(__EXTENSIONS__, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
;;
+ *-*-darwin* )
+ AC_DEFINE([_POSIX_C_SOURCE], [200112L], [Needed to get clock_gettime on Mac OS X])
+ AC_DEFINE([_DARWIN_C_SOURCE], [200112L], [Needed to get NSIG on Mac OS X])
+ ;;
esac
AM_SILENT_RULES([yes])
@@ -112,6 +116,21 @@ CC_CHECK_LDFLAGS([${tmp_ldflag}],
[VERSIONING_LDFLAGS='-Wl,-version-script=$(srcdir)/map-file'])
AC_SUBST([VERSIONING_LDFLAGS])
+dnl Use immediate (now) bindings; avoids the funky re-call in itself
+dnl the -z now syntax is lifted from Sun's linker and works with GNU's too
+dnl other linkes might be added later
+CC_CHECK_LDFLAGS([-Wl,-z,now], [IMMEDIATE_LDFLAGS="-Wl,-z,now"])
+AC_SUBST([IMMEDIATE_LDFLAGS])
+
+dnl On ELF systems we don't want the libraries to be unloaded since we
+dnl don't clean them up properly, so we request the nodelete flag to be
+dnl enabled.
+dnl
+dnl On other systems, we don't really know how to do that, but it's
+dnl welcome if somebody can tell.
+CC_CHECK_LDFLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS="-Wl,-z,nodelete"])
+AC_SUBST([NODELETE_LDFLAGS])
+
dnl Check for the proper way to build libraries that have no undefined
dnl symbols; on some hosts this needs to be avoided but the macro
dnl takes care of it.
@@ -387,6 +406,7 @@ AC_SEARCH_LIBS([timer_create], [rt])
# BSD
AC_SEARCH_LIBS([connect], [socket])
+AC_SEARCH_LIBS([backtrace], [execinfo])
# Non-standard
@@ -605,10 +625,11 @@ AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
HAVE_TDB=0
HAVE_GDBM=0
+HAVE_SIMPLEDB=0
AC_ARG_WITH(
[database],
- AS_HELP_STRING([--with-database=auto|tdb|gdbm],[Choose database backend.]),[],[with_database=auto])
+ AS_HELP_STRING([--with-database=auto|tdb|gdbm|simple],[Choose database backend.]),[],[with_database=auto])
if test "x${with_database}" = "xauto" -o "x${with_database}" = "xtdb" ; then
PKG_CHECK_MODULES(TDB, [ tdb ],
@@ -638,7 +659,12 @@ if test "x${with_database}" = "xauto" -o "x${with_database}" = "xgdbm" ; then
fi
fi
-if test "x${HAVE_TDB}" != x1 -a "x${HAVE_GDBM}" != x1; then
+if test "x${with_database}" = "xauto" -o "x${with_database}" = "xsimple" ; then
+ HAVE_SIMPLEDB=1
+ with_database=simple
+fi
+
+if test "x${HAVE_TDB}" != x1 -a "x${HAVE_GDBM}" != x1 -a "x${HAVE_SIMPLEDB}" != x1; then
AC_MSG_ERROR([*** missing database backend])
fi
@@ -650,6 +676,10 @@ if test "x${HAVE_GDBM}" = x1 ; then
AC_DEFINE([HAVE_GDBM], 1, [Have gdbm?])
fi
+if test "x${HAVE_SIMPLEDB}" = x1 ; then
+ AC_DEFINE([HAVE_SIMPLEDB], 1, [Have simple?])
+fi
+
AC_SUBST(TDB_CFLAGS)
AC_SUBST(TDB_LIBS)
AC_SUBST(HAVE_TDB)
@@ -660,28 +690,47 @@ AC_SUBST(GDBM_LIBS)
AC_SUBST(HAVE_GDBM)
AM_CONDITIONAL([HAVE_GDBM], [test "x$HAVE_GDBM" = x1])
+AC_SUBST(HAVE_SIMPLEDB)
+AM_CONDITIONAL([HAVE_SIMPLEDB], [test "x$HAVE_SIMPLEDB" = x1])
+
#### OSS support (optional) ####
-AC_ARG_ENABLE([oss],
- AS_HELP_STRING([--disable-oss],[Disable optional OSS support]),
+AC_ARG_ENABLE([oss-output],
+ AS_HELP_STRING([--disable-oss-output],[Disable optional OSS output support]),
+ [
+ case "${enableval}" in
+ yes) oss_output=yes ;;
+ no) oss_output=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss-output) ;;
+ esac
+ ],
+ [oss_output=auto])
+
+AC_ARG_ENABLE([oss-wrapper],
+ AS_HELP_STRING([--disable-oss-wrapper],[Disable optional OSS wrapper support]),
[
case "${enableval}" in
- yes) oss=yes ;;
- no) oss=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss) ;;
+ yes) oss_wrapper=yes ;;
+ no) oss_wrapper=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss-wrapper) ;;
esac
],
- [oss=auto])
+ [oss_wrapper=auto])
-if test "x${oss}" != xno ; then
+if test "x${oss_output}" != xno || test "x${oss_wrapper}" != "xno"; then
AC_CHECK_HEADERS([sys/soundcard.h],
[
+ if test "x${oss_output}" != "xno"; then
+ AC_DEFINE([HAVE_OSS_OUTPUT], 1, [Have OSS output?])
+ fi
+ if test "x${oss_wrapper}" != "xno"; then
+ AC_DEFINE([HAVE_OSS_WRAPPER], 1, [Have OSS wrapper (padsp)?])
+ fi
HAVE_OSS=1
- AC_DEFINE([HAVE_OSS], 1, [Have OSS?])
],
[
HAVE_OSS=0
- if test "x$oss" = xyes ; then
+ if test "x$oss_output" = xyes || test "x$oss_wrapper" = "xyes"; then
AC_MSG_ERROR([*** OSS support not found])
fi
])
@@ -690,8 +739,8 @@ else
fi
AC_SUBST(HAVE_OSS)
-AM_CONDITIONAL([HAVE_OSS], [test "x$HAVE_OSS" = x1])
-
+AM_CONDITIONAL([HAVE_OSS_OUTPUT], [test "x$HAVE_OSS" = x1 && test "x${oss_output}" != "xno"])
+AM_CONDITIONAL([HAVE_OSS_WRAPPER], [test "x$HAVE_OSS" = x1 && test "x${oss_wrapper}" != "xno"])
#### ALSA support (optional) ####
@@ -1079,7 +1128,27 @@ AC_SUBST(UDEV_LIBS)
AC_SUBST(HAVE_UDEV)
AM_CONDITIONAL([HAVE_UDEV], [test "x$HAVE_UDEV" = x1])
-AC_DEFINE([LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE], 1, [I know the API is subject to change.])
+#### HAL compat support (optional) ####
+
+AC_ARG_ENABLE([hal-compat],
+ AS_HELP_STRING([--disable-hal-compat],[Disable optional HAL->udev transition compatibility support]),
+ [
+ case "${enableval}" in
+ yes) halcompat=yes ;;
+ no) halcompat=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal-compat) ;;
+ esac
+ ],
+ [halcompat=auto])
+if test "x${halcompat}" != xno -a "x$HAVE_HAL" = "x0" -a "x$HAVE_UDEV" = "x1" ; then
+ HAVE_HAL_COMPAT=1
+ AC_DEFINE([HAVE_HAL_COMPAT], 1, [Have HAL compatibility.])
+else
+ HAVE_HAL_COMPAT=0
+fi
+
+AC_SUBST(HAVE_HAL_COMPAT)
+AM_CONDITIONAL([HAVE_HAL_COMPAT], [test "x$HAVE_HAL_COMPAT" = x1])
#### BlueZ support (optional) ####
@@ -1338,9 +1407,15 @@ if test "x$HAVE_X11" = "x1" ; then
ENABLE_X11=yes
fi
-ENABLE_OSS=no
+ENABLE_OSS_OUTPUT=no
+ENABLE_OSS_WRAPPER=no
if test "x$HAVE_OSS" = "x1" ; then
- ENABLE_OSS=yes
+ if test "x$enable_oss_output" != "xno"; then
+ ENABLE_OSS_OUTPUT=yes
+ fi
+ if test "x$enable_oss_wrapper" != "xno"; then
+ ENABLE_OSS_WRAPPER=yes
+ fi
fi
ENABLE_ALSA=no
@@ -1398,6 +1473,11 @@ if test "x$HAVE_UDEV" = "x1" ; then
ENABLE_UDEV=yes
fi
+ENABLE_HAL_COMPAT=no
+if test "x$HAVE_HAL_COMPAT" = "x1" ; then
+ ENABLE_HAL_COMPAT=yes
+fi
+
ENABLE_TCPWRAP=no
if test "x${LIBWRAP_LIBS}" != x ; then
ENABLE_TCPWRAP=yes
@@ -1423,6 +1503,11 @@ if test "x${HAVE_TDB}" = "x1" ; then
ENABLE_TDB=yes
fi
+ENABLE_SIMPLEDB=no
+if test "x${HAVE_SIMPLEDB}" = "x1" ; then
+ ENABLE_SIMPLEDB=yes
+fi
+
ENABLE_OPENSSL=no
if test "x${HAVE_OPENSSL}" = "x1" ; then
ENABLE_OPENSSL=yes
@@ -1451,7 +1536,8 @@ echo "
CFLAGS: ${CFLAGS}
Have X11: ${ENABLE_X11}
- Enable OSS: ${ENABLE_OSS}
+ Enable OSS Output: ${ENABLE_OSS_OUTPUT}
+ Enable OSS Wrapper: ${ENABLE_OSS_WRAPPER}
Enable Alsa: ${ENABLE_ALSA}
Enable Solaris: ${ENABLE_SOLARIS}
Enable GLib 2.0: ${ENABLE_GLIB20}
@@ -1463,6 +1549,7 @@ echo "
Enable LIRC: ${ENABLE_LIRC}
Enable HAL: ${ENABLE_HAL}
Enable udev: ${ENABLE_UDEV}
+ Enable HAL->udev compat: ${ENABLE_HAL_COMPAT}
Enable BlueZ: ${ENABLE_BLUEZ}
Enable TCP Wrappers: ${ENABLE_TCPWRAP}
Enable libsamplerate: ${ENABLE_LIBSAMPLERATE}
@@ -1470,6 +1557,7 @@ echo "
Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
Enable tdb: ${ENABLE_TDB}
Enable gdbm: ${ENABLE_GDBM}
+ Enable simple database: ${ENABLE_SIMPLEDB}
System User: ${PA_SYSTEM_USER}
System Group: ${PA_SYSTEM_GROUP}
diff --git a/man/pulse-client.conf.5.xml.in b/man/pulse-client.conf.5.xml.in
index 26e38908..46cc8450 100644
--- a/man/pulse-client.conf.5.xml.in
+++ b/man/pulse-client.conf.5.xml.in
@@ -92,9 +92,9 @@ USA.
- disable-shm= Disable data transfer via POSIX
+
enable-shm= Enable data transfer via POSIX
shared memory. Takes a boolean argument, defaults to
- no .
+ yes .
diff --git a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
index 68bcb77f..82c2b8e5 100644
--- a/man/pulse-daemon.conf.5.xml.in
+++ b/man/pulse-daemon.conf.5.xml.in
@@ -65,20 +65,21 @@ USA.
- disallow-module-loading= Disallow module loading
- after startup. This is a security feature that makes sure that
- no further modules may be loaded into the PulseAudio server
- after startup completed. It is recommended to enable this when
- system-instance is enabled. Please note that certain
- features like automatic hot-plug support will not work if this
- option is enabled. Takes a boolean argument, defaults to
- no . The --disallow-module-loading command line
- option takes precedence.
+ allow-module-loading= Allow/disallow module
+ loading after startup. This is a security feature that if
+ dsabled makes sure that no further modules may be loaded into
+ the PulseAudio server after startup completed. It is recommended
+ to disable this when system-instance is
+ enabled. Please note that certain features like automatic
+ hot-plug support will not work if this option is enabled. Takes
+ a boolean argument, defaults to yes . The
+ --disallow-module-loading command line option takes
+ precedence.
- disallow-exit= Disallow exit on user
- request. Defaults to no .
+ allow-exit= Allow/disallow exit on user
+ request. Defaults to yes .
@@ -105,19 +106,19 @@ USA.
- disable-remixing= Never upmix or downmix channels
- to different channel maps. Instead, do a simple name-based
- matching only.
+ enable-remixing= If disabled never upmix or
+ downmix channels to different channel maps. Instead, do a simple
+ name-based matching only. Defaults to yes.
- disable-lfe-remixing= When upmixing or downmixing
- ignore LFE channels. When this option is on the output LFE
- channel will only get a signal when an input LFE channel is
- available as well. If no input LFE channel is available the
- output LFE channel will always be 0. If no output LFE channel is
- available the signal on the input LFE channel will be
- ignored. Defaults to "on".
+ enable-lfe-remixing= if disabeld when upmixing or
+ downmixing ignore LFE channels. When this option is dsabled the
+ output LFE channel will only get a signal when an input LFE
+ channel is available as well. If no input LFE channel is
+ available the output LFE channel will always be 0. If no output
+ LFE channel is available the signal on the input LFE channel
+ will be ignored. Defaults to no .
@@ -132,12 +133,12 @@ USA.
- no-cpu-limit= Do not install the CPU load limiter,
- even on platforms where it is supported. This option is useful
- when debugging/profiling PulseAudio to disable disturbing
- SIGXCPU signals. Takes a boolean argument, defaults to no . The
- --no-cpu-limit command line argument takes
- precedence.
+ cpu-limit= If disabled d not install the CPU load
+ limiter, even on platforms where it is supported. This option is
+ useful when debugging/profiling PulseAudio to disable disturbing
+ SIGXCPU signals. Takes a boolean argument, defaults to
+ yes . The --no-cpu-limit command line
+ argument takes precedence.
@@ -148,9 +149,9 @@ USA.
- disable-shm= Disable data transfer via POSIX
+
enable-shm= Enable data transfer via POSIX
shared memory. Takes a boolean argument, defaults to
- no . The --disable-shm command line
+ yes . The --disable-shm command line
argument takes precedence.
@@ -204,7 +205,7 @@ USA.
real-time. The controlling thread is left a normally scheduled
thread. Thus enabling the high-priority option is orthogonal.
See for more
- information. Takes a boolean argument, defaults to "no". The
+ information. Takes a boolean argument, defaults to "yes". The
--realtime command line option takes precedence.
@@ -230,7 +231,7 @@ USA.
exit-idle-time= Terminate the daemon after the
last client quit and this time in seconds passed. Use a negative value to
- disable this feature. Defaults to -1. The
+ disable this feature. Defaults to 20. The
--exit-idle-time command line option takes
precedence.
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 534feb15..a6172442 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -55,7 +55,6 @@ src/pulsecore/queue.c
src/pulsecore/core.c
#src/pulsecore/shmasyncq.c
src/pulsecore/x11wrap.c
-src/pulsecore/rtclock.c
src/pulsecore/ioline.c
src/pulsecore/asyncq.c
src/pulsecore/mutex-posix.c
@@ -99,7 +98,6 @@ src/pulsecore/strlist.c
src/pulsecore/msgobject.c
src/pulsecore/mutex-win32.c
src/pulsecore/dynarray.c
-src/pulsecore/rtsig.c
src/pulsecore/once.c
src/pulsecore/source.c
src/pulsecore/memchunk.c
@@ -149,14 +147,12 @@ src/pulsecore/protocol-http.c
src/pulsecore/semaphore-win32.c
src/daemon/cpulimit.c
src/daemon/ltdl-bind-now.c
-src/daemon/polkit.c
src/daemon/main.c
src/daemon/cmdline.c
src/daemon/dumpmodules.c
src/daemon/daemon-conf.c
src/daemon/caps.c
src/daemon/pulseaudio.desktop.in
-src/daemon/org.pulseaudio.policy.in
src/pulse/channelmap.c
src/pulse/error.c
src/pulse/proplist.c
diff --git a/po/as.po b/po/as.po
index b2468a43..e972d827 100644
--- a/po/as.po
+++ b/po/as.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pulseaudio.as\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-08 12:35+0530\n"
"Last-Translator: Amitakhya Phukan \n"
"Language-Team: Assamese \n"
@@ -16,7 +16,12 @@ msgstr ""
"X-Generator: Lokalize 0.3\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -28,7 +33,7 @@ msgstr ""
"à¦
তি সমà§à¦à§± à¦à¦à¦à§ ALSA à¦à¦¾à¦²à¦ '%s' ৰ à¦à¦à¦¾ বাঠ। à¦
নà§à¦à§à§°à¦¹ à¦à§°à¦¿ à¦à¦ সমসà§à¦¯à¦¾ ALSA বিà¦à¦¾à¦¶à¦à¦ "
"à¦à¦¨à¦¾à¦à¦ ।"
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -40,7 +45,7 @@ msgstr ""
"à¦
তি সমà§à¦à§± à¦à¦à¦à§ ALSA à¦à¦¾à¦²à¦ '%s' ৰ à¦à¦à¦¾ বাঠ। à¦
নà§à¦à§à§°à¦¹ à¦à§°à¦¿ à¦à¦ সমসà§à¦¯à¦¾ ALSA বিà¦à¦¾à¦¶à¦à¦ "
"à¦à¦¨à¦¾à¦à¦ ।"
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -65,7 +70,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à¦à¦à§à¦¯à¦¨à§à¦¤à§°à§à¦£ à¦
'ডিà¦
'"
@@ -85,371 +90,243 @@ msgstr "নতà§à¦¨ dl loader বিতৰণ à¦à§°à¦¿à¦¬à¦²à§ বিফল
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader যà§à¦ à¦à§°à¦¿à¦¬à¦²à§ বিফল ।"
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "পà§à§°à¦£à¦¾à¦²à§à§° bus লৠসà¦à¦¯à§à¦ à¦à§°à¦¿à¦¬ পৰা ন'à¦'ল: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID ৰ পৰা caller পà§à§±à¦¾ ন'à¦'ল: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "caller বসà§à¦¤à§à¦¤ UID নিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ পৰা ন'à¦'ল ।"
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK à¦
ধিবà§à¦¶à¦¨ পাবলৠবিফল ।"
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "à¦
ধিবà§à¦¶à¦¨à§° বসà§à¦¤à§à¦¤ UID নিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction বিতৰণ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id নিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext বিতৰণ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext à¦à§°à¦®à§à¦ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "caller ৰ à¦
নà§à¦®à¦¤à¦¿ à¦à¦à§ নৠনাঠনিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "auth পাব নà§à§±à¦¾à§°à¦¿: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit ঠ'%s' à¦à¦¤à§à¦¤à§° দিলà§"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "à¦à¦¿à¦à§à¦¨à§à¦² %s পà§à§±à¦¾ à¦'ল ।"
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "পà§à§°à¦¸à§à¦¥à¦¾à¦¨ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "বà§à¦¯à§±à¦¹à¦¾à§°à¦à§°à§à¦¤à¦¾ '%s' পà§à§±à¦¾ ন'à¦'ল ।"
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "'%s' সমষà§à¦à¦¿ পà§à§±à¦¾ ন'à¦'ল ।"
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "বà§à¦¯à§±à¦¹à¦¾à§°à¦à§°à§à¦¤à¦¾ '%s' (UID %lu) à¦à§°à§ সমষà§à¦à¦¿ '%s' (GID %lu) পà§à§±à¦¾ à¦'ল ।"
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "বà§à¦¯à§±à¦¹à¦¾à§°à¦à§°à§à¦¤à¦¾ '%s' à¦à§°à§ সমষà§à¦à¦¿ '%s' ৰ GID à¦
মিল ।"
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "বà§à¦¯à§±à¦¹à¦¾à§°à¦à§°à§à¦¤à¦¾ '%s' ৰ à¦à§°à§° পà¦à§à¦à¦¿à¦à¦¾ '%s' নহà§, à¦à¦à¦à¦¾à¦£ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' সà§à¦·à§à¦à¦¿ à¦à§°à¦¿à¦¬à¦²à§ বিফল: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "সমষà§à¦à¦¿à§° তালিà¦à¦¾ সলনি à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID সলনি à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID সলনি à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "ৰà§à¦à§° à¦
ধিà¦à¦¾à§° সফলà¦à¦¾à¦¬à§ à¦à§°à§à§±à¦¾ à¦'ল ।"
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "à¦à¦ সà§à¦¥à¦¾à¦ªà¦¤à§à¦¯à¦¤ পà§à§°à¦£à¦¾à¦²à§ বà§à¦¯à¦¾à¦ªà¦ মà§à¦¡ à¦
সমৰà§à¦¥à¦¿à¦¤ ।"
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) বিফল: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à¦à¦¦à§à¦¶ শাৰৠবিশà§à¦²à§à¦·à¦£ à¦à§°à¦¿à¦¬à¦²à§ বিফল ।"
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "à¦à¦®à¦¿ '%s' সমষà§à¦à¦¿à¦¤, য'ত high-priority scheduling ৰ à¦
নà§à¦®à¦¤à¦¿ à¦à¦à§ ।"
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "à¦à¦®à¦¿ '%s' সমষà§à¦à¦¿à¦¤, য'ত real-time scheduling ৰ à¦
নà§à¦®à¦¤à¦¿ à¦à¦à§ ।"
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit ঠà¦à¦®à¦¾à¦ acquire-high-priority à¦
ধিà¦à¦¾à§° দিà§à§ ।"
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit ঠacquire-high-priority à¦
ধিà¦à¦¾à§° নিদিà§à§ ।"
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit ঠà¦à¦®à¦¾à¦ acquire-real-time à¦
ধিà¦à¦¾à§° দিà§à§ ।"
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit ঠacquire-real-time à¦
ধিà¦à¦¾à§° নিদিà§à§ ।"
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"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."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"বিনà§à¦¯à¦¾à¦¸ দà§à¦¬à¦¾à§°à¦¾ high-priority scheduling ৰ সà¦à§à§°à¦¿à§ হ'লà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à§°à¦¾ সà§à¦à¦à§ "
-"à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নহৠ।"
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO সফলতাৰৠবà§à¦¦à§à¦§à¦¿ à¦à§°à¦¾ হà§à¦à§"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO বিফল: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE বৰà§à¦à¦¨ à¦à§°à¦¾ হà§à¦à§"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"বিনà§à¦¯à¦¾à¦¸ দà§à¦¬à¦¾à§°à¦¾ real-time scheduling ৰ সà¦à§à§°à¦¿à§ হ'লà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à§°à¦¾ সà§à¦à¦à§ à¦
নà§à¦®à§à¦¦à¦¿à¦¤ "
-"নহৠ।"
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "ডà§à¦®à¦¨ নাঠà¦à¦²à¦¾"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "PID %u ৰà§à¦ªà§ ডà§à¦®à¦¨ à¦à¦²à¦¿à¦à§"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ডà§à¦®à¦¨ kill à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr ""
"root পৰিà¦à§à§ à¦à¦ পà§à§°à§à¦à§à§°à¦¾à¦® সà¦à§à¦à¦¾à¦²à¦¿à¦¤ হà§à§±à¦¾ à¦à¦à¦¿à¦¤ নহৠ(ন'হ'লৠ--system à¦à¦²à§à¦²à¦¿à¦à¦¿à¦¤ হà§) ।"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Root-ৰ à¦
ধিà¦à¦¾à§° à¦à§±à¦¶à§à¦¯à¦ ।"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "পà§à§°à¦£à¦¾à¦²à§ à¦à¦¾à¦¨à§à¦à¦¿à§° à¦à§à¦·à§à¦¤à§à§°à¦¤ --start সমৰà§à¦¥à¦¿à¦¤ নহৠ।"
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "পà§à§°à¦£à¦¾à¦²à§ মà§à¦¡à¦¤ à¦à¦²à¦¿à¦à§, à¦à¦¿à¦¨à§à¦¤à§ --disallow-exit নিৰà§à¦§à¦¾à§°à¦¿à¦¤ নহà§!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "পà§à§°à¦£à¦¾à¦²à§ মà§à¦¡à¦¤ à¦à¦²à¦¿à¦à§, à¦à¦¿à¦¨à§à¦¤à§ --disallow-module-loading নিৰà§à¦§à¦¾à§°à¦¿à¦¤ নহà§!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "পà§à§°à¦£à¦¾à¦²à§ মà§à¦¡à¦¤ à¦à¦²à¦¿à¦à§, SHM মà§à¦¡ বলপà§à§°à§à¦¬à¦ নিষà§à¦à§à§°à¦¿à§ à¦à§°à¦¾ হà§à¦à§!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"পà§à§°à¦£à¦¾à¦²à§ মà§à¦¡à¦¤ à¦à¦²à¦¿à¦à§, à¦à¦¾à¦® নà¦à§°à¦¾ সমà§à§° পৰা পà§à§°à¦¸à§à¦¥à¦¾à¦¨ à¦à§°à¦¾ বলপà§à§°à§à¦¬à¦ নিষà§à¦à§à§°à¦¿à§ à¦à§°à¦¾ হà§à¦à§!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio পà§à§°à¦¾à¦ªà§à¦¤ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥ ।"
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe বিফল: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() বিফল: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() বিফল: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ডà§à¦®à¦¨ à¦à§°à¦®à§à¦ à¦à§°à¦¿à¦¬à¦²à§ বিফল ।"
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "সফলতাৰৠডà§à¦®à¦¨ à¦à§°à¦®à§à¦ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à¦à¦à¦à§ PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "সà¦à§à¦à¦²à¦¨à§° à¦à§à¦¹à¦¸à§à¦¥: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "সà¦à§à¦à¦²à¦¨à§° CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "à¦à§à¦¹à¦¸à§à¦¥à¦¤ à¦à¦²à§à§±à¦¾ হà§à¦à§: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPU পà§à§±à¦¾ à¦à§à¦à§ ।"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "পà§à¦à§° মাপ %lu bytes"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind সমৰà§à¦¥à¦¨à§° সà§à¦¤à§ সà¦à§à¦à¦²à¦¨ à¦à§°à¦¾ হà§à¦à§: হà§"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind সমৰà§à¦¥à¦¨à§° সà§à¦¤à§ সà¦à§à¦à¦²à¦¨ à¦à§°à¦¾ হà§à¦à§: নহà§"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind মà§à¦¡à¦¤ à¦à¦²à¦¿à¦à§: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimized build: হà§"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimized build: নহà§"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG বà§à¦¯à¦¾à¦à§à¦¯à¦¾ à¦à§°à¦¾ হà§à¦à§, সà¦à¦²à§ asserts নিষà§à¦à§à§°à¦¿à§ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH বà§à¦¯à¦¾à¦à§à¦¯à¦¾ à¦à§°à¦¾ হà§à¦à§, à¦
à¦à¦² fast path asserts নিষà§à¦à§à§°à¦¿à§ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "সà¦à¦²à§ asserts সà¦à§à§°à¦¿à§ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "যনà§à¦¤à§à§° ID পà§à§°à¦¾à¦ªà§à¦¤ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "যনà§à¦¤à§à§° ID হ'ল %s ।"
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "যনà§à¦¤à§à§° ID হ'ল %s ।"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "ৰান-à¦à¦¾à¦à¦® পà¦à§à¦à¦¿à¦à¦¾ %s বà§à¦¯à§±à¦¹à¦¾à§° à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "à¦
ৱসà§à¦¥à¦¾à¦¸à§à¦à¦ পà¦à§à¦à¦¿à¦à¦¾ %s বà§à¦¯à§±à¦¹à¦¾à§° à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "পà§à§°à¦£à¦¾à¦²à§ মà§à¦¡à¦¤ à¦à¦²à¦¿à¦à§: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -459,15 +336,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() বà§à¦¯à§°à§à¦¥ ।"
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "নতà§à¦¨ high-resolution timers পà§à§±à¦¾ হà§! à¦
à¦à¦¿à¦¨à¦¨à§à¦¦à¦¨!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -475,28 +352,28 @@ msgstr ""
"শà§à§°à§à¦®à¦¾à¦¨, à¦à¦ªà§à¦¨à¦¾à§° à¦à¦¾à§°à§à¦£à§à¦² পà§à§°à¦£à¦¿! high-resolution timer সà¦à§à§°à¦¿à§ থà¦à¦¾ Linux ঠà¦à¦à¦¿ "
"à¦à¦ªà¦¦à§à¦¶ দিà§à¦¾ হà§!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() বà§à¦¯à§°à§à¦¥ ।"
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ডà§à¦®à¦¨ à¦à§°à¦®à§à¦ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥ ।"
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
"তà§à¦²à¦¿ লà§à§±à¦¾ মডিà¦à¦² নà§à¦¹à§à§±à¦¾à¦à§ ডà§à¦®à¦¨ à¦à§°à¦®à§à¦ à¦à§°à¦¾ হà§à¦à§, à¦à§à¦¨à§ à¦à¦¾à¦® সà¦à§à¦à¦¾à¦²à¦¨ à¦à§°à¦¾ সমà§à¦à§± নহৠ।"
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ডà§à¦®à¦¨ à¦à§°à¦®à§à¦ à¦à§°à¦¾ সমà§à¦ªà§à§°à§à¦£ ।"
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ডà§à¦®à¦¨ বনà§à¦§ à¦à§°à¦¾à§° পà§à§°à¦à§à§°à¦¿à§à¦¾ à¦à§°à¦®à§à¦ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ডà§à¦®à¦¨ বনà§à¦§ à¦à§°à¦¾ হà§à¦à§ ।"
@@ -831,14 +708,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### à¦à¦¿à¦¹à§à¦¨à¦¿à¦¤ বিনà§à¦¯à¦¾à¦¸ নথিপতà§à§°à§° পৰা পà§à¦¾ হ'ব: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "root-ৰ à¦
ধিà¦à¦¾à§° বৰà§à¦à¦¨ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "CAP_SYS_NICE লৠà¦à¦¾à§°à§à¦¯à§à¦¯à¦à§à¦·à¦®à¦¤à¦¾ সফলà¦à¦¾à¦¬à§ সà§à¦®à¦¿à¦¤ à¦à§°à¦¾ হ'ল ।"
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio শবà§à¦¦ বà§à¦¯à§±à¦¸à§à¦¥à¦¾"
@@ -847,24 +720,6 @@ msgstr "PulseAudio শবà§à¦¦ বà§à¦¯à§±à¦¸à§à¦¥à¦¾"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio শবà§à¦¦ বà§à¦¯à§±à¦¸à§à¦¥à¦¾ à¦à§°à¦®à§à¦ à¦à§°à¦¾ হ'ব"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio ডà§à¦®à¦¨à§° à¦à¦¾à§°à¦£à§ High-priority scheduling (à¦à¦£à¦¾à¦¤à§à¦®à¦ Unix nice সà§à¦¤à§°)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio ডà§à¦®à¦¨à§° à¦à¦¾à§°à¦£à§ Real-time scheduling"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "পà§à§°à¦£à¦¾à¦²à§à§° নà§à¦¤à¦¿à§à§ PulseAudio ঠhigh-priority scheduling পাবলৠনিদিà§à§ ।"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "পà§à§°à¦£à¦¾à¦²à§à§° নà§à¦¤à¦¿à§à§ PulseAudio ঠreal-time scheduling পাবলৠনিদিà§à§ ।"
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "মà§à¦¨à§"
@@ -1237,183 +1092,187 @@ msgstr "à¦à§à¦à¦¿à§° তথà§à¦¯ বিশà§à¦²à§à¦·à¦£ à¦à§°à¦¿à¦¬à¦²à§
msgid "Failed to open configuration file '%s': %s"
msgstr "বিনà§à¦¯à¦¾à¦¸ নথিপতà§à§° '%s' à¦à§à¦²à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à¦à§à¦¨à§ à¦à§à¦à¦¿ তà§à¦²à¦¿ লà§à§±à¦¾ নহৠ। à¦à§à¦à¦¿ নà§à¦¹à§à§±à¦¾à¦à§ সà¦à¦¯à§à¦à§° পà§à§°à¦à§à¦·à§à¦à¦¾ à¦à§°à¦¾ হà§à¦à§ ।"
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à¦
à¦à¦¾à¦¨à¦¾ à¦à¦à§à¦¸à¦à§à¦¨à¦¶à¦¨ '%s'-ৰ বাবৠবাৰà§à¦¤à¦¾ পà§à§°à¦¾à¦ªà§à¦¤ হà§à¦à§"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "সà§à¦à§à§°à¦¿à¦® drain à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "পà§à¦²à§à¦¬à§à¦ সà§à¦à§à§°à¦¿à¦®à¦ drain à¦à§°à¦¾ হ'ল ।\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "সà§à§±à¦à§° সà§à¦¤à§ সà¦à¦¯à§à¦ Drain à¦à§°à¦¾ হà§à¦à§ ।\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() বà§à¦¯à§°à§à¦¥: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "সফলতাৰৠসà§à¦à§à§°à¦¿à¦® নিৰà§à¦®à¦¿à¦¤ হà§à¦à§ ।\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Buffer metrics: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "à¦à¦¾à¦¨à§à¦à¦¿ spec '%s', à¦à§à¦¨à§à¦² মà§à¦ª '%s'পà§à§°à§à§à¦ à¦à§°à¦¾ হà§à¦à§\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "যনà§à¦¤à§à§° %s-ৰ সà§à¦¤à§ সà¦à¦¯à§à¦ à¦à§°à¦¾ হà§à¦à§ (%u, %ssuspended) ।\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ষà§à¦à§à§°à¦¿à¦® সà¦à¦à§à§°à¦¾à¦¨à§à¦¤ তà§à§°à§à¦à¦¿: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "সà§à¦à§à§°à¦¿à¦® যনà§à¦¤à§à§° সà§à¦¥à¦à¦¿à¦¤ à¦à§°à¦¾ হà§à¦à§ । %s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "সà§à¦à§à§°à¦¿à¦® যনà§à¦¤à§à§° পà§à¦¨à§°à¦¾à§°à¦®à§à¦ à¦à§°à¦¾ হà§à¦à§ । %s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ষà§à¦à§à§°à¦¿à¦® underrun: %s\n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "ষà§à¦à§à§°à¦¿à¦® overrun: %s\n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "সà§à¦à§à§°à¦¿à¦® à¦à§°à¦®à§à¦ à¦à§°à¦¾ হà§à¦à§ । %s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "%s যনà§à¦¤à§à§°à¦²à§ সà§à¦à§à§°à¦¿à¦® সà§à¦¥à¦¾à¦¨à¦¾à¦¨à§à¦¤à§° à¦à§°à¦¾ হà§à¦à§ (%u, %ssuspended) ।%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "not "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "সà§à¦à§à§°à¦¿à¦® পà§à§°à¦¶à¦®à¦à§° à¦à§à¦£ পৰিবৰà§à¦¤à¦¿à¦¤ হà§à¦à§ । %s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "সà¦à¦¯à§à¦ সà§à¦¥à¦¾à¦ªà¦¿à¦¤ হà§à¦à§ ।%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "সà¦à¦¯à§à¦à§° মà§à¦¡ : %s \n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF পà§à§±à¦¾ à¦'ল ।\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() বà§à¦¯à§°à§à¦¥: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF পà§à§±à¦¾ à¦'ল ।\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() বà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "à¦à¦¿à¦à§à¦¨à§à¦² পà§à§±à¦¾ à¦'ল, পà§à§°à¦¸à§à¦¥à¦¾à¦¨ à¦à§°à¦¾ হà§à¦à§ ।\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "latency পাবলৠবà§à¦¯à§°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "সমà§: %0.3f sec; Latency: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() বà§à¦¯à§°à§à¦¥: %s\n"
#: ../src/utils/pacat.c:605
@@ -1535,34 +1394,34 @@ msgstr ""
"libpulse ৰ সà§à¦¤à§ সà¦à§à¦à¦²à¦¨ à¦à§°à¦¾ হà§à¦à§ %s\n"
"libpulse ৰ সà§à¦¤à§ যà§à¦à§à¦¤ %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à¦à§à¦¨à§à¦² মà§à¦ª '%s' বà§à¦§ নহà§\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "resample পদà§à¦§à¦¤à¦¿ '%s' বà§à¦§ নহৠ।"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à¦à§à¦¨à§à¦² মà§à¦ª '%s' বà§à¦§ নহà§\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à¦
বà§à¦§ latency নিৰà§à¦§à¦¾à§°à¦£ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à¦
বà§à¦§ পà§à§°à¦à§à§°à¦¿à§à¦¾à§° সমà§à§° নিৰà§à¦§à¦¾à§°à¦£ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "resample পদà§à¦§à¦¤à¦¿ '%s' বà§à¦§ নহৠ।"
#: ../src/utils/pacat.c:878
@@ -1571,60 +1430,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à¦
বà§à¦§ à¦à¦¾à¦¨à§à¦à¦¿ নিৰà§à¦§à¦¾à§°à¦¿à¦¤\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "à¦
তà§à¦¯à¦¾à¦§à¦¿à¦ তৰà§à¦ ।\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "à¦à¦¾à¦¨à§à¦à¦¿ সà¦à¦à§à§°à¦¾à¦¨à§à¦¤ তথà§à¦¯ পà§à§°à¦¾à¦ªà§à¦¤ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "শবà§à¦¦à§à§° নথিপতà§à§° à¦à§à¦²à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥ ।\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "à¦à¦à¦¾ %s সà§à¦à§à§°à¦¿à¦® à¦à¦¾à¦¨à§à¦à¦¿ নিৰà§à¦§à¦¾à§°à¦£ '%s' ৰ সà§à¦¤à§ à¦à§à¦²à¦¾ হà§à¦à§ ।\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "à¦à¦¾à¦¨à§à¦à¦¿ সà¦à¦à§à§°à¦¾à¦¨à§à¦¤ তথà§à¦¯ পà§à§°à¦¾à¦ªà§à¦¤ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "à¦à¦à¦¾ %s সà§à¦à§à§°à¦¿à¦® à¦à¦¾à¦¨à§à¦à¦¿ নিৰà§à¦§à¦¾à§°à¦£ '%s' ৰ সà§à¦¤à§ à¦à§à¦²à¦¾ হà§à¦à§ ।\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à¦à§à¦¨à§à¦² মà§à¦ª à¦à§°à§ নথিপতà§à§° à¦
মিল ।\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "à¦à¦à¦¾ %s সà§à¦à§à§°à¦¿à¦® à¦à¦¾à¦¨à§à¦à¦¿ নিৰà§à¦§à¦¾à§°à¦£ '%s' ৰ সà§à¦¤à§ à¦à§à¦²à¦¾ হà§à¦à§ ।\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "à¦à¦à¦¾ %s সà§à¦à§à§°à¦¿à¦® à¦à¦¾à¦¨à§à¦à¦¿ নিৰà§à¦§à¦¾à§°à¦£ '%s' ৰ সà§à¦¤à§ à¦à§à¦²à¦¾ হà§à¦à§ ।\n"
#: ../src/utils/pacat.c:1006
@@ -1635,35 +1500,34 @@ msgstr "ৰà§à¦à§°à§à¦¡ à¦à§°à¦¾ হà§à¦à§"
msgid "playback"
msgstr "পà§à¦²à§-বà§à¦"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() বà§à¦¯à§°à§à¦¥ ।\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() বà§à¦¯à§°à§à¦¥ ।\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() বà§à¦¯à§°à§à¦¥ ।\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() বà§à¦¯à§°à§à¦¥: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() বà§à¦¯à§°à§à¦¥ ।\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() বà§à¦¯à§°à§à¦¥ ।\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() বà§à¦¯à§°à§à¦¥ ।\n"
#: ../src/utils/pasuspender.c:81
@@ -1691,6 +1555,11 @@ msgstr "পà§à¦¨à§°à¦¾à§°à¦®à§à¦ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "সতৰà§à¦à¦¬à¦¾à§°à§à¦¤à¦¾: ধà§à¦¬à¦¨à¦¿ সà§à§±à¦ সà§à¦¥à¦¾à¦¨à§à§ নহà§, সà§à¦¥à¦à¦¿à¦¤ à¦à§°à¦¾ নহৠ।\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "সà¦à¦¯à§à¦à§° মà§à¦¡ : %s \n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1731,6 +1600,21 @@ msgstr ""
"libpulse ৰ সà§à¦¤à§ সà¦à§à¦à¦²à¦¨ à¦à§°à¦¾ হà§à¦à§ %s\n"
"libpulse ৰ সà§à¦¤à§ যà§à¦à§à¦¤ %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() বà§à¦¯à§°à§à¦¥ ।\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() বà§à¦¯à§°à§à¦¥ ।\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() বà§à¦¯à§°à§à¦¥ ।\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2145,6 +2029,11 @@ msgstr ""
"libpulseৰ সà§à¦¤à§ সà¦à§à¦à¦²à¦¨ à¦à§°à¦¾ %s\n"
"libpulse-ৰ সà§à¦¤à§ যà§à¦à§à¦¤ %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à¦à§à¦¨à§à¦² মà§à¦ª '%s' বà§à¦§ নহà§\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "তà§à¦²à¦¿ লà§à§±à¦¾à§° à¦à¦¦à§à¦¦à§à¦¶à§à¦¯à§ à¦
নà§à¦à§à§°à¦¹ à¦à§°à§ à¦à¦à¦à¦¿ à¦à¦¾à¦¨à§à¦à¦¿ নথিপতà§à§° à¦à¦²à§à¦²à§à¦ à¦à§°à§à¦¨\n"
@@ -2153,6 +2042,11 @@ msgstr "তà§à¦²à¦¿ লà§à§±à¦¾à§° à¦à¦¦à§à¦¦à§à¦¶à§à¦¯à§ à¦
নà§à¦à§
msgid "Failed to open sound file.\n"
msgstr "শবà§à¦¦à§à§° নথিপতà§à§° à¦à§à¦²à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥ ।\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "à¦à¦¾à¦¨à§à¦à¦¿ সà¦à¦à§à§°à¦¾à¦¨à§à¦¤ তথà§à¦¯ পà§à§°à¦¾à¦ªà§à¦¤ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2212,11 +2106,6 @@ msgstr "à¦à¦¾à§°à§à¦¡à§à§° নাম/à¦à¦¨à§à¦¡à§à¦à§à¦¸ à¦à§°à§ à¦
msgid "No valid command specified.\n"
msgstr "সà¦à§à¦à¦¾à¦²à¦¨à§° বাবৠà¦à¦¦à§à¦¶ নিৰà§à¦§à¦¾à§°à¦¿à¦¤ নহৠ।\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() বà§à¦¯à§°à§à¦¥: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2333,11 +2222,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn লঠপà§à§°à§à§à¦ à¦à§°à¦¿à¦¬à¦²à§ বà§à¦¯à§°à§à¦¥ ।"
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2353,7 +2242,7 @@ msgstr ""
"POLLOUT নিৰà§à¦§à¦¾à§°à¦¿à¦¤ হà§à§±à¦¾à§°à¦¿ পিà¦à¦¤à§ à¦à¦®à¦¿ à¦à¦¥à¦¿à¦²à§ -- à¦à¦¿à¦¨à§à¦¤à§ তাৰ পিà¦à§° snd_pcm_avail() ঠ০ "
"দিলৠবা à¦
নà§à¦¯ à¦à¦à¦¾ মান < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2370,15 +2259,15 @@ msgstr ""
"দিলৠবা à¦
নà§à¦¯ à¦à¦à¦¾ মান < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "বনà§à¦§"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "High Fidelity Playback (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telephony Duplex (HSP/HFP)"
@@ -2386,6 +2275,133 @@ msgstr "Telephony Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio ধà§à¦¬à¦¨à¦¿ সà§à§±à¦"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "পà§à§°à¦£à¦¾à¦²à§à§° bus লৠসà¦à¦¯à§à¦ à¦à§°à¦¿à¦¬ পৰা ন'à¦'ল: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID ৰ পৰা caller পà§à§±à¦¾ ন'à¦'ল: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "caller বসà§à¦¤à§à¦¤ UID নিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ পৰা ন'à¦'ল ।"
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK à¦
ধিবà§à¦¶à¦¨ পাবলৠবিফল ।"
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "à¦
ধিবà§à¦¶à¦¨à§° বসà§à¦¤à§à¦¤ UID নিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction বিতৰণ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id নিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext বিতৰণ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿ ।"
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext à¦à§°à¦®à§à¦ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "caller ৰ à¦
নà§à¦®à¦¤à¦¿ à¦à¦à§ নৠনাঠনিৰà§à¦§à¦¾à§°à¦£ à¦à§°à¦¿à¦¬ নà§à§±à¦¾à§°à¦¿: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "auth পাব নà§à§±à¦¾à§°à¦¿: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit ঠ'%s' à¦à¦¤à§à¦¤à§° দিলà§"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "PulseAudio ডà§à¦®à¦¨à§° à¦à¦¾à§°à¦£à§ High-priority scheduling (à¦à¦£à¦¾à¦¤à§à¦®à¦ Unix nice সà§à¦¤à§°)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio ডà§à¦®à¦¨à§° à¦à¦¾à§°à¦£à§ Real-time scheduling"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr "পà§à§°à¦£à¦¾à¦²à§à§° নà§à¦¤à¦¿à§à§ PulseAudio ঠhigh-priority scheduling পাবলৠনিদিà§à§ ।"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "পà§à§°à¦£à¦¾à¦²à§à§° নà§à¦¤à¦¿à§à§ PulseAudio ঠreal-time scheduling পাবলৠনিদিà§à§ ।"
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() বà§à¦¯à§°à§à¦¥: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() বà§à¦¯à§°à§à¦¥: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "à¦à¦®à¦¿ '%s' সমষà§à¦à¦¿à¦¤, য'ত high-priority scheduling ৰ à¦
নà§à¦®à¦¤à¦¿ à¦à¦à§ ।"
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "à¦à¦®à¦¿ '%s' সমষà§à¦à¦¿à¦¤, য'ত real-time scheduling ৰ à¦
নà§à¦®à¦¤à¦¿ à¦à¦à§ ।"
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit ঠà¦à¦®à¦¾à¦ acquire-high-priority à¦
ধিà¦à¦¾à§° দিà§à§ ।"
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit ঠacquire-high-priority à¦
ধিà¦à¦¾à§° নিদিà§à§ ।"
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit ঠà¦à¦®à¦¾à¦ acquire-real-time à¦
ধিà¦à¦¾à§° দিà§à§ ।"
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit ঠacquire-real-time à¦
ধিà¦à¦¾à§° নিদিà§à§ ।"
+
+#~ 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 ""
+#~ "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."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "বিনà§à¦¯à¦¾à¦¸ দà§à¦¬à¦¾à§°à¦¾ high-priority scheduling ৰ সà¦à§à§°à¦¿à§ হ'লà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à§°à¦¾ সà§à¦à¦à§ "
+#~ "à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নহৠ।"
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO সফলতাৰৠবà§à¦¦à§à¦§à¦¿ à¦à§°à¦¾ হà§à¦à§"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO বিফল: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE বৰà§à¦à¦¨ à¦à§°à¦¾ হà§à¦à§"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "বিনà§à¦¯à¦¾à¦¸ দà§à¦¬à¦¾à§°à¦¾ real-time scheduling ৰ সà¦à§à§°à¦¿à§ হ'লà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à§°à¦¾ সà§à¦à¦à§ "
+#~ "à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নহৠ।"
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "CAP_SYS_NICE লৠà¦à¦¾à§°à§à¦¯à§à¦¯à¦à§à¦·à¦®à¦¤à¦¾ সফলà¦à¦¾à¦¬à§ সà§à¦®à¦¿à¦¤ à¦à§°à¦¾ হ'ল ।"
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() বà§à¦¯à§°à§à¦¥ ।\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analog Mono"
diff --git a/po/bn_IN.po b/po/bn_IN.po
index 9214f16c..eac68825 100644
--- a/po/bn_IN.po
+++ b/po/bn_IN.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-08 16:21+0530\n"
"Last-Translator: Runa Bhattacharjee \n"
"Language-Team: Bengali INDIA \n"
@@ -17,7 +17,12 @@ msgstr ""
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -29,7 +34,7 @@ msgstr ""
"সমà§à¦à¦¬à¦¤ à¦à¦à¦¿ ALSA ডà§à¦°à¦¾à¦à¦à¦¾à¦° '%s'-র à¦à¦à¦à¦¿ বাà¦à¥¤ à¦
নà§à¦à§à¦°à¦¹ à¦à¦°à§ à¦à¦ সমসà§à¦¯à¦¾ সমà§à¦¬à¦¨à§à¦§à§ ALSA "
"ডিà¦à§à¦²à¦ªà¦°à¦¦à§à¦° সà§à¦à¦¿à¦¤ à¦à¦°à§à¦¨à¥¤"
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -41,7 +46,7 @@ msgstr ""
"সমà§à¦à¦¬à¦¤ à¦à¦à¦¿ ALSA ডà§à¦°à¦¾à¦à¦à¦¾à¦° '%s'-র à¦à¦à¦à¦¿ বাà¦à¥¤ à¦
নà§à¦à§à¦°à¦¹ à¦à¦°à§ à¦à¦ সমসà§à¦¯à¦¾ সমà§à¦¬à¦¨à§à¦§à§ ALSA "
"ডিà¦à§à¦²à¦ªà¦°à¦¦à§à¦° সà§à¦à¦¿à¦¤ à¦à¦°à§à¦¨à¥¤"
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -66,7 +71,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à¦
à¦à§à¦¯à¦¨à§à¦¤à¦°à§à¦£ à¦
ডিà¦"
@@ -86,373 +91,246 @@ msgstr "নতà§à¦¨ dl লà§à¦¡à¦¾à¦° বরাদà§à¦¦ à¦à¦°à¦¤à§ বà§
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader যà§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "সিসà§à¦à§à¦® বাসà§à¦° সাথৠসà¦à¦¯à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID থà§à¦à§ à¦à¦²à¦¾à¦°à§à¦° তথà§à¦¯ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "à¦à¦²à¦¾à¦° à¦
বà¦à§à¦à§à¦à§à¦° UID নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK সà§à¦¶à¦¾à¦¨ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "সà§à¦¶à¦¾à¦¨ à¦
বà¦à§à¦à§à¦à§à¦° UID নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction বরাদà§à¦¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext বরাদà§à¦¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext à¦à¦°à¦®à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "à¦à¦²à¦¾à¦° à¦
নà§à¦®à§à¦¦à¦¿à¦¤ à¦à¦¿ না তা নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¾ সমà§à¦à¦¬ নà§: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "auth পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit থà§à¦à§ '%s' পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "%s সিà¦à¦¨à§à¦¯à¦¾à¦² পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "পà§à¦°à¦¸à§à¦¥à¦¾à¦¨ à¦à¦°à¦¾ হà¦à§à¦à§à¥¤"
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "'%s' বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦à¦¾à¦°à§ সনà§à¦§à¦¾à¦¨ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "দল '%s' সনà§à¦§à¦¾à¦¨ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦à¦¾à¦°à§ '%s' (UID %lu) ঠদল '%s' (GID %lu) পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "'%s' বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦à¦¾à¦°à§à¦° ঠ'%s' দলà§à¦° GID-র মধà§à¦¯à§ à¦à¦°à¦®à¦¿à¦²à¥¤"
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr ""
"'%s' বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦à¦¾à¦°à§ বà§à¦¯à¦à§à¦¤à¦¿à¦à¦¤ ডিরà§à¦à§à¦à¦°à¦¿ রà§à¦ªà§ '%s' ধারà§à¦¯ à¦à¦°à¦¾ হà§à¦¨à¦¿, à¦
à¦à§à¦°à¦¾à¦¹à§à¦¯ à¦à¦°à¦¾ হবà§à¥¤"
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' নিরà§à¦®à¦¾à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "দলà§à¦° তালিà¦à¦¾ পরিবরà§à¦¤à¦¨ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID পরিবরà§à¦¤à¦¨ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID পরিবরà§à¦¤à¦¨ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "root-র à¦
ধিà¦à¦¾à¦° সাফলà§à¦¯à§à¦° সাথৠবরà§à¦à¦¨ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "à¦à¦ পà§à¦²à§à¦¯à¦¾à¦à¦«à¦°à§à¦®à§, সিসà§à¦à§à¦®à¦¬à§à¦¯à¦¾à¦ªà§ মà§à¦¡ সমরà§à¦¥à¦¿à¦¤ নà§à¥¤"
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) বিফল: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à¦à¦®à¦¾à¦¨à§à¦¡-লাà¦à¦¨ পারà§à¦¸ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "à¦
ধিঠà¦à§à¦°à§à¦¤à§à¦¬à¦¸à¦¹ শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§à¦à¦¾à¦°à§ '%s' দলৠà¦à¦®à¦°à¦¾ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤à¥¤"
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "রিà§à§à¦²-à¦à¦¾à¦à¦® শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§à¦à¦¾à¦°à§ '%s' দলৠà¦à¦®à¦°à¦¾ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤à¥¤"
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-high-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-high-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¤à§à¦¯à¦¾à¦à§à¦¯à¦¾à¦¤ হà§à§à¦à§à¥¤"
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-real-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-real-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¤à§à¦¯à¦¾à¦à§à¦¯à¦¾à¦¤ হà§à§à¦à§à¥¤"
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID root à¦à¦² à¦à¦°à¦¾ হà§à§à¦à§ à¦à¦¬à¦ à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨à§à¦° মধà§à¦¯à§ রিà§à§à¦²-à¦à¦¾à¦à¦® à¦à¦¬à¦/à¦
থবা à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° "
-"শিডিà¦à¦²à¦¿à¦à§à§à¦° à¦
নà§à¦°à§à¦§ à¦à¦¾à¦¨à¦¾à¦¨à§ হà§à§à¦à§, à¦à¦¿à¦¨à§à¦¤à§ পরà§à¦¯à¦¾à¦ªà§à¦¤ à¦
নà§à¦®à¦¤à¦¿ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤ নà§à¦:\n"
-"'%s' দলৠà¦
নà§à¦¤à¦°à§à¦à§à¦à§à¦¤ নà§, PolicyKit দà§à¦¬à¦¾à¦°à¦¾ পরà§à¦¯à¦¾à¦ªà§à¦¤ à¦
নà§à¦®à¦¤à¦¿ পà§à¦°à¦¦à¦¾à¦¨ à¦à¦°à¦¾ হà§à¦¨à¦¿ à¦à¦¬à¦ "
-"RLIMIT_NICE/RLIMIT_RTPRIO রিসà§à¦°à§à¦¸à§à¦° সà§à¦®à¦¾ বà§à¦¦à§à¦§à¦¿à¦° à¦à¦°à¦¤à§ হবà§à¥¤\n"
-"রিà§à§à¦²-à¦à¦¾à¦à¦®/à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦ সà¦à§à¦°à¦¿à§ à¦à¦°à¦¾à¦° à¦à¦¨à§à¦¯ à¦
নà§à¦à§à¦°à¦¹ à¦à¦°à§ পà§à¦°à¦¯à§à¦à§à¦¯ PolicyKit "
-"à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à§à¦¨, à¦
থবা '%s' দলà§à¦° সদসà§à¦¯ হন, à¦
থবা সà¦à¦¶à§à¦²à¦¿à¦·à§à¦ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦à¦¾à¦°à§à¦° à¦à¦¨à§à¦¯ "
-"RLIMIT_NICE/RLIMIT_RTPRIO রিসà§à¦°à§à¦¸à§à¦° সà§à¦®à¦¾ বà§à¦¦à§à¦§à¦¿ à¦à¦°à§à¦¨à¥¤"
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨ দà§à¦¬à¦¾à¦°à¦¾ high-priority শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§ হলà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à¦°à¦¾ "
-"তা à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নà§à¥¤"
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO সাফলà§à¦¯à§à¦° সাথৠবà§à¦¦à§à¦§à¦¿ à¦à¦°à¦¾ হà§à§à¦à§"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO বিফল: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE বরà§à¦à¦¨ à¦à¦°à¦¾ হà¦à§à¦à§"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨ দà§à¦¬à¦¾à¦°à¦¾ real-time শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§ হলà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à¦°à¦¾ তা "
-"à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নà§à¥¤"
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "ডà§à¦®à¦¨ à¦à¦²à¦à§ না"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "PID %u রà§à¦ªà§ ডà§à¦®à¦¨ à¦à¦²à¦à§"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ডà§à¦®à¦¨ kill à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr ""
"root পরিà¦à§à§ à¦à¦ পà§à¦°à§à¦à§à¦°à¦¾à¦®à¦à¦¿ সà¦à§à¦à¦¾à¦²à¦¿à¦¤ হà¦à§à¦¾ à¦à¦à¦¿à¦¤ নৠ(যদি না --system à¦à¦²à§à¦²à¦¿à¦à¦¿à¦¤ হà§)।"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Root-র à¦
ধিà¦à¦¾à¦° à¦à¦¬à¦¶à§à¦¯à¦à¥¤"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "সিসà§à¦à§à¦® à¦à¦¨à¦¸à§à¦à§à¦¯à¦¾à¦¨à§à¦¸à§à¦° à¦à§à¦·à§à¦¤à§à¦°à§ --start সমরà§à¦¥à¦¿à¦¤ নà§à¥¤"
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "সিসà§à¦à§à¦® মà§à¦¡à§ à¦à¦²à¦à§, à¦à¦¿à¦¨à§à¦¤à§ --disallow-exit নিরà§à¦§à¦¾à¦°à¦¿à¦¤ হà§à¦¨à¦¿!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "সিসà§à¦à§à¦® মà§à¦¡à§ à¦à¦²à¦à§, à¦à¦¿à¦¨à§à¦¤à§ --disallow-module-loading নিরà§à¦§à¦¾à¦°à¦¿à¦¤ হà§à¦¨à¦¿!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "সিসà§à¦à§à¦® মà§à¦¡à§ à¦à¦²à¦à§, SHM মà§à¦¡ বলপà§à¦°à§à¦¬à¦ নিষà§à¦à§à¦°à¦¿à§ à¦à¦°à¦¾ হà¦à§à¦à§!"
# http://linux.die.net/man/1/pulseaudio à¦à¦à¦¾à¦¨à§ রà§à¦«à¦¾à¦°à§à¦¨à§à¦¸ পাà¦à§à¦¾ যাবà§
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"সিসà§à¦à§à¦® মà§à¦¡à§ à¦à¦²à¦à§, à¦à¦°à§à¦®à¦¹à§à¦¨ à¦
বসà§à¦¥à¦¾à¦° à¦à¦¨à§à¦¯ ধারà§à¦¯ সমà§à¦¸à§à¦®à¦¾ পà§à¦°à§à¦¤à§ পরৠপà§à¦°à¦¸à§à¦¥à¦¾à¦¨à§à¦° বà§à¦¯à¦¬à¦¸à§à¦¥à¦¾ "
"বলপà§à¦°à§à¦¬à¦ নিষà§à¦à§à¦°à¦¿à§ à¦à¦°à¦¾ হà¦à§à¦à§!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "পাà¦à¦ª বিফল: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() বিফল: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() বিফল: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ডà§à¦®à¦¨ à¦à¦°à¦®à§à¦ à¦à¦°à¦¤à§ বিফল।"
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "সাফলà§à¦¯à§à¦° সাথৠডà§à¦®à¦¨ à¦à¦°à¦®à§à¦ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à¦à¦à¦¿ PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "à¦à¦®à§à¦ªà¦¾à¦à¦²à§à¦¶à¦¨à§à¦° হà§à¦¸à§à¦: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "à¦à¦®à§à¦ªà¦¾à¦à¦²à¦¶à¦¨à§à¦° CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "à¦à¦¿à¦¹à§à¦¨à¦¿à¦¤ হà§à¦¸à§à¦à§ à¦à¦²à¦à§: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPU পাà¦à§à¦¾ à¦à¦¿à§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "পà§à¦à§à¦° মাপ %lu বাà¦à¦"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind সমরà§à¦¥à¦¨ সহ à¦à¦®à§à¦ªà¦¾à¦à¦² à¦à¦°à¦¾ হà§à§à¦à§: হà§à¦¯à¦¾à¦"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind সমরà§à¦¥à¦¨ সহ à¦à¦®à§à¦ªà¦¾à¦à¦² à¦à¦°à¦¾ হà§à§à¦à§: না"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind মà§à¦¡à§ à¦à¦²à¦à§: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "সরà§à¦¬à¦¾à¦ªà§à¦à§à¦· à¦à¦¤à§à¦¤à¦® বিলà§à¦¡: হà§à¦¯à¦¾à¦"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "সরà§à¦¬à¦¾à¦ªà§à¦à§à¦· à¦à¦¤à§à¦¤à¦® বিলà§à¦¡: না"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG বà§à¦¯à¦¾à¦à§à¦¯à¦¾ à¦à¦°à¦¾ হà§à§à¦à§, সà¦à¦² à¦
à§à¦¯à¦¾à¦¸à¦¾à¦°à§à¦ নিষà§à¦à§à¦°à¦¿à§ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH বà§à¦¯à¦¾à¦à§à¦¯à¦¾ à¦à¦°à¦¾ হà§à§à¦à§, শà§à¦§à§à¦®à¦¾à¦¤à§à¦° ফাসà§à¦ পাথ à¦
à§à¦¯à¦¾à¦¸à¦¾à¦°à§à¦ নিষà§à¦à§à¦°à¦¿à§ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "সà¦à¦² à¦
à§à¦¯à¦¾à¦¸à¦¾à¦°à§à¦ সà¦à§à¦°à¦¿à§ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "মà§à¦¶à¦¿à¦¨ ID পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "মà§à¦¶à¦¿à¦¨ ID হল %s।"
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "মà§à¦¶à¦¿à¦¨ ID হল %s।"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "রান-à¦à¦¾à¦à¦® ডিরà§à¦à§à¦à¦°à¦¿ %s বà§à¦¯à¦¬à¦¹à¦¾à¦° à¦à¦°à¦¾ হà¦à§à¦à§à¥¤"
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "à¦
বসà§à¦¥à¦¾à¦¸à§à¦à¦ ডিরà§à¦à§à¦à¦°à¦¿ %s বà§à¦¯à¦¬à¦¹à¦¾à¦° à¦à¦°à¦¾ হà¦à§à¦à§à¥¤"
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "সিসà§à¦à§à¦® মà§à¦¡à§ à¦à¦²à¦à§: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -462,42 +340,42 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "à¦à¦à§à¦-রà§à¦¸à§à¦²à¦¿à¦à¦¶à¦¨à§à¦° নতà§à¦¨ à¦à¦¾à¦à¦®à¦¾à¦° à¦à¦ªà¦²à¦¬à§à¦§ রà§à§à¦à§! পরà§à¦à§à¦·à¦¾ à¦à¦°à§ দà§à¦à§à¦¨!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr "à¦à¦à§à¦-রà§à¦¸à§à¦²à¦¿à¦à¦¶à¦¨à§à¦° নতà§à¦¨ à¦à¦¾à¦à¦®à¦¾à¦° সহ Linux সà¦à§à¦°à¦¿à§ à¦à¦°à¦¾ বাà¦à§à¦à¦¨à§à§!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ডà§à¦®à¦¨ à¦à¦°à¦®à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
"লà§à¦¡ à¦à¦°à¦¾ মডিà¦à¦² বিনা ডà§à¦®à¦¨ à¦à¦°à¦®à§à¦ à¦à¦°à¦¾ হà§à§à¦à§ à¦à¦¬à¦ à¦à§à¦¨à§ à¦à¦°à§à¦® সà¦à§à¦à¦¾à¦²à¦¨ à¦à¦°à¦¾ সমà§à¦à¦¬ নà§à¥¤"
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ডà§à¦®à¦¨ à¦à¦°à¦®à§à¦ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ডà§à¦®à¦¨ বনà§à¦§ à¦à¦°à¦¾à¦° পà§à¦°à¦à§à¦°à¦¿à§à¦¾ à¦à¦°à¦®à§à¦ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ডà§à¦®à¦¨ বনà§à¦§ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
@@ -841,14 +719,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### à¦à¦¿à¦¹à§à¦¨à¦¿à¦¤ à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨ ফাà¦à¦² থà§à¦à§ পà§à¦¾ হবà§: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "root-র à¦
ধিà¦à¦¾à¦° বরà§à¦à¦¨ à¦à¦°à¦¾ হà¦à§à¦à§à¥¤"
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "সাফলà§à¦¯à§à¦° সাথৠCAP_SYS_NICE-ঠà¦à¦°à§à¦®à¦à§à¦·à¦®à¦¤à¦¾ সà§à¦®à¦¿à¦¤ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio শবà§à¦¦ বà§à¦¯à¦¬à¦¸à§à¦¥à¦¾"
@@ -857,28 +731,6 @@ msgstr "PulseAudio শবà§à¦¦ বà§à¦¯à¦¬à¦¸à§à¦¥à¦¾"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio শবà§à¦¦ বà§à¦¯à¦¬à¦¸à§à¦¥à¦¾ à¦à¦°à¦®à§à¦ à¦à¦°à¦¾ হবà§"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio ডà§à¦®à¦¨à§à¦° à¦à¦¨à§à¦¯ à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦ (Unix nice-র মাতà§à¦°à¦¾ নà¦à¦°à§à¦¥à¦)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio ডà§à¦®à¦¨à§à¦° à¦à¦¨à§à¦¯ রিà§à§à¦²-à¦à¦¾à¦à¦® শিডিà¦à¦²à¦¿à¦"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"সিসà§à¦à§à¦®à§à¦° নিà§à¦®-নà§à¦¤à¦¿à¦° à¦à¦¾à¦°à¦£à§ PulseAudio দà§à¦¬à¦¾à¦°à¦¾ à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦ পà§à¦°à§à§à¦ à¦à¦°à¦¾ "
-"সমà§à¦à¦¬ হà¦à§à¦à§ না।"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"সিসà§à¦à§à¦®à§à¦° নিà§à¦®-নà§à¦¤à¦¿à¦° à¦à¦¾à¦°à¦£à§ PulseAudio দà§à¦¬à¦¾à¦°à¦¾ রিà§à§à¦²-à¦à¦¾à¦à¦® শিডিà¦à¦²à¦¿à¦ পà§à¦°à§à§à¦ à¦à¦°à¦¾ "
-"সমà§à¦à¦¬ হà¦à§à¦à§ না।"
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "মà§à¦¨à§"
@@ -1251,187 +1103,191 @@ msgstr "à¦à§à¦à¦¿à¦° তথà§à¦¯ পারà§à¦¸ à¦à¦°à¦¤à§ বà§à¦¯à¦°
msgid "Failed to open configuration file '%s': %s"
msgstr "à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨ ফাà¦à¦² '%s' à¦à§à¦²à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à¦à§à¦¨à§ à¦à§à¦à¦¿ লà§à¦¡ à¦à¦°à¦¾ হà§à¦¨à¦¿à¥¤ à¦à§à¦à¦¿ বিনা সà¦à¦¯à§à¦à§à¦° পà§à¦°à¦à§à¦·à§à¦à¦¾ à¦à¦°à¦¾ হà¦à§à¦à§à¥¤"
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à¦
à¦à¦¾à¦¨à¦¾ à¦à¦à§à¦¸à¦à§à¦¨à¦¶à¦¨ '%s'-র à¦à¦¨à§à¦¯ বারà§à¦¤à¦¾ পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§"
# drain a stream = যà¦à¦¨ সà§à¦à§à¦°à¦¿à¦®à§à¦° মধà§à¦¯à§ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤ সà¦à¦² তথà§à¦¯ à¦à¦¹à¦°à¦£ à¦à¦°à¦¾ হৠঠসà§à¦à§à¦°à¦¿à¦®à¦à¦¿ সমà§à¦ªà§à¦°à§à¦£à¦°à§à¦ªà§ ফাà¦à¦à¦¾ হà§à§ যাà§à¥¤
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "সà§à¦à§à¦°à¦¿à¦® ডà§à¦°à§à¦à¦¨ (à¦
রà§à¦¥à¦¾à§ ফাà¦à¦à¦¾) à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "পà§à¦²à§-বà§à¦¯à¦¾à¦ সà§à¦à§à¦°à¦¿à¦® ফাà¦à¦à¦¾ à¦à¦°à¦¾ হà§à§à¦à§à¥¤\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "সারà§à¦à¦¾à¦°à§à¦° সাথৠসà§à¦¥à¦¾à¦ªà¦¿à¦¤ সà¦à¦¯à§à¦ ফাà¦à¦à¦¾ à¦à¦°à¦¾ হà¦à§à¦à§à¥¤\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() বà§à¦¯à¦°à§à¦¥: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "সাফলà§à¦¯à§à¦° সাথৠসà§à¦à§à¦°à¦¿à¦® নিরà§à¦®à¦¿à¦¤ হà§à§à¦à§à¥¤\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "বাফারà§à¦° মাপ: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "বাফারà§à¦° মাপ: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "সà§à¦¯à¦¾à¦®à§à¦ªà§à¦²à§à¦° spec '%s', ঠà¦à§à¦¯à¦¾à¦¨à§à¦² মà§à¦¯à¦¾à¦ª '%s' বà§à¦¯à¦¬à¦¹à¦¾à¦° à¦à¦°à¦¾ হà¦à§à¦à§à¥¤\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "ডিà¦à¦¾à¦à¦¸ %s-র সাথৠসà¦à¦¯à§à¦ à¦à¦°à¦¾ হà§à§à¦à§ (%u, %ssuspended)।\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ষà§à¦à§à¦°à¦¿à¦® সà¦à¦à§à¦°à¦¾à¦¨à§à¦¤ তà§à¦°à§à¦à¦¿: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "সà§à¦à§à¦°à¦¿à¦® ডিà¦à¦¾à¦à¦¸ সà§à¦¥à¦à¦¿à¦¤ à¦à¦°à¦¾ হà§à§à¦à§à¥¤ %s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "সà§à¦à§à¦°à¦¿à¦® ডিà¦à¦¾à¦à¦¸ পà§à¦¨à¦°à¦¾à¦°à¦®à§à¦ à¦à¦°à¦¾ হà§à§à¦à§à¥¤ %s \n"
# underrun = ধà§à¦° à¦à¦¤à¦¿à¦° সà§à¦à§à¦°à¦¿à¦®
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ধà§à¦° à¦à¦¤à¦¿à¦° সà§à¦à§à¦°à¦¿à¦®.%s \n"
# overrun=the stream fills up the allocated buffer space and there is no more space for it
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "সà§à¦à§à¦°à¦¿à¦® মাতà§à¦°à¦¾ à¦
তিà¦à§à¦°à¦® à¦à¦°à§à¦à§à¥¤%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "সà§à¦à§à¦°à¦¿à¦® à¦à¦°à¦®à§à¦ à¦à¦°à¦¾ হà§à§à¦à§à¥¤ %s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "%s ডিà¦à¦¾à¦à¦¸à§ সà§à¦à§à¦°à¦¿à¦® সà§à¦¥à¦¾à¦¨à¦¾à¦¨à§à¦¤à¦° à¦à¦°à¦¾ হà§à§à¦à§ (%u, %ssuspended)।%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "না "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "সà§à¦à§à¦°à¦¿à¦® বাফারà§à¦° à¦
à§à¦¯à¦¾à¦à§à¦°à¦¿à¦¬à¦¿à¦à¦ পরিবরà§à¦¤à¦¿à¦¤ হà§à§à¦à§à¥¤ %s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "সà¦à¦¯à§à¦ সà§à¦¥à¦¾à¦ªà¦¿à¦¤ হà§à§à¦à§à¥¤%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "সà¦à¦¯à§à¦ বিফল: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "ফাà¦à¦²à§à¦° সমাপà§à¦¤à¦¿ সনাà¦à§à¦¤ হà§à§à¦à§à¥¤ \n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() বà§à¦¯à¦°à§à¦¥: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "ফাà¦à¦²à§à¦° সমাপà§à¦¤à¦¿ সনাà¦à§à¦¤ হà§à§à¦à§à¥¤ \n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "সিà¦à¦¨à§à¦¯à¦¾à¦² পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§, পà§à¦°à¦¸à§à¦¥à¦¾à¦¨ à¦à¦°à¦¾ হবà§à¥¤\n"
# latency here = delay (technical term
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "লà§à¦à§à¦¨à§à¦¸à¦¿à¦° পরিমাণ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "সমà§: %0.3f সà§à¦à§à¦¨à§à¦¡; লà§à¦à§à¦¨à§à¦¸à¦¿: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() বà§à¦¯à¦°à§à¦¥: %s\n"
#: ../src/utils/pacat.c:605
@@ -1550,34 +1406,34 @@ msgstr ""
"libpulse সহযà§à¦à§ à¦à¦®à§à¦ªà¦¾à¦à¦² à¦à¦°à¦¾ হà§à§à¦à§ %s\n"
"libpulse-র সাথৠযà§à¦à§à¦¤ %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à¦à§à¦¯à¦¾à¦¨à§à¦² মà§à¦¯à¦¾à¦ª '%s' বà§à¦§ নà§\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "রি-সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² পদà§à¦§à¦¤à¦¿ '%s' বà§à¦§ নà§à¥¤"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à¦à§à¦¯à¦¾à¦¨à§à¦² মà§à¦¯à¦¾à¦ª '%s' বà§à¦§ নà§\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "লà§à¦à§à¦¨à§à¦¸à¦¿à¦° à¦à¦¨à§à¦¯ নিরà§à¦§à¦¾à¦°à¦¿à¦¤ বà§à¦¶à¦¿à¦·à§à¦à§à¦¯ '%s' বà§à¦§ নà§\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "পà§à¦°à¦¸à§à¦¸à§à¦° সমà§à§à¦° বà§à¦¶à¦¿à¦·à§à¦à§à¦¯ '%s' বà§à¦§ নà§\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "রি-সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² পদà§à¦§à¦¤à¦¿ '%s' বà§à¦§ নà§à¥¤"
#: ../src/utils/pacat.c:878
@@ -1586,60 +1442,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à¦
বà§à¦§ সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² নিরà§à¦§à¦¾à¦°à¦¿à¦¤\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "à¦
তà§à¦¯à¦¾à¦§à¦¿à¦ à¦à¦°à§à¦à§à¦®à§à¦¨à§à¦à¥¤\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² সà¦à¦à§à¦°à¦¾à¦¨à§à¦¤ তথà§à¦¯ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "শবà§à¦¦à§à¦° ফাà¦à¦² à¦à§à¦²à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "à¦à¦à¦à¦¿ %s সà§à¦à§à¦°à¦¿à¦® '%s' সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² বà§à¦¶à¦¿à¦·à§à¦à§à¦¯ সহ à¦à§à¦²à¦¾ হà¦à§à¦à§à¥¤\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² সà¦à¦à§à¦°à¦¾à¦¨à§à¦¤ তথà§à¦¯ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "à¦à¦à¦à¦¿ %s সà§à¦à§à¦°à¦¿à¦® '%s' সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² বà§à¦¶à¦¿à¦·à§à¦à§à¦¯ সহ à¦à§à¦²à¦¾ হà¦à§à¦à§à¥¤\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à¦à§à¦¯à¦¾à¦¨à§à¦²à§à¦° মà§à¦¯à¦¾à¦ª ঠসà§à¦¯à¦¾à¦®à§à¦ªà§à¦²à§à¦° মাপৠà¦à¦°à¦®à¦¿à¦²\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "à¦à¦à¦à¦¿ %s সà§à¦à§à¦°à¦¿à¦® '%s' সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² বà§à¦¶à¦¿à¦·à§à¦à§à¦¯ সহ à¦à§à¦²à¦¾ হà¦à§à¦à§à¥¤\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "à¦à¦à¦à¦¿ %s সà§à¦à§à¦°à¦¿à¦® '%s' সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² বà§à¦¶à¦¿à¦·à§à¦à§à¦¯ সহ à¦à§à¦²à¦¾ হà¦à§à¦à§à¥¤\n"
#: ../src/utils/pacat.c:1006
@@ -1650,35 +1512,34 @@ msgstr "রà§à¦à¦°à§à¦¡ à¦à¦°à¦¾ হà¦à§à¦à§"
msgid "playback"
msgstr "পà§à¦²à§-বà§à¦¯à¦¾à¦"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() বà§à¦¯à¦°à§à¦¥: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() বà§à¦¯à¦°à§à¦¥à¥¤\n"
#: ../src/utils/pasuspender.c:81
@@ -1706,6 +1567,11 @@ msgstr "পà§à¦¨à¦°à¦¾à¦°à¦®à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "সতরà§à¦à¦¬à¦¾à¦°à§à¦¤à¦¾: শবà§à¦¦à§à¦° সারà§à¦à¦¾à¦°à¦à¦¿ সà§à¦¥à¦¾à¦¨à§à§ নৠঠসà§à¦¥à¦à¦¿à¦¤ à¦à¦°à¦¾ হà¦à§à¦à§ না।\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "সà¦à¦¯à§à¦ বিফল: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1746,6 +1612,21 @@ msgstr ""
"libpulse সহযà§à¦à§ à¦à¦®à§à¦ªà¦¾à¦à¦² à¦à¦°à¦¾ হà§à§à¦à§ %s\n"
"libpulse-র সাথৠযà§à¦à§à¦¤ %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() বà§à¦¯à¦°à§à¦¥à¥¤\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2160,6 +2041,11 @@ msgstr ""
"libpulse সহযà§à¦à§ à¦à¦®à§à¦ªà¦¾à¦à¦² à¦à¦°à¦¾ %s\n"
"libpulse-র সাথৠযà§à¦à§à¦¤ %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à¦à§à¦¯à¦¾à¦¨à§à¦² মà§à¦¯à¦¾à¦ª '%s' বà§à¦§ নà§\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "লà§à¦¡ à¦à¦°à¦¾à¦° à¦à¦¦à§à¦¦à§à¦¶à§à¦¯à§ à¦
নà§à¦à§à¦°à¦¹ à¦à¦°à§ à¦à¦à¦à¦¿ সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² ফাà¦à¦² à¦à¦²à§à¦²à§à¦ à¦à¦°à§à¦¨\n"
@@ -2168,6 +2054,11 @@ msgstr "লà§à¦¡ à¦à¦°à¦¾à¦° à¦à¦¦à§à¦¦à§à¦¶à§à¦¯à§ à¦
নà§à¦à§à¦°à¦¹
msgid "Failed to open sound file.\n"
msgstr "শবà§à¦¦à§à¦° ফাà¦à¦² à¦à§à¦²à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "সà§à¦¯à¦¾à¦®à§à¦ªà§à¦² সà¦à¦à§à¦°à¦¾à¦¨à§à¦¤ তথà§à¦¯ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2227,11 +2118,6 @@ msgstr "à¦à¦¾à¦°à§à¦¡à§à¦° নাম/à¦à¦¨à§à¦¡à§à¦à§à¦¸ ঠà¦à¦à¦
msgid "No valid command specified.\n"
msgstr "à¦à§à¦¨à§ à¦à¦®à¦¾à¦¨à§à¦¡ নিরà§à¦§à¦¾à¦°à¦¿à¦¤ হà§à¦¨à¦¿à¥¤\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() বà§à¦¯à¦°à§à¦¥: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2348,11 +2234,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn লঠপà§à¦°à§à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2369,7 +2255,7 @@ msgstr ""
"POLLOUT set দà§à¦¬à¦¾à¦°à¦¾ à¦à§à¦¤à¦¾à¦¬à¦¨à§ সà§à¦·à§à¦à¦¿ হà§à§à¦à§ -- পরবরà§à¦¤à§ snd_pcm_avail() থà§à¦à§ 0 à¦
থবা < "
"min_avail-র থà§à¦à§ à¦à¦® à¦
নà§à¦¯ à¦à¦à¦à¦¿ মান পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2387,15 +2273,15 @@ msgstr ""
"min_avail-র থà§à¦à§ à¦à¦® à¦
নà§à¦¯ à¦à¦à¦à¦¿ মান পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "বনà§à¦§"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "হাà¦-ফিডà§à¦²à¦¿à¦à¦¿ পà§à¦²à§-বà§à¦¯à¦¾à¦ (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "à¦à§à¦²à¦¿à¦«à§à¦¨à¦¿ ডà§à¦ªà§à¦²à§ (HSP/HFP)"
@@ -2403,6 +2289,134 @@ msgstr "à¦à§à¦²à¦¿à¦«à§à¦¨à¦¿ ডà§à¦ªà§à¦²à§ (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio শবà§à¦¦à§à¦° সারà§à¦à¦¾à¦°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "সিসà§à¦à§à¦® বাসà§à¦° সাথৠসà¦à¦¯à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID থà§à¦à§ à¦à¦²à¦¾à¦°à§à¦° তথà§à¦¯ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "à¦à¦²à¦¾à¦° à¦
বà¦à§à¦à§à¦à§à¦° UID নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK সà§à¦¶à¦¾à¦¨ পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "সà§à¦¶à¦¾à¦¨ à¦
বà¦à§à¦à§à¦à§à¦° UID নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction বরাদà§à¦¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext বরাদà§à¦¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥à¥¤"
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext à¦à¦°à¦®à§à¦ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "à¦à¦²à¦¾à¦° à¦
নà§à¦®à§à¦¦à¦¿à¦¤ à¦à¦¿ না তা নিরà§à¦§à¦¾à¦°à¦£ à¦à¦°à¦¾ সমà§à¦à¦¬ নà§: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "auth পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à¦¤à§ বà§à¦¯à¦°à§à¦¥: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit থà§à¦à§ '%s' পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "PulseAudio ডà§à¦®à¦¨à§à¦° à¦à¦¨à§à¦¯ à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦ (Unix nice-র মাতà§à¦°à¦¾ নà¦à¦°à§à¦¥à¦)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio ডà§à¦®à¦¨à§à¦° à¦à¦¨à§à¦¯ রিà§à§à¦²-à¦à¦¾à¦à¦® শিডিà¦à¦²à¦¿à¦"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "সিসà§à¦à§à¦®à§à¦° নিà§à¦®-নà§à¦¤à¦¿à¦° à¦à¦¾à¦°à¦£à§ PulseAudio দà§à¦¬à¦¾à¦°à¦¾ à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦ পà§à¦°à§à§à¦ à¦à¦°à¦¾ "
+#~ "সমà§à¦à¦¬ হà¦à§à¦à§ না।"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "সিসà§à¦à§à¦®à§à¦° নিà§à¦®-নà§à¦¤à¦¿à¦° à¦à¦¾à¦°à¦£à§ PulseAudio দà§à¦¬à¦¾à¦°à¦¾ রিà§à§à¦²-à¦à¦¾à¦à¦® শিডিà¦à¦²à¦¿à¦ পà§à¦°à§à§à¦ à¦à¦°à¦¾ "
+#~ "সমà§à¦à¦¬ হà¦à§à¦à§ না।"
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() বà§à¦¯à¦°à§à¦¥: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() বà§à¦¯à¦°à§à¦¥: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "à¦
ধিঠà¦à§à¦°à§à¦¤à§à¦¬à¦¸à¦¹ শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§à¦à¦¾à¦°à§ '%s' দলৠà¦à¦®à¦°à¦¾ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤à¥¤"
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "রিà§à§à¦²-à¦à¦¾à¦à¦® শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§à¦à¦¾à¦°à§ '%s' দলৠà¦à¦®à¦°à¦¾ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤à¥¤"
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-high-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-high-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¤à§à¦¯à¦¾à¦à§à¦¯à¦¾à¦¤ হà§à§à¦à§à¥¤"
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-real-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¾à¦ªà§à¦¤ হà§à§à¦à§à¥¤"
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit-র পà¦à§à¦· থà§à¦à§ acquire-real-priority à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¤à§à¦¯à¦¾à¦à§à¦¯à¦¾à¦¤ হà§à§à¦à§à¥¤"
+
+#~ 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 ""
+#~ "SUID root à¦à¦² à¦à¦°à¦¾ হà§à§à¦à§ à¦à¦¬à¦ à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨à§à¦° মধà§à¦¯à§ রিà§à§à¦²-à¦à¦¾à¦à¦® à¦à¦¬à¦/à¦
থবা à¦à¦à§à¦-"
+#~ "à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦à§à§à¦° à¦
নà§à¦°à§à¦§ à¦à¦¾à¦¨à¦¾à¦¨à§ হà§à§à¦à§, à¦à¦¿à¦¨à§à¦¤à§ পরà§à¦¯à¦¾à¦ªà§à¦¤ à¦
নà§à¦®à¦¤à¦¿ à¦à¦ªà¦¸à§à¦¥à¦¿à¦¤ নà§à¦:\n"
+#~ "'%s' দলৠà¦
নà§à¦¤à¦°à§à¦à§à¦à§à¦¤ নà§, PolicyKit দà§à¦¬à¦¾à¦°à¦¾ পরà§à¦¯à¦¾à¦ªà§à¦¤ à¦
নà§à¦®à¦¤à¦¿ পà§à¦°à¦¦à¦¾à¦¨ à¦à¦°à¦¾ হà§à¦¨à¦¿ à¦à¦¬à¦ "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO রিসà§à¦°à§à¦¸à§à¦° সà§à¦®à¦¾ বà§à¦¦à§à¦§à¦¿à¦° à¦à¦°à¦¤à§ হবà§à¥¤\n"
+#~ "রিà§à§à¦²-à¦à¦¾à¦à¦®/à¦à¦à§à¦-à¦à§à¦°à§à¦¤à§à¦¬à§à¦° শিডিà¦à¦²à¦¿à¦ সà¦à§à¦°à¦¿à§ à¦à¦°à¦¾à¦° à¦à¦¨à§à¦¯ à¦
নà§à¦à§à¦°à¦¹ à¦à¦°à§ পà§à¦°à¦¯à§à¦à§à¦¯ PolicyKit "
+#~ "à¦
ধিà¦à¦¾à¦° পà§à¦°à¦¾à¦ªà§à¦¤ à¦à¦°à§à¦¨, à¦
থবা '%s' দলà§à¦° সদসà§à¦¯ হন, à¦
থবা সà¦à¦¶à§à¦²à¦¿à¦·à§à¦ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦à¦¾à¦°à§à¦° à¦à¦¨à§à¦¯ "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO রিসà§à¦°à§à¦¸à§à¦° সà§à¦®à¦¾ বà§à¦¦à§à¦§à¦¿ à¦à¦°à§à¦¨à¥¤"
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨ দà§à¦¬à¦¾à¦°à¦¾ high-priority শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§ হলà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ "
+#~ "দà§à¦¬à¦¾à¦°à¦¾ তা à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নà§à¥¤"
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO সাফলà§à¦¯à§à¦° সাথৠবà§à¦¦à§à¦§à¦¿ à¦à¦°à¦¾ হà§à§à¦à§"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO বিফল: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE বরà§à¦à¦¨ à¦à¦°à¦¾ হà¦à§à¦à§"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "à¦à¦¨à¦«à¦¿à¦à¦¾à¦°à§à¦¶à¦¨ দà§à¦¬à¦¾à¦°à¦¾ real-time শিডিà¦à¦²à¦¿à¦à§à§à¦° সà§à¦¬à¦¿à¦§à¦¾ à¦à¦ªà¦²à¦¬à§à¦§ হলà§à¦ নিà§à¦®à¦¨à§à¦¤à¦¿ দà§à¦¬à¦¾à¦°à¦¾ তা "
+#~ "à¦
নà§à¦®à§à¦¦à¦¿à¦¤ নà§à¥¤"
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "সাফলà§à¦¯à§à¦° সাথৠCAP_SYS_NICE-ঠà¦à¦°à§à¦®à¦à§à¦·à¦®à¦¤à¦¾ সà§à¦®à¦¿à¦¤ à¦à¦°à¦¾ হà§à§à¦à§à¥¤"
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() বà§à¦¯à¦°à§à¦¥à¥¤\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à¦
à§à¦¯à¦¾à¦¨à¦¾à¦²à¦ মà§à¦¨à§"
diff --git a/po/ca.po b/po/ca.po
index 878e2293..f3b0a599 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -23,15 +23,20 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
-"PO-Revision-Date: 2009-06-10 18:47+0200\n"
-"Last-Translator: Judith Pintó Subirada \n"
-"Language-Team: \n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
+"PO-Revision-Date: 2009-07-18 11:40+0100\n"
+"Last-Translator: Tomàs Bigordà \n"
+"Language-Team: Catalan \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -44,7 +49,7 @@ 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:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -57,7 +62,7 @@ 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:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -72,7 +77,7 @@ msgstr ""
#: ../src/modules/module-ladspa-sink.c:49
msgid "Virtual LADSPA sink"
-msgstr ""
+msgstr "Conducte virtual LADSPA"
#: ../src/modules/module-ladspa-sink.c:53
msgid ""
@@ -82,8 +87,13 @@ msgid ""
"plugin name> label= control="
msgstr ""
+"sink_name= sink_properties= "
+"master= format= rate= channels= channel_map= "
+"pulgin= label= "
+"control="
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Audio intern"
@@ -103,223 +113,92 @@ msgstr "No s'ha pogut allotjar el nou carregador dl."
msgid "Failed to add bind-now-loader."
msgstr "No s'ha pogut afegir bind-now-loader."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "No s'ha pogut connectar al bus del sistema: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "No s'ha pogut obtenir una crida del PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "No s'ha pogut especificar l'UID en l'objecte crida."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "No s'ha pogut obtenir la sessió CK."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "No s'ha pogut definir l'UID en l'objecte sessió."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "No s'ha pogut assignar PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "No s'ha pogut definir action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "No s'ha pogut assignar PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "No s'ha pogut inicialitzar PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "No s'ha pogut determinar si la crida està autoritzada: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "No s'ha pogut obtenir l'autorització: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit ha respós '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "S'ha obtingut la senyal %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "S'està sortint."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "No s'ha trobat l'usuari '%s'."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "No s'ha trobat el grup '%s'."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "S'han trobat l'usuari '%s' (UID %lu) i el grup '%s' (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "El GID de l'usuari '%s' i del grup '%s' no coincideixen."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "El directori arrel de l'usuari '%s' no és '%s', s'ignorarà ."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "No s'ha pogut crear '%s': %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
-msgstr "No s'ha pogut canviar la llista del grup :%s"
+msgstr "No s'ha pogut canviar la llista del grup: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "No s'ha pogut canviar el GID: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "No s'ha pogut canviar l'UID: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "S'han alliberat els permisos de root."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "El mode de sistema global no és compatible amb aquesta plataforma."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "S'ha produït un error en setrlimit(%s, (%u, %u)): %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "No s'ha pogut interpretar la lÃnia d'ordres."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Aquesta aplicació està en el grup '%s', s'està establint la prioritat alta."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Aquesta aplicació està en el grup '%s', s'està establint la prioritat en "
-"temps real."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit ha permés el privilegi acquire-high-priority."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit ha rebutjat el privilegi acquire-high-priority."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit ha permés el privilegi acquire-real-time."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit ha rebutjat el privilegi acquire-real-time."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"S'ha demanat SUID de root i una planificació de temps real i/o d'alta "
-"prioritat. De totes formes, falten els privilegis necessaris:\n"
-"No es pertany al grup '%s'. PolicyKit no atorga els privilegis demanats i no "
-"s'ha incrementat els lÃmits de recursos RLIMIT_NICE/RLIMIT_RTPRIO.\n"
-"Per habilitar la planificació en temps real o d'alta prioritat, heu "
-"d'obtenir els privilegis de PolicyKits adequats, o pertà nyer al grup '%s', o "
-"incrementar els lÃmits de recursos de RLIMIT_NICE/RLIMIT_RTPRIO per a aquest "
-"usuari."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"La prioritat alta està habilitada en la configuració però no està permesa "
-"per la polÃtica."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "S'ha incrementat el valor de RLIMIT_RTPRIO amb éxit."
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "S'ha produït un error amb RLIMIT_RTPRIO: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "S'abandona CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"La prioritat de temps real està habilitada en la configuració però no està "
-"permesa per la polÃtica."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "El dimoni no s'està executant"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "El dimoni s'està executant amb PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "S'ha produït un error en matar el dimoni: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -327,158 +206,158 @@ msgstr ""
"No és necessari executar aquesta aplicació com a root (excepte si "
"s'especifica --system)"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Es requereixen privilegis de root."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "La opció --start no està suportada per a instà ncies de sistema."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
"S'està executant en mode sistema, però no s'ha especificat l'opció --"
"disallow-exit."
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"S'està executant en mode sistema, però no s'ha especificat l'opció --"
"disallow-module-loading."
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
"S'està executant en mode sistema, es deshabilitarà el mode SHM forçosament."
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"S'està executant en mode sistema, la sortida per temps d'inactivitat es "
"deshabilita."
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "S'ha produït un error en adquirir stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "Ha fallat la canonada: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "Ha fallat fork(): %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "Ha fallat read(): %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "S'ha produït un error en iniciar el dimoni."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "S'ha iniciat el dimoni."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Aquest és el PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Host de compilació: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS de compilació: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "S'està executant en el host: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "S'han trobat %u CPU's"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "La mida de pà gina és de %lu bytes."
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Compilat amb suport per a Valgrind: sÃ"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Compilat amb suport per a Valgrind: no"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "S'està executant amb el mode valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Construcció optimitzada: sÃ"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Construcció optmitzada: no"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG està definit, s'han desactivat totes les assercions."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
"FASTPATH està definit, només s'ha deshabilitat les assercions de camà rà pid."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "S'han habilitat totes les assercions."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "No s'ha pogut obtenir l'ID de la mà quina"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "L'ID de la mà quina és %s."
-#: ../src/daemon/main.c:917
-#, fuzzy, c-format
+#: ../src/daemon/main.c:770
+#, c-format
msgid "Session ID is %s."
-msgstr "L'ID de la mà quina és %s."
+msgstr "L'ID de la sessió és %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "S'està utilitzant el directori d'execució %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "S'està utilitzant el directori d'estat %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "S'està executant en mode sistema: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -487,16 +366,22 @@ msgid ""
"Please read http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an "
"explanation why system mode is usually a bad idea."
msgstr ""
-
-#: ../src/daemon/main.c:951
+"Esteu utilitzant el PA en mode sistema. Tingueu en compte que molt "
+"probablement no haurÃeu de fer-ho.\n"
+"No obstant això, si ho feu és la vostra responsabilitat si no funciona com "
+"s'esperava.\n"
+"Si us plau, llegiu http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode per "
+"a una explicació de per què el mode sistema sol ser una mala idea."
+
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "S'ha produït un error en pa_pid_file_create()."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Estan disponibles els temporitzadors frescos d'alta resolució."
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -504,27 +389,27 @@ msgstr ""
"Es recomana la utilització d'un nucli amb els temporitzadors d'alta "
"resolució habilitats."
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "S'ha produït un error en pa_core_new()."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "S'ha produït un error en inicialitzar el dimoni."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "El dimoni s'ha iniciat sense cap mòdul carregat, no funcionarà ."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "S'ha completat la inicialització del dimoni."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "S'ha iniciat l'aturada del dimoni."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "S'ha aturat el dimoni."
@@ -624,7 +509,7 @@ msgstr ""
"inicialització\n"
" --fail[=BOOL] Surt quan falli la inicialització\n"
" --high-priority[=BOOL] Prova d'establir un nivell de \n"
-" prioritat alt (només disponible com "
+" Prioritat alta (només disponible com "
"a root,\n"
" amb SUID o amb un RLIMIT_NICE "
"elevat)\n"
@@ -658,12 +543,12 @@ msgstr ""
"missatges de registre\n"
" --log-time[=BOOL] Inclou marques de temps en els "
"missatges de registre\n"
-" --log-backtrace=FRAMES Inclou una traça en els missatges de "
+" --log-backtrace=MARCS Inclou una traça en els missatges de "
"registre\n"
-" -p, --dl-search-path=CAMI Estableix el camà de cerca "
+" -p, --dl-search-path=CAMà Estableix el camà de cerca "
"d'objectes dinà mics\n"
" compartits (plugins)\n"
-" --resample-method=METODE Utilitza el mètode de remostreig\n"
+" --resample-method=MÃTODE Utilitza el mètode de remostreig\n"
" (Per veure els valors possibles "
"utilitza --dump-resample-methods)\n"
" --use-pid-file[=BOOL] Crea un fitxer PID\n"
@@ -674,7 +559,7 @@ msgstr ""
"compartida.\n"
"\n"
"SCRIPT D'INICI:\n"
-" -L, --load=\"ARGUMENTS MODUL\" Carrega el mòdul especificat amb\n"
+" -L, --load=\"ARGUMENTS MÃDUL\" Carrega el mòdul especificat amb\n"
" els arguments especificats\n"
" -F, --file=NOMFITXER Executa l'script especificat\n"
" -C Obre una lÃnia d'ordres en la TTY "
@@ -787,7 +672,7 @@ msgstr "CÃ rrega: %s\n"
#: ../src/daemon/dumpmodules.c:75
#, c-format
msgid "DEPRECATION WARNING: %s\n"
-msgstr ""
+msgstr "Advertència d'obsolescència: %s\n"
#: ../src/daemon/dumpmodules.c:79
#, c-format
@@ -872,14 +757,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lectura del fitxer de configuració: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Alliberant els privilegis de root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "S'han limitat les capacitats cap a CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "Sistema de so PulseAudio"
@@ -888,30 +769,6 @@ msgstr "Sistema de so PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Inicialitza el sistema de so PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Programació d'alta prioritat (nivell Unix nice negatiu) per al dimoni "
-"PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Programació en temps real per al dimoni PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"Les normes d'ús del sistema no permeten PulseAudio adquirir programació "
-"d'alta prioritat."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"Les normes d'ús del sistema no permeten la programació en temps real de "
-"PulseAudio."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1284,189 +1141,193 @@ msgstr "Ha fallat el parseig de les dades de la cookie"
msgid "Failed to open configuration file '%s': %s"
msgstr "S'ha produït un error en obrir el fitxer de configuració '%s': %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "No s'ha carregat cap cookie. S'està intentant connectar sense aquesta."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "S'ha rebut un missatge per a una extensió desconeguda '%s'"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "S'ha produït un error en drenar el fluxe: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Flux de reproducció drenat.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "S'està drenant la connexió amb el servidor.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "Ha fallat pa_stream_write(): %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "Ha fallat pa_stream_write(): %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "Ha fallat pa_stream_peek(): %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Flux creat correctament.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "Ha fallat pa_stream_get_buffer_attr(): %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Mètriques del búffer: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Mètriques del búffer: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr ""
"S'estan utilitzant les especificacions de mostreig '%s', mapejat del canal '%"
"s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "S'ha connectat al dispositiu %s (%u, %ssuspés).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "S'ha produït un error en l'stream: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
-msgstr "Flux del dispositiu suspés.%s\n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
+msgstr "Flux del dispositiu suspés.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
-msgstr "Flux del dispositiu représ.%s\n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
+msgstr "Flux del dispositiu représ.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
-msgstr "Dades insuficients al flux .%s\n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
+msgstr "Dades insuficients al flux.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
-msgstr "Desbordament de flux.%s\n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
+msgstr "Desbordament de flux.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
-msgstr "S'ha iniciat el flux.%s\n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
+msgstr "S'ha iniciat el flux.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
-msgstr "S'ha mogut el flux al dispositiu %s (%u, %ssuspés).%s\n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr "S'ha mogut el flux al dispositiu %s (%u, %ssuspés).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
-msgstr "no"
+msgstr "no "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
-msgstr "Atributs del fluxe de la memòria intermèdia canviats.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
+msgstr "Els atributs del flux de memòria intermèdia han canviat.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
-msgstr "S'ha establert la connexió.%s\n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
+msgstr "S'ha establert la connexió.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "Ha fallat pa_stream_new(): %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "Ha fallat pa_stream_connect_playback(): %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "Ha fallat pa_stream_connect_record(): %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Ha fallat la connexió: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "S'ha llegit EOF.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "Ha fallat read(): %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "S'ha llegit EOF.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "Ha fallat write(): %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "S'ha rebut un senyal, s'està sortint.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "No s'ha pogut obtenir la latència: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
-msgstr "Temps: %0.3f segs; Latència: %0.0f microsegs.\r"
+msgstr "Temps: %0.3f segs; Latència: %0.0f microsegs. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "Ha fallat pa_stream_update_timing_info(): %s\n"
#: ../src/utils/pacat.c:605
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -1542,7 +1403,8 @@ msgstr ""
"connectar-se\n"
" -n, --client-name=NOM Com cridar aquest client al "
"servidor\n"
-" --stream-name=NOM Com cridar aquest flux al servidor\n"
+" --stream-name=NOM Com cridar aquest flux de dades al "
+"servidor\n"
" --volume=VOLUM Especifica el volum inicial lineal "
"dins el rang 0...65536\n"
" --rate=VELOCITATMOSTREIG La velocitat de mostreig en Hz (per "
@@ -1555,7 +1417,7 @@ msgstr ""
"per a estèreo\n"
" (per omissió, 2)\n"
" --channel-map=MAPACANAL Mapa de canals a utilitzar\n"
-" --fix-format Pren el format de mostra del "
+" --format-fix Pren el format de mostra del "
"conducte al qual s'està connectant\n"
" el flux.\n"
" --fix-rate Pren la velocitat de mostreig del "
@@ -1564,13 +1426,21 @@ msgstr ""
" --fix-channels Pren el número de canals i el mapa "
"de canals del\n"
" conducte al qual s'està connectant "
-"el flux.\n"
+"el flux de dades.\n"
" --no-remix No barregis els canals.\n"
" --no-remap Mapeja els canals per Ãndex en "
"comptes de per nom .\n"
-" --latency=BYTES Sol·licita la latència en bytes.\n"
+" --latencia=BYTES Sol·licita la latència en bytes.\n"
" --process-time=BYTES Sol·licita el temps de procés per "
"petició en bytes.\n"
+" --property=PROPIETAT=VALOR Establir la propietat especificada "
+"per al valor especificat.\n"
+" --raw Gravació/reproducció de dades crues "
+"PCM.\n"
+" --format-fitxer=FFORMAT Gravació/reproducció de dades amb "
+"format PCM.\n"
+" --list-file-formats Llista disponible de formats de "
+"fitxer.\n"
#: ../src/utils/pacat.c:727
#, c-format
@@ -1583,97 +1453,108 @@ msgstr ""
"Compilat amb libpulse %s\n"
"Enllaçat amb libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "Mapa de canals invà lid '%s'\n"
+msgid "Invalid client name '%s'"
+msgstr "Nom del client invà lid '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "Mètode de remostratge invà lid '%s'."
+msgid "Invalid stream name '%s'"
+msgstr "Nom de flux de dades invà lid '%s'\n"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Mapa de canals invà lid '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Especificació de latència invà lida '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Especificació de temps de procés invà lida '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
-msgstr "Mètode de remostratge invà lid '%s'."
+msgid "Invalid property '%s'"
+msgstr "Propietat invà lida '%s'\n"
#: ../src/utils/pacat.c:878
#, c-format
msgid "Unknown file format %s."
-msgstr ""
+msgstr "Format desconegut de fitxer %s."
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Especificació de mostra invà lida\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
-msgstr "Hi han massa arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
+msgstr "Massa arguments.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
-msgstr "No s'ha pogut obtenir informació de la mostra: %s\n"
+msgid "Failed to generate sample specification for file."
+msgstr "No s'ha pogut obtenir informació del fitxer.\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "No s'ha pogut obrir el fitxer de so.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
+"Advertència: l'especificació de mostra especificada se sobreescriurà amb "
+"l'especificació del fitxer.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
-msgstr "No s'ha pogut obtenir informació de la mostra: %s\n"
+msgid "Failed to determine sample specification from file."
+msgstr "No s'ha pogut determinar l'especificació de mostra del fitxer.\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
msgstr ""
+"Advertència: no s'ha pogut determinar el mapeig de canals des del fitxer.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "El mapa de canals no coincideix amb l'especificació de mostra\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Advertència: no s'ha pogut escriure el mapa de canals en un fitxer.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
-msgstr "S'està obrint un flux %s amb especificació de mostra '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr ""
+"S'està obrint un flux de dades %s amb especificació de mostra '%s' i mapa de "
+"canals '%s'.\n"
#: ../src/utils/pacat.c:1006
msgid "recording"
@@ -1683,36 +1564,35 @@ msgstr "enregistrant"
msgid "playback"
msgstr "reproducció"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr "Ha fallat pa_mainloop_new().\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
+msgstr "Ha fallat el pa_mainloop_new().\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
-msgstr "Ha fallat io_new().\n"
+#, fuzzy
+msgid "io_new() failed."
+msgstr "Ha fallat el io_new().\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
-msgstr "Ha fallat pa_context_new().\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
+msgstr "Ha fallat el pa_context_new().\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "Ha fallat pa_context_connect(): %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "Ha fallat time_new().\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "Ha fallat el pa_context_new().\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr "Ha fallat pa_mainloop_run().\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
+msgstr "Ha fallat el pa_mainloop_run().\n"
#: ../src/utils/pasuspender.c:81
#, c-format
@@ -1739,6 +1619,11 @@ msgstr "No s'ha pogut en rependre: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "ADVERTÃNCIA: el sevidor de so no és local, no s'està suspenent.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Ha fallat la connexió: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1779,6 +1664,21 @@ msgstr ""
"Compilat amb libpulse %s\n"
"Enllaçat amb libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "Ha fallat el pa_mainloop_new().\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "Ha fallat el pa_context_new().\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "Ha fallat el pa_mainloop_run().\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1874,14 +1774,14 @@ msgstr ""
"\t\t%s\n"
#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:353
-#, fuzzy, c-format
+#, c-format
msgid "\tPorts:\n"
-msgstr "\tPerfils:\n"
+msgstr "\tPorts:\n"
#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
-#, fuzzy, c-format
+#, c-format
msgid "\tActive Port: %s\n"
-msgstr "\tPerfil actiu: %s\n"
+msgstr "\tPort actiu: %s\n"
#: ../src/utils/pactl.c:290
#, c-format
@@ -1933,7 +1833,7 @@ msgstr ""
#: ../src/utils/pactl.c:587 ../src/utils/pactl.c:630 ../src/utils/pactl.c:631
#: ../src/utils/pactl.c:638
msgid "n/a"
-msgstr "n/d"
+msgstr "n/a"
#: ../src/utils/pactl.c:368
#, c-format
@@ -2136,7 +2036,7 @@ msgid "Premature end of file\n"
msgstr "S'ha trobat un fi de fitxer prematurament\n"
#: ../src/utils/pactl.c:826
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options] stat\n"
"%s [options] list\n"
@@ -2170,18 +2070,19 @@ msgstr ""
"%s [opcions] remove-sample NOM\n"
"%s [opcions] move-sink-input ID CONDUCTE\n"
"%s [opcions] move-source-output ID FONT\n"
-"%s [opcions] load-module NOM [ARGS ...]\n"
+"%s [opcions] load-module NOM [ARGUMENTS ...]\n"
"%s [opcions] unload-module ID\n"
"%s [opcions] suspend-sink [CONDUCTE] 1|0\n"
"%s [opcions] suspend-source [FONT] 1|0\n"
"%s [opcions] set-card-profile [TARGETA] [PERFIL] \n"
+"%s [opcions] set-sink-port [CONDUCTE] [PORT] \n"
+"%s [opcions] set-source-port [FONT] [PORT] \n"
"\n"
" -h, --help Mostra aquesta ajuda\n"
" --version Mostra la versió\n"
"\n"
-" -s, --server=SERVIDOR Nom del servidor al qual connectar-"
-"se\n"
-" -n, --client-name=NOM Com cridar aquest client al "
+" -s, --server=SERVER Nom del servidor on connectar-s'hi\n"
+" -n, --client-name=NAME Com cridar aquest client en el "
"servidor\n"
#: ../src/utils/pactl.c:880
@@ -2195,6 +2096,11 @@ msgstr ""
"Compilat amb libpulse %s\n"
"Enllaçat amb libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Nom del client invà lid '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Especifiqueu un fitxer de mostra per a carregar\n"
@@ -2203,10 +2109,15 @@ msgstr "Especifiqueu un fitxer de mostra per a carregar\n"
msgid "Failed to open sound file.\n"
msgstr "No s'ha pogut obrir el fitxer de so.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr "No s'ha pogut determinar l'especificació de mostra del fitxer.\n"
+
#: ../src/utils/pactl.c:951
-#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
-msgstr "S'està obrint un flux %s amb especificació de mostra '%s'.\n"
+msgstr ""
+"Advertència: No s'ha pogut determinar l'especificació de mostra a partir del "
+"fitxer.\n"
#: ../src/utils/pactl.c:961
msgid "You have to specify a sample name to play\n"
@@ -2214,7 +2125,7 @@ msgstr "Heu d'especificar un nom de mostra a reproduir\n"
#: ../src/utils/pactl.c:973
msgid "You have to specify a sample name to remove\n"
-msgstr "Heu d'especificar un nom de mostra a esborrar\n"
+msgstr "Heu d'especificar un nom de mostra a suprimir\n"
#: ../src/utils/pactl.c:982
msgid "You have to specify a sink input index and a sink\n"
@@ -2252,24 +2163,17 @@ msgid "You have to specify a card name/index and a profile name\n"
msgstr "Heu d'especificar un nom o un Ãndex de targeta i un nom de perfil\n"
#: ../src/utils/pactl.c:1073
-#, fuzzy
msgid "You have to specify a sink name/index and a port name\n"
-msgstr "Heu d'especificar un nom o un Ãndex de targeta i un nom de perfil\n"
+msgstr "Heu d'especificar un nom o un Ãndex de conducte i un nom de port\n"
#: ../src/utils/pactl.c:1084
-#, fuzzy
msgid "You have to specify a source name/index and a port name\n"
-msgstr "Heu d'especificar un nom o un Ãndex de targeta i un nom de perfil\n"
+msgstr "Heu d'especificar un nom o un Ãndex de font i un nom de port\n"
#: ../src/utils/pactl.c:1099
msgid "No valid command specified.\n"
msgstr "S'ha especificat una ordre invà lida.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "Ha fallat pa_context_connect(): %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2354,6 +2258,8 @@ msgstr "Encara no s'ha implementat.\n"
#: ../src/utils/pacmd.c:61
msgid "No PulseAudio daemon running, or not running as session daemon."
msgstr ""
+"El dimoni PulseAudio no s'està executant, o no s'està executant com a dimoni "
+"de la sessió."
#: ../src/utils/pacmd.c:66
#, c-format
@@ -2388,11 +2294,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "No s'ha pogut accedir al bloqueig d'autospawn."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2406,10 +2312,10 @@ msgstr ""
"havia res a escriure!\n"
"Probablement es tracta d'un error del controlador de l'ALSA '%s'. Informeu "
"d'aquest problema als desenvolupadors de l'ALSA.\n"
-"Ens han cridat mitjançant POLLOUT set -- tammateix una crida posterior de "
+"Ens han aixecat amb POLLOUT activat -- tanmateix una crida posterior a "
"snd_pcm_avail() ha retornat 0 o un altre valor < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2423,19 +2329,19 @@ msgstr ""
"res a llegir!\n"
"Probablement es tracta d'un error de la controladora '%s' de l'ALSA. "
"Reporteu aquest problema als desenvolupadors de l'ALSA.\n"
-"Ens ha cridat mitjançant POLLIN set -- tammateix una ordre posterior "
+"Ens han aixecat amb POLLIN activat -- tanmateix una crida posterior a "
"snd_pcm_avail() ha retornat 0 o un altre valor < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Inactiu"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Reproducció d'alta fidelitat (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Dúplex de telefonia (HSP/HFP)"
@@ -2443,6 +2349,140 @@ msgstr "Dúplex de telefonia (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Servidor de so PulseAudio"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "No s'ha pogut connectar al bus del sistema: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "No s'ha pogut obtenir una crida del PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "No s'ha pogut especificar l'UID en l'objecte crida."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "No s'ha pogut obtenir la sessió CK."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "No s'ha pogut definir l'UID en l'objecte sessió."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "No s'ha pogut assignar PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "No s'ha pogut definir action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "No s'ha pogut assignar PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "No s'ha pogut inicialitzar PolKitContext: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "No s'ha pogut determinar si la crida està autoritzada: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "No s'ha pogut obtenir l'autorització: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit ha respós '%s'"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Programació d'alta prioritat (nivell Unix nice negatiu) per al dimoni "
+#~ "PulseAudio"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Programació en temps real per al dimoni PulseAudio"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Les normes d'ús del sistema no permeten PulseAudio adquirir programació "
+#~ "d'alta prioritat."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Les normes d'ús del sistema no permeten la programació en temps real de "
+#~ "PulseAudio."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "Ha fallat read(): %s\n"
+
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "Ha fallat el pa_context_connect(): %s\n"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Aquesta aplicació està en el grup '%s', s'està establint la prioritat "
+#~ "alta."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Aquesta aplicació està en el grup '%s', s'està establint la prioritat en "
+#~ "temps real."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit ha permés el privilegi acquire-high-priority."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit ha rebutjat el privilegi acquire-high-priority."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit ha permés el privilegi acquire-real-time."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit ha rebutjat el privilegi acquire-real-time."
+
+#~ 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 ""
+#~ "S'ha demanat SUID de root i una planificació de temps real i/o d'alta "
+#~ "prioritat. Tanmateix, falten els privilegis necessaris:\n"
+#~ "No es pertany al grup '%s'. PolicyKit no atorga els privilegis demanats i "
+#~ "no s'ha incrementat els lÃmits de recursos RLIMIT_NICE/RLIMIT_RTPRIO.\n"
+#~ "Per habilitar la planificació en temps real o d'alta prioritat, heu "
+#~ "d'obtenir els privilegis de PolicyKit adequats, o pertà nyer al grup '%s', "
+#~ "o incrementar els lÃmits de recursos de RLIMIT_NICE/RLIMIT_RTPRIO per a "
+#~ "aquest usuari."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "La prioritat alta està habilitada en la configuració però no està permesa "
+#~ "per la polÃtica."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "S'ha incrementat el valor de RLIMIT_RTPRIO amb éxit."
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "S'ha produït un error amb RLIMIT_RTPRIO: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "S'abandona CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "La prioritat de temps real està habilitada en la configuració però no "
+#~ "està permesa per la polÃtica."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "S'han limitat les capacitats cap a CAP_SYS_NICE."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "Ha fallat el time_new().\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Mono analògic"
diff --git a/po/cs.po b/po/cs.po
index 51ce0850..8971ee06 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,17 +7,22 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
-"PO-Revision-Date: 2009-05-03 23:57+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
+"PO-Revision-Date: 2009-07-07 20:37+0200\n"
"Last-Translator: Petr Kovar \n"
"Language-Team: Czech \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"
+"X-Generator: Lokalize 0.3\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -30,7 +35,7 @@ msgstr ""
"S nejvÄtÅ¡Ã pravdÄpodobnostà se jedná o chybu v ovladaÄi ALSA \"%s\". "
"Nahlaste prosÃm tento problém vývojáÅům ALSA."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -43,7 +48,7 @@ msgstr ""
"S nejvÄtÅ¡Ã pravdÄpodobnostà se jedná o chybu v ovladaÄi ALSA \"%s\". "
"Nahlaste prosÃm tento problém vývojáÅům ALSA."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -58,7 +63,7 @@ msgstr ""
#: ../src/modules/module-ladspa-sink.c:49
msgid "Virtual LADSPA sink"
-msgstr ""
+msgstr "Virtuálnà cÃl LADSPA"
#: ../src/modules/module-ladspa-sink.c:53
msgid ""
@@ -68,8 +73,13 @@ msgid ""
"plugin name> label= control="
msgstr ""
+"sink_name= sink_properties= master= format= rate= "
+"channels= channel_map= plugin= label= control=<Äárkou "
+"oddÄlený seznam hodnot ovládánà vstupu>"
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "VnitÅnà zvukový systém"
@@ -89,218 +99,92 @@ msgstr "NezdaÅilo se pÅidÄlenà nového nahrávacÃho programu dl."
msgid "Failed to add bind-now-loader."
msgstr "NezdaÅilo se pÅidat bind-now-loader."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Nelze se spojit se systémovou sbÄrnicÃ: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Nelze zÃskat volajÃcÃho z PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Nelze nastavit UID na objekt volajÃcÃho."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "NezdaÅilo se zÃskánà sezenà CK."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Nelze nastavit UID na objekt sezenÃ."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Nelze alokovat PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Nelze nastavit action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Nelze alokovat PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Nelze spustit PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "NezdaÅilo se urÄit, zda je volajÃcà oprávnÄn: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "NezdaÅilo se zÃskat oprávnÄnÃ: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit odpovÄdÄl s \"%s\""
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "ZÃskán signál %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "UkonÄovánÃ."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "NezdaÅilo se nalézt uživatele \"%s\"."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "NezdaÅilo se nalézt skupinu \"%s\"."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Nalezen uživatel \"%s\" (UID %lu) a skupina \"%s\" (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID uživatele \"%s\" a skupiny \"%s\" nesouhlasÃ."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Domovský adresáŠuživatele \"%s\" nenà \"%s\", bude ignorováno."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "NezdaÅilo se vytvoÅit \"%s\": %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "NezdaÅilo se zmÄnit seznam skupin: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "NezdaÅilo se zmÄnit GID: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "NezdaÅilo se zmÄnit UID: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "OprávnÄnà superuživatele úspÄÅ¡nÄ zruÅ¡ena."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Režim celého systému nenà na této platformÄ podporován."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) selhalo: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "NezdaÅila se analýza pÅÃkazového Åádku."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"NacházÃme se ve skupinÄ \"%s\", což umožÅuje plánovánà o vysoké prioritÄ."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "NacházÃme se ve skupinÄ \"%s\", což umožÅuje plánovánà v reálném Äase."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit nám udÄlil oprávnÄnà acquire-high-priority."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit nám neudÄlil oprávnÄnà acquire-high-priority."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit nám udÄlil oprávnÄnà acquire-real-time."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit nám neudÄlil oprávnÄnà acquire-real-time."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"Voláno SUID root a v nastavenà bylo požádáno o plánovánà v reálném Äase Äi o "
-"vysoké prioritÄ. Scházà nám ovÅ¡em potÅebná oprávnÄnÃ.\n"
-"Nejsme ve skupinÄ \"%s\", PolicyKit nám odmÃtá pÅidÄlit požadovaná oprávnÄnà "
-"a je nutné zvýšit omezenà zdroje RLIMIT_NICE/RLIMIT_RTPRIO.\n"
-"Plánovánà v reálném Äase Äi o vysoké prioritÄ zapnete zÃskánÃm pÅÃsluÅ¡ných "
-"oprávnÄnà PolicyKit, nebo tÃm, že se stanete Äleny \"%s\", nebo uživateli "
-"zvýšÃte omezenà zdroje RLIMIT_NICE/RLIMIT_RTPRIO."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Plánovánà o vysoké prioritÄ v konfiguraci zapnuto, ale nepovoleno pravidly."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "ÃspÄÅ¡nÄ zvýšeno RLIMIT_RTPRIO"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO selhalo: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Vzdávánà se CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Plánovánà v reálném Äase v konfiguraci zapnuto, ale nepovoleno pravidly."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Démon nebÄžÃ"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Démon bÄžà jako PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Zabità démona se nezdaÅilo: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -308,150 +192,150 @@ msgstr ""
"Tento program nenà urÄen ke spuÅ¡tÄnà pod superuživatelem (nenÃ-li zadáno --"
"system)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Jsou vyžadována oprávnÄnà superuživatele."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start nepodporováno u systémových instancÃ."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "BÄžà v systémovém režimu, ale nenastaveno --disallow-exit!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "BÄžà v systémovém režimu, ale nenastaveno --disallow-module-loading!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "BÄžà v systémovém režimu, vynucenÄ se vypÃná režim SHM!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "BÄžà v systémovém režimu, vynucenÄ se vypÃná Äas neÄinnosti ukonÄenÃ!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "NezdaÅilo se zÃskánà stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe selhalo: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() selhalo: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() selhalo: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "SpuÅ¡tÄnà démona selhalo."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "SpuÅ¡tÄnà démona bylo úspÄÅ¡né."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Toto je PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "PÅekladový poÄÃtaÄ: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "PÅekladové CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "BÄžà na poÄÃtaÄi: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Nalezen následujÃcà poÄet CPU: %u."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "Velikost stránky je %lu bajtů"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "PÅeloženo s podporou Valgrind: ano"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "PÅeloženo s podporou Valgrind: ne"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "BÄžà v režimu valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimalizované sestavenÃ: ano"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimalizované sestavenÃ: ne"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definováno, všechny výrazy zakázány."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH definováno, zakázány pouze výrazy rychlých cest."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Všechny výrazy povoleny."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "NezdaÅilo se zÃskánà ID poÄÃtaÄe"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "ID poÄÃtaÄe je %s."
-#: ../src/daemon/main.c:917
-#, fuzzy, c-format
+#: ../src/daemon/main.c:770
+#, c-format
msgid "Session ID is %s."
-msgstr "ID poÄÃtaÄe je %s."
+msgstr "ID sezenà je %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "PoužÃván bÄhový adresáŠ%s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "PoužÃván stavový adresáŠ%s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "BÄžà v systémovém režimu: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -460,17 +344,23 @@ msgid ""
"Please read http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an "
"explanation why system mode is usually a bad idea."
msgstr ""
-
-#: ../src/daemon/main.c:951
+"Dobrá, máte tedy PA spuÅ¡tÄn v systémovém režimu. Vemte prosÃm na vÄdomÃ, že "
+"k tomuto by až na výjimeÄné situace nÄmelo docházet.\n"
+"Pokud v této Äinnosti pÅesto budete pokraÄovat, nesete riziko za možné "
+"Å¡patné a nepÅedvÃdatelné chovánà systému.\n"
+"VysvÄtlenÃ, proÄ je systémový režim obvykle velmi Å¡patný nápad, si můžete "
+"pÅeÄÃst na http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode."
+
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() selhalo."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr ""
"Jsou dostupné výteÄné ÄasovaÄe o vysokém rozliÅ¡enÃ. Tak s chutà do toho!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -478,27 +368,27 @@ msgstr ""
"Sorry, vole, kernel error! Tip šéfkuchaÅe na dneÅ¡nà den znÃ: Linux se "
"zapnutými ÄasovaÄi o vysokém rozliÅ¡enÃ."
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() selhalo."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Selhalo spuÅ¡tÄnà démona."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "SpuÅ¡tÄnà démona bez jakýchkoliv nahraných modulů, bÄh bude odmÃtnut."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "SpuÅ¡tÄnà démona dokonÄeno."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "VypÃnánà démona spuÅ¡tÄno."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Démon ukonÄen."
@@ -752,7 +642,7 @@ msgstr "NaÄÃst jednou: %s\n"
#: ../src/daemon/dumpmodules.c:75
#, c-format
msgid "DEPRECATION WARNING: %s\n"
-msgstr ""
+msgstr "VAROVÃNÃ ZASTARALOSTI: %s\n"
#: ../src/daemon/dumpmodules.c:79
#, c-format
@@ -837,14 +727,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Ätenà z konfiguraÄnÃho souboru: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "RuÅ¡enà superuživatelských oprávnÄnÃ."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Schopnosti úspÄÅ¡nÄ omezeny na CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "Zvukový systém PulseAudio"
@@ -853,29 +739,6 @@ msgstr "Zvukový systém PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Spustit zvukový systém PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Plánovánà o vysoké prioritÄ (záporná úroveÅ nice v Unixu) démona PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Plánovánà v reálném Äase démona PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"Systémová pravidla znemožÅujà technologii PulseAudio zÃskat pÅÃstup k "
-"plánovánà o vysoké prioritÄ."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"Systémová pravidla znemožÅujà technologii PulseAudio zÃskat pÅÃstup k "
-"plánovánà v reálném Äase."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1248,188 +1111,192 @@ msgstr "Selhala analýza dat cookie"
msgid "Failed to open configuration file '%s': %s"
msgstr "Selhalo otevÅenà konfiguraÄnÃho souboru \"%s\": %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Žádný soubor cookie nenahrán. Pokus o spojenà bez tohoto kroku."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "PÅijata zpráva pro neznámé rozÅ¡ÃÅenà \"%s\""
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "NezdaÅilo se vyprázdnit proud: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Proud pÅehrávánà vyprázdnÄn.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "VyprazdÅovánà spojenà se serverem.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() selhalo: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() selhalo: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() selhalo: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Proud úspÄÅ¡nÄ vytvoÅen.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() selhalo: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr ""
"Metrika vyrovnávacà pamÄti: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Metrika vyrovnávacà pamÄti: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
-msgstr "PoužÃvána vzorkovacà specifikace \"%s\", mapa kanálů \"%s\".\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr "PoužÃváno urÄenà vzorku \"%s\", mapa kanálů \"%s\".\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "PÅipojeno k zaÅÃzenà %s (%u, %ssuspended).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Chyba proudu: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "Proudové zaÅÃzenà pozastaveno.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "Proudové zaÅÃzenà obnoveno.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "PodbÄhnutà proudu.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "PÅebÄhnutà proudu.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Proud spuÅ¡tÄn.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Proud pÅesunut na zaÅÃzenà %s (%u, %ssuspended).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "nikoliv "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "ZmÄnÄny atributy vyrovnávacà pamÄti proudu.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Spojenà navázáno.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() selhalo: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() selhalo: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() selhalo: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Spojenà selhalo: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "ZÃskáno EOF.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() selhalo: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "ZÃskáno EOF.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() selhalo: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "ZÃskán signál, ukonÄovánÃ.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "NezdaÅilo se zÃskat latenci: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Äas: %0.3f sekund; latence: %0.0f μs. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() selhalo: %s\n"
#: ../src/utils/pacat.c:605
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -1531,6 +1398,13 @@ msgstr ""
" --latency=BAJTY Vyžádá urÄenou latenci v bajtech.\n"
" --process-time=BAJTY Vyžádá urÄený Äas zpracovánà na "
"požadavek v bajtech.\n"
+" --property=VLASTNOST=HODNOTA Nastavà urÄenou vlastnost na urÄenou "
+"hodnotu.\n"
+" --raw Nahrává/pÅehrává surová data PCM.\n"
+" --file-format=FORMÃT Nahrává/pÅehrává formátovaná data "
+"PCM.\n"
+" --list-file-formats Zobrazà seznam dostupných formátů "
+"souborů.\n"
#: ../src/utils/pacat.c:727
#, c-format
@@ -1543,97 +1417,104 @@ msgstr ""
"PÅeloženo s libpulse %s\n"
"Propojeno s libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "Neplatná mapa kanálů \"%s\"\n"
+msgid "Invalid client name '%s'"
+msgstr "Neplatný název klienta \"%s\"\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "Neplatná metoda pÅevzorkovánà \"%s\"."
+msgid "Invalid stream name '%s'"
+msgstr "Neplatný název proudu \"%s\"\n"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Neplatná mapa kanálů \"%s\"\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Neplatné upÅesnÄnà latence \"%s\"\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Neplatné upÅesnÄnà Äasu zpracovánà \"%s\"\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
-msgstr "Neplatná metoda pÅevzorkovánà \"%s\"."
+msgid "Invalid property '%s'"
+msgstr "Neplatná vlastnost \"%s\"\n"
#: ../src/utils/pacat.c:878
#, c-format
msgid "Unknown file format %s."
-msgstr ""
+msgstr "Neznámý formát souboru %s."
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
-msgstr "Neplatné upÅesnÄnà vzorkovánÃ\n"
+#, fuzzy
+msgid "Invalid sample specification"
+msgstr "Neplatné urÄenà vzorku\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "PÅÃliÅ¡ mnoho argumentů.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
-msgstr "Selhalo zÃskánà informace o vzorku: %s\n"
+msgid "Failed to generate sample specification for file."
+msgstr "Selhalo vytvoÅenà urÄenà vzorku souboru.\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Selhalo otevÅenà zvukového souboru.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
+"VarovánÃ: zadané urÄenà vzorku bude pÅepsáno urÄenÃm zÃskaným ze souboru.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
-msgstr "Selhalo zÃskánà informace o vzorku: %s\n"
+msgid "Failed to determine sample specification from file."
+msgstr "Selhalo zjiÅ¡tÄnà urÄenà vzorku ze souboru.\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "VarovánÃ: Selhalo zjiÅ¡tÄnà mapy kanálů ze souboru.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
-msgstr "Mapa kanálů se neshoduje s upÅesnÄnÃm vzorkovánÃ\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
+msgstr "Mapa kanálů se neshoduje s urÄenÃm vzorku\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "VarovánÃ: selhal zápis mapy kanálů do souboru.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
-msgstr "OtevÃránà proudu %s s upÅesnÄnÃm vzorkovánà \"%s\".\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr "OtevÃránà proudu %s s urÄenÃm vzorku \"%s\" a mapou kanálů \"%s\".\n"
#: ../src/utils/pacat.c:1006
msgid "recording"
@@ -1643,35 +1524,34 @@ msgstr "nahrávánÃ"
msgid "playback"
msgstr "pÅehrávánÃ"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() selhalo.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() selhalo.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() selhalo.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() selhalo: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() selhalo.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() selhalo.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() selhalo.\n"
#: ../src/utils/pasuspender.c:81
@@ -1699,6 +1579,11 @@ msgstr "NezdaÅilo se obnovenÃ: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "VAROVÃNÃ: Zvukový server nenà mÃstnÃ, nedojde k pozastavenÃ.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Spojenà selhalo: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1738,6 +1623,21 @@ msgstr ""
"PÅeloženo s libpulse %s\n"
"Propojeno s libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() selhalo.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() selhalo.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() selhalo.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1780,7 +1680,7 @@ msgstr ""
"Název poÄÃtaÄe: %s\n"
"Název serveru: %s\n"
"Verze serveru: %s\n"
-"Výchozà upÅesnÄnà vzorkovánÃ: %s\n"
+"Výchozà urÄenà vzorku: %s\n"
"Výchozà mapa kanálů: %s\n"
"Výchozà cÃl: %s\n"
"Výchozà zdroj: %s\n"
@@ -1817,7 +1717,7 @@ msgstr ""
"\tNázev: %s\n"
"\tPopis: %s\n"
"\tOvladaÄ: %s\n"
-"\tUpÅesnÄnà vzorkovánÃ: %s\n"
+"\tUrÄenà vzorku: %s\n"
"\tMapa kanálů: %s\n"
"\tModul vlastnÃka: %u\n"
"\tZtlumenÃ: %s\n"
@@ -1831,14 +1731,14 @@ msgstr ""
"\t\t%s\n"
#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:353
-#, fuzzy, c-format
+#, c-format
msgid "\tPorts:\n"
-msgstr "\tProfily:\n"
+msgstr "\tPorty:\n"
#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
-#, fuzzy, c-format
+#, c-format
msgid "\tActive Port: %s\n"
-msgstr "\tAktivnà profil: %s\n"
+msgstr "\tAktivnà port: %s\n"
#: ../src/utils/pactl.c:290
#, c-format
@@ -1871,7 +1771,7 @@ msgstr ""
"\tNázev: %s\n"
"\tPopis: %s\n"
"\tOvladaÄ: %s\n"
-"\tUpÅesnÄnà vzorkovánÃ: %s\n"
+"\tUrÄenà vzorku: %s\n"
"\tMapa kanálů: %s\n"
"\tModul vlastnÃka: %u\n"
"\tZtlumenÃ: %s\n"
@@ -1996,7 +1896,7 @@ msgstr ""
"\tModul vlastnÃka: %s\n"
"\tKlient: %s\n"
"\tCÃl: %u\n"
-"\tUpÅesnÄnà vzorkovánÃ: %s\n"
+"\tUrÄenà vzorku: %s\n"
"\tMapa kanálů: %s\n"
"\tZtlumenÃ: %s\n"
"\tHlasitost: %s\n"
@@ -2034,7 +1934,7 @@ msgstr ""
"\tModul vlastnÃka: %s\n"
"\tKlient: %s\n"
"\tZdroj: %u\n"
-"\tUpÅesnÄnà vzorkovánÃ: %s\n"
+"\tUrÄenà vzorku: %s\n"
"\tMapa kanálů: %s\n"
"\tLatence vyrovnávacà pamÄti: %0.0f μs\n"
"\tLatence zdroje: %0.0f μs\n"
@@ -2066,7 +1966,7 @@ msgid ""
msgstr ""
"Vzorek Ä. %u\n"
"\tNázev: %s\n"
-"\tUpÅesnÄnà vzorkovánÃ: %s\n"
+"\tUrÄenà vzorku: %s\n"
"\tMapa kanálů: %s\n"
"\tHlasitost: %s\n"
"\t %s\n"
@@ -2093,7 +1993,7 @@ msgid "Premature end of file\n"
msgstr "PÅedÄasný konec souboru\n"
#: ../src/utils/pactl.c:826
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options] stat\n"
"%s [options] list\n"
@@ -2132,6 +2032,8 @@ msgstr ""
"%s [pÅepÃnaÄe] suspend-sink [CÃL] 1|0\n"
"%s [pÅepÃnaÄe] suspend-source [ZDROJ] 1|0\n"
"%s [pÅepÃnaÄe] set-card-profile [KARTA] [PROFIL] \n"
+"%s [pÅepÃnaÄe] set-sink-port [CÃL] [PORT] \n"
+"%s [pÅepÃnaÄe] set-source-port [ZDROJ] [PORT] \n"
"\n"
" -h, --help Zobrazà tuto nápovÄdu\n"
" --version Zobrazà verzi\n"
@@ -2151,6 +2053,11 @@ msgstr ""
"PÅeloženo s libpulse %s\n"
"Propojeno s libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Neplatný název klienta \"%s\"\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Zadejte prosÃm soubor se vzorkem urÄeným k nahránÃ\n"
@@ -2159,10 +2066,13 @@ msgstr "Zadejte prosÃm soubor se vzorkem urÄeným k nahránÃ\n"
msgid "Failed to open sound file.\n"
msgstr "Selhalo otevÅenà zvukového souboru.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Selhalo zjiÅ¡tÄnà urÄenà vzorku ze souboru.\n"
+
#: ../src/utils/pactl.c:951
-#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
-msgstr "OtevÃránà proudu %s s upÅesnÄnÃm vzorkovánà \"%s\".\n"
+msgstr "VarovánÃ: Selhalo zjiÅ¡tÄnà urÄenà vzorku ze souboru.\n"
#: ../src/utils/pactl.c:961
msgid "You have to specify a sample name to play\n"
@@ -2206,24 +2116,17 @@ msgid "You have to specify a card name/index and a profile name\n"
msgstr "Je nutné upÅesnit název karty/indexu a název profilu\n"
#: ../src/utils/pactl.c:1073
-#, fuzzy
msgid "You have to specify a sink name/index and a port name\n"
-msgstr "Je nutné upÅesnit název karty/indexu a název profilu\n"
+msgstr "Je nutné upÅesnit název cÃle/indexu a název portu\n"
#: ../src/utils/pactl.c:1084
-#, fuzzy
msgid "You have to specify a source name/index and a port name\n"
-msgstr "Je nutné upÅesnit název karty/indexu a název profilu\n"
+msgstr "Je nutné upÅesnit název zdroje/indexu a název portu\n"
#: ../src/utils/pactl.c:1099
msgid "No valid command specified.\n"
msgstr "Nezadán žádný platný pÅÃkaz.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() selhalo: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2305,7 +2208,7 @@ msgstr "Doposud neimplementováno.\n"
#: ../src/utils/pacmd.c:61
msgid "No PulseAudio daemon running, or not running as session daemon."
-msgstr ""
+msgstr "NebÄžà žádný démon PulseAudio, nebo nebÄžà jako démon sezenÃ."
#: ../src/utils/pacmd.c:66
#, c-format
@@ -2340,11 +2243,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Nelze pÅistoupit k zámku automatického spouÅ¡tÄnÃ."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2361,7 +2264,7 @@ msgstr ""
"Probudilo nás nastavenà POLLOUT - nicménÄ následné snd_pcm_avail() vrátilo 0 "
"Äi jinou hodnotu < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2379,15 +2282,15 @@ msgstr ""
"Äi jinou hodnotu < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Vypnuto"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "PÅehrávánà s velmi vÄrnou reprodukcà (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Duplexnà telefonie (HSP/HFP)"
@@ -2395,6 +2298,136 @@ msgstr "Duplexnà telefonie (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Zvukový server PulseAudio"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Nelze se spojit se systémovou sbÄrnicÃ: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Nelze zÃskat volajÃcÃho z PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Nelze nastavit UID na objekt volajÃcÃho."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "NezdaÅilo se zÃskánà sezenà CK."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Nelze nastavit UID na objekt sezenÃ."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Nelze alokovat PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Nelze nastavit action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Nelze alokovat PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Nelze spustit PolKitContext: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "NezdaÅilo se urÄit, zda je volajÃcà oprávnÄn: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "NezdaÅilo se zÃskat oprávnÄnÃ: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit odpovÄdÄl s \"%s\""
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Plánovánà o vysoké prioritÄ (záporná úroveÅ nice v Unixu) démona "
+#~ "PulseAudio"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Plánovánà v reálném Äase démona PulseAudio"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Systémová pravidla znemožÅujà technologii PulseAudio zÃskat pÅÃstup k "
+#~ "plánovánà o vysoké prioritÄ."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Systémová pravidla znemožÅujà technologii PulseAudio zÃskat pÅÃstup k "
+#~ "plánovánà v reálném Äase."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() selhalo: %s\n"
+
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() selhalo: %s\n"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "NacházÃme se ve skupinÄ \"%s\", což umožÅuje plánovánà o vysoké prioritÄ."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "NacházÃme se ve skupinÄ \"%s\", což umožÅuje plánovánà v reálném Äase."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit nám udÄlil oprávnÄnà acquire-high-priority."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit nám neudÄlil oprávnÄnà acquire-high-priority."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit nám udÄlil oprávnÄnà acquire-real-time."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit nám neudÄlil oprávnÄnà acquire-real-time."
+
+#~ 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 ""
+#~ "Voláno SUID root a v nastavenà bylo požádáno o plánovánà v reálném Äase "
+#~ "Äi o vysoké prioritÄ. Scházà nám ovÅ¡em potÅebná oprávnÄnÃ.\n"
+#~ "Nejsme ve skupinÄ \"%s\", PolicyKit nám odmÃtá pÅidÄlit požadovaná "
+#~ "oprávnÄnà a je nutné zvýšit omezenà zdroje RLIMIT_NICE/RLIMIT_RTPRIO.\n"
+#~ "Plánovánà v reálném Äase Äi o vysoké prioritÄ zapnete zÃskánÃm "
+#~ "pÅÃsluÅ¡ných oprávnÄnà PolicyKit, nebo tÃm, že se stanete Äleny \"%s\", "
+#~ "nebo uživateli zvýšÃte omezenà zdroje RLIMIT_NICE/RLIMIT_RTPRIO."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "Plánovánà o vysoké prioritÄ v konfiguraci zapnuto, ale nepovoleno "
+#~ "pravidly."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "ÃspÄÅ¡nÄ zvýšeno RLIMIT_RTPRIO"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO selhalo: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Vzdávánà se CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Plánovánà v reálném Äase v konfiguraci zapnuto, ale nepovoleno pravidly."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Schopnosti úspÄÅ¡nÄ omezeny na CAP_SYS_NICE."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() selhalo.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analogové mono"
diff --git a/po/de.po b/po/de.po
index dd96f71c..17507a2d 100644
--- a/po/de.po
+++ b/po/de.po
@@ -3,13 +3,13 @@
# This file is distributed under the same license as the pulseaudio package.
#
# Fabian Affolter , 2008-2009.
-# Micha Pietsch , 2008
+# Micha Pietsch , 2008, 2009.
#
msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-18 12:43+0100\n"
"Last-Translator: Fabian Affolter \n"
"Language-Team: German \n"
@@ -19,7 +19,12 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-Language: German\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -32,7 +37,7 @@ msgstr ""
"Dies ist wahrscheinlich ein Fehler im ALSA-Treiber '%s'. Bitte melden Sie "
"diesen Punkt den ALSA-Entwicklern."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -45,7 +50,7 @@ msgstr ""
"Dies ist wahrscheinlich ein Fehler im ALSA-Treiber '%s'. Bitte melden Sie "
"diesen Punkt den ALSA-Entwicklern."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -71,7 +76,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Internes Audio"
@@ -91,214 +96,92 @@ msgstr "Neuer dlopen-Loader konnte nicht gefunden werden."
msgid "Failed to add bind-now-loader."
msgstr "Hinzufügen von Bind-Now-Loader fehlgeschlagen."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Kann nicht mit dem System-Bus verbinden: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Kann Caller von PID nicht beziehen: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Kann UID für Caller-Objekt nicht setzen."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Kann CK-Session nicht beziehen."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Kann UID für Session-Objekt nicht setzen."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Konnte PolKitAction nicht zuordnen."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Kann action_id nicht setzen"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Konnte PolKitContext nicht zuordnen."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Konnte PolKitContext nicht initialisieren: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Autorisierung des Callers konnte nicht sichergestellt werden: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Keine Authorisierung erhalten: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit antwortete mit '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Signal %s empfangen."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Wird beendet."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Benutzer '%s' nicht gefunden."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Gruppe '%s' nicht gefunden."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Benutzer '%s' (UID %lu) und Gruppe '%s' (GID %lu) gefunden."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID von Benutzer '%s' und Gruppe '%s' stimmen nicht überein."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Benutzerverzeichnis von Benutzer '%s' ist nicht '%s', ignoriere."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Konnte '%s' nciht erzeugen: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Wechseln der Gruppen-Liste fehlgeschlagen: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Wechseln der GID fehlgeschlagen: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Wechseln der UID fehlgeschlagen: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Root-Berechtigungen erfolgreich zurückgesetzt."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "System-Modus auf dieser Plattform nicht unterstützt."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) fehlgeschlagen: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Parsen der Kommandzeile fehlgeschlagen."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Wir befinden uns in der Gruppe '%s', was Scheduling höchster Priorität "
-"ermöglicht."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Wir befinden uns in der Gruppe '%s', was Echtzeit-Scheduling ermöglicht."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "Richtlinien gewähren das Recht aquire-high-priority."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "Richtlinien verweigern das Recht acquire-high-priority."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "Richtlinien gewähren das Recht aquire-real-time."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "Richtlinien verweigern das Recht acquire-real-time."
-
-#: ../src/daemon/main.c:560
-#, fuzzy, c-format
-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 ""
-"' und PolicyKit verweigern diese Rechte. Verwerfe SUID wieder.\n"
-"Erlangen Sie die den Richtlinien entsprechenden Rechte, um Echtzeit-"
-"Scheduling zu aktivieren oder werden Sie Mitglied der Gruppe '"
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr "Scheduling höchster Priorität konfiguriert, jedoch nicht erlaubt."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO erfolgreich erhöht"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO fehlgeschlagen: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Verwerfe CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "Echtzeit-Scheduling konfiguriert, jedoch nicht erlaubt."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Daemon läuft nicht"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Daemon läuft als PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Konnte Prozess nicht abbrechen: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -306,153 +189,150 @@ msgstr ""
"Dieses Programm sollte ohne die Option --system nicht als Administrator "
"ausgeführt werden."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Root-Berechtigungen benötigt."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start nicht unterstützt für System-Instanzen."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "System-Modus aktiv, jeodch --disallow-exit nicht gesetzt!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "System-Modus aktiv, jedoch --disallow-module-loading nicht gesetzt!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "System-Modus aktiv, SHM-Modus gezwungenermaÃen deaktiviert!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "System-Modus aktiv, Exit-Idle-Time gezwungenermaÃen deaktiviert!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Reservieren von STDIO fehlgeschlagen."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe fehlgeschlagen: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() fehlgeschlagen: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() fehlgeschlagen: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Start des Daemons fehlgeschlagen."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Start des Daemons erfolgreich."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Dies ist PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Kompilier-Host: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Kompilier-CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Laufe auf Host: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUs gefunden."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "SeitengröÃe ist %lu Bytes."
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Kompiliere mit Valgrind-Unterstützung: ja"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Kompiliere mit Valgrind-Unterstützung: nein"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Läuft im Valgrind-Modus: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimiertes Build: ja"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimiertes Build: nein"
-#: ../src/daemon/main.c:902
-#, fuzzy
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definiert, alle Ansprüche deaktiviert."
-#: ../src/daemon/main.c:904
-#, fuzzy
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH definiert, nur fast-path-Ansprüche deaktiviert."
-#: ../src/daemon/main.c:906
-#, fuzzy
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Alle Ansprüche aktiviert."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Beziehen der Maschinen-ID fehlgeschlagen"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "System- ID ist %s."
-#: ../src/daemon/main.c:917
-#, fuzzy, c-format
+#: ../src/daemon/main.c:770
+#, c-format
msgid "Session ID is %s."
msgstr "System- ID ist %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Nutze Laufzeit-Verzeichnis %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Nutze Zustands-Verzeichnis %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Laufe im System-Modus: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -462,41 +342,41 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() fehlgeschlagen."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Neue hochauslösende Timer verfügbar! Guten Appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr "Der Chefkoch empfiehlt: Linux mit aktivierten hochauslösenden Timern!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() fehlgeschlagen."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Konnte Daemon nicht initialisieren."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Daemon verweigert Ausführung, da keine Module geladen."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Start des Daemons abgeschlossen."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Herunterfahren des Daemon gestartet."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Daemon beendet."
@@ -816,7 +696,6 @@ msgid "Failed to open configuration file: %s"
msgstr "Ãffnen der Konfigurationsdatei fehlgeschlagen : %s"
#: ../src/daemon/daemon-conf.c:540
-#, fuzzy
msgid ""
"The specified default channel map has a different number of channels than "
"the specified default number of channels."
@@ -829,14 +708,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lese von Konfigurationsdatei: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Root-Privilegien aufgeben."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Fähigkeiten erfolgreich auf CAP_SYS_NICE reduziert."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio Sound System"
@@ -845,31 +720,6 @@ msgstr "PulseAudio Sound System"
msgid "Start the PulseAudio Sound System"
msgstr "Das PulseAudio Sound System starten"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-#, fuzzy
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Echtzeit-Terminierung des PulseAudio-Daemon fehlgeschlagen"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-#, fuzzy
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"System-Richtlinien verhindert PulseAudio beim Erlangen des high-priority "
-"scheduling."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-#, fuzzy
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"System-Richtlinien verhindert PulseAudio beim Erlangen der Echtzeit-"
-"Terminierung.."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1202,7 +1052,7 @@ msgstr "Fehlende Implementation"
#: ../src/pulse/error.c:67
msgid "Client forked"
-msgstr ""
+msgstr "Client geteilt"
#: ../src/pulse/sample.c:169
#, c-format
@@ -1242,183 +1092,187 @@ msgstr "Parsen der Cookie-Daten fehlgeschlagen"
msgid "Failed to open configuration file '%s': %s"
msgstr "Konfigurationsdatei '%s' konnte nicht geöffnet werden: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Verbindungsversuch ohne Cookie, da keines geladen."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Nachricht für unbekannte Erweiterung '%s' erhalten"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Entleeren des Streams fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Wiedergabe-Stream entleert.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Draining connection to server.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() fehlgeschlagen: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Stream wurde erfolgreich erstellt.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Pufferdaten: maxlenght=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Pufferdaten: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "Benutze Sample-Angabe '%s', Kanalzuordnung '%s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "Verbunden mit Gerät %s (%u, %sausgesetzt).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Stream-Fehler: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "Stream-Gerät ausgesetzt.%s\n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "Stream-Gerät reaktiviert.%s\n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Stream unterlaufen.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Stream überlief.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Stream gestartet: %s\n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Stream an Gerät %s übergeben (%u, %sausgesetzt).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "nicht "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "Stream-Zwischenspeicher-Attribute geändert.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Verbindung hergestellt.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Verbindungsfehler: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF empfangen.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() fehlgeschlagen: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF empfangen.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Signal empfangen, beende.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Erhalten der Latenz fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Zeit: %0.3f sec; Latenz: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() fehlgeschlagen: %s\n"
#: ../src/utils/pacat.c:605
@@ -1531,97 +1385,104 @@ msgstr ""
"Kompiliert mit libpulse %s\n"
"Gelinkt mit libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "Ungültige Kanal-Zuweisung '%s'\n"
+msgid "Invalid client name '%s'"
+msgstr "Ungültiger Client-Name '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "Ungültige Resample-Methode '%s'."
+msgid "Invalid stream name '%s'"
+msgstr "Ungültiger Stream-Name '%s'\n"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Ungültige Kanal-Zuweisung '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Ungültige Latenz-Angaben '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Ungültige Prozesszeit-Angaben '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
-msgstr "Ungültige Resample-Methode '%s'."
+msgid "Invalid property '%s'"
+msgstr "Ungültige Eigenschaft '%s'\n"
#: ../src/utils/pacat.c:878
#, c-format
msgid "Unknown file format %s."
-msgstr ""
+msgstr "Unbekanntes Dateiformat %s."
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Ungültige Sample-Angaben\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "Zu viele Argumente.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
-msgstr "Beziehen der Sample-Informationen fehlgeschlagen: %s\n"
+msgid "Failed to generate sample specification for file."
+msgstr "Beziehen der Sample-Informationen für die Datei fehlgeschlagen.\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Ãffnen der Audio-Datei fehlgeschlagen.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "Warnung: Beziehen der Sample-Angabe aus Datei fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
-msgstr "Beziehen der Sample-Informationen fehlgeschlagen: %s\n"
+msgid "Failed to determine sample specification from file."
+msgstr "Beziehen der Sample-Informationen der Datei fehlgeschlagen.\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Warnung: Bestimmung der Kanalzuordnung aus Datei fehlgeschlagen.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "Kanalzuordnung entspricht nicht Einstellungen des Samples\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Warnung: Schreiben der Kanalzuordnung in Datei fehlgeschlagen.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
-msgstr "Ãffne eine %s-Stream mit Sample-Angabe '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr ""
+"Ãffnen eines %s-Streams mit Sample-Angabe '%s' und Kanalzuordnung '%s'.\n"
#: ../src/utils/pacat.c:1006
msgid "recording"
@@ -1631,35 +1492,34 @@ msgstr "aufnehmen"
msgid "playback"
msgstr "abspielen"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() fehlgeschlagen.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_new() fehlgeschlagen: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() fehlgeschlagen.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() fehlgeschlagen.\n"
#: ../src/utils/pasuspender.c:81
@@ -1687,6 +1547,11 @@ msgstr "Resume fehlgeschlagen: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "WARNUNG: Sound-Server läuft nicht lokal, nicht ausgesetzt.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Verbindungsfehler: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1726,6 +1591,21 @@ msgstr ""
"kompiliert mit libpulse %s\n"
"Gelinkt mit libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() fehlgeschlagen.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() fehlgeschlagen.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() fehlgeschlagen.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1819,12 +1699,12 @@ msgstr ""
"\t\t%s\n"
#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:353
-#, fuzzy, c-format
+#, c-format
msgid "\tPorts:\n"
msgstr "\tProfile:\n"
#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
-#, fuzzy, c-format
+#, c-format
msgid "\tActive Port: %s\n"
msgstr "\tAktive Profile: %s\n"
@@ -2138,6 +2018,11 @@ msgstr ""
"Kompiliert mit libpulse %s\n"
"Gelinkt mit libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Ungültiger Client-Name '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Geben Sie eine zu öffnende Sample-Datei an\n"
@@ -2146,10 +2031,13 @@ msgstr "Geben Sie eine zu öffnende Sample-Datei an\n"
msgid "Failed to open sound file.\n"
msgstr "Ãffnen der Audio-Datei fehlgeschlagen.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Beziehen der Sample-Informationen der Datei fehlgeschlagen.\n"
+
#: ../src/utils/pactl.c:951
-#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
-msgstr "Ãffne eine %s-Stream mit Sample-Angabe '%s'.\n"
+msgstr "Warnung: Beziehen der Sample-Angabe aus Datei fehlgeschlagen.\n"
#: ../src/utils/pactl.c:961
msgid "You have to specify a sample name to play\n"
@@ -2197,24 +2085,17 @@ msgid "You have to specify a card name/index and a profile name\n"
msgstr "Sie müssen einen Karten-Name/Indexwert und einen Profilnamen angeben\n"
#: ../src/utils/pactl.c:1073
-#, fuzzy
msgid "You have to specify a sink name/index and a port name\n"
-msgstr "Sie müssen einen Karten-Name/Indexwert und einen Profilnamen angeben\n"
+msgstr "Sie müssen einen Senkennamen/-Indexwert und einen Portnamen angeben\n"
#: ../src/utils/pactl.c:1084
-#, fuzzy
msgid "You have to specify a source name/index and a port name\n"
-msgstr "Sie müssen einen Karten-Name/Indexwert und einen Profilnamen angeben\n"
+msgstr "Sie müssen einen Quellennamen/-Indexwert und einen Portnamen angeben\n"
#: ../src/utils/pactl.c:1099
msgid "No valid command specified.\n"
msgstr "Kein gültiger Befehl angegeben.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_new() fehlgeschlagen: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2296,7 +2177,7 @@ msgstr "Noch nicht implementiert.\n"
#: ../src/utils/pacmd.c:61
msgid "No PulseAudio daemon running, or not running as session daemon."
-msgstr ""
+msgstr "Es läuft kein PulseAudio-Dienst oder nicht als Sessiondienst."
#: ../src/utils/pacmd.c:66
#, c-format
@@ -2331,11 +2212,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Fehler beim Zugriff auf Autostart -Sperre."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2346,7 +2227,7 @@ msgid ""
"returned 0 or another value < min_avail."
msgstr ""
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2358,15 +2239,15 @@ msgid ""
msgstr ""
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Aus"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "High Fidelity Playback (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telephony Duplex (HSP/HFP)"
@@ -2374,6 +2255,132 @@ msgstr "Telephony Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio Sound Server"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Kann nicht mit dem System-Bus verbinden: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Kann Caller von PID nicht beziehen: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Kann UID für Caller-Objekt nicht setzen."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Kann CK-Session nicht beziehen."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Kann UID für Session-Objekt nicht setzen."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Konnte PolKitAction nicht zuordnen."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Kann action_id nicht setzen"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Konnte PolKitContext nicht zuordnen."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Konnte PolKitContext nicht initialisieren: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Autorisierung des Callers konnte nicht sichergestellt werden: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Keine Authorisierung erhalten: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit antwortete mit '%s'"
+
+#, fuzzy
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Hochprioritäts-Terminierung () (negative Unix nice level) für den "
+#~ "PulseAudio-Dienst"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Echtzeit-Terminierung des PulseAudio-Daemon"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "System-Richtlinien verhindert PulseAudio beim Erlangen des high-priority "
+#~ "scheduling."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "System-Richtlinien verhindert PulseAudio beim Erlangen der Echtzeit-"
+#~ "Terminierung."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() fehlgeschlagen: %s\n"
+
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() fehlgeschlagen: %s\n"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Wir befinden uns in der Gruppe '%s', was Scheduling höchster Priorität "
+#~ "ermöglicht."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Wir befinden uns in der Gruppe '%s', was Echtzeit-Scheduling ermöglicht."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "Richtlinien gewähren das Recht aquire-high-priority."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "Richtlinien verweigern das Recht acquire-high-priority."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "Richtlinien gewähren das Recht aquire-real-time."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "Richtlinien verweigern das Recht acquire-real-time."
+
+#, 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 '%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 ""
+#~ "' und PolicyKit verweigern diese Rechte. Verwerfe SUID wieder.\n"
+#~ "Erlangen Sie die den Richtlinien entsprechenden Rechte, um Echtzeit-"
+#~ "Scheduling zu aktivieren oder werden Sie Mitglied der Gruppe '"
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr "Scheduling höchster Priorität konfiguriert, jedoch nicht erlaubt."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO erfolgreich erhöht"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO fehlgeschlagen: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Verwerfe CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "Echtzeit-Scheduling konfiguriert, jedoch nicht erlaubt."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Fähigkeiten erfolgreich auf CAP_SYS_NICE reduziert."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() fehlgeschlagen.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analog Mono"
diff --git a/po/de_CH.po b/po/de_CH.po
index 7c069efb..5944c3f3 100644
--- a/po/de_CH.po
+++ b/po/de_CH.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-18 12:55+0100\n"
"Last-Translator: Fabian Affolter \n"
"Language-Team: German \n"
@@ -18,7 +18,12 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-Language: Swiss German\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -31,7 +36,7 @@ msgstr ""
"Dies ist wahrscheinlich ein Fehler im ALSA-Treiber '%s'. Bitte melden Sie "
"diesen Punkt den ALSA-Entwicklern."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -44,7 +49,7 @@ msgstr ""
"Dies ist wahrscheinlich ein Fehler im ALSA-Treiber '%s'. Bitte melden Sie "
"diesen Punkt den ALSA-Entwicklern."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -70,7 +75,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Internes Audio"
@@ -90,214 +95,92 @@ msgstr "Neuer dlopen-Loader konnte nicht gefunden werden."
msgid "Failed to add bind-now-loader."
msgstr "Hinzufügen von Bind-Now-Loader fehlgeschlagen."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Kann nicht mit dem System-Bus verbinden: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Kann Caller von PID nicht beziehen: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Kann UID für Caller-Objekt nicht setzen."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Kann CK-Session nicht beziehen."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Kann UID für Session-Objekt nicht setzen."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Konnte PolKitAction nicht zuordnen."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Kann action_id nicht setzen"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Konnte PolKitContext nicht zuordnen."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Konnte PolKitContext nicht initialisieren: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Autorisierung des Callers konnte nicht sichergestellt werden: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Keine Authorisierung erhalten: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit antwortete mit '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Signal %s empfangen."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Wird beendet."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Benutzer '%s' nicht gefunden."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Gruppe '%s' nicht gefunden."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Benutzer '%s' (UID %lu) und Gruppe '%s' (GID %lu) gefunden."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID von Benutzer '%s' und Gruppe '%s' stimmen nicht überein."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Benutzerverzeichnis von Benutzer '%s' ist nicht '%s', ignoriere."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Konnte '%s' nciht erzeugen: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Wechseln der Gruppen-Liste fehlgeschlagen: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Wechseln der GID fehlgeschlagen: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Wechseln der UID fehlgeschlagen: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Root-Berechtigungen erfolgreich zurückgesetzt."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "System-Modus auf dieser Plattform nicht unterstützt."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) fehlgeschlagen: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Parsen der Kommandzeile fehlgeschlagen."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Wir befinden uns in der Gruppe '%s', was Scheduling höchster Priorität "
-"ermöglicht."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Wir befinden uns in der Gruppe '%s', was Echtzeit-Scheduling ermöglicht."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "Richtlinien gewähren das Recht aquire-high-priority."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "Richtlinien verweigern das Recht acquire-high-priority."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "Richtlinien gewähren das Recht aquire-real-time."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "Richtlinien verweigern das Recht acquire-real-time."
-
-#: ../src/daemon/main.c:560
-#, fuzzy, c-format
-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 ""
-"' und PolicyKit verweigern diese Rechte. Verwerfe SUID wieder.\n"
-"Erlangen Sie die den Richtlinien entsprechenden Rechte, um Echtzeit-"
-"Scheduling zu aktivieren oder werden Sie Mitglied der Gruppe '"
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr "Scheduling höchster Priorität konfiguriert, jedoch nicht erlaubt."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO erfolgreich erhöht"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO fehlgeschlagen: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Verwerfe CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "Echtzeit-Scheduling konfiguriert, jedoch nicht erlaubt."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Daemon läuft nicht"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Daemon läuft als PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Konnte Prozess nicht abbrechen: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -305,153 +188,153 @@ msgstr ""
"Dieses Programm sollte ohne die Option --system nicht als Administrator "
"ausgeführt werden."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Root-Berechtigungen benötigt."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start nicht unterstützt für System-Instanzen."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "System-Modus aktiv, jeodch --disallow-exit nicht gesetzt!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "System-Modus aktiv, jedoch --disallow-module-loading nicht gesetzt!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "System-Modus aktiv, SHM-Modus gezwungenermassen deaktiviert!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "System-Modus aktiv, Exit-Idle-Time gezwungenermassen deaktiviert!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Reservieren von STDIO fehlgeschlagen."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe fehlgeschlagen: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() fehlgeschlagen: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() fehlgeschlagen: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Start des Daemons fehlgeschlagen."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Start des Daemons erfolgreich."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Dies ist PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Kompilier-Host: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Kompilier-CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Laufe auf Host: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUs gefunden."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "Seitengrösse ist %lu Bytes."
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Kompiliere mit Valgrind-Unterstützung: ja"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Kompiliere mit Valgrind-Unterstützung: nein"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Läuft im Valgrind-Modus: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimiertes Build: ja"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimiertes Build: nein"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
#, fuzzy
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definiert, alle Ansprüche deaktiviert."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
#, fuzzy
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH definiert, nur fast-path-Ansprüche deaktiviert."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
#, fuzzy
msgid "All asserts enabled."
msgstr "Alle Ansprüche aktiviert."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Beziehen der Maschinen-ID fehlgeschlagen"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "System- ID ist %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "System- ID ist %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Nutze Laufzeit-Verzeichnis %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Nutze Zustands-Verzeichnis %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Laufe im System-Modus: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -461,41 +344,41 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() fehlgeschlagen."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Neue hochauslösende Timer verfügbar! Guten Appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr "Der Chefkoch empfiehlt: Linux mit aktivierten hochauslösenden Timern!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() fehlgeschlagen."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Konnte Daemon nicht initialisieren."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Daemon verweigert Ausführung, da keine Module geladen."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Start des Daemons abgeschlossen."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Herunterfahren des Daemon gestartet."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Daemon beendet."
@@ -828,14 +711,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lese von Konfigurationsdatei: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Root-Privilegien aufgeben."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Fähigkeiten erfolgreich auf CAP_SYS_NICE reduziert."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio Sound System"
@@ -844,34 +723,6 @@ msgstr "PulseAudio Sound System"
msgid "Start the PulseAudio Sound System"
msgstr "Das PulseAudio Sound System starten"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-#, fuzzy
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"High-priority scheduling (verkleinere Unix nice-Stufe) für den PulseAudio-"
-"Daemon"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-#, fuzzy
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Echtzeit-Terminierung des PulseAudio-Daemon fehlgeschlagen"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-#, fuzzy
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"System-Richtlinien verhindert PulseAudio beim Erlangen des high-priority "
-"scheduling."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-#, fuzzy
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"System-Richtlinien verhindert PulseAudio beim Erlangen der Echtzeit-"
-"Terminierung.."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1245,183 +1096,187 @@ msgstr "Parsen der Cookie-Daten fehlgeschlagen"
msgid "Failed to open configuration file '%s': %s"
msgstr "Konfigurationsdatei '%s' konnte nicht geöffnet werden: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Verbindungsversuch ohne Cookie, da keines geladen."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Nachricht für unbekannte Erweiterung '%s' erhalten"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Entleeren des Streams fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Wiedergabe-Stream entleert.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Draining connection to server.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() fehlgeschlagen: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Stream wurde erfolgreich erstellt.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Pufferdaten: maxlenght=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Pufferdaten: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "Benutze Sample-Angabe '%s', Kanalzuordnung '%s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "Verbunden mit Gerät %s (%u, %sausgesetzt).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Stream-Fehler: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "Stream-Gerät ausgesetzt.%s\n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "Stream-Gerät reaktiviert.%s\n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Stream unterlaufen.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Stream überlief.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Stream gestartet: %s\n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Stream an Gerät %s übergeben (%u, %sausgesetzt).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "nicht "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "Stream-Zwischenspeicher-Attribute geändert.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Verbindung hergestellt.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Verbindungsfehler: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF empfangen.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() fehlgeschlagen: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF empfangen.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Signal empfangen, beende.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Erhalten der Latenz fehlgeschlagen: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Zeit: %0.3f sec; Latenz: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() fehlgeschlagen: %s\n"
#: ../src/utils/pacat.c:605
@@ -1534,34 +1389,34 @@ msgstr ""
"Kompiliert mit libpulse %s\n"
"Gelinkt mit libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "Ungültige Kanal-Zuweisung '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "Ungültige Resample-Methode '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Ungültige Kanal-Zuweisung '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Ungültige Latenz-Angaben '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Ungültige Prozesszeit-Angaben '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Ungültige Resample-Methode '%s'."
#: ../src/utils/pacat.c:878
@@ -1570,60 +1425,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Ungültige Sample-Angaben\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "Zu viele Argumente.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Beziehen der Sample-Informationen fehlgeschlagen: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Ãffnen der Audio-Datei fehlgeschlagen.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "Ãffne eine %s-Stream mit Sample-Angabe '%s'.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "Beziehen der Sample-Informationen fehlgeschlagen: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Ãffne eine %s-Stream mit Sample-Angabe '%s'.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "Kanalzuordnung entspricht nicht Einstellungen des Samples\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Ãffne eine %s-Stream mit Sample-Angabe '%s'.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "Ãffne eine %s-Stream mit Sample-Angabe '%s'.\n"
#: ../src/utils/pacat.c:1006
@@ -1634,35 +1495,34 @@ msgstr "aufnehmen"
msgid "playback"
msgstr "abspielen"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() fehlgeschlagen.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_new() fehlgeschlagen: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() fehlgeschlagen.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() fehlgeschlagen.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() fehlgeschlagen.\n"
#: ../src/utils/pasuspender.c:81
@@ -1690,6 +1550,11 @@ msgstr "Resume fehlgeschlagen: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "WARNUNG: Sound-Server läuft nicht lokal, nicht ausgesetzt.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Verbindungsfehler: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1729,6 +1594,21 @@ msgstr ""
"kompiliert mit libpulse %s\n"
"Gelinkt mit libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() fehlgeschlagen.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() fehlgeschlagen.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() fehlgeschlagen.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2141,6 +2021,11 @@ msgstr ""
"Kompiliert mit libpulse %s\n"
"Gelinkt mit libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Ungültige Kanal-Zuweisung '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Geben Sie eine zu öffnende Sample-Datei an\n"
@@ -2149,6 +2034,11 @@ msgstr "Geben Sie eine zu öffnende Sample-Datei an\n"
msgid "Failed to open sound file.\n"
msgstr "Ãffnen der Audio-Datei fehlgeschlagen.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Beziehen der Sample-Informationen fehlgeschlagen: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2213,11 +2103,6 @@ msgstr "Sie müssen einen Karten-Name/Indexwert und einen Profilnamen angeben\n"
msgid "No valid command specified.\n"
msgstr "Kein gültiger Befehl angegeben.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_new() fehlgeschlagen: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2334,11 +2219,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Fehler beim Zugriff auf Autostart -Sperre."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2356,7 +2241,7 @@ msgstr ""
"von snd_pcm_avail() liefert 0 oder einen anderen Wert zurück, der < "
"min_avail ist."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2375,15 +2260,15 @@ msgstr ""
"min_avail ist."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Aus"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "High Fidelity Playback (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telephony Duplex (HSP/HFP)"
@@ -2391,6 +2276,136 @@ msgstr "Telephony Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio Sound Server"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Kann nicht mit dem System-Bus verbinden: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Kann Caller von PID nicht beziehen: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Kann UID für Caller-Objekt nicht setzen."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Kann CK-Session nicht beziehen."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Kann UID für Session-Objekt nicht setzen."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Konnte PolKitAction nicht zuordnen."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Kann action_id nicht setzen"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Konnte PolKitContext nicht zuordnen."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Konnte PolKitContext nicht initialisieren: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Autorisierung des Callers konnte nicht sichergestellt werden: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Keine Authorisierung erhalten: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit antwortete mit '%s'"
+
+#, fuzzy
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "High-priority scheduling (verkleinere Unix nice-Stufe) für den PulseAudio-"
+#~ "Daemon"
+
+#, fuzzy
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Echtzeit-Terminierung des PulseAudio-Daemon fehlgeschlagen"
+
+#, fuzzy
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "System-Richtlinien verhindert PulseAudio beim Erlangen des high-priority "
+#~ "scheduling."
+
+#, fuzzy
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "System-Richtlinien verhindert PulseAudio beim Erlangen der Echtzeit-"
+#~ "Terminierung.."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() fehlgeschlagen: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_new() fehlgeschlagen: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Wir befinden uns in der Gruppe '%s', was Scheduling höchster Priorität "
+#~ "ermöglicht."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Wir befinden uns in der Gruppe '%s', was Echtzeit-Scheduling ermöglicht."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "Richtlinien gewähren das Recht aquire-high-priority."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "Richtlinien verweigern das Recht acquire-high-priority."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "Richtlinien gewähren das Recht aquire-real-time."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "Richtlinien verweigern das Recht acquire-real-time."
+
+#, 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 '%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 ""
+#~ "' und PolicyKit verweigern diese Rechte. Verwerfe SUID wieder.\n"
+#~ "Erlangen Sie die den Richtlinien entsprechenden Rechte, um Echtzeit-"
+#~ "Scheduling zu aktivieren oder werden Sie Mitglied der Gruppe '"
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr "Scheduling höchster Priorität konfiguriert, jedoch nicht erlaubt."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO erfolgreich erhöht"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO fehlgeschlagen: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Verwerfe CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "Echtzeit-Scheduling konfiguriert, jedoch nicht erlaubt."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Fähigkeiten erfolgreich auf CAP_SYS_NICE reduziert."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() fehlgeschlagen.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analog Mono"
diff --git a/po/el.po b/po/el.po
index 9e593e16..bf43b7b9 100644
--- a/po/el.po
+++ b/po/el.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: el\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2008-08-22 19:40+0300\n"
"Last-Translator: Dimitris Glezos \n"
"Language-Team: Greek \n"
@@ -16,7 +16,12 @@ msgstr ""
"X-Generator: KAider 0.1\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -25,7 +30,7 @@ msgid ""
"to the ALSA developers."
msgstr ""
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -34,7 +39,7 @@ msgid ""
"to the ALSA developers."
msgstr ""
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -56,7 +61,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr ""
@@ -76,357 +81,241 @@ msgstr ""
msgid "Failed to add bind-now-loader."
msgstr ""
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr ""
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr ""
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr ""
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr ""
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr ""
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr ""
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr ""
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr ""
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "ÎξοδοÏ."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "ÎÏοÏÏ
Ïία εÏÏεÏÎ·Ï ÏÏήÏÏη '%s'."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "ÎÏοÏÏ
Ïία εÏÏεÏÎ·Ï Î¿Î¼Î¬Î´Î±Ï ÏÏηÏÏÏν '%s'."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr ""
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr ""
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr ""
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr ""
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr ""
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr ""
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr ""
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr ""
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr ""
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr ""
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr ""
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr ""
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr ""
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr ""
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr ""
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr ""
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr ""
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr ""
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr ""
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr ""
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr ""
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr ""
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr ""
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr ""
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr ""
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr ""
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "ÎÏ
ÏÏ ÎµÎ¯Î½Î±Î¹ Ïο PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr ""
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr ""
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr ""
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr ""
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr ""
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr ""
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr ""
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr ""
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr ""
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr ""
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr ""
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr ""
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr ""
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, c-format
msgid "Session ID is %s."
msgstr ""
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr ""
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr ""
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr ""
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -436,15 +325,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr ""
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr ""
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -452,27 +341,27 @@ msgstr ""
"ÎικΠμοÏ
, ο ÏÏ
ÏÎ®Î½Î±Ï ÏοÏ
είναι για Ïα μÏάζα! Î ÏÏÏÏαÏη ÏοÏ
ÏÎµÏ ÏήμεÏα είναι "
"Linux με ενεÏγοÏοιημÎνα Ïα high-resolution timers!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr ""
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr ""
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr ""
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr ""
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr ""
@@ -734,14 +623,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr ""
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr ""
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr ""
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr ""
@@ -750,24 +635,6 @@ msgstr ""
msgid "Start the PulseAudio Sound System"
msgstr ""
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr ""
@@ -1140,183 +1007,182 @@ msgstr ""
msgid "Failed to open configuration file '%s': %s"
msgstr ""
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr ""
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr ""
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr ""
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr ""
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
+msgstr "ÎÏοÏÏ
Ïία εÏÏεÏÎ·Ï ÏÏήÏÏη '%s'."
+
+#: ../src/utils/pacat.c:113
+msgid "Playback stream drained."
msgstr ""
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:123
+msgid "Draining connection to server."
msgstr ""
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:136
+#, c-format
+msgid "pa_stream_drain(): %s"
msgstr ""
-#: ../src/utils/pacat.c:135
+#: ../src/utils/pacat.c:159
#, c-format
-msgid "pa_stream_drain(): %s\n"
+msgid "pa_stream_write() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:158
+#: ../src/utils/pacat.c:197
#, c-format
-msgid "pa_stream_write() failed: %s\n"
+msgid "pa_stream_begin_write() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+msgid "pa_stream_peek() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+msgid "Stream successfully created."
msgstr ""
-#: ../src/utils/pacat.c:305
+#: ../src/utils/pacat.c:310
#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:309
+#: ../src/utils/pacat.c:314
#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr ""
-#: ../src/utils/pacat.c:312
+#: ../src/utils/pacat.c:317
#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr ""
-#: ../src/utils/pacat.c:316
+#: ../src/utils/pacat.c:321
#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+msgid "Using sample spec '%s', channel map '%s'."
msgstr ""
-#: ../src/utils/pacat.c:320
+#: ../src/utils/pacat.c:325
#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr ""
-#: ../src/utils/pacat.c:330
+#: ../src/utils/pacat.c:335
#, c-format
-msgid "Stream error: %s\n"
+msgid "Stream error: %s"
msgstr ""
-#: ../src/utils/pacat.c:340
+#: ../src/utils/pacat.c:345
#, c-format
-msgid "Stream device suspended.%s \n"
+msgid "Stream device suspended.%s"
msgstr ""
-#: ../src/utils/pacat.c:342
+#: ../src/utils/pacat.c:347
#, c-format
-msgid "Stream device resumed.%s \n"
+msgid "Stream device resumed.%s"
msgstr ""
-#: ../src/utils/pacat.c:350
+#: ../src/utils/pacat.c:355
#, c-format
-msgid "Stream underrun.%s \n"
+msgid "Stream underrun.%s"
msgstr ""
-#: ../src/utils/pacat.c:357
+#: ../src/utils/pacat.c:362
#, c-format
-msgid "Stream overrun.%s \n"
+msgid "Stream overrun.%s"
msgstr ""
-#: ../src/utils/pacat.c:364
+#: ../src/utils/pacat.c:369
#, c-format
-msgid "Stream started.%s \n"
+msgid "Stream started.%s"
msgstr ""
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr ""
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr ""
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+msgid "Stream buffer attributes changed.%s"
msgstr ""
-#: ../src/utils/pacat.c:411
+#: ../src/utils/pacat.c:416
#, c-format
-msgid "Connection established.%s \n"
+msgid "Connection established.%s"
msgstr ""
-#: ../src/utils/pacat.c:414
+#: ../src/utils/pacat.c:419
#, c-format
-msgid "pa_stream_new() failed: %s\n"
+msgid "pa_stream_new() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:442
+#: ../src/utils/pacat.c:447
#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+msgid "pa_stream_connect_playback() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:448
+#: ../src/utils/pacat.c:453
#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+msgid "pa_stream_connect_record() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
+#: ../src/utils/pacat.c:467
#, c-format
-msgid "Connection failure: %s\n"
-msgstr ""
-
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
+msgid "Connection failure: %s"
msgstr ""
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
+msgid "Got EOF."
msgstr ""
-#: ../src/utils/pacat.c:532
+#: ../src/utils/pacat.c:537
#, c-format
-msgid "write() failed: %s\n"
-msgstr ""
-
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+msgid "write() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:558
+msgid "Got signal, exiting."
msgstr ""
#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
+msgstr "ÎÏοÏÏ
Ïία εÏÏεÏÎ·Ï ÏÏήÏÏη '%s'."
+
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr ""
-#: ../src/utils/pacat.c:592
+#: ../src/utils/pacat.c:595
#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr ""
#: ../src/utils/pacat.c:605
@@ -1387,34 +1253,34 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr ""
#: ../src/utils/pacat.c:776
#, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr ""
#: ../src/utils/pacat.c:813
#, c-format
-msgid "Invalid channel map '%s'\n"
+msgid "Invalid channel map '%s'"
msgstr ""
#: ../src/utils/pacat.c:842
#, c-format
-msgid "Invalid latency specification '%s'\n"
+msgid "Invalid latency specification '%s'"
msgstr ""
#: ../src/utils/pacat.c:849
#, c-format
-msgid "Invalid process time specification '%s'\n"
+msgid "Invalid process time specification '%s'"
msgstr ""
#: ../src/utils/pacat.c:861
#, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr ""
#: ../src/utils/pacat.c:878
@@ -1423,57 +1289,57 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+msgid "Invalid sample specification"
msgstr ""
#: ../src/utils/pacat.c:907
#, c-format
-msgid "open(): %s\n"
+msgid "open(): %s"
msgstr ""
#: ../src/utils/pacat.c:912
#, c-format
-msgid "dup2(): %s\n"
+msgid "dup2(): %s"
msgstr ""
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+msgid "Too many arguments."
msgstr ""
#: ../src/utils/pacat.c:930
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr ""
#: ../src/utils/pacat.c:950
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr ""
#: ../src/utils/pacat.c:956
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
-msgid "Failed to determine sample specification from file.\n"
+#: ../src/utils/pacat.c:959
+msgid "Failed to determine sample specification from file."
msgstr ""
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
+msgid "Warning: Failed to determine channel map from file."
msgstr ""
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+msgid "Channel map doesn't match sample specification"
msgstr ""
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
+msgid "Warning: failed to write channel map to file."
msgstr ""
#: ../src/utils/pacat.c:1005
#, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr ""
#: ../src/utils/pacat.c:1006
@@ -1484,35 +1350,29 @@ msgstr ""
msgid "playback"
msgstr ""
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+msgid "pa_mainloop_new() failed."
msgstr ""
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+msgid "io_new() failed."
msgstr ""
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+msgid "pa_context_new() failed."
msgstr ""
-#: ../src/utils/pacat.c:1066
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
#, c-format
-msgid "pa_context_connect() failed: %s\n"
+msgid "pa_context_connect() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
+#: ../src/utils/pacat.c:1072
+msgid "pa_context_rttime_new() failed."
msgstr ""
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+msgid "pa_mainloop_run() failed."
msgstr ""
#: ../src/utils/pasuspender.c:81
@@ -1540,6 +1400,11 @@ msgstr ""
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr ""
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr ""
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1570,6 +1435,21 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr ""
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1859,6 +1739,11 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr ""
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr ""
@@ -1867,6 +1752,10 @@ msgstr ""
msgid "Failed to open sound file.\n"
msgstr ""
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr ""
+
#: ../src/utils/pactl.c:951
msgid "Warning: Failed to determine sample specification from file.\n"
msgstr ""
@@ -1923,11 +1812,6 @@ msgstr ""
msgid "No valid command specified.\n"
msgstr ""
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr ""
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2037,11 +1921,11 @@ msgstr ""
msgid "write(): %s"
msgstr ""
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr ""
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2052,7 +1936,7 @@ msgid ""
"returned 0 or another value < min_avail."
msgstr ""
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2064,15 +1948,15 @@ msgid ""
msgstr ""
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr ""
diff --git a/po/es.po b/po/es.po
index 8af1c738..6995716e 100644
--- a/po/es.po
+++ b/po/es.po
@@ -8,68 +8,57 @@ msgid ""
msgstr ""
"Project-Id-Version: PulseAudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
-"PO-Revision-Date: 2009-06-11 21:48-0300\n"
-"Last-Translator: Dennis Tobar \n"
+"POT-Creation-Date: 2009-08-10 14:50+0000\n"
+"PO-Revision-Date: 2009-08-10 14:36-0300\n"
+"Last-Translator: Héctor Daniel Cabrera \n"
"Language-Team: Fedora Spanish \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Spanish\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775
+#: ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr "%s %s"
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, 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."
+"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 ésto a los desarrolladores de ALSA."
+"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."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, 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."
+"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 ésto a los desarrolladores de ALSA."
+"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."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, 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."
+"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 ésto a los desarrolladores de ALSA."
+"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."
#: ../src/modules/module-ladspa-sink.c:49
msgid "Virtual LADSPA sink"
-msgstr ""
+msgstr "Sumidero virtual LADSPA"
#: ../src/modules/module-ladspa-sink.c:53
-msgid ""
-"sink_name= sink_properties= "
-"master= format= rate= "
-"channels= channel_map= plugin= label= control="
-msgstr ""
+msgid "sink_name= sink_properties= master= format= rate= channels= channel_map= plugin= label= control="
+msgstr "sink_name= sink_properties= master= format= rate= channels= channel_map= plugin= label= control="
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Audio Interno"
@@ -89,427 +78,283 @@ msgstr "Falló al asignar el cargador dl nuevo."
msgid "Failed to add bind-now-loader."
msgstr "Falló al agregar bind-now-loader."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "No se puede conectar al bus del sistema: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "No se puede obtener el llamador desde el PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "No se puede poner UID en el objeto llamador."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Falló al obtener sesión CK."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "No se puede poner UID en el objeto de sesión."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "No se puede asignar PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "No se pudo poner action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "No se pudo asignar PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "No se pudo inicializar PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "No se pudo determinar si el llamador está autorizado: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "No se pudo obtener auth: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit respondió con '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Se obtuvo la señal %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Saliendo."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Falló al buscar usuario '%s'."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Falló al buscar grupo '%s'."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, 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:201
+#: ../src/daemon/main.c:204
#, 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:206
+#: ../src/daemon/main.c:209
#, 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:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212
+#: ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Falló al crear '%s': %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Falló al cambiar la lista de grupo: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Falló al cambiar GID: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Falló al cambiar UID: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Se han liberado con éxitos los privilegios de root."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
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:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) falló: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Falló al analizar la lÃnea de comando."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "Estamos en el grupo '%s', permitiendo planificación de prioridad alta."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "Estamos en el grupo '%s', permitiendo planificación en tiempo real."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit garantiza que se obtenga el privilegio de alta prioridad."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit se niega a dar acceso al privilegio de alta prioridad."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit garantiza el acceso al privilegio de tiempo real."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit se niega a dar acceso al privilegio de tiempo real."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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."
-
-#: ../src/daemon/main.c:585
-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."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO incrementado en forma exitosa"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "Fallo en RLIMIT_RTPRIO: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Abandonando CAP_NICE"
-
-#: ../src/daemon/main.c:631
-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."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "El demonio no está funcionando"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "El demonio está funcionando como PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "No se ha podido detener el demonio: %s"
-#: ../src/daemon/main.c:722
-msgid ""
-"This program is not intended to be run as root (unless --system is "
-"specified)."
-msgstr ""
-"Este programa no tiene por qué ser ejecutado como root (a menos que --system "
-"sea especificado)."
+#: ../src/daemon/main.c:568
+msgid "This program is not intended to be run as root (unless --system is specified)."
+msgstr "Este programa no tiene por qué ser ejecutado como root (a menos que --system sea especificado)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Se necesitan privilegios de root."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start no está soportado para las instancias del sistema."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
-msgstr ""
-"Ejecutándose en modo de sistema, ¡pero no se ha configurado --disallow-exit! "
+msgstr "Ejecutándose en modo de sistema, ¡pero no se ha configurado --disallow-exit! "
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
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!"
+msgstr "Ejecutándose en modo de sistema, ¡pero no se ha configurado --disallow-module-loading!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
-msgstr ""
-"Ejecutándose en modo de sistema, ¡desactivando forzadamente el modo SHM!"
+msgstr "Ejecutándose en modo de sistema, ¡desactivando forzadamente el modo SHM!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
-msgstr ""
-"Ejecutándose en modo de sistema, ¡desactivando forzadamente exit idle time!"
+msgstr "Ejecutándose en modo de sistema, ¡desactivando forzadamente exit idle time!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Fallo al intentar adquirir stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "Falló el pipe: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "Falló el fork(): %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643
+#: ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "Falló la operación read(): %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Falló el inicio del demonio. "
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "El demonio se inició exitosamente."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Esto es PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Host de compilación: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Compilación CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Ejecutándose en el host: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Se encontraron %u CPUs."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "El tamaño de la página es de %lu bytes"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Soporte para compilar con Valgrind: si"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Soporte para compilar con Valgrind: no"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Ejecutándose en modo valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Build optimizado: si"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Build optimizado: no"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definido, todos los chequeos deshabilitados."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH definido, sólo se deshabilitan los chequeos fast path."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Todos los chequeos habilitados."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Fallo al intentar obtener el ID de la máquina"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "El ID de la máquina es %s"
-#: ../src/daemon/main.c:917
-#, fuzzy, c-format
+#: ../src/daemon/main.c:770
+#, c-format
msgid "Session ID is %s."
-msgstr "El ID de la máquina es %s"
+msgstr "El ID de la sesión es %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Utilizando directorio de tiempo de ejecución %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Utilizando directorio de estado %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Ejecutándose en modo de sistema: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
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://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an "
-"explanation why system mode is usually a bad idea."
+"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://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an explanation why system mode is usually a bad idea."
msgstr ""
+"Bien, o sea que está ejecutando PA en modo de sistema. Por favor entienda que, en general, no deberÃa estar haciéndolo.\n"
+"Si insiste en seguir utilizando este modo, será debido a su propio accionar que las cosas no funcionen como se esperaba.\n"
+"Por favor lea http://pulseaudio.org/wiki/WhatIsWrongWithSystemMod para obtener una explicación acerca de por qué es una mala idea utilizar el modo sistema."
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "Ha fallado pa_pid_file_create()."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
-msgstr ""
-"¡Existen cronómetros de alta resolución fresquitos y disponibles! ¡Bon "
-"appetit!"
+msgstr "¡Existen cronómetros de alta resolución fresquitos y disponibles! ¡Bon appetit!"
-#: ../src/daemon/main.c:963
-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:816
+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:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "Falló pa_core_new()."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Fallo al intentar iniciar el demonio."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
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."
+msgstr "El demonio se ha iniciado sin ningún módulo cargado, y por ello se niega a funcionar."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "El demonio se inició completamente."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Comienza a apagarse el demonio."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "El demonio se ha apagado."
@@ -524,48 +369,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 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"
+" --exit-idle-time=SECS Terminate the daemon when idle and this\n"
" time passed\n"
-" --module-idle-time=SECS Unload autoloaded modules when idle "
-"and\n"
+" --module-idle-time=SECS Unload autoloaded modules when idle and\n"
" this 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 Increase the verbosity level\n"
" --log-target={auto,syslog,stderr} 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"
@@ -576,12 +410,10 @@ msgid ""
" --disable-shm[=BOOL] Disable 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"
@@ -592,78 +424,50 @@ msgstr ""
" -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"
+" --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"
+" --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"
+" --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"
+" --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"
+" --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"
+" --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"
+" --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"
+" -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"
+" --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"
+" --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"
+" --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"
+" -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"
+" -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"
+" -n No carga el archivo script predeterminado\n"
#: ../src/daemon/cmdline.c:247
msgid "--daemonize expects boolean argument"
@@ -674,13 +478,8 @@ msgid "--fail expects boolean argument"
msgstr "--fail espera un argumento booleano"
#: ../src/daemon/cmdline.c:264
-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). "
+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/daemon/cmdline.c:276
msgid "--high-priority expects boolean argument"
@@ -767,7 +566,7 @@ msgid "Load Once: %s\n"
msgstr "Carga una vez: %s\n"
#: ../src/daemon/dumpmodules.c:75
-#, fuzzy, c-format
+#, c-format
msgid "DEPRECATION WARNING: %s\n"
msgstr "ADVERTENCIA DE COMPATIBILIDAD: %s\n"
@@ -842,26 +641,18 @@ msgid "Failed to open configuration file: %s"
msgstr "No se pudo abrir el archivo de configuración: %s"
#: ../src/daemon/daemon-conf.c:540
-msgid ""
-"The specified default channel map has a different number of channels than "
-"the specified default number of channels."
-msgstr ""
-"El mapa de canal predeterminado especificado tiene un número de canales "
-"distinto al especificado como predeterminado."
+msgid "The specified default channel map has a different number of channels than the specified default number of channels."
+msgstr "El mapa de canal predeterminado especificado tiene un número de canales distinto al especificado como predeterminado."
#: ../src/daemon/daemon-conf.c:616
#, c-format
msgid "### Read from configuration file: %s ###\n"
msgstr "### Leyendo desde el archivo de confioguración: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Abandonando privilegios de root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Capacidades limitadas con éxito para CAP_SYS_NICE-"
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "Sistema de Sonido PulseAudio"
@@ -870,31 +661,8 @@ msgstr "Sistema de Sonido PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Iniciar el Sistema de Sonido PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-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"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Planificación de tiempo real para el demonio de PulseAudio."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-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."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-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."
-
-#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
+#: ../src/pulse/channelmap.c:105
+#: ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1098,9 +866,12 @@ msgstr "Posterior izquierdo superior"
msgid "Top Rear Right"
msgstr "Posterior derecho superior"
-#: ../src/pulse/channelmap.c:478 ../src/pulse/sample.c:167
-#: ../src/pulse/volume.c:239 ../src/pulse/volume.c:265
-#: ../src/pulse/volume.c:285 ../src/pulse/volume.c:315
+#: ../src/pulse/channelmap.c:478
+#: ../src/pulse/sample.c:167
+#: ../src/pulse/volume.c:239
+#: ../src/pulse/volume.c:265
+#: ../src/pulse/volume.c:285
+#: ../src/pulse/volume.c:315
msgid "(invalid)"
msgstr "(inválido)"
@@ -1253,7 +1024,8 @@ msgstr "%0.1f KiB"
msgid "%u B"
msgstr "%u B"
-#: ../src/pulse/client-conf-x11.c:55 ../src/utils/pax11publish.c:100
+#: ../src/pulse/client-conf-x11.c:55
+#: ../src/utils/pax11publish.c:100
msgid "XOpenDisplay() failed"
msgstr "XOpenDisplay() falló"
@@ -1266,187 +1038,187 @@ msgstr "Fallo al analizar los datos de la cookie"
msgid "Failed to open configuration file '%s': %s"
msgstr "Fallo al abrir el archivo de configuración '%s': %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "No se ha cargado ninguna cookie. Intentando conectar de todos modos."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(:) %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Se ha recibido un mensaje para una extensión desconocida '%s'"
-#: ../src/utils/pacat.c:107
+#: ../src/utils/pacat.c:108
#, c-format
-msgid "Failed to drain stream: %s\n"
-msgstr "Error al drenar el flujo: %s\n"
+msgid "Failed to drain stream: %s"
+msgstr "Falló al drenar el flujo: %s"
+
+#: ../src/utils/pacat.c:113
+msgid "Playback stream drained."
+msgstr "El flujo de reproducción ha sido drenado."
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
-msgstr "El flujo de platback se ha drenado.\n"
+#: ../src/utils/pacat.c:123
+msgid "Draining connection to server."
+msgstr "Drenando conexión con el servidor."
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
-msgstr "Drenando conexión con el servidor.\n"
+#: ../src/utils/pacat.c:136
+#, c-format
+msgid "pa_stream_drain(): %s"
+msgstr "pa_stream_drain(): %s"
-#: ../src/utils/pacat.c:135
+#: ../src/utils/pacat.c:159
#, c-format
-msgid "pa_stream_drain(): %s\n"
-msgstr "pa_stream_drain(): %s\n"
+msgid "pa_stream_write() failed: %s"
+msgstr "pa_stream_write() falló: %s"
-#: ../src/utils/pacat.c:158
+#: ../src/utils/pacat.c:197
#, c-format
-msgid "pa_stream_write() failed: %s\n"
-msgstr "pa_stream_write() falló: %s\n"
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() falló: %s"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
+#: ../src/utils/pacat.c:237
+#: ../src/utils/pacat.c:267
#, c-format
-msgid "pa_stream_peek() failed: %s\n"
-msgstr "pa_stream_peek() falló: %s\n"
+msgid "pa_stream_peek() failed: %s"
+msgstr "pa_stream_peek() falló: %s"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
-msgstr "Se ha creado exitosamente el flujo (stream).\n"
+#: ../src/utils/pacat.c:307
+msgid "Stream successfully created."
+msgstr "Se ha creado exitosamente el flujo (stream)."
-#: ../src/utils/pacat.c:305
+#: ../src/utils/pacat.c:310
#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
-msgstr "pa_stream_get_buffer_attr() falló: %s\n"
+msgid "pa_stream_get_buffer_attr() failed: %s"
+msgstr "pa_stream_get_buffer_attr() falló: %s"
-#: ../src/utils/pacat.c:309
+#: ../src/utils/pacat.c:314
#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-msgstr "Métrica del búfer: maxlenght=%u, tlenghth=%u, prebuf=%u, minreq=%u\n"
+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:312
+#: ../src/utils/pacat.c:317
#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
-msgstr "Métrica del búfer: maxlenght=%u, fragsize=%u\n"
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
+msgstr "Métrica del búfer: maxlenght=%u, fragsize=%u"
-#: ../src/utils/pacat.c:316
+#: ../src/utils/pacat.c:321
#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
-msgstr "Utilizando especificaciones de muestra '%s', mapa del canal '%s'.\n"
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr "Utilizando especificaciones de muestra '%s', mapa del canal '%s'."
-#: ../src/utils/pacat.c:320
+#: ../src/utils/pacat.c:325
#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
-msgstr "Conectado al dispositivo %s (%u, %ssuspended).\n"
+msgid "Connected to device %s (%u, %ssuspended)."
+msgstr "Conectado al dispositivo %s (%u, %ssuspended)."
-#: ../src/utils/pacat.c:330
+#: ../src/utils/pacat.c:335
#, c-format
-msgid "Stream error: %s\n"
-msgstr "Error de flujo: %s\n"
+msgid "Stream error: %s"
+msgstr "Error de flujo: %s"
-#: ../src/utils/pacat.c:340
+#: ../src/utils/pacat.c:345
#, c-format
-msgid "Stream device suspended.%s \n"
-msgstr "Dispositivo de flujo suspendido. %s \n"
+msgid "Stream device suspended.%s"
+msgstr "Dispositivo de flujo suspendido.%s"
-#: ../src/utils/pacat.c:342
+#: ../src/utils/pacat.c:347
#, c-format
-msgid "Stream device resumed.%s \n"
-msgstr "Dispositivo de flujo reestablecido. %s \n"
+msgid "Stream device resumed.%s"
+msgstr "Dispositivo de flujo reestablecido.%s"
-#: ../src/utils/pacat.c:350
+#: ../src/utils/pacat.c:355
#, c-format
-msgid "Stream underrun.%s \n"
-msgstr "Flujo agotado. %s \n"
+msgid "Stream underrun.%s"
+msgstr "Flujo agotado.%s"
-#: ../src/utils/pacat.c:357
+#: ../src/utils/pacat.c:362
#, c-format
-msgid "Stream overrun.%s \n"
-msgstr "Flujo saturado.%s \n"
+msgid "Stream overrun.%s"
+msgstr "Flujo saturado.%s"
-#: ../src/utils/pacat.c:364
+#: ../src/utils/pacat.c:369
#, c-format
-msgid "Stream started.%s \n"
-msgstr "Flujo iniciado. %s \n"
+msgid "Stream started.%s"
+msgstr "Flujo iniciado.%s"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
-msgstr "Fujo trasladado al dispositivo %s (%u, %ssuspended). %s\n"
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr "Fujo trasladado al dispositivo %s (%u, %ssuspended).%s"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "no"
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Stream buffer attributes changed.%s \n"
-msgstr "Los atributos del buffer de flujo cambiaron. %s \n"
+msgid "Stream buffer attributes changed.%s"
+msgstr "Los atributos del búfer de flujo han cambiado.%s"
-#: ../src/utils/pacat.c:411
+#: ../src/utils/pacat.c:416
#, c-format
-msgid "Connection established.%s \n"
-msgstr "Conexión establecida. %s \n"
+msgid "Connection established.%s"
+msgstr "Conexión establecida.%s"
-#: ../src/utils/pacat.c:414
+#: ../src/utils/pacat.c:419
#, c-format
-msgid "pa_stream_new() failed: %s\n"
-msgstr "pa_stream_new() falló; %s\n"
+msgid "pa_stream_new() failed: %s"
+msgstr "pa_stream_new() falló: %s"
-#: ../src/utils/pacat.c:442
+#: ../src/utils/pacat.c:447
#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
-msgstr "pa_stream_connect_playback() falló: %s\n"
+msgid "pa_stream_connect_playback() failed: %s"
+msgstr "pa_stream_connect_playback() falló: %s"
-#: ../src/utils/pacat.c:448
+#: ../src/utils/pacat.c:453
#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
-msgstr "pa_stream_connect_record() falló: %s\n"
+msgid "pa_stream_connect_record() failed: %s"
+msgstr "pa_stream_connect_record() falló: %s"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
+#: ../src/utils/pacat.c:467
#, c-format
-msgid "Connection failure: %s\n"
-msgstr "Error en la conexión: %s\n"
-
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Hay EOF.\n"
+msgid "Connection failure: %s"
+msgstr "Error en la conexión: %s"
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() falló: %s\n"
+msgid "Got EOF."
+msgstr "Se tiene EOF."
-#: ../src/utils/pacat.c:532
+#: ../src/utils/pacat.c:537
#, c-format
-msgid "write() failed: %s\n"
-msgstr "write() falló: %s\n"
+msgid "write() failed: %s"
+msgstr "write() falló: %s"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
-msgstr "Hay señal, saliendo (exiting).\n"
+#: ../src/utils/pacat.c:558
+msgid "Got signal, exiting."
+msgstr "Hay señal, saliendo (exiting)."
-#: ../src/utils/pacat.c:567
+#: ../src/utils/pacat.c:572
#, c-format
-msgid "Failed to get latency: %s\n"
-msgstr "No se pudo obtener latencia: %s\n"
+msgid "Failed to get latency: %s"
+msgstr "No se pudo obtener latencia: %s"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Tiempo: %0.3f sec; Latencia: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
+#: ../src/utils/pacat.c:595
#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
-msgstr "pa_stream_update_timing_info() falló: %s\n"
+msgid "pa_stream_update_timing_info() failed: %s"
+msgstr "pa_stream_update_timing_info() falló: %s"
#: ../src/utils/pacat.c:605
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -1458,48 +1230,29 @@ 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 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 "
-"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 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 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"
+" --fix-channels Take the number of channels and the channel map\n"
+" from the sink 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"
-" --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"
+" --property=PROPERTY=VALUE Set the specified property to the specified value.\n"
" --raw Record/play raw PCM data.\n"
" --file-format=FFORMAT Record/play formatted PCM data.\n"
" --list-file-formats List available file formats.\n"
@@ -1512,47 +1265,33 @@ msgstr ""
" -r, --record Crea una conexión para grabar\n"
" -p, --playback Create a connection for playback\n"
"\n"
-" -v, --verbose Habilita operaciones con vocabulario "
-"más detallado\n"
+" -v, --verbose Habilita operaciones con vocabulario más detallado\n"
"\n"
-" -s, --server=SERVER El nombre del servidor con el que "
-"conectarse\n"
-" -d, --device=DEVICE El nombre del destino/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 "
-"servidor\n"
-" --volume=VOLUME Especificar 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"
+" -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 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 Mapa de canales a ser usado en lugar "
-"del establecido por defecto\n"
-" --fix-format Obtener el formato de sample desde "
-"el destino al que el flujo\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 Obtener la tasa de sampling desde el "
-"destino al que el flujo\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 destino al que el flojo se "
-"ha conectado.\n"
-" --no-remix No upmix o downmix canales.\n"
-" --no-remap Mapear canales por Ãndices en lugar "
-"de por nombres.\n"
-" --latency=BYTES Solicitar la latencia especificada "
-"en bytes.\n"
-" --process-time=BYTES Solicitar los procesos de tiempo por "
-"pedido especificados en bytes.\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:727
#, c-format
@@ -1565,96 +1304,91 @@ msgstr ""
"Compilado con libpulse %s\n"
"Linkeado con libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
-#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "Mapa de canales inválido '%s'\n"
+#: ../src/utils/pacat.c:760
+#, c-format
+msgid "Invalid client name '%s'"
+msgstr "Nombre de cliente '%s' inválido"
#: ../src/utils/pacat.c:776
-#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "Método de remuestreo inválido '%s'"
+#, c-format
+msgid "Invalid stream name '%s'"
+msgstr "Nombre de flujo '%s' inválido"
#: ../src/utils/pacat.c:813
#, c-format
-msgid "Invalid channel map '%s'\n"
-msgstr "Mapa de canales inválido '%s'\n"
+msgid "Invalid channel map '%s'"
+msgstr "Mapa de canales '%s' inválido"
#: ../src/utils/pacat.c:842
#, c-format
-msgid "Invalid latency specification '%s'\n"
-msgstr "Especificación de latencia inválida '%s'\n"
+msgid "Invalid latency specification '%s'"
+msgstr "Especificación de latencia '%s' inválida"
#: ../src/utils/pacat.c:849
#, c-format
-msgid "Invalid process time specification '%s'\n"
-msgstr "Especificación de tiempo de proceso inválida '%s'\n"
+msgid "Invalid process time specification '%s'"
+msgstr "Especificación de tiempo de proceso '%s' inválida"
#: ../src/utils/pacat.c:861
-#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
-msgstr "Método de remuestreo inválido '%s'"
+#, c-format
+msgid "Invalid property '%s'"
+msgstr "Propiedad '%s' inválida"
#: ../src/utils/pacat.c:878
-#, fuzzy, c-format
+#, c-format
msgid "Unknown file format %s."
msgstr "Formato de archivo desconocido %s."
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
-msgstr "Especificación de muestra inválida\n"
+msgid "Invalid sample specification"
+msgstr "Especificación de muestra inválida"
#: ../src/utils/pacat.c:907
#, c-format
-msgid "open(): %s\n"
-msgstr "open() %s\n"
+msgid "open(): %s"
+msgstr "open() %s"
#: ../src/utils/pacat.c:912
#, c-format
-msgid "dup2(): %s\n"
-msgstr "dup2(): %s\n"
+msgid "dup2(): %s"
+msgstr "dup2(): %s"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
-msgstr "Demasiados argumentos.\n"
+msgid "Too many arguments."
+msgstr "Demasiados argumentos."
#: ../src/utils/pacat.c:930
-#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
-msgstr "Error al intentar obtener información de muestra: %s\n"
+msgid "Failed to generate sample specification for file."
+msgstr "Falló al generar especificación de ejemplo para el archivo."
#: ../src/utils/pacat.c:950
-msgid "Failed to open audio file.\n"
-msgstr "Error al intentar abrir el archivo de sonido.\n"
+msgid "Failed to open audio file."
+msgstr "Falló al abrir el archivo de sonido."
#: ../src/utils/pacat.c:956
-msgid ""
-"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+msgid "Warning: specified sample specification will be overwritten with specification from file."
+msgstr "Aviso: el ejemplo de especificación indicado será sobreescrito con las especificaciones del archivo."
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
-#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
-msgstr "Error al intentar obtener información de muestra: %s\n"
+#: ../src/utils/pacat.c:959
+msgid "Failed to determine sample specification from file."
+msgstr "Falló al determinar especificación de ejemplo del archivo."
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+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:979
-msgid "Channel map doesn't match sample specification\n"
-msgstr "El mapa del canal no se corresponde con la especificación de muestra\n"
+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:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+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:1005
-#, fuzzy, c-format
-msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
-msgstr "Abriendo un %s flujo con las especificaciones de muestra '%s'.\n"
+#, c-format
+msgid "Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr "Abriendo un flujo %s con especificación de muestra '%s' y mapeo de canal '%s'."
#: ../src/utils/pacat.c:1006
msgid "recording"
@@ -1664,36 +1398,31 @@ msgstr "grabando"
msgid "playback"
msgstr "playback"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr "pa_mainloop_new() falló.\n"
+#: ../src/utils/pacat.c:1032
+msgid "pa_mainloop_new() failed."
+msgstr "pa_mainloop_new() falló."
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
-msgstr "io_new() falló.\n"
+msgid "io_new() failed."
+msgstr "io_new() falló."
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
-msgstr "pa_context_new() falló.\n"
+#: ../src/utils/pacat.c:1058
+msgid "pa_context_new() failed."
+msgstr "pa_context_new() falló."
#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() falló: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() falló.\n"
+#: ../src/utils/pacat.c:1072
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_rttime_new() falló."
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr "pa_mainloop_run() falló.\n"
+#: ../src/utils/pacat.c:1079
+msgid "pa_mainloop_run() failed."
+msgstr "pa_mainloop_run() falló."
#: ../src/utils/pasuspender.c:81
#, c-format
@@ -1720,7 +1449,14 @@ msgstr "Error al continuar: %s\n"
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:176 ../src/utils/pactl.c:820
+#: ../src/utils/pasuspender.c:159
+#: ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Error en la conexión: %s\n"
+
+#: ../src/utils/pasuspender.c:176
+#: ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
msgstr "Hay SIGINT, saliendo.\n"
@@ -1737,16 +1473,14 @@ msgid ""
"\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 ""
"%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"
+" -s, --server=SERVER El nombre del servidor con el que conectarse\n"
"\n"
#: ../src/utils/pasuspender.c:248
@@ -1760,6 +1494,24 @@ msgstr ""
"Compilado con libpulse %s\n"
"Linkeado con libpulse %s\n"
+#: ../src/utils/pasuspender.c:277
+#: ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() falló.\n"
+
+#: ../src/utils/pasuspender.c:290
+#: ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() falló.\n"
+
+#: ../src/utils/pasuspender.c:298
+#: ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() falló.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1773,9 +1525,7 @@ msgstr "Actualmente en uso: %u bloques conteniendo %s bytes en total.\n"
#: ../src/utils/pactl.c:137
#, 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"
+msgstr "Ubicados durante a lo largo del tiempo: %u bloques conteniendo %s bytes en total.\n"
#: ../src/utils/pactl.c:140
#, c-format
@@ -1854,15 +1604,17 @@ msgstr ""
"\tPropiedades:\n"
"\t\t%s\n"
-#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:353
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:261
+#: ../src/utils/pactl.c:353
+#, c-format
msgid "\tPorts:\n"
-msgstr "\tPerfiles:\n"
+msgstr "\tPuertos:\n"
-#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:267
+#: ../src/utils/pactl.c:359
+#, c-format
msgid "\tActive Port: %s\n"
-msgstr "\tPerfil Activo: %s\n"
+msgstr "\tPuerto Activo: %s\n"
#: ../src/utils/pactl.c:290
#, c-format
@@ -1908,10 +1660,18 @@ msgstr ""
"\tPropiedades:\n"
"\t\t%s\n"
-#: ../src/utils/pactl.c:338 ../src/utils/pactl.c:394 ../src/utils/pactl.c:429
-#: ../src/utils/pactl.c:466 ../src/utils/pactl.c:525 ../src/utils/pactl.c:526
-#: ../src/utils/pactl.c:536 ../src/utils/pactl.c:580 ../src/utils/pactl.c:581
-#: ../src/utils/pactl.c:587 ../src/utils/pactl.c:630 ../src/utils/pactl.c:631
+#: ../src/utils/pactl.c:338
+#: ../src/utils/pactl.c:394
+#: ../src/utils/pactl.c:429
+#: ../src/utils/pactl.c:466
+#: ../src/utils/pactl.c:525
+#: ../src/utils/pactl.c:526
+#: ../src/utils/pactl.c:536
+#: ../src/utils/pactl.c:580
+#: ../src/utils/pactl.c:581
+#: ../src/utils/pactl.c:587
+#: ../src/utils/pactl.c:630
+#: ../src/utils/pactl.c:631
#: ../src/utils/pactl.c:638
msgid "n/a"
msgstr "n/a"
@@ -2035,8 +1795,7 @@ msgstr ""
#: ../src/utils/pactl.c:547
#, c-format
msgid "Failed to get source output information: %s\n"
-msgstr ""
-"Error al intentar obtener información acerca de la salida de la fuenta: %s\n"
+msgstr "Error al intentar obtener información acerca de la salida de la fuenta: %s\n"
#: ../src/utils/pactl.c:567
#, c-format
@@ -2103,7 +1862,8 @@ msgstr ""
"\tPropiedades:\n"
"\t\t%s\n"
-#: ../src/utils/pactl.c:646 ../src/utils/pactl.c:656
+#: ../src/utils/pactl.c:646
+#: ../src/utils/pactl.c:656
#, c-format
msgid "Failure: %s\n"
msgstr "Falla: %s\n"
@@ -2118,7 +1878,7 @@ msgid "Premature end of file\n"
msgstr "Fin prematuro del archivo\n"
#: ../src/utils/pactl.c:826
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options] stat\n"
"%s [options] list\n"
@@ -2139,10 +1899,8 @@ msgid ""
" -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 ""
"%s [opciones] stat\n"
"%s [opciones] list\n"
@@ -2157,14 +1915,14 @@ msgstr ""
"%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"
"\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"
+" -s, --server=SERVER El nombre del servidor al que conectarse\n"
+" -n, --client-name=NAME El nombre de este cliente en el servidor\n"
#: ../src/utils/pactl.c:880
#, c-format
@@ -2177,6 +1935,11 @@ msgstr ""
"Compilado con libpulse %s\n"
"Linked con libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Nombre de cliente inválido '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Por favor, especifique un archivo de muestra a cargar\n"
@@ -2185,10 +1948,13 @@ msgstr "Por favor, especifique un archivo de muestra a cargar\n"
msgid "Failed to open sound file.\n"
msgstr "Error al intentar abrir el archivo de sonido.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Error al intentar determinar especificación de ejemplo del archivo.\n"
+
#: ../src/utils/pactl.c:951
-#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
-msgstr "Abriendo un %s flujo con las especificaciones de muestra '%s'.\n"
+msgstr "Aviso: Fallo al intentar determinar especificación de ejemplo desde el archivo.\n"
#: ../src/utils/pactl.c:961
msgid "You have to specify a sample name to play\n"
@@ -2200,13 +1966,11 @@ msgstr "Debe especificar un nombre de muestra para ser eliminado\n"
#: ../src/utils/pactl.c:982
msgid "You have to specify a sink input index and a sink\n"
-msgstr ""
-"Debe especificar un Ãndice para las entradas del destino y un destino\n"
+msgstr "Debe especificar un Ãndice para las entradas del destino y un destino\n"
#: ../src/utils/pactl.c:992
msgid "You have to specify a source output index and a source\n"
-msgstr ""
-"Debe especificar un Ãndice para las salidas de la fuente, y una fuente\n"
+msgstr "Debe especificar un Ãndice para las salidas de la fuente, y una fuente\n"
#: ../src/utils/pactl.c:1007
msgid "You have to specify a module name and arguments.\n"
@@ -2217,44 +1981,29 @@ msgid "You have to specify a module index\n"
msgstr "Debe especificar un Ãndice de módulo\n"
#: ../src/utils/pactl.c:1037
-msgid ""
-"You may not specify more than one sink. You have to specify a boolean "
-"value.\n"
-msgstr ""
-"No puede especificar más de un sumidero. Tiene que especificar un valor "
-"booleano.\n"
+msgid "You may not specify more than one sink. You have to specify a boolean value.\n"
+msgstr "No puede especificar más de un sumidero. Tiene que especificar un valor booleano.\n"
#: ../src/utils/pactl.c:1050
-msgid ""
-"You may not specify more than one source. You have to specify a boolean "
-"value.\n"
-msgstr ""
-"No puede especificar más de una fuente. Tiene que especificar un valor "
-"booleano.\n"
+msgid "You may not specify more than one source. You have to specify a boolean value.\n"
+msgstr "No puede especificar más de una fuente. Tiene que especificar un valor booleano.\n"
#: ../src/utils/pactl.c:1062
msgid "You have to specify a card name/index and a profile name\n"
msgstr "Debe especificar un nombre de placa/Ãndice y un nombre de perfil\n"
#: ../src/utils/pactl.c:1073
-#, fuzzy
msgid "You have to specify a sink name/index and a port name\n"
-msgstr "Debe especificar un nombre de placa/Ãndice y un nombre de perfil\n"
+msgstr "Debe especificar un nombre de sumidero/Ãndice y un nombre de puerto\n"
#: ../src/utils/pactl.c:1084
-#, fuzzy
msgid "You have to specify a source name/index and a port name\n"
-msgstr "Debe especificar un nombre de placa/Ãndice y un nombre de perfil\n"
+msgstr "Debe especificar un nombre de fuente/Ãndice y un nombre de puerto\n"
#: ../src/utils/pactl.c:1099
msgid "No valid command specified.\n"
msgstr "No se ha especificadfo ningún comando válido.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() falló: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2262,17 +2011,14 @@ 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 ""
"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
"\n"
-" -d Muestra los datos actuales de PulseAudio asociados en un display X11 "
-"(por defecto)\n"
+" -d Muestra los datos actuales de PulseAudio asociados en un display X11 (por defecto)\n"
" -e Exporta los datos locales de PulseAudio a un display X11\n"
-" -i Importa los datos de PulseAudio de un display X11 hacia las variables "
-"del entorno local y el archivo de cookies.\n"
+" -i Importa los datos de PulseAudio de un display X11 hacia las variables 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
@@ -2336,11 +2082,8 @@ msgid "Not yet implemented.\n"
msgstr "Aún no se ha implementado.\n"
#: ../src/utils/pacmd.c:61
-#, fuzzy
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."
+msgstr "El demonio PulseAudio no está ejecutándose, o no se está ejecutando como un demonio de sesión."
#: ../src/utils/pacmd.c:66
#, c-format
@@ -2365,64 +2108,57 @@ msgstr "El demonio no responde."
msgid "select(): %s"
msgstr "select(): %s"
-#: ../src/utils/pacmd.c:156 ../src/utils/pacmd.c:173
+#: ../src/utils/pacmd.c:156
+#: ../src/utils/pacmd.c:173
#, c-format
msgid "read(): %s"
msgstr "read(): %s"
-#: ../src/utils/pacmd.c:189 ../src/utils/pacmd.c:203
+#: ../src/utils/pacmd.c:189
+#: ../src/utils/pacmd.c:203
#, c-format
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136
+#: ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "No se puede acceder al candado de autogeneración."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449
+#: ../src/modules/alsa/alsa-sink.c:606
#, 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 ""
-"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."
+"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:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429
+#: ../src/modules/alsa/alsa-source.c:578
#, 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."
+"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."
+"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:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Apagado"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Reproducción de Alta Fidelidad (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "TelefonÃa Duplex (HSP/HFP)"
@@ -2430,57 +2166,141 @@ msgstr "TelefonÃa Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Servidor de Sonido PulseAudio"
+#~ 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 "Analog Mono"
#~ msgstr "Mono Analógico"
-
#~ msgid "Analog Stereo"
#~ msgstr "Estéreo Analógico"
-
#~ msgid "Digital Stereo (IEC958)"
#~ msgstr "Estéreo Digital (IEC958)"
-
#~ msgid "Digital Stereo (HDMI)"
#~ msgstr "Estéreo Digital (HDMI)"
-
#~ msgid "Analog Surround 4.0"
#~ msgstr "Análogo Envolvente 4.0"
-
#~ msgid "Digital Surround 4.0 (IEC958/AC3)"
#~ msgstr "Digital Envolvente 4.0 (IEC9588/AC3)"
-
#~ msgid "Analog Surround 4.1"
#~ msgstr "Análogo Envolvente 4.1"
-
#~ msgid "Analog Surround 5.0"
#~ msgstr "Análogo Envolvente 5.0"
-
#~ msgid "Analog Surround 5.1"
#~ msgstr "Análogo Envolvente 5.1"
-
#~ msgid "Digital Surround 5.1 (IEC958/AC3)"
#~ msgstr "Digital Envolvente 5.1 (IEC958/AC3)"
-
#~ msgid "Analog Surround 7.1"
#~ msgstr "Análogo Envolvénte 7.1"
-
#~ msgid "Output %s + Input %s"
#~ msgstr "Salida %s + Entrada %s"
-
#~ msgid "Output %s"
#~ msgstr "Salida %s"
-
#~ msgid "Input %s"
#~ msgstr "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"
@@ -2521,7 +2341,6 @@ msgstr "Servidor de Sonido PulseAudio"
#~ "(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"
@@ -2530,16 +2349,12 @@ msgstr "Servidor de Sonido PulseAudio"
#~ "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"
@@ -2558,7 +2373,6 @@ msgstr "Servidor de Sonido PulseAudio"
#, 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 "
@@ -2567,27 +2381,21 @@ msgstr "Servidor de Sonido PulseAudio"
#~ "' 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"
@@ -2600,9 +2408,7 @@ msgstr "Servidor de Sonido PulseAudio"
#~ "Tipo: %s\n"
#~ "Módulo: %s\n"
#~ "Argumento: %s\n"
-
#~ msgid "sink"
#~ msgstr "destino"
-
#~ msgid "source"
#~ msgstr "fuente"
diff --git a/po/fi.po b/po/fi.po
index c005658d..0502ea65 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: git trunk\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-05 16:24+0300\n"
"Last-Translator: Ville-Pekka Vainio \n"
"Language-Team: Finnish \n"
@@ -16,7 +16,12 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -28,7 +33,7 @@ msgstr ""
"Tämä on todennäköisesti ohjelmavirhe ALSA-ajurissa â%sâ. Ilmoita tästä "
"ongelmasta ALSA-kehittäjille."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -41,7 +46,7 @@ msgstr ""
"Tämä on todennäköisesti ohjelmavirhe ALSA-ajurissa â%sâ. Ilmoita tästä "
"ongelmasta ALSA-kehittäjille."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -67,7 +72,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Sisäinen äänentoisto"
@@ -87,220 +92,92 @@ msgstr "Uuden dl-lataaminen varaaminen epäonnistui."
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loaderin lisääminen epäonnistui."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Järjestelmäväylään ei voida yhdistää: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Kutsujaa ei saada PID:stä: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "UID:tä ei voida asettaa kutsujaobjektille."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK-istunnon saaminen epäonnistui."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "UID:tä ei voida asettaa istunto-objektille."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Ei voida varata PolKitActionia."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Ei voida asettaa action_id:tä"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Ei voida varata PolKitContextia."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Ei voida alustaa PolKitContextia: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Ei voida päätellä onko kutsujalla käyttöoikeus: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Tunnistautumista ei saada: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit vastasi â%sâ"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Saatiin signaali %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Poistutaan."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Käyttäjää â%sâ ei löydetty."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Ryhmää â%sâ ei löydetty."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Löydettiin käyttäjä â%sâ (UID %lu) ja ryhmä â%sâ (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "Käyttäjän â%sâ ja ryhmän â%sâ GID:t eivät vastaa toisiaan."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Käyttäjän â%sâ kotihakemisto ei ole â%sâ, ohitetaan."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Hakemiston â%sâ luominen epäonnistui: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Ryhmäluettelon vaihtaminen epäonnistui: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID:n vaihtaminen epäonnistui: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID:n vaihtaminen epäonnistui: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Root-oikeuksista luopuminen onnistui."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Järjestelmänlaajuista tilaa ei tueta tällä alustalla."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) epäonnistui: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Komentorivin jäsentäminen epäonnistui."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "Ollaan ryhmässä â%sâ, korkean prioriteetin ajoitus on sallittua."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "Ollaan ryhmässä â%sâ, tosiaikainen vuorottaminen on sallittua."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit myöntää acquire-high-priority-oikeuden."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit ei myönnä acquire-high-priority-oikeutta."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit myöntää acquire-real-time-oikeuden."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit ei myönnä acquire-real-time-oikeutta."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"Ohjelmaa kutsuttiin SUID-rootina ja reaaliaikaista ja/tai korkean "
-"prioriteetin ajoitusta pyydettiin asetuksissa. Tarvittavat oikeudet "
-"kuitenkin puuttuvat:\n"
-"Ei olla ryhmässä â%sâ, PolicyKit ei myönnä pyydettyjä oikeuksia ja "
-"RLIMIT_NICE/RLIMIT_RTPRIO-resurssirajoja ei ole kasvatettu.\n"
-"Hanki riittävät PolicyKit-oikeudet, liity ryhmään â%sâ tai kasvata tämän "
-"käyttäjän RLIMIT_NICE/RLIMIT_RTPRIO-resurssirajoja reaaliaikaisen ja/tai "
-"korkean prioriteetin ajoituksen ottamiseksi käyttöön."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Korkean prioriteetin ajoitus otettu käyttöön asetuksissa, mutta käytännöt "
-"eivät salli sitä."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO:n kasvatus onnistui"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO epäonnistui: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Luovutaan CAP_NICE:stä"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Tosiaikainen ajoitus otettu käyttöön asetuksissa, mutta käytännöt eivät "
-"salli sitä."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Taustaprosessi ei ole käynnissä"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Taustaprosessi käynnissä prosessitunnisteella %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Taustaprosessin lopettaminen epäonnistui: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -308,156 +185,156 @@ msgstr ""
"Tätä ohjelmaa ei ole tarkoitettu suoritettavaksi pääkäyttäjänä (ellei --"
"system ole määritelty)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Pääkäyttäjän (root) oikeudet vaaditaan."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start-valitsinta ei tueta järjestelmätilassa."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
"Suoritetaan järjestelmätilassa, mutta --disallow-exit ei ole asetettuna!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"Suoritetaan järjestelmätilassa, mutta -disallow-module-loading ei ole "
"asetettuna!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
"Suoritetaan järjestelmätilassa, otetaan SHM-tila pakotetusti pois käytöstä."
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"Suoritetaan järjestelmätilassa, otetaan poistumisen joutenoloaika "
"pakotetusti pois käytöstä."
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio:n saaminen epäonnistui."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "putki epäonnistui: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() epäonnistui: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() epäonnistui: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Taustaprosessin käynnistys epäonnistui."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Taustaprosessin käynnistys onnistui."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Tämä on PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Käännöksen isäntäkone: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Käännösaikaiset C-liput (CFLAGS): %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Käynnissä isäntäkoneella: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Löydettiin %u CPU:ta."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "Sivun koko on %lu tavua"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Käännetty Valgrind-tuella: kyllä"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Käännetty Valgrind-tuella: ei"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Käynnissä valgrind-tilassa: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimoitu rakentaminen: kyllä"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimoitu rakentaminen: ei"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG on määritelty, kaikki assertit ovat poissa käytöstä."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH on määritelty, vain fast path -assertit ovat poissa käytöstä."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Kaikki assertit ovat käytössä."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Konetunnisteen nouto epäonnistui"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "Konetunniste on %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "Konetunniste on %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Käytetään ajonaikaista hakemistoa %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Käytetään tilahakemistoa %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Suoritetaan järjestelmätilassa: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -467,15 +344,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() epäonnistui."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Korkean tarkkuuden ajastimet käytettävissä."
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -483,29 +360,29 @@ msgstr ""
"Hei, ytimesi on kehno! Linux korkean tarkkuuden ajastimien tuella on hyvin "
"suositeltava!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() epäonnistui."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Taustaprosessin alustus epäonnistui."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
"Taustaprosessin käynnistys ilman ladattavia moduuleita, kieltäydytään "
"toiminnasta."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Taustaprosessin käynnistys valmis."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Taustaprosessin sulkeminen käynnistetty."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Taustaprosessi lopetettu."
@@ -854,14 +731,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Luettu asetustiedostosta: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Luovutaan pääkäyttäjän oikeuksista."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Oikeuksien rajoittaminen CAP_SYS_NICEen onnistui."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio-äänijärjestelmä"
@@ -870,29 +743,6 @@ msgstr "PulseAudio-äänijärjestelmä"
msgid "Start the PulseAudio Sound System"
msgstr "Käynnistä PulseAudio-äänijärjestelmä"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Korkean prioriteetin ajoitus (negatiivinen Unix-nice-taso) PulseAudio-"
-"taustajärjestelmälle"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Reaaliaikainen ajoitus PulseAudio-taustajärjestelmälle"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"Järjestelmäkäytäntö estää PulseAudiota saamasta korkean prioriteetin "
-"ajoitusta."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"Järjestelmäkäytäntö estää PulseAudiota saamasta reaaliaikaista ajoitusta."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1265,183 +1115,187 @@ msgstr "Evästetietojen jäsennys epäonnistui"
msgid "Failed to open configuration file '%s': %s"
msgstr "Asetustiedoston avaaminen epäonnistui: â%sâ: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Ei ladattua evästettä. Yritetään yhdistämistä ilman."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Saatiin viesti tuntemattomalle laajennokselle â%sâ"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Virran tyhjentäminen epäonnistui: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Toistovirta on tyhjennetty.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Tyhjennetään yhteyttä palvelimelle.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() epäonnistui: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Virran luonti onnistui.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Puskuritiedot: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Puskuritiedot: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "Käytetään näytemäärittelyä â%sâ, kanavakarttaa â%sâ.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "Yhdistetty laitteeseen %s (%u, %ssuspended).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Virtavirhe: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "Virtalaite keskeytetty.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "Virtalaite palautettu.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Virran alivuoto.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Virran ylivuoto.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Virta käynnistetty.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Virta siirretty laitteelle %s (%u, %ssuspended).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "ei "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "Virran puskuriattribuutteja muutettu.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Yhteys muodostettu.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Yhteysvirhe: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Saatiin EOF.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() epäonnistui: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "Saatiin EOF.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() epäonnistui: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Saatiin signaali, lopetetaan.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Latenssin selvittäminen epäonnistui: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Aika: %0.3f s; latenssi: %0.0f μs. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() epäonnistui: %s\n"
#: ../src/utils/pacat.c:605
@@ -1561,34 +1415,34 @@ msgstr ""
"Käännetty libpulsen versiolle %s\n"
"Linkitetty libpulsen versiolle %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "Virheellinen kanavakartta â%sâ\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "Virheellinen uudelleennäytteistyksen tapa â%sâ."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Virheellinen kanavakartta â%sâ\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Virheellinen latenssimääritys â%sâ\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Virheellinen prosessiajan määritys â%sâ\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Virheellinen uudelleennäytteistyksen tapa â%sâ."
#: ../src/utils/pacat.c:878
@@ -1597,60 +1451,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Virheellinen näytemääritys\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "Liian monta argumenttia.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Näytetietojen nouto epäonnistui: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Ãänitiedoston avaaminen epäonnistui.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "Avataan %svirta näytemäärityksellä â%sâ.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "Näytetietojen nouto epäonnistui: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Avataan %svirta näytemäärityksellä â%sâ.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "Kanavakartta ei vastaa näytemääritystä\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Avataan %svirta näytemäärityksellä â%sâ.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "Avataan %svirta näytemäärityksellä â%sâ.\n"
#: ../src/utils/pacat.c:1006
@@ -1661,35 +1521,34 @@ msgstr "nauhoitus"
msgid "playback"
msgstr "toisto"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() epäonnistui.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() epäonnistui.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() epäonnistui.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() epäonnistui: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() epäonnistui.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() epäonnistui.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() epäonnistui.\n"
#: ../src/utils/pasuspender.c:81
@@ -1717,6 +1576,11 @@ msgstr "Palautus epäonnistui: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "VAROITUS: Ãänipalvelin ei ole paikallinen, ei keskeytetä.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Yhteysvirhe: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1757,6 +1621,21 @@ msgstr ""
"Käännetty libpulsen versiolle %s\n"
"Linkitetty libpulsen versiolle %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() epäonnistui.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() epäonnistui.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() epäonnistui.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2171,6 +2050,11 @@ msgstr ""
"Käännetty libpulsen versiolle %s\n"
"Linkitetty libpulsen versiolle %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Virheellinen kanavakartta â%sâ\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Anna ladattava näytetiedosto\n"
@@ -2179,6 +2063,11 @@ msgstr "Anna ladattava näytetiedosto\n"
msgid "Failed to open sound file.\n"
msgstr "Ãänitiedoston avaaminen epäonnistui.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Näytetietojen nouto epäonnistui: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2238,11 +2127,6 @@ msgstr "Kortin nimi/indeksi ja profiilin nimi on annettava\n"
msgid "No valid command specified.\n"
msgstr "Mitään kelvollista komentoa ei annettu.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() epäonnistui: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2361,11 +2245,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Automaattisen käynnistyksen lukkoa ei voida käyttää."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2382,7 +2266,7 @@ msgstr ""
"asetettuna, snd_pcm_avail() palautti kuitenkin 0 tai jonkin muun arvon, "
"joka on < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2399,15 +2283,15 @@ msgstr ""
"snd_pcm_avail() palautti kuitenkin 0 tai jonkin muun arvon, on < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Poissa"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Korkean äänenlaadun toisto (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr ""
@@ -2415,6 +2299,136 @@ msgstr ""
msgid "PulseAudio Sound Server"
msgstr "PulseAudio-äänipalvelin"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Järjestelmäväylään ei voida yhdistää: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Kutsujaa ei saada PID:stä: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "UID:tä ei voida asettaa kutsujaobjektille."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK-istunnon saaminen epäonnistui."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "UID:tä ei voida asettaa istunto-objektille."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Ei voida varata PolKitActionia."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Ei voida asettaa action_id:tä"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Ei voida varata PolKitContextia."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Ei voida alustaa PolKitContextia: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Ei voida päätellä onko kutsujalla käyttöoikeus: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Tunnistautumista ei saada: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit vastasi â%sâ"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Korkean prioriteetin ajoitus (negatiivinen Unix-nice-taso) PulseAudio-"
+#~ "taustajärjestelmälle"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Reaaliaikainen ajoitus PulseAudio-taustajärjestelmälle"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Järjestelmäkäytäntö estää PulseAudiota saamasta korkean prioriteetin "
+#~ "ajoitusta."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Järjestelmäkäytäntö estää PulseAudiota saamasta reaaliaikaista ajoitusta."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() epäonnistui: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() epäonnistui: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "Ollaan ryhmässä â%sâ, korkean prioriteetin ajoitus on sallittua."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "Ollaan ryhmässä â%sâ, tosiaikainen vuorottaminen on sallittua."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit myöntää acquire-high-priority-oikeuden."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit ei myönnä acquire-high-priority-oikeutta."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit myöntää acquire-real-time-oikeuden."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit ei myönnä acquire-real-time-oikeutta."
+
+#~ 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 ""
+#~ "Ohjelmaa kutsuttiin SUID-rootina ja reaaliaikaista ja/tai korkean "
+#~ "prioriteetin ajoitusta pyydettiin asetuksissa. Tarvittavat oikeudet "
+#~ "kuitenkin puuttuvat:\n"
+#~ "Ei olla ryhmässä â%sâ, PolicyKit ei myönnä pyydettyjä oikeuksia ja "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO-resurssirajoja ei ole kasvatettu.\n"
+#~ "Hanki riittävät PolicyKit-oikeudet, liity ryhmään â%sâ tai kasvata tämän "
+#~ "käyttäjän RLIMIT_NICE/RLIMIT_RTPRIO-resurssirajoja reaaliaikaisen ja/tai "
+#~ "korkean prioriteetin ajoituksen ottamiseksi käyttöön."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "Korkean prioriteetin ajoitus otettu käyttöön asetuksissa, mutta käytännöt "
+#~ "eivät salli sitä."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO:n kasvatus onnistui"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO epäonnistui: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Luovutaan CAP_NICE:stä"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Tosiaikainen ajoitus otettu käyttöön asetuksissa, mutta käytännöt eivät "
+#~ "salli sitä."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Oikeuksien rajoittaminen CAP_SYS_NICEen onnistui."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() epäonnistui.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analoginen mono"
diff --git a/po/fr.po b/po/fr.po
index ca8e2b80..a6bcdb6e 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio trunk\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-26 17:22+0200\n"
"Last-Translator: Corentin Perard \n"
"Language-Team: French \n"
@@ -20,7 +20,12 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n>1;\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -33,7 +38,7 @@ msgstr ""
"Il s'agit très probablement d'un bogue dans le pilote ALSA « %s ». Veuillez "
"rapporter ce problème aux développeurs d'ALSA."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -46,7 +51,7 @@ msgstr ""
"Il s'agit très probablement d'un bogue dans le pilote ALSA « %s ». Veuillez "
"rapporter ce problème aux développeurs d'ALSA."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -72,7 +77,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Audio interne"
@@ -92,226 +97,93 @@ msgstr "Ãchec lors de l'allocation du nouveau chargeur dl."
msgid "Failed to add bind-now-loader."
msgstr "Ãchec lors de l'ajout du chargeur bind-now."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Impossible de se connecter au bus système : %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Impossible d'obtenir le programme appelant à partir du PID : %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Impossible de définir un UID sur l'objet appelant."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Ãchec lors de l'obtention de la session CK."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Impossible de définir l'UID sur l'objet de session."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Impossible d'allouer PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Impossible de définir action_id."
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Impossible d'allouer PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Impossible d'initialiser PolKitContext : %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Impossible de déterminer si le programme appelant est autorisé : %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Impossible d'obtenir l'authentification : %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit a renvoyé « %s »"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Signal %s obtenu."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Fermeture."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Impossible de trouver l'utilisateur « %s »."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Impossible de trouver le groupe « %s »."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Utilisateur « %s â (UID %lu) et groupe « %s » (GID %lu) trouvé."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr ""
"Le GID de l'utilisateur « %s » et du groupe « %s » ne sont pas identiques."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Le dossier personnel de l'utilisateur « %s » n'est pas « %s », ignoré."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Ãchec lors de la création de « %s » : %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Ãchec lors du changement de la liste du groupe : %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Ãchec lors du changement de GIDÂ : %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Ãchec lors du changement d'UIDÂ : %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Les privilèges root ont été correctement abandonnés."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Mode système étendu non pris en charge sur cette plateforme."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) a échoué : %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Ãchec lors de l'analyse de la ligne de commande"
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Nous sommes dans le groupe « %s », permettant une planification à haute "
-"priorité."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Nous sommes dans le groupe « %s », permettant un ordonnancement en temps réel."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit a accordé l'acquisition des permissions de haute priorité."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit a refusé l'acquisition des permissions de haute priorité."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit a accordé l'acquisition des permissions de temps réel."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit a refusé l'acquisition des permissions de temps réel."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"Le SUID root et l'ordonnancement en temps réel et/ou haute priorité ont été "
-"spécifiés dans la configuration. Cependant, il nous manque les privilèges "
-"nécessaires :\n"
-"Nous ne sommes pas dans le groupe « %s », PolicyKit refuse de nous accorder "
-"les privilèges demandés et nous devons augmenter les limites de ressources "
-"RLIMIT_NICE/RLIMIT_RTPRIO.\n"
-"Pour activer l'ordonnancement en temps réel/haute priorité, veuillez "
-"acquérir les privilèges PolicyKit apropriés, ou devenir membre de « %s », ou "
-"augmenter les limites de ressources RLIMIT_NICE/RLIMIT_RTPRIO pour cet "
-"utilisateur."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"La planification à haute priorité est activée dans la configuration mais "
-"n'est pas permise par la politique."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "Augmentation de RLIMIT_RTPRIO réussie"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO a échoué : %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Abandon de CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"La planification en temps réel est activée mais n'est pas permise par la "
-"politique."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Lé démon n'est pas lancé"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Le démon est lancé avec le PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Impossible de tuer le démon : %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -319,156 +191,156 @@ msgstr ""
"Le programme n'est pas conçu pour être lancé en tant que root (sauf si --"
"system est renseigné)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Les privilèges root sont nécessaires."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start n'est pas pris en charge pour les instances système."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
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."
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
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."
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
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."
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
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é."
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Ãchec lors de l'acquisition de stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "Ãchec du tube : %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "Ãchec de fork()Â : %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "Ãchec de read()Â : %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Ãchec lors du démarrage du démon."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Démarrage du démon réussi."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Pulseaudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Hôte de compilation : %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS de compilation : %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Exécution sur l'hôte : %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u processeurs trouvés."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "La taille de la page est de %lu octets"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Compilé avec la prise en charge Valgrind : oui"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Compilé avec la prise en charge Valgrind : non"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Exécution en mode valgrind : %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Construction optimisée : oui"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Construction optimisée : non"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG défini, tous les messages d'erreur sont désactivés."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
"FASTPATH défini, seuls les messages d'erreur fastpath ont été désactivés."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Tous les messages d'erreur sont activés."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Ãchec lors de l'obtention de l'ID de la machine"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "L'ID de la machine est %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "L'ID de la machine est %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Utilisation du répertoire d'exécution %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Utilisation du répertoire d'état %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Exécution en mode système : %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -478,16 +350,16 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "Ãchec de pa_pid_file_create()."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr ""
"De nouvelles horloges à haute résolution sont disponibles ! Bon appétit !"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -495,27 +367,27 @@ msgstr ""
"Eh mec, ton noyau il pue ! La recommandation d'aujourd'hui du patron est "
"d'activer les horloges à haute résolution sur ton Linux."
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "Ãchec de pa_core_new()."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Ãchec lors de l'initialisation du démon"
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Démarrage du démon sans aucun module chargé : refus de fonctionner."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Démarrage du démon effectué."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Fermeture du démon initiée."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Démon terminé."
@@ -869,14 +741,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lecture à partir du fichier de configuration : %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Abandon des privilèges root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Limitation des capacités à CAP_SYS_NICE réussie."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "Système de son PulseAudio"
@@ -885,30 +753,6 @@ msgstr "Système de son PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Démarrer le système de son PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Ordonnancement haute priorité (niveau Unix « nice » négatif) pour le démon "
-"PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Ordonnancement en temps réel pour le démon PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"La politique du système empêche PulseAudio d'acquérir un ordonnancement "
-"haute priorité"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"La politique du système empêche PulseAudio d'acquérir un ordonnancement en "
-"temps réel"
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1281,186 +1125,190 @@ msgstr "Ãchec lors de l'analyse des données du cookie"
msgid "Failed to open configuration file '%s': %s"
msgstr "Ãchec lors de l'ouverture du fichier de configuration « %s » :%s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Aucun cookie chargé. Tentative de connexion sans celui-ci."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork()Â : %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid()Â : %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Message reçu pour une extension inconnue « %s »"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Ãchec lors du vidage du flux : %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Flux de lecture vidé.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Vidage de la connexion au serveur.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain()Â : %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "Ãchec de pa_stream_write()Â : %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "Ãchec de pa_stream_write()Â : %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "Ãchec de pa_stream_peek()Â : %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Création du flux réussie.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "Ãchec de pa_stream_get_buffer_attr()Â : %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Mesures du tampon : maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Mesures du tampon : maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr ""
"Utilisation de la spécification d'échantillon « %s », plan des canaux « %s ».\n"
# l'espace manquant entre %s et suspended est voulu
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "Connecté au périphérique %s (%u, %ssuspendu).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Erreur du flux : %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "Périphérique de flux suspendu %s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "Périphérique de flux repris %s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Flux vide %s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Flux saturé %s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Flux démarré %s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Flux déplacé vers le périphérique %s (%u, %ssuspendu).%s \n"
# suspendu ou non suspendu
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "non "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "Des attributs du tampon de flux ont changé. %s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Connection établie.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "Ãchec de pa_stream_new()Â : %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "Ãchec de pa_stream_connect_playback()Â : %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "Ãchec de pa_stream_connect_record()Â : %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Ãchec lors de la connexion : %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF obtenu.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "Ãchec de read()Â : %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF obtenu.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "Ãchec de write()Â : %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Signal obtenu, fermeture.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Ãchec lors de l'obtention de la latence : %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Durée : %0.3f s ; Latency : %0.0f µs. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "Ãchec de pa_stream_update_timing_info()Â : %s\n"
# downmix = par ex. convertir 5 canaux en 2 canaux
@@ -1588,34 +1436,34 @@ msgstr ""
"Compilé avec libpulse %s\n"
"Lié avec libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "Plan des canaux invalide « %s »\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "Méthode de rééchantillonnage invalide « %s »."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Plan des canaux invalide « %s »\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Spécification de latence invalide « %s »\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Spécification de temps de traitement invalide « %s »\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Méthode de rééchantillonnage invalide « %s »."
#: ../src/utils/pacat.c:878
@@ -1624,61 +1472,67 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Spécification d'échantillon invalide\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open()Â : %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2()Â : %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "Trop de paramètres.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Ãchec lors de l'obtention des informations de l'échantillon : %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Ãchec lors de l'ouverture du fichier audio.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "Ouverture d'un flux %s avec une spécification d'échantillon « %s ».\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "Ãchec lors de l'obtention des informations de l'échantillon : %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Ouverture d'un flux %s avec une spécification d'échantillon « %s ».\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr ""
"Le plan des canaux ne correspond pas à la spécification d'échantillon\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Ouverture d'un flux %s avec une spécification d'échantillon « %s ».\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "Ouverture d'un flux %s avec une spécification d'échantillon « %s ».\n"
#: ../src/utils/pacat.c:1006
@@ -1689,35 +1543,34 @@ msgstr "enregistrement"
msgid "playback"
msgstr "lecture"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "Ãchec de pa_mainloop_new().\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "Ãchec de io_new().\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "Ãchec de pa_context_new().\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "Ãchec de pa_context_connect() : %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "Ãchec de time_new().\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "Ãchec de pa_context_new().\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "Ãchec de pa_mainloop_run().\n"
#: ../src/utils/pasuspender.c:81
@@ -1746,6 +1599,11 @@ msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr ""
"AVERTISSEMENT : le serveur de son n'est pas local, suspension annulée.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Ãchec lors de la connexion : %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1786,6 +1644,21 @@ msgstr ""
"Compilé avec libpulse %s\n"
"Lié avec libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "Ãchec de pa_mainloop_new().\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "Ãchec de pa_context_new().\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "Ãchec de pa_mainloop_run().\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2209,6 +2082,11 @@ msgstr ""
"Compilé avec libpulse %s\n"
"Lié avec libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Plan des canaux invalide « %s »\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Veuillez indiquer un fichier d'échantillon à charger\n"
@@ -2217,6 +2095,11 @@ msgstr "Veuillez indiquer un fichier d'échantillon à charger\n"
msgid "Failed to open sound file.\n"
msgstr "Ãchec lors de l'ouverture du fichier audio.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Ãchec lors de l'obtention des informations de l'échantillon : %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2281,11 +2164,6 @@ msgstr "Vous devez indiquer un nom/un index de carte et un nom de profil\n"
msgid "No valid command specified.\n"
msgstr "Aucune commande valide indiquée.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "Ãchec de pa_context_connect() : %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2406,11 +2284,11 @@ msgstr "read()Â : %s"
msgid "write(): %s"
msgstr "write()Â : %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Impossible d'accèder au verrou autonome."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2427,7 +2305,7 @@ msgstr ""
"le jeu POLLOUT -- cependant un snd_pcm_avail() ultérieur a retourné 0 ou une "
"autre valeur < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2445,15 +2323,15 @@ msgstr ""
"autre valeur < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Ãteint"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Lecture haute fidélité (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telephonie en duplex (HSP/HFP)"
@@ -2461,6 +2339,144 @@ msgstr "Telephonie en duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Serveur de son PulseAudio"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Impossible de se connecter au bus système : %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Impossible d'obtenir le programme appelant à partir du PID : %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Impossible de définir un UID sur l'objet appelant."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Ãchec lors de l'obtention de la session CK."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Impossible de définir l'UID sur l'objet de session."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Impossible d'allouer PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Impossible de définir action_id."
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Impossible d'allouer PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Impossible d'initialiser PolKitContext : %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Impossible de déterminer si le programme appelant est autorisé : %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Impossible d'obtenir l'authentification : %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit a renvoyé « %s »"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Ordonnancement haute priorité (niveau Unix « nice » négatif) pour le démon "
+#~ "PulseAudio"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Ordonnancement en temps réel pour le démon PulseAudio"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "La politique du système empêche PulseAudio d'acquérir un ordonnancement "
+#~ "haute priorité"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "La politique du système empêche PulseAudio d'acquérir un ordonnancement "
+#~ "en temps réel"
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "Ãchec de read()Â : %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "Ãchec de pa_context_connect() : %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Nous sommes dans le groupe « %s », permettant une planification à haute "
+#~ "priorité."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Nous sommes dans le groupe « %s », permettant un ordonnancement en temps "
+#~ "réel."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr ""
+#~ "PolicyKit a accordé l'acquisition des permissions de haute priorité."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit a refusé l'acquisition des permissions de haute priorité."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit a accordé l'acquisition des permissions de temps réel."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit a refusé l'acquisition des permissions de temps réel."
+
+#~ 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 ""
+#~ "Le SUID root et l'ordonnancement en temps réel et/ou haute priorité ont "
+#~ "été spécifiés dans la configuration. Cependant, il nous manque les "
+#~ "privilèges nécessaires :\n"
+#~ "Nous ne sommes pas dans le groupe « %s », PolicyKit refuse de nous "
+#~ "accorder les privilèges demandés et nous devons augmenter les limites de "
+#~ "ressources RLIMIT_NICE/RLIMIT_RTPRIO.\n"
+#~ "Pour activer l'ordonnancement en temps réel/haute priorité, veuillez "
+#~ "acquérir les privilèges PolicyKit apropriés, ou devenir membre de « %s », "
+#~ "ou augmenter les limites de ressources RLIMIT_NICE/RLIMIT_RTPRIO pour cet "
+#~ "utilisateur."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "La planification à haute priorité est activée dans la configuration mais "
+#~ "n'est pas permise par la politique."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "Augmentation de RLIMIT_RTPRIO réussie"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO a échoué : %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Abandon de CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "La planification en temps réel est activée mais n'est pas permise par la "
+#~ "politique."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Limitation des capacités à CAP_SYS_NICE réussie."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "Ãchec de time_new().\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Mono analogique"
diff --git a/po/gu.po b/po/gu.po
index 437cd1cd..66837d83 100644
--- a/po/gu.po
+++ b/po/gu.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-07 14:27+0530\n"
"Last-Translator: Sweta Kothari \n"
"Language-Team: Gujarati\n"
@@ -17,7 +17,12 @@ msgstr ""
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -29,7 +34,7 @@ msgstr ""
"ALSA ડà«àª°àª¾àªàªµàª° '%s' માઠમà«àªà«àªàª¾àªà« ઠàªà«àª² àªà«àªµà« àªà«. ALSA ડà«àªµàª²à«àªªàª°à«àª®àª¾àª ઠસમસà«àª¯àª¾àª¨à« મહà«àª°àª¬àª¾àª¨à« àªàª°à«àª¨à« "
"àª
હà«àªµàª¾àª² àªàª°à«."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -42,7 +47,7 @@ msgstr ""
"ALSA ડà«àª°àª¾àªàªµàª° '%s' માઠમà«àªà«àªàª¾àªà« ઠàªà«àª² àªà«àªµà« àªà«. ALSA ડà«àªµàª²à«àªªàª°à«àª®àª¾àª ઠસમસà«àª¯àª¾àª¨à« મહà«àª°àª¬àª¾àª¨à« àªàª°à«àª¨à« "
"àª
હà«àªµàª¾àª² àªàª°à«."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -68,7 +73,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "àªàªàª¤àª°àª¿àª àªàª¡àª¿àª¯à«"
@@ -88,369 +93,244 @@ msgstr "નવા dl લà«àª¡àª°àª¨à« ફાળવવાનà«àª નિષà«
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader નૠàªàª®à«àª°àªµàª¾àª¨à«àª નિષà«àª«àª³."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "સિસà«àªàª® બસનૠàªà«àª¡à« શàªàª¾àª¤à« નથà«: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID માàªàª¥à« àªà«àª²àª°àª¨à« મà«àª³àªµà« શàªàª¾àª¤à« નથà«: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "àªà«àª²àª° àªàª¬à«àªà«àªà«àª પર UID નૠસà«àª¯à«àªàª¿àª¤ àªàª°à« શàªàª¾àª¤à« નથà«."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK સતà«àª°àª¨à« મà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "સતà«àª° àªàª¬à«àªà«àªà«àª પર UID નૠસà«àª¯à«àªàª¿àª¤ àªàª°à« શàªàª¾àª¤à« નથà«."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction નૠફાળવૠશàªàª¾àª¤à« નથà«."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id નૠસà«àª¯à«àªàª¿àª¤ àªàª°à« શàªàª¾àª¤à« નથà«"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext નૠફાળવૠશàªàª¾àª¤à« નથà«."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext નà«àª પà«àª°àª¾àª°àªàª àªàª°à« શàªàª¾àª¤à« નથà«: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "નàªà«àªà« àªàª°à« શàªàª¾àª¯à« નહિઠàªà«àª¯àª¾àªàª¤à« àªà«àª²àª° ઠસતà«àª¤àª¾àª§àª¿àªàª°àª£ થયà«àª² àªà«: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "auth મà«àª³àªµàª¾ શàªàª¾àª¤à« નથà«: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "'%s' સાથૠPolicyKit ઠપà«àª°àª¤à«àª¯à«àª¤à«àª¤àª° àªàªªà«àª² àªà«"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "સàªàªà«àª¤ %s મળà«àª¯à«."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "બહાર નà«àªàª³à« રહà«àª¯àª¾ àªà«."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "વપરાશàªàª°à«àª¤àª¾ '%s' નૠશà«àª§àªµàª¾àª®àª¾àª નિષà«àª«àª³."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "àªà«àª¥ '%s' નૠશà«àª§àªµàª¾àª®àª¾àª નિષà«àª«àª³."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "વપરાશàªàª°à«àª¤àª¾ '%s' (UID %lu) àª
નૠàªà«àª¥ '%s' (GID %lu) શà«àª§àª¾àª¯à«."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "વપરાશàªàª°à«àª¤àª¾ '%s' àª
નૠàªà«àª¥ '%s' નૠGID બàªàª§àª¬à«àª¸àª¤à« નથà«."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "વપરાશàªàª°à«àª¤àª¾àª '%s' નૠàªàª° ડિરà«àªà«àªàª°à« '%s' નથà«, àª
વàªàª£à« રહà«àª¯àª¾ àªà«."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' નૠબનાવવામાઠનિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "àªà«àª¥ યાદà«àª¨à« બદલવામાઠનિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID નૠબદલવામાઠનિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID નૠબદલવામાઠનિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "સફળતાપà«àª°à«àªµàª àªà«àª¡à« દà«àª§à«àª² રà«àª àª
ધિàªàª¾àª°à«."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "ઠપà«àª²à«àªàª«à«àª°à«àª® પર બિનàªàª§àª¾àª°àªà«àª¤ સિસà«àªàª® વિશાળ સà«àª¥àª¿àª¤àª¿."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) નિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "àªàª¦à«àª¶ વાàªà«àª¯àª¨à« પદàªà«àªà«àª¦àª¨ àªàª°àªµàª¾àª®àª¾àª નિષà«àª«àª³."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "àªàªªàª£à« àªà«àª¥ '%s' માઠàªà«àª, high-priority àªà«àª વવાનૠપરવાનàªà« àªàªªà« રહà«àª¯àª¾ àªà«."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "àªàªªàª£à« àªà«àª¥ '%s' માઠàªà«àª, સાàªàª¾ સમયૠàªà«àª વવાનૠપરવાનàªà« àªàªªà« રહà«àª¯àª¾ àªà«."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit àªàªªàª£àª¨à« acquire-high-priority àª
ધિàªàª¾àª°àª¨à« મàªàªà«àª°à« àªàªªà« àªà«."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit ઠacquire-high-priority àª
ધિàªàª¾àª°àª¨à« ફરà«àª¥à« શરૠàªàª°à« àªà«."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit ઠacquire-real-time àª
ધિàªàª¾àª°àª¨à« મàªàªà«àª°à« àªàªªà« àªà«."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit ઠacquire-real-time àª
ધિàªàª¾àª°àª¨à« ફરૠશરૠàªàª°à« àªà«."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"àªàª¹à«àªµàª¾àª¤à« SUID àª
નૠreal-time àª
નà«/àª
થવા high-priority àªà«àª વણૠરà«àªªàª°à«àªàª¾àªàªàª¨àª®àª¾àª સà«àªàªµà«àª² હતà«. "
-"àªàª¤àª¾àªàªªàª£, àªàªªàª£àª¨à« àªàª°à«àª°à« àª
ધિàªàª¾àª°à« àªàªàª¾ પડà«àª¯àª¾:\n"
-"àªàªªàª£à« àªà«àª¥ '%s' માઠનથà«, PolicyKit ઠસà«àªàª¿àª¤ àª
ધિàªàª¾àª°à«àª¨à« àªàªªàª£àª¨à« મàªàªà«àª°à« àªàªªàªµàª¾ માàªà« માનà«àª¯ àªàª°àª¤à« "
-"નથૠàª
નૠàªàªªàª£à« RLIMIT_NICE/RLIMIT_RTPRIO સà«àª¤à«àª°à«àª¤ મરà«àª¯àª¾àª¦àª¾àªàª¨à« વધારતા નથà«.\n"
-"real-time/high-priority àªà«àª વણà«àª¨à« સàªà«àª°àª¿àª¯ àªàª°àªµàª¾ માàªà« મહà«àª°àª¬àª¾àª¨à« àªàª°à«àª¨à« àª
નà«àªà«àª³ PolicyKit "
-"àª
ધિàªàª¾àª°à«àª¨à« મà«àª³àªµà«, àª
થવા '%s' નાઠસàªà«àª¯ બનà«, àª
થવા ઠવપરાશàªàª°à«àª¤àª¾ માàªà« RLIMIT_NICE/"
-"RLIMIT_RTPRIO સà«àª¤à«àª°à«àª¤ મરà«àª¯àª¾àª¦àª¾àªàª¨à« વધારà«."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"High-priority àªà«àª વવાનà«àª રà«àªªàª°à«àªàª¾àªàªàª¨àª®àª¾àª સàªà«àª°àª¿àª¯ થયà«àª² àªà« પરàªàª¤à« પà«àª²àª¿àª¸à« દà«àª¦àª¾àª°àª¾ પરવાનàªà« àªàªªà«àª² નથà«."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "સફળતાપà«àª°à«àªµàª વધારà«àª² RLIMIT_RTPRIO"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO નિષà«àª«àª³: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE નૠàªà«àª¡à« રહà«àª¯àª¾ àªà«"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Real-time àªà«àª વવાનà«àª ઠરà«àªªàª°à«àªàª¾àªàªàª¨àª®àª¾àª સàªà«àª°àª¿àª¯ થયà«àª² àªà« પરàªàª¤à« પà«àª²àª¿àª¸à« દà«àª¦àª¾àª°àª¾ પરવાનàªà« àªàªªà«àª² નથà«."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "ડિમન àªàª¾àª²à« રહà«àª¯à« નથà«"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "PID %u તરà«àªà« ડિમન àªàª¾àª²à« રહà«àª¯à« àªà«"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ડિમનનૠમારવાનà«àª નિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr ""
"ઠપà«àª°àªà«àª°àª¿àª¯àª¾àª¨à« રà«àª તરà«àªà« àªàª²àª¾àªµàªµàª¾ માàªà« વિàªàª¾àª° થયà«àª² નથૠ(નહિઠતૠ--system ઠસà«àªªàª·à«àª થયà«àª² àªà«)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "રà«àª àª
ધિàªàª¾àª°à« àªàª°à«àª°à« àªà«."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start ઠસિસà«àªàª® àªàª¦àª¾àª¹àª°àª£à« માàªà« àªàª§àª¾àª°àªà«àª¤ નથà«."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "સિસà«àªàª® સà«àª¥àª¿àª¤àª¿àª®àª¾àª àªàª¾àª²à« રહà«àª¯à« àªà«, પરàªàª¤à« --disallow-exit સà«àª¯à«àªàª¿àª¤ નથà«!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "સિસà«àªàª® સà«àª¥àª¿àª¤àª¿àª®àª¾àª àªàª¾àª²à« રહà«àª¯à« àªà«, પરàªàª¤à« --disallow-module-loading ઠસà«àª¯à«àªàª¿àª¤ નથà«!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "સિસà«àªàª® સà«àª¥àª¿àª¤àª¿àª®àª¾àª àªàª¾àª²à« રહà«àª¯à« àªà«, SHM સà«àª¥àª¿àª¤àª¿àª¨à« દબાણપà«àª°à«àªµàª નિષà«àªà«àª°àª¿àª¯ àªàª°à« રહà«àª¯àª¾ àªà«!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"સિસà«àªàª® સà«àª¥àª¿àª¤àª¿àª®àª¾àª àªàª¾àª²à« રહà«àª¯à« àªà«, બહાર નà«àªàª³àªµàª¨àª¾àª નિષà«àªàª¾àª°à«àª¯ સમયનૠદબાણપà«àª°à«àªµàª નિષà«àªà«àª°àª¿àª¯ àªàª°à« "
"રહà«àª¯àª¾ àªà«!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio નૠમà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "પાàªàªª નિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() નિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() નિષà«àª«àª³: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ડિમન શરà«àªàª¤ નિષà«àª«àª³."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "ડિમન શરà«àªàª¤ àªàª°àªµà« સફળ àªà«."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "ઠPulseAudio %s àªà«"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "àªàª®à«àªªàª¾àªàª²à«àª¶àª¨ યàªàª®àª¾àª¨: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "àªàª®à«àªªàª¾àªàª²à«àª¶àª¨ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "યàªàª®àª¾àª¨ પર àªàª¾àª²à« રહà«àª¯à« àªà«: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUs શà«àª§àª¾àª¯à«."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "પાનાàªàª¨à« માપ %lu બાàªàªà« àªà«"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind àªàª§àª¾àª° સાથૠàªàª®à«àªªàª¾àªàª² થયà«àª² àªà«: હા"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind àªàª§àª¾àª° સાથૠàªàª®à«àªªàª¾àªàª² થયà«àª² àªà«: ના"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind સà«àª¥àª¿àª¤àª¿àª®àª¾àª àªàª¾àª²à« રહà«àª¯à« àªà«: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "શà«àª°à«àª·à«àª થયà«àª² બિલà«àª¡: હા"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "શà«àª°à«àª·à«àª થયà«àª² બિલà«àª¡: ના"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG વà«àª¯àª¾àªà«àª¯àª¾àª¯àª¿àª¤ થયà«àª² àªà«, બધા હàªà« નિષà«àªà«àª°àª¿àª¯ થયà«àª² àªà«."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH વà«àª¯àª¾àªà«àª¯àª¾àª¯àª¿àª¤ થયà«àª² àªà«, ફàªà«àª¤ àªàª¡àªªà« પાથનાઠહàªà« નિષà«àªà«àª°àª¿àª¯ થયà«àª² àªà«."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "બધા હàªà« સàªà«àª°àª¿àª¯ થયà«àª² àªà«."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "મશà«àª¨ ID નૠમà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "મશà«àª¨ ID %s àªà«."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "મશà«àª¨ ID %s àªà«."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "રનàªàª¾àªàª® ડિરà«àªà«àªàª°à« %s નૠવાપરૠરહà«àª¯àª¾ àªà«."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "સà«àª¥àª¿àª¤àª¿ ડિરà«àªà«àªàª°à« %s નૠવાપરૠરહà«àª¯àª¾ àªà«."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "સિસà«àªàª® સà«àª¥àª¿àª¤àª¿àª®àª¾àª àªàª¾àª²à« રહà«àª¯à« àªà«: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -460,15 +340,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() નિષà«àª«àª³."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "તાàªà« high-resolution àªàª¾àªàª®àª°à« àªàªªàª²à«àª¬àª§ àªà«! બà«àª¨ àªàªªà«àªàª¾àªàª!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -476,27 +356,27 @@ msgstr ""
"મિતà«àª°, તમારૠàªàª°à«àª¨àª²àª®àª¾àª àªàª¡àª¬àª¡ àªà«! રસà«àªàª¯àª¾àª¨à«àª àªàªà« àªàª²àª¾àª®àª£ ઠસàªà«àª°àª¿àª¯ થયà«àª² high-resolution "
"àªàª¾àªàª®àª°à« સાથૠLinux નà«àª àªà«!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() નિષà«àª«àª³."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ડિમનનૠશરૠàªàª°àªµàª¾àª®àª¾àª નિષà«àª«àª³."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "àªà«àªàªªàª£ લà«àª¡ થયà«àª² મà«àª¡à«àª¯à«àª²à« વàªàª° ડિમનનૠશરૠàªàª°à«, àªàª¾àª® àªàª°àªµàª¾ માàªà« ફરૠશરૠàªàª°à« રહà«àª¯àª¾ àªà«."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ડિમન પારàªàª àªàª°àªµàª¾àª¨à«àª સમાપà«àª¤ àªà«."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ડિમનનૠબàªàª§ àªàª°àªµàª¾àª¨à«àª પà«àª°àª¾àª°àªàª થયà«àª² àªà«."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ડિમનનૠàª
àªàª¤ àªàªµà«àª² àªà«."
@@ -829,14 +709,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### રà«àªªàª°à«àªàª¾àªàªàª¨ ફાàªàª²àª®àª¾àªàª¥à« વાàªàªà«: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "રà«àª àª
ધિàªàª¾àª°à«àª¨à« àªà«àª¡à« રહà«àª¯àª¾ àªà«."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "CAP_SYS_NICE માઠસફળતાપà«àª°à«àªµàª મરà«àª¯àª¾àª¦àª¿àª¤ àªà«àª·àª®àª¤àª¾àª."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio સાàªàª¨à«àª¡ સિસà«àªàª®"
@@ -845,25 +721,6 @@ msgstr "PulseAudio સાàªàª¨à«àª¡ સિસà«àªàª®"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio સાàªàª¨à«àª¡ સિસà«àªàª®àª¨à« શરૠàªàª°à«"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio ડિમન માàªà« High-priority àªà«àª વણૠ(નàªàª¾àª°àª¾àª¤à«àª®àª Unix સારૠસà«àª¤àª°)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio ડિમન માàªà« Real-time àªà«àª વણà«"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"high-priority àªà«àª વણà«àª¨à« પà«àª°àª¾àªªà«àª¤ àªàª°àªµàª¾ માàªàª¥à« સિસà«àªàª® પà«àª²àª¿àª¸à« PulseAudio નૠàª
àªàªàª¾àªµà« àªà«."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "real-time àªà«àª વણૠપà«àª°àª¾àªªà«àª¤ àªàª°àªµàª¾ માàªàª¥à« સિસà«àªàª® પà«àª²àª¿àª¸à« ઠPulseAudio નૠàª
àªàªàª¾àªµà« àªà«."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "મà«àª¨à«"
@@ -1236,183 +1093,187 @@ msgstr "àªà«àªà«àª¨à« માહિતà«àª¨à« પદàªà«àªà«àª¦àª¨ àª
msgid "Failed to open configuration file '%s': %s"
msgstr "રà«àªªàª°à«àªàª¾àªàªàª¨ ફાàªàª² '%s' નૠàªà«àª²àªµàª¾àª®àª¾àª નિષà«àª«àª³: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "àªà«àªà« લà«àª¡ થયà«àª² નથà«. તà«àª¨àª¾àª વàªàª° àªà«àª¡àªµàª¾àª¨à« પà«àª°àª¯àª¤à«àª¨ àªàª°à« રહà«àª¯àª¾ àªà«."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "àª
àªà«àªàª¾àª¤ àªàªà«àª¸àªà«àª¨à«àª¶àª¨ '%s' માàªà« મળà«àª² સàªàª¦à«àª¶"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "સà«àªà«àª°à«àª®àª¨à« નિàªàª¾àª² àªàª°àªµàª¾àª®àª¾àª નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "પà«àª²à«àª¬à«àª સà«àªà«àª°à«àª® નૠનિàªàª¾àª² àªàª°à«àª² àªà«.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "સરà«àªµàª°àª®àª¾àª àªà«àª¡àª¾àª£àª¨à« નિàªàª¾àª² àªàª°à« રહà«àª¯àª¾ àªà«.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() નિષà«àª«àª³: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "સà«àªà«àª°à«àª® સફળતાપà«àª°à«àªµàª બનાવà«àª² àªà«.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "બફર મà«àªà«àª°àª¿àªà«àª¸: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "બફર મà«àªà«àª°àª¿àªà«àª¸: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "નમà«àª¨à« spec '%s' નૠવાપરૠરહà«àª¯àª¾ àªà«, àªà«àª¨àª² મà«àªª '%s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "àªàªªàªàª°àª£ %s (%u, %ssuspended) સાથૠàªà«àª¡àª¾àª¯à«àª² àªà«.\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "સà«àªà«àª°à«àª® àªà«àª²: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "સà«àªà«àª°à«àª® àªàªªàªàª°àª£ નૠથà«àª¡àª¾ સમય માàªà« બàªàª§ રાàªà«àª² àªà«.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "સà«àªà«àª°à«àª® àªàªªàªàª°àª£àª¨à« ફરૠશરૠàªàª°à«àª² àªà«.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "સà«àªà«àª°à«àª® àªàª²àª¾àªµàªµàª¾ હà«àª ળ àªà«.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "સà«àªà«àª°à«àª® àªàªªàª° àªàª¾àª²à« àªà«.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "સà«àªà«àª°à«àª® શરૠથયà«àª² àªà«.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "સà«àªà«àª°à«àª® ઠàªàªªàªàª°àª£ %s (%u, %ssuspended) માઠàªàª¸à«àª¡à«àª² àªà«.%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "નથૠ"
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "સà«àªà«àª°à«àª® બફર àªà«àª£àª§àª°à«àª®à« બદલાયà«àª² àªà«.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "àªà«àª¡àª¾àª£ સà«àª¥àª¾àªªàª¿àª¤ થયà«àª² àªà«.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "àªà«àª¡àª¾àª£ નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF મળà«àª¯à«.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() નિષà«àª«àª³: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF મળà«àª¯à«.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "સàªàªà«àª¤ મળà«àª¯à«àª, બહાર નà«àªàª³à« રહà«àª¯àª¾ àªà«.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "àªà«àªªà«àª¤àª¤àª¾ મà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Time: %0.3f sec; Latency: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() નિષà«àª«àª³: %s\n"
#: ../src/utils/pacat.c:605
@@ -1534,34 +1395,34 @@ msgstr ""
"libpulse %s સાથૠàªàª®à«àªªàª¾àªàª² થયà«àª² àªà«\n"
"libpulse %s સાથૠàªàª¡à« થયà«àª² àªà«\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "àª
યà«àªà«àª¯ àªà«àª¨àª² મà«àªª '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "àª
યà«àªà«àª¯ resample પદà«àª¦àª¤àª¿ '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "àª
યà«àªà«àª¯ àªà«àª¨àª² મà«àªª '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "àª
યà«àªà«àª¯ àªà«àªªà«àª¤àª¤àª¾ સà«àªªàª·à«àªà«àªàª°àª£ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "àª
યà«àªà«àª¯ પà«àª°àªà«àª°àª¿àª¯àª¾ સમય સà«àªªàª·à«àªà«àªàª°àª£ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "àª
યà«àªà«àª¯ resample પદà«àª¦àª¤àª¿ '%s'."
#: ../src/utils/pacat.c:878
@@ -1570,60 +1431,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "àª
યà«àªà«àª¯ નમà«àª¨àª¾ સà«àªªàª·à«àªà«àªàª°àª£\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "àªàª£à« બધૠદલà«àª²à« àªà«.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "નમà«àª¨àª¾ àªàª¾àª£àªàª¾àª°à« મà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "સાàªàª¨à«àª¡ ફાàªàª²àª¨à« àªà«àª²àªµàª¾àª®àª¾àª નિષà«àª«àª³.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "નમà«àª¨àª¾ સà«àªªàª·à«àªà«àªàª°àª£ '%s' સાથૠ%s સà«àªà«àª°à«àª®àª¨à« àªà«àª²à« રહà«àª¯àª¾ àªà«.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "નમà«àª¨àª¾ àªàª¾àª£àªàª¾àª°à« મà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "નમà«àª¨àª¾ સà«àªªàª·à«àªà«àªàª°àª£ '%s' સાથૠ%s સà«àªà«àª°à«àª®àª¨à« àªà«àª²à« રહà«àª¯àª¾ àªà«.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "àªà«àª¨àª² મà«àªª ઠસà«àªªàª·à«àªà«àªàª°àª£ નમà«àª¨àª¾àª¨à« બàªàª§àª¬à«àª¸àª¤à« નથà«\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "નમà«àª¨àª¾ સà«àªªàª·à«àªà«àªàª°àª£ '%s' સાથૠ%s સà«àªà«àª°à«àª®àª¨à« àªà«àª²à« રહà«àª¯àª¾ àªà«.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "નમà«àª¨àª¾ સà«àªªàª·à«àªà«àªàª°àª£ '%s' સાથૠ%s સà«àªà«àª°à«àª®àª¨à« àªà«àª²à« રહà«àª¯àª¾ àªà«.\n"
#: ../src/utils/pacat.c:1006
@@ -1634,35 +1501,34 @@ msgstr "રà«àªà«àª°à«àª¡ àªàª°à« રહà«àª¯àª¾ àªà«"
msgid "playback"
msgstr "પà«àª²à«àª¬à«àª"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() નિષà«àª«àª³.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() નિષà«àª«àª³.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() નિષà«àª«àª³.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() નિષà«àª«àª³: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() નિષà«àª«àª³.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() નિષà«àª«àª³.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() નિષà«àª«àª³.\n"
#: ../src/utils/pasuspender.c:81
@@ -1690,6 +1556,11 @@ msgstr "ફરૠશરૠàªàª°àªµàª¾àª®àª¾àª નિષà«àª«àª³àª¤àª¾: %s\n
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "àªà«àª¤àªµàª£à«: સાàªàª¨à«àª¡ સરà«àªµàª° ઠસà«àª¥àª¾àª¨àª¿àª નથà«, થà«àª¡àª¾ સમય માàªà« બàªàª§ àªàª°àªµàª¾àª®àª¾àª àªàªµà«àª¯à« નથà«.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "àªà«àª¡àª¾àª£ નિષà«àª«àª³: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1729,6 +1600,21 @@ msgstr ""
"libpulse %s સાથૠàªàª®à«àªªàª¾àªàª² થયà«àª² àªà«\n"
"libpulse %s સાથૠàªàª¡à« થયà«àª² àªà«\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() નિષà«àª«àª³.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() નિષà«àª«àª³.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() નિષà«àª«àª³.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2141,6 +2027,11 @@ msgstr ""
"libpulse %s સાથૠàªàª®à«àªªàª¾àªàª² થયà«àª² àªà«\n"
"libpulse %s સાથૠàªàª¡à« થયà«àª² àªà«\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "àª
યà«àªà«àª¯ àªà«àª¨àª² મà«àªª '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "મહà«àª°àª¬àª¾àª¨à« àªàª°à«àª¨à« લà«àª¡ àªàª°àªµàª¾ માàªà« નમà«àª¨àª¾ ફાàªàª²àª¨à« સà«àªªàª·à«àª àªàª°à«\n"
@@ -2149,6 +2040,11 @@ msgstr "મહà«àª°àª¬àª¾àª¨à« àªàª°à«àª¨à« લà«àª¡ àªàª°àªµàª¾ મા
msgid "Failed to open sound file.\n"
msgstr "સાàªàª¨à«àª¡ ફાàªàª²àª¨à« àªà«àª²àªµàª¾àª®àª¾àª નિષà«àª«àª³.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "નમà«àª¨àª¾ àªàª¾àª£àªàª¾àª°à« મà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2210,11 +2106,6 @@ msgstr "તમારૠàªàª¾àª°à«àª¡ નામ/àª
નà«àªà«àª°àª®àª£àª¿àª
msgid "No valid command specified.\n"
msgstr "યà«àªà«àª¯ àªàª¦à«àª¶ સà«àªªàª·à«àª થયà«àª² નથà«.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() નિષà«àª«àª³: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2331,11 +2222,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn તાળાનૠદાàªàª² àªàª°à« શàªàª¾àª¤à« નથà«."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2352,7 +2243,7 @@ msgstr ""
"POLLOUT સà«àª¯à«àªàª¨ સાથૠàªàªªàª£à« àªàª¾àªà«àª² હતા -- àªàª¤àª¾àªàªªàª£ ના પàªà«àª¨à«àª snd_pcm_avail() નૠ0 પાàªà« મળૠ"
"àªà« àª
થવા બà«àªà« àªàª¿àªàª®àª¤ < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2370,15 +2261,15 @@ msgstr ""
"àªà« àª
થવા બà«àªà« àªàª¿àªàª®àª¤ < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "બàªàª§"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "High Fidelity Playback (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telephony Duplex (HSP/HFP)"
@@ -2386,6 +2277,132 @@ msgstr "Telephony Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio સાàªàª¨à«àª¡ સરà«àªµàª°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "સિસà«àªàª® બસનૠàªà«àª¡à« શàªàª¾àª¤à« નથà«: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID માàªàª¥à« àªà«àª²àª°àª¨à« મà«àª³àªµà« શàªàª¾àª¤à« નથà«: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "àªà«àª²àª° àªàª¬à«àªà«àªà«àª પર UID નૠસà«àª¯à«àªàª¿àª¤ àªàª°à« શàªàª¾àª¤à« નથà«."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK સતà«àª°àª¨à« મà«àª³àªµàªµàª¾àª®àª¾àª નિષà«àª«àª³."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "સતà«àª° àªàª¬à«àªà«àªà«àª પર UID નૠસà«àª¯à«àªàª¿àª¤ àªàª°à« શàªàª¾àª¤à« નથà«."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction નૠફાળવૠશàªàª¾àª¤à« નથà«."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id નૠસà«àª¯à«àªàª¿àª¤ àªàª°à« શàªàª¾àª¤à« નથà«"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext નૠફાળવૠશàªàª¾àª¤à« નથà«."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext નà«àª પà«àª°àª¾àª°àªàª àªàª°à« શàªàª¾àª¤à« નથà«: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "નàªà«àªà« àªàª°à« શàªàª¾àª¯à« નહિઠàªà«àª¯àª¾àªàª¤à« àªà«àª²àª° ઠસતà«àª¤àª¾àª§àª¿àªàª°àª£ થયà«àª² àªà«: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "auth મà«àª³àªµàª¾ શàªàª¾àª¤à« નથà«: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "'%s' સાથૠPolicyKit ઠપà«àª°àª¤à«àª¯à«àª¤à«àª¤àª° àªàªªà«àª² àªà«"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "PulseAudio ડિમન માàªà« High-priority àªà«àª વણૠ(નàªàª¾àª°àª¾àª¤à«àª®àª Unix સારૠસà«àª¤àª°)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio ડિમન માàªà« Real-time àªà«àª વણà«"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "high-priority àªà«àª વણà«àª¨à« પà«àª°àª¾àªªà«àª¤ àªàª°àªµàª¾ માàªàª¥à« સિસà«àªàª® પà«àª²àª¿àª¸à« PulseAudio નૠàª
àªàªàª¾àªµà« àªà«."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "real-time àªà«àª વણૠપà«àª°àª¾àªªà«àª¤ àªàª°àªµàª¾ માàªàª¥à« સિસà«àªàª® પà«àª²àª¿àª¸à« ઠPulseAudio નૠàª
àªàªàª¾àªµà« àªà«."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() નિષà«àª«àª³: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() નિષà«àª«àª³: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "àªàªªàª£à« àªà«àª¥ '%s' માઠàªà«àª, high-priority àªà«àª વવાનૠપરવાનàªà« àªàªªà« રહà«àª¯àª¾ àªà«."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "àªàªªàª£à« àªà«àª¥ '%s' માઠàªà«àª, સાàªàª¾ સમયૠàªà«àª વવાનૠપરવાનàªà« àªàªªà« રહà«àª¯àª¾ àªà«."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit àªàªªàª£àª¨à« acquire-high-priority àª
ધિàªàª¾àª°àª¨à« મàªàªà«àª°à« àªàªªà« àªà«."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit ઠacquire-high-priority àª
ધિàªàª¾àª°àª¨à« ફરà«àª¥à« શરૠàªàª°à« àªà«."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit ઠacquire-real-time àª
ધિàªàª¾àª°àª¨à« મàªàªà«àª°à« àªàªªà« àªà«."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit ઠacquire-real-time àª
ધિàªàª¾àª°àª¨à« ફરૠશરૠàªàª°à« àªà«."
+
+#~ 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 ""
+#~ "àªàª¹à«àªµàª¾àª¤à« SUID àª
નૠreal-time àª
નà«/àª
થવા high-priority àªà«àª વણૠરà«àªªàª°à«àªàª¾àªàªàª¨àª®àª¾àª સà«àªàªµà«àª² હતà«. "
+#~ "àªàª¤àª¾àªàªªàª£, àªàªªàª£àª¨à« àªàª°à«àª°à« àª
ધિàªàª¾àª°à« àªàªàª¾ પડà«àª¯àª¾:\n"
+#~ "àªàªªàª£à« àªà«àª¥ '%s' માઠનથà«, PolicyKit ઠસà«àªàª¿àª¤ àª
ધિàªàª¾àª°à«àª¨à« àªàªªàª£àª¨à« મàªàªà«àª°à« àªàªªàªµàª¾ માàªà« માનà«àª¯ àªàª°àª¤à« "
+#~ "નથૠàª
નૠàªàªªàª£à« RLIMIT_NICE/RLIMIT_RTPRIO સà«àª¤à«àª°à«àª¤ મરà«àª¯àª¾àª¦àª¾àªàª¨à« વધારતા નથà«.\n"
+#~ "real-time/high-priority àªà«àª વણà«àª¨à« સàªà«àª°àª¿àª¯ àªàª°àªµàª¾ માàªà« મહà«àª°àª¬àª¾àª¨à« àªàª°à«àª¨à« àª
નà«àªà«àª³ "
+#~ "PolicyKit àª
ધિàªàª¾àª°à«àª¨à« મà«àª³àªµà«, àª
થવા '%s' નાઠસàªà«àª¯ બનà«, àª
થવા ઠવપરાશàªàª°à«àª¤àª¾ માàªà« "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO સà«àª¤à«àª°à«àª¤ મરà«àª¯àª¾àª¦àª¾àªàª¨à« વધારà«."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "High-priority àªà«àª વવાનà«àª રà«àªªàª°à«àªàª¾àªàªàª¨àª®àª¾àª સàªà«àª°àª¿àª¯ થયà«àª² àªà« પરàªàª¤à« પà«àª²àª¿àª¸à« દà«àª¦àª¾àª°àª¾ પરવાનàªà« àªàªªà«àª² "
+#~ "નથà«."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "સફળતાપà«àª°à«àªµàª વધારà«àª² RLIMIT_RTPRIO"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO નિષà«àª«àª³: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE નૠàªà«àª¡à« રહà«àª¯àª¾ àªà«"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Real-time àªà«àª વવાનà«àª ઠરà«àªªàª°à«àªàª¾àªàªàª¨àª®àª¾àª સàªà«àª°àª¿àª¯ થયà«àª² àªà« પરàªàª¤à« પà«àª²àª¿àª¸à« દà«àª¦àª¾àª°àª¾ પરવાનàªà« àªàªªà«àª² "
+#~ "નથà«."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "CAP_SYS_NICE માઠસફળતાપà«àª°à«àªµàª મરà«àª¯àª¾àª¦àª¿àª¤ àªà«àª·àª®àª¤àª¾àª."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() નિષà«àª«àª³.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "àªàª¨àª¾àª²à«àª મà«àª¨à«"
diff --git a/po/hi.po b/po/hi.po
index 91a27120..e406a5f0 100644
--- a/po/hi.po
+++ b/po/hi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-06-08 12:01+0530\n"
"Last-Translator: Rajesh Ranjan \n"
"Language-Team: Hindi \n"
@@ -20,7 +20,12 @@ msgstr ""
"\n"
"\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -32,7 +37,7 @@ msgstr ""
"à¤
धिठसà¤à¤à¤µ हॠà¤à¤¿ यह ALSA डà¥à¤°à¤¾à¤à¤µà¤° '%s' मà¥à¤ à¤à¤ बठहà¥. à¤à¤¸ मà¥à¤¦à¥à¤¦à¥ à¤à¥ ALSA डà¥à¤µà¤²à¥à¤ªà¤° à¤à¥ रिपà¥à¤°à¥à¤ "
"à¤à¤°à¥à¤."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -44,7 +49,7 @@ msgstr ""
"à¤
धिठसà¤à¤à¤µ हॠà¤à¤¿ यह ALSA डà¥à¤°à¤¾à¤à¤µà¤° '%s' मà¥à¤ à¤à¤ बठहà¥. à¤à¤¸ मà¥à¤¦à¥à¤¦à¥ à¤à¥ ALSA डà¥à¤µà¤²à¥à¤ªà¤° à¤à¥ रिपà¥à¤°à¥à¤ "
"à¤à¤°à¥à¤."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -70,7 +75,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à¤à¤à¤¤à¤°à¤¿à¤ à¤à¤¡à¤¿à¤¯à¥"
@@ -90,366 +95,242 @@ msgstr "नया dl लà¥à¤¡à¤° à¤à¤¬à¤à¤à¤¿à¤¤ à¤à¤°à¤¨à¥ मà¥à¤ व
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader à¤à¥à¤¡à¤¼à¤¨à¥ मà¥à¤ विफल."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "तà¤à¤¤à¥à¤° बस सॠà¤à¤¨à¥à¤à¥à¤ नहà¥à¤ हॠसà¤à¤¤à¤¾ हà¥: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID सॠà¤à¥à¤²à¤° पानॠमà¥à¤ विफल: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "UID à¤à¥ à¤à¥à¤²à¤° वसà¥à¤¤à¥ पर सà¥à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK सतà¥à¤° पानॠमà¥à¤ विफल."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "UID à¤à¥ सतà¥à¤° वसà¥à¤¤à¥ पर सà¥à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction à¤à¤¬à¤à¤à¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id सà¥à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext à¤à¤¬à¤à¤à¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext à¤à¤°à¤à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥.: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "निरà¥à¤§à¤¾à¤°à¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हॠà¤à¤¿ à¤à¥à¤¯à¤¾ à¤à¥à¤²à¤° à¤
धिà¤à¥à¤¤ हà¥: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "à¤
धिà¤à¤¾à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit नॠ'%s' à¤à¥ साथ à¤
नà¥à¤à¥à¤°à¤¿à¤¯à¤¾ à¤à¤¿à¤¯à¤¾"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "%s सà¤à¤à¥à¤¤ पाया."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "बाहर हॠरहा हà¥."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "'%s' à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¾ ढà¥à¤à¤¢à¤¼à¤¨à¥ मà¥à¤ विफल."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "'%s' समà¥à¤¹ ढà¥à¤à¤¢à¤¼à¤¨à¥ मà¥à¤ विफल."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "'%s' (UID %lu) à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¾ व '%s' (GID %lu) समà¥à¤¹ पाया."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "'%s' à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¾ à¤à¤° '%s' समà¥à¤¹ à¤à¤¾ GID मà¥à¤² नहà¥à¤ à¤à¤¾à¤¤à¤¾ हà¥"
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "'%s' à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¾ à¤à¥ à¤à¤° निरà¥à¤¦à¥à¤¶à¤¿à¤à¤¾ '%s' नहà¥à¤ हà¥, à¤
नदà¥à¤à¤¾ à¤à¤° रहा हà¥."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' बनानॠमà¥à¤ विफल: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "समà¥à¤¹ सà¥à¤à¥ पानॠमà¥à¤ विफल: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID बदलनॠमà¥à¤ विफल: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID बदलनॠमà¥à¤ विफल: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "रà¥à¤ à¤
धिà¤à¤¾à¤° सफलतापà¥à¤°à¥à¤µà¤ à¤à¥à¤¡à¤¼à¤¾."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "à¤à¤¸ पà¥à¤²à¥à¤à¤«à¥à¤°à¥à¤® पर à¤
समरà¥à¤¥à¤¿à¤¤ तà¤à¤¤à¥à¤° वà¥à¤¯à¤¾à¤ªà¤ विधि."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) विफल: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à¤à¤®à¤¾à¤à¤¡ लाà¤à¤¨ विशà¥à¤²à¥à¤·à¤£ मà¥à¤ विफल."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "हम '%s' समà¥à¤¹ मà¥à¤ हà¥à¤, à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ à¤à¥ à¤
नà¥à¤®à¤¤à¤¿ à¤à¥ साथ."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "हम '%s' समà¥à¤¹ मà¥à¤ हà¥à¤, वासà¥à¤¤à¤µà¤¿à¤ समय नियà¥à¤à¤¨ à¤à¥ à¤
नà¥à¤®à¤¤à¤¿ दà¥à¤¤à¥ हà¥à¤."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£ हमà¥à¤ दà¥à¤¤à¥ हà¥."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£ à¤
सà¥à¤µà¥à¤à¥à¤¤ à¤à¤°à¤¤à¥ हà¥."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit हमà¥à¤ दà¥à¤¤à¥ हॠवासà¥à¤¤à¤µà¤¿à¤ समय à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit सà¥à¤µà¥à¤à¥à¤¤ à¤à¤°à¤¤à¥ हॠवासà¥à¤¤à¤µà¤¿à¤ समय à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID रà¥à¤ à¤à¥ à¤à¤¹à¥à¤µà¤¾à¤¨ à¤à¤¿à¤¯à¤¾ à¤à¤° वासà¥à¤¤à¤µà¤¿à¤ समय/या à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ à¤à¥ à¤à¤¸ विनà¥à¤¯à¤¾à¤¸ मà¥à¤ "
-"निवà¥à¤¦à¤¨ à¤à¤¿à¤¯à¤¾ à¤à¤¯à¤¾ था. हालाà¤à¤à¤¿, हमà¥à¤ à¤à¤°à¥à¤°à¥ à¤
धिà¤à¤¾à¤° à¤à¤® हà¥:\n"
-"हम '%s' समà¥à¤¹ मà¥à¤ नहà¥à¤ हà¥, PolicyKit निवà¥à¤¦à¤¿à¤¤ à¤
धिà¤à¤¾à¤° हमà¥à¤ दà¥à¤¨à¥ सॠमना à¤à¤°à¤¤à¤¾ हॠà¤à¤° हम "
-"RLIMIT_NICE/RLIMIT_RTPRIO सà¤à¤¸à¤¾à¤§à¤¨ सà¥à¤®à¤¾ à¤à¥ बढ़ाना नहà¥à¤ हà¥.\n"
-"वासà¥à¤¤à¤µà¤¿à¤ समय/या à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ à¤à¥ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ à¤à¤à¤¿à¤¤ PolicyKit "
-"à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤¿à¤¤ à¤à¤°à¥à¤, या '%s' à¤à¤¾ सदसà¥à¤¯ बनà¥à¤, RLIMIT_NICE/RLIMIT_RTPRIO सà¤à¤¸à¤¾à¤§à¤¨ सà¥à¤®à¤¾ "
-"à¤à¥ à¤à¤¸ à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¾ à¤à¥ लिठबढ़ाà¤à¤."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"विनà¥à¤¯à¤¾à¤¸ मà¥à¤ à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ सà¤à¥à¤°à¤¿à¤¯ हॠलà¥à¤à¤¿à¤¨ नà¥à¤¤à¤¿ à¤à¥ दà¥à¤µà¤¾à¤°à¤¾ à¤
नà¥à¤®à¤¤à¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤ हà¥."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "सफलतापà¥à¤°à¥à¤µà¤ बढ़ा हà¥à¤ RLIMIT_RTPRIO"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO विफल: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE à¤à¥à¤¡à¤¼ रहा हà¥"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "विनà¥à¤¯à¤¾à¤¸ मà¥à¤ वासà¥à¤¤à¤µà¤¿à¤ समय नियà¥à¤à¤¨ लà¥à¤à¤¿à¤¨ नà¥à¤¤à¤¿ à¤à¥ दà¥à¤µà¤¾à¤°à¤¾ à¤
नà¥à¤®à¤¤à¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "डà¥à¤®à¥à¤¨ नहà¥à¤ à¤à¤¾à¤°à¥à¤¯à¤¶à¥à¤²"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "डà¥à¤®à¥à¤¨ बतà¥à¤° PID %u à¤à¤² रहा हà¥"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "डà¥à¤®à¥à¤¨ हà¤à¤¾à¤¨à¥ मà¥à¤ विफल: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr ""
"यह पà¥à¤°à¥à¤à¥à¤°à¤¾à¤® बतà¥à¤° रà¥à¤ à¤à¤²à¤¾à¤¨à¥ à¤à¥ लिठà¤à¤à¥à¤à¤¿à¤¤ नहà¥à¤ हॠ(unless --system is specified)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "रà¥à¤ à¤
धिà¤à¤¾à¤° à¤à¤°à¥à¤°à¥."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start not supported for system instances."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "तà¤à¤¤à¥à¤° मà¥à¤¡ मà¥à¤ à¤à¤² रहा हà¥, लà¥à¤à¤¿à¤¨ --disallow-exit सà¥à¤ नहà¥à¤!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "तà¤à¤¤à¥à¤° मà¥à¤¡ मà¥à¤ à¤à¤² रहा हà¥, लà¥à¤à¤¿à¤¨ --disallow-module-loading सà¥à¤ नहà¥à¤!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "तà¤à¤¤à¥à¤° मà¥à¤¡ मà¥à¤ à¤à¤² रहा हà¥, SHM मà¥à¤¡ बाधà¥à¤¯ रà¥à¤ª सॠनिषà¥à¤à¥à¤°à¤¿à¤¯!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "तà¤à¤¤à¥à¤° मà¥à¤¡ मà¥à¤ à¤à¤² रहा हà¥, निà¤à¤¾à¤¸ निषà¥à¤à¥à¤°à¤¿à¤¯ समय बाधà¥à¤¯ रà¥à¤ª सॠनिषà¥à¤à¥à¤°à¤¿à¤¯!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio पानॠमà¥à¤ विफल."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "पाà¤à¤ª विफल: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() विफल: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() विफल: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "डà¥à¤®à¥à¤¨ à¤à¤°à¤à¤ विफल."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "डà¥à¤®à¥à¤¨ à¤à¤°à¤à¤ सफल."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "यह पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ %s हà¥."
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Compilation host: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Compilation CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "मà¥à¤à¤¬à¤¾à¤¨ पर à¤à¤² रहा हà¥: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPU पाया."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "पà¥à¤·à¥à¤ à¤à¤à¤¾à¤° %lu बाà¤à¤ हà¥."
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "वà¥à¤²à¤à¥à¤°à¤¿à¤à¤¡ समरà¥à¤¥à¤¨ सॠà¤à¤à¤ªà¤¾à¤à¤²: हाà¤"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "वà¥à¤²à¤à¥à¤°à¤¿à¤à¤¡ समरà¥à¤¥à¤¨ सॠà¤à¤à¤ªà¤¾à¤à¤²: नहà¥à¤"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "वà¥à¤²à¤à¥à¤°à¤¿à¤à¤¡ विधि मà¥à¤ à¤à¤² रहा हà¥: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "à¤
नà¥à¤à¥à¤²à¤¿à¤¤ बिलà¥à¤¡: हाà¤"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "à¤
नà¥à¤à¥à¤²à¤¿à¤¤ बिलà¥à¤¡: नहà¥à¤"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG परिà¤à¤¾à¤·à¤¿à¤¤, सà¤à¥ निषà¥à¤à¥à¤°à¤¿à¤¯."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH परिà¤à¤¾à¤·à¤¿à¤¤, à¤à¥à¤µ तà¥à¤ पथ à¤à¤¸à¤°à¥à¤ निषà¥à¤à¥à¤°à¤¿à¤¯."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "सà¤à¥ à¤à¤¸à¤°à¥à¤ सà¤à¥à¤·à¤®."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "मशà¥à¤¨ ID पानॠमà¥à¤ विफल"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "मशà¥à¤¨ ID %s हà¥."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "मशà¥à¤¨ ID %s हà¥."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "रनà¤à¤¾à¤à¤® निरà¥à¤¦à¥à¤¶à¤¿à¤à¤¾ %s à¤à¤¾ पà¥à¤°à¤¯à¥à¤ à¤à¤° रहा हà¥."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "सà¥à¤à¥à¤ निरà¥à¤¦à¥à¤¶à¤¿à¤à¤¾ %s à¤à¤¾ पà¥à¤°à¤¯à¥à¤ à¤à¤° रहा हà¥."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "तà¤à¤¤à¥à¤° मà¥à¤¡ मà¥à¤ à¤à¤² रहा हà¥: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -459,42 +340,42 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() विफल."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "ताà¤à¤¼à¤¾ à¤à¤à¥à¤ विà¤à¥à¤¦à¤¨ à¤à¤¾à¤à¤®à¤° à¤à¤ªà¤²à¤¬à¥à¤§! à¤à¤¨à¤à¤¦ लà¥à¤!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr ""
"à¤à¤ªà¤à¤¾ à¤à¤°à¥à¤¨à¥à¤² बà¥à¤°à¥ सà¥à¤¥à¤¿à¤¤à¤¿ मà¥à¤ हà¥! सलाह हॠà¤à¤¿ à¤à¤à¥à¤ विà¤à¥à¤¦à¤¨ यà¥à¤à¥à¤¤ लिनà¤à¥à¤¸ सà¤à¥à¤°à¤¿à¤¯ à¤à¤¿à¤¯à¤¾ à¤à¤¾à¤¨à¤¾ à¤à¤¾à¤¹à¤¿à¤!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() विफल."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "डà¥à¤®à¥à¤¨ à¤à¤°à¤à¤ à¤à¤°à¤¨à¥ मà¥à¤ विफल."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "बिना लà¥à¤¡ मà¥à¤¡à¥à¤¯à¥à¤² à¤à¥ डà¥à¤®à¥à¤¨ à¤à¤°à¤à¤, à¤à¤¾à¤® à¤à¤°à¤¨à¥ सॠà¤
सà¥à¤µà¥à¤à¤¾à¤° à¤à¤° रहा हà¥."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "डà¥à¤®à¥à¤¨ à¤à¤°à¤à¤à¤¨ पà¥à¤°à¥à¤£."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "डà¥à¤®à¥à¤¨ बनà¥à¤¦ à¤à¤¿à¤¯à¤¾ à¤à¤¾à¤¨à¤¾ à¤à¤°à¤à¤."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "डà¥à¤®à¥à¤¨ à¤
वरà¥à¤§à¤¿à¤¤."
@@ -829,14 +710,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### विनà¥à¤¯à¤¾à¤¸ फ़ाà¤à¤² सॠपढ़à¥à¤: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "रà¥à¤ à¤
धिà¤à¤¾à¤° à¤à¥à¤¡à¤¼ रहा हà¥."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "CAP_SYS_NICE मà¥à¤ सà¥à¤®à¤¿à¤¤ à¤à¥à¤·à¤®à¤¤à¤¾ सफलतापà¥à¤°à¥à¤µà¤."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ धà¥à¤µà¤¨à¤¿ तà¤à¤¤à¥à¤°"
@@ -845,24 +722,6 @@ msgstr "पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ धà¥à¤µà¤¨à¤¿ तà¤à¤¤à¥à¤°"
msgid "Start the PulseAudio Sound System"
msgstr "पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ धà¥à¤µà¤¨à¤¿ तà¤à¤¤à¥à¤° पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤°à¥à¤"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
नà¥à¤¸à¥à¤à¤¨ (negative Unix nice level) PulseAudio डà¥à¤®à¥à¤¨ à¤à¥ लिà¤"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ डà¥à¤®à¥à¤¨ à¤à¥ लिठवासà¥à¤¤à¤µà¤¿à¤ समय नियà¥à¤à¤¨"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "तà¤à¤¤à¥à¤° नà¥à¤¤à¤¿ PulseAudio à¤à¥ रà¥à¤à¤¤à¥ हॠà¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
नà¥à¤¸à¥à¤à¤¨ à¤à¥ लिà¤."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "तà¤à¤¤à¥à¤° नà¥à¤¤à¤¿ PulseAudio à¤à¥ वासà¥à¤¤à¤µà¤¿à¤ समय à¤
नà¥à¤¸à¥à¤à¤¨ पानॠसॠरà¥à¤à¤¤à¥ हà¥."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "मà¥à¤¨à¥"
@@ -1235,183 +1094,187 @@ msgstr "à¤à¥à¤à¥ à¤à¤à¤à¤¡à¤¼à¤¾ à¤à¥ विशà¥à¤²à¥à¤·à¤£ मà¥
msgid "Failed to open configuration file '%s': %s"
msgstr "विनà¥à¤¯à¤¾à¤¸ फ़ाà¤à¤² '%s' à¤à¥à¤²à¤¨à¥ मà¥à¤ विफल: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à¤à¥à¤ à¤à¥à¤à¥ नहà¥à¤ लà¥à¤¡ à¤à¤¿à¤¯à¤¾ à¤à¤¯à¤¾. à¤à¤¸à¤à¥ बिना à¤à¤¨à¥à¤à¥à¤ à¤à¤°à¤¨à¥ à¤à¥ à¤à¥à¤¶à¤¿à¤¶ à¤à¤° रहा हà¥à¤."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à¤
à¤à¥à¤à¤¾à¤¤ विसà¥à¤¤à¤¾à¤° '%s' à¤à¥ लिठसà¤à¤¦à¥à¤¶ पà¥à¤°à¤¾à¤ªà¥à¤¤"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Failed to drain stream: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "पà¥à¤²à¥à¤¬à¥à¤ सà¥à¤à¥à¤°à¥à¤® à¤à¤¤à¥à¤®.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "सरà¥à¤µà¤° मà¥à¤ à¤à¤¨à¥à¤à¥à¤¶à¤¨ लॠà¤à¤¾ रहा हà¥.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() विफल: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() विफल: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() विफल: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "सà¥à¤à¥à¤°à¥à¤® सफलतापà¥à¤°à¥à¤µà¤ निरà¥à¤®à¤¿à¤¤.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() विफल: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "बफ़र मà¥à¤à¥à¤°à¤¿à¤à¥à¤¸: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "बफ़र मà¥à¤à¥à¤°à¤¿à¤à¥à¤¸: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "नमà¥à¤¨à¤¾ सà¥à¤ªà¥à¤ '%s' à¤à¤¾ पà¥à¤°à¤¯à¥à¤, à¤à¥à¤¨à¤² मà¥à¤ª '%s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "यà¥à¤à¥à¤¤à¤¿ %s (%u, %ssuspended) सॠà¤à¤¨à¥à¤à¥à¤à¥à¤¡.\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "सà¥à¤à¥à¤°à¥à¤® तà¥à¤°à¥à¤à¤¿: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® यà¥à¤à¥à¤¤à¤¿ सà¥à¤¥à¤à¤¿à¤¤.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® यà¥à¤à¥à¤¤à¤¿ पà¥à¤¨à¤°à¥à¤¬à¤¹à¤¾à¤².%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® à¤
à¤à¤¡à¤°à¤°à¤¨.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® à¤à¤µà¤°à¤°à¤¨.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® à¤à¤°à¤à¤.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® यà¥à¤à¥à¤¤à¤¿ %s (%u, %ssuspended).%s मà¥à¤ à¤à¤¿à¤¸à¤à¤¾à¤¯à¤¾ à¤à¤¯à¤¾ \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "नहà¥à¤ "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® बफ़र à¤à¥à¤£ परिवरà¥à¤¤à¤¿à¤¤.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "à¤à¤¨à¥à¤à¥à¤¶à¤¨ सà¥à¤¥à¤¾à¤ªà¤¿à¤¤.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() विफल: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() विफल: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() विफल: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "à¤à¤¨à¥à¤à¥à¤¶à¤¨ विफल.%s \n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF पाया.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() विफल: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF पाया.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() विफल: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "सà¤à¤à¥à¤¤ पाया, निà¤à¤² रहा हà¥.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Failed to get latency: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "समय: %0.3f sec; लà¥à¤à¥à¤à¤¸à¥: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() विफल: %s\n"
#: ../src/utils/pacat.c:605
@@ -1533,34 +1396,34 @@ msgstr ""
"लिबपलà¥à¤¸ %s à¤à¥ साथ à¤à¤à¤ªà¤¾à¤à¤²\n"
"लिबपलà¥à¤¸ %s à¤à¥ साथ लिà¤à¤\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à¤
वà¥à¤§ à¤à¥à¤¨à¤² मानà¤à¤¿à¤¤à¥à¤° '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "à¤
वà¥à¤§ पà¥à¤¨à¤ पà¥à¤°à¤¤à¤¿à¤¦à¤°à¥à¤¶ विधि '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à¤
वà¥à¤§ à¤à¥à¤¨à¤² मानà¤à¤¿à¤¤à¥à¤° '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à¤
वà¥à¤§ लà¥à¤à¥à¤à¤¸à¥ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à¤
वà¥à¤§ पà¥à¤°à¤à¥à¤°à¤¿à¤¯à¤¾ समय विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "à¤
वà¥à¤§ पà¥à¤¨à¤ पà¥à¤°à¤¤à¤¿à¤¦à¤°à¥à¤¶ विधि '%s'."
#: ../src/utils/pacat.c:878
@@ -1569,60 +1432,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à¤
वà¥à¤§ नमà¥à¤¨à¤¾ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "à¤à¤ वितरà¥à¤.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "नमà¥à¤¨à¤¾ सà¥à¤à¤¨à¤¾ पानॠमà¥à¤ विफल: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "धà¥à¤µà¤¨à¤¿ फ़ाà¤à¤² à¤à¥à¤²à¤¨à¥ मà¥à¤ विफल.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "%s सà¥à¤à¥à¤°à¥à¤® à¤à¥ à¤à¤¿à¤¸à¥ नमà¥à¤¨à¤¾ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ '%s' à¤à¥ साथ à¤à¥à¤² रहा हà¥.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "नमà¥à¤¨à¤¾ सà¥à¤à¤¨à¤¾ पानॠमà¥à¤ विफल: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "%s सà¥à¤à¥à¤°à¥à¤® à¤à¥ à¤à¤¿à¤¸à¥ नमà¥à¤¨à¤¾ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ '%s' à¤à¥ साथ à¤à¥à¤² रहा हà¥.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à¤à¥à¤¨à¤² मानà¤à¤¿à¤¤à¥à¤° नमà¥à¤¨à¤¾ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ à¤à¥ मà¥à¤² नहà¥à¤ à¤à¤¾à¤¤à¤¾\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "%s सà¥à¤à¥à¤°à¥à¤® à¤à¥ à¤à¤¿à¤¸à¥ नमà¥à¤¨à¤¾ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ '%s' à¤à¥ साथ à¤à¥à¤² रहा हà¥.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "%s सà¥à¤à¥à¤°à¥à¤® à¤à¥ à¤à¤¿à¤¸à¥ नमà¥à¤¨à¤¾ विनिरà¥à¤¦à¤¿à¤·à¥à¤à¤¤à¤¾ '%s' à¤à¥ साथ à¤à¥à¤² रहा हà¥.\n"
#: ../src/utils/pacat.c:1006
@@ -1633,35 +1502,34 @@ msgstr "रिà¤à¤¾à¤°à¥à¤¡à¤¿à¤à¤"
msgid "playback"
msgstr "पà¥à¤²à¥à¤¬à¥à¤"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() विफल.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() विफल.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() विफल.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() विफल: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() विफल.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() विफल.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() विफल.\n"
#: ../src/utils/pasuspender.c:81
@@ -1689,6 +1557,11 @@ msgstr "पà¥à¤¨à¤°à¥à¤¬à¤¹à¤¾à¤²à¥ मà¥à¤ विफल: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "à¤à¥à¤¤à¤¾à¤µà¤¨à¥: धà¥à¤µà¤¨à¤¿ सरà¥à¤µà¤° सà¥à¤¥à¤¾à¤¨à¥à¤¯ नहà¥à¤ हà¥, सà¥à¤¥à¤à¤¿à¤¤ नहà¥à¤ à¤à¤° रहा हà¥.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "à¤à¤¨à¥à¤à¥à¤¶à¤¨ विफल.%s \n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1729,6 +1602,21 @@ msgstr ""
"लिबपलà¥à¤¸ %s सॠà¤à¤à¤ªà¤¾à¤à¤²\n"
"लिबपलà¥à¤¸ %s सॠà¤à¤¡à¤¼à¥à¤¬à¤¦à¥à¤§\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() विफल.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() विफल.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() विफल.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2143,6 +2031,11 @@ msgstr ""
"लिबपलà¥à¤¸ %s सॠà¤à¤à¤ªà¤¾à¤à¤²\n"
"लिबपलà¥à¤¸ %s सॠà¤à¤¡à¤¼à¥à¤¬à¤¦à¥à¤§\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à¤
वà¥à¤§ à¤à¥à¤¨à¤² मानà¤à¤¿à¤¤à¥à¤° '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "लà¥à¤¡ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¤¿à¤¸à¥ नमà¥à¤¨à¤¾ फ़ाà¤à¤² निरà¥à¤¦à¤¿à¤·à¥à¤ à¤à¤°à¥à¤\n"
@@ -2151,6 +2044,11 @@ msgstr "लà¥à¤¡ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¤¿à¤¸à¥ नमà¥à¤¨à¤¾ फ
msgid "Failed to open sound file.\n"
msgstr "धà¥à¤µà¤¨à¤¿ फ़ाà¤à¤² à¤à¥à¤²à¤¨à¥ मà¥à¤ विफल.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "नमà¥à¤¨à¤¾ सà¥à¤à¤¨à¤¾ पानॠमà¥à¤ विफल: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2214,11 +2112,6 @@ msgstr "à¤à¤ªà¤à¥ à¤à¤¿à¤¸à¥ à¤à¤¾à¤°à¥à¤¡ नाम/सà¥à¤à¥ à¤à¤°
msgid "No valid command specified.\n"
msgstr "à¤à¥à¤ वà¥à¤§ à¤à¤®à¤¾à¤à¤¡ निरà¥à¤¦à¤¿à¤·à¥à¤ नहà¥à¤.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() विफल: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2335,11 +2228,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn लà¥à¤ à¤à¥ पहà¥à¤à¤ नहà¥à¤ लॠसà¤à¤¤à¤¾ हà¥."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2356,7 +2249,7 @@ msgstr ""
"हमà¥à¤ POLLOUT सà¥à¤ à¤à¥ साथ तà¥à¤¯à¤¾à¤° à¤à¤¿à¤¯à¤¾ à¤à¤¯à¤¾ हॠ-- हालाà¤à¤à¤¿ परवरà¥à¤¤à¥ snd_pcm_avail() नॠ0 या "
"दà¥à¤¸à¤°à¤¾ मान < min_avail दिया."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2374,15 +2267,15 @@ msgstr ""
"दà¥à¤¸à¤°à¤¾ मान < min_avail दिया."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "बà¤à¤¦"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "à¤à¤à¥à¤ विशà¥à¤µà¤¸à¤¨à¥à¤¯à¤¤à¤¾à¤¯à¥à¤à¥à¤¤à¤¿ पà¥à¤²à¥à¤¬à¥à¤ (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "à¤à¥à¤²à¤¿à¤«à¥à¤¨à¥ डà¥à¤¯à¥à¤ªà¥à¤²à¥à¤à¥à¤¸ (HSP/HFP)"
@@ -2390,6 +2283,128 @@ msgstr "à¤à¥à¤²à¤¿à¤«à¥à¤¨à¥ डà¥à¤¯à¥à¤ªà¥à¤²à¥à¤à¥à¤¸ (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ धà¥à¤µà¤¨à¤¿ सरà¥à¤µà¤°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "तà¤à¤¤à¥à¤° बस सॠà¤à¤¨à¥à¤à¥à¤ नहà¥à¤ हॠसà¤à¤¤à¤¾ हà¥: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID सॠà¤à¥à¤²à¤° पानॠमà¥à¤ विफल: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "UID à¤à¥ à¤à¥à¤²à¤° वसà¥à¤¤à¥ पर सà¥à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK सतà¥à¤° पानॠमà¥à¤ विफल."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "UID à¤à¥ सतà¥à¤° वसà¥à¤¤à¥ पर सà¥à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction à¤à¤¬à¤à¤à¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id सà¥à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext à¤à¤¬à¤à¤à¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext à¤à¤°à¤à¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥.: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "निरà¥à¤§à¤¾à¤°à¤¿à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हॠà¤à¤¿ à¤à¥à¤¯à¤¾ à¤à¥à¤²à¤° à¤
धिà¤à¥à¤¤ हà¥: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "à¤
धिà¤à¤¾à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤ à¤à¤° सà¤à¤¤à¤¾ हà¥: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit नॠ'%s' à¤à¥ साथ à¤
नà¥à¤à¥à¤°à¤¿à¤¯à¤¾ à¤à¤¿à¤¯à¤¾"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
नà¥à¤¸à¥à¤à¤¨ (negative Unix nice level) PulseAudio डà¥à¤®à¥à¤¨ à¤à¥ लिà¤"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "पलà¥à¤¸à¤à¤¡à¤¿à¤¯à¥ डà¥à¤®à¥à¤¨ à¤à¥ लिठवासà¥à¤¤à¤µà¤¿à¤ समय नियà¥à¤à¤¨"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr "तà¤à¤¤à¥à¤° नà¥à¤¤à¤¿ PulseAudio à¤à¥ रà¥à¤à¤¤à¥ हॠà¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
नà¥à¤¸à¥à¤à¤¨ à¤à¥ लिà¤."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "तà¤à¤¤à¥à¤° नà¥à¤¤à¤¿ PulseAudio à¤à¥ वासà¥à¤¤à¤µà¤¿à¤ समय à¤
नà¥à¤¸à¥à¤à¤¨ पानॠसॠरà¥à¤à¤¤à¥ हà¥."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() विफल: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() विफल: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "हम '%s' समà¥à¤¹ मà¥à¤ हà¥à¤, à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ à¤à¥ à¤
नà¥à¤®à¤¤à¤¿ à¤à¥ साथ."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "हम '%s' समà¥à¤¹ मà¥à¤ हà¥à¤, वासà¥à¤¤à¤µà¤¿à¤ समय नियà¥à¤à¤¨ à¤à¥ à¤
नà¥à¤®à¤¤à¤¿ दà¥à¤¤à¥ हà¥à¤."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£ हमà¥à¤ दà¥à¤¤à¥ हà¥."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£ à¤
सà¥à¤µà¥à¤à¥à¤¤ à¤à¤°à¤¤à¥ हà¥."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit हमà¥à¤ दà¥à¤¤à¥ हॠवासà¥à¤¤à¤µà¤¿à¤ समय à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit सà¥à¤µà¥à¤à¥à¤¤ à¤à¤°à¤¤à¥ हॠवासà¥à¤¤à¤µà¤¿à¤ समय à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤£."
+
+#~ 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 ""
+#~ "SUID रà¥à¤ à¤à¥ à¤à¤¹à¥à¤µà¤¾à¤¨ à¤à¤¿à¤¯à¤¾ à¤à¤° वासà¥à¤¤à¤µà¤¿à¤ समय/या à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ à¤à¥ à¤à¤¸ विनà¥à¤¯à¤¾à¤¸ "
+#~ "मà¥à¤ निवà¥à¤¦à¤¨ à¤à¤¿à¤¯à¤¾ à¤à¤¯à¤¾ था. हालाà¤à¤à¤¿, हमà¥à¤ à¤à¤°à¥à¤°à¥ à¤
धिà¤à¤¾à¤° à¤à¤® हà¥:\n"
+#~ "हम '%s' समà¥à¤¹ मà¥à¤ नहà¥à¤ हà¥, PolicyKit निवà¥à¤¦à¤¿à¤¤ à¤
धिà¤à¤¾à¤° हमà¥à¤ दà¥à¤¨à¥ सॠमना à¤à¤°à¤¤à¤¾ हॠà¤à¤° हम "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO सà¤à¤¸à¤¾à¤§à¤¨ सà¥à¤®à¤¾ à¤à¥ बढ़ाना नहà¥à¤ हà¥.\n"
+#~ "वासà¥à¤¤à¤µà¤¿à¤ समय/या à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ à¤à¥ सà¤à¥à¤°à¤¿à¤¯ à¤à¤°à¤¨à¥ à¤à¥ लिठà¤à¥à¤ªà¤¯à¤¾ à¤à¤à¤¿à¤¤ "
+#~ "PolicyKit à¤
धिà¤à¤¾à¤° à¤
धिà¤à¥à¤°à¤¹à¤¿à¤¤ à¤à¤°à¥à¤, या '%s' à¤à¤¾ सदसà¥à¤¯ बनà¥à¤, RLIMIT_NICE/"
+#~ "RLIMIT_RTPRIO सà¤à¤¸à¤¾à¤§à¤¨ सà¥à¤®à¤¾ à¤à¥ à¤à¤¸ à¤à¤ªà¤¯à¥à¤à¥à¤¤à¤¾ à¤à¥ लिठबढ़ाà¤à¤."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "विनà¥à¤¯à¤¾à¤¸ मà¥à¤ à¤à¤à¥à¤ पà¥à¤°à¤¾à¤¥à¤®à¤¿à¤à¤¤à¤¾ नियà¥à¤à¤¨ सà¤à¥à¤°à¤¿à¤¯ हॠलà¥à¤à¤¿à¤¨ नà¥à¤¤à¤¿ à¤à¥ दà¥à¤µà¤¾à¤°à¤¾ à¤
नà¥à¤®à¤¤à¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤ हà¥."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "सफलतापà¥à¤°à¥à¤µà¤ बढ़ा हà¥à¤ RLIMIT_RTPRIO"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO विफल: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE à¤à¥à¤¡à¤¼ रहा हà¥"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "विनà¥à¤¯à¤¾à¤¸ मà¥à¤ वासà¥à¤¤à¤µà¤¿à¤ समय नियà¥à¤à¤¨ लà¥à¤à¤¿à¤¨ नà¥à¤¤à¤¿ à¤à¥ दà¥à¤µà¤¾à¤°à¤¾ à¤
नà¥à¤®à¤¤à¤¿ पà¥à¤°à¤¾à¤ªà¥à¤¤ नहà¥à¤."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "CAP_SYS_NICE मà¥à¤ सà¥à¤®à¤¿à¤¤ à¤à¥à¤·à¤®à¤¤à¤¾ सफलतापà¥à¤°à¥à¤µà¤."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() विफल.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à¤à¤¨à¤¾à¤²à¥à¤ मà¥à¤¨à¥"
diff --git a/po/it.po b/po/it.po
index 3ecca4e4..edb1fd59 100644
--- a/po/it.po
+++ b/po/it.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-20 22:34+0200\n"
"Last-Translator: mario_santagiuliana \n"
"Language-Team: Italian \n"
@@ -19,7 +19,12 @@ msgstr ""
"X-Generator: Lokalize 0.3\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -31,7 +36,7 @@ msgstr ""
"Molto probabilmente si tratta di un bug nel driver ALSA «%s». Segnalare "
"questo problema agli sviluppatori ALSA."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -43,7 +48,7 @@ msgstr ""
"Molto probabilmente si tratta di un bug nel driver ALSA «%s». Segnalare "
"questo problema agli sviluppatori ALSA."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -69,7 +74,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Audio interno"
@@ -89,222 +94,93 @@ msgstr "Allocazione del nuovo loader dl non riuscita."
msgid "Failed to add bind-now-loader."
msgstr "Aggiunta di bind-now-loader non riuscita."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Impossibile effettuare la connessione al bus di sistema: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Impossibile ottenere il chiamante dal PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Impossibile impostare l'UID sull'oggetto chiamante."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Recupero della sessione CK non riuscito."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Impossibile impostare l'UID sull'oggetto sessione."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Impossibile allocare PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Impossibile impostare action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Impossibile allocare PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Impossibile inizializzare PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Impossibile determinare se il chiamante è autorizzato: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Impossibile ottenere l'autorizzazione: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit ha risposto con \"%s\""
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Ottenuto il segnale %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Uscita."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Ricerca dell'utente \"%s\" non riuscita."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Ricerca del gruppo \"%s\" non riuscita."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Trovato l'utente \"%s\" (UID %lu) e il gruppo \"%s\" (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "Il GID dell'utente \"%s\" e del gruppo \"%s\" non corrispondono."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "La directory home dell'utente \"%s\" non è \"%s\", ignorato."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Creazione di \"%s\" non riuscita: %s"
# group list ????
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Cambio dell'elenco di gruppo non riuscito: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Cambio di GID non riuscito: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Cambio di UID non riuscito: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Privilegi di root abbandonati con successo."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Modalità \"system wide\" non supportata su questa piattaforma."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) non riuscita: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Analisi della riga di comando non riuscita."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "Attualmente nel gruppo \"%s\", che consente scheduling high-priority."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "Attualmente nel gruppo \"%s\", che consente scheduling real-time."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "Privilegi acquire-high-priority assegnati da PolicyKit."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "Privilegi acquire-high-priority rifiutati da PolicyKit."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "Privilegi acquire-real-time assegnati da PolicyKit."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "Privilegi acquire-real-time rifiutati da PolicyKit."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"Lo SUID root e lo scheduling real-time o high-priority erano richiesti nella "
-"configurazione, ma mancano i privilegi necessari:\n"
-"non si è nel gruppo «%s», PolicyKit non consente di acquisire i privilegi "
-"richiesti e non è possibile incrementare i limiti RLIMIT_NICE/RLIMIT_RTPRIO "
-"della risorsa.\n"
-"Per abilitare lo scheduling real-time/high-priority, acquisire i privilegi "
-"PolicyKit appropriati, diventare un membro di «%s» oppure incrementare i "
-"limiti RLIMIT_NICE/RLIMIT_RTPRIO della risorsa per questo utente."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Scheduling high-priority abilitato nella configurazione, ma non ammesso "
-"dalla politica."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "Incremento di RLIMIT_RTPRIO riuscito"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO non riuscito: %s"
-
-# abbandono??
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Abbandono del CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Scheduling real-time abilitato nella configurazione, ma non ammesso dalla "
-"politica."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Demone non in esecuzione"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Demone in esecuzione con PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Terminazione del demone non riuscita: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -312,158 +188,158 @@ msgstr ""
"Questo programma non è pensato per essere eseguito come root (a meno di "
"specificare --system)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Richiesti privilegi di root."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start non supportato per le istanze di sistema."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "In esecuzione in modalità sistema, ma --disallow-exit non impostato."
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"In esecuzione in modalità sistema, ma --disallow-module-loading non "
"impostato."
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
"In esecuzione in modalità sistema, disabilitata in modo forzoso la modalità "
"SHM."
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"In esecuzione in modalità sistema, disabilitato in modo forzoso il tempo di "
"uscita per inattività ."
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Acquisizione di STDIO non riuscita."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe non riuscita: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() non riuscita: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() non riuscita: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Avvio del demone non riuscito."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Avvio del demone riuscito."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Questo è PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Host di compilazione: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS di compilazione: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "In esecuzione sull'host: %s"
# evviva il rispetto della l10n!!!
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Trovate %u CPU."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "La dimensione di pagina è %lu byte"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Compilato con supporto a Valgrind: sì"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Compilato con supporto a Valgrind: no"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "In esecuzione in modalità valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Build ottimizzata: sì"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Build ottimizzata: no"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definito, tutte le dichiarazioni sono disabilitate."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
"FASTPATH definito, solo le dichiarazioni veloci di path sono disabilitate."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Tutte le dichiarazioni sono abilitate."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Recupero dell'ID della macchina non riuscito"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "L'ID della macchina è %s"
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "L'ID della macchina è %s"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "In uso directory di runtime %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "In uso directory di stato %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "In esecuzione in modalità sistema: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -473,17 +349,17 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() non riuscita."
# io mi domando e dico..... mah!
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Disponibili timer high-resolution freschi freschi! Buon appetito!"
# $REPEAT_PREVIOUS_COMMENT_HERE
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -491,27 +367,27 @@ msgstr ""
"Hey, questo kernel è andato a male! Lo chef oggi raccomanda Linux con i "
"timer high-resolution abilitati!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() non riuscita."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Inizializzazione del demone non riuscita."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Avvio del demone senza alcun modulo caricato, rifiuta di lavorare."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Completato l'avvio del demone."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Iniziato l'arresto del demone."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Demone terminato."
@@ -881,14 +757,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lettura dal file di configurazione: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Abbandono dei privilegi di root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "Limitazione delle capacità a CAP_SYS_NICE riuscita."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "Sistema sonoro PulseAudio"
@@ -897,30 +769,6 @@ msgstr "Sistema sonoro PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Avvia il sistema sonoro PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Scheduling high-priority (valori negativi di \"nice\") per il demone "
-"PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Scheduling realt-time per il demone PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"La politica di sistema previene PulseAudio dall'ottenere lo scheduling high-"
-"priority."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"La politica di sistema previene PulseAudio dall'ottenere lo scheduling real-"
-"time."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1295,186 +1143,190 @@ msgstr "Analisi dei dati cookie non riuscita"
msgid "Failed to open configuration file '%s': %s"
msgstr "Apertura del file di configurazione \"%s\" non riuscita: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Nessun cookie caricato. Tentativo di connettersi senza."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Ricevuto messaggio per l'estensione sconosciuta \"%s\""
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Svuotamento dello stream non riuscito: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Stream di riproduzione svuotato.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Svuotamento della connessione sul server.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() non riuscita: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() non riuscita: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() non riuscita: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Creazione dello stream riuscita.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() non riuscita: %s\n"
# maxlength, fragsize e gli altri non so se vanno tradotti...
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Metriche del buffer: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
# maxlength e fragsize non so se vanno tradotti...
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Metriche del buffer: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "In uso specifica di campionamento \"%s\", mappa di canali \"%s\".\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "Connesso al device %s (%u, %ssospeso).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Errore di stream: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "Device stream sospeso.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "Device stream ripristinato.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Underrun dello stream.%s\n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Overrun dello stream.%s\n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Stream avviato.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Stream spostato sul device %s (%u, %ssospeso).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "non "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "Attributi del buffer di stream cambiati.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Connessione stabilita.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() non riuscita: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() non riuscita: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() non riuscita: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Connessione non riuscita: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Ricevuto EOF.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() non riuscita: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "Ricevuto EOF.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() non riuscita: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Ricevuto il segnale, uscita.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Recupero della latenza non riuscito: %s\n"
# dubbio: tempo o durata??
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Tempo: %0.3f sec; Latenza: %0.0f microsec. \\r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() non riuscita: %s\n"
#: ../src/utils/pacat.c:605
@@ -1608,35 +1460,35 @@ msgstr ""
"Compilato con libpulse %s\n"
"Link eseguito con libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "Mappa di canali \"%s\" non valida\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "Metodo di ricampionamento \"%s\" non valido."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Mappa di canali \"%s\" non valida\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Specifica di latenza \"%s\" non valida\n"
# esecuzione???
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Specifica di tempo di elaborazione \"%s\" non valida\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Metodo di ricampionamento \"%s\" non valido."
#: ../src/utils/pacat.c:878
@@ -1645,60 +1497,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Specifica di campionamento non valida\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "Troppi argomenti.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Recupero delle informazioni del campione non riuscito: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Apertura del file audio non riuscita.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "Apertura di uno stream %s con specifica di campionamento \"%s\".\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "Recupero delle informazioni del campione non riuscito: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Apertura di uno stream %s con specifica di campionamento \"%s\".\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "La mappa di canali non corrisponde alla specifica di campionamento\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Apertura di uno stream %s con specifica di campionamento \"%s\".\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "Apertura di uno stream %s con specifica di campionamento \"%s\".\n"
#: ../src/utils/pacat.c:1006
@@ -1709,35 +1567,34 @@ msgstr "registrazione"
msgid "playback"
msgstr "riproduzione"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() non riuscita.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() non riuscita.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() non riuscita.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() non riuscita: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() non riuscita.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() non riuscita.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() non riuscita.\n"
#: ../src/utils/pasuspender.c:81
@@ -1766,6 +1623,11 @@ msgstr "Ripristino non riuscito: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "ATTENZIONE: server audio non locale, impossibile sospendere.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Connessione non riuscita: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1806,6 +1668,21 @@ msgstr ""
"Compilato con libpulse %s\n"
"Link eseguito con libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() non riuscita.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() non riuscita.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() non riuscita.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2234,6 +2111,11 @@ msgstr ""
"Compilato con libpulse %s\n"
"Link eseguito con libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Mappa di canali \"%s\" non valida\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Specificare un file campione da caricare\n"
@@ -2242,6 +2124,11 @@ msgstr "Specificare un file campione da caricare\n"
msgid "Failed to open sound file.\n"
msgstr "Apertura del file audio non riuscita.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Recupero delle informazioni del campione non riuscito: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2308,11 +2195,6 @@ msgstr ""
msgid "No valid command specified.\n"
msgstr "Nessun comando valido specificato.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() non riuscita: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2431,11 +2313,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Impossibile accedere al lock di autospawn."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2452,7 +2334,7 @@ msgstr ""
"Ci si è alzati con impostato POLLOUT -- come sempre un subsequent "
"snd_pcm_avail() ritorna 0 o un altro valore < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2470,15 +2352,15 @@ msgstr ""
"snd_pcm_avail() ritorna 0 o un altro valore < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Spento"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Playback ad alta fidabilità (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Doppino Telefonico (HSP/HFP)"
@@ -2486,6 +2368,140 @@ msgstr "Doppino Telefonico (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Server sonoro PulseAudio"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Impossibile effettuare la connessione al bus di sistema: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Impossibile ottenere il chiamante dal PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Impossibile impostare l'UID sull'oggetto chiamante."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Recupero della sessione CK non riuscito."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Impossibile impostare l'UID sull'oggetto sessione."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Impossibile allocare PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Impossibile impostare action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Impossibile allocare PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Impossibile inizializzare PolKitContext: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Impossibile determinare se il chiamante è autorizzato: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Impossibile ottenere l'autorizzazione: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit ha risposto con \"%s\""
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Scheduling high-priority (valori negativi di \"nice\") per il demone "
+#~ "PulseAudio"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Scheduling realt-time per il demone PulseAudio"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "La politica di sistema previene PulseAudio dall'ottenere lo scheduling "
+#~ "high-priority."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "La politica di sistema previene PulseAudio dall'ottenere lo scheduling "
+#~ "real-time."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() non riuscita: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() non riuscita: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Attualmente nel gruppo \"%s\", che consente scheduling high-priority."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "Attualmente nel gruppo \"%s\", che consente scheduling real-time."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "Privilegi acquire-high-priority assegnati da PolicyKit."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "Privilegi acquire-high-priority rifiutati da PolicyKit."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "Privilegi acquire-real-time assegnati da PolicyKit."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "Privilegi acquire-real-time rifiutati da PolicyKit."
+
+#~ 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 ""
+#~ "Lo SUID root e lo scheduling real-time o high-priority erano richiesti "
+#~ "nella configurazione, ma mancano i privilegi necessari:\n"
+#~ "non si è nel gruppo «%s», PolicyKit non consente di acquisire i privilegi "
+#~ "richiesti e non è possibile incrementare i limiti RLIMIT_NICE/"
+#~ "RLIMIT_RTPRIO della risorsa.\n"
+#~ "Per abilitare lo scheduling real-time/high-priority, acquisire i "
+#~ "privilegi PolicyKit appropriati, diventare un membro di «%s» oppure "
+#~ "incrementare i limiti RLIMIT_NICE/RLIMIT_RTPRIO della risorsa per questo "
+#~ "utente."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "Scheduling high-priority abilitato nella configurazione, ma non ammesso "
+#~ "dalla politica."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "Incremento di RLIMIT_RTPRIO riuscito"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO non riuscito: %s"
+
+# abbandono??
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Abbandono del CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Scheduling real-time abilitato nella configurazione, ma non ammesso dalla "
+#~ "politica."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Limitazione delle capacità a CAP_SYS_NICE riuscita."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() non riuscita.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Mono analogico"
diff --git a/po/kn.po b/po/kn.po
index b6636504..94ff0063 100644
--- a/po/kn.po
+++ b/po/kn.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-07 11:13+0530\n"
"Last-Translator: Shankar Prasad \n"
"Language-Team: Kannada \n"
@@ -17,7 +17,12 @@ msgstr ""
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -29,7 +34,7 @@ msgstr ""
"à²à²¦à²à³à²à³ ALSA à²à²¾à²²à² '%s' ದಲà³à²²à²¿à²¨ à²à²à²¦à³ ದà³à²·à²¦ à²à²¾à²°à²£à²µà²¿à²°à²¬à²¹à³à²¦à³. ದಯವಿà²à³à²à³à² ತà³à²à²¦à²°à³à²¯à²¨à³à²¨à³ ALSA "
"ವಿà²à²¸à²¨à²à²¾à²°à²° à²à²®à²¨à²à³à²à³ ತನà³à²¨à²¿."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -41,7 +46,7 @@ msgstr ""
"à²à²¦à²à³à²à³ ALSA à²à²¾à²²à² '%s' ದಲà³à²²à²¿à²¨ à²à²à²¦à³ ದà³à²·à²¦ à²à²¾à²°à²£à²µà²¿à²°à²¬à²¹à³à²¦à³. ದಯವಿà²à³à²à³à² ತà³à²à²¦à²°à³à²¯à²¨à³à²¨à³ ALSA "
"ವಿà²à²¸à²¨à²à²¾à²°à²° à²à²®à²¨à²à³à²à³ ತನà³à²¨à²¿."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -66,7 +71,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à²à²à²¤à²°à²¿à² à²à²¡à²¿à²¯à³"
@@ -86,220 +91,92 @@ msgstr "ಹà³à²¸ dl ಲà³à²¡à²°à³ à²
ನà³à²¨à³ ನಿಯà³à²à²¿à²¸à³à²µ
msgid "Failed to add bind-now-loader."
msgstr "bind-now-ಲà³à²¡à²°à³ à²
ನà³à²¨à³ ಸà³à²°à²¿à²¸à²²à²¾à²à²¿à²²à³à²²."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಬಸà³âà²à³ ಸà²à²ªà²°à³à²à²à³à²¡à²¿à²¸à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID à²à²à²¦ à²à²¾à²²à²°à³ à²
ನà³à²¨à³ ಪಡà³à²¯à²²à²¾à²à²¿à²²à³à²²: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "à²à²¾à²²à²°à³ ವಸà³à²¤à³à²µà²¿à²¨à²²à³à²²à²¿ UID à²
ನà³à²¨à³ à²
ಣಿà²à³à²³à²¿à²¸à²²à²¾à²à²²à²¿à²²à³à²²."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK à²
ಧಿವà³à²¶à²¨à²µà²¨à³à²¨à³ ಪಡà³à²¯à²²à²¾à²à²²à²¿à²²à³à²²."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "à²
ಧಿವà³à²¶à²¨à²¦ ವಸà³à²¤à³à²µà²¿à²¨à²²à³à²²à²¿ UID à²
ನà³à²¨à³ à²
ಣಿà²à³à²³à²¿à²¸à²²à²¾à²à²²à²¿à²²à³à²²."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction à²
ನà³à²¨à³ ನಿಯà³à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²²."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id à²
ನà³à²¨à³ ಹà³à²à²¦à²¿à²¸à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext à²
ನà³à²¨à³ ನಿಯà³à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²²."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext à²
ನà³à²¨à³ à²à²°à²à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²²: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "à²à²¾à²²à²°à³ à²
ಧà³à²à³à²¤à²µà²¾à²à²¿à²¦à³à²¦à³ à²à²à²¦à³ ನಿರà³à²§à²°à²¿à²¸à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "auth à²
ನà³à²¨à³ ಪಡà³à²¯à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit '%s' ನà³à²à²¦à²¿à²à³ ಪà³à²°à²¤à³à²¯à³à²¤à³à²¤à²°à²¿à²¸à²¿à²¦à³"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "%s ನಿà²à²¦ ಸà²à²à³à²¤à²µà³ ದà³à²°à³à²¤à²¿à²¦à³."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "ನಿರà³à²à²®à²¿à²¸à³à²¤à³à²¤à²¿à²¦à³."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "ಬಳà²à³à²¦à²¾à²° '%s' à²
ನà³à²¨à³ ಪತà³à²¤à³ ಮಾಡಲೠವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "à²à³à²à²ªà³ '%s' à²
ನà³à²¨à³ ಪತà³à²¤à³ ಮಾಡಲೠವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "ಬಳà²à³à²¦à²¾à²° '%s' (UID %lu) ಹಾà²à³ à²à³à²à²ªà³ '%s' (GID %lu) à²à²à²¡à³à²¬à²à²¦à²¿à²¦à³."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "ಬಳà²à³à²¦à²¾à²° '%s' ರ GID ಹಾà²à³ à²à³à²à²ªà³ '%s' ತಾಳà³à²¯à²¾à²à³à²¤à³à²¤à²¿à²²à³à²²."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "ಬಳà²à³à²¦à²¾à²° '%s' ರ ನà³à²²à³ à²à³à²¶à²µà³ '%s' à²à²à²¿à²²à³à²², à²à²²à²à³à²·à²¿à²¸à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' à²
ನà³à²¨à³ ರà²à²¿à²¸à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "à²à³à²à²ªà²¿à²¨ ಪà²à³à²à²¿à²¯à²¨à³à²¨à³ ಬದಲಾಯಿಸಲೠವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID à²
ನà³à²¨à³ ಬದಲಾಯಿಸಲೠವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID à²
ನà³à²¨à³ ಬದಲಾಯಿಸಲೠವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "ರà³à²à³ ಸವಲತà³à²¤à³à²à²³à²¨à³à²¨à³ ಯಶಸà³à²µà²¿à²¯à²¾à²à²¿ ಬಿಡಲಾà²à²¿à²¦à³."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "ವà³à²¯à²µà²¸à³à²¥à³à²¯à²¾à²¦à³à²¯à²à²¤à²¦ à²à³à²°à²®à²à³à²à³ ಠಪà³à²²à²¾à²à³âಫಾರà³à²®à²¿à²¨à²²à³à²²à²¿ ಬà³à²à²¬à²²à²µà²¿à²²à³à²²."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à²à²à³à²à²¾ ಸಾಲನà³à²¨à³ ಪಾರà³à²¸à³ ಮಾಡà³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"ನಾವೠ'%s' à²à³à²à²ªà²¿à²¨à²²à³à²²à²¿à²¦à³à²¦à³à²µà³, ಹಾà²à³ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à³à²µà³."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "ನಾವೠ'%s' à²à³à²à²ªà²¿à²¨à²²à³à²²à²¿à²¦à³à²¦à³à²µà³, ಹಾà²à³ ರಿಯಲà³-à²à³à²®à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à³à²µà³."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à²¦à³."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit ನಿರಾà²à²°à²¿à²¸à³à²¤à³à²¤à²¦à³."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "ರಿಯಲà³-à²à³à²®à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à²¦à³."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "ರಿಯಲà³-à²à³à²®à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit ನಿರಾà²à²°à²¿à²¸à³à²¤à³à²¤à²¦à³."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID ರà³à²à³ à²
ನà³à²¨à³ à²à²°à³à²¯à²²à²¾à²à²¿à²¦à³ ಹಾà²à³ ಸà²à²°à²à²¨à³à²¯à²²à³à²²à²¿ ರಿಯಲà³-à²à³à²²à³ ಹಾà²à³/à²
ಥವ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ "
-"ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³âà²à³ ಮನವಿ ಸಲà³à²²à²¿à²¸à²²à²¾à²à²¿à²¦à³. à²à²¦à²°à³, à²
à²à²¤à³à²¯à²µà²¿à²°à³à²µ ಸವಲತà³à²¤à³à²à²³à³ ನಮà³à²®à²²à³à²²à²¿à²²à³à²²:\n"
-"ನಾವೠ'%s' à²à³à²à²ªà²¿à²¨à²²à³à²²à²¿à²²à³à²²,ಮನವಿ ಸಲà³à²²à²¿à²¸à²²à²¾à²¦ ಸವಲತà³à²¤à³à²à²³à²¨à³à²¨à³ à²à²¦à²à²¿à²¸à²²à³ PolicyKit "
-"ನಿರಾà²à²°à²¿à²¸à²¿à²¦à³ ಹಾà²à³ RLIMIT_NICE/RLIMIT_RTPRIO ಸà²à²ªà²¨à³à²®à³à²²à²¦ ಮಿತಿಯನà³à²¨à³ ಹà³à²à³à²à²¿à²¸à²²à³ ನಮà³à²®à²¿à²à²¦ "
-"ಸಾಧà³à²¯à²µà²¿à²²à³à²².\n"
-"ರಿಯಲà³-à²à³à²²à³ ಹಾà²à³/à²
ಥವ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³â à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à³ ದಯವಿà²à³à²à³ ಸà³à²à³à²¤à²µà²¾à²¦ "
-"PolicyKit ಸವಲತà³à²¤à³à²à²³à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²¿, à²
ಥವ '%s' ನ ಸದಸà³à²¯à²°à²¾à²à²¿, à²
ಥವ ಠಬಳà²à³à²¦à²¾à²°à²¨à²¿à²à²¾à²à²¿ "
-"RLIMIT_NICE/RLIMIT_RTPRIO ಸà²à²ªà²¨à³à²®à³à²² ಮಿತಿಯನà³à²¨à³ ಹà³à²à³à²à²¿à²¸à²¿."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"ಸà²à²°à²à²¨à³à²¯à²²à³à²²à²¿ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³à²¯ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³ à²à²¦à²°à³ ಪಾಲಿಸಿಯಿà²à²¦ à²
ನà³à²®à²¤à²¿ "
-"à²à²²à³à²²."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO à²
ನà³à²¨à³ ಯಶಸà³à²µà²¿à²¯à²¾à²à²¿ ಹà³à²à³à²à²¿à²¸à²²à²¾à²à²¿à²¦à³"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE à²
ನà³à²¨à³ ಬಿಡಲಾà²à³à²¤à³à²¤à²¿à²¦à³"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"ಸà²à²°à²à²¨à³à²¯à²²à³à²²à²¿ ರಿಯಲà³-à²à³à²®à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³ à²à²¦à²°à³ ಪಾಲಿಸಿಯಿà²à²¦ à²
ನà³à²®à²¤à²¿ à²à²²à³à²²."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "ಡà³à²®à²¨à³ à²à²²à²¾à²¯à²¿à²¤à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "ಡà³à²®à²¨à³ PID %u ಯಾà²à²¿ à²à²²à²¾à²¯à²¿à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ಡà³à²®à²¨à³ à²
ನà³à²¨à³ à²à³à²²à³à²²à²²à³ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -307,158 +184,158 @@ msgstr ""
"ಠಪà³à²°à³à²à³à²°à²¾à²®à²¨à³à²¨à³ ರà³à²à³â à²à²à²¿ à²à²²à²¾à²¯à²¿à²¸à³à²µ à²à²¦à³à²§à³à²¶à²µà²¨à³à²¨à³ ಹà³à²à²¦à²¿à²²à³à²² (--system à²
ನà³à²¨à³ ಸà³à²à²¿à²¸à²¦à³ "
"à²à²¦à³à²¦à²²à³à²²à²¿ ಮಾತà³à²°)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "ನಿರà³à²µà²¾à²¹à² ಸವಲತà³à²¤à³à²à²³ à²
à²à²¤à³à²¯à²µà²¿à²¦à³."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಸನà³à²¨à²¿à²µà³à²¶à²¦à²¿à²à²¦ --start ಬà³à²à²¬à²²à²¿à²¤à²µà²¾à²à²¿à²²à³à²²."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
"ವà³à²¯à²µà²¸à³à²¥à³à²¯ à²à³à²°à²®à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¤à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³, à²à²¦à²°à³ --disallow-exit à²
ನà³à²¨à³ ಹà³à²à²¦à²¿à²¸à²²à²¾à²à²¿à²²à³à²²!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"ವà³à²¯à²µà²¸à³à²¥à³à²¯ à²à³à²°à²®à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¤à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³, à²à²¦à²°à³ --disallow-module-loading à²
ನà³à²¨à³ "
"ಹà³à²à²¦à²¿à²¸à²²à²¾à²à²¿à²²à³à²²!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
"ವà³à²¯à²µà²¸à³à²¥à³à²¯ à²à³à²°à²®à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¤à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³à²¦à³, SHM à²à³à²°à²®à²µà²¨à³à²¨à³ à²à²¤à³à²¤à²¾à²¯à²ªà³à²°à³à²µà²à²µà²¾à²à²¿ "
"à²
ಶà²à³à²¤à²à³à²³à²¿à²¸à³à²¤à³à²¤à²¿à²¦à³!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"ವà³à²¯à²µà²¸à³à²¥à³à²¯ à²à³à²°à²®à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¤à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³à²¦à³, ನಿರà³à²à²®à²¿à²¸à³à²µ à²à²¡ ಸಮಯವನà³à²¨à³ à²à²¤à³à²¤à²¾à²¯à²ªà³à²°à³à²µà²à²µà²¾à²à²¿ "
"à²
ಶà²à³à²¤à²à³à²³à²¿à²¸à³à²¤à³à²¤à²¿à²¦à³!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio à²
ನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "ಪà³à²ªà³â ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ಡà³à²®à²¨à³ à²à²°à²à²à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "ಡà³à²®à²¨à³ à²
ನà³à²¨à³ ಯಶಸà³à²µà²¿à²¯à²¾à²à²¿ à²à²°à²à²à²¿à²¸à²²à²¾à²à²¿à²¦à³."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à²à²¦à³ PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "à²à²à²ªà³à²²à³ ಮಾಡà³à²µ à²
ತಿಥà³à²¯: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "à²à²à²ªà³à²²à³ ಮಾಡà³à²µ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "à²
ತಿಥà³à²¯à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¤à²à³à²³à³à²³à³à²¤à³à²¤à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUà²à²³à³ à²à²à²¡à³à²¬à²à²¦à²¿à²µà³."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "ಪà³à²à²¦ à²à²¾à²¤à³à²°à²µà³ %lu ಬà³à²à³âà²à²³à²¾à²à²¿à²µà³"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind ಬà³à²à²¬à²²à²¦à³à²à²¦à²¿à²à³ à²à²à²ªà³à²²à³ ಮಾಡಲಾà²à²¿à²¦à³: ಹà³à²¦à³"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind ಬà³à²à²¬à²²à²¦à³à²à²¦à²¿à²à³ à²à²à²ªà³à²²à³ ಮಾಡಲಾà²à²¿à²¦à³: à²à²²à³à²²"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind à²à³à²°à²®à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¸à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "ಪà³à²°à²¶à²¸à³à²¤à²µà²¾à²¦ ನಿರà³à²®à²¾à²£: ಹà³à²¦à³"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "ಪà³à²°à²¶à²¸à³à²¤à²µà²¾à²¦ ನಿರà³à²®à²¾à²£: à²à²²à³à²²"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG à²
ನà³à²¨à³ ಸà³à²à²¿à²¸à²²à²¾à²à²¿à²¦à³, à²à²²à³à²²à²¾ ಪà³à²°à²¤à²¿à²ªà²¾à²¦à²¨à³à²à²³à²¨à³à²¨à³ à²
ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
"FASTPATH à²
ನà³à²¨à³ ಸà³à²à²¿à²¸à²²à²¾à²à²¿à²¦à³, à²à³à²µà²² ವà³à² ಮಾರà³à²à²¦ ಪà³à²°à²¤à²¿à²ªà²¾à²¦à²¨à³à²à²³à²¨à³à²¨à³ à²
ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "à²à²²à³à²²à²¾ ಪà³à²°à²¤à²¿à²ªà²¾à²¦à²¨à³à²à²³à²¨à³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "ಮà³à²¶à³à²¨à³ ID ಯನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "ಮà³à²¶à³à²¨à³ ID ಯೠ%s à²à²à²¿à²¦à³."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "ಮà³à²¶à³à²¨à³ ID ಯೠ%s à²à²à²¿à²¦à³."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "à²à²²à²¾à²µà²£à²¾à²¸à²®à²¯(ರನà³âà²à³à²®à³) à²à³à²¶ %s à²
ನà³à²¨à³ ಬಳಸಿà²à³à²à²¡à³."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "ಸà³à²¥à²¿à²¤à²¿ à²à³à²¶ %s à²
ನà³à²¨à³ ಬಳಸಿà²à³à²à²¡à³."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "ವà³à²¯à²µà²¸à³à²¥à³à²¯ à²à³à²°à²®à²¦à²²à³à²²à²¿ à²à²²à²¾à²¯à²¿à²¸à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -468,15 +345,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() ವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "ತಾà²à²¾ ರà³à²¸à²²à³à²¯à³à²¶à²¨à³ à²à³à²®à²°à³ ಲà²à³à²¯à²µà²¿à²¦à³! Bon appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -484,27 +361,27 @@ msgstr ""
"ಮಹಾಶಯರà³, ನಿಮà³à²® à²à²°à³à²¨à²²à³ à²à³à²³à³à²¤à³à²¹à³à²à²¿à²¦à³! à²
ತà³à²¯à³à²¤à³à²¤à²® ರà³à²¸à²²à³à²¯à³à²¶à²¨à³ à²à³à²®à²°à³ à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²¦ "
"ಲಿನà²à³à²¸à²¨à³à²¨à³ ಬಳಸà³à²µà²à²¤à³ à²
ಡà³à²à³à²¯à²µà²°à³ ಸಲಹೠಮಾಡà³à²¤à³à²¤à²¿à²¦à³à²¦à²¾à²°à³!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() ವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ಡà³à²®à²¨à³ à²
ನà³à²¨à³ à²à²°à²à²à²¿à²¸à²²à³ ವಿಫಲà²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "ಲà³à²¡à³ ಮಾಡಲಾದ ಯಾವà³à²¦à³ ಡà³à²®à²¨à³ à²à²²à³à²²à²¦à³ à²à²°à²à²à²à³à²à²¡à²¿à²¦à³, à²à³à²²à²¸ ಮಾಡಲೠನಿರಾà²à²°à²¿à²¸à²¿à²¦à³."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ಡà³à²®à²¨à³ à²à²°à²à²à²à³à²³à²¿à²à³ ಪà³à²°à³à²£à²à³à²à²¡à²¿à²¦à³."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ಡà³à²®à²¨à³ ಸà³à²¥à²à²¿à²¤à²à³à²³à²¿à²à³à²¯à²¨à³à²¨à³ à²à²°à²à²à²¿à²¸à²²à²¾à²à²¿à²¦à³."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ಡà³à²®à²¨à³ à²
ನà³à²¨à³ à²
à²à²¤à³à²¯à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³."
@@ -844,14 +721,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### ಸà²à²°à²à²¨à²¾ à²à²¡à²¤à²¦à²¿à²à²¦ à²à²¦à³: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "ರà³à²à³â ಸವಲತà³à²¤à³à²à²³à²¨à³à²¨à³ ಬಿಡಲಾà²à³à²¤à³à²¤à²¿à²¦à³."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "CAP_SYS_NICE à²à²¾à²à²¿à²¨ ಯಶಸà³à²µà²¿ ನಿಯಮಿತ ಸಾಮರà³à²¥à³à²¯à²à²³à³."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio ಧà³à²µà²¨à²¿ ವà³à²¯à²µà²¸à³à²¥à³"
@@ -860,27 +733,6 @@ msgstr "PulseAudio ಧà³à²µà²¨à²¿ ವà³à²¯à²µà²¸à³à²¥à³"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio ಧà³à²µà²¨à²¿ ವà³à²¯à²µà²¸à³à²¥à³à²¯à²¨à³à²¨à³ à²à²°à²à²à²¿à²¸à²¿"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio ಡà³à²®à²¨à³âà²à²¾à²à²¿ ಹà³à²à³à²à²¿à²¨ à²à²¦à³à²¯à²¤à³à²¯ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ (à²à²£à²¾à²¤à³à²®à² ಯà³à²¨à²¿à²à³à²¸à³â ನà³à²¸à³ ಹà²à²¤)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio ಡà³à²®à²¨à³âà²à²¾à²à²¿ ರಿಯಲà³-à²à³à²®à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"PulseAudio ಹà³à²à³à²à²¿à²¨ à²à²¦à³à²¯à²¤à³à²¯ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²¦à²à²¤à³ ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಪಾಲಿಸಿಯೠ"
-"ತಡà³à²¯à³à²¤à³à²¤à²¦à³."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"PulseAudio ರಿಯಲà³-à²à³à²®à³â ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²¦à²à²¤à³ ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಪಾಲಿಸಿಯೠತಡà³à²¯à³à²¤à³à²¤à²¦à³."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "ಮà³à²¨à³"
@@ -1253,184 +1105,188 @@ msgstr "à²à³à²à²¿ ದತà³à²¤à²¾à²à²¶à²µà²¨à³à²¨à³ ಪಾರà³à²¸à³ ಮ
msgid "Failed to open configuration file '%s': %s"
msgstr "ಸà²à²°à²à²¨à²¾ à²à²¡à²¤ '%s' à²
ನà³à²¨à³ ಲà³à²¡à³ ಮಾಡà³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr ""
"ಯಾವà³à²¦à³ à²à³à²à²¿à²¯à²¨à³à²¨à³ ಲà³à²¡à³ ಮಾಡಲಾà²à²¿à²²à³à²². à²à³à²à²¿ à²à²²à³à²²à²¦à³ ಸà²à²ªà²°à³à²à²¸à²¾à²§à²¿à²¸à²²à³ ಪà³à²°à²¯à²¤à³à²¨à²¿à²¸à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "ಫà³à²°à³à²à³(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à²
à²à³à²à²¾à²¤ ವಿಸà³à²¤à²°à²£à³ '%s' à²à²à²¦ ಸà²à²¦à³à²¶à²µà²¨à³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²²à²¾à²à²¿à²¦à³"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "ಸà³à²à³à²°à³à²®à²¨à³à²¨à³ ಬರಿದಾà²à²¿à²¸à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "ಪà³à²²à³à²¬à³à²¯à²¾à²à³ ಸà³à²à³à²°à³à²®à²¨à³à²¨à³ ಬರಿದಾà²à²¿à²¸à²²à²¾à²à²¿à²¦à³.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "ಪರಿà²à²¾à²°à²à²à³à²à³ ಬರಿದಾà²à²¿à²¸à³à²µ ಸà²à²ªà²°à³à².\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() failed: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() failed: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() failed: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "ಸà³à²à³à²°à³à²®à²¨à³à²¨à³ ಯಶಸà³à²µà²¿à²¯à²¾à²à²¿ ನಿರà³à²®à²¿à²¸à²²à²¾à²à²¿à²¦à³.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() failed: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "ಬಫರೠಮà³à²à³à²°à²¿à²à³âà²à²³à³: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "ಬಫರೠಮà³à²à³à²°à²¿à²à³âà²à²³à³: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "ನಮà³à²¨à³à²¯ ವಿವರ '%s' à²
ನà³à²¨à³ ಬಳಸಿà²à³à²à²¡à³, à²à²¾à²¨à²²à³â ನà²à³à²·à³ '%s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "ಸಾಧನ %s à²à³à²à³ ಸà²à²ªà²°à³à² à²à³à²¡à²¿à²¸à²²à²¾à²à²¿à²¦à³ (%u, %ssuspended).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ಸà³à²à³à²°à³à²®à³ ದà³à²·: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "ಸà³à²à³à²°à³à²®à³ ಸಾಧನವನà³à²¨à³ ತಾತà³à²à²¾à²²à²¿à²à²µà²¾à²à²¿ ತಡà³à²¹à²¿à²¡à²¿à²¯à²²à²¾à²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "ಸà³à²à³à²°à³à²®à³ ಸಾಧನವನà³à²¨à³ ಮರಳಿ à²à²°à²à²à²¿à²¸à²²à²¾à²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ಸà³à²à³à²°à³à²®à³ à²
ನà³à²¨à³ à²à²¡à²¿à²®à³ à²à²²à²¾à²¯à²¿à²¸à²²à²¾à²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "ಸà³à²à³à²°à³à²®à³ à²
ನà³à²¨à³ ಹà³à²à³à²à³ à²à²²à²¾à²¯à²¿à²¸à²²à²¾à²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "ಸà³à²à³à²°à³à²®à³ à²
ನà³à²¨à³ à²à²°à²à²à²¿à²¸à²²à²¾à²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "ಸಾಧನ %s à²
ನà³à²¨à³ ಸà³à²à³à²°à³à²®à³â ಸà³à²¥à²³à²¾à²à²¤à²°à²¿à²¸à²²à²¾à²à²¿à²¦à³ (%u, %ssuspended).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "à²à²²à³à²² "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "ಸà³à²à³à²°à³à²®à³ ಬಫರೠà²à³à²£à²µà²¿à²¶à³à²·à²¤à³à²à²³à²¨à³à²¨à³ ಬದಲಾಯಿಸಲಾà²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "ಸà²à²ªà²°à³à²à²µà²¨à³à²¨à³ ಸಾಧಿಸಲಾà²à²¿à²¦à³.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() failed: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() failed: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() failed: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "ಸà²à²ªà²°à³à²à²¦ ವಿಫಲತà³: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF à²
ನà³à²¨à³ ಪಡà³à²¯à²²à²¾à²à²¿à²¦à³.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "à²à²¦à³à²µà²¿à²à³() ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF à²
ನà³à²¨à³ ಪಡà³à²¯à²²à²¾à²à²¿à²¦à³.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "ಬರà³à²¯à³à²µà²¿à²à³() ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "ಸà²à²à³à²¤ ದà³à²°à³à²¤à²¿à²¦à³, ನಿರà³à²à²®à²¿à²¸à³à²¤à³à²¤à²¿à²¦à³.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "à²
à²à³à²à²°à²¤à³à²¯à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "ಸಮಯ: %0.3f sec; à²
à²à³à²à²°à²¤à³: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() failed: %s\n"
#: ../src/utils/pacat.c:605
@@ -1549,34 +1405,34 @@ msgstr ""
"libpulse %s ನà³à²à²¦à²¿à²à³ à²à²à²ªà³à²²à³ ಮಾಡಲಾà²à²¿à²¦à³\n"
"libpulse %s ನà³à²à²¦à²¿à²à³ à²à³à²¡à²¿à²¸à²²à²¾à²à²¿à²¦à³\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ à²à²¾à²¨à²²à³ ನà²à³à²·à³ '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ ಮರà³à²¨à²®à³à²¨à³ ವಿಧಾನ '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ à²à²¾à²¨à²²à³ ನà²à³à²·à³ '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ à²
à²à³à²à²°à²¤à³ ವಿವರಣೠ'%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ ಪà³à²°à²à³à²°à²¿à²¯à³ ಸಮಯದ ವಿವರಣೠ'%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ ಮರà³à²¨à²®à³à²¨à³ ವಿಧಾನ '%s'."
#: ../src/utils/pacat.c:878
@@ -1585,60 +1441,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ ನಮà³à²¨à³ ವಿವರ\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "ತà³à²°à³(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "ಬಹಳಷà³à²à³ à²à²°à³à²à³à²®à³à²à²à³âà²à²³à³.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "ನಮà³à²¨à³à²¯ ಮಾಹಿತಿಯನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "ಧà³à²µà²¨à²¿ à²à²¡à²¤à²µà²¨à³à²¨à³ ತà³à²°à³à²¯à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "à²à²à²¦à³ %s ಸà³à²à³à²°à³à²®à³â à²
ನà³à²¨à³ ನಮà³à²¨à³ ವಿವರಣೠ'%s' ಯà³à²à²¦à²¿à²à³ ತà³à²°à³à²¯à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "ನಮà³à²¨à³à²¯ ಮಾಹಿತಿಯನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "à²à²à²¦à³ %s ಸà³à²à³à²°à³à²®à³â à²
ನà³à²¨à³ ನಮà³à²¨à³ ವಿವರಣೠ'%s' ಯà³à²à²¦à²¿à²à³ ತà³à²°à³à²¯à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à²à²¾à²¨à²²à³ ನà²à³à²·à³à²¯à³ ನಮà³à²¨à³à²¯ ವಿವರಣà³à²¯à³à²à²¦à²¿à²à³ ತಾಳà³à²¯à²¾à²à³à²¤à³à²¤à²¿à²²à³à²²\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "à²à²à²¦à³ %s ಸà³à²à³à²°à³à²®à³â à²
ನà³à²¨à³ ನಮà³à²¨à³ ವಿವರಣೠ'%s' ಯà³à²à²¦à²¿à²à³ ತà³à²°à³à²¯à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "à²à²à²¦à³ %s ಸà³à²à³à²°à³à²®à³â à²
ನà³à²¨à³ ನಮà³à²¨à³ ವಿವರಣೠ'%s' ಯà³à²à²¦à²¿à²à³ ತà³à²°à³à²¯à²²à²¾à²à³à²¤à³à²¤à²¿à²¦à³.\n"
#: ../src/utils/pacat.c:1006
@@ -1649,35 +1511,34 @@ msgstr "ರà³à²à²¾à²°à³à²¡à²¿à²à²à³"
msgid "playback"
msgstr "ಪà³à²²à³à²¬à³à²¯à²¾à²à³â"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() failed.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() ವಿಫಲà²à³à²à²¡à²¿à²¦à³.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() failed.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() failed: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() failed.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() failed.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() failed.\n"
#: ../src/utils/pasuspender.c:81
@@ -1705,6 +1566,11 @@ msgstr "ಮರಳಿ à²à²°à²à²à²¿à²¸à²²à³ ವಿಫಲà²à³à²à²¡à²¿à²¦à³:
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "à²à²à³à²à²°à²¿à²à³: ಧà³à²µà²¨à²¿ ಪರಿà²à²¾à²°à²à²µà³ ಸà³à²¥à²³à³à²¯à²µà²¾à²à²¿à²²à³à²², ತಾತà³à²à²¾à²²à²¿à²à²µà²¾à²à²¿ ತಡà³à²¹à²¿à²¡à²¿à²¯à²²à²¾à²à³à²¤à³à²¤à²¿à²²à³à²².\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "ಸà²à²ªà²°à³à²à²¦ ವಿಫಲತà³: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1744,6 +1610,21 @@ msgstr ""
"libpulse %s ನà³à²à²¦à²¿à²à³ à²à²à²ªà³à²²à³ ಮಾಡಲಾà²à²¿à²¦à³\n"
"libpulse %s ನà³à²à²¦à²¿à²à³ à²à³à²¡à²¿à²¸à²²à²¾à²à²¿à²¦à³\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() failed.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() failed.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() failed.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2159,6 +2040,11 @@ msgstr ""
"libpulse %s ನà³à²à²¦à²¿à²à³ à²à²à²ªà³à²²à³ ಮಾಡಲಾà²à²¿à²¦à³\n"
"libpulse %s ನà³à²à²¦à²¿à²à³ à²à³à²¡à²¿à²¸à²²à²¾à²à²¿à²¦à³\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à²
ಮಾನà³à²¯à²µà²¾à²¦ à²à²¾à²¨à²²à³ ನà²à³à²·à³ '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "ಲà³à²¡à³ ಮಾಡಬà³à²à²¿à²°à³à²µ à²à²à²¦à³ à²à²¡à²¤à²¦ ನಮà³à²¨à³à²¯à²¨à³à²¨à³ ಸà³à²à²¿à²¸à²¿\n"
@@ -2167,6 +2053,11 @@ msgstr "ಲà³à²¡à³ ಮಾಡಬà³à²à²¿à²°à³à²µ à²à²à²¦à³ à²à²¡à²¤à²¦
msgid "Failed to open sound file.\n"
msgstr "ಧà³à²µà²¨à²¿ à²à²¡à²¤à²µà²¨à³à²¨à³ ತà³à²°à³à²¯à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "ನಮà³à²¨à³à²¯ ಮಾಹಿತಿಯನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à³à²µà²²à³à²²à²¿ ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2230,11 +2121,6 @@ msgstr "à²à²à²¦à³ à²à²¾à²°à³à²¡à²¿à²¨ ಹà³à²¸à²°à³/ಸà³à²à²¿à²¯à²¨à³
msgid "No valid command specified.\n"
msgstr "ಯಾವà³à²¦à³ à²à²à³à²à³à²¯à²¨à³à²¨à³ ಸà³à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²².\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() failed: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2352,11 +2238,11 @@ msgstr "à²à²¦à³(): %s"
msgid "write(): %s"
msgstr "ಬರà³(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "ಸà³à²µà²¯à²à²¹à³à²à³à²à²¿à²¸à³à²µà²¿à²à³à²¯ ಲಾà²à³ à²
ನà³à²¨à³ ನಿಲà³à²à²¿à²¸à²¿à²à³à²³à³à²³à²²à³ ಸಾಧà³à²¯à²µà²¿à²²à³à²²."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2371,7 +2257,7 @@ msgstr ""
"ವಿà²à²¸à²¨à²à²¾à²°à²° à²à²®à²¨à²à³à²à³ ತನà³à²¨à²¿.POLLOUT ಸà³à²à³âನಿà²à²¦ ನಾವೠà²à²à³à²à³à²¤à³à²¤à³à²à³à²à²¡à²¿à²¦à³à²¦à³à²µà³ -- à²à²¦à²°à³ ನà²à²¤à²°à²¦ "
"snd_pcm_avail() 0 à²
ಥವ min_avail à²à³à²à²¿à²à²¤ à²à²¿à²à³à²à²¦à²¾à²¦ à²à²¨à³à²¨à³à²à²¦à³ ಮà³à²²à³à²¯à²µà²¨à³à²¨à³ ಮರಳಿಸಿದà³."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2387,15 +2273,15 @@ msgstr ""
"snd_pcm_avail() 0 à²
ಥವ min_avail à²à³à²à²¿à²à²¤ à²à²¿à²à³à²à²¦à²¾à²¦ à²à²¨à³à²¨à³à²à²¦à³ ಮà³à²²à³à²¯à²µà²¨à³à²¨à³ ಮರಳಿಸಿದà³."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "à²à²¡"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "ಹೠಫಿಡಿಲಿà²à²¿ ಪà³à²²à³à²¬à³à²¯à²¾à²à³ (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "à²à³à²²à²¿à²«à³à²¨à²¿ ಡà³à²¯à³à²ªà³à²²à³à²à³à²¸à³â (HSP/HFP)"
@@ -2403,6 +2289,137 @@ msgstr "à²à³à²²à²¿à²«à³à²¨à²¿ ಡà³à²¯à³à²ªà³à²²à³à²à³à²¸à³â (HSP/HF
msgid "PulseAudio Sound Server"
msgstr "ಪಲà³à²¸à³âà²à²¡à²¿à²¯à³ ಧà³à²µà²¨à²¿ ಪರಿà²à²¾à²°à²"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಬಸà³âà²à³ ಸà²à²ªà²°à³à²à²à³à²¡à²¿à²¸à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID à²à²à²¦ à²à²¾à²²à²°à³ à²
ನà³à²¨à³ ಪಡà³à²¯à²²à²¾à²à²¿à²²à³à²²: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "à²à²¾à²²à²°à³ ವಸà³à²¤à³à²µà²¿à²¨à²²à³à²²à²¿ UID à²
ನà³à²¨à³ à²
ಣಿà²à³à²³à²¿à²¸à²²à²¾à²à²²à²¿à²²à³à²²."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK à²
ಧಿವà³à²¶à²¨à²µà²¨à³à²¨à³ ಪಡà³à²¯à²²à²¾à²à²²à²¿à²²à³à²²."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "à²
ಧಿವà³à²¶à²¨à²¦ ವಸà³à²¤à³à²µà²¿à²¨à²²à³à²²à²¿ UID à²
ನà³à²¨à³ à²
ಣಿà²à³à²³à²¿à²¸à²²à²¾à²à²²à²¿à²²à³à²²."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction à²
ನà³à²¨à³ ನಿಯà³à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²²."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id à²
ನà³à²¨à³ ಹà³à²à²¦à²¿à²¸à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext à²
ನà³à²¨à³ ನಿಯà³à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²²."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext à²
ನà³à²¨à³ à²à²°à²à²à²¿à²¸à²²à²¾à²à²¿à²²à³à²²: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "à²à²¾à²²à²°à³ à²
ಧà³à²à³à²¤à²µà²¾à²à²¿à²¦à³à²¦à³ à²à²à²¦à³ ನಿರà³à²§à²°à²¿à²¸à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "auth à²
ನà³à²¨à³ ಪಡà³à²¯à²²à³ ಸಾಧà³à²¯à²µà²¾à²à²¿à²²à³à²²: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit '%s' ನà³à²à²¦à²¿à²à³ ಪà³à²°à²¤à³à²¯à³à²¤à³à²¤à²°à²¿à²¸à²¿à²¦à³"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "PulseAudio ಡà³à²®à²¨à³âà²à²¾à²à²¿ ಹà³à²à³à²à²¿à²¨ à²à²¦à³à²¯à²¤à³à²¯ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ (à²à²£à²¾à²¤à³à²®à² ಯà³à²¨à²¿à²à³à²¸à³â ನà³à²¸à³ ಹà²à²¤)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio ಡà³à²®à²¨à³âà²à²¾à²à²¿ ರಿಯಲà³-à²à³à²®à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "PulseAudio ಹà³à²à³à²à²¿à²¨ à²à²¦à³à²¯à²¤à³à²¯ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²¦à²à²¤à³ ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಪಾಲಿಸಿಯೠ"
+#~ "ತಡà³à²¯à³à²¤à³à²¤à²¦à³."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "PulseAudio ರಿಯಲà³-à²à³à²®à³â ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²¦à²à²¤à³ ವà³à²¯à²µà²¸à³à²¥à³à²¯ ಪಾಲಿಸಿಯೠ"
+#~ "ತಡà³à²¯à³à²¤à³à²¤à²¦à³."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "à²à²¦à³à²µà²¿à²à³() ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() failed: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "ನಾವೠ'%s' à²à³à²à²ªà²¿à²¨à²²à³à²²à²¿à²¦à³à²¦à³à²µà³, ಹಾà²à³ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à³à²µà³."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "ನಾವೠ'%s' à²à³à²à²ªà²¿à²¨à²²à³à²²à²¿à²¦à³à²¦à³à²µà³, ಹಾà²à³ ರಿಯಲà³-à²à³à²®à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à³à²µà³."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à²¦à³."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit ನಿರಾà²à²°à²¿à²¸à³à²¤à³à²¤à²¦à³."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "ರಿಯಲà³-à²à³à²®à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit à²
ನà³à²®à²¤à²¿à²¸à³à²¤à³à²¤à²¦à³."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "ರಿಯಲà³-à²à³à²®à³ ಸವಲತà³à²¤à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³ à²
ನà³à²¨à³ PolicyKit ನಿರಾà²à²°à²¿à²¸à³à²¤à³à²¤à²¦à³."
+
+#~ 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 ""
+#~ "SUID ರà³à²à³ à²
ನà³à²¨à³ à²à²°à³à²¯à²²à²¾à²à²¿à²¦à³ ಹಾà²à³ ಸà²à²°à²à²¨à³à²¯à²²à³à²²à²¿ ರಿಯಲà³-à²à³à²²à³ ಹಾà²à³/à²
ಥವ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ "
+#~ "ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³âà²à³ ಮನವಿ ಸಲà³à²²à²¿à²¸à²²à²¾à²à²¿à²¦à³. à²à²¦à²°à³, à²
à²à²¤à³à²¯à²µà²¿à²°à³à²µ ಸವಲತà³à²¤à³à²à²³à³ ನಮà³à²®à²²à³à²²à²¿à²²à³à²²:\n"
+#~ "ನಾವೠ'%s' à²à³à²à²ªà²¿à²¨à²²à³à²²à²¿à²²à³à²²,ಮನವಿ ಸಲà³à²²à²¿à²¸à²²à²¾à²¦ ಸವಲತà³à²¤à³à²à²³à²¨à³à²¨à³ à²à²¦à²à²¿à²¸à²²à³ PolicyKit "
+#~ "ನಿರಾà²à²°à²¿à²¸à²¿à²¦à³ ಹಾà²à³ RLIMIT_NICE/RLIMIT_RTPRIO ಸà²à²ªà²¨à³à²®à³à²²à²¦ ಮಿತಿಯನà³à²¨à³ ಹà³à²à³à²à²¿à²¸à²²à³ "
+#~ "ನಮà³à²®à²¿à²à²¦ ಸಾಧà³à²¯à²µà²¿à²²à³à²².\n"
+#~ "ರಿಯಲà³-à²à³à²²à³ ಹಾà²à³/à²
ಥವ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³â à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à³ ದಯವಿà²à³à²à³ ಸà³à²à³à²¤à²µà²¾à²¦ "
+#~ "PolicyKit ಸವಲತà³à²¤à³à²à²³à²¨à³à²¨à³ ಪಡà³à²¦à³à²à³à²³à³à²³à²¿, à²
ಥವ '%s' ನ ಸದಸà³à²¯à²°à²¾à²à²¿, à²
ಥವ ಠ"
+#~ "ಬಳà²à³à²¦à²¾à²°à²¨à²¿à²à²¾à²à²¿ RLIMIT_NICE/RLIMIT_RTPRIO ಸà²à²ªà²¨à³à²®à³à²² ಮಿತಿಯನà³à²¨à³ ಹà³à²à³à²à²¿à²¸à²¿."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "ಸà²à²°à²à²¨à³à²¯à²²à³à²²à²¿ ಹà³à²à³à²à³-à²à²¦à³à²¯à²¤à³à²¯ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³ à²à²¦à²°à³ ಪಾಲಿಸಿಯಿà²à²¦ "
+#~ "à²
ನà³à²®à²¤à²¿ à²à²²à³à²²."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO à²
ನà³à²¨à³ ಯಶಸà³à²µà²¿à²¯à²¾à²à²¿ ಹà³à²à³à²à²¿à²¸à²²à²¾à²à²¿à²¦à³"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO ವಿಫಲà²à³à²à²¡à²¿à²¦à³: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE à²
ನà³à²¨à³ ಬಿಡಲಾà²à³à²¤à³à²¤à²¿à²¦à³"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "ಸà²à²°à²à²¨à³à²¯à²²à³à²²à²¿ ರಿಯಲà³-à²à³à²®à³ ಶà³à²¡à³à²¯à³à²²à²¿à²à²à³ à²
ನà³à²¨à³ ಶà²à³à²¤à²à³à²³à²¿à²¸à²²à²¾à²à²¿à²¦à³ à²à²¦à²°à³ ಪಾಲಿಸಿಯಿà²à²¦ à²
ನà³à²®à²¤à²¿ "
+#~ "à²à²²à³à²²."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "CAP_SYS_NICE à²à²¾à²à²¿à²¨ ಯಶಸà³à²µà²¿ ನಿಯಮಿತ ಸಾಮರà³à²¥à³à²¯à²à²³à³."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() failed.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à²
ನಲಾà²à³ ಮà³à²¨à³"
diff --git a/po/mr.po b/po/mr.po
index 6e3c759a..56bc731c 100644
--- a/po/mr.po
+++ b/po/mr.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-06 13:43+0530\n"
"Last-Translator: Sandeep Shedmake \n"
"Language-Team: marathi\n"
@@ -17,7 +17,12 @@ msgstr ""
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -29,7 +34,7 @@ msgstr ""
"हॠसहसा ALSA डà¥à¤°à¤¾à¤à¤µà¤° '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ बठà¤
शॠशà¤à¤¤à¥. à¤à¥à¤ªà¤¯à¤¾ या à¤
डà¤à¤£à¥à¤¸ ALSA डà¥à¤µà¥à¤¹à¤²à¤ªà¤° à¤à¤°à¥à¤¤à¤¾ "
"à¤à¤³à¤µà¤¾."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -41,7 +46,7 @@ msgstr ""
"हॠसहसा ALSA डà¥à¤°à¤¾à¤à¤µà¤° '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ बठà¤
शॠशà¤à¤¤à¥. à¤à¥à¤ªà¤¯à¤¾ या à¤
डà¤à¤£à¥à¤¸ ALSA डà¥à¤µà¥à¤¹à¤²à¤ªà¤° à¤à¤°à¥à¤¤à¤¾ "
"à¤à¤³à¤µà¤¾."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -66,7 +71,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à¤à¤à¤¤à¤°à¥à¤ à¤à¤¡à¤¿à¤"
@@ -86,367 +91,242 @@ msgstr "नवà¥à¤¨ dl दाà¤à¤²à¤à¤°à¥à¤¤à¤¾ वाà¤à¤ª à¤à¤°à¤£à¥à¤¯
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader समावà¥à¤· à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ बसशॠà¤à¥à¤³à¤µà¤£à¥ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
शà¤à¥à¤¯: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID पासà¥à¤¨ à¤à¥à¤²à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "à¤à¥à¤²à¤° à¤à¤¬à¤à¥à¤à¥à¤ वरà¥à¤² UID निशà¥à¤à¤¿à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK सतà¥à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥ à¤
पयशà¥."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "सतà¥à¤° à¤à¤¬à¤à¥à¤à¥à¤ वरà¥à¤² UID निशà¥à¤à¤¿à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction वाà¤à¤ª à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id निशà¥à¤à¤¿à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext वाà¤à¤ª à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "à¤à¥à¤²à¤° à¤
धिà¤à¥à¤¤ à¤à¤¹à¥ à¤à¥ नाहॠहॠà¤à¤³à¤à¤£à¥ शà¤à¥à¤¯ नाहà¥: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "परवानà¤à¥ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit नॠ'%s' सह पà¥à¤°à¤¤à¤¿à¤¸à¤¾à¤¦ दिला"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "सà¤à¤à¥à¤¤ %s पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤¾à¤²à¥."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "बाहà¥à¤° पडत à¤à¤¹à¥."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "वापरà¤à¤°à¥à¤¤à¤¾ '%s' शà¥à¤§à¤£à¥ à¤
शà¤à¥à¤¯."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "à¤à¤ '%s' शà¥à¤§à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "वापरà¤à¤°à¥à¤¤à¤¾ '%s' (UID %lu) व à¤à¤ '%s' (GID %lu) à¤à¤¢à¤³à¤²à¥."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "वापरà¤à¤°à¥à¤¤à¤¾ '%s' व à¤à¤ '%s' à¤à¥ GID à¤à¥à¤³à¤¤ नाहà¥."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "वापरà¤à¤°à¥à¤¤à¤¾ '%s' à¤à¥ मà¥à¤à¥à¤¯ डिरà¥à¤à¥à¤à¥à¤°à¥ '%s' नाहà¥, दà¥à¤°à¥à¤²à¤à¥à¤· à¤à¤°à¤¤ à¤à¤¹à¥."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' बनवणà¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "à¤à¤ यादॠबदलवणà¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID बदलवणà¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID बदलवणà¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "रà¥à¤ परवानà¤à¥ यशसà¥à¤µà¥à¤°à¤¿à¤¤à¥à¤¯à¤¾ वà¤à¤³à¤²à¥."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ à¤à¤° पदà¥à¤§à¤¤ या पà¥à¤²à¥
à¤à¤«à¥à¤°à¥à¤® à¤à¤°à¥à¤¤à¤¾ समरà¥à¤¥à¥à¤¤ नाहà¥."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à¤à¤¦à¥à¤¶ à¤à¤³ वाà¤à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "à¤à¤ªà¤£ à¤à¤ '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¹à¥à¤¤, à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤°à¥à¤¤à¤¾ परवानà¤à¥ दà¥à¤¤à¥."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "à¤à¤ªà¤£ à¤à¤ '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¹à¥à¤¤, रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤°à¥à¤¤à¤¾ परवानà¤à¥ दà¥à¤¤à¥."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit à¤à¤ªà¤²à¥à¤¯à¤¾à¤²à¤¾ acquire-high-priority परवानà¤à¥ दà¥à¤¤à¥."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit acquire-high-priority परवानà¤à¥ नà¤à¤¾à¤°à¤¤à¥."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit acquire-real-time परवानà¤à¥ पà¥à¤°à¤µà¤¿à¤¤à¥."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit acquire-real-time परवानà¤à¥ नà¤à¤¾à¤°à¤¤à¥."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID रà¥à¤à¤²à¤¾ à¤à¥à¤² à¤à¥à¤²à¥ व वासà¥à¤¤à¤µà¤¿à¤-वà¥à¤³ व/à¤à¤¿à¤à¤µà¤¾ सà¤à¤¯à¥à¤à¤¨à¤¾ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ "
-"विनà¤à¤¤à¥à¤à¥à¤¤ à¤à¥à¤²à¥. तरà¥, à¤à¤®à¤à¥à¤¯à¤¾à¤à¤¡à¥ à¤à¤µà¤¶à¥à¤¯à¤ परवानà¤à¥ नाहà¥:\n"
-"à¤à¤®à¥à¤¹à¥ à¤à¤ '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ नाहà¥, PolicyKit नॠविनà¤à¤¤à¥à¤à¥à¤¤ परवानà¤à¥ दà¥à¤£à¥à¤¯à¤¾à¤¸ नà¤à¤¾à¤° दिला व "
-"RLIMIT_NICE/RLIMIT_RTPRIO सà¥à¤¤à¥à¤°à¥à¤¤ मरà¥à¤¯à¤¾à¤¦à¤¾ वाढविणॠà¤à¤µà¤¶à¥à¤¯à¤ à¤à¤¹à¥.\n"
-"रियल-à¤à¤¾à¤à¤®/à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤à¤°à¥à¤¤à¤¾ à¤à¥à¤ªà¤¯à¤¾à¤¯à¥à¤à¥à¤¯ PolicyKit "
-"परवानà¤à¥ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤¾, à¤à¤¿à¤à¤µà¤¾ '%s' à¤à¥ सदसà¥à¤¯ बनवा, à¤à¤¿à¤à¤µà¤¾ या वापरà¤à¤°à¥à¤¤à¤¾ à¤à¤°à¥à¤¤à¤¾RLIMIT_NICE/"
-"RLIMIT_RTPRIO सà¥à¤¤à¥à¤°à¥à¤¤ मरà¥à¤¯à¤¾à¤¦à¤¾ वाढवा."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"सà¤à¤¯à¥à¤à¤¨à¤¾ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¥à¤²à¥ à¤à¤°à¤¾à¤° दà¥à¤µà¤¾à¤°à¥ सà¥à¤µà¥à¤à¤¾à¤°à¥à¤¯ नाहà¥."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "यशसà¥à¤µà¥à¤°à¤¿à¤¤à¥à¤¯à¤¾ RLIMIT_RTPRIO वाढवलà¥"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO à¤
पयशà¥: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE à¤à¤°à¥à¤¤à¤¾ पà¥à¤°à¤¯à¤¤à¥à¤¨ बà¤à¤¦ à¤à¥à¤²à¥"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"सà¤à¤¯à¥à¤à¤¨à¤¾ à¤
à¤à¤¤à¤°à¥à¤à¤¤ रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤° à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¤°à¤¤ à¤à¤¹à¥ परà¤à¤¤à¥ à¤à¤°à¤¾à¤° दà¥à¤µà¤¾à¤°à¥ सà¥à¤µà¥à¤à¤¾à¤°à¥à¤¯ नाहà¥."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "डिमन à¤à¤¾à¤°à¥à¤¯à¤°à¤¤ नाहà¥"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "डिमन PID %u नà¥à¤°à¥à¤ª à¤à¤¾à¤°à¥à¤¯à¤°à¤¤ à¤à¤¹à¥"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "डिमन नषà¥à¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr "हा à¤à¤¾à¤°à¥à¤¯à¤à¥à¤°à¤® रà¥à¤ नà¥à¤°à¥à¤ª à¤à¤¾à¤²à¤µà¤¿à¤£à¥à¤¯à¤¾à¤à¤°à¥à¤¤à¤¾ नाहॠ(à¤à¥à¤ªà¤°à¥à¤¯à¤à¤¤ --system निशà¥à¤à¤¿à¤¤ नाहà¥)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "रà¥à¤ परवानà¤à¥ à¤à¤µà¤¶à¥à¤¯à¤."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ à¤à¤à¤¨à¤¾à¤à¤à¤°à¥à¤¤à¤¾ --start समरà¥à¤¥à¥à¤¤ नाहà¥."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ पदà¥à¤§à¤¤à¥ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¾à¤°à¥à¤¯à¤°à¤¤, परà¤à¤¤à¥ --disallow-exit निशà¥à¤à¤¿à¤¤ à¤à¥à¤²à¥ नाहà¥!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"पà¥à¤°à¤£à¤¾à¤²à¥ पदà¥à¤§à¤¤à¥ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¾à¤°à¥à¤¯à¤°à¤¤, परà¤à¤¤à¥ --disallow-module-loading निशà¥à¤à¤¿à¤¤ à¤à¥à¤²à¥ नाहà¥!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ पदà¥à¤§à¤¤à¥ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¾à¤°à¥à¤¯à¤°à¤¤, SHM पदà¥à¤§à¤¤ à¤à¤¬à¤°à¤¨à¤°à¤¿à¤¤à¥à¤¯à¤¾ à¤
à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¤°à¤¤ à¤à¤¹à¥!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ पदà¥à¤§à¤¤à¥ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¾à¤°à¥à¤¯à¤°à¤¤, रिà¤à¤¾à¤®à¥ वà¥à¤³ à¤à¤¬à¤°à¤¨à¤°à¤¿à¤¤à¥à¤¯à¤¾ à¤
à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¤°à¤¤ à¤à¤¹à¥!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "पाà¤à¤ª à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() à¤
पयशà¥: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "डिमन सà¥à¤à¤¾à¤°à¥à¤à¤
प à¤
पयशà¥."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "डिमन सà¥à¤à¤¾à¤°à¥à¤à¤
प यशसà¥à¤µà¥."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "हॠPulseAudio %s à¤à¤¹à¥"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "à¤à¤à¤ªà¤¾à¤à¤²à¥à¤¶à¤¨ यà¤à¤®à¤¾à¤¨: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "à¤à¤à¤ªà¤¾à¤à¤²à¥à¤¶à¤¨ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "यà¤à¤®à¤¾à¤¨ वर à¤à¤¾à¤°à¥à¤¯à¤°à¤¤: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUs à¤à¤¢à¤³à¤²à¥."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "पान à¤à¤à¤¾à¤° %lu बाà¤à¤à¤¸à¥ à¤à¤¹à¥"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind समरà¥à¤¥à¤¨à¤¶à¥ à¤à¤à¤ªà¤¾à¤à¤² à¤à¥à¤²à¥: हà¥à¤¯"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind समरà¥à¤¥à¤¨à¤¶à¥ à¤à¤à¤ªà¤¾à¤à¤² à¤à¥à¤²à¥: नाहà¥"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind पदà¥à¤§à¤¤à¥à¤¤ à¤à¤¾à¤°à¥à¤¯à¤°à¤¤: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "à¤
नà¥à¤à¥à¤² बिलà¥à¤¡: हà¥à¤¯"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "à¤
नà¥à¤à¥à¤² बिलà¥à¤¡: नाहà¥"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG वरà¥à¤£à¥à¤à¥à¤¤, सरà¥à¤µ asserts à¤
à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH वरà¥à¤£à¥à¤à¥à¤¤, फà¤à¥à¤¤ à¤à¤²à¤¦ मारà¥à¤à¥à¤¯ asserts à¤
à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¥à¤²à¥."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "सरà¥à¤µ asserts à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¥à¤²à¥."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "मशà¥à¤¨ ID पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "मशà¥à¤¨ ID %s à¤à¤¹à¥."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "मशà¥à¤¨ ID %s à¤à¤¹à¥."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "रनà¤à¤¾à¤à¤® डिरà¥à¤à¥à¤à¥à¤°à¥ %s वापरत à¤à¤¹à¥."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "सà¥à¤¥à¤¿à¤¤à¥ डिरà¥à¤à¥à¤à¥à¤°à¥ %s वापरत à¤à¤¹à¥."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ पदà¥à¤§à¤¤à¥à¤¤ à¤à¤¾à¤°à¥à¤¯à¤°à¤¤: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -456,15 +336,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() à¤
पयशà¥."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "नवà¥à¤¨ à¤à¤à¥à¤-बिà¤à¤¦à¥à¤¤à¤¾ à¤à¤¾à¤à¤®à¤° à¤à¤ªà¤²à¤¬à¥à¤§! Bon appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -472,27 +352,27 @@ msgstr ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() à¤
पयशà¥."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "डिमन पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "विना विà¤à¤¾à¤ दाà¤à¤² à¤à¥à¤²à¥à¤¯à¤¾à¤¸ डिमन पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤¾à¤²à¥, à¤à¤¾à¤°à¥à¤¯ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ नà¤à¤¾à¤°."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "डिमन सà¥à¤à¤¾à¤°à¥à¤à¤
प पà¥à¤°à¥à¤£ à¤à¤¾à¤²à¥."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "डिमन पà¥à¤°à¥à¤£à¤ªà¤£à¥ बà¤à¤¦ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ पà¥à¤°à¤¾à¤°à¤à¤ à¤à¥à¤²à¥."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "डिमन नषà¥à¤ à¤à¥à¤²à¥."
@@ -827,14 +707,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### सà¤à¤¯à¥à¤à¤¨à¤¾ फाà¤à¤²: %s पासà¥à¤¨ वाà¤à¤¾ ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "रà¥à¤ परवानà¤à¥ वà¤à¤³à¤¤ à¤à¤¹à¥."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "à¤à¥à¤·à¤®à¤¤à¤¾ यशसà¥à¤µà¥à¤°à¤¿à¤¤à¥à¤¯à¤¾ CAP_SYS_NICE à¤à¤°à¥à¤¤à¤¾ मरà¥à¤¯à¤¾à¤¦à¥à¤¤ à¤à¥à¤²à¥."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio à¤à¤µà¤¾à¤ पà¥à¤°à¤£à¤¾à¤²à¥"
@@ -843,24 +719,6 @@ msgstr "PulseAudio à¤à¤µà¤¾à¤ पà¥à¤°à¤£à¤¾à¤²à¥"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio à¤à¤µà¤¾à¤ पà¥à¤°à¤£à¤¾à¤²à¥ सà¥à¤°à¥ à¤à¤°à¤¾"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio डिमन à¤à¤°à¥à¤¤à¤¾ à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ (नà¤à¤¾à¤°à¤¾à¤¤à¥à¤®à¤ Unix nice सà¥à¤¤à¤°)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio डिमन à¤à¤°à¥à¤¤à¤¾ रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ à¤à¤°à¤¾à¤° PulseAudio ला à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤ªà¤¾à¤¸à¥à¤¨ रà¥à¤à¤¤à¥."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ à¤à¤°à¤¾à¤° PulseAudio ला रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤ªà¤¾à¤¸à¥à¤¨ रà¥à¤à¤¤à¥."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "मà¥à¤¨à¥"
@@ -1233,183 +1091,187 @@ msgstr "à¤à¥à¤à¥ डà¥à¤à¤¾ वाà¤à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥"
msgid "Failed to open configuration file '%s': %s"
msgstr "सà¤à¤¯à¥à¤à¤¨à¤¾ फाà¤à¤² '%s' à¤à¤à¤¡à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à¤à¥à¤à¥ दाà¤à¤² à¤à¥à¤²à¥ नाहà¥. à¤à¥à¤³à¤µà¤£à¥à¤à¤¾ पà¥à¤°à¤¯à¤¤à¥à¤¨ à¤à¤°à¤¤ à¤à¤¹à¥."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à¤
परिà¤à¥à¤¤ वाढ '%s' à¤à¤°à¥à¤¤à¤¾ सà¤à¤¦à¥à¤¶ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤¾à¤²à¥"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "सà¥à¤à¥à¤°à¥à¤® रिà¤à¤¾à¤®à¥ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "पà¥à¤²à¥à¤¬à¥
ठसà¥à¤à¥à¤°à¥à¤® रिà¤à¤¾à¤®à¥ à¤à¥à¤²à¥.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "सरà¥à¤µà¤° à¤à¤°à¥à¤¤à¤¾ à¤à¥à¤³à¤µà¤£à¥ डà¥à¤°à¥à¤¨ à¤à¥à¤²à¥.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() à¤
पयशà¥: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "सà¥à¤à¥à¤°à¥à¤® यशसà¥à¤µà¥à¤°à¤¿à¤¤à¥à¤¯à¤¾ बनवलà¥.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "बफर मà¥à¤à¥à¤°à¥à¤: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "बफर मà¥à¤à¥à¤°à¥à¤: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "à¤à¤¦à¤¾à¤¹à¤°à¤£à¤¤à¤¯à¤¾ spec '%s', वाहिनॠनà¤à¤¾à¤¶à¤¾ '%s' वापरत à¤à¤¹à¥.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "साधन %s शॠà¤à¥à¤³à¤²à¥ (%u, %s ससà¥à¤ªà¥à¤à¤¡ à¤à¥à¤²à¥).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "सà¥à¤à¥à¤°à¥à¤® तà¥à¤°à¥à¤à¥: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® साधन ससà¥à¤ªà¥à¤à¤¡ à¤à¥à¤²à¥.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® साधन पà¥à¤¨à¥à¤¹à¤¾ सà¥à¤°à¥ à¤à¥à¤²à¥.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® underrun.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® overrun.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® सà¥à¤°à¥ à¤à¥à¤²à¥.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® साधन %s à¤à¤¡à¥ सà¥à¤¥à¤¾à¤¨à¤¾à¤à¤¤à¤°à¥à¤¤ à¤à¥à¤²à¥ (%u, %ssuspended).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "नाहॠ"
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "सà¥à¤à¥à¤°à¥à¤® बफर à¤à¥à¤£à¤§à¤°à¥à¤® बदललà¥.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "à¤à¥à¤³à¤µà¤£à¥ सà¥à¤¥à¤¾à¤ªà¥à¤¤ à¤à¥à¤²à¥.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "à¤à¥à¤³à¤µà¤£à¥ à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤¾à¤²à¥.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() à¤
पयशà¥: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤¾à¤²à¥.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "सà¤à¤à¥à¤¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤¾à¤²à¥, बाहà¥à¤° पडत à¤à¤¹à¥.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "विलà¤à¤¬ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "वà¥à¤³: %0.3f sec; विलà¤à¤¬: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() à¤
पयशà¥: %s\n"
#: ../src/utils/pacat.c:605
@@ -1531,34 +1393,34 @@ msgstr ""
"libpulse %s शॠà¤à¤à¤ªà¤¾à¤ à¤à¥à¤²à¥\n"
"libpulse %s शॠलिà¤à¤ à¤à¥à¤²à¥\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à¤
वà¥à¤§ वाहिनॠनà¤à¤¾à¤¶à¤¾ '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "à¤
वà¥à¤§ पà¥à¤¨à¥à¤¹ सà¥
मà¥à¤ªà¤² पदà¥à¤§à¤¤ '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à¤
वà¥à¤§ वाहिनॠनà¤à¤¾à¤¶à¤¾ '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à¤
वà¥à¤§ विलà¤à¤¬ सà¤à¤¯à¥à¤à¤¨à¤¾ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à¤
वà¥à¤§ à¤à¤¾à¤°à¥à¤¯ वà¥à¤³ सà¤à¤¯à¥à¤à¤¨à¤¾ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "à¤
वà¥à¤§ पà¥à¤¨à¥à¤¹ सà¥
मà¥à¤ªà¤² पदà¥à¤§à¤¤ '%s'."
#: ../src/utils/pacat.c:878
@@ -1567,60 +1429,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à¤
वà¥à¤§ सà¥
मà¥à¤ªà¤² सà¤à¤¯à¥à¤à¤¨à¤¾\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "à¤à¥à¤ª à¤à¤¾à¤¸à¥à¤¤ बाब.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "सà¥
मà¥à¤ªà¤² माहितॠपà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "à¤à¤µà¤¾à¤ फाà¤à¤² à¤à¤à¤¡à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "%s सà¥à¤à¥à¤°à¥à¤® सà¥
मà¥à¤ªà¤² सà¤à¤¯à¥à¤à¤¨à¤¾ '%s' शॠà¤à¤à¤¡à¤¤ à¤à¤¹à¥.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "सà¥
मà¥à¤ªà¤² माहितॠपà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "%s सà¥à¤à¥à¤°à¥à¤® सà¥
मà¥à¤ªà¤² सà¤à¤¯à¥à¤à¤¨à¤¾ '%s' शॠà¤à¤à¤¡à¤¤ à¤à¤¹à¥.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "वाहिनॠनà¤à¤¾à¤¶à¤¾ सà¥
मà¥à¤ªà¤² सà¤à¤¯à¥à¤à¤¨à¤¾à¤¶à¥ à¤à¥à¤³à¤¤ नाहà¥\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "%s सà¥à¤à¥à¤°à¥à¤® सà¥
मà¥à¤ªà¤² सà¤à¤¯à¥à¤à¤¨à¤¾ '%s' शॠà¤à¤à¤¡à¤¤ à¤à¤¹à¥.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "%s सà¥à¤à¥à¤°à¥à¤® सà¥
मà¥à¤ªà¤² सà¤à¤¯à¥à¤à¤¨à¤¾ '%s' शॠà¤à¤à¤¡à¤¤ à¤à¤¹à¥.\n"
#: ../src/utils/pacat.c:1006
@@ -1631,35 +1499,34 @@ msgstr "रà¥à¤à¥à¤°à¥à¤¡à¥à¤à¤"
msgid "playback"
msgstr "पà¥à¤²à¥à¤¬à¥
à¤"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() à¤
पयशà¥.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() à¤
पयशà¥.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() à¤
पयशà¥.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() à¤
पयशà¥: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() à¤
पयशà¥.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() à¤
पयशà¥.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() à¤
पयशà¥.\n"
#: ../src/utils/pasuspender.c:81
@@ -1687,6 +1554,11 @@ msgstr "पà¥à¤¨à¥à¤¹à¤¾ à¤à¤¾à¤²à¥ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "सावधानता: à¤à¤µà¤¾à¤ सरà¥à¤µà¤° सà¥à¤¥à¤¾à¤¨à¥à¤¯ नाहà¥, ससà¥à¤ªà¥à¤à¤¡ à¤à¤°à¤¤ नाहà¥.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "à¤à¥à¤³à¤µà¤£à¥ à¤
पयशà¥: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1727,6 +1599,21 @@ msgstr ""
"libpulse %s शॠà¤à¤à¤ªà¤¾à¤ à¤à¥à¤²à¥\n"
"libpulse %s शॠलिà¤à¤ à¤à¥à¤²à¥\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() à¤
पयशà¥.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() à¤
पयशà¥.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() à¤
पयशà¥.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2141,6 +2028,11 @@ msgstr ""
"libpulse %s सह à¤à¤à¤ªà¤¾à¤à¤² à¤à¥à¤²à¥\n"
"libpulse %s सह à¤à¥à¤³à¤²à¥\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à¤
वà¥à¤§ वाहिनॠनà¤à¤¾à¤¶à¤¾ '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "à¤à¥à¤ªà¤¯à¤¾ दाà¤à¤² à¤à¤°à¤£à¥à¤¯à¤¾à¤à¥à¤à¥ तातà¥à¤ªà¥à¤°à¥à¤¤à¥ फाà¤à¤² निशà¥à¤à¤¿à¤¤ à¤à¤°à¤¾\n"
@@ -2149,6 +2041,11 @@ msgstr "à¤à¥à¤ªà¤¯à¤¾ दाà¤à¤² à¤à¤°à¤£à¥à¤¯à¤¾à¤à¥à¤à¥ तातà¥
msgid "Failed to open sound file.\n"
msgstr "à¤à¤µà¤¾à¤ फाà¤à¤² à¤à¤à¤¡à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "सà¥
मà¥à¤ªà¤² माहितॠपà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
पयशà¥: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2212,11 +2109,6 @@ msgstr "तà¥à¤®à¥à¤¹à¤¾à¤²à¤¾ à¤à¤¾à¤°à¥à¤¡ नाव/निरà¥à¤¦à¥à¤¶
msgid "No valid command specified.\n"
msgstr "वà¥à¤§ à¤à¤¦à¥à¤¶ निशà¥à¤à¤¿à¤¤ à¤à¥à¤²à¥ नाहà¥.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() à¤
पयशà¥: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2333,11 +2225,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn à¤à¥à¤²à¥à¤ª à¤à¤°à¥à¤¤à¤¾ पà¥à¤°à¤µà¥à¤¶ पà¥à¤°à¤¾à¤ªà¥à¤¯ à¤
शà¤à¥à¤¯."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2352,7 +2244,7 @@ msgstr ""
"POLLOUT दà¥à¤µà¤¾à¤°à¥ सà¤à¥à¤ हà¥à¤£à¥ शà¤à¥à¤¯ à¤à¤¹à¥ -- तरॠपरसà¥à¤ªà¤° snd_pcm_avail() नॠ0 पà¥à¤°à¤µà¤¿à¤²à¥ à¤à¤¿à¤à¤µà¤¾ à¤à¤¤à¤° "
"मà¥à¤²à¥à¤¯ < min_avail à¤
सावà¥."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2368,15 +2260,15 @@ msgstr ""
"मà¥à¤²à¥à¤¯ < min_avail à¤
सावà¥."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "बà¤à¤¦ à¤à¤°à¤¾"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "High Fidelity Playback (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telephony Duplex (HSP/HFP)"
@@ -2384,6 +2276,130 @@ msgstr "Telephony Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio à¤à¤µà¤¾à¤ सरà¥à¤µà¤°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ बसशॠà¤à¥à¤³à¤µà¤£à¥ à¤à¤°à¤£à¥à¤¯à¤¾à¤¸ à¤
शà¤à¥à¤¯: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID पासà¥à¤¨ à¤à¥à¤²à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "à¤à¥à¤²à¤° à¤à¤¬à¤à¥à¤à¥à¤ वरà¥à¤² UID निशà¥à¤à¤¿à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK सतà¥à¤° पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥ à¤
पयशà¥."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "सतà¥à¤° à¤à¤¬à¤à¥à¤à¥à¤ वरà¥à¤² UID निशà¥à¤à¤¿à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction वाà¤à¤ª à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id निशà¥à¤à¤¿à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext वाà¤à¤ª à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext पà¥à¤°à¤¾à¤°à¤à¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "à¤à¥à¤²à¤° à¤
धिà¤à¥à¤¤ à¤à¤¹à¥ à¤à¥ नाहॠहॠà¤à¤³à¤à¤£à¥ शà¤à¥à¤¯ नाहà¥: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "परवानà¤à¥ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥ à¤
शà¤à¥à¤¯: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit नॠ'%s' सह पà¥à¤°à¤¤à¤¿à¤¸à¤¾à¤¦ दिला"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "PulseAudio डिमन à¤à¤°à¥à¤¤à¤¾ à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ (नà¤à¤¾à¤°à¤¾à¤¤à¥à¤®à¤ Unix nice सà¥à¤¤à¤°)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio डिमन à¤à¤°à¥à¤¤à¤¾ रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "पà¥à¤°à¤£à¤¾à¤²à¥ à¤à¤°à¤¾à¤° PulseAudio ला à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤ªà¤¾à¤¸à¥à¤¨ रà¥à¤à¤¤à¥."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "पà¥à¤°à¤£à¤¾à¤²à¥ à¤à¤°à¤¾à¤° PulseAudio ला रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤ªà¤¾à¤¸à¥à¤¨ रà¥à¤à¤¤à¥."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() à¤
पयशà¥: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() à¤
पयशà¥: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "à¤à¤ªà¤£ à¤à¤ '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¹à¥à¤¤, à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤°à¥à¤¤à¤¾ परवानà¤à¥ दà¥à¤¤à¥."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "à¤à¤ªà¤£ à¤à¤ '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤¹à¥à¤¤, रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤°à¥à¤¤à¤¾ परवानà¤à¥ दà¥à¤¤à¥."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit à¤à¤ªà¤²à¥à¤¯à¤¾à¤²à¤¾ acquire-high-priority परवानà¤à¥ दà¥à¤¤à¥."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit acquire-high-priority परवानà¤à¥ नà¤à¤¾à¤°à¤¤à¥."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit acquire-real-time परवानà¤à¥ पà¥à¤°à¤µà¤¿à¤¤à¥."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit acquire-real-time परवानà¤à¥ नà¤à¤¾à¤°à¤¤à¥."
+
+#~ 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 ""
+#~ "SUID रà¥à¤à¤²à¤¾ à¤à¥à¤² à¤à¥à¤²à¥ व वासà¥à¤¤à¤µà¤¿à¤-वà¥à¤³ व/à¤à¤¿à¤à¤µà¤¾ सà¤à¤¯à¥à¤à¤¨à¤¾ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ "
+#~ "विनà¤à¤¤à¥à¤à¥à¤¤ à¤à¥à¤²à¥. तरà¥, à¤à¤®à¤à¥à¤¯à¤¾à¤à¤¡à¥ à¤à¤µà¤¶à¥à¤¯à¤ परवानà¤à¥ नाहà¥:\n"
+#~ "à¤à¤®à¥à¤¹à¥ à¤à¤ '%s' à¤
à¤à¤¤à¤°à¥à¤à¤¤ नाहà¥, PolicyKit नॠविनà¤à¤¤à¥à¤à¥à¤¤ परवानà¤à¥ दà¥à¤£à¥à¤¯à¤¾à¤¸ नà¤à¤¾à¤° दिला व "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO सà¥à¤¤à¥à¤°à¥à¤¤ मरà¥à¤¯à¤¾à¤¦à¤¾ वाढविणॠà¤à¤µà¤¶à¥à¤¯à¤ à¤à¤¹à¥.\n"
+#~ "रियल-à¤à¤¾à¤à¤®/à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¤°à¤£à¥à¤¯à¤¾à¤à¤°à¥à¤¤à¤¾ à¤à¥à¤ªà¤¯à¤¾à¤¯à¥à¤à¥à¤¯ PolicyKit "
+#~ "परवानà¤à¥ पà¥à¤°à¤¾à¤ªà¥à¤¤ à¤à¤°à¤¾, à¤à¤¿à¤à¤µà¤¾ '%s' à¤à¥ सदसà¥à¤¯ बनवा, à¤à¤¿à¤à¤µà¤¾ या वापरà¤à¤°à¥à¤¤à¤¾ "
+#~ "à¤à¤°à¥à¤¤à¤¾RLIMIT_NICE/RLIMIT_RTPRIO सà¥à¤¤à¥à¤°à¥à¤¤ मरà¥à¤¯à¤¾à¤¦à¤¾ वाढवा."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "सà¤à¤¯à¥à¤à¤¨à¤¾ à¤
à¤à¤¤à¤°à¥à¤à¤¤ à¤à¤à¥à¤-पà¥à¤°à¤¾à¤§à¤¾à¤¨à¥à¤¯à¤à¥à¤°à¤® वà¥à¤³à¤ªà¤¤à¥à¤°à¤ à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¥à¤²à¥ à¤à¤°à¤¾à¤° दà¥à¤µà¤¾à¤°à¥ सà¥à¤µà¥à¤à¤¾à¤°à¥à¤¯ नाहà¥."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "यशसà¥à¤µà¥à¤°à¤¿à¤¤à¥à¤¯à¤¾ RLIMIT_RTPRIO वाढवलà¥"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO à¤
पयशà¥: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE à¤à¤°à¥à¤¤à¤¾ पà¥à¤°à¤¯à¤¤à¥à¤¨ बà¤à¤¦ à¤à¥à¤²à¥"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "सà¤à¤¯à¥à¤à¤¨à¤¾ à¤
à¤à¤¤à¤°à¥à¤à¤¤ रियल-à¤à¤¾à¤à¤® वà¥à¤³à¤ªà¤¤à¥à¤° à¤à¤¾à¤°à¥à¤¯à¤¾à¤¨à¥à¤µà¥à¤¤ à¤à¤°à¤¤ à¤à¤¹à¥ परà¤à¤¤à¥ à¤à¤°à¤¾à¤° दà¥à¤µà¤¾à¤°à¥ सà¥à¤µà¥à¤à¤¾à¤°à¥à¤¯ नाहà¥."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "à¤à¥à¤·à¤®à¤¤à¤¾ यशसà¥à¤µà¥à¤°à¤¿à¤¤à¥à¤¯à¤¾ CAP_SYS_NICE à¤à¤°à¥à¤¤à¤¾ मरà¥à¤¯à¤¾à¤¦à¥à¤¤ à¤à¥à¤²à¥."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() à¤
पयशà¥.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à¤à¤¨à¤²à¥à¤ मà¥à¤¨à¥"
diff --git a/po/nl.po b/po/nl.po
index a75efed0..452ff5ba 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-15 21:04+0200\n"
"Last-Translator: Geert Warrink \n"
"Language-Team: Dutch \n"
@@ -17,7 +17,12 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -30,7 +35,7 @@ msgstr ""
"Waarschijnlijk is dit een bug in de ALSA driver '%s'. Rapporteer dit "
"probleem a.u.b. aan de ALSA ontwikkelaars."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -43,7 +48,7 @@ msgstr ""
"Waarschijnlijk is dit een bug in de ALSA driver '%s'. Rapporteer dit "
"probleem a.u.b. aan de ALSA ontwikkelaars."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -69,7 +74,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Intern geluid"
@@ -89,220 +94,92 @@ msgstr "Kon die nieuwe dl lader niet toekennen."
msgid "Failed to add bind-now-loader."
msgstr "Kon bind-now-loader niet toevoegen."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Kan niet verbinden met systeem bus: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Kan geen bezoeker krijgen van PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Kan UID niet instellen op caller object."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Kon geen CK sessie krijgen."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Kan UID niet instellen op sessie object."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Kan PolKitAction niet toekennen."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Kan action_id niet instellen"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Kan PolKitContext niet toekennen."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Kan PolKitContext niet intialiseren: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Kon niet bepalen of bezoeker gemachtigd is: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Kan geen authorisatie krijgen: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit antwoordde met '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Ontving signaal %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Afsluiten."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Kon gebruiker '%s' niet vinden."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Kon groep '%s' niet vinden."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Gebruiker '%s' (UID %lu) en groep '%s' (GID %lu) gevonden."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID van gebruiker '%s' en van groep '%s' passen niet bij elkaar."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Persoonlijke map van gebruiker '%s' is niet '%s', negeer het."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Aanmaken van '%s': %s mislukte"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Veranderen van groeps lijst: '%s' mislukte"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Veranderen van GID: %s mislukte"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Veranderen van UID: %s mislukte"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Root rechten met succes laten vervallen."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Systeem brede mode wordt op dit platform niet ondersteund."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) mislukte: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Analyseren van de commandoregel mislukte."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "Wij zijn in de groep '%s', wat plannen met hoge prioriteit toestaat."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "Wij zijn in de groep '%s', war real-time planning toestaat."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit kent ons acquire-high-priority rechten toe."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit weigert ons acquire-high-priority rechten."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit kent ons acquire-real-time rechten toe."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit weigert ons acquire-real-time rechten."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"Aangeroepen met SUID root en real-time en/of high-priority inplannen was "
-"verzocht in de configuratie. Echter de nodige rechten ontbreken:\n"
-"We zijn niet in groep '%s', PolicyKit weigert om ons de gevraagde rechten te "
-"geven en we hebben geen rect om de RLIMIT_NICE/RLIMIT_RTPRIO limieten te "
-"verhogen.\n"
-"Voor het aanzetten van real-time/high-priority inplannen mort je juiste "
-"PolicyKit privileges hebben, of lid van '%s\" worden, of de RLIMIT_NICE/"
-"RLIMIT_RTPRIO limieten voor deze gebruiker verhogen."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Hoge prioriteit inplannen is aangezet in de configuratie maar niet "
-"toegestaan door de richtlijnen."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO met succes verhoogd"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO mislukte: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Opgeven CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Real-time inplannen is aangezet in de configuratie maar niet toegestaan door "
-"de richtlijnen."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Daemon draait niet"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Daemon draait met PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Afschieten mislukt van daemon: '%s'"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -310,151 +187,151 @@ msgstr ""
"Dit programma is niet bedoeld om als root gedraaid te worden (behalve als --"
"system is opgegeven)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Root rechten vereisd"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start wordt niet ondersteund voor systeem instances"
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "Draaiend in systeem mode, maar --disallow-exit is niet gezet!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"Draaiend in systeem mode, maar --disallow-module-loading is niet gezet!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "Draaiend in systeem mode, geforceerd uitzetten van SHM mode!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "Draaiend in systeem mode, geforceerd uitzetten van exit idle time!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Verkrijgen van stdio mislukte."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe mislukte: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() mislukte: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() mislukte: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Daemon opstarten mislukte."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Daemon met succes opgestart."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Dit is PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Compilatie host: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Compilatie CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Draaiend op host: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPU's gevonden."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "Pagina grootte is %lu bytes"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Gecompileerd met Valgrind ondersteuning: ja"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Gecompileerd met Valgrind ondersteuning: nee"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Draaiend in valgrind mode: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimaal gebouwd: ja"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimaak gebouwd: nee"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG gedefinieerd, alle verklaringen uitgezet."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH gedefinieerd, alleen snel pad verklaringen uitgezet."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Alle verklaringen aangezet."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Machine ID verkrijgen mislukte"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "Machine ID is: %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "Machine ID is: %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Gebruik van runtime map %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Verbruik van state map %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Draaiend in systeem mode: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -464,15 +341,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() mislukte."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Verse high-resolution timers beschikbaar! Smakelijk eten!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -480,27 +357,27 @@ msgstr ""
"Kerel, je kernel stinkt! De aanbeveling van de chef is vandaag Linux met "
"aangezette high-resolution timers!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() mislukte."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Initialiseren van de daemon mislukte."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Daemon opgestart zonder geladen modules, dat werkt niet."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Daemon opstarten is klaar."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Daemon afsluiten is begonnen."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Daemon is afgesloten."
@@ -843,14 +720,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr ""
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr ""
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr ""
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr ""
@@ -859,24 +732,6 @@ msgstr ""
msgid "Start the PulseAudio Sound System"
msgstr ""
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1249,184 +1104,184 @@ msgstr ""
msgid "Failed to open configuration file '%s': %s"
msgstr ""
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr ""
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr ""
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
+msgstr "Kon gebruiker '%s' niet vinden."
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+msgid "Playback stream drained."
msgstr ""
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+msgid "Draining connection to server."
msgstr ""
-#: ../src/utils/pacat.c:135
+#: ../src/utils/pacat.c:136
#, c-format
-msgid "pa_stream_drain(): %s\n"
+msgid "pa_stream_drain(): %s"
msgstr ""
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
+msgstr "read() mislukte: %s"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
-msgstr ""
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
+msgstr "read() mislukte: %s"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:307
+msgid "Stream successfully created."
msgstr ""
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-msgstr ""
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
+msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:312
+#: ../src/utils/pacat.c:314
#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr ""
-#: ../src/utils/pacat.c:316
+#: ../src/utils/pacat.c:317
#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr ""
-#: ../src/utils/pacat.c:320
+#: ../src/utils/pacat.c:321
#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+msgid "Using sample spec '%s', channel map '%s'."
msgstr ""
-#: ../src/utils/pacat.c:330
+#: ../src/utils/pacat.c:325
#, c-format
-msgid "Stream error: %s\n"
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr ""
-#: ../src/utils/pacat.c:340
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
+msgstr "Interne fout"
+
+#: ../src/utils/pacat.c:345
#, c-format
-msgid "Stream device suspended.%s \n"
+msgid "Stream device suspended.%s"
msgstr ""
-#: ../src/utils/pacat.c:342
+#: ../src/utils/pacat.c:347
#, c-format
-msgid "Stream device resumed.%s \n"
+msgid "Stream device resumed.%s"
msgstr ""
-#: ../src/utils/pacat.c:350
+#: ../src/utils/pacat.c:355
#, c-format
-msgid "Stream underrun.%s \n"
+msgid "Stream underrun.%s"
msgstr ""
-#: ../src/utils/pacat.c:357
+#: ../src/utils/pacat.c:362
#, c-format
-msgid "Stream overrun.%s \n"
+msgid "Stream overrun.%s"
msgstr ""
-#: ../src/utils/pacat.c:364
+#: ../src/utils/pacat.c:369
#, c-format
-msgid "Stream started.%s \n"
+msgid "Stream started.%s"
msgstr ""
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr ""
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr ""
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+msgid "Stream buffer attributes changed.%s"
msgstr ""
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
-msgstr ""
-
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
+msgstr "Verbinding geweigert"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
+msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
+msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
+msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr ""
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
+msgstr "Verbinding geweigert"
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr ""
-
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+msgid "Got EOF."
msgstr ""
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
-msgstr ""
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
+msgstr "read() mislukte: %s"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
+msgstr "Ontving signaal %s."
#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
+msgstr "Aanmaken van '%s': %s mislukte"
+
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr ""
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
+msgstr "pa_core_new() mislukte."
#: ../src/utils/pacat.c:605
#, c-format
@@ -1496,34 +1351,34 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
+msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
+msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
+msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:878
@@ -1532,58 +1387,59 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
-msgstr ""
+#, fuzzy
+msgid "Invalid sample specification"
+msgstr "Ongeldige resample methode '%s'."
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "open(): %s"
+msgstr "fork(): %s"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "dup2(): %s"
+msgstr "waitpid(): %s"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+msgid "Too many arguments."
msgstr ""
#: ../src/utils/pacat.c:930
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr ""
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Analyseren van de commandoregel mislukte."
#: ../src/utils/pacat.c:956
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
-msgid "Failed to determine sample specification from file.\n"
+#: ../src/utils/pacat.c:959
+msgid "Failed to determine sample specification from file."
msgstr ""
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
+msgid "Warning: Failed to determine channel map from file."
msgstr ""
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+msgid "Channel map doesn't match sample specification"
msgstr ""
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
+msgid "Warning: failed to write channel map to file."
msgstr ""
#: ../src/utils/pacat.c:1005
#, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr ""
#: ../src/utils/pacat.c:1006
@@ -1594,36 +1450,35 @@ msgstr ""
msgid "playback"
msgstr ""
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr ""
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
+msgstr "pa_core_new() mislukte."
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
-msgstr ""
+#, fuzzy
+msgid "io_new() failed."
+msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
+msgstr "pa_core_new() mislukte."
+
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
#, c-format
-msgid "pa_context_new() failed.\n"
+msgid "pa_context_connect() failed: %s"
msgstr ""
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
msgstr "pa_core_new() mislukte."
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr ""
-
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr ""
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
+msgstr "pa_core_new() mislukte."
#: ../src/utils/pasuspender.c:81
#, c-format
@@ -1650,6 +1505,11 @@ msgstr ""
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr ""
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr ""
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1680,6 +1540,21 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr ""
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr ""
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1969,6 +1844,11 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Ongeldige resample methode '%s'."
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr ""
@@ -1977,6 +1857,10 @@ msgstr ""
msgid "Failed to open sound file.\n"
msgstr ""
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr ""
+
#: ../src/utils/pactl.c:951
msgid "Warning: Failed to determine sample specification from file.\n"
msgstr ""
@@ -2033,11 +1917,6 @@ msgstr ""
msgid "No valid command specified.\n"
msgstr ""
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr ""
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2147,11 +2026,11 @@ msgstr ""
msgid "write(): %s"
msgstr ""
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr ""
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2162,7 +2041,7 @@ msgid ""
"returned 0 or another value < min_avail."
msgstr ""
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2174,15 +2053,15 @@ msgid ""
msgstr ""
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr ""
@@ -2190,6 +2069,103 @@ msgstr ""
msgid "PulseAudio Sound Server"
msgstr ""
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Kan niet verbinden met systeem bus: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Kan geen bezoeker krijgen van PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Kan UID niet instellen op caller object."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Kon geen CK sessie krijgen."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Kan UID niet instellen op sessie object."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Kan PolKitAction niet toekennen."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Kan action_id niet instellen"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Kan PolKitContext niet toekennen."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Kan PolKitContext niet intialiseren: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Kon niet bepalen of bezoeker gemachtigd is: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Kan geen authorisatie krijgen: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit antwoordde met '%s'"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Wij zijn in de groep '%s', wat plannen met hoge prioriteit toestaat."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "Wij zijn in de groep '%s', war real-time planning toestaat."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit kent ons acquire-high-priority rechten toe."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit weigert ons acquire-high-priority rechten."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit kent ons acquire-real-time rechten toe."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit weigert ons acquire-real-time rechten."
+
+#~ 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 ""
+#~ "Aangeroepen met SUID root en real-time en/of high-priority inplannen was "
+#~ "verzocht in de configuratie. Echter de nodige rechten ontbreken:\n"
+#~ "We zijn niet in groep '%s', PolicyKit weigert om ons de gevraagde rechten "
+#~ "te geven en we hebben geen rect om de RLIMIT_NICE/RLIMIT_RTPRIO limieten "
+#~ "te verhogen.\n"
+#~ "Voor het aanzetten van real-time/high-priority inplannen mort je juiste "
+#~ "PolicyKit privileges hebben, of lid van '%s\" worden, of de RLIMIT_NICE/"
+#~ "RLIMIT_RTPRIO limieten voor deze gebruiker verhogen."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "Hoge prioriteit inplannen is aangezet in de configuratie maar niet "
+#~ "toegestaan door de richtlijnen."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO met succes verhoogd"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO mislukte: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Opgeven CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Real-time inplannen is aangezet in de configuratie maar niet toegestaan "
+#~ "door de richtlijnen."
+
#~ msgid "Analog Mono"
#~ msgstr "Analoog mono"
diff --git a/po/or.po b/po/or.po
index 1fcf836e..b6a20671 100644
--- a/po/or.po
+++ b/po/or.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-09 13:16+0530\n"
"Last-Translator: Manoj Kumar Giri \n"
"Language-Team: Oriya \n"
@@ -23,7 +23,12 @@ msgstr ""
"\n"
"\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -36,7 +41,7 @@ msgstr ""
"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
"to the ALSA developers."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -49,7 +54,7 @@ msgstr ""
"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
"to the ALSA developers."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -75,7 +80,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à¬à¬ààନàତରàଣ ଧàà±à¬¨à¬¿"
@@ -95,216 +100,92 @@ msgstr "ନàତନ dl ଧାରà¬à¬à ବଣàà¬à¬¨ à¬à¬°à¬¿à¬¬à¬¾à¬°à
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loaderà¬à ଯàଠà¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ।"
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "ତନàତàର ପରିପଥ ସହିତ ସà¬à¬¯àଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PIDରà à¬à¬²à¬°à¬à ପାà¬à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "à¬à¬²à¬° ବସàତàରà UID à¬à ସàଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK à¬
ଧିବàଶନà¬à ପାà¬à¬¬à¬¾à¬°à ବିଫଳ।"
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "à¬
ଧିବàଶନ ବସàତàରà UID ସàଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitActionà¬à ବଣàà¬à¬¨ à¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id ସàଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext ବଣàà¬à¬¨ à¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContextà¬à à¬à¬°à¬®àଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "à¬à¬²à¬° à¬
ଧିà¬à¬¾à¬° ପàରାପàତ à¬à¬¿ ନàହଠତାହା ନିରàଦàଧାରଣ à¬à¬°à¬¿ ପାରିଲା ନାହିà¬: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "auth ପାà¬à¬²à¬¾ ନାହିà¬: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit '%s' ସହିତ à¬à¬¤àତର ଦàà¬à¬¥à¬¿à¬²à¬¾"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "ସà¬à¬àତ %s ପାà¬à¬²à¬¾à¥¤"
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "à¬à¬¤àତàà¬à¬¿à¬¤ à¬à¬°àà¬
à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "à¬à¬¾à¬³à¬ '%s' à¬à à¬àà¬à¬¿à¬¬à¬¾à¬°à ବିଫଳ।"
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "ସମàହ '%s' à¬à à¬àà¬à¬¿ ପାà¬à¬¬à¬¾à¬°à ବିଫଳ।"
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "à¬à¬¾à¬³à¬ '%s' (UID %lu) à¬à¬¬à¬ ସମàହ '%s' (GID %lu) ମିଳିଲା।"
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "à¬à¬¾à¬³à¬ '%s' à¬à¬¬à¬ ସମàହ '%s' ର GID ମàଳà¬à¬¾à¬à¬¨à¬¾à¬¹à¬¿à¬à¥¤"
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "à¬à¬¾à¬³à¬ '%s' ର ମàà¬àà ଡିରàà¬àà¬àରàà¬à¬¿ '%s' ନàହà¬, à¬
à¬àରାହàà à¬à¬°àà¬
à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' ନିରàମାଣ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "ସମàହ ତାଲିà¬à¬¾à¬à ପରିବରàତàତନ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID à¬à ପରିବରàତàତନ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID à¬à ପରିବରàତàତନ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "ମàà¬àà à¬à¬¾à¬³à¬ à¬
ଧିà¬à¬¾à¬°à¬à ସଫଳତାର ସହିତ ପà¬à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "ତନàତàରମà ଧାରା à¬à¬¹à¬¿ ପàଲାà¬à¬«à¬°àମରà à¬
ସମରàଥିତ।"
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "ପାଠàà ନିରàଦàଦàଶà¬à ବିଶàଳàଷଣ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ।"
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "à¬à¬®à ମାନà ଶàରàଣà '%s'ରà à¬
à¬à, à¬à¬àà¬-ପàରାଥମିà¬à¬¤à¬¾ ଯàà¬à¬¨à¬¾à¬à à¬
ନàମତି ଦàà¬à¥¤"
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "à¬à¬®à ମାନà ଶàରàଣà '%s'ରà à¬
à¬à, ପàରà¬àତ- ସମà ଯàà¬à¬¨à¬¾à¬à à¬
ନàମତି ଦàà¬à¥¤"
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit à¬à¬®à¬à acquire-high-priority à¬
ଧିà¬à¬¾à¬° ଦàà¬à¬¥à¬¾à¬à¥¤"
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit acquire-high-priority à¬
ଧିà¬à¬¾à¬°à¬à ବାରଣ à¬à¬°à¬¿à¬¥à¬¾à¬à¥¤"
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit à¬à¬®à¬à acquire-real-time à¬
ଧିà¬à¬¾à¬° ଦàà¬à¬¥à¬¾à¬à¥¤"
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit acquire-real-time à¬
ଧିà¬à¬¾à¬°à¬à ବାରଣ à¬à¬°à¬¿à¬¥à¬¾à¬à¥¤"
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"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."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr "à¬à¬àà¬-ପàରାଥମିଠଯàà¬à¬¨à¬¾ ବିନààାସରà ସà¬àରିà à¬à¬¿à¬¨àତà ନàତି ଦàà±à¬¾à¬°à¬¾ à¬
ନàମàଦିତ ନàହà¬à¥¤"
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO à¬à ସଫଳତାର ସହିତ ବàଦàଧିà¬à¬°à¬¿à¬¥à¬¾à¬"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO ବିଫଳ ହàà¬à¬à¬¿: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE à¬à ତààାଠà¬à¬°à¬¿à¬¥à¬¾à¬"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "Real-time ଯàà¬à¬¨à¬¾ ବିନààାସ ଫାà¬à¬²à¬°à ସà¬àରିà ହàà¬à¬¥à¬¾à¬ à¬à¬¿à¬¨àତà ନିତà ଦàà±à¬¾à¬°à¬¾ à¬
ନàମàଦିତ ନàହà¬à¥¤"
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "ଡàମନ à¬à¬¾à¬²àନାହିà¬"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "ଡàମନ PID %u ପରି à¬à¬¾à¬²àà¬
à¬à¬¿"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ଡàମନà¬à ବନàଦ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -312,150 +193,150 @@ msgstr ""
"à¬à¬¹à¬¿ ପàରà¬àରାମà¬à¬¿ ମàà¬àà à¬à¬¾à¬³à¬ à¬à¬¾à¬¬à¬°à à¬à¬²à¬¾à¬à¬¬à¬¾ ପାà¬à¬ ନିରàଦàଦିଷàଠହàà¬à¬¨à¬¾à¬¹à¬¿à¬ (unless --system is "
"specified)।"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "ମàà¬àà à¬à¬¾à¬³à¬ à¬
ଧିà¬à¬¾à¬° à¬à¬¬à¬¶ààà¬à¥¤"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start ତନàତàର ସàଥିତି ପାà¬à¬ ସମରàଥିତ ନàହà¬à¥¤"
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "ତନàତàର ଧାରାରà à¬à¬¾à¬²àà¬
à¬à¬¿, à¬à¬¿à¬¨àତà --disallow-exit à¬à ସàଠà¬à¬°à¬¾à¬¯à¬¾à¬à¬¨à¬¾à¬¹à¬¿à¬!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "ତନàତàର ଧାରାରà à¬à¬¾à¬²àà¬
à¬à¬¿, à¬à¬¿à¬¨àତà --disallow-module-loading à¬à ସàଠà¬à¬°à¬¾à¬¯à¬¾à¬à¬¨à¬¾à¬¹à¬¿à¬!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "ତନàତàର ଧାରାରà à¬à¬¾à¬²àà¬
à¬à¬¿, SHM ଧାରାà¬à ବାଧàଯତାମàଳଠà¬à¬¾à¬¬à¬°à ନିଷàà¬àରିà à¬à¬°à¬¿à¬¥à¬¾à¬!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "ତନàତàର ଧାରାରà à¬à¬¾à¬²àà¬
à¬à¬¿, ପàରସàଥାନ ସàଥିର ସମàà¬à ବାଧàଯତାମàଳଠà¬à¬¾à¬¬à¬°à ନିଷàà¬àରିà à¬à¬°à¬¿à¬¥à¬¾à¬!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio à¬à à¬
ଧିà¬à¬¾à¬° à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ।"
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "ପାà¬à¬ª ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ଡàମନ à¬à¬°à¬®àଠବିଫଳ ହàà¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "ଡàମନ à¬à¬°à¬®àଠସଫଳ ହàà¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à¬à¬¹à¬¾ ହàà¬à¬à¬¿ PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "ସà¬à¬à¬³à¬¨ à¬à¬§à¬¾à¬°: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "ସà¬à¬à¬³à¬¨ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "à¬à¬§à¬¾à¬°à¬°à à¬à¬¾à¬²àà¬
à¬à¬¿: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUs ମିଳିà¬à¬¿à¥¤"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "ପàଷàଠା à¬à¬à¬¾à¬°à¬à¬¿ ହàà¬à¬à¬¿ %lu ବାà¬à¬"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind ସମରàଥନ ସହିତ ସà¬à¬à¬³à¬¨ ହàà¬à¬à¬¿: yes"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind ସମରàଥନ ସହିତ ସà¬à¬à¬³à¬¨ ହàà¬à¬à¬¿: no"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind ଧାରାରà à¬à¬¾à¬²àà¬
à¬à¬¿: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "à¬à¬ªà¬¯àà¬àତ ନିରàମାଣ: yes"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "à¬à¬ªà¬¯àà¬àତ ନିରàମାଣ: no"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG à¬à ବààାà¬ààା à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿, ସମସàତ ନିଶàà¬àà¬à ନିଷàà¬àରିà à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH à¬à ବààାà¬ààା à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿, à¬àବଳ ତàବàର ପଥ ନିଶàà¬àà¬à ନିଷàà¬àରିà à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "ସମସàତ ନିଶàà¬àà¬à ସà¬àରିà à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "ଯନàତàର ID ପାà¬à¬¬à¬¾à¬°à ବିଫଳ"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "ଯନàତàର ID à¬à¬¿ ହàà¬à¬à¬¿ %s।"
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "ଯନàତàର ID à¬à¬¿ ହàà¬à¬à¬¿ %s।"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "ପàରà¬à¬³à¬¿à¬¤ ଡିରàà¬àà¬àରà %s à¬à ବààବହାର à¬à¬°àà¬
à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "ସàଥିତି ଡିରàà¬àà¬àରà %s à¬à ବààବହାର à¬à¬°à¬¿à¥¤"
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "ତନàତàର ଧାରାରà à¬à¬¾à¬²àà¬
à¬à¬¿: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -465,15 +346,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() ବିଫଳ ହàà¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "ସତàଠà¬à¬àà¬-ବିà¬àଦନ ସମà ମାପଠà¬à¬ªà¬²à¬¬àଧ! Bon appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -481,27 +362,27 @@ msgstr ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ଡàମନà¬à à¬à¬°à¬®àଠà¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ।"
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "ଧାରଣ ହàà¬à¬¥à¬¿à¬¬à¬¾ à¬à¬à¬à¬¾à¬à¬¶à¬àଡ଼ିଠବିନା ଡàମନ à¬à¬°à¬®àଠହàà¬à¬à¬¿, à¬à¬¾à¬°àଯàà à¬à¬°à¬¿à¬¬à¬¾à¬à ବାରଣ à¬à¬°àà¬
à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ଡàମନ à¬à¬°à¬®àଠସମàପàରàଣàଣ ହàà¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ଡàମନ ବନàଦà¬à à¬à¬°à¬®àଠà¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤"
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ଡàମନà¬à ସମାପàତ à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤"
@@ -835,14 +716,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### ବିନààାସ ଫାà¬à¬²à¬°à ପଢ଼ନàତà: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "ମàà¬àà à¬à¬¾à¬³à¬ à¬
ଧିà¬à¬¾à¬°à¬àଡ଼ିà¬à ବାତିଲ à¬à¬°àà¬
à¬à¬¿à¥¤"
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "CAP_SYS_NICE à¬à ସàମିତ à¬àଷମତା ସଫଳତାର ସହିତ ଦିà¬à¬¹àà¬à¬à¬¿à¥¤"
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio ଧàà±à¬¨à¬¿ ତନàତàର"
@@ -851,24 +728,6 @@ msgstr "PulseAudio ଧàà±à¬¨à¬¿ ତନàତàର"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio ଧàà±à¬¨à¬¿ ତନàତàରà¬à à¬à¬°à¬®àଠà¬à¬°à¬¨àତà"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio ଡàମନ ପାà¬à¬ à¬à¬àà¬-ପàରାଥମିà¬à¬¤à¬¾ ଯàà¬à¬¨à¬¾ (à¬à¬£à¬¾à¬¤àମଠUnix ସàନàଦର ସàତର)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio ଡàମନ ପାà¬à¬ ପàରà¬àତ-ସମà ଯàà¬à¬¨à¬¾"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "ତନàତàର ନàତି PulseAudio à¬à à¬à¬àà¬-ପàରାଥମିଠଯàà¬à¬¨à¬¾à¬à à¬àରହଣ à¬à¬°à¬¿à¬¬à¬¾à¬°à à¬
à¬à¬à¬¾à¬à¬¥à¬¾à¬à¥¤"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "ତନàତàର ନàତି PulseAudio à¬à ପàରà¬àତ-ସମà ଯàà¬à¬¨à¬¾à¬à à¬àରହଣ à¬à¬°à¬¿à¬¬à¬¾à¬°à à¬
à¬à¬à¬¾à¬à¬¥à¬¾à¬à¥¤"
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "ମàନà"
@@ -1241,183 +1100,187 @@ msgstr "à¬àà¬à¬¿ ତଥààà¬à ବିଶàଳàଷଣ à¬à¬°à¬¿à¬¬à¬¾
msgid "Failed to open configuration file '%s': %s"
msgstr "ବିନààାସ ଫାà¬à¬² '%s' à¬à à¬àଲିବାରà ବିଫଳ: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à¬àଣସି à¬àà¬à¬¿ ଧାରଣ à¬à¬°à¬¾à¬¯à¬¾à¬à¬¨à¬¾à¬¹à¬¿à¬à¥¤ ତାହା ବିନା ସà¬à¬¯àଠà¬à¬°à¬¿à¬¬à¬¾à¬à ପàରà¬àଷàà¬à¬¾ à¬à¬°àà¬
à¬à¬¿à¥¤"
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à¬
à¬à¬£à¬¾ à¬
ନàଲà¬àନ '%s' ପାà¬à¬ ସନàଦàଶ à¬àରହଣ à¬à¬°à¬¿à¬
à¬à¬¿"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "ଧାରାà¬à ବାହାର à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "ପà¬à¬à¬²à¬¾ ଧାରାà¬à ବାହାର à¬à¬°à¬¾à¬¯à¬¾à¬à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "ସରàà¬à¬° ପàରତି ଡàରàନିà¬àଠସà¬à¬¯àà¬à¥¤\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "ଧାରା ସଫଳତାର ସହିତ ନିରàମାଣ ହàà¬à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "ବଫର ମàà¬àରିà¬à¬¸: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "ବଫର ମàà¬àରିà¬à¬¸: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "ନମàନା spec '%s' ବààବହାର à¬à¬°à¬¿, à¬ààାନàଲ ମààାପ '%s'।\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "à¬à¬ªà¬à¬°à¬£ %s ସହିତ ସà¬à¬¯àà¬àତ ହàà¬à¬à¬¿ (%u, %ssuspended)।\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ଧାରା ତàରàà¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "ଧାରା à¬à¬ªà¬à¬°à¬£ ନିଲମàବିତ ହàà¬à¬à¬¿à¥¤%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "ଧାରା à¬à¬ªà¬à¬°à¬£ ପàନଠà¬à¬³à¬¨ ହàà¬à¬à¬¿à¥¤%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ଧାରା underrun.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "ଧାରା overrun.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "ଧାରା à¬à¬°à¬®àଠହàà¬à¬à¬¿à¥¤%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "ଧାରା à¬à¬ªà¬à¬°à¬£ %sà¬à à¬à¬¤à¬¿ à¬à¬°à¬¿à¬à¬¿ (%u, %ssuspended).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "not "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "ଧାରା ବଫର à¬àଣà¬àଡ଼ିଠପରିବରàତàତନ ହàà¬à¬à¬¿à¥¤%s\n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "ସà¬à¬¯àଠସàଥାପିତ ହàà¬à¬à¬¿à¥¤%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "ସà¬à¬¯àଠବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF ପାà¬à¬
à¬à¬¿à¥¤\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF ପାà¬à¬
à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "ସà¬à¬àତ ପାà¬à¬²à¬¾, ପàରସàଥାନ à¬à¬°àà¬
à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "ବିଳମàବତା ପାà¬à¬¬à¬¾à¬°à ବିଫଳ: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "ସମà: %0.3f sec; ବିଳମàବତା: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
#: ../src/utils/pacat.c:605
@@ -1536,34 +1399,34 @@ msgstr ""
"libpulse %s ସହିତ ସà¬à¬à¬³à¬¿à¬¤\n"
"libpulse %s ସହିତ ସà¬à¬¯àà¬àତ\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à¬
ବàଧ à¬ààାନàଲ ମààାପ '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "à¬
ବàଧ ପàନଠପàରତିଦରàଶନ ଧାରା '%s'।"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à¬
ବàଧ à¬ààାନàଲ ମààାପ '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à¬
ବàଧ ବିଳମàବତା ବିଶàଷ ଲà¬àଷଣ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à¬
ବàଧ ପଦàଧତି ସମà ବିଶàଷ ଲà¬àଷଣ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "à¬
ବàଧ ପàନଠପàରତିଦରàଶନ ଧାରା '%s'।"
#: ../src/utils/pacat.c:878
@@ -1572,60 +1435,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à¬
ବàଧ ନମàନା ବିଶàଷ ଲà¬àଷଣ\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "à¬
ତààଧିଠସàà±à¬¤à¬¨àତàରà¬à¬°à¥¤\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "ନମàନା ସàà¬à¬¨à¬¾ ପାà¬à¬¬à¬¾à¬°à ବିଫଳ: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "ଧàà±à¬¨à¬¿ ଫାà¬à¬² à¬àଲିବାରà ବିଫଳ।\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "ନମàନା ବିଶàଷ ଲà¬àଷଣ '%s' ସହିତ à¬àà¬à¬¿à¬ %s ଧାରାà¬à à¬àଲàà¬
à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "ନମàନା ସàà¬à¬¨à¬¾ ପାà¬à¬¬à¬¾à¬°à ବିଫଳ: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "ନମàନା ବିଶàଷ ଲà¬àଷଣ '%s' ସହିତ à¬àà¬à¬¿à¬ %s ଧାରାà¬à à¬àଲàà¬
à¬à¬¿à¥¤\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "ନମàନା ବିଶàଷ ଲà¬àଷଣ ସହିତ à¬ààାନàଲ ମààାପ ମàଳ à¬à¬¾à¬à¬¨à¬¾à¬¹à¬¿à¬\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "ନମàନା ବିଶàଷ ଲà¬àଷଣ '%s' ସହିତ à¬àà¬à¬¿à¬ %s ଧାରାà¬à à¬àଲàà¬
à¬à¬¿à¥¤\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "ନମàନା ବିଶàଷ ଲà¬àଷଣ '%s' ସହିତ à¬àà¬à¬¿à¬ %s ଧାରାà¬à à¬àଲàà¬
à¬à¬¿à¥¤\n"
#: ../src/utils/pacat.c:1006
@@ -1636,35 +1505,34 @@ msgstr "à¬
ନàଲିପି à¬à¬°àà¬
à¬à¬¿"
msgid "playback"
msgstr "ପà¬à¬à¬²à¬¾"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() ବିଫଳ ହàà¬à¬à¬¿: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
#: ../src/utils/pasuspender.c:81
@@ -1692,6 +1560,11 @@ msgstr "ପàନଠà¬à¬³à¬¨ à¬à¬°à¬¿à¬¬à¬¾à¬°à ବିଫଳ: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "WARNING: ଧàà±à¬¨à¬¿ ସରàà¬à¬°à¬à¬¿ ସàଥାନàà ନàହà¬, ନିଲମàବିତ à¬à¬°àନାହିà¬à¥¤\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "ସà¬à¬¯àଠବିଫଳ ହàà¬à¬à¬¿: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1731,6 +1604,21 @@ msgstr ""
"libpulse %s ସହିତ ସà¬à¬à¬³à¬¿à¬¤\n"
"libpulse %s ସହିତ ସà¬à¬¯àà¬àତ\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2145,6 +2033,11 @@ msgstr ""
"libpulse %s ସହିତ ସà¬à¬à¬³à¬¿à¬¤\n"
"libpulse %s ସହିତ ସà¬à¬¯àà¬àତ\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à¬
ବàଧ à¬ààାନàଲ ମààାପ '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "ଧାରଣ à¬à¬°à¬¿à¬¬à¬¾ ପାà¬à¬ à¬àà¬à¬¿à¬ ନàମନା ଫାà¬à¬² à¬à¬²àଲàଠà¬à¬°à¬¨àତà\n"
@@ -2153,6 +2046,11 @@ msgstr "ଧାରଣ à¬à¬°à¬¿à¬¬à¬¾ ପାà¬à¬ à¬àà¬à¬¿à¬ ନàମନ
msgid "Failed to open sound file.\n"
msgstr "ଧàà±à¬¨à¬¿ ଫାà¬à¬² à¬àଲିବାରà ବିଫଳ।\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "ନମàନା ସàà¬à¬¨à¬¾ ପାà¬à¬¬à¬¾à¬°à ବିଫଳ: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2216,11 +2114,6 @@ msgstr "à¬à¬ªà¬£à¬àà¬à à¬àà¬à¬¿à¬ à¬à¬¾à¬°àଡ ନାମ/à¬
ନ
msgid "No valid command specified.\n"
msgstr "à¬àଣସି ବàଧ ନିରàଦàଦàଶ à¬à¬²àଲàଠà¬à¬°à¬¾à¬¯à¬¾à¬à¬¨à¬¾à¬¹à¬¿à¬à¥¤\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() ବିଫଳ ହàà¬à¬à¬¿: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2336,11 +2229,11 @@ msgstr "ପଢ଼ନàତà(): %s"
msgid "write(): %s"
msgstr "ଲàà¬à¬¨àତà(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn à¬
ପରିବରàତàତନààତାà¬à à¬
à¬à¬¿à¬à¬®àà à¬à¬°à¬¿à¬¹àଠନାହିà¬"
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2357,7 +2250,7 @@ msgstr ""
"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
"returned 0 or another value < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2375,15 +2268,15 @@ msgstr ""
"returned 0 or another value < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "à¬
ଫ"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "à¬à¬àଠଫିଡିଲିà¬à¬¿ ପà¬à¬à¬²à¬¾ (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "à¬àଲିଫàନି ଡàààପàଲàà¬àସ (HSP/HFP)"
@@ -2391,6 +2284,128 @@ msgstr "à¬àଲିଫàନି ଡàààପàଲàà¬àସ (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio ଧàà±à¬¨à¬¿ ସରàà¬à¬°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "ତନàତàର ପରିପଥ ସହିତ ସà¬à¬¯àଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PIDରà à¬à¬²à¬°à¬à ପାà¬à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "à¬à¬²à¬° ବସàତàରà UID à¬à ସàଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK à¬
ଧିବàଶନà¬à ପାà¬à¬¬à¬¾à¬°à ବିଫଳ।"
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "à¬
ଧିବàଶନ ବସàତàରà UID ସàଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitActionà¬à ବଣàà¬à¬¨ à¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id ସàଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext ବଣàà¬à¬¨ à¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬à¥¤"
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContextà¬à à¬à¬°à¬®àଠà¬à¬°à¬¿à¬ªà¬¾à¬°à¬¿à¬¬à ନାହିà¬: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "à¬à¬²à¬° à¬
ଧିà¬à¬¾à¬° ପàରାପàତ à¬à¬¿ ନàହଠତାହା ନିରàଦàଧାରଣ à¬à¬°à¬¿ ପାରିଲା ନାହିà¬: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "auth ପାà¬à¬²à¬¾ ନାହିà¬: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit '%s' ସହିତ à¬à¬¤àତର ଦàà¬à¬¥à¬¿à¬²à¬¾"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "PulseAudio ଡàମନ ପାà¬à¬ à¬à¬àà¬-ପàରାଥମିà¬à¬¤à¬¾ ଯàà¬à¬¨à¬¾ (à¬à¬£à¬¾à¬¤àମଠUnix ସàନàଦର ସàତର)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio ଡàମନ ପାà¬à¬ ପàରà¬àତ-ସମà ଯàà¬à¬¨à¬¾"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr "ତନàତàର ନàତି PulseAudio à¬à à¬à¬àà¬-ପàରାଥମିଠଯàà¬à¬¨à¬¾à¬à à¬àରହଣ à¬à¬°à¬¿à¬¬à¬¾à¬°à à¬
à¬à¬à¬¾à¬à¬¥à¬¾à¬à¥¤"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "ତନàତàର ନàତି PulseAudio à¬à ପàରà¬àତ-ସମà ଯàà¬à¬¨à¬¾à¬à à¬àରହଣ à¬à¬°à¬¿à¬¬à¬¾à¬°à à¬
à¬à¬à¬¾à¬à¬¥à¬¾à¬à¥¤"
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() ବିଫଳ ହàà¬à¬à¬¿: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() ବିଫଳ ହàà¬à¬à¬¿: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "à¬à¬®à ମାନà ଶàରàଣà '%s'ରà à¬
à¬à, à¬à¬àà¬-ପàରାଥମିà¬à¬¤à¬¾ ଯàà¬à¬¨à¬¾à¬à à¬
ନàମତି ଦàà¬à¥¤"
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "à¬à¬®à ମାନà ଶàରàଣà '%s'ରà à¬
à¬à, ପàରà¬àତ- ସମà ଯàà¬à¬¨à¬¾à¬à à¬
ନàମତି ଦàà¬à¥¤"
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit à¬à¬®à¬à acquire-high-priority à¬
ଧିà¬à¬¾à¬° ଦàà¬à¬¥à¬¾à¬à¥¤"
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit acquire-high-priority à¬
ଧିà¬à¬¾à¬°à¬à ବାରଣ à¬à¬°à¬¿à¬¥à¬¾à¬à¥¤"
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit à¬à¬®à¬à acquire-real-time à¬
ଧିà¬à¬¾à¬° ଦàà¬à¬¥à¬¾à¬à¥¤"
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit acquire-real-time à¬
ଧିà¬à¬¾à¬°à¬à ବାରଣ à¬à¬°à¬¿à¬¥à¬¾à¬à¥¤"
+
+#~ 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 ""
+#~ "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."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr "à¬à¬àà¬-ପàରାଥମିଠଯàà¬à¬¨à¬¾ ବିନààାସରà ସà¬àରିà à¬à¬¿à¬¨àତà ନàତି ଦàà±à¬¾à¬°à¬¾ à¬
ନàମàଦିତ ନàହà¬à¥¤"
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO à¬à ସଫଳତାର ସହିତ ବàଦàଧିà¬à¬°à¬¿à¬¥à¬¾à¬"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO ବିଫଳ ହàà¬à¬à¬¿: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE à¬à ତààାଠà¬à¬°à¬¿à¬¥à¬¾à¬"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "Real-time ଯàà¬à¬¨à¬¾ ବିନààାସ ଫାà¬à¬²à¬°à ସà¬àରିà ହàà¬à¬¥à¬¾à¬ à¬à¬¿à¬¨àତà ନିତà ଦàà±à¬¾à¬°à¬¾ à¬
ନàମàଦିତ ନàହà¬à¥¤"
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "CAP_SYS_NICE à¬à ସàମିତ à¬àଷମତା ସଫଳତାର ସହିତ ଦିà¬à¬¹àà¬à¬à¬¿à¥¤"
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() ବିଫଳ ହàà¬à¬à¬¿à¥¤\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à¬
ନàରàପ ମàନà"
diff --git a/po/pa.po b/po/pa.po
index 5f5585e0..fe5a31f5 100644
--- a/po/pa.po
+++ b/po/pa.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pa\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-06-06 07:38+0530\n"
"Last-Translator: A S Alam \n"
"Language-Team: American English \n"
@@ -19,7 +19,12 @@ msgstr ""
"X-Generator: Lokalize 0.3\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -30,7 +35,7 @@ msgstr ""
"snd_pcm_avail() ਤà©à¨ à¨à©±à¨ ਮà©à©±à¨² ਮਿਲਿਠਹà©, à¨à© ਬਹà©à¨¤ ਵੱਡਾ ਹà©: %lu ਬਾà¨à¨ (%lu ms)।\n"
"à¨à¨¹ ALSA ਡਰਾà¨à¨µà¨° '%s' ਵਿà¨à¨²à¨¾ ਬੱਠਲੱà¨à¨¦à¨¾ ਹà©à¥¤ à¨à¨¸ ਮà©à©±à¨¦à© ਦ੠ALSA ਡਿਵà©à¨²à¨ªà¨°à¨¾à¨ ਨà©à©° ਰਿਪà©à¨°à¨ ਦਿਠà¨à©à¥¤"
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -41,7 +46,7 @@ msgstr ""
"snd_pcm_delay() ਤà©à¨ à¨à©±à¨ ਮà©à©±à¨² ਮਿਲਿਠਹà©, à¨à© ਬਹà©à¨¤ ਵੱਡਾ ਹà©: %li ਬਾà¨à¨ (%s%lu ms)।\n"
"à¨à¨¹ ALSA ਡਰਾà¨à¨µà¨° '%s' ਵਿà¨à¨²à¨¾ ਬੱਠਲੱà¨à¨¦à¨¾ ਹà©à¥¤ à¨à¨¸ ਮà©à©±à¨¦à© ਦ੠ALSA ਡਿਵà©à¨²à¨ªà¨°à¨¾à¨ ਨà©à©° ਰਿਪà©à¨°à¨ ਦਿਠà¨à©à¥¤"
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -65,7 +70,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à¨
ੰਦਰà©à¨¨à© à¨à¨¡à©à¨"
@@ -85,365 +90,241 @@ msgstr "ਨਵਾਠdl ਲà©à¨¡à¨° ਦà©à¨£ ਲਠਫà©à¨²à©à¨¹à¥¤"
msgid "Failed to add bind-now-loader."
msgstr "ਬਾà¨à¨à¨¡-ਨਾà¨-ਲà©à¨¡à¨° à¨à©à©à¨¨ ਵਿੱਠਫà©à¨²à©à¨¹ ਹà©à¨à¨à¥¤"
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "ਸਿਸà¨à¨® ਬੱਸ ਨਾਲ à¨à©à©à¨¨ ਨਹà©à¨ ਸà¨à¨¿à¨: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID ਤà©à¨ à¨à¨¾à¨²à¨° ਪà©à¨°à¨¾à¨ªà¨¤ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "à¨à¨¾à¨²à¨° à¨à¨¬à¨à©à¨à¨ ਤ੠UID ਸà©à©±à¨ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨à¥¤"
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK ਸ਼à©à¨¶à¨¨ ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à¥¤"
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "ਸ਼à©à¨¶à¨¨ à¨à¨¬à¨à©à¨à¨ ਤ੠UID ਸà©à©±à¨ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨à¥¤"
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction ਨਹà©à¨ ਦ੠ਸà¨à¨¿à¨à¥¤"
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id ਸà©à©±à¨ ਨਹà©à¨ à¨à©à¨¤à¨¾ à¨à¨¾ ਸà¨à¨¿à¨à¥¤"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext à¨à¨¾à¨°à© ਨਹà©à¨ à¨à©à¨¤à¨¾ à¨à¨¾ ਸà¨à¨¿à¨à¥¤"
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext ਨà©à©° ਸ਼à©à¨°à© ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "ਪਤਾ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨ à¨à¨¿ à¨à© à¨à¨¾à¨²à¨° ਪਰਮਾਣਿਤ ਹà©: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "ਪਰਮਾਣà¨à¨¿à¨¤à¨¾ ਨਹà©à¨ ਲ੠ਸà¨à¨¦à¨¾: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit ਦ੠à¨à¨µà¨¾à¨¬ ਵà¨à©à¨ '%s' ਮਿਲਿਠਹà©"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "%s ਸਿà¨à¨¨à¨² ਮਿਲਿਠਹà©à¥¤"
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "ਬੰਦ à¨à©à¨¤à¨¾ à¨à¨¾ ਰਿਹਾ ਹà©à¥¤"
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "'%s' ਯà©à¨à¨¼à¨° ਲੱà¨à¨£ ਵਿੱਠਫà©à¨²à©à¨¹ ਹà©à¨à¨ ਹà©à¥¤"
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "'%s' à¨à¨°à©à©±à¨ª ਲੱà¨à¨£ ਵਿੱਠਫà©à¨² ਹà©à¨à¨ ਹà©à¥¤"
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "ਯà©à¨à¨¼à¨° '%s' (UID %lu) à¨
ਤ੠à¨à¨°à©à©±à¨ª '%s' (GID %lu) ਲੱà¨à© ਹਨ।"
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "ਯà©à¨à¨¼à© '%s' à¨
ਤ੠à¨à¨°à©à©±à¨ª '%s' ਦਾ GID ਮà©à¨² ਨਹà©à¨ à¨à¨¾à¨à¨¦à©à¥¤"
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "ਯà©à¨à¨¼à© '%s' ਦ੠à¨à¨° ਡਾà¨à¨°à©à¨à¨à¨°à© '%s' ਨਹà©à¨, à¨
ਣਡਿੱਠਾ à¨à¨° ਰਿਹਾ।"
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' ਬਣਾà¨à¨£ ਵਿੱਠਫà©à¨²à©à¨¹: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "à¨à¨°à©à©±à¨ª ਲਿਸਠਬਦਲਣ ਲਠਫà©à¨²à©à¨¹: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID ਬਦਲਣ ਲਠਫà©à¨²à©à¨¹: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID ਬਦਲਣ ਲਠਫà©à¨²à©à¨¹: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "ਰà©à¨ à¨
ਧਿà¨à¨¾à¨° ਸਫਲਤਾਪà©à¨°à¨ ਹà¨à¨¾à¨ à¨à¨à¥¤"
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "à¨à¨¸ ਪਲà©à¨à¨«à¨¾à¨°à¨® ਤ੠ਸਿਸà¨à¨® ਸੰਬੰਧ੠ਮà©à¨¡ ਨà©à©° ਸਹਿਯà©à¨ ਨਹà©à¨ ਹà©à¥¤"
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) ਫà©à¨²à©à¨¹ ਹà©à¨à¨: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à¨à¨®à¨¾à¨à¨¡ ਲਾà¨à¨¨ ਪਾਰਸ à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à©à¨¹à¥¤"
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "à¨
ਸà©à¨ à¨à¨°à©à©±à¨ª '%s' ਵਿੱਠਹਾà¨, à¨à¨¿à¨¸ ਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਤਹਿ à¨à©à¨¤à¨¾ à¨à¨¿à¨ ਹà©à¥¤"
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "à¨
ਸà©à¨ à¨à¨°à©à©±à¨ª '%s' ਵਿੱਠਹਾà¨, à¨à¨¿à¨¸ ਨà©à©° ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਤਹਿ à¨à©à¨¤à¨¾ à¨à¨¿à¨ ਹà©à¥¤"
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit ਸਾਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਦਿੰਦ੠ਹà©à¥¤"
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit ਵਧà©à¨°à©-ਤਰà¨à©à¨¹-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਹà¨à¨¾à¨à¨à¨¦à© ਹà©à¥¤"
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit ਸਾਨà©à©° ਰà©à¨
ਲ-à¨à¨¾à¨à¨®-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਦਿੰਦ੠ਹà©à¥¤"
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit ਰà©à¨
ਲ-à¨à¨¾à¨à¨®-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਹà¨à¨¾à¨à¨à¨¦à© ਹà©à¥¤"
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"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."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr "ਸੰਰà¨à¨¨à¨¾ ਵਿੱਠਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਯà©à¨ à¨à©à¨¤à© à¨à¨ ਹà©, ਪਰ ਪਾਲਸ੠ਵਲà©à¨ ਮਨà¨à¨¼à©à¨° ਨਹà©à¨ à¨à©à¨¤à©à¥¤"
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO ਨà©à©° ਸਫਲਤਾਪà©à¨°à¨ ਵਧਾà¨à¨ à¨à¨¿à¨"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO ਫà©à¨²à©à¨¹: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE ਨà©à©° ਹà¨à¨¾ ਰਿਹਾ ਹà©"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਤਹਿ ਨà©à©° ਸੰਰà¨à¨¨à¨¾ ਵਿੱਠਯà©à¨ à¨à¨°à¨¨ ਨਾਲ, ਪਰ ਪਾਲਸ੠ਵਲà©à¨ ਮਨà¨à©à¨° ਨਹà©à¨ à¨à©à¨¤à©à¥¤"
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "ਡà©à¨®à¨¨ à¨à©±à¨² ਨਹà©à¨ ਰਿਹਾ"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "ਡà©à¨®à¨¨ PID %u ਤà©à¨° ਤ੠à¨à©±à¨² ਰਿਹਾ ਹà©"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ਡà©à¨®à¨¨ à¨à¨¤à¨® à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à©à¨¹: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr "à¨à¨¹ ਪਰà©à¨à¨°à¨¾à¨® ਰà©à¨ ਦ੠ਤà©à¨° ਤ੠à¨à¨²à¨¾à¨à¨£ ਲਠਨਹà©à¨ ਹ੠(à¨à¨¦à©à¨ ਤੱਠ--system ਦਿੱਤਾ ਨਹà©à¨ à¨à¨¾à¨à¨¦à¨¾)।"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "ਰà©à¨ à¨
ਧਿà¨à¨¾à¨°à¨¾à¨ ਦ੠ਲà©à© ਹà©à¥¤"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start ਨà©à©° ਸਿਸà¨à¨® ਮà©à¨à¨¿à¨à¨ ਲਠਸਹਿਯà©à¨ ਨਹà©à¨ ਹà©à¥¤"
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "ਸਿਸà¨à¨® ਮà©à¨¡ ਵਿੱਠà¨à©±à¨² ਰਿਹਾ ਹà©, ਪਰ --disallow-exit ਸà©à©±à¨ ਨਹà©à¨ à¨à©à¨¤à¨¾!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "ਸਿਸà¨à¨® ਮà©à¨¡ ਵਿੱਠà¨à©±à¨² ਰਿਹਾ ਹà©, ਪਰ --disallow-module-loading ਸà©à©±à¨ ਨਹà©à¨ à¨à©à¨¤à¨¾!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "ਸਿਸà¨à¨® ਮà©à¨¡ ਵਿੱਠà¨à©±à¨² ਰਿਹਾ ਹà©, à¨à¨¼à¨¬à¨°à¨¦à¨¸à¨¤à© SHM ਮà©à¨¡ ਨà©à©° à¨
ਯà©à¨ à¨à¨° ਰਿਹਾ ਹà©!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "ਸਿਸà¨à¨® ਮà©à¨¡ ਵਿੱਠà¨à©±à¨² ਰਿਹਾ ਹà©, à¨à¨¼à¨¬à¨°à¨¦à¨¸à¨¤à© idle à¨à¨¾à¨à¨² ਬੰਦ ਨà©à©° à¨
ਯà©à¨ à¨à¨° ਰਿਹਾ ਹà©!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "ਸà¨à©à¨¡à©à¨ ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à©à¨¹à¥¤"
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe ਫà©à¨²à©à¨¹: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() ਫà©à¨²à©à¨¹ ਹà©: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() ਫà©à¨²à©à¨¹ ਹà©: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ਡà©à¨®à¨¨ ਸ਼à©à¨°à©à¨à¨¤à© ਫà©à¨²à©à¨¹ ਹà©à¨à¥¤"
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "ਡà©à¨®à¨¨ ਸ਼à©à¨°à©à¨à¨¤à© ਸਫ਼ਲ ਹà©à¨à¥¤"
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à¨à¨¹ ਪਲਸà¨à¨¡à©à¨ %s ਹà©"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "à¨à©°à¨ªà¨¾à¨à¨²à©à¨¶à¨¨ ਹà©à¨¸à¨: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "à¨à©°à¨ªà¨¾à¨à¨²à©à¨¶à¨¨ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "ਹà©à¨¸à¨ ਤ੠à¨à©±à¨² ਰਿਹਾ ਹà©: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUs ਲੱà¨à©à¥¤"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "ਪà©à¨à¨¼ ਸਾà¨à¨à¨¼ %lu ਬਾà¨à¨ ਹà©"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind ਸਹਿਯà©à¨ ਨਾਲ à¨à©°à¨ªà¨¾à¨à¨²: ਹਾà¨"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind ਸਹਿਯà©à¨ ਨਾਲ à¨à©°à¨ªà¨¾à¨à¨²: ਨਹà©à¨"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Valgrind ਮà©à¨¡ ਵਿੱਠà¨à©±à¨² ਰਿਹਾ ਹà©: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "à¨à¨ªà¨à©à¨®à¨¾à¨à©à¨¡ ਬਿਲਡ: ਹਾà¨"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "à¨à¨ªà¨à©à¨®à¨¾à¨à©à¨¡ ਬਿਲਡ: ਨਹà©à¨"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG ਪਰਿà¨à¨¾à¨¶à¨¤, ਸਠasserts à¨
ਯà©à¨ ਹਨ।"
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH ਪਰਿà¨à¨¾à¨¶à¨¤, ਸਿਰਫ ਫਾਸਠਪਾਥ asserts à¨
ਯà©à¨ ਹਨ।"
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "ਸਠasserts ਯà©à¨ à¨à©à¨¤à© ਹਨ।"
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "ਮਸ਼à©à¨¨ ID ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à©à¨¹"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "ਮਸ਼à©à¨¨ ID %s ਹà©à¥¤"
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "ਮਸ਼à©à¨¨ ID %s ਹà©à¥¤"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "ਰਨà¨à¨¾à¨à¨® ਡਾà¨à¨°à©à¨à¨à¨°à© %s ਦ੠ਵਰਤà©à¨à¥¤"
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "ਸà¨à©à¨ ਡਾà¨à¨°à©à¨à¨à¨°à© %s ਦ੠ਵਰਤà©à¨à¥¤"
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "ਸਿਸà¨à¨® ਮà©à¨¡ ਵਿੱਠà¨à©±à¨² ਰਿਹਾ ਹà©: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -453,42 +334,42 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() ਫà©à¨²à©à¨¹ ਹà©à¥¤"
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "ਤਾà©à© ਹਾà¨-ਰà©à©à©à¨²à©à¨¶à¨¨ à¨à¨¾à¨à¨®à¨° à¨à¨ªà¨²à©±à¨¬à¨§ ਹà©! Bon appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr ""
"ਮਿੱਤਰਾ, ਤà©à¨°à¨¾ à¨à¨°à¨¨à¨² ਪà©à¨°à¨¾à¨£à¨¾ ਹà©! à¨à©à¨« ਦ੠à¨
ੱਠਦ੠ਸਿਫਾਰਸ਼ ਹਾà¨-ਰà©à©à©à¨²à©à¨¶à¨¨ à¨à¨¾à¨à¨®à¨° ਯà©à¨ ਨਾਲ ਲà©à¨¨à¨à¨¸ ਹà©!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤"
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ਡà©à¨®à¨¨ ਸ਼à©à¨°à© à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à©à¨¹à¥¤"
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "ਡà©à¨®à¨¨ ਸ਼à©à¨°à©à¨à¨¤à© ਬਿਨਾਠà¨à¨¿à¨¸à© ਲà©à¨¡ à¨à©à¨¤à© ਮà©à¨¡à¨¿à¨à¨², à¨à©°à¨® à¨à¨°à¨¨ ਤà©à¨ ਰà©à¨ ਰਿਹਾ ਹà©à¥¤"
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ਡà©à¨®à¨¨ ਸ਼à©à¨°à©à¨à¨¤à© ਮà©à¨à©°à¨®à¨²à¥¤"
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ਡà©à¨®à¨¨ ਬੰਦ à¨à¨°à¨¨à¨¾ ਸ਼à©à¨°à© ਹ੠à¨à¨¿à¨à¥¤"
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ਡà©à¨®à¨¨ ਬੰਦ ਹ੠à¨à¨¿à¨à¥¤"
@@ -821,14 +702,10 @@ msgstr "ਦਿੱਤ੠ਡਿਫਾਲਠà¨à©à¨¨à¨² ਮà©à¨ª ਦ੠ਦਿ
msgid "### Read from configuration file: %s ###\n"
msgstr "### ਸੰਰà¨à¨¨à¨¾ ਫਾà¨à¨² ਵਿੱà¨à©à¨ ਪà©à¨¿à¨: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "ਰà©à¨ à¨
ਧਿà¨à¨¾à¨° ਹà¨à¨¾ ਰਿਹਾ ਹà©à¥¤"
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "CAP_SYS_NICE ਨà©à©° ਸਫਲਤਾਪà©à¨°à¨ ਸà©à¨®à¨¿à¨¤ ਸਮੱਰਥਾ।"
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "ਪਲਸà¨à¨¡à©à¨ ਸਾà¨à¨à¨¡ ਸਿਸà¨à¨®"
@@ -837,24 +714,6 @@ msgstr "ਪਲਸà¨à¨¡à©à¨ ਸਾà¨à¨à¨¡ ਸਿਸà¨à¨®"
msgid "Start the PulseAudio Sound System"
msgstr "ਪਲਸà¨à¨¡à©à¨ ਸਾà¨à¨à¨¡ ਸਿਸà¨à¨® à¨à¨²à¨¾à¨"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "ਪਲਸà¨à¨¡à©à¨ ਡà©à¨®à¨¨ ਲਠਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਸà©à¨¡à¨¿à¨à¨² (ਨਾà¨-ਵਾà¨à¨ ਯà©à¨¨à©à¨à¨¸ ਨਾà¨à¨¸ ਲà©à¨µà¨²)"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "ਪਲਸà¨à¨¡à©à¨ ਡà©à¨®à¨¨ ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਸà©à¨¡à¨¿à¨à¨²"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "ਸਿਸà¨à¨® ਪਾਲਸ੠ਪਲਸà¨à¨¡à©à¨ ਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਸà©à¨¡à¨¿à¨à¨² ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਤà©à¨ ਰà©à¨à¨¦à© ਹà©à¥¤"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "ਸਿਸà¨à¨® ਪਾਲਸ੠ਪਲਸà¨à¨¡à©à¨ ਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਤà©à¨ ਰà©à¨à¨¦à© ਹà©à¥¤"
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "ਮà©à¨¨à©"
@@ -1227,183 +1086,187 @@ msgstr "à¨à©à¨à© ਡਾà¨à¨¾ ਪਾਰਸ à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²
msgid "Failed to open configuration file '%s': %s"
msgstr "ਸੰਰà¨à¨¨à¨¾ ਫਾà¨à¨² '%s' ਨà©à©° à¨à©à¨²à©à¨¹à¨£ ਵਿੱਠਫà©à¨²à©à¨¹: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à¨à©à¨ à¨à©à¨à© ਲà©à¨¡ ਨਹà©à¨ à¨à©à¨¤à©à¥¤ à¨à¨¸ ਤà©à¨ ਬਿਨਾਠà¨à©à¨¨à©à¨à¨ à¨à©à¨¤à¨¾ à¨à¨¾ ਰਿਹਾ ਹà©à¥¤"
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à¨
ਣà¨à¨¾à¨£à© à¨à¨à¨¸à¨à©à¨à¨¶à¨¨ '%s' ਲਠਸà©à¨¨à©à¨¹à¨¾ ਮਿਲਿਠਹà©"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "ਸà¨à¨°à©à¨® ਡਰà©à¨¨ ਫà©à¨²à©à¨¹ ਹà©à¨à¨: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "ਪਲà©à¨¬à©à¨ ਸà¨à¨°à©à¨® ਡਰà©à¨¨ à¨à©à¨¤à©à¥¤\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "ਸਰਵਰ ਨਾਲ à¨à©à¨¨à©à¨à¨¶à¨¨ ਡਰà©à¨¨ ਹ੠ਰਿਹਾ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "ਸà¨à¨°à©à¨® ਸਫਲਤਾਪà©à¨°à¨ ਬਣ à¨à¨ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Buffer metrics: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "ਸਧਾਰਨ spec '%s', à¨à©à¨¨à¨² ਮà©à¨ª '%s' ਦ੠ਵਰਤà©à¨à¥¤\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "%s à¨à©°à¨¤à¨° ਨਾਲ à¨à©à¨¨à¨à©à¨ à¨à©à¨¤à¨¾ (%u, %ssuspended)।\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ਸà¨à¨°à©à¨® à¨à¨²à¨¤à©: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "ਸà¨à¨°à©à¨® à¨à©°à¨¤à¨° ਸਸਪà©à¨à¨¡ à¨à©à¨¤à¨¾ ਹà©à¥¤%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "ਸà¨à¨°à©à¨® à¨à©°à¨¤à¨° ਮà©à©-ਪà©à¨°à¨¾à¨ªà¨¤ à¨à©à¨¤à¨¾à¥¤%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ਸà¨à¨°à©à¨® à¨
ੰਡਰਰਨ।%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "ਸà¨à¨°à©à¨® à¨à¨µà¨°à¨°à¨¨à¥¤%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "ਸà¨à¨°à©à¨® ਸ਼à©à¨°à© à¨à©à¨¤à©à¥¤ %s\n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "ਸà¨à¨°à©à¨® ਨà©à©° à¨à©°à¨¤à¨° %s ਤà©à¨ ਤਬਦà©à¨² à¨à©à¨¤à¨¾ à¨à¨¿à¨ ਹ੠(%u, %ssuspended)।%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "ਨਹà©à¨ "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "ਸà¨à¨°à©à¨® ਬਫਰ à¨à¨à¨°à©à¨¬à¨¿à¨à¨ ਤਬਦà©à¨² à¨à©à¨¤à© à¨à¨à¥¤%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "à¨à©à¨¨à©à¨à¨¶à¨¨ ਬਣ à¨à¨¿à¨à¥¤%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "à¨à©à¨¨à©à¨à¨¶à¨¨ ਫà©à¨²: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF ਮਿਲਿà¨à¥¤\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF ਮਿਲਿà¨à¥¤\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "ਸਿà¨à¨¨à¨² ਮਿਲਿà¨, ਬੰਦ ਹ੠ਰਿਹਾ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "ਵà¨à¨«à¨¾ ਪà©à¨°à¨¾à¨ªà¨¤à© ਫà©à¨² ਹà©à¨: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "ਸਮਾà¨: %0.3f ਸà¨à¨¿à©°à¨; ਵà¨à¨«à¨¾: %0.0f usec। \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
#: ../src/utils/pacat.c:605
@@ -1525,34 +1388,34 @@ msgstr ""
"libpulse %s ਦ੠à¨à©°à¨ªà¨¾à¨à¨²\n"
"libpulse %s ਨਾਲ ਲਿੰਠà¨à©à¨¤à¨¾\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ à¨à©à¨¨à¨² ਮà©à¨ª '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ ਰà©à¨¸à©à¨à¨ªà¨² ਢੰਠ'%s'।"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ à¨à©à¨¨à¨² ਮà©à¨ª '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ ਵà¨à¨«à¨¾ ਹਦਾà¨à¨¤ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ ਪਰà©à¨¸à©à©±à¨¸ à¨à¨¾à¨à¨® ਹਦਾà¨à¨¤ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ ਰà©à¨¸à©à¨à¨ªà¨² ਢੰਠ'%s'।"
#: ../src/utils/pacat.c:878
@@ -1561,60 +1424,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ ਸà©à¨à¨ªà¨² ਹਦਾà¨à¨¤\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "ਬਹà©à¨¤ ਵੱਧ à¨à¨°à¨à©à¨®à©à¨à¨à¥¤\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "ਸà©à¨à¨ªà¨² à¨à¨¾à¨£à¨à¨¾à¨°à© ਲà©à¨£ ਵਿੱਠਫà©à¨²: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "ਸਾà¨à¨à¨¡ ਫਾà¨à¨² à¨à©à¨²à©à¨¹à¨£ ਲਠਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "à¨à©±à¨ %s ਸà¨à¨°à©à¨® ਨà©à©° ਸà©à¨à¨ªà¨² ਹਦਾà¨à¨¤ '%s' ਨਾਲ à¨à©à¨²à©à¨¹à¨¿à¨ à¨à¨¾ ਰਿਹਾ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "ਸà©à¨à¨ªà¨² à¨à¨¾à¨£à¨à¨¾à¨°à© ਲà©à¨£ ਵਿੱਠਫà©à¨²: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "à¨à©±à¨ %s ਸà¨à¨°à©à¨® ਨà©à©° ਸà©à¨à¨ªà¨² ਹਦਾà¨à¨¤ '%s' ਨਾਲ à¨à©à¨²à©à¨¹à¨¿à¨ à¨à¨¾ ਰਿਹਾ ਹà©à¥¤\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à¨à©à¨¨à¨² ਮà©à¨ª ਸà©à¨à¨ªà¨² ਹਦਾà¨à¨¤ ਨਾਲ ਨਹà©à¨ ਮਿਲਦਾ\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "à¨à©±à¨ %s ਸà¨à¨°à©à¨® ਨà©à©° ਸà©à¨à¨ªà¨² ਹਦਾà¨à¨¤ '%s' ਨਾਲ à¨à©à¨²à©à¨¹à¨¿à¨ à¨à¨¾ ਰਿਹਾ ਹà©à¥¤\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "à¨à©±à¨ %s ਸà¨à¨°à©à¨® ਨà©à©° ਸà©à¨à¨ªà¨² ਹਦਾà¨à¨¤ '%s' ਨਾਲ à¨à©à¨²à©à¨¹à¨¿à¨ à¨à¨¾ ਰਿਹਾ ਹà©à¥¤\n"
#: ../src/utils/pacat.c:1006
@@ -1625,35 +1494,34 @@ msgstr "ਰਿà¨à¨¾à¨°à¨¡à¨¿à©°à¨"
msgid "playback"
msgstr "ਪਲà©à¨
ਬà©à¨"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() ਫà©à¨²à©à¨¹ ਹà©: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
#: ../src/utils/pasuspender.c:81
@@ -1681,6 +1549,11 @@ msgstr "ਮà©à©-ਪà©à¨°à¨¾à¨ªà¨¤à© ਫà©à¨²: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "à¨à©à¨¤à¨¾à¨µà¨¨à©: ਸਾà¨à¨à¨¡ ਸਰਵਰ ਲà©à¨à¨² ਨਹà©à¨ ਹà©, ਸਸਪà©à¨à¨¡ ਨਹà©à¨ ਹ੠ਰਿਹਾ।\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "à¨à©à¨¨à©à¨à¨¶à¨¨ ਫà©à¨²: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1721,6 +1594,21 @@ msgstr ""
"libpulse %s ਨਾਲ à¨à©°à¨ªà¨¾à¨à¨²\n"
"libpulse %s ਨਾਲ ਲਿੰà¨\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2135,6 +2023,11 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à¨
ਢà©à©±à¨à¨µà¨¾à¨ à¨à©à¨¨à¨² ਮà©à¨ª '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "ਲà©à¨¡ à¨à¨°à¨¨ ਲਠਸà©à¨à¨ªà¨² ਫਾà¨à¨² ਦਿà¨\n"
@@ -2143,6 +2036,11 @@ msgstr "ਲà©à¨¡ à¨à¨°à¨¨ ਲਠਸà©à¨à¨ªà¨² ਫਾà¨à¨² ਦਿà¨\n"
msgid "Failed to open sound file.\n"
msgstr "ਸਾà¨à¨à¨¡ ਫਾà¨à¨² à¨à©à¨²à©à¨¹à¨£ ਲਠਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "ਸà©à¨à¨ªà¨² à¨à¨¾à¨£à¨à¨¾à¨°à© ਲà©à¨£ ਵਿੱਠਫà©à¨²: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2202,11 +2100,6 @@ msgstr "ਤà©à¨¹à¨¾à¨¨à©à©° à¨à©±à¨ à¨à¨¾à¨°à¨¡ ਨਾà¨/ਲਿਸਠà¨
msgid "No valid command specified.\n"
msgstr "à¨à©à¨ ਯà©à¨ à¨à¨®à¨¾à¨à¨¡ ਨਹà©à¨ ਦਿੱਤà©à¥¤\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() ਫà©à¨²à©à¨¹ ਹà©: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2323,11 +2216,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn ਲਾਠਵਰਤ ਨਹà©à¨ ਸà¨à¨¦à¨¾à¥¤"
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2344,7 +2237,7 @@ msgstr ""
"We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() "
"returned 0 or another value < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2362,15 +2255,15 @@ msgstr ""
"returned 0 or another value < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "ਬੰਦ"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "ਹਾਠਫਡà©à¨²à¨¿à¨à© ਪਲà©à¨
ਬà©à¨ (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "à¨à©à¨²à©à¨«à©à¨¨à© ਡà©à¨ªà¨²à©à¨à¨¸ (HSP/HFP)"
@@ -2378,6 +2271,128 @@ msgstr "à¨à©à¨²à©à¨«à©à¨¨à© ਡà©à¨ªà¨²à©à¨à¨¸ (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "ਪਲਸà¨à¨¡à©à¨ ਸਾà¨à¨à¨¡ ਡਰਾà¨à¨µà¨°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "ਸਿਸà¨à¨® ਬੱਸ ਨਾਲ à¨à©à©à¨¨ ਨਹà©à¨ ਸà¨à¨¿à¨: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID ਤà©à¨ à¨à¨¾à¨²à¨° ਪà©à¨°à¨¾à¨ªà¨¤ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "à¨à¨¾à¨²à¨° à¨à¨¬à¨à©à¨à¨ ਤ੠UID ਸà©à©±à¨ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨à¥¤"
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK ਸ਼à©à¨¶à¨¨ ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਵਿੱਠਫà©à¨²à¥¤"
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "ਸ਼à©à¨¶à¨¨ à¨à¨¬à¨à©à¨à¨ ਤ੠UID ਸà©à©±à¨ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨à¥¤"
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction ਨਹà©à¨ ਦ੠ਸà¨à¨¿à¨à¥¤"
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id ਸà©à©±à¨ ਨਹà©à¨ à¨à©à¨¤à¨¾ à¨à¨¾ ਸà¨à¨¿à¨à¥¤"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext à¨à¨¾à¨°à© ਨਹà©à¨ à¨à©à¨¤à¨¾ à¨à¨¾ ਸà¨à¨¿à¨à¥¤"
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext ਨà©à©° ਸ਼à©à¨°à© ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "ਪਤਾ ਨਹà©à¨ à¨à¨° ਸà¨à¨¿à¨ à¨à¨¿ à¨à© à¨à¨¾à¨²à¨° ਪਰਮਾਣਿਤ ਹà©: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "ਪਰਮਾਣà¨à¨¿à¨¤à¨¾ ਨਹà©à¨ ਲ੠ਸà¨à¨¦à¨¾: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit ਦ੠à¨à¨µà¨¾à¨¬ ਵà¨à©à¨ '%s' ਮਿਲਿਠਹà©"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "ਪਲਸà¨à¨¡à©à¨ ਡà©à¨®à¨¨ ਲਠਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਸà©à¨¡à¨¿à¨à¨² (ਨਾà¨-ਵਾà¨à¨ ਯà©à¨¨à©à¨à¨¸ ਨਾà¨à¨¸ ਲà©à¨µà¨²)"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "ਪਲਸà¨à¨¡à©à¨ ਡà©à¨®à¨¨ ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਸà©à¨¡à¨¿à¨à¨²"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr "ਸਿਸà¨à¨® ਪਾਲਸ੠ਪਲਸà¨à¨¡à©à¨ ਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਸà©à¨¡à¨¿à¨à¨² ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਤà©à¨ ਰà©à¨à¨¦à© ਹà©à¥¤"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "ਸਿਸà¨à¨® ਪਾਲਸ੠ਪਲਸà¨à¨¡à©à¨ ਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਪà©à¨°à¨¾à¨ªà¨¤ à¨à¨°à¨¨ ਤà©à¨ ਰà©à¨à¨¦à© ਹà©à¥¤"
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() ਫà©à¨²à©à¨¹ ਹà©: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() ਫà©à¨²à©à¨¹ ਹà©: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "à¨
ਸà©à¨ à¨à¨°à©à©±à¨ª '%s' ਵਿੱਠਹਾà¨, à¨à¨¿à¨¸ ਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਤਹਿ à¨à©à¨¤à¨¾ à¨à¨¿à¨ ਹà©à¥¤"
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "à¨
ਸà©à¨ à¨à¨°à©à©±à¨ª '%s' ਵਿੱਠਹਾà¨, à¨à¨¿à¨¸ ਨà©à©° ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਤਹਿ à¨à©à¨¤à¨¾ à¨à¨¿à¨ ਹà©à¥¤"
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit ਸਾਨà©à©° ਵਧà©à¨°à©-ਤਰà¨à©à¨¹-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਦਿੰਦ੠ਹà©à¥¤"
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit ਵਧà©à¨°à©-ਤਰà¨à©à¨¹-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਹà¨à¨¾à¨à¨à¨¦à© ਹà©à¥¤"
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit ਸਾਨà©à©° ਰà©à¨
ਲ-à¨à¨¾à¨à¨®-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਦਿੰਦ੠ਹà©à¥¤"
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit ਰà©à¨
ਲ-à¨à¨¾à¨à¨®-ਪà©à¨°à¨¾à¨ªà¨¤à© à¨
ਧਿà¨à¨¾à¨° ਹà¨à¨¾à¨à¨à¨¦à© ਹà©à¥¤"
+
+#~ 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 ""
+#~ "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."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr "ਸੰਰà¨à¨¨à¨¾ ਵਿੱਠਵਧà©à¨°à©-ਤਰà¨à©à¨¹ ਯà©à¨ à¨à©à¨¤à© à¨à¨ ਹà©, ਪਰ ਪਾਲਸ੠ਵਲà©à¨ ਮਨà¨à¨¼à©à¨° ਨਹà©à¨ à¨à©à¨¤à©à¥¤"
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO ਨà©à©° ਸਫਲਤਾਪà©à¨°à¨ ਵਧਾà¨à¨ à¨à¨¿à¨"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO ਫà©à¨²à©à¨¹: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE ਨà©à©° ਹà¨à¨¾ ਰਿਹਾ ਹà©"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "ਰà©à¨
ਲ-à¨à¨¾à¨à¨® ਤਹਿ ਨà©à©° ਸੰਰà¨à¨¨à¨¾ ਵਿੱਠਯà©à¨ à¨à¨°à¨¨ ਨਾਲ, ਪਰ ਪਾਲਸ੠ਵਲà©à¨ ਮਨà¨à©à¨° ਨਹà©à¨ à¨à©à¨¤à©à¥¤"
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "CAP_SYS_NICE ਨà©à©° ਸਫਲਤਾਪà©à¨°à¨ ਸà©à¨®à¨¿à¨¤ ਸਮੱਰਥਾ।"
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() ਫà©à¨²à©à¨¹ ਹà©à¥¤\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à¨à¨¨à¨¾à¨²à¨¾à¨ ਮà©à¨¨à©"
diff --git a/po/pl.po b/po/pl.po
index df526062..371de41c 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -5,15 +5,20 @@ msgid ""
msgstr ""
"Project-Id-Version: pl\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
-"PO-Revision-Date: 2009-06-09 00:03+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
+"PO-Revision-Date: 2009-07-28 21:54+0200\n"
"Last-Translator: Piotr DrÄ
g \n"
"Language-Team: Polish \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr "%s %s"
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -25,7 +30,7 @@ msgstr ""
"Prawdopodobnie jest to bÅÄ
d sterownika ALSA \"%s\". ProszÄ zgÅosiÄ ten "
"problem programistom ALSA."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -37,7 +42,7 @@ msgstr ""
"Prawdopodobnie jest to bÅÄ
d sterownika ALSA \"%s\". ProszÄ zgÅosiÄ ten "
"problem programistom ALSA."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -51,7 +56,7 @@ msgstr ""
#: ../src/modules/module-ladspa-sink.c:49
msgid "Virtual LADSPA sink"
-msgstr ""
+msgstr "Wirtualny odpÅyw LADSPA"
#: ../src/modules/module-ladspa-sink.c:53
msgid ""
@@ -61,8 +66,13 @@ msgid ""
"plugin name> label= control="
msgstr ""
+"sink_name= sink_properties= "
+"master= format= "
+"rate= channels= channel_map= plugin= label= "
+"control="
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "WewnÄtrzny dźwiÄk"
@@ -83,222 +93,92 @@ msgstr "Przydzielenie nowego programu wczytujÄ
cego dl nie powiodÅo siÄ."
msgid "Failed to add bind-now-loader."
msgstr "Dodanie bind-now-loader nie powiodÅo siÄ."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Nie można poÅÄ
czyÄ siÄ z magistralÄ
systemowÄ
: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Nie można uzyskaÄ obiektu caller z PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Nie można ustawiÄ UID obiektu caller."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Uzyskanie sesji CK nie powiodÅo siÄ."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Nie można ustawiÄ UID obiektowi sesji."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Nie można przydzieliÄ PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Nie można ustawiÄ action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Nie można przydzieliÄ PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Nie można zainicjowaÄ PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Nie można ustaliÄ, czy obiekt caller jest upoważniony: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Nie można uzyskaÄ upoważnienia: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit zwróciÅo \"%s\""
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Otrzymano sygnaÅ %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "WyÅÄ
czanie."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Znalezienie użytkownika \"%s\" nie powiodÅo siÄ."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Znalezienie grupy \"%s\" nie powiodÅo siÄ."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Znaleziono użytkownika \"%s\" (UID %lu) i grupÄ \"%s\" (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID użytkownika \"%s\" i grupy \"%s\" nie zgadzajÄ
siÄ."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Folder domowy użytkownika \"%s\" nie jest \"%s\", ignorowanie."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Utworzenie \"%s\" nie powiodÅo siÄ: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Zmiana listy grup nie powiodÅa siÄ: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Zmiana GID nie powiodÅa siÄ: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Zmiana UID nie powiodÅa siÄ: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "PomyÅlnie porzucono uprawnienia roota."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Tryb systemowy nie jest obsÅugiwany na tej platformie."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) nie powiodÅo siÄ: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Analiza wiersza poleceÅ nie powiodÅa siÄ."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"JesteÅmy w grupie \"%s\", co umożliwia szeregowanie o wysokim priorytecie."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"JesteÅmy w grupie \"%s\", co umożliwia szeregowanie w czasie rzeczywistym."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit nadaÅ uprawnienie \"acquire-high-priority\"."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit odmówiŠnadania uprawnienia \"acquire-high-priority\"."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit nadaÅ uprawnienie \"acquire-real-time\"."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit odmówiŠnadania uprawnienia \"acquire-real-time\"."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"W konfiguracji zażÄ
dano SUID roota i szeregowanie w czasie rzeczywistym i/"
-"lub o wysokim priorytecie. Brak wymaganych uprawnieÅ:\n"
-"Nie jesteÅmy w grupie \"%s\", PolicyKit odmawia przyznania żÄ
danych "
-"uprawnieÅ i brak ograniczeÅ zwiÄkszania zasobów RLIMIT_NICE/RLIMIT_RTPRIO.\n"
-"Aby wÅÄ
czyÄ szeregowanie w czasie rzeczywistym i/lub o wysokim priorytecie, "
-"należy uzyskaÄ odpowiednie uprawnienia PolicyKit, zostaÄ czÅonkiem grupy \"%s"
-"\" lub zwiÄkszyÄ ograniczenia zasobów RLIMIT_NICE/RLIMIT_RTPRIO dla tego "
-"użytkownika."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Szeregowanie o wysokim priorytecie jest wÅÄ
czone w konfiguracji, ale nie "
-"jest zezwolone przez politykÄ."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "PomyÅlnie zwiÄkszono RLIMIT_RTPRIO"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO nie powiodÅo siÄ: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Oddawanie CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Szeregowanie w czasie rzeczywistym jest wÅÄ
czone w konfiguracji, ale nie "
-"jest zezwolone przez politykÄ."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Demon nie jest uruchomiony"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Demon jest uruchomiony jako PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Zniszczenie demona nie powiodÅo siÄ: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -306,155 +186,155 @@ msgstr ""
"Ten program nie powinien byÄ uruchomiany jako root (chyba, że podano --"
"system)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Wymagane sÄ
uprawnienia roota."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start nie jest obsÅugiwane przy uruchamianiu systemowym."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
"Uruchamianie w trybie systemowym, ale --disallow-exit nie jest ustawione!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"Uruchamianie w trybie systemowym, ale --disallow-module-loading nie jest "
"ustawione!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "Uruchamianie w trybie systemowym, wymuszanie wyÅÄ
czenia trybu SHM!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"Uruchamianie w trybie systemowym, wymuszanie wyÅÄ
czenia czasu oczekiwania na "
"zakoÅczenie!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Uzyskanie standardowego wejÅcia/wyjÅcia nie powiodÅo siÄ."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "potok nie powiódÅ siÄ: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() nie powiodÅo siÄ: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() nie powiodÅo siÄ: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Uruchomienie demona nie powiodÅo siÄ."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "PomyÅlnie uruchomiono demona."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "To jest PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Komputer kompilacji: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS kompilacji: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Uruchamianie na komputerze: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Znaleziono %u procesorów."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "Rozmiar strony to %lu bajtów"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Skompilowano z obsÅugÄ
Valgrind: tak"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Skompilowano z obsÅugÄ
Valgrind: nie"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Uruchamianie w trybie Valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Budowanie optymalizowane: tak"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Budowanie optymalizowane: nie"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "Podano NDEBUG, wszystkie asercje zostaÅy wyÅÄ
czone."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "Podano FASTPATH, tylko szybkie asercje Åcieżek zostaÅy wyÅÄ
czone."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Wszystkie asercje sÄ
wÅÄ
czone."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Uzyskanie identyfikatora komputera nie powiodÅo siÄ"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "Identyfikator komputera to %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, c-format
msgid "Session ID is %s."
msgstr "Identyfikator sesji to %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Używanie folderu wykonywania %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Używanie folderu stanu %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Uruchamianie w trybie systemowym: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -463,16 +343,22 @@ msgid ""
"Please read http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an "
"explanation why system mode is usually a bad idea."
msgstr ""
-
-#: ../src/daemon/main.c:951
+"OK, wiÄc PA jest uruchomione w trybie systemowym. ProszÄ zauważyÄ, że "
+"prawdopodobnie tak nie powinno byÄ.\n"
+"JeÅli mimo to tak jest, to twoja wina, jeÅli coÅ nie dziaÅa tak jak "
+"powinno.\n"
+"ProszÄ przeczytaÄ http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode, "
+"gdzie wyjaÅniono, dlaczego tryb systemowy jest zwykle zÅym pomysÅem."
+
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() nie powiodÅo siÄ."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Åwieże zegary o wysokiej rozdzielczoÅci! Smacznego!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -480,27 +366,27 @@ msgstr ""
"KoleÅ, twoje jÄ
dro Åmierdzi! Szef kuchni poleca dzisiaj Linuksa w wÅÄ
czonymi "
"zegarami o wysokiej rozdzielczoÅci!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() nie powiodÅo siÄ."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Zainicjowanie demona nie powiodÅo siÄ."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Uruchamianie demona bez żadnych wczytanych moduÅów, odmawianie pracy."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ZakoÅczono uruchamianie demona."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Zainicjowano wyÅÄ
czenie demona."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Demon zostaÅ zniszczony."
@@ -844,14 +730,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### Odczytano z pliku konfiguracji: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Porzucanie uprawnieÅ roota."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "PomyÅlnie ograniczono możliwoÅci do CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "System dźwiÄku PulseAudio"
@@ -860,30 +742,6 @@ msgstr "System dźwiÄku PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Uruchomienie systemu dźwiÄku PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Szeregowanie o wysokim priorytecie (ujemny poziom nice Uniksa) dla demona "
-"PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Szeregowanie w czasie rzeczywistym dla demona PulseAudio"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"Polityka systemu uniemożliwia PulseAudio uzyskanie szeregowania o wysokim "
-"priorytecie."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"Polityka systemu uniemożliwia PulseAudio uzyskanie szeregowania w czasie "
-"rzeczywistym."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1256,184 +1114,183 @@ msgstr "Analiza danych ciasteczka nie powiodÅo siÄ"
msgid "Failed to open configuration file '%s': %s"
msgstr "Otwarcie pliku konfiguracji \"%s\" nie powiodÅo siÄ: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Nie wczytano ciasteczka. Próbowanie poÅÄ
czenia siÄ bez niego."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Otrzymano komunikat z nieznanego powodu \"%s\""
-#: ../src/utils/pacat.c:107
+#: ../src/utils/pacat.c:108
#, c-format
-msgid "Failed to drain stream: %s\n"
-msgstr "Opróżnienie strumienia nie powiodÅo siÄ: %s\n"
+msgid "Failed to drain stream: %s"
+msgstr "Opróżnienie strumienia nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
-msgstr "Opróżniono strumieŠodtwarzania.\n"
+#: ../src/utils/pacat.c:113
+msgid "Playback stream drained."
+msgstr "Opróżniono strumieŠodtwarzania."
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
-msgstr "Opróżnianie poÅÄ
czenia z serwerem.\n"
+#: ../src/utils/pacat.c:123
+msgid "Draining connection to server."
+msgstr "Opróżnianie poÅÄ
czenia z serwerem."
-#: ../src/utils/pacat.c:135
+#: ../src/utils/pacat.c:136
#, c-format
-msgid "pa_stream_drain(): %s\n"
-msgstr "pa_stream_drain(): %s\n"
+msgid "pa_stream_drain(): %s"
+msgstr "pa_stream_drain(): %s"
-#: ../src/utils/pacat.c:158
+#: ../src/utils/pacat.c:159
#, c-format
-msgid "pa_stream_write() failed: %s\n"
-msgstr "pa_stream_write() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_write() failed: %s"
+msgstr "pa_stream_write() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
+#: ../src/utils/pacat.c:197
#, c-format
-msgid "pa_stream_peek() failed: %s\n"
-msgstr "pa_stream_peek() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_begin_write() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
-msgstr "PomyÅlnie utworzono strumieÅ.\n"
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, c-format
+msgid "pa_stream_peek() failed: %s"
+msgstr "pa_stream_peek() nie powiodÅo siÄ: %s"
+
+#: ../src/utils/pacat.c:307
+msgid "Stream successfully created."
+msgstr "PomyÅlnie utworzono strumieÅ."
-#: ../src/utils/pacat.c:305
+#: ../src/utils/pacat.c:310
#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
-msgstr "pa_stream_get_buffer_attr() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_get_buffer_attr() failed: %s"
+msgstr "pa_stream_get_buffer_attr() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:309
+#: ../src/utils/pacat.c:314
#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-msgstr "Metryka bufora: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
+msgstr "Metryka bufora: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
-#: ../src/utils/pacat.c:312
+#: ../src/utils/pacat.c:317
#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
-msgstr "Metryka bufora: maxlength=%u, fragsize=%u\n"
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
+msgstr "Metryka bufora: maxlength=%u, fragsize=%u"
-#: ../src/utils/pacat.c:316
+#: ../src/utils/pacat.c:321
#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
-msgstr "Używanie przykÅadowej specyfikacji \"%s\", mapa kanaÅów \"%s\".\n"
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr "Używanie przykÅadowej specyfikacji \"%s\", mapa kanaÅów \"%s\"."
-#: ../src/utils/pacat.c:320
+#: ../src/utils/pacat.c:325
#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
-msgstr "PoÅÄ
czono siÄ z urzÄ
dzeniem %s (%u, %swstrzymane).\n"
+msgid "Connected to device %s (%u, %ssuspended)."
+msgstr "PoÅÄ
czono siÄ z urzÄ
dzeniem %s (%u, %swstrzymane)."
-#: ../src/utils/pacat.c:330
+#: ../src/utils/pacat.c:335
#, c-format
-msgid "Stream error: %s\n"
-msgstr "BÅÄ
d strumienia: %s\n"
+msgid "Stream error: %s"
+msgstr "BÅÄ
d strumienia: %s"
-#: ../src/utils/pacat.c:340
+#: ../src/utils/pacat.c:345
#, c-format
-msgid "Stream device suspended.%s \n"
-msgstr "Wstrzymano urzÄ
dzenie strumienia.%s \n"
+msgid "Stream device suspended.%s"
+msgstr "Wstrzymano urzÄ
dzenie strumienia.%s"
-#: ../src/utils/pacat.c:342
+#: ../src/utils/pacat.c:347
#, c-format
-msgid "Stream device resumed.%s \n"
-msgstr "Wznowiono urzÄ
dzenie strumienia.%s \n"
+msgid "Stream device resumed.%s"
+msgstr "Wznowiono urzÄ
dzenie strumienia.%s"
-#: ../src/utils/pacat.c:350
+#: ../src/utils/pacat.c:355
#, c-format
-msgid "Stream underrun.%s \n"
-msgstr "NiedopeÅniono strumieÅ.%s \n"
+msgid "Stream underrun.%s"
+msgstr "NiedopeÅniono strumieÅ.%s"
-#: ../src/utils/pacat.c:357
+#: ../src/utils/pacat.c:362
#, c-format
-msgid "Stream overrun.%s \n"
-msgstr "PrzepeÅniono strumieÅ.%s \n"
+msgid "Stream overrun.%s"
+msgstr "PrzepeÅniono strumieÅ.%s"
-#: ../src/utils/pacat.c:364
+#: ../src/utils/pacat.c:369
#, c-format
-msgid "Stream started.%s \n"
-msgstr "Utworzono strumieÅ.%s \n"
+msgid "Stream started.%s"
+msgstr "Utworzono strumieÅ.%s"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
-msgstr "StrumieÅ zostaÅ przeniesiony do urzÄ
dzenia %s (%u, %swstrzymane).%s \n"
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr "StrumieÅ zostaÅ przeniesiony do urzÄ
dzenia %s (%u, %swstrzymane).%s"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "nie "
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Stream buffer attributes changed.%s \n"
-msgstr "Zmieniono atrybuty bufora strumienia.%s \n"
+msgid "Stream buffer attributes changed.%s"
+msgstr "Zmieniono atrybuty bufora strumienia.%s"
-#: ../src/utils/pacat.c:411
+#: ../src/utils/pacat.c:416
#, c-format
-msgid "Connection established.%s \n"
-msgstr "Ustanowiono poÅÄ
czenie.%s \n"
+msgid "Connection established.%s"
+msgstr "Ustanowiono poÅÄ
czenie.%s"
-#: ../src/utils/pacat.c:414
+#: ../src/utils/pacat.c:419
#, c-format
-msgid "pa_stream_new() failed: %s\n"
-msgstr "pa_stream_new() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_new() failed: %s"
+msgstr "pa_stream_new() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:442
+#: ../src/utils/pacat.c:447
#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
-msgstr "pa_stream_connect_playback() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_connect_playback() failed: %s"
+msgstr "pa_stream_connect_playback() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:448
+#: ../src/utils/pacat.c:453
#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
-msgstr "pa_stream_connect_record() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_connect_record() failed: %s"
+msgstr "pa_stream_connect_record() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
+#: ../src/utils/pacat.c:467
#, c-format
-msgid "Connection failure: %s\n"
-msgstr "PoÅÄ
czenie nie powiodÅo siÄ: %s\n"
-
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Otrzymano EOF.\n"
+msgid "Connection failure: %s"
+msgstr "PoÅÄ
czenie nie powiodÅo siÄ: %s"
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() nie powiodÅo siÄ: %s\n"
+msgid "Got EOF."
+msgstr "Otrzymano EOF."
-#: ../src/utils/pacat.c:532
+#: ../src/utils/pacat.c:537
#, c-format
-msgid "write() failed: %s\n"
-msgstr "write() nie powiodÅo siÄ: %s\n"
+msgid "write() failed: %s"
+msgstr "write() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
-msgstr "Otrzymano sygnaÅ, wyÅÄ
czanie.\n"
+#: ../src/utils/pacat.c:558
+msgid "Got signal, exiting."
+msgstr "Otrzymano sygnaÅ, wyÅÄ
czanie."
-#: ../src/utils/pacat.c:567
+#: ../src/utils/pacat.c:572
#, c-format
-msgid "Failed to get latency: %s\n"
-msgstr "Uzyskanie opóźnienia nie powiodÅo siÄ: %s\n"
+msgid "Failed to get latency: %s"
+msgstr "Uzyskanie opóźnienia nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Czas: %0.3f sekundy; opóźnienie: %0.0f usekundy. \r"
-#: ../src/utils/pacat.c:592
+#: ../src/utils/pacat.c:595
#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
-msgstr "pa_stream_update_timing_info() nie powiodÅo siÄ: %s\n"
+msgid "pa_stream_update_timing_info() failed: %s"
+msgstr "pa_stream_update_timing_info() nie powiodÅo siÄ: %s"
#: ../src/utils/pacat.c:605
#, c-format
@@ -1561,35 +1418,35 @@ msgstr ""
"Skompilowane za pomocÄ
libpulse %s\n"
"Skonsolidowane za pomocÄ
libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "NieprawidÅowa nazwa klienta \"%s\"\n"
+msgid "Invalid client name '%s'"
+msgstr "NieprawidÅowa nazwa klienta \"%s\""
#: ../src/utils/pacat.c:776
#, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "NieprawidÅowa nazwa strumienia \"%s\"\n"
+msgid "Invalid stream name '%s'"
+msgstr "NieprawidÅowa nazwa strumienia \"%s\""
#: ../src/utils/pacat.c:813
#, c-format
-msgid "Invalid channel map '%s'\n"
-msgstr "NieprawidÅowa mapa kanaÅów \"%s\"\n"
+msgid "Invalid channel map '%s'"
+msgstr "NieprawidÅowa mapa kanaÅów \"%s\""
#: ../src/utils/pacat.c:842
#, c-format
-msgid "Invalid latency specification '%s'\n"
-msgstr "NieprawidÅowe okreÅlenie opóźnienia \"%s\"\n"
+msgid "Invalid latency specification '%s'"
+msgstr "NieprawidÅowe okreÅlenie opóźnienia \"%s\""
#: ../src/utils/pacat.c:849
#, c-format
-msgid "Invalid process time specification '%s'\n"
-msgstr "NieprawidÅowe okreÅlenie czasu procesu \"%s\"\n"
+msgid "Invalid process time specification '%s'"
+msgstr "NieprawidÅowe okreÅlenie czasu procesu \"%s\""
#: ../src/utils/pacat.c:861
#, c-format
-msgid "Invalid property '%s'\n"
-msgstr "NieprawidÅowa wÅasnoÅÄ \"%s\"\n"
+msgid "Invalid property '%s'"
+msgstr "NieprawidÅowa wÅasnoÅÄ \"%s\""
#: ../src/utils/pacat.c:878
#, c-format
@@ -1597,62 +1454,62 @@ msgid "Unknown file format %s."
msgstr "Nieznany format pliku %s."
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
-msgstr "NieprawidÅowe okreÅlenie próbki\n"
+msgid "Invalid sample specification"
+msgstr "NieprawidÅowe okreÅlenie próbki"
#: ../src/utils/pacat.c:907
#, c-format
-msgid "open(): %s\n"
-msgstr "open(): %s\n"
+msgid "open(): %s"
+msgstr "open(): %s"
#: ../src/utils/pacat.c:912
#, c-format
-msgid "dup2(): %s\n"
-msgstr "dup2(): %s\n"
+msgid "dup2(): %s"
+msgstr "dup2(): %s"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
-msgstr "Za dużo parametrów.\n"
+msgid "Too many arguments."
+msgstr "Za dużo parametrów."
#: ../src/utils/pacat.c:930
-msgid "Failed to generate sample specification for file.\n"
-msgstr "Utworzenie okreÅlenia próbki dla pliku nie powiodÅo siÄ.\n"
+msgid "Failed to generate sample specification for file."
+msgstr "Utworzenie okreÅlenia próbki dla pliku nie powiodÅo siÄ."
#: ../src/utils/pacat.c:950
-msgid "Failed to open audio file.\n"
-msgstr "Otwarcie pliku dźwiÄkowego nie powiodÅo siÄ.\n"
+msgid "Failed to open audio file."
+msgstr "Otwarcie pliku dźwiÄkowego nie powiodÅo siÄ."
#: ../src/utils/pacat.c:956
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
"Ostrzeżenie: podane okreÅlenie próbki zostanie zastÄ
pione przez okreÅlenie z "
-"pliku.\n"
+"pliku."
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
-msgid "Failed to determine sample specification from file.\n"
-msgstr "Ustalenie okreÅlenia próbki z pliku nie powiodÅo siÄ.\n"
+#: ../src/utils/pacat.c:959
+msgid "Failed to determine sample specification from file."
+msgstr "Ustalenie okreÅlenia próbki z pliku nie powiodÅo siÄ."
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr "Ostrzeżenie: ustalenie mapy kanaÅów z pliku nie powiodÅo siÄ.\n"
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Ostrzeżenie: ustalenie mapy kanaÅów z pliku nie powiodÅo siÄ."
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
-msgstr "Mapa kanaÅów nie zgadza siÄ z okreÅleniem próbki\n"
+msgid "Channel map doesn't match sample specification"
+msgstr "Mapa kanaÅów nie zgadza siÄ z okreÅleniem próbki"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr "Ostrzeżenie: zapisanie mapy kanaÅów do pliku nie powiodÅo siÄ.\n"
+msgid "Warning: failed to write channel map to file."
+msgstr "Ostrzeżenie: zapisanie mapy kanaÅów do pliku nie powiodÅo siÄ."
#: ../src/utils/pacat.c:1005
#, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr ""
"Otwieranie strumienia %s za pomocÄ
okreÅlenie próbki \"%s\" i mapy kanaÅów "
-"\"%s\".\n"
+"\"%s\"."
#: ../src/utils/pacat.c:1006
msgid "recording"
@@ -1662,36 +1519,30 @@ msgstr "nagrywanie"
msgid "playback"
msgstr "odtwarzanie"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr "pa_mainloop_new() nie powiodÅo siÄ.\n"
+#: ../src/utils/pacat.c:1032
+msgid "pa_mainloop_new() failed."
+msgstr "pa_mainloop_new() nie powiodÅo siÄ."
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
-msgstr "io_new() nie powiodÅo siÄ.\n"
+msgid "io_new() failed."
+msgstr "io_new() nie powiodÅo siÄ."
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
-msgstr "pa_context_new() nie powiodÅo siÄ.\n"
+#: ../src/utils/pacat.c:1058
+msgid "pa_context_new() failed."
+msgstr "pa_context_new() nie powiodÅo siÄ."
-#: ../src/utils/pacat.c:1066
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
#, c-format
-msgid "pa_context_connect() failed: %s\n"
-msgstr "pa_context_connect() nie powiodÅo siÄ: %s\n"
+msgid "pa_context_connect() failed: %s"
+msgstr "pa_context_connect() nie powiodÅo siÄ: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() nie powiodÅo siÄ.\n"
+#: ../src/utils/pacat.c:1072
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_rttime_new() nie powiodÅo siÄ."
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr "pa_mainloop_run() nie powiodÅo siÄ.\n"
+#: ../src/utils/pacat.c:1079
+msgid "pa_mainloop_run() failed."
+msgstr "pa_mainloop_run() nie powiodÅo siÄ."
#: ../src/utils/pasuspender.c:81
#, c-format
@@ -1719,6 +1570,11 @@ msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr ""
"OSTRZEÅ»ENIE: serwer dźwiÄku nie jest lokalny, nie zostanie wstrzymany.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "PoÅÄ
czenie nie powiodÅo siÄ: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1758,6 +1614,21 @@ msgstr ""
"Skompilowane za pomocÄ
libpulse %s\n"
"Skonsolidowane za pomocÄ
libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() nie powiodÅo siÄ.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() nie powiodÅo siÄ.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() nie powiodÅo siÄ.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1853,14 +1724,14 @@ msgstr ""
"\t\t%s\n"
#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:353
-#, fuzzy, c-format
+#, c-format
msgid "\tPorts:\n"
-msgstr "\tProfile:\n"
+msgstr "\tPorty:\n"
#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
-#, fuzzy, c-format
+#, c-format
msgid "\tActive Port: %s\n"
-msgstr "\tAktywny profil: %s\n"
+msgstr "\tAktywny port: %s\n"
#: ../src/utils/pactl.c:290
#, c-format
@@ -2115,7 +1986,7 @@ msgid "Premature end of file\n"
msgstr "Przedwczesny koniec pliku\n"
#: ../src/utils/pactl.c:826
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options] stat\n"
"%s [options] list\n"
@@ -2154,6 +2025,8 @@ msgstr ""
"%s [opcje] suspend-sink [ODPÅYW] 1|0\n"
"%s [opcje] suspend-source [ŹRÃDÅO] 1|0\n"
"%s [opcje] set-card-profile [KARTA] [PROFIL] \n"
+"%s [opcje] set-sink-port [ODPÅYW] [PORT] \n"
+"%s [opcje] set-source-port [ŹRÃDÅO] [PORT] \n"
"\n"
" -h, --help WyÅwietla tÄ pomoc\n"
" --version WyÅwietla wersjÄ\n"
@@ -2172,6 +2045,11 @@ msgstr ""
"Skompilowane za pomocÄ
libpulse %s\n"
"Skonsolidowane za pomocÄ
libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "NieprawidÅowa nazwa klienta \"%s\"\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "ProszÄ podaÄ plik próbki do wczytania\n"
@@ -2180,6 +2058,10 @@ msgstr "ProszÄ podaÄ plik próbki do wczytania\n"
msgid "Failed to open sound file.\n"
msgstr "Otwarcie pliku dźwiÄkowego nie powiodÅo siÄ.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Ustalenie okreÅlenia próbki z pliku nie powiodÅo siÄ.\n"
+
#: ../src/utils/pactl.c:951
msgid "Warning: Failed to determine sample specification from file.\n"
msgstr "Ostrzeżenie: ustalenie okreÅlenia próbki z pliku nie powiodÅo siÄ.\n"
@@ -2227,24 +2109,17 @@ msgid "You have to specify a card name/index and a profile name\n"
msgstr "Należy podaÄ nazwÄ karty/indeks i nazwÄ profilu\n"
#: ../src/utils/pactl.c:1073
-#, fuzzy
msgid "You have to specify a sink name/index and a port name\n"
-msgstr "Należy podaÄ nazwÄ karty/indeks i nazwÄ profilu\n"
+msgstr "Należy podaÄ nazwÄ odpÅywu/indeks i nazwÄ portu\n"
#: ../src/utils/pactl.c:1084
-#, fuzzy
msgid "You have to specify a source name/index and a port name\n"
-msgstr "Należy podaÄ nazwÄ karty/indeks i nazwÄ profilu\n"
+msgstr "Należy podaÄ nazwÄ ÅºródÅa/indeks i nazwÄ portu\n"
#: ../src/utils/pactl.c:1099
msgid "No valid command specified.\n"
msgstr "Nie podano prawidÅowego polecenia.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() nie powiodÅo siÄ: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2363,11 +2238,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Nie można uzyskaÄ dostÄpu do blokady automatycznego wznawiania."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2384,7 +2259,7 @@ msgstr ""
"Wybudzono za pomocÄ
ustawienia POLLOUT - ale jednoczesne wywoÅanie "
"snd_pcm_avail() zwróciÅo zero lub innÄ
wartoÅÄ < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2402,15 +2277,15 @@ msgstr ""
"snd_pcm_avail() zwróciÅo zero lub innÄ
wartoÅÄ < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "WyÅÄ
cz"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Odtwarzanie o wysokiej dokÅadnoÅci (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Duplex telefoniczny (HSP/HFP)"
@@ -2418,44 +2293,60 @@ msgstr "Duplex telefoniczny (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Serwer dźwiÄku PulseAudio"
-#~ msgid "Analog Mono"
-#~ msgstr "Analogowe mono"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Nie można poÅÄ
czyÄ siÄ z magistralÄ
systemowÄ
: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Nie można uzyskaÄ obiektu caller z PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Nie można ustawiÄ UID obiektu caller."
-#~ msgid "Analog Stereo"
-#~ msgstr "Analogowe stereo"
+#~ msgid "Failed to get CK session."
+#~ msgstr "Uzyskanie sesji CK nie powiodÅo siÄ."
-#~ msgid "Digital Stereo (IEC958)"
-#~ msgstr "Cyfrowe stereo (IEC958)"
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Nie można ustawiÄ UID obiektowi sesji."
-#~ msgid "Digital Stereo (HDMI)"
-#~ msgstr "Cyfrowe stereo (HDMI)"
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Nie można przydzieliÄ PolKitAction."
-#~ msgid "Analog Surround 4.0"
-#~ msgstr "Analogowe surround 4.0"
+#~ msgid "Cannot set action_id"
+#~ msgstr "Nie można ustawiÄ action_id"
-#~ msgid "Digital Surround 4.0 (IEC958/AC3)"
-#~ msgstr "Cyfrowe surround 4.0 (IEC958/AC3)"
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Nie można przydzieliÄ PolKitContext."
-#~ msgid "Analog Surround 4.1"
-#~ msgstr "Analogowe surround 4.1"
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Nie można zainicjowaÄ PolKitContext: %s"
-#~ msgid "Analog Surround 5.0"
-#~ msgstr "Analogowe surround 5.0"
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Nie można ustaliÄ, czy obiekt caller jest upoważniony: %s"
-#~ msgid "Analog Surround 5.1"
-#~ msgstr "Analogowe surround 5.1"
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Nie można uzyskaÄ upoważnienia: %s"
-#~ msgid "Digital Surround 5.1 (IEC958/AC3)"
-#~ msgstr "Cyfrowe surround 5.1 (IEC958/AC3)"
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit zwróciÅo \"%s\""
-#~ msgid "Analog Surround 7.1"
-#~ msgstr "Analogowe surround 7.1"
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Szeregowanie o wysokim priorytecie (ujemny poziom nice Uniksa) dla demona "
+#~ "PulseAudio"
-#~ msgid "Output %s + Input %s"
-#~ msgstr "WyjÅcie %s + wejÅcie %s"
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Szeregowanie w czasie rzeczywistym dla demona PulseAudio"
-#~ msgid "Output %s"
-#~ msgstr "WyjÅcie %s"
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Polityka systemu uniemożliwia PulseAudio uzyskanie szeregowania o wysokim "
+#~ "priorytecie."
-#~ msgid "Input %s"
-#~ msgstr "WejÅcie %s"
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Polityka systemu uniemożliwia PulseAudio uzyskanie szeregowania w czasie "
+#~ "rzeczywistym."
diff --git a/po/pt.po b/po/pt.po
index b44d622d..e077d093 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: \n"
"Last-Translator: Rui Gouveia \n"
"Language-Team: pt \n"
@@ -12,7 +12,12 @@ msgstr ""
"X-Poedit-Language: Portuguese\n"
"X-Poedit-Country: PORTUGAL\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, fuzzy, c-format
+msgid "%s %s"
+msgstr "%s %s"
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -25,7 +30,7 @@ msgstr ""
"Provavelmente isto é um erro no driver ALSA '%s'. Por favor, reporte este "
"problema aos programadores do ALSA."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -38,7 +43,7 @@ msgstr ""
"Provavelmente isto é um erro no driver ALSA '%s'. Por favor, reporte este "
"problema aos programadores do ALSA."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -52,8 +57,9 @@ msgstr ""
"problema aos programadores do ALSA."
#: ../src/modules/module-ladspa-sink.c:49
+#, fuzzy
msgid "Virtual LADSPA sink"
-msgstr ""
+msgstr "Alarme virtual"
#: ../src/modules/module-ladspa-sink.c:53
msgid ""
@@ -64,7 +70,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Ãudio Interno"
@@ -84,220 +90,92 @@ msgstr "Não foi possÃvel alocar o novo carregador \"dl\"."
msgid "Failed to add bind-now-loader."
msgstr "Não foi possÃvel adicionar \"bind-now-loader\"."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Incapaz de se ligar ao bus de sistema: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Não foi possÃvel obter chamador a partir do PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Não foi possÃvel definir o UID no objecto chamador."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Falha ao obter sessão CK."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Não foi possÃvel definir o UID no objecto da sessão."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Não é possÃvel alocar PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "impossÃvel definir action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Não é possÃvel alocar contexto PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Incapaz de inicializar o PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Não foi possÃvel determinar se o chamador está autorizado: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Não foi possÃvel obter autenticação: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit respondeu com '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Foi obtido o sinal %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "A sair."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Falha ao procurar o utilizador '%s'."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Falha ao procurar o grupo '%s'."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Foi encontrado utilizador '%s' (UID %lu) e grupo '%s' (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID do utilizador '%s' e do grupo '%s' não coincidem."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Directório pessoal do utilizador '%s' não é '%s'. A ignorar."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Falha ao criar o '%s': %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Falhou a alteração da lista de grupos: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Não foi possÃvel mudar o GID: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Não foi possÃvel mudar o UID: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Privilégios de root cedidos com sucesso."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Modo de sistema não suportado nesta plataforma."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) falhou: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Não foi possÃvel processar linha de comando."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "Estamos no grupo '%s', permitindo escalonamento de alta-prioridade."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "Estamos no grupo '%s', permitindo escalonamento em tempo real."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr ""
-"O PolicyKit permite-nos o privilégio \"acquire-high-priority\" (adquirir "
-"alta prioridade)."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr ""
-"O PolicyKit recusa-nos o privilégio \"acquire-high-priority\" (adquirir alta "
-"prioridade)."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr ""
-"O PolicyKit permite-nos o privilégio \"acquire-real-time\" (adquirir tempo "
-"real)."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr ""
-"O PolicyKit recusa-nos o privilégio \"acquire-real-time\" (adquirir tempo "
-"real)."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Escalonamento de alta prioridade activo na configuração, mas não permitido "
-"pela politica."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO aumentado com sucesso"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO falhou: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "A desistir de CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Escalonamento em tempo real activo na configuração, mas não permitido pela "
-"politica."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Serviço não está a executar"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Serviço a executar como PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Tentativa de matar serviço falhou: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -305,154 +183,154 @@ msgstr ""
"Este programa não pretende ser executado como root (a não ser que a opção --"
"system seja especificada)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "São necessários privilégios de root."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start não é suportado para instâncias do sistema."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "A executar em modo de sistema, mas --disallow-exit não está definido!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"A executar em modo de sistema, mas --disallow-module-loading não está "
"definido!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "A executar em modo de sistema, a forçar a desactivação do modo SHM!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"A executar em modo de sistema, a forçar a desactivação da saÃda por "
"inactividade!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Não foi possÃvel adquirir o stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe falhou: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() falhou: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() falhou: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Arranque do serviço falhou."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Arranque do serviço sucedeu."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Isto é PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Máquina de compilação: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS utilizadas na compilação: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "A executar na máquina: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Foram encontrados %u CPUs."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "Tamanho da página é %lu bytes"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Compilado com suporte para Valgrind: sim"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Compilado com suporte para Valgrind: não"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "A executar em modo \"valgrind\": %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimizado: sim"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Compilação optimizada: não"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definido, todas as declarações desactivadas."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH definido, apenas as declarações \"fast path\" desactivadas."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Todas as declarações desactivadas."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "A tentativa de ler o ID da máquina falhou"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "O ID da máquina é %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
-msgstr "O ID da máquina é %s."
+msgstr "A sessão está fechada"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Execução a utilizar o directório %s"
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "A manter o estado no directório %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Execução em modo de sistema: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -462,15 +340,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() falhou."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Timer \"frescos\" de alta resolução disponÃveis. Bom apetite!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -478,32 +356,32 @@ msgstr ""
"Oh pá, o teu kernel não presta! O prato do dia recomendado é Linux com "
"timers de alta resolução activos!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() falhou."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Falha ao inicializar serviço."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Serviço arrancou sem módulos carregados. A recusar trabalhar."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Arranque do serviço completo."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Encerramento do serviço iniciado."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Serviço terminado."
#: ../src/daemon/cmdline.c:115
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -596,7 +474,7 @@ msgstr ""
"\n"
"OPTIONS:\n"
" --system[=BOOL] Executa em modo de sistema\n"
-" -D, --daemonize[=BOOL] Passa serviço depois de executar\n"
+" -D, --daemonize[=BOOL] Passa a serviço depois de executar\n"
" --fail[=BOOL] Termina quando o arranque falha\n"
" --high-priority[=BOOL] Tenta definir um alto nÃvel de "
"execução\n"
@@ -647,15 +525,14 @@ msgstr ""
"partilhada.\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"
+" -L, --load=\"MODULE ARGUMENTS\" Carrega o módulo especificado com\n"
+" o argumento especificado\n"
+" -F, --file=FILENAME Executa o script especificado\n"
+" -C Abre uma linha de comando no TTY "
+"(consola) em execução\n"
+" depois do arranque\n"
"\n"
-" -n Don't load default script file\n"
+" -n Não carrega o script por omissão\n"
#: ../src/daemon/cmdline.c:247
msgid "--daemonize expects boolean argument"
@@ -760,9 +637,9 @@ msgid "Load Once: %s\n"
msgstr "Carregar Uma Vez: %s\n"
#: ../src/daemon/dumpmodules.c:75
-#, c-format
+#, fuzzy, c-format
msgid "DEPRECATION WARNING: %s\n"
-msgstr ""
+msgstr "Aviso de Impressão"
#: ../src/daemon/dumpmodules.c:79
#, c-format
@@ -780,9 +657,9 @@ msgid "[%s:%u] Invalid log level '%s'."
msgstr "[%s:%u] NÃvel do ficheiro de registo inválido '%s'."
#: ../src/daemon/daemon-conf.c:248
-#, c-format
+#, fuzzy, c-format
msgid "[%s:%u] Invalid resample method '%s'."
-msgstr ""
+msgstr "nome do método de acesso"
#: ../src/daemon/daemon-conf.c:271
#, c-format
@@ -800,19 +677,19 @@ msgid "[%s:%u] Invalid sample format '%s'."
msgstr "[%s:%u] Formato da amostra inválido '%s'."
#: ../src/daemon/daemon-conf.c:312
-#, c-format
+#, fuzzy, c-format
msgid "[%s:%u] Invalid sample rate '%s'."
-msgstr ""
+msgstr "Taxa de amostragem em kHz"
#: ../src/daemon/daemon-conf.c:336
-#, c-format
+#, fuzzy, c-format
msgid "[%s:%u] Invalid sample channels '%s'."
-msgstr ""
+msgstr "Número de canais de audio"
#: ../src/daemon/daemon-conf.c:354
-#, c-format
+#, fuzzy, c-format
msgid "[%s:%u] Invalid channel map '%s'."
-msgstr ""
+msgstr "Activar mapa de _radar"
#: ../src/daemon/daemon-conf.c:372
#, c-format
@@ -839,20 +716,18 @@ msgid ""
"The specified default channel map has a different number of channels than "
"the specified default number of channels."
msgstr ""
+"O mapa de canais especificado tem um número de canais diferente do número de "
+"canais definido por omissão."
#: ../src/daemon/daemon-conf.c:616
#, c-format
msgid "### Read from configuration file: %s ###\n"
msgstr "### Ler configuração a partir do ficheiro: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "A largar privilégios de root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr ""
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "Sistema de Som PulseAudio"
@@ -861,24 +736,6 @@ msgstr "Sistema de Som PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "Inciar o Sistema de Som PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1251,183 +1108,187 @@ msgstr "Não foi possÃvel processar dados da cookie"
msgid "Failed to open configuration file '%s': %s"
msgstr "Falha ao abrir ficheiro de configuração '%s': %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Nenhuma cookie carregada. A tentar ligar sem cookie."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Recebida mensagem para extensão desconhecida '%s'"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Falhou ao esvaziar fluxo: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
-msgstr ""
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
+msgstr "O álbum do fluxo actual."
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
-msgstr ""
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
+msgstr "Ligação ao Servidor Recusada"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() falhou: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() falhou: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() falhou: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Fluxo criado com sucesso.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() falhou: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Métricas do Buffer: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Métricas do Buffer: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
-msgstr ""
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr "Utilizando especificação da amostra '%s'\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "Ligado ao dispositivo %s (%u, %ssuspended).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Erro de fluxo: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
-msgstr ""
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
+msgstr "Nenhum dispositivo configurado"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
-msgstr ""
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
+msgstr "Nenhum dispositivo configurado"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Fluxo com falta de dados.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Fluxo com excesso de dados.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Fluxo iniciado.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
-msgstr ""
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr "Ligado ao dispositivo %s (%u, %ssuspended).\n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "negação"
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+msgid "Stream buffer attributes changed.%s"
msgstr ""
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Ligação Estabelecida.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() falhou: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() falhou: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() falhou: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Ligação falhou: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Obtive EOF.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() falhou: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "Obtive EOF.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() falhou: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Recebido sinal, a sair.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Falhou a obtenção da latência: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Tempo: %0.3f sec; Latency: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() falhou: %s\n"
#: ../src/utils/pacat.c:605
@@ -1497,97 +1358,104 @@ msgid ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
msgstr ""
+"pacat %s\n"
+"Compilado com libpulse %s\n"
+"Ligado com libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "Método de resample inválido '%s'."
+msgid "Invalid client name '%s'"
+msgstr "Nome de máquina inválido"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "Método de resample inválido '%s'."
+msgid "Invalid stream name '%s'"
+msgstr "Nome de máquina inválido"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
+msgstr "Mapa de canais inválido '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Especificação da latência inválida '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
+msgstr "Especificação da infra-estrutura da impressora inválida: %1"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
-msgstr "Método de resample inválido '%s'."
+msgid "Invalid property '%s'"
+msgstr "Tipo de propriedade inválido %s para propriedade %s"
#: ../src/utils/pacat.c:878
-#, c-format
+#, fuzzy, c-format
msgid "Unknown file format %s."
-msgstr ""
+msgstr "Formato de ficheiro desconhecido"
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Especificação da amostra inválida\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "demasiados argumentos.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "não foi possÃvel obter informações da amostra: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
-msgstr "Falha ao abrir ficheiro de som.\n"
+msgid "Failed to open audio file."
+msgstr "Falha ao abrir ficheiro temporário"
#: ../src/utils/pacat.c:956
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "não foi possÃvel obter informações da amostra: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "não foi possÃvel obter informações da amostra: %s\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
-msgstr ""
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
+msgstr "Mapa de canais não corresponde com ficheiro.\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
+msgid "Warning: failed to write channel map to file."
msgstr ""
#: ../src/utils/pacat.c:1005
#, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr ""
#: ../src/utils/pacat.c:1006
@@ -1598,35 +1466,34 @@ msgstr "a gravar"
msgid "playback"
msgstr "reprodução"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() falhou.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() falhou.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() falhou.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() falhou: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() falhou.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "não foi possÃvel obter o novo contexto.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() falhou.\n"
#: ../src/utils/pasuspender.c:81
@@ -1654,6 +1521,11 @@ msgstr "Falhou ao restaurar: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "Atenção: Servidor de Som não local, suspender ignorado.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Ligação falhou: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1684,6 +1556,21 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() falhou.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() falhou.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() falhou.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1758,7 +1645,7 @@ msgstr "\tPrefis:\n"
#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
#, fuzzy, c-format
msgid "\tActive Port: %s\n"
-msgstr "\tPerfil Activo: %s\n"
+msgstr "MÃQUINA:PORTO"
#: ../src/utils/pactl.c:290
#, c-format
@@ -1853,9 +1740,10 @@ msgid "\tActive Profile: %s\n"
msgstr "\tPerfil Activo: %s\n"
#: ../src/utils/pactl.c:489
-#, c-format
+#, fuzzy, c-format
msgid "Failed to get sink input information: %s\n"
msgstr ""
+"Não foi possÃvel obter informações sobre o Método de Introdução de Dados"
#: ../src/utils/pactl.c:508
#, c-format
@@ -1976,6 +1864,11 @@ msgstr ""
"Compilado com libpulse %s\n"
"Linkado com libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Nome de máquina inválido"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Por favor, especifique um ficheiro de amostra para carregar\n"
@@ -1984,6 +1877,11 @@ msgstr "Por favor, especifique um ficheiro de amostra para carregar\n"
msgid "Failed to open sound file.\n"
msgstr "Falha ao abrir ficheiro de som.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "não foi possÃvel obter informações da amostra: %s\n"
+
#: ../src/utils/pactl.c:951
msgid "Warning: Failed to determine sample specification from file.\n"
msgstr ""
@@ -2046,11 +1944,6 @@ msgstr "Tem de especificar um nome/Ãndice de carta e um nome de perfil\n"
msgid "No valid command specified.\n"
msgstr "O comando especificado é inválido.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() falhou: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2160,11 +2053,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "ImpossÃvel aceder ao lock \"autospawn\"."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2181,7 +2074,7 @@ msgstr ""
"Fomos acordados pelo conjunto POLLOUT -- contudo uma chamada a seguir de "
"snd_pcm_avail() retornou 0 ou outro valor < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2199,15 +2092,15 @@ msgstr ""
"snd_pcm_avail() retornou 0 ou outro valor < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "Desligado"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Reprodução Alta Fidelidade (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Telefonia Duplex (HSP/HFP)"
@@ -2215,6 +2108,71 @@ msgstr "Telefonia Duplex (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "Servidor de Som PulseAudio"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Incapaz de se ligar ao bus de sistema: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Não foi possÃvel obter chamador a partir do PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Não foi possÃvel definir o UID no objecto chamador."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Falha ao obter sessão CK."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Não foi possÃvel definir o UID no objecto da sessão."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Não é possÃvel alocar PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "impossÃvel definir action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Não é possÃvel alocar contexto PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Incapaz de inicializar o PolKitContext: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Não foi possÃvel determinar se o chamador está autorizado: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Não foi possÃvel obter autenticação: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit respondeu com '%s'"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Escalonamento de alta-prioridade (nÃvel 'nice' negativo em Unix) para o "
+#~ "serviço PulseAudio"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Escalonamento em tempo-real para o serviço PulseAudio"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Politica do sistema impede o PulseAudio de obter escalonamento de alta-"
+#~ "prioridade."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Politica do sistema impede o PulseAudio de obter escalonamento de tempo-"
+#~ "real."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() falhou: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "ImpossÃvel ligar ao servidor."
+
#~ msgid "Analog Mono"
#~ msgstr "Mono Analógico"
@@ -2248,6 +2206,60 @@ msgstr "Servidor de Som PulseAudio"
#~ msgid "Analog Surround 7.1"
#~ msgstr "Analog Surround 7.1"
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "Estamos no grupo '%s', permitindo escalonamento de alta-prioridade."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "Estamos no grupo '%s', permitindo escalonamento em tempo real."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr ""
+#~ "O PolicyKit permite-nos o privilégio \"acquire-high-priority\" (adquirir "
+#~ "alta prioridade)."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr ""
+#~ "O PolicyKit recusa-nos o privilégio \"acquire-high-priority\" (adquirir "
+#~ "alta prioridade)."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr ""
+#~ "O PolicyKit permite-nos o privilégio \"acquire-real-time\" (adquirir "
+#~ "tempo real)."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr ""
+#~ "O PolicyKit recusa-nos o privilégio \"acquire-real-time\" (adquirir tempo "
+#~ "real)."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "Escalonamento de alta prioridade activo na configuração, mas não "
+#~ "permitido pela politica."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO aumentado com sucesso"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO falhou: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "A desistir de CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Escalonamento em tempo real activo na configuração, mas não permitido "
+#~ "pela politica."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "Capacidades limitadas com sucesso em CAP_SYS_NICE."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() falhou.\n"
+
#~ msgid "Stream successfully created\n"
#~ msgstr "Fluxo criado com sucesso\n"
@@ -2266,12 +2278,12 @@ msgstr "Servidor de Som PulseAudio"
#~ "Compilado com libpulse %s\n"
#~ "Linkado com libpulse %s\n"
+#~ msgid "Invalid channel map\n"
+#~ msgstr "Mapa de canais inválido\n"
+
#~ msgid "Failed to open file '%s'\n"
#~ msgstr "Falha ao abrir o ficheiro '%s'\n"
-#~ msgid "Using sample spec '%s'\n"
-#~ msgstr "Utilizando especificação da amostra '%s'\n"
-
#~ msgid "Output %s + Input %s"
#~ msgstr "SaÃda %s + Entrada %s"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index fd4f5391..323e5b94 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -1,498 +1,367 @@
-# Brazilian Translation of PulseAudio
-# Copyright (C) 2008 pulseaudio
+# Brazilian Portuguese translation of PulseAudio
+# Copyright (C) 2008,2009 pulseaudio
# This file is distributed under the same license as the pulseaudio package.
# Fabian Affolter , 2008.
+# Igor Pires Soares , 2009.
#
msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
-"PO-Revision-Date: 2008-11-21 01:21-0300\n"
-"Last-Translator: Henrique (LonelySpooky) Junior \n"
+"POT-Creation-Date: 2009-08-08 14:46+0000\n"
+"PO-Revision-Date: 2009-08-08 19:02-0300\n"
+"Last-Translator: Igor Pires Soares \n"
"Language-Team: Brazilian-Portuguese \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-Poedit-Language: Brazilian Portuguese\n"
+"X-Poedit-Language: Portuguese\n"
"X-Poedit-Country: Brazil\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775
+#: ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr "%s %s"
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, 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."
+"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 ""
+"O 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:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, 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."
+"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 ""
+"O 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:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, 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."
+"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 ""
+"O 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/module-ladspa-sink.c:49
msgid "Virtual LADSPA sink"
-msgstr ""
+msgstr "Destino Virtual LADSPA"
#: ../src/modules/module-ladspa-sink.c:53
-msgid ""
-"sink_name= sink_properties= "
-"master= format= rate= "
-"channels= channel_map= plugin= label= control="
-msgstr ""
+msgid "sink_name= sink_properties= master= format= rate= channels= channel_map= plugin= label= control="
+msgstr "sink_name= sink_properties= master= format= rate= channels= channel_map= plugin= label= control="
-#: ../src/pulsecore/sink.c:2394
-#, fuzzy
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
-msgstr "Erro interno"
+msgstr "Ãudio interno"
#: ../src/pulsecore/sink.c:2400
msgid "Modem"
-msgstr ""
+msgstr "Modem"
#: ../src/daemon/ltdl-bind-now.c:124
-#, fuzzy
msgid "Failed to find original lt_dlopen loader."
-msgstr "Falha em encontrar o carregador original dlopen"
+msgstr "Falha ao localizar o carregador original lt_dlopen."
#: ../src/daemon/ltdl-bind-now.c:129
-#, fuzzy
msgid "Failed to allocate new dl loader."
-msgstr "Falha em encontrar o carregador original dlopen"
+msgstr "Falha ao alocar o novo carregador dl."
#: ../src/daemon/ltdl-bind-now.c:142
msgid "Failed to add bind-now-loader."
msgstr "Falha em adicionar o bind-now-loader."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Não foi possÃvel conectar com o barramento do sistema: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Não foi possÃvel obter quem chamou pelo PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Não foi possÃvel definir o UID sobre o objeto que chamou."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Falha em obter a sessão CK."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Não foi possÃvel definir o UID do objeto da sessão."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Não foi possÃvel alocar o PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Não foi possÃvel definir a action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Não foi possÃvel alocar o PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Não foi possÃvel iniciar o PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Não foi possÃvel determinar se o solicitante está autorizado: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Não foi possÃvel obter auth: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit respondeu com '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Sinal %s recebido."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Saindo."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Falha em encontrar o usuário '%s'."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Falha em encontrar o grupo '%s'."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Usuário '%s' (UID %lu) e grupo '%s' (GID %lu) encontrados."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "O GID do usuário'%s' e do grupo '%s' não combinam."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "O diretório Home do usuário '%s' não é '%s', ignorando."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212
+#: ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Falha em criar '%s': %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Falha em alterar a lista de grupos: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Falha em mudar o GID: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Falha em mudar o UID: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "Os privilégios do root foram retirados com sucesso."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "O modo ampliado do sistema não tem suporte nessa plataforma."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) falhou: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Falha em interpretar a linha de comando."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "Estamos no grupo '%s', permitindo escalonamento de alta prioridade."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "Estamos no grupo '%s', permitindo escalonamento em tempo real."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "O PolicyKit assegura-nos a aquisição de privilégio de alta prioridade."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "O PolicyKit recusa a aquisição de privilégios de alta prioridade."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "O PolicyKit assegura-nos a aquisição de privilégios de tempo-real."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "O PolicyKit recusa a aquisição de privilégios de tempo real."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"O escalonamento de alta prioridade foi habilitado para esta configuração, "
-"mas não é permitida pela polÃtica."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "RLIMIT_RTPRIO aumentado com sucesso"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO falhou: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Abandonando CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"O escalonamento de tempo real foi habilitado pela configuração, mas não é "
-"permitido pela polÃtica."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "O daemon não está em execução"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Daemon executando como PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Falha em encerrar o daemon: %s"
-#: ../src/daemon/main.c:722
-msgid ""
-"This program is not intended to be run as root (unless --system is "
-"specified)."
-msgstr ""
-"Este programa não é para ser executado como root (a não ser que --system "
-"seja especificado)."
+#: ../src/daemon/main.c:568
+msgid "This program is not intended to be run as root (unless --system is specified)."
+msgstr "Este programa não é para ser executado como root (a não ser que --system seja especificado)."
-#: ../src/daemon/main.c:724
-#, fuzzy
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
-msgstr "Privilégios de rot são requeridos."
+msgstr "Privilégios de root requeridos."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start não tem suporte para instâncias de sistemas."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "Executando em no modo system, mas --disallow-exit não foi configurado!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
-msgstr ""
-"Executando no modo system, mas --disallow-module-loading não foi configurado!"
+msgstr "Executando no modo system, mas --disallow-module-loading não foi configurado!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "Executando no modo system, desabilitando forçadamente o modo SHM!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
-msgstr ""
-"Executando no modo system, desabilitando forçadamente o exit idle time!"
+msgstr "Executando no modo system, desabilitando forçadamente o exit idle time!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Falha em adquirir o stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "O pipe falhou: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "O fork() falhou: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643
+#: ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "A operação read() falhou: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Falha na partida do daemon."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Os daemons foram iniciados com sucesso."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Este é o PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "Host de compilação: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "Compilação CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Executando no host: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
-msgstr ""
+msgstr "%u CPUs localizadas."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "O tamanho da página é %lu bytes"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Compilado com suporte do Valgrind: sim"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Compilado com suporte do Valgrind: não"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Executando em modo valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Build otimizado: sim"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Build otimizado: não"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
-msgstr ""
+msgstr "NDEBUG definido, todas as declarações desabilitadas."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
-msgstr ""
+msgstr "FASTPATH definido, somente as declarações do \"fast path\" foram desabilitadas."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
-msgstr ""
+msgstr "Todas as declarações habilitadas."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Falha em obter o ID da máquina"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "A ID da máquina é %s."
-#: ../src/daemon/main.c:917
-#, fuzzy, c-format
+#: ../src/daemon/main.c:770
+#, c-format
msgid "Session ID is %s."
-msgstr "A ID da máquina é %s."
+msgstr "O ID da sessão é %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Usando o diretório de runtime %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Usando o diretório de estado %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Executando em modo do sistema: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
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://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an "
-"explanation why system mode is usually a bad idea."
+"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://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an explanation why system mode is usually a bad idea."
msgstr ""
+"OK, então você está executando o PA no modo de sistema. Por favor, note que é mais provável que você não deveria estar fazendo isso.\n"
+"Todavia, se você o fizer, então a culpa será sua se as coisas não funcionarem como esperado.\n"
+"Por favor, leia o http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode para obter um explicação sobre porque o modo de sistema é uma má idéia."
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() falhou."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Timers de alta resolução frequinhos disponÃveis! Bon appetit!"
-#: ../src/daemon/main.c:963
-msgid ""
-"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
-"resolution timers enabled!"
-msgstr ""
-"Cara, teu kernel fede! A recomendação do chef hoje é Linux com timers de "
-"alta resolução habilitados!"
+#: ../src/daemon/main.c:816
+msgid "Dude, your kernel stinks! The chef's recommendation today is Linux with high-resolution timers enabled!"
+msgstr "Cara, teu kernel fede! A recomendação do chef hoje é Linux com timers de alta resolução habilitados!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() falhou."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Falha em iniciar o daemon."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
-msgstr ""
-"O Daemon iniciou sem qualquer módulo carregado, recusando-se a trabalhar."
+msgstr "O Daemon iniciou sem qualquer módulo carregado, recusando-se a trabalhar."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "A partida dos Daemon está completa."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "O encerramento do Daemon foi iniciado."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Daemon terminado."
#: ../src/daemon/cmdline.c:115
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -502,48 +371,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 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"
+" --exit-idle-time=SECS Terminate the daemon when idle and this\n"
" time passed\n"
-" --module-idle-time=SECS Unload autoloaded modules when idle "
-"and\n"
+" --module-idle-time=SECS Unload autoloaded modules when idle and\n"
" this 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 Increase the verbosity level\n"
" --log-target={auto,syslog,stderr} 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"
@@ -554,12 +412,10 @@ msgid ""
" --disable-shm[=BOOL] Disable 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"
@@ -570,74 +426,56 @@ msgstr ""
" -h, --help Mostra esta ajuda\n"
" --version Mostra a versão\n"
" --dump-conf Descarrega a configuração padrão\n"
-" --dump-modules Descarrega a lista de módulos "
-"disponÃveis\n"
-" --dump-resample-methods Descarrega os métodos de "
-"reamostragem (resample)\n"
-" --cleanup-shm Limpa os segmentos de memória "
-"compartilhados\n"
-" --start Inicia o daemon se ele não estiver "
-"em execução\n"
+" --dump-modules Descarrega a lista de módulos disponÃveis\n"
+" --dump-resample-methods Descarrega os métodos de reamostragem\n"
+" --cleanup-shm Limpa os segmentos de memória compartilhados\n"
+" --start Inicia o daemon se ele não estiver em execução\n"
" -k --kill Encerra um daemon em execução\n"
-" --check Verifica um daemon em execução\n"
+" --check Verifica se há um daemon em execução (somente retorna o código de saÃda)\n"
"\n"
"OPÃÃES:\n"
-" --system[=BOOL] Executa como uma instância do "
-"sistema em escala ampla \n"
-" -D, --daemonize[=BOOL] Torna um daemom (daemonize) depois "
-"da partida\n"
+" --system[=BOOL] Executa como uma instância do sistema em escala ampla\n"
+" -D, --daemonize[=BOOL] Torna-se um daemom após o inÃcio\n"
" --fail[=BOOL] Sai quando a partida falha\n"
" --high-priority[=BOOL] Tenta definir um nÃvel alto de nice\n"
" (disponÃvel apenas, quando SUID ou\n"
" com RLIMIT_NICE) elevado\n"
-" --realtime[=BOOL] Tenta habilidar o escalonamento em "
-"tempo real\n"
-" (disponÃvel apenas como root, quando "
-"SUID ou\n"
+" --realtime[=BOOL] Tenta habilitar o escalonamento em tempo real\n"
+" (disponÃvel apenas como root, quando SUID ou\n"
" com RLIMIT_RTPRIO) elevado\n"
-" --disallow-module-loading[=BOOL] Não permite carga/descarga de módulo "
-"requerido pelo usuário\n"
+" --disallow-module-loading[=BOOL] Não permite carga/descarga de módulo requerido pelo usuário\n"
" depois da partida\n"
-" --disallow-exit[=BOOL] Não permite saÃda requisitada pelo "
-"usuário\n"
-" --exit-idle-time=SECS Termina um daemon quando ocioso e "
-"este\n"
-" tempo foi decorrido\n"
-" --module-idle-time=SECS Descarrega os modulos "
-"autocarregáveis quando ociosos e\n"
+" --disallow-exit[=BOOL] Não permite saÃda requisitada pelo usuário\n"
+" --exit-idle-time=SECS Termina um daemon quando ocioso e este\n"
" tempo foi decorrido\n"
-" --scache-idle-time=SECS Descarrega amostras quando ociosas "
-"e\n"
-" este tempo tenha passado\n"
-" --log-level[=LEVEL] Aumenta ou define o grau de "
-"verbosidade\n"
-" -v Aumenta o nÃvel de verbosidade\n"
-" --log-target={auto,syslog,stderr} Especifica o alvo do log\n"
-" -p, --dl-search-path=PATH Define o caminho de busca (search "
-"paht)para objetos (plugins)\n"
-" dinamicamente commpartilhados\n"
-" --resample-method=METHOD Usa o método de reamostragem "
-"especificado\n"
+" --module-idle-time=SECS Descarrega os módulos autocarregáveis quando ociosos e\n"
+" este tempo foi decorrido\n"
+" --scache-idle-time=SECS Descarrega amostras quando ociosas e\n"
+" este tempo foi decorrido\n"
+" --log-level[=LEVEL] Aumenta ou define o grau de detalhamento\n"
+" -v Aumenta o nÃvel de detalhamento\n"
+" --log-target={auto,syslog,stderr} Especifica o destino do log\n"
+" --log-meta[=BOOL] Inclui a localização do código na mensagem de log\n"
+" --log-time[=BOOL] Inclui carimbos de hora nas mensagens de log\n"
+" --log-backtrace=FRAMES Inclui um backtrace na mensagem de log\n"
+" -p, --dl-search-path=PATH Define o caminho de pesquisa para objetos (plugins)\n"
+" dinamicamente compartilhados\n"
+" --resample-method=METHOD Usa o método de reamostragem especificado\n"
" (Veja --dump-resample-methods para\n"
" valores possÃveis)\n"
-" --use-pid-file[=BOOL] Cria um arquivo PID file\n"
-" --no-cpu-limit[=BOOL] Não instala um limitador de carga de "
-"CPU load em\n"
+" --use-pid-file[=BOOL] Cria um arquivo PID\n"
+" --no-cpu-limit[=BOOL] Não instala um limitador de carga de CPU em\n"
" plataformas que o suportem.\n"
-" --disable-shm[=BOOL] Desabilita o suporte a memória "
-"compartilhada.\n"
+" --disable-shm[=BOOL] Desabilita o suporte à memória compartilhada.\n"
"\n"
-"STARTUP SCRIPT:\n"
-" -L, --load=\"MODULE ARGUMENTS\" Carrega um plugin especificado "
-"com\n"
+"SCRIPT DE INÃCIO:\n"
+" -L, --load=\"ARGUMENTOS DO MÃDULO\" Carrega um plugin especificado com\n"
" o argumento especificado\n"
-" -F, --file=FILENAME Executa o script especificado\n"
-" -C Abre uma linha de comando no TTY em "
-"execução\n"
+" -F, --file=NOME_DO_ARQUIVO Executa o script especificado\n"
+" -C Abre uma linha de comando no TTY em execução\n"
" depois da partida\n"
"\n"
-" -n Não carrega o arquivo de script "
-"padrão\n"
+" -n Não carrega o arquivo de script padrão\n"
#: ../src/daemon/cmdline.c:247
msgid "--daemonize expects boolean argument"
@@ -648,12 +486,8 @@ msgid "--fail expects boolean argument"
msgstr "--fail espera argumento booleano"
#: ../src/daemon/cmdline.c:264
-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 um argumento em nÃvel de log (seja numérico na faixa de "
-"0..4 seja algum entre debug, info, notice, warn, error)."
+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 um argumento em nÃvel de log (seja numérico na faixa de 0..4 seja algum entre debug, info, notice, warn, error)."
#: ../src/daemon/cmdline.c:276
msgid "--high-priority expects boolean argument"
@@ -668,9 +502,8 @@ msgid "--disallow-module-loading expects boolean argument"
msgstr "--disallow-module-loading espera um argumento booleano"
#: ../src/daemon/cmdline.c:297
-#, fuzzy
msgid "--disallow-exit expects boolean argument"
-msgstr "--disallow-exit argumento booleano"
+msgstr "--disallow-exit espera um argumento booleano"
#: ../src/daemon/cmdline.c:304
msgid "--use-pid-file expects boolean argument"
@@ -681,14 +514,12 @@ msgid "Invalid log target: use either 'syslog', 'stderr' or 'auto'."
msgstr "Log target inválido: use 'syslog', 'stderr' ou 'auto'."
#: ../src/daemon/cmdline.c:328
-#, fuzzy
msgid "--log-time expects boolean argument"
-msgstr "--realtime espera um argumento booleano"
+msgstr "--log-time espera um argumento booleano"
#: ../src/daemon/cmdline.c:335
-#, fuzzy
msgid "--log-meta expects boolean argument"
-msgstr "--disallow-exit argumento booleano"
+msgstr "--log-meta espera um argumento booleano"
#: ../src/daemon/cmdline.c:354
#, c-format
@@ -745,7 +576,7 @@ msgstr "Carrega uma vez: %s\n"
#: ../src/daemon/dumpmodules.c:75
#, c-format
msgid "DEPRECATION WARNING: %s\n"
-msgstr ""
+msgstr "AVISO DE OBSOLESCÃNCIA: %s\n"
#: ../src/daemon/dumpmodules.c:79
#, c-format
@@ -793,9 +624,9 @@ msgid "[%s:%u] Invalid sample channels '%s'."
msgstr "[%s:%u] Canais de amostragem inválidos'%s'."
#: ../src/daemon/daemon-conf.c:354
-#, fuzzy, c-format
+#, c-format
msgid "[%s:%u] Invalid channel map '%s'."
-msgstr "[%s:%u] Canais de amostragem inválidos'%s'."
+msgstr "[%s:%u] Mapa de canais \"%s\" inválido."
#: ../src/daemon/daemon-conf.c:372
#, c-format
@@ -818,54 +649,28 @@ msgid "Failed to open configuration file: %s"
msgstr "Falha em abrir o arquivo de configuração: %s"
#: ../src/daemon/daemon-conf.c:540
-msgid ""
-"The specified default channel map has a different number of channels than "
-"the specified default number of channels."
-msgstr ""
+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:616
#, c-format
msgid "### Read from configuration file: %s ###\n"
msgstr "### Lido do arquivo de configuração: %s ###\n"
-#: ../src/daemon/caps.c:63
-#, fuzzy
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Descartando os privilégios de root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "As capacidades foram limitadas com sucesso para CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
-msgstr ""
+msgstr "Sistema de som PulseAudio"
#: ../src/daemon/pulseaudio.desktop.in.h:2
msgid "Start the PulseAudio Sound System"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-#, fuzzy
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Falha em cancelar o daemon do PulseAudio."
+msgstr "Iniciar o sistema de som PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-#, fuzzy
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "Estamos no grupo '%s', permitindo escalonamento de alta prioridade."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-
-#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
+#: ../src/pulse/channelmap.c:105
+#: ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1069,35 +874,38 @@ msgstr "Posterior Superior Esquerdo"
msgid "Top Rear Right"
msgstr "Posterior Superior Direito"
-#: ../src/pulse/channelmap.c:478 ../src/pulse/sample.c:167
-#: ../src/pulse/volume.c:239 ../src/pulse/volume.c:265
-#: ../src/pulse/volume.c:285 ../src/pulse/volume.c:315
+#: ../src/pulse/channelmap.c:478
+#: ../src/pulse/sample.c:167
+#: ../src/pulse/volume.c:239
+#: ../src/pulse/volume.c:265
+#: ../src/pulse/volume.c:285
+#: ../src/pulse/volume.c:315
msgid "(invalid)"
msgstr "(Inválido)"
#: ../src/pulse/channelmap.c:751
msgid "Stereo"
-msgstr ""
+msgstr "Stereo"
#: ../src/pulse/channelmap.c:756
msgid "Surround 4.0"
-msgstr ""
+msgstr "Surround 4.0"
#: ../src/pulse/channelmap.c:762
msgid "Surround 4.1"
-msgstr ""
+msgstr "Surround 4.1"
#: ../src/pulse/channelmap.c:768
msgid "Surround 5.0"
-msgstr ""
+msgstr "Surround 5.0"
#: ../src/pulse/channelmap.c:774
msgid "Surround 5.1"
-msgstr ""
+msgstr "Surround 5.1"
#: ../src/pulse/channelmap.c:781
msgid "Surround 7.1"
-msgstr ""
+msgstr "Surround 7.1"
#: ../src/pulse/error.c:43
msgid "OK"
@@ -1189,42 +997,43 @@ msgstr "Não existe tal extensão"
#: ../src/pulse/error.c:65
msgid "Obsolete functionality"
-msgstr ""
+msgstr "Funcionalidade obsoleta"
#: ../src/pulse/error.c:66
msgid "Missing implementation"
-msgstr ""
+msgstr "Implementação faltando"
#: ../src/pulse/error.c:67
msgid "Client forked"
-msgstr ""
+msgstr "Cliente bifurcado"
#: ../src/pulse/sample.c:169
#, c-format
msgid "%s %uch %uHz"
-msgstr ""
+msgstr "%s %uch %uHz"
#: ../src/pulse/sample.c:181
#, c-format
msgid "%0.1f GiB"
-msgstr ""
+msgstr "%0.1f GiB"
#: ../src/pulse/sample.c:183
#, c-format
msgid "%0.1f MiB"
-msgstr ""
+msgstr "%0.1f MiB"
#: ../src/pulse/sample.c:185
#, c-format
msgid "%0.1f KiB"
-msgstr ""
+msgstr "%0.1f KiB"
#: ../src/pulse/sample.c:187
#, c-format
msgid "%u B"
-msgstr ""
+msgstr "%u B"
-#: ../src/pulse/client-conf-x11.c:55 ../src/utils/pax11publish.c:100
+#: ../src/pulse/client-conf-x11.c:55
+#: ../src/utils/pax11publish.c:100
msgid "XOpenDisplay() failed"
msgstr "XOpenDisplay() falhou"
@@ -1237,187 +1046,187 @@ msgstr "Falhou ao analisar os dados do cookie"
msgid "Failed to open configuration file '%s': %s"
msgstr "Falha em abrir o arquivo de configuração '%s': %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "Nenhum cookie foi carregado. Tentativa de conexão sem eles."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Foi recebida uma mensagem para uma extensão desconhecida '%s'"
-#: ../src/utils/pacat.c:107
+#: ../src/utils/pacat.c:108
#, c-format
-msgid "Failed to drain stream: %s\n"
-msgstr "Falha em drenar o fluxo: %s\n"
+msgid "Failed to drain stream: %s"
+msgstr "Falha ao drenar o fluxo: %s"
+
+#: ../src/utils/pacat.c:113
+msgid "Playback stream drained."
+msgstr "Fluxo de reprodução drenado."
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
-msgstr "Drenado o fluxo de playback.\n"
+#: ../src/utils/pacat.c:123
+msgid "Draining connection to server."
+msgstr "Drenando conexão para o servidor."
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
-msgstr "Drenando a conexão par ao servidor.\n"
+#: ../src/utils/pacat.c:136
+#, c-format
+msgid "pa_stream_drain(): %s"
+msgstr "pa_stream_drain(): %s"
-#: ../src/utils/pacat.c:135
+#: ../src/utils/pacat.c:159
#, c-format
-msgid "pa_stream_drain(): %s\n"
-msgstr "pa_stream_drain(): %s\n"
+msgid "pa_stream_write() failed: %s"
+msgstr "pa_stream_write() falhou: %s"
-#: ../src/utils/pacat.c:158
+#: ../src/utils/pacat.c:197
#, c-format
-msgid "pa_stream_write() failed: %s\n"
-msgstr "pa_stream_write() falhou: %s\n"
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_begin_write() falhou: %s"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
+#: ../src/utils/pacat.c:237
+#: ../src/utils/pacat.c:267
#, c-format
-msgid "pa_stream_peek() failed: %s\n"
-msgstr "pa_stream_peek() falhou: %s\n"
+msgid "pa_stream_peek() failed: %s"
+msgstr "pa_stream_peek() falhou: %s"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
-msgstr "O fluxo (stream) foi criado com sucesso.\n"
+#: ../src/utils/pacat.c:307
+msgid "Stream successfully created."
+msgstr "Fluxo criado com sucesso."
-#: ../src/utils/pacat.c:305
+#: ../src/utils/pacat.c:310
#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
-msgstr "pa_stream_get_buffer_attr() falhou: %s\n"
+msgid "pa_stream_get_buffer_attr() failed: %s"
+msgstr "pa_stream_get_buffer_attr() falhou: %s"
-#: ../src/utils/pacat.c:309
+#: ../src/utils/pacat.c:314
#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-msgstr "Metrica do buffer: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
+msgstr "Métricas do buffer: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
-#: ../src/utils/pacat.c:312
+#: ../src/utils/pacat.c:317
#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
-msgstr "Métrica do buffer: maxlength=%u, fragsize=%u\n"
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
+msgstr "Métricas do buffer: maxlength=%u, fragsize=%u"
-#: ../src/utils/pacat.c:316
+#: ../src/utils/pacat.c:321
#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
-msgstr "Usando a espeficifação de amostragem '%s', mapa do canal '%s'.\n"
+msgid "Using sample spec '%s', channel map '%s'."
+msgstr "Usando especificação de amostragem \"%s\", mapa de canais \"%s\"."
-#: ../src/utils/pacat.c:320
+#: ../src/utils/pacat.c:325
#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
-msgstr "Conectado ao dispositivo %s (%u, %ssuspended).\n"
+msgid "Connected to device %s (%u, %ssuspended)."
+msgstr "Conectado ao dispositivo %s (%u, %ssuspended)."
-#: ../src/utils/pacat.c:330
+#: ../src/utils/pacat.c:335
#, c-format
-msgid "Stream error: %s\n"
-msgstr "Erro de fluxo: %s\n"
+msgid "Stream error: %s"
+msgstr "Erro de fluxo: %s"
-#: ../src/utils/pacat.c:340
+#: ../src/utils/pacat.c:345
#, c-format
-msgid "Stream device suspended.%s \n"
-msgstr "Dispositivo de fluxo suspenso.%s \n"
+msgid "Stream device suspended.%s"
+msgstr "Dispositivo de fluxo suspenso.%s"
-#: ../src/utils/pacat.c:342
+#: ../src/utils/pacat.c:347
#, c-format
-msgid "Stream device resumed.%s \n"
-msgstr "Dispositivo de fluxo prosseguiu.%s \n"
+msgid "Stream device resumed.%s"
+msgstr "O dispositivo de fluxo continuou.%s"
-#: ../src/utils/pacat.c:350
+#: ../src/utils/pacat.c:355
#, c-format
-msgid "Stream underrun.%s \n"
-msgstr "Extravazamento do fluxo. %s\n"
+msgid "Stream underrun.%s"
+msgstr "Subestimação do fluxo.%s"
-#: ../src/utils/pacat.c:357
+#: ../src/utils/pacat.c:362
#, c-format
-msgid "Stream overrun.%s \n"
-msgstr "O fluxo extravazou.%s \n"
+msgid "Stream overrun.%s"
+msgstr "Superestimação do fluxo.%s"
-#: ../src/utils/pacat.c:364
+#: ../src/utils/pacat.c:369
#, c-format
-msgid "Stream started.%s \n"
-msgstr "O fluxo iniciou: %s\n"
+msgid "Stream started.%s"
+msgstr "Fluxo iniciado.%s"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
-msgstr "O fluxo foi movido para o dispositivo %s (%u, %ssuspended).%s \n"
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
+msgstr "Fluxo movido para o dispositivo %s (%u, %ssuspended).%s"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "não"
-#: ../src/utils/pacat.c:378
-#, fuzzy, c-format
-msgid "Stream buffer attributes changed.%s \n"
-msgstr "Extravazamento do fluxo. %s\n"
-
-#: ../src/utils/pacat.c:411
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Connection established.%s \n"
-msgstr "Conexão estabelecida.%s \n"
+msgid "Stream buffer attributes changed.%s"
+msgstr "Atributos do buffer de fluxo alterados.%s"
-#: ../src/utils/pacat.c:414
+#: ../src/utils/pacat.c:416
#, c-format
-msgid "pa_stream_new() failed: %s\n"
-msgstr "pa_stream_new() falhou: %s\n"
+msgid "Connection established.%s"
+msgstr "Conexão estabelecida.%s"
-#: ../src/utils/pacat.c:442
+#: ../src/utils/pacat.c:419
#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
-msgstr "pa_stream_connect_playback() falhou: %s\n"
+msgid "pa_stream_new() failed: %s"
+msgstr "pa_stream_new() falhou: %s"
-#: ../src/utils/pacat.c:448
+#: ../src/utils/pacat.c:447
#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
-msgstr "pa_stream_connect_record() falhou: %s\n"
+msgid "pa_stream_connect_playback() failed: %s"
+msgstr "pa_stream_connect_playback() falhou: %s"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
+#: ../src/utils/pacat.c:453
#, c-format
-msgid "Connection failure: %s\n"
-msgstr "Falha na conexão: %s\n"
+msgid "pa_stream_connect_record() failed: %s"
+msgstr "pa_stream_connect_record() falhou: %s"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Atingiu EOF.\n"
+#: ../src/utils/pacat.c:467
+#, c-format
+msgid "Connection failure: %s"
+msgstr "Falha na conexão: %s"
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() falhou: %s\n"
+msgid "Got EOF."
+msgstr "Atingiu EOF."
-#: ../src/utils/pacat.c:532
+#: ../src/utils/pacat.c:537
#, c-format
-msgid "write() failed: %s\n"
-msgstr "write() falhou: %s\n"
+msgid "write() failed: %s"
+msgstr "write() falhou: %s"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
-msgstr "Sinal recebido, saindo (exiting).\n"
+#: ../src/utils/pacat.c:558
+msgid "Got signal, exiting."
+msgstr "Sinal recebido, saindo."
-#: ../src/utils/pacat.c:567
+#: ../src/utils/pacat.c:572
#, c-format
-msgid "Failed to get latency: %s\n"
-msgstr "Falhou em obter a latência: %s\n"
+msgid "Failed to get latency: %s"
+msgstr "Falha ao obter a latência: %s"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Tempo: %0.3f s; Latência: %0.0f us. \r"
-#: ../src/utils/pacat.c:592
+#: ../src/utils/pacat.c:595
#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
-msgstr "Falha em pa_stream_update_timing_info(): %s\n"
+msgid "pa_stream_update_timing_info() failed: %s"
+msgstr "pa_stream_update_timing_info() falhou: %s"
#: ../src/utils/pacat.c:605
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options]\n"
"\n"
@@ -1429,48 +1238,29 @@ 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 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 "
-"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 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 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"
+" --fix-channels Take the number of channels and the channel map\n"
+" from the sink 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"
-" --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"
+" --property=PROPERTY=VALUE Set the specified property to the specified value.\n"
" --raw Record/play raw PCM data.\n"
" --file-format=FFORMAT Record/play formatted PCM data.\n"
" --list-file-formats List available file formats.\n"
@@ -1481,44 +1271,36 @@ msgstr ""
" --version Mostra a versão\n"
"\n"
" -r, --record Cria uma conexão para gravação\n"
-" -p, --playback Cria uma conexão para playback\n"
+" -p, --playback Cria uma conexão para reprodução\n"
"\n"
-" -v, --verbose Habilita operações no modo verboso\n"
+" -v, --verbose Habilita operações no modo detalhado\n"
"\n"
-" -s, --server=SERVER Nome do servidor a ser conectado\n"
-" -d, --device=DEVICE O nome do destino/fonte a conectar\n"
-" -n, --client-name=NAME Como chamar o cliente no servidor\n"
-" --stream-name=NAME Como chamar este fluxo no "
-"servidorn --volume=VOLUME Especifica a faixa (linear) "
-"inicial de volume no intervalo 0...65536\n"
-" --rate=SAMPLERATE Taxa de amostragem em Hz (o padrão é "
-"44100)\n"
-" --format=SAMPLEFORMAT Tipo de amostragem, um de s16le, "
-"s16be, u8, float32le,\n"
-" float32be, ulaw, alaw, s32le, s32be "
-"(o padrão é s16ne)\n"
-" --channels=CHANNELS O número de canais, 1 para mono, 2 "
-"para estéreo\n"
+" -s, --server=SERVIDOR Nome do servidor a conectar-se\n"
+" -d, --device=DISPOSITIVO O nome do destino/fonte a conectar-se\n"
+" -n, --client-name=NOME Como chamar este cliente no servidor\n"
+" --stream-name=NOME Como chamar este fluxo no servidor\n"
+" --volume=VOLUME Especifica a faixa (linear) inicial de volume no intervalo 0...65536\n"
+" --rate=TAXA_DE_AMOSTRAGEM Taxa de amostragem em Hz (o padrão é 44100)\n"
+" --format=FORMATO_DE_AMOSTRAGEM Tipo de amostragem, um de s16le, s16be, u8, float32le,\n"
+" float32be, ulaw, alaw, s32le, s32be, s24le, s24be,\n"
+" s24-32le, s24-32be (o padrão é s16ne)\n"
+" --channels=CANAIS O número de canais, 1 para mono, 2 para estéreo\n"
" (o padrão é 2)\n"
-" --channel-map=CHANNELMAP Mapeamento de canais a ser usando em "
-"lugar do padrão\n"
-" --fix-format Obtém o formato da amostragem do "
-"destino onde o fluxo\n"
-" está sendo conectado.\n"
-" --fix-rate Obtém o taxa de amostragem do "
-"destino onde o fluxo está\n"
+" --channel-map=MAPA_DE_CANAIS Mapeamento de canais a ser usado no lugar do padrão\n"
+" --fix-format Obtém o formato da amostragem do destino onde o fluxo\n"
+" está sendo conectado.\n"
+" --fix-rate Obtém a taxa de amostragem do destino onde o fluxo está\n"
" sendo conectado.\n"
-" --fix-channels Obtém o número de canais e o mapa de "
-"canais\n"
-" do destino onde o fluxo está sendo "
-"conectado.\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"
+" --fix-channels Obtém o número de canais e o mapa de canais\n"
+" do destino onde o fluxo está sendo conectado.\n"
+" --no-remix Não realizar upmix nem downmix dos canais.\n"
+" --no-remap Mapear os canais por Ãndice em vez de nome.\n"
+" --latency=BYTES Requisitar a latência especificada em bytes.\n"
+" --process-time=BYTES Requisitar o tempo de processo especificado por requisições em bytes.\n"
+" --property=PROPRIEDADE=VALOR Define a propriedade especificada para o valor especificado.\n"
+" --raw Grava/reproduz dados PCM não tratados.\n"
+" --file-format=FORMATO_DO_ARQ. Grava/reproduz dados PCM formatados.\n"
+" --list-file-formats Lista os formatos de arquivo disponÃveis.\n"
#: ../src/utils/pacat.c:727
#, c-format
@@ -1531,97 +1313,91 @@ msgstr ""
"Compilado com libpulse %s\n"
"Linkado com libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
-#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
-msgstr "Mapa de canal inválido '%s'\n"
+#: ../src/utils/pacat.c:760
+#, c-format
+msgid "Invalid client name '%s'"
+msgstr "Nome do cliente \"%s\" inválido"
#: ../src/utils/pacat.c:776
-#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr "Método de reamostragem inválido '%s'."
+#, c-format
+msgid "Invalid stream name '%s'"
+msgstr "Nome do fluxo \"%s\" inválido"
#: ../src/utils/pacat.c:813
#, c-format
-msgid "Invalid channel map '%s'\n"
-msgstr "Mapa de canal inválido '%s'\n"
+msgid "Invalid channel map '%s'"
+msgstr "Mapa de canais \"%s\" inválido"
#: ../src/utils/pacat.c:842
#, c-format
-msgid "Invalid latency specification '%s'\n"
-msgstr "Especificação de latência inválida '%s'\n"
+msgid "Invalid latency specification '%s'"
+msgstr "Especificação de latência inválida \"%s\""
#: ../src/utils/pacat.c:849
#, c-format
-msgid "Invalid process time specification '%s'\n"
-msgstr "Especificação do tempo do processo inválida '%s'\n"
+msgid "Invalid process time specification '%s'"
+msgstr "Especificação do tempo de processo \"%s\" inválida"
#: ../src/utils/pacat.c:861
-#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
-msgstr "Método de reamostragem inválido '%s'."
+#, c-format
+msgid "Invalid property '%s'"
+msgstr "Propriedade \"%s\" inválida"
#: ../src/utils/pacat.c:878
#, c-format
msgid "Unknown file format %s."
-msgstr ""
+msgstr "Formato de arquivo %s desconhecido."
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
-msgstr "Especificação de amostragem inválida\n"
+msgid "Invalid sample specification"
+msgstr "Especificação de amostragem inválida"
#: ../src/utils/pacat.c:907
#, c-format
-msgid "open(): %s\n"
-msgstr "open(): %s\n"
+msgid "open(): %s"
+msgstr "open(): %s"
#: ../src/utils/pacat.c:912
#, c-format
-msgid "dup2(): %s\n"
-msgstr "dup2(): %s\n"
+msgid "dup2(): %s"
+msgstr "dup2(): %s"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
-msgstr "Argumentos em excesso.\n"
+msgid "Too many arguments."
+msgstr "Argumentos em excesso."
#: ../src/utils/pacat.c:930
-#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
-msgstr "Falha em obter informações sobre a amostragem: %s\n"
+msgid "Failed to generate sample specification for file."
+msgstr "Falha ao gerar a especificação de amostragem para o arquivo."
#: ../src/utils/pacat.c:950
-#, fuzzy
-msgid "Failed to open audio file.\n"
-msgstr "Falha em abrir o arquivo de som.\n"
+msgid "Failed to open audio file."
+msgstr "Falha ao abrir o arquivo de áudio."
#: ../src/utils/pacat.c:956
-msgid ""
-"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+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:959 ../src/utils/pactl.c:944
-#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
-msgstr "Falha em obter informações sobre a amostragem: %s\n"
+#: ../src/utils/pacat.c:959
+msgid "Failed to determine sample specification from file."
+msgstr "Falha ao determinar a especificação de amostragem a partir do arquivo."
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Aviso: falha ao determinar o mapa de canais a partir do arquivo."
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
-msgstr "O mapeamento do canal não casa com a especificação da amostragem\n"
+msgid "Channel map doesn't match sample specification"
+msgstr "O mapa de canais não combina com a especificação da amostragem"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+msgid "Warning: failed to write channel map to file."
+msgstr "Aviso: falha ao gravar o mapa de canais no arquivo."
#: ../src/utils/pacat.c:1005
-#, fuzzy, c-format
-msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
-msgstr "Abrindo um %s fluxo com a especificação de amostragem '%s'.\n"
+#, c-format
+msgid "Opening a %s stream with sample specification '%s' and channel map '%s'."
+msgstr "Abrindo um fluxo %s com a especificação de amostragem \"%s\" e mapeamento de canais \"%s\"."
#: ../src/utils/pacat.c:1006
msgid "recording"
@@ -1631,36 +1407,31 @@ msgstr "gravando"
msgid "playback"
msgstr "playback"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
-msgstr "pa_mainloop_new() falhou.\n"
+#: ../src/utils/pacat.c:1032
+msgid "pa_mainloop_new() failed."
+msgstr "pa_mainloop_new() falhou."
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
-msgstr "io_new() falhou.\n"
+msgid "io_new() failed."
+msgstr "io_new() falhou."
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
-msgstr "pa_context_new() falhou.\n"
+#: ../src/utils/pacat.c:1058
+msgid "pa_context_new() failed."
+msgstr "pa_context_new() falhou."
#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_new() falhou: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() falhou.\n"
+#: ../src/utils/pacat.c:1072
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_rttime_new() falhou."
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
-msgstr "pa_mainloop_run() falhou.\n"
+#: ../src/utils/pacat.c:1079
+msgid "pa_mainloop_run() failed."
+msgstr "pa_mainloop_run() falhou."
#: ../src/utils/pasuspender.c:81
#, c-format
@@ -1685,11 +1456,16 @@ msgstr "Falha ao prosseguir: %s\n"
#: ../src/utils/pasuspender.c:147
#, c-format
msgid "WARNING: Sound server is not local, not suspending.\n"
-msgstr ""
-"AVISO: O servidor de som não é local, Sound server is not local, não está em "
-"suspenso.\n"
+msgstr "AVISO: O servidor de som não é local, Sound server is not local, não está em suspenso.\n"
+
+#: ../src/utils/pasuspender.c:159
+#: ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Falha na conexão: %s\n"
-#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
+#: ../src/utils/pasuspender.c:176
+#: ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
msgstr "Recebido o SIGINT, saindo.\n"
@@ -1706,8 +1482,7 @@ msgid ""
"\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 ""
"%s [options] ... \n"
@@ -1728,6 +1503,24 @@ msgstr ""
"Compilado com libpulse %s\n"
"Linkado com libpulse %s\n"
+#: ../src/utils/pasuspender.c:277
+#: ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() falhou.\n"
+
+#: ../src/utils/pasuspender.c:290
+#: ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() falhou.\n"
+
+#: ../src/utils/pasuspender.c:298
+#: ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() falhou.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1754,7 +1547,7 @@ msgid "Failed to get server information: %s\n"
msgstr "Falha em obter a informação do servidor: %s\n"
#: ../src/utils/pactl.c:157
-#, fuzzy, c-format
+#, c-format
msgid ""
"User name: %s\n"
"Host Name: %s\n"
@@ -1766,11 +1559,12 @@ msgid ""
"Default Source: %s\n"
"Cookie: %08x\n"
msgstr ""
-"Nome do Usuário: %s\n"
-"Nome do Host: %s\n"
-"Nome do Servidor: %s\n"
-"Versão do Servidor: %s\n"
+"Nome do usuário: %s\n"
+"Nome da máquina: %s\n"
+"Nome do servidor: %s\n"
+"Versão do servidor: %s\n"
"Especificação padrão de amostragem: %s\n"
+"Mapa de canais padrão: %s\n"
"Destino padrão: %s\n"
"Fonte padrão %s\n"
"Cookie: %08x\n"
@@ -1781,7 +1575,7 @@ msgid "Failed to get sink information: %s\n"
msgstr "Falha em obter a informação do destino: %s\n"
#: ../src/utils/pactl.c:214
-#, fuzzy, c-format
+#, c-format
msgid ""
"Sink #%u\n"
"\tState: %s\n"
@@ -1801,28 +1595,35 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Destino #%u ***\n"
-"Nome: %s\n"
-"Driver: %s\n"
-"Especificação de amostragem: %s\n"
-"Mapa de canais: %s\n"
-"Propretário do módulo: %u\n"
-"Volume: %s\n"
-"Fonte do monitor: %s\n"
-"Latência: %0.0f us, configurado %0.0f us\n"
-"Flags: %s%s%s%s%s%s\n"
-"Propriedades:\n"
-"%s"
-
-#: ../src/utils/pactl.c:261 ../src/utils/pactl.c:353
+"Destino #%u\n"
+"\tEstado: %s\n"
+"\tNome: %s\n"
+"\tDescrição: %s\n"
+"\tDriver: %s\n"
+"\tEspecificação da amostragem: %s\n"
+"\tMapa dos canais: %s\n"
+"\tMódulo proprietário: %u\n"
+"\tMudo: %s\n"
+"\tVolume: %s%s%s\n"
+"\t balanço %0.2f\n"
+"\tVolume base: %s%s%s\n"
+"\tFonte de monitoração: %s\n"
+"\tLatência: %0.0f usec, %0.0f usec configurado\n"
+"\tSinalizadores: %s%s%s%s%s%s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
+
+#: ../src/utils/pactl.c:261
+#: ../src/utils/pactl.c:353
#, c-format
msgid "\tPorts:\n"
-msgstr ""
+msgstr "\tPortas:\n"
-#: ../src/utils/pactl.c:267 ../src/utils/pactl.c:359
-#, fuzzy, c-format
+#: ../src/utils/pactl.c:267
+#: ../src/utils/pactl.c:359
+#, c-format
msgid "\tActive Port: %s\n"
-msgstr "O pipe falhou: %s"
+msgstr "\tPorta ativa: %s\n"
#: ../src/utils/pactl.c:290
#, c-format
@@ -1830,7 +1631,7 @@ msgid "Failed to get source information: %s\n"
msgstr "Falha em obter a informação da fonte: %s\n"
#: ../src/utils/pactl.c:306
-#, fuzzy, c-format
+#, c-format
msgid ""
"Source #%u\n"
"\tState: %s\n"
@@ -1850,23 +1651,36 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Fonte #%u ***\n"
-"Nome: %s\n"
-"Driver: %s\n"
-"Especificação de amostragem: %s\n"
-"Mapa do canal: %s\n"
-"Proprietário do módulo: %u\n"
-"Volume: %s\n"
-"Monitor do destino: %s\n"
-"Latência: %0.0f us, configurado %0.0f us:\n"
-"Flags: %s%s%s%s%s%s\n"
-"Propriedades:\n"
-"%s"
-
-#: ../src/utils/pactl.c:338 ../src/utils/pactl.c:394 ../src/utils/pactl.c:429
-#: ../src/utils/pactl.c:466 ../src/utils/pactl.c:525 ../src/utils/pactl.c:526
-#: ../src/utils/pactl.c:536 ../src/utils/pactl.c:580 ../src/utils/pactl.c:581
-#: ../src/utils/pactl.c:587 ../src/utils/pactl.c:630 ../src/utils/pactl.c:631
+"Fonte #%u\n"
+"\tEstado: %s\n"
+"\tNome: %s\n"
+"\tDescrição: %s\n"
+"\tDriver: %s\n"
+"\tEspecificação da amostragem: %s\n"
+"\tMapa dos canais: %s\n"
+"\tMódulo proprietário: %u\n"
+"\tMudo: %s\n"
+"\tVolume: %s%s%s\n"
+"\t balanço %0.2f\n"
+"\tVolume base: %s%s%s\n"
+"\tMonitor do destino: %s\n"
+"\tLatência: %0.0f usec, %0.0f usec configurado\n"
+"\tSinalizadores: %s%s%s%s%s%s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
+
+#: ../src/utils/pactl.c:338
+#: ../src/utils/pactl.c:394
+#: ../src/utils/pactl.c:429
+#: ../src/utils/pactl.c:466
+#: ../src/utils/pactl.c:525
+#: ../src/utils/pactl.c:526
+#: ../src/utils/pactl.c:536
+#: ../src/utils/pactl.c:580
+#: ../src/utils/pactl.c:581
+#: ../src/utils/pactl.c:587
+#: ../src/utils/pactl.c:630
+#: ../src/utils/pactl.c:631
#: ../src/utils/pactl.c:638
msgid "n/a"
msgstr "n/a"
@@ -1877,7 +1691,7 @@ msgid "Failed to get module information: %s\n"
msgstr "Falha em obter a informação do módulo: %s\n"
#: ../src/utils/pactl.c:386
-#, fuzzy, c-format
+#, c-format
msgid ""
"Module #%u\n"
"\tName: %s\n"
@@ -1886,11 +1700,12 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Módulo #%u ***\n"
-"Nome: %s\n"
-"Argumento: %s\n"
-"Contador de uso: %s\n"
-"Auto descarregar: %s\n"
+"Módulo #%u\n"
+"\tNome: %s\n"
+"\tArgumento: %s\n"
+"\tContador de uso: %s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
#: ../src/utils/pactl.c:405
#, c-format
@@ -1898,7 +1713,7 @@ msgid "Failed to get client information: %s\n"
msgstr "Falhou ao obter a informação do cliente: %s\n"
#: ../src/utils/pactl.c:423
-#, fuzzy, c-format
+#, c-format
msgid ""
"Client #%u\n"
"\tDriver: %s\n"
@@ -1906,19 +1721,19 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Cliente #%u ***\n"
-"Driver: %s\n"
-"Poprietário do módulo: %s\n"
-"Propriedades:\n"
-"%s"
+"Cliente #%u\n"
+"\tDriver: %s\n"
+"\tMódulo proprietário: %s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
#: ../src/utils/pactl.c:440
-#, fuzzy, c-format
+#, c-format
msgid "Failed to get card information: %s\n"
-msgstr "Falha em obter a informação do autoload: %s\n"
+msgstr "Falha ao obter as informações da placa: %s\n"
#: ../src/utils/pactl.c:458
-#, fuzzy, c-format
+#, c-format
msgid ""
"Card #%u\n"
"\tName: %s\n"
@@ -1927,21 +1742,22 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Cliente #%u ***\n"
-"Driver: %s\n"
-"Poprietário do módulo: %s\n"
-"Propriedades:\n"
-"%s"
+"Placa #%u\n"
+"\tNome: %s\n"
+"\tDriver: %s\n"
+"\tMódulo proprietário: %s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
#: ../src/utils/pactl.c:472
#, c-format
msgid "\tProfiles:\n"
-msgstr ""
+msgstr "\tPerfis:\n"
#: ../src/utils/pactl.c:478
-#, fuzzy, c-format
+#, c-format
msgid "\tActive Profile: %s\n"
-msgstr "O pipe falhou: %s"
+msgstr "\tPerfil ativo: %s\n"
#: ../src/utils/pactl.c:489
#, c-format
@@ -1949,7 +1765,7 @@ msgid "Failed to get sink input information: %s\n"
msgstr "Falha na obtenção da informação de entrada do destino: %s\n"
#: ../src/utils/pactl.c:508
-#, fuzzy, c-format
+#, c-format
msgid ""
"Sink Input #%u\n"
"\tDriver: %s\n"
@@ -1968,19 +1784,22 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Entrada do destino #%u ***\n"
-"Driver: %s\n"
-"Proprietário do módulo: %s\n"
-"Cliente: %s\n"
-"Destino: %u\n"
-"Especificação da amostragem: %s\n"
-"Mapa de canais: %s\n"
-"Volume: %s\n"
-"Latência do buffer: %0.0f us\n"
-"Latência do destino %0.0f usec\n"
-"Método de reamostragem (resample): %s\n"
-"Propriedades:\n"
-"%s"
+"Entrada do destino #%u\n"
+"\tDriver: %s\n"
+"\tMódulo proprietário: %s\n"
+"\tCliente: %s\n"
+"\tDestino: %u\n"
+"\tEspecificação da amostragem: %s\n"
+"\tMapa dos canais: %s\n"
+"\tMudo: %s\n"
+"\tVolume: %s\n"
+"\t %s\n"
+"\t balanço %0.2f\n"
+"\tLatência do buffer: %0.0f usec\n"
+"\tLatência do destino: %0.0f usec\n"
+"\tMétodo de reamostragem: %s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
#: ../src/utils/pactl.c:547
#, c-format
@@ -1988,7 +1807,7 @@ msgid "Failed to get source output information: %s\n"
msgstr "Falha em obter informações sobre a saÃda da fonte: %s\n"
#: ../src/utils/pactl.c:567
-#, fuzzy, c-format
+#, c-format
msgid ""
"Source Output #%u\n"
"\tDriver: %s\n"
@@ -2003,18 +1822,18 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** SaÃda da Fonte #%u ***\n"
-"Driver: %s\n"
-"Proprietário do Módulo: %s\n"
-"Cliente: %s\n"
-"Fonte: %u\n"
-"Especificação de Amostragem: %s\n"
-"Mapa do Canal: %s\n"
-"Latência do Buffer: %0.0f usec\n"
-"Latência da Fonte: %0.0f usec\n"
-"Método de Reamostragem (resample): %s\n"
-"Propriedades:\n"
-"%s"
+"SaÃda da fonte #%u\n"
+"\tDriver: %s\n"
+"\tMódulo proprietário: %s\n"
+"\tCliente: %s\n"
+"\tFonte: %u\n"
+"\tEspecificação da amostragem: %s\n"
+"\tMapa dos canais: %s\n"
+"\tLatência do buffer: %0.0f usec\n"
+"\tLatência da fonte: %0.0f usec\n"
+"\tMétodo de reamostragem: %s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
#: ../src/utils/pactl.c:598
#, c-format
@@ -2022,7 +1841,7 @@ msgid "Failed to get sample information: %s\n"
msgstr "Falha em obter informações sobre a amostragem: %s\n"
#: ../src/utils/pactl.c:616
-#, fuzzy, c-format
+#, c-format
msgid ""
"Sample #%u\n"
"\tName: %s\n"
@@ -2038,19 +1857,22 @@ msgid ""
"\tProperties:\n"
"\t\t%s\n"
msgstr ""
-"*** Amostragem #%u ***\n"
-"Nome: %s\n"
-"Volume: %s\n"
-"Especificação da Amostragem: %s\n"
-"Mapa de Canais: %s\n"
-"Duração: %0.1fs\n"
-"Tamanho: %s\n"
-"Lazy: %s\n"
-"Nome do Arquivo: %s\n"
-"Propriedades:\n"
-"%s"
-
-#: ../src/utils/pactl.c:646 ../src/utils/pactl.c:656
+"Amostra #%u\n"
+"\tNome: %s\n"
+"\tEspecificação da amostragem: %s\n"
+"\tMapa dos canais: %s\n"
+"\tVolume: %s\n"
+"\t %s\n"
+"\t balanço %0.2f\n"
+"\tDuração: %0.1fs\n"
+"\tTamanho: %s\n"
+"\tLazy: %s\n"
+"\tNome do arquivo: %s\n"
+"\tPropriedades:\n"
+"\t\t%s\n"
+
+#: ../src/utils/pactl.c:646
+#: ../src/utils/pactl.c:656
#, c-format
msgid "Failure: %s\n"
msgstr "Falha: %s\n"
@@ -2065,7 +1887,7 @@ msgid "Premature end of file\n"
msgstr "Fim prematuro do arquivo\n"
#: ../src/utils/pactl.c:826
-#, fuzzy, c-format
+#, c-format
msgid ""
"%s [options] stat\n"
"%s [options] list\n"
@@ -2086,30 +1908,30 @@ msgid ""
" -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 [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 ID SINK\n"
-"%s [options] move-source-output ID SOURCE\n"
-"%s [options] load-module NAME [ARGS ...]\n"
-"%s [options] unload-module ID\n"
-"%s [options] suspend-sink [SINK] 1|0\n"
-"%s [options] suspend-source [SOURCE] 1|0\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 [opções] stat\n"
+"%s [opções] list\n"
+"%s [opções] exit\n"
+"%s [opções] upload-sample NOME_DO_ARQUIVO [NOME]\n"
+"%s [opções] play-sample NOME [DESTINO]\n"
+"%s [opções] remove-sample NOME\n"
+"%s [opções] move-sink-input ID DESTINO\n"
+"%s [opções] move-source-output ID FONTE\n"
+"%s [opções] load-module NOME [ARGS ...]\n"
+"%s [opções] unload-module ID\n"
+"%s [opções] suspend-sink [DESTINO] 1|0\n"
+"%s [opções] suspend-source [FONTE] 1|0\n"
+"%s [opções] set-card-profile [PLACA] [PERFIL] \n"
+"%s [opções] set-sink-port [DESTINO] [PORTA] \n"
+"%s [opções] set-source-port [FONTE] [PORTA] \n"
"\n"
" -h, --help Mostra essa ajuda\n"
" --version Mostra a versão\n"
"\n"
" -s, --server=SERVER O nome do servidor a ser conectado\n"
-" -n, --client-name=NAME Como chamar este cliente no "
-"servidor \n"
+" -n, --client-name=NAME Como chamar este cliente no servidor \n"
#: ../src/utils/pactl.c:880
#, c-format
@@ -2122,6 +1944,11 @@ msgstr ""
"Compilado com libpulse %s\n"
"Linkado com libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Nome do cliente \"%s\" inválido\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Por favor, especifique o arquivo de amostra a ser carregado\n"
@@ -2130,10 +1957,13 @@ msgstr "Por favor, especifique o arquivo de amostra a ser carregado\n"
msgid "Failed to open sound file.\n"
msgstr "Falha em abrir o arquivo de som.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Falha ao determinar a especificação de amostragem a partir do arquivo.\n"
+
#: ../src/utils/pactl.c:951
-#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
-msgstr "Abrindo um %s fluxo com a especificação de amostragem '%s'.\n"
+msgstr "Aviso: falha ao determinar a especificação da amostragem a partir do arquivo.\n"
#: ../src/utils/pactl.c:961
msgid "You have to specify a sample name to play\n"
@@ -2145,8 +1975,7 @@ msgstr "Você deve especificar um nome da amostra para ser removida\n"
#: ../src/utils/pactl.c:982
msgid "You have to specify a sink input index and a sink\n"
-msgstr ""
-"Você tem que especificar a entrada para o destino (sink) e um destino(sink)\n"
+msgstr "Você tem que especificar a entrada para o destino e um destino\n"
#: ../src/utils/pactl.c:992
msgid "You have to specify a source output index and a source\n"
@@ -2161,50 +1990,29 @@ msgid "You have to specify a module index\n"
msgstr "Você deve especificar um Ãndice de um módulo\n"
#: ../src/utils/pactl.c:1037
-#, fuzzy
-msgid ""
-"You may not specify more than one sink. You have to specify a boolean "
-"value.\n"
-msgstr ""
-"Você não pode especificar mais de um destino. Pelo menos um valor booleano "
-"deve ser especificado.\n"
+msgid "You may not specify more than one sink. You have to specify a boolean value.\n"
+msgstr "Você não pode especificar mais de um destino. Você tem que especificar um valor booleano.\n"
#: ../src/utils/pactl.c:1050
-#, fuzzy
-msgid ""
-"You may not specify more than one source. You have to specify a boolean "
-"value.\n"
-msgstr ""
-"Você não pode especificar mais de uma fonte. Pelo menos um valor booleano "
-"deve ser especificado.\n"
+msgid "You may not specify more than one source. You have to specify a boolean value.\n"
+msgstr "Você não pode especificar mais de uma fonte. Você tem que especificar um valor booleano.\n"
#: ../src/utils/pactl.c:1062
-#, fuzzy
msgid "You have to specify a card name/index and a profile name\n"
-msgstr ""
-"Você tem que especificar a entrada para o destino (sink) e um destino(sink)\n"
+msgstr "Você tem que especificar um nome/Ãndice da placa e um nome de perfil\n"
#: ../src/utils/pactl.c:1073
-#, fuzzy
msgid "You have to specify a sink name/index and a port name\n"
-msgstr ""
-"Você tem que especificar a entrada para o destino (sink) e um destino(sink)\n"
+msgstr "Você tem que especificar um nome/Ãndice do destino e o nome da porta\n"
#: ../src/utils/pactl.c:1084
-#, fuzzy
msgid "You have to specify a source name/index and a port name\n"
-msgstr ""
-"Você tem que especificar a entrada para o destino (sink) e um destino(sink)\n"
+msgstr "Você tem que especificar um nome/Ãndice da fonte e o nome da porta\n"
#: ../src/utils/pactl.c:1099
msgid "No valid command specified.\n"
msgstr "Nenhum comando válido especificado.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_new() falhou: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2212,17 +2020,14 @@ 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 ""
"%s [-D display] [-S server] [-O sink] [-I source] [-c file] [-d|-e|-i|-r]\n"
"\n"
-" -d Mostra os dados atuais do PulseAudio associados ao display X11 "
-"(padrão)\n"
+" -d Mostra os dados atuais do PulseAudio associados ao display X11 (padrão)\n"
" -e Exporta os dados locais do PulseAudio para um display X11 \n"
-" -i Importa os dados do PulseAudio de um display X11 para as variáveis "
-"de ambiente locais e para o arquivo de cookie.\n"
+" -i Importa os dados do PulseAudio de um display X11 para as variáveis de ambiente locais e para o arquivo de cookie.\n"
" -r Remove os dados do PulseAudio do display X11\n"
#: ../src/utils/pax11publish.c:94
@@ -2287,7 +2092,7 @@ msgstr "Ainda não implementado.\n"
#: ../src/utils/pacmd.c:61
msgid "No PulseAudio daemon running, or not running as session daemon."
-msgstr ""
+msgstr "Nenhum daemon do PulseAudio em execução ou não está em execução como daemon de sessão."
#: ../src/utils/pacmd.c:66
#, c-format
@@ -2301,79 +2106,161 @@ msgstr "connect(): %s"
#: ../src/utils/pacmd.c:91
msgid "Failed to kill PulseAudio daemon."
-msgstr "Falha em cancelar o daemon do PulseAudio."
+msgstr "Falha ao matar o daemon do PulseAudio."
#: ../src/utils/pacmd.c:99
msgid "Daemon not responding."
-msgstr "Daemon não responde."
+msgstr "O daemon não responde."
#: ../src/utils/pacmd.c:146
#, c-format
msgid "select(): %s"
msgstr "select(): %s"
-#: ../src/utils/pacmd.c:156 ../src/utils/pacmd.c:173
+#: ../src/utils/pacmd.c:156
+#: ../src/utils/pacmd.c:173
#, c-format
msgid "read(): %s"
msgstr "read(): %s"
-#: ../src/utils/pacmd.c:189 ../src/utils/pacmd.c:203
+#: ../src/utils/pacmd.c:189
+#: ../src/utils/pacmd.c:203
#, c-format
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136
+#: ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Não foi possÃvel acessar a trava de autogeração."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449
+#: ../src/modules/alsa/alsa-sink.c:606
#, 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 ""
+"O ALSA nos acordou para gravar novos dados no dispositivo, mas não há nada a ser gravado!\n"
+"à 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() subseqüente retornou 0 ou outro valor < min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429
+#: ../src/modules/alsa/alsa-source.c:578
#, 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."
+"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 ""
+"O ALSA nos acordou para ler novos dados no dispositivo, mas não há nada a ser lido!\n"
+"à 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() subseqüente retornou 0 ou outro valor < min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
-msgstr ""
+msgstr "Desligado"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
-msgstr ""
+msgstr "Reprodução de alta fidelidade (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
-msgstr ""
+msgstr "Duplex telefônico (HSP/HFP)"
#: ../src/modules/reserve-wrap.c:151
msgid "PulseAudio Sound Server"
-msgstr ""
-
+msgstr "Servidor de som PulseAudio"
+
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Não foi possÃvel conectar com o barramento do sistema: %s"
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Não foi possÃvel obter quem chamou pelo PID: %s"
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Não foi possÃvel definir o UID sobre o objeto que chamou."
+#~ msgid "Failed to get CK session."
+#~ msgstr "Falha em obter a sessão CK."
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Não foi possÃvel definir o UID do objeto da sessão."
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Não foi possÃvel alocar o PolKitAction."
+#~ msgid "Cannot set action_id"
+#~ msgstr "Não foi possÃvel definir a action_id"
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Não foi possÃvel alocar o PolKitContext."
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Não foi possÃvel iniciar o PolKitContext: %s"
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Não foi possÃvel determinar se o solicitante está autorizado: %s"
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Não foi possÃvel obter auth: %s"
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit respondeu com '%s'"
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Escalonamento de alta prioridade (nÃvel de nice Unix negativo) para o "
+#~ "daemon do PulseAudio"
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Escalonamento em tempo real para o daemon do PulseAudio"
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Uma polÃtica do sistema impede que o PulseAudio adquira escalonamento de "
+#~ "alta prioridade."
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Uma polÃtica do sistema impede que o PulseAudio adquira o escalonamento "
+#~ "em tempo real."
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() falhou: %s\n"
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() falhou: %s\n"
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "Estamos no grupo '%s', permitindo escalonamento de alta prioridade."
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "Estamos no grupo '%s', permitindo escalonamento em tempo real."
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr ""
+#~ "O PolicyKit assegura-nos a aquisição de privilégio de alta prioridade."
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "O PolicyKit recusa a aquisição de privilégios de alta prioridade."
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "O PolicyKit assegura-nos a aquisição de privilégios de tempo-real."
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "O PolicyKit recusa a aquisição de privilégios de tempo real."
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "O escalonamento de alta prioridade foi habilitado para esta configuração, "
+#~ "mas não é permitida pela polÃtica."
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "RLIMIT_RTPRIO aumentado com sucesso"
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO falhou: %s"
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Abandonando CAP_NICE"
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "O escalonamento de tempo real foi habilitado pela configuração, mas não é "
+#~ "permitido pela polÃtica."
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "As capacidades foram limitadas com sucesso para CAP_SYS_NICE."
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() falhou.\n"
#~ msgid "Stream successfully created\n"
#~ msgstr "Fluxo criado com sucesso\n"
-
#~ msgid "Stream errror: %s\n"
#~ msgstr "Erro de fluxo: %s\n"
-
#~ msgid "Connection established.\n"
#~ msgstr "Conexão estabelecida.\n"
-
#~ msgid ""
#~ "%s [options] [FILE]\n"
#~ "\n"
@@ -2412,7 +2299,6 @@ msgstr ""
#~ " --volume=VOLUME Especifica o volume inicial "
#~ "(linear) no intervalo 0...65536\n"
#~ " --channel-map=CHANNELMAP Define o mapa do canal para uso\n"
-
#~ msgid ""
#~ "paplay %s\n"
#~ "Compiled with libpulse %s\n"
@@ -2421,16 +2307,12 @@ msgstr ""
#~ "paplay %s\n"
#~ "Compilado com libpulse %s\n"
#~ "Linkado com libpulse %s\n"
-
#~ msgid "Invalid channel map\n"
#~ msgstr "Mapa de canais inválido\n"
-
#~ msgid "Failed to open file '%s'\n"
#~ msgstr "Falha ao abrir o arquivo '%s'\n"
-
#~ msgid "Channel map doesn't match file.\n"
#~ msgstr "O mapa dos canais não coincide com o arquivo.\n"
-
#~ msgid "Using sample spec '%s'\n"
#~ msgstr "Usando a especificação da amostragem '%s'\n"
@@ -2449,19 +2331,14 @@ msgstr ""
#, fuzzy
#~ msgid "--log-time boolean argument"
#~ msgstr "--disallow-exit argumento booleano"
-
#~ msgid "Default sink name (%s) does not exist in name register."
#~ msgstr "O nome padrão do destino (%s) não existe no registro de nomes."
-
#~ msgid "Buffer overrun, dropping incoming data\n"
#~ msgstr "Houve estouro de buffer, os dados que chegaram foram descartados\n"
-
#~ msgid "pa_stream_drop() failed: %s\n"
#~ msgstr "pa_stream_drop() falhou: %s\n"
-
#~ msgid "muted"
#~ msgstr "mudo"
-
#~ msgid ""
#~ "*** Autoload Entry #%u ***\n"
#~ "Name: %s\n"
@@ -2474,13 +2351,10 @@ msgstr ""
#~ "Tipo: %s\n"
#~ "Módulo: %s\n"
#~ "Argumento: %s\n"
-
#~ msgid "sink"
#~ msgstr "destino"
-
#~ msgid "source"
#~ msgstr "fonte"
-
#~ msgid ""
#~ "' and PolicyKit refuse to grant us priviliges. Dropping SUID again.\n"
#~ "For enabling real-time scheduling please acquire the appropriate "
@@ -2490,13 +2364,11 @@ msgstr ""
#~ "outra vez.\n"
#~ " Para habilitar o escalonamento em tempo real, por favo, adquira os "
#~ "privilégios adequados pelo PolicyKit, ou torne-se membro do'"
-
#~ msgid ""
#~ "', or increase the RLIMIT_NICE/RLIMIT_RTPRIO resource limits for this "
#~ "user."
#~ msgstr ""
#~ "', ou eleve o RLIMIT_NICE/RLIMIT_RTPRIO dos limites do recurso para este "
#~ "usuário."
-
#~ msgid "socketpair(): %s"
#~ msgstr "socketpair(): %s"
diff --git a/po/sr.po b/po/sr.po
index b8c861fe..371c7b52 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-07 23:02+0100\n"
"Last-Translator: MiloÅ¡ KomarÄeviÄ \n"
"Language-Team: Serbian \n"
@@ -19,7 +19,12 @@ msgstr ""
"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Lokalize 0.3\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -32,7 +37,7 @@ msgstr ""
"Ðво Ñе наÑвеÑоваÑниÑе гÑеÑка Ñ â%sâ ALSA ÑпÑавÑаÑком пÑогÑамÑ. ÐÑиÑавиÑе "
"Ð¾Ð²Ð°Ñ Ð¿Ñоблем ALSA пÑогÑамеÑима."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -45,7 +50,7 @@ msgstr ""
"Ðво Ñе наÑвеÑоваÑниÑе гÑеÑка Ñ â%sâ ALSA ÑпÑавÑаÑком пÑогÑамÑ. ÐÑиÑавиÑе "
"Ð¾Ð²Ð°Ñ Ð¿Ñоблем ALSA пÑогÑамеÑима."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -71,7 +76,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "УнÑÑÑаÑÑи звÑк"
@@ -91,222 +96,92 @@ msgstr "ÐеÑÑпеÑно ÑмеÑÑаÑе новог dl ÑÑиÑаваÑа."
msgid "Failed to add bind-now-loader."
msgstr "ÐеÑÑпеÑно додаваÑе âповежи одмаÑ
â ÑÑиÑаваÑа."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "ÐиÑе Ñе могÑÑе пÑикÑÑÑиÑи на ÑиÑÑемÑÐºÑ Ð¼Ð°Ð³Ð¸ÑÑÑалÑ: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñи позивника из PID-а: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи UID за позивниÑки обÑекаÑ."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "ÐеÑÑпеÑно добавÑаÑе CK ÑеÑиÑе."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи UID за обÑÐµÐºÐ°Ñ ÑеÑиÑе."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¸Ð½Ð¸ÑиÑализоваÑи PolKitContex: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "ÐиÑе могÑÑе одÑедиÑи овлаÑÑеÑе позивника: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð¾Ð±Ð¸Ñи овлаÑÑеÑе: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit Ñе одговоÑио Ñа â%sâ"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "ÐобиÑ
Ñигнал %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "ÐапÑÑÑам."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð½Ð°Ñи коÑиÑника â%sâ."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð½Ð°Ñи гÑÑÐ¿Ñ â%sâ."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "ÐаÑени ÑÑ ÐºÐ¾ÑиÑник â%sâ (UID %lu) и гÑÑпа â%sâ (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID коÑиÑника â%sâ Ñе не поклапа Ñа гÑÑпом â%sâ."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "ÐиÑни диÑекÑоÑиÑÑм коÑиÑника â%sâ ниÑе â%sâ, занемаÑÑÑем."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "ÐеÑÑпеÑно пÑавÑеÑе â%sâ: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "ÐеÑÑпеÑна пÑомена гÑÑпног ÑпиÑка: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "ÐеÑÑпеÑна пÑомена GID-а: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "ÐеÑÑпеÑна пÑомена UID-а: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "УÑпеÑно одбаÑена root овлаÑÑеÑа."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Режим за ÑиÑав ÑиÑÑем ниÑе подÑжан на Ð¾Ð²Ð¾Ñ Ð¿Ð»Ð°ÑÑоÑми."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) ниÑе ÑÑпело: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "ÐеÑÑпеÑно ÑÑмаÑеÑе командне линиÑе."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Ðалазимо Ñе Ñ Ð³ÑÑпи â%sâ коÑа дозвоÑава виÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Ðалазимо Ñе Ñ Ð³ÑÑпи â%sâ коÑа дозвоÑава ÑÑваÑновÑеменÑко ÑаÑпоÑеÑиваÑе."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit нам Ñе дао овлаÑÑеÑе за добиÑаÑе виÑоког пÑиоÑиÑеÑа."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit одбиÑа овлаÑÑеÑе за добиÑаÑе виÑоког пÑиоÑиÑеÑа."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit нам Ñе дао овлаÑÑеÑе за добиÑаÑе Ñада Ñ ÑÑваÑном вÑеменÑ."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit одбиÑа овлаÑÑеÑе за добиÑаÑе Ñада Ñ ÑÑваÑном вÑеменÑ."
-
-#
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID root и ÑÑваÑновÑеменÑко и/или виÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе Ñе "
-"заÑ
Ñевано Ñ Ð¿Ð¾Ð´ÐµÑаваÑима. ÐеÑÑÑим, немамо поÑÑебна овлаÑÑеÑа:\n"
-"ниÑмо Ñ Ð³ÑÑпи â%sâ, PolicyKit одбиÑа да нам Ð´Ð°Ì ÑÑажена овлаÑÑеÑа и немамо "
-"ÑÑедÑÑава за повеÑаÑе RLIMIT_NICE/RLIMIT_RTPRIO огÑаниÑеÑа.\n"
-"ÐоÑаÑе добиÑи одговаÑаÑÑÑа PolicyKit овлаÑÑеÑа, или поÑÑаÑи Ñлан гÑÑпе â%sâ, "
-"или повеÑаÑи огÑаниÑеÑа за RLIMIT_NICE/RLIMIT_RTPRIO ÑÑедÑÑва овог коÑиÑника "
-"како би омогÑÑили ÑÑваÑновÑеменÑко или виÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"ÐиÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе Ñе омогÑÑено Ñ Ð¿Ð¾Ð´ÐµÑаваÑима, али полиÑика Ñо "
-"не дозвоÑава."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "УÑпеÑно повеÑано RLIMIT_RTPRIO огÑаниÑеÑе"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "ÐеÑÑпеÑно поÑÑавÑаÑе RLIMIT_RTPRIO-а:%s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "ÐдÑÑÑаÑем од CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"СÑваÑновÑеменÑко ÑаÑпоÑеÑиваÑе Ñе омогÑÑено Ñ Ð¿Ð¾Ð´ÐµÑаваÑима, али полиÑика Ñо "
-"не дозвоÑава."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Ðемон ниÑе покÑенÑÑ"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Ðемон Ñе покÑенÑÑ Ñа PID-ом %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ÐеÑÑпеÑно ÑбиÑаÑе демона: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -314,153 +189,153 @@ msgstr ""
"ÐиÑе намеÑавано да Ñе Ð¾Ð²Ð°Ñ Ð¿ÑогÑам покÑеÑе из root налога (оÑим Ñ ÑлÑÑаÑÑ "
"када Ñе --system наведено)"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "ÐоÑÑебна ÑÑ root овлаÑÑеÑа."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start ниÑе подÑжано за ÑиÑÑемÑке пÑимеÑке."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "ÐокÑенÑÑо Ñ ÑиÑÑемÑком ÑежимÑ, али --disallow-exit ниÑе поÑÑавÑено!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"ÐокÑенÑÑо Ñ ÑиÑÑемÑком ÑежимÑ, али --disallow-module-loading ниÑе поÑÑавÑено!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "ÐокÑенÑÑо Ñ ÑиÑÑемÑком ÑежимÑ, пÑиÑилно онемогÑÑÑÑем SHM Ñежим!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"ÐокÑенÑÑо Ñ ÑиÑÑемÑком ÑежимÑ, пÑиÑилно онемогÑÑÑÑем гаÑеÑе поÑле одÑеÑеног "
"вÑемена миÑоваÑа!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "ÐеÑÑпеÑно пÑоналажеÑе ÑÑандаÑдног Ñлаза/излаза."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "ÐеÑÑпеÑно пÑÑÑаÑе подаÑака кÑоз Ñев: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа fork(): %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа read(): %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "ÐеÑÑпеÑно покÑеÑаÑе демона."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Ðемон ÑÑпеÑно покÑенÑÑ."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Ðво Ñе PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "ÐомаÑин компаÑлиÑаÑа: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS компаÑлиÑаÑа: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "ÐокÑенÑÑ Ð½Ð° домаÑинÑ: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "ÐаÑао %u пÑоÑеÑоÑ(а)"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "ÐелиÑина ÑÑÑаниÑе Ñе %lu баÑÑова"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "ÐомпаÑлиÑано Ñа подÑÑком за Valgrind: да"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "ÐомпаÑлиÑано Ñа подÑÑком за Valgrind: не"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "ÐокÑенÑÑ Ñ Valgrind ÑежимÑ: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "ÐпÑимизована изгÑадÑа: да"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "ÐпÑимизована изгÑадÑа: не"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG деÑиниÑан, Ñва обавеÑÑеÑа иÑкÑÑÑена."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH деÑиниÑан, Ñамо обавеÑÑеÑа бÑзе пÑÑаÑе иÑкÑÑÑена."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Сва обавеÑÑеÑа омогÑÑена."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "ÐеÑÑпеÑно добавÑаÑе ÐРмаÑине"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "ÐРмаÑине Ñе %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "ÐРмаÑине Ñе %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "ÐоÑиÑÑи Ñе %s извÑÑни диÑекÑоÑиÑÑм."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "ÐоÑиÑÑи Ñе %s диÑекÑоÑиÑÑм ÑÑаÑа."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "ÐокÑенÑÑо Ñ ÑиÑÑемÑком ÑежимÑ: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -470,15 +345,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_pid_file_create()."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "ÐоÑÑÑпни ÑÑ Ð½Ð¾Ð²Ð¸ бÑоÑаÑи виÑоке ÑезолÑÑиÑе! ÐÑиÑаÑно!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -486,27 +361,27 @@ msgstr ""
"ÐаÑе ÑезгÑо ниÑе добÑо подеÑено за pulseaudio! ÐÑепоÑÑÑÑÑе Ðам Ñе да "
"коÑиÑÑиÑе Linux ÑезгÑо Ñа омогÑÑеним бÑоÑаÑима виÑоке ÑезолÑÑиÑе."
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_core_new()."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "ÐеÑÑпеÑно покÑеÑаÑе демона."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Ðемон Ñе покÑенÑÑ Ð±ÐµÐ· иÑедног ÑÑиÑаног модÑла, одбиÑа да Ñади."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ÐокÑеÑаÑе демона ÑÑпеÑно."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ÐокÑенÑÑо гаÑеÑе демона."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Рад демона Ñе пÑекинÑÑ."
@@ -850,14 +725,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### ÐÑоÑиÑÐ°Ñ Ð¸Ð· даÑоÑеке подеÑаваÑа: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "ÐдбаÑÑÑем root повлаÑÑиÑе."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "УÑпеÑно огÑаниÑио могÑÑноÑÑи на CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio звÑÑни ÑиÑÑем"
@@ -866,30 +737,6 @@ msgstr "PulseAudio звÑÑни ÑиÑÑем"
msgid "Start the PulseAudio Sound System"
msgstr "ÐокÑени PulseAudio звÑÑни ÑиÑÑем"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"ÐиÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе (негаÑивни Unix нивои ÑиноÑе, ÑÑ. nice "
-"нивои) за PulseAudio демона"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "СÑваÑновÑеменÑко ÑаÑпоÑеÑиваÑе за PulseAudio демона"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"СиÑÑемÑка полиÑика ÑпÑеÑава PulseAudio-Ñ Ð´Ð° добиÑе виÑокопÑиоÑиÑеÑно "
-"ÑаÑпоÑеÑиваÑе."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"СиÑÑемÑка полиÑика ÑпÑеÑава PulseAudio-Ñ Ð´Ð° добиÑе ÑÑваÑновÑеменÑко "
-"ÑаÑпоÑеÑиваÑе."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Ðоно"
@@ -1263,183 +1110,187 @@ msgstr "ÐеÑÑпеÑно ÑÑмаÑеÑе подаÑака из колаÑиÑ
msgid "Failed to open configuration file '%s': %s"
msgstr "ÐеÑÑпеÑно оÑваÑаÑе даÑоÑеке подеÑаваÑа â%sâ: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "ÐолаÑÐ¸Ñ Ð½Ð¸Ñе ÑÑиÑан. ÐокÑÑавам Ñе повезаÑи без колаÑиÑа."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "ÐÑимио поÑÑÐºÑ Ð·Ð° непознаÑи локал â%sâ"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "ÐеÑÑпеÑно иÑÑÑиваÑе Ñока: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "РепÑодÑкÑиони Ñок иÑÑÑен.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Ðеза до ÑеÑвеÑа Ñе иÑÑÑÑÑе.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_write(): %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_write(): %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_peek(): %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Ток ÑÑпеÑно напÑавÑен.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "ÐеÑÑпеÑно pa_stream_get_buffer_attr(): %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "ÐеÑÑике баÑеÑа: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "ÐеÑÑике баÑеÑа: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "ÐоÑиÑÑим ÑледеÑе паÑамеÑÑе ÑзоÑка â%sâ и Ð¼Ð°Ð¿Ñ ÐºÐ°Ð½Ð°Ð»Ð° â%sâ.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "ÐÑикÑÑÑен на ÑÑеÑÐ°Ñ %s (%u, %s обÑÑÑавÑено).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ÐÑеÑка Ñока: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "УÑеÑÐ°Ñ Ñока обÑÑÑавÑен.%s\n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "УÑеÑÐ°Ñ Ñока наÑÑавÑен.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Ток ниÑе попÑÑен. %s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Ток Ñе пÑелива.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Ток покÑенÑÑ. %s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Ток пÑебаÑен на ÑÑеÑÐ°Ñ %s (%u, %s обÑÑÑавÑено). %s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "ниÑе"
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "ÐаÑамеÑÑи баÑеÑа Ñока ÑÑ Ð¿ÑомеÑени. %s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Ðеза ÑÑпоÑÑавÑена.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_new() : %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_connect_playback(): %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_connect_record(): %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "ÐеÑÑпеÑно повезиваÑе: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "ÐоÑао до кÑаÑа даÑоÑеке.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "ÐеÑÑпела ÑÑнкÑиÑа read(): %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "ÐоÑао до кÑаÑа даÑоÑеке.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа write(): %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Ðобио Ñигнал, излазим.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "ÐÐµÐ¼Ð¾Ð³Ñ Ð´Ð¾Ð±Ð¸Ñи вÑедноÑÑ ÐºÐ°ÑÑеÑа: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "ÐÑеме: %0.3f s. ÐаÑÑеÑе: %0.0f μs. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_stream_update_timing_info(): %s\n"
# ШÑа да Ñадимо Ñа downmix и upmix. ÐÑеÑÐ»Ð¸ÐºÐ°Ñ Ð½Ð°Ð²Ð¸Ñе и пÑеÑÐ»Ð¸ÐºÐ°Ñ Ð½Ð°Ð½Ð¸Ð¶Ðµ? -- ÐгоÑ
@@ -1558,34 +1409,34 @@ msgstr ""
"ÐомпаÑлиÑано Ñа libpulse %s\n"
"Ðовезано Ñа libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "ÐеиÑпÑавна мапа канала â%sâ\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "ÐеиÑпÑаван наÑин диÑкÑеÑизаÑиÑе â%sâ."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "ÐеиÑпÑавна мапа канала â%sâ\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "ÐеиÑпÑаван паÑамеÑÐ°Ñ ÐºÐ°ÑÑеÑа â%sâ\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "ÐеиÑпÑаван паÑамеÑÐ°Ñ Ð·Ð° вÑеме пÑоÑеÑа â%sâ\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "ÐеиÑпÑаван наÑин диÑкÑеÑизаÑиÑе â%sâ."
#: ../src/utils/pacat.c:878
@@ -1594,60 +1445,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "ÐеиÑпÑавни паÑамеÑÑи ÑзоÑка\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "ÐÑевиÑе паÑамеÑаÑа.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "ÐиÑе ÑÑпело добавÑаÑе подаÑака о ÑзоÑкÑ: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "ÐиÑе ÑÑпело оÑваÑаÑе звÑÑне даÑоÑеке.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "ÐÑваÑам Ñок %s Ñа ÑледеÑим паÑамеÑÑима ÑзоÑка â%sâ.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "ÐиÑе ÑÑпело добавÑаÑе подаÑака о ÑзоÑкÑ: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "ÐÑваÑам Ñок %s Ñа ÑледеÑим паÑамеÑÑима ÑзоÑка â%sâ.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "Ðапа канала Ñе не поклапа Ñа паÑамеÑÑима ÑзоÑка\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "ÐÑваÑам Ñок %s Ñа ÑледеÑим паÑамеÑÑима ÑзоÑка â%sâ.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "ÐÑваÑам Ñок %s Ñа ÑледеÑим паÑамеÑÑима ÑзоÑка â%sâ.\n"
#: ../src/utils/pacat.c:1006
@@ -1658,35 +1515,34 @@ msgstr "Ñнима"
msgid "playback"
msgstr "пÑÑÑа"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_mainloop_new().\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "ÐеÑÑпела ÑÑнкÑиÑа io_new() \n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_context_new().\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_context_connect(): %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "ÐеÑÑпела ÑÑнкÑиÑа time_new() \n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_context_new().\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_mainloop_run().\n"
#: ../src/utils/pasuspender.c:81
@@ -1714,6 +1570,11 @@ msgstr "ÐеÑÑпеÑно наÑÑавÑаÑе: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "УÐÐÐÐÐ ÐÐÐ: ÐвÑÑни ÑеÑÐ²ÐµÑ Ð½Ð¸Ñе локални, не заÑÑÑавÑам.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "ÐеÑÑпеÑно повезиваÑе: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1753,6 +1614,21 @@ msgstr ""
"ÐомпаÑлиÑано Ñа libpulse %s\n"
"Ðовезано Ñа libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_mainloop_new().\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_context_new().\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_mainloop_run().\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2167,6 +2043,11 @@ msgstr ""
"ÐомпаÑлиÑано Ñа libpulse %s\n"
"Ðовезано Ñа libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "ÐеиÑпÑавна мапа канала â%sâ\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "ÐаведиÑе даÑоÑÐµÐºÑ ÑзоÑка коÑÑ ÑÑеба ÑÑиÑаÑи\n"
@@ -2175,6 +2056,11 @@ msgstr "ÐаведиÑе даÑоÑÐµÐºÑ ÑзоÑка коÑÑ ÑÑеба ÑÑ
msgid "Failed to open sound file.\n"
msgstr "ÐиÑе ÑÑпело оÑваÑаÑе звÑÑне даÑоÑеке.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "ÐиÑе ÑÑпело добавÑаÑе подаÑака о ÑзоÑкÑ: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2234,11 +2120,6 @@ msgstr "ÐоÑаÑе навеÑÑи име/Ð¸Ð½Ð´ÐµÐºÑ ÐºÐ°ÑÑиÑе и име
msgid "No valid command specified.\n"
msgstr "Ðи Ñедна иÑпÑавна наÑедба ниÑе наведена.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_context_connect(): %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2358,11 +2239,11 @@ msgid "write(): %s"
msgstr "write(): %s"
# Ðако пÑевеÑÑи autospawn (могÑÑноÑÑ Ð¿ÑавÑеÑа или покÑеÑаÑа пÑоÑеÑа из иÑÑог) -- ÐгоÑ
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "ÐиÑе могÑÑе пÑиÑÑÑпиÑи даÑоÑеÑи закÑÑÑаваÑа за ÑамоÑмножаваÑе."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2379,7 +2260,7 @@ msgstr ""
"ÐÑобÑÑени Ñмо Ñа поÑÑавÑеним POLLOUT-ом -- али ÑледеÑи snd_pcm_avail() Ñе "
"вÑаÑио 0 или Ð½ÐµÐºÑ Ð´ÑÑÐ³Ñ Ð²ÑедноÑÑ Ð¼Ð°ÑÑ Ð¾Ð´ min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2397,15 +2278,15 @@ msgstr ""
"вÑаÑио 0 или Ð½ÐµÐºÑ Ð´ÑÑÐ³Ñ Ð²ÑедноÑÑ Ð¼Ð°ÑÑ Ð¾Ð´ min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "ÐÑкÑÑÑено"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "РепÑодÑкÑиÑа виÑоке ÑаÑноÑÑи (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "ÐвоÑÑÑано ÑелеÑониÑаÑе (HSP/HFP)"
@@ -2413,6 +2294,140 @@ msgstr "ÐвоÑÑÑано ÑелеÑониÑаÑе (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio звÑÑни ÑиÑÑем"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "ÐиÑе Ñе могÑÑе пÑикÑÑÑиÑи на ÑиÑÑемÑÐºÑ Ð¼Ð°Ð³Ð¸ÑÑÑалÑ: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñи позивника из PID-а: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи UID за позивниÑки обÑекаÑ."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "ÐеÑÑпеÑно добавÑаÑе CK ÑеÑиÑе."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи UID за обÑÐµÐºÐ°Ñ ÑеÑиÑе."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¿Ð¾ÑÑавиÑи PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð¸Ð½Ð¸ÑиÑализоваÑи PolKitContex: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "ÐиÑе могÑÑе одÑедиÑи овлаÑÑеÑе позивника: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Ðе Ð¼Ð¾Ð³Ñ Ð´Ð¾Ð±Ð¸Ñи овлаÑÑеÑе: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit Ñе одговоÑио Ñа â%sâ"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "ÐиÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе (негаÑивни Unix нивои ÑиноÑе, ÑÑ. nice "
+#~ "нивои) за PulseAudio демона"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "СÑваÑновÑеменÑко ÑаÑпоÑеÑиваÑе за PulseAudio демона"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "СиÑÑемÑка полиÑика ÑпÑеÑава PulseAudio-Ñ Ð´Ð° добиÑе виÑокопÑиоÑиÑеÑно "
+#~ "ÑаÑпоÑеÑиваÑе."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "СиÑÑемÑка полиÑика ÑпÑеÑава PulseAudio-Ñ Ð´Ð° добиÑе ÑÑваÑновÑеменÑко "
+#~ "ÑаÑпоÑеÑиваÑе."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "ÐеÑÑпела ÑÑнкÑиÑа read(): %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "ÐеÑÑпела ÑÑнкÑиÑа pa_context_connect(): %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Ðалазимо Ñе Ñ Ð³ÑÑпи â%sâ коÑа дозвоÑава виÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Ðалазимо Ñе Ñ Ð³ÑÑпи â%sâ коÑа дозвоÑава ÑÑваÑновÑеменÑко ÑаÑпоÑеÑиваÑе."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit нам Ñе дао овлаÑÑеÑе за добиÑаÑе виÑоког пÑиоÑиÑеÑа."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit одбиÑа овлаÑÑеÑе за добиÑаÑе виÑоког пÑиоÑиÑеÑа."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit нам Ñе дао овлаÑÑеÑе за добиÑаÑе Ñада Ñ ÑÑваÑном вÑеменÑ."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit одбиÑа овлаÑÑеÑе за добиÑаÑе Ñада Ñ ÑÑваÑном вÑеменÑ."
+
+#
+#~ 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 ""
+#~ "SUID root и ÑÑваÑновÑеменÑко и/или виÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе Ñе "
+#~ "заÑ
Ñевано Ñ Ð¿Ð¾Ð´ÐµÑаваÑима. ÐеÑÑÑим, немамо поÑÑебна овлаÑÑеÑа:\n"
+#~ "ниÑмо Ñ Ð³ÑÑпи â%sâ, PolicyKit одбиÑа да нам Ð´Ð°Ì ÑÑажена овлаÑÑеÑа и "
+#~ "немамо ÑÑедÑÑава за повеÑаÑе RLIMIT_NICE/RLIMIT_RTPRIO огÑаниÑеÑа.\n"
+#~ "ÐоÑаÑе добиÑи одговаÑаÑÑÑа PolicyKit овлаÑÑеÑа, или поÑÑаÑи Ñлан гÑÑпе â%"
+#~ "sâ, или повеÑаÑи огÑаниÑеÑа за RLIMIT_NICE/RLIMIT_RTPRIO ÑÑедÑÑва овог "
+#~ "коÑиÑника како би омогÑÑили ÑÑваÑновÑеменÑко или виÑокопÑиоÑиÑеÑно "
+#~ "ÑаÑпоÑеÑиваÑе."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "ÐиÑокопÑиоÑиÑеÑно ÑаÑпоÑеÑиваÑе Ñе омогÑÑено Ñ Ð¿Ð¾Ð´ÐµÑаваÑима, али полиÑика "
+#~ "Ñо не дозвоÑава."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "УÑпеÑно повеÑано RLIMIT_RTPRIO огÑаниÑеÑе"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "ÐеÑÑпеÑно поÑÑавÑаÑе RLIMIT_RTPRIO-а:%s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "ÐдÑÑÑаÑем од CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "СÑваÑновÑеменÑко ÑаÑпоÑеÑиваÑе Ñе омогÑÑено Ñ Ð¿Ð¾Ð´ÐµÑаваÑима, али полиÑика "
+#~ "Ñо не дозвоÑава."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "УÑпеÑно огÑаниÑио могÑÑноÑÑи на CAP_SYS_NICE."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "ÐеÑÑпела ÑÑнкÑиÑа time_new() \n"
+
#~ msgid "Analog Mono"
#~ msgstr "Ðналогни моно"
diff --git a/po/sr@latin.po b/po/sr@latin.po
index e5b0f7b1..ddbacadf 100644
--- a/po/sr@latin.po
+++ b/po/sr@latin.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-07 23:02+0100\n"
"Last-Translator: MiloÅ¡ KomarÄeviÄ \n"
"Language-Team: Serbian \n"
@@ -19,7 +19,12 @@ msgstr ""
"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Lokalize 0.3\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -32,7 +37,7 @@ msgstr ""
"Ovo je najverovatnije greÅ¡ka u â%sâ ALSA upravljaÄkom programu. Prijavite "
"ovaj problem ALSA programerima."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -45,7 +50,7 @@ msgstr ""
"Ovo je najverovatnije greÅ¡ka u â%sâ ALSA upravljaÄkom programu. Prijavite "
"ovaj problem ALSA programerima."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -71,7 +76,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "Unutrašnji zvuk"
@@ -91,223 +96,92 @@ msgstr "NeuspeÅ¡no smeÅ¡tanje novog dl uÄitavaÄa."
msgid "Failed to add bind-now-loader."
msgstr "NeuspeÅ¡no dodavanje âpoveži odmahâ uÄitavaÄa."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Nije se moguÄe prikljuÄiti na sistemsku magistralu: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Ne mogu dobaviti pozivnika iz PID-a: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Ne mogu postaviti UID za pozivniÄki objekat."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Neuspešno dobavljanje CK sesije."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Ne mogu postaviti UID za objekat sesije."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Ne mogu postaviti PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Ne mogu postaviti action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Ne mogu postaviti PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Ne mogu inicijalizovati PolKitContex: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Nije moguÄe odrediti ovlaÅ¡Äenje pozivnika: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Ne mogu dobiti ovlaÅ¡Äenje: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit je odgovorio sa â%sâ"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Dobih signal %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Napuštam."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Ne mogu naÄi korisnika â%sâ."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Ne mogu naÄi grupu â%sâ."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "NaÄeni su korisnik â%sâ (UID %lu) i grupa â%sâ (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID korisnika â%sâ se ne poklapa sa grupom â%sâ."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "LiÄni direktorijum korisnika â%sâ nije â%sâ, zanemarujem."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "NeuspeÅ¡no pravljenje â%sâ: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Neuspešna promena grupnog spiska: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Neuspešna promena GID-a: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Neuspešna promena UID-a: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "UspeÅ¡no odbaÄena root ovlaÅ¡Äenja."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "Režim za Äitav sistem nije podržan na ovoj platformi."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) nije uspelo: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "NeuspeÅ¡no tumaÄenje komandne linije."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Nalazimo se u grupi â%sâ koja dozvoljava visokoprioritetno rasporeÄivanje."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Nalazimo se u grupi â%sâ koja dozvoljava stvarnovremensko rasporeÄivanje."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit nam je dao ovlaÅ¡Äenje za dobijanje visokog prioriteta."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit odbija ovlaÅ¡Äenje za dobijanje visokog prioriteta."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit nam je dao ovlaÅ¡Äenje za dobijanje rada u stvarnom vremenu."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit odbija ovlaÅ¡Äenje za dobijanje rada u stvarnom vremenu."
-
-#
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID root i stvarnovremensko i/ili visokoprioritetno rasporeÄivanje je "
-"zahtevano u podeÅ¡avanjima. MeÄutim, nemamo potrebna ovlaÅ¡Äenja:\n"
-"nismo u grupi â%sâ, PolicyKit odbija da nam daÌ tražena ovlaÅ¡Äenja i nemamo "
-"sredstava za poveÄanje RLIMIT_NICE/RLIMIT_RTPRIO ograniÄenja.\n"
-"Morate dobiti odgovarajuÄa PolicyKit ovlaÅ¡Äenja, ili postati Älan grupe â%"
-"sâ, ili poveÄati ograniÄenja za RLIMIT_NICE/RLIMIT_RTPRIO sredstva ovog "
-"korisnika kako bi omoguÄili stvarnovremensko ili visokoprioritetno "
-"rasporeÄivanje."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Visokoprioritetno rasporeÄivanje je omoguÄeno u podeÅ¡avanjima, ali politika "
-"to ne dozvoljava."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "UspeÅ¡no poveÄano RLIMIT_RTPRIO ograniÄenje"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "Neuspešno postavljanje RLIMIT_RTPRIO-a:%s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "Odustajem od CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"Stvarnovremensko rasporeÄivanje je omoguÄeno u podeÅ¡avanjima, ali politika "
-"to ne dozvoljava."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Demon nije pokrenut"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Demon je pokrenut sa PID-om %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Neuspešno ubijanje demona: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -315,154 +189,154 @@ msgstr ""
"Nije nameravano da se ovaj program pokreÄe iz root naloga (osim u sluÄaju "
"kada je --system navedeno)"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Potrebna su root ovlaÅ¡Äenja."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start nije podržano za sistemske primerke."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "Pokrenuto u sistemskom režimu, ali --disallow-exit nije postavljeno!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"Pokrenuto u sistemskom režimu, ali --disallow-module-loading nije "
"postavljeno!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "Pokrenuto u sistemskom režimu, prisilno onemoguÄujem SHM režim!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"Pokrenuto u sistemskom režimu, prisilno onemoguÄujem gaÅ¡enje posle odreÄenog "
"vremena mirovanja!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Neuspešno pronalaženje standardnog ulaza/izlaza."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "Neuspešno puštanje podataka kroz cev: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "Neuspela funkcija fork(): %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "Neuspela funkcija read(): %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "Neuspešno pokretanje demona."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Demon uspešno pokrenut."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Ovo je PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "DomaÄin kompajliranja: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS kompajliranja: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "Pokrenut na domaÄinu: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Našao %u procesor(a)"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "VeliÄina stranice je %lu bajtova"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Kompajlirano sa podrškom za Valgrind: da"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Kompajlirano sa podrškom za Valgrind: ne"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "Pokrenut u Valgrind režimu: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimizovana izgradnja: da"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "Optimizovana izgradnja: ne"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG definisan, sva obaveÅ¡tenja iskljuÄena."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH definisan, samo obaveÅ¡tenja brze putanje iskljuÄena."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "Sva obaveÅ¡tenja omoguÄena."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "Neuspešno dobavljanje IB mašine"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "IB mašine je %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "IB mašine je %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "Koristi se %s izvršni direktorijum."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "Koristi se %s direktorijum stanja."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "Pokrenuto u sistemskom režimu: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -472,15 +346,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "Neuspela funkcija pa_pid_file_create()."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "Dostupni su novi brojaÄi visoke rezolucije! Prijatno!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -488,27 +362,27 @@ msgstr ""
"VaÅ¡e jezgro nije dobro podeÅ¡eno za pulseaudio! PreporuÄuje Vam se da "
"koristite Linux jezgro sa omoguÄenim brojaÄima visoke rezolucije."
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "Neuspela funkcija pa_core_new()."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Neuspešno pokretanje demona."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "Demon je pokrenut bez ijednog uÄitanog modula, odbija da radi."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "Pokretanje demona uspešno."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "Pokrenuto gašenje demona."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "Rad demona je prekinut."
@@ -852,14 +726,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### ProÄitaj iz datoteke podeÅ¡avanja: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "Odbacujem root povlastice."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "UspeÅ¡no ograniÄio moguÄnosti na CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio zvuÄni sistem"
@@ -868,30 +738,6 @@ msgstr "PulseAudio zvuÄni sistem"
msgid "Start the PulseAudio Sound System"
msgstr "Pokreni PulseAudio zvuÄni sistem"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"Visokoprioritetno rasporeÄivanje (negativni Unix nivoi finoÄe, tj. nice "
-"nivoi) za PulseAudio demona"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "Stvarnovremensko rasporeÄivanje za PulseAudio demona"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"Sistemska politika spreÄava PulseAudiu da dobije visokoprioritetno "
-"rasporeÄivanje."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-"Sistemska politika spreÄava PulseAudiu da dobije stvarnovremensko "
-"rasporeÄivanje."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1265,183 +1111,187 @@ msgstr "NeuspeÅ¡no tumaÄenje podataka iz kolaÄiÄa"
msgid "Failed to open configuration file '%s': %s"
msgstr "NeuspeÅ¡no otvaranje datoteke podeÅ¡avanja â%sâ: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "KolaÄiÄ nije uÄitan. PokuÅ¡avam se povezati bez kolaÄiÄa."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "Primio poruku za nepoznati lokal â%sâ"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Neuspešno isušivanje toka: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "Reprodukcioni tok isušen.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Veza do servera se isušuje.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "Neuspela funkcija pa_stream_write(): %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "Neuspela funkcija pa_stream_write(): %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "Neuspela funkcija pa_stream_peek(): %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "Tok uspešno napravljen.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "Neuspešno pa_stream_get_buffer_attr(): %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Metrike bafera: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Metrike bafera: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "Koristim sledeÄe parametre uzorka â%sâ i mapu kanala â%sâ.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "PrikljuÄen na ureÄaj %s (%u, %s obustavljeno).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Greška toka: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "UreÄaj toka obustavljen.%s\n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "UreÄaj toka nastavljen.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "Tok nije popunjen. %s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "Tok se preliva.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "Tok pokrenut. %s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "Tok prebaÄen na ureÄaj %s (%u, %s obustavljeno). %s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "nije"
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "Parametri bafera toka su promenjeni. %s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "Veza uspostavljena.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "Neuspela funkcija pa_stream_new() : %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "Neuspela funkcija pa_stream_connect_playback(): %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "Neuspela funkcija pa_stream_connect_record(): %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Neuspešno povezivanje: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Došao do kraja datoteke.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "Neuspela funkcija read(): %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "Došao do kraja datoteke.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "Neuspela funkcija write(): %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "Dobio signal, izlazim.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Nemogu dobiti vrednost kašnjenja: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Vreme: %0.3f s. Kašnjenje: %0.0f μs. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "Neuspela funkcija pa_stream_update_timing_info(): %s\n"
# Šta da radimo sa downmix i upmix. Preslikaj naviše i preslikaj naniže? -- Igor
@@ -1561,34 +1411,34 @@ msgstr ""
"Kompajlirano sa libpulse %s\n"
"Povezano sa libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "Neispravna mapa kanala â%sâ\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "Neispravan naÄin diskretizacije â%sâ."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "Neispravna mapa kanala â%sâ\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "Neispravan parametar kaÅ¡njenja â%sâ\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "Neispravan parametar za vreme procesa â%sâ\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Neispravan naÄin diskretizacije â%sâ."
#: ../src/utils/pacat.c:878
@@ -1597,60 +1447,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "Neispravni parametri uzorka\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "Previše parametara.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Nije uspelo dobavljanje podataka o uzorku: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Nije uspelo otvaranje zvuÄne datoteke.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "Otvaram tok %s sa sledeÄim parametrima uzorka â%sâ.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "Nije uspelo dobavljanje podataka o uzorku: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "Otvaram tok %s sa sledeÄim parametrima uzorka â%sâ.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "Mapa kanala se ne poklapa sa parametrima uzorka\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "Otvaram tok %s sa sledeÄim parametrima uzorka â%sâ.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "Otvaram tok %s sa sledeÄim parametrima uzorka â%sâ.\n"
#: ../src/utils/pacat.c:1006
@@ -1661,35 +1517,34 @@ msgstr "snima"
msgid "playback"
msgstr "pušta"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "Neuspela funkcija pa_mainloop_new().\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "Neuspela funkcija io_new() \n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "Neuspela funkcija pa_context_new().\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "Neuspela funkcija pa_context_connect(): %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "Neuspela funkcija time_new() \n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "Neuspela funkcija pa_context_new().\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "Neuspela funkcija pa_mainloop_run().\n"
#: ../src/utils/pasuspender.c:81
@@ -1717,6 +1572,11 @@ msgstr "Neuspešno nastavljanje: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "UPOZORENJE: ZvuÄni server nije lokalni, ne zaustavljam.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Neuspešno povezivanje: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1756,6 +1616,21 @@ msgstr ""
"Kompajlirano sa libpulse %s\n"
"Povezano sa libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "Neuspela funkcija pa_mainloop_new().\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "Neuspela funkcija pa_context_new().\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "Neuspela funkcija pa_mainloop_run().\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2170,6 +2045,11 @@ msgstr ""
"Kompajlirano sa libpulse %s\n"
"Povezano sa libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "Neispravna mapa kanala â%sâ\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "Navedite datoteku uzorka koju treba uÄitati\n"
@@ -2178,6 +2058,11 @@ msgstr "Navedite datoteku uzorka koju treba uÄitati\n"
msgid "Failed to open sound file.\n"
msgstr "Nije uspelo otvaranje zvuÄne datoteke.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Nije uspelo dobavljanje podataka o uzorku: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2237,11 +2122,6 @@ msgstr "Morate navesti ime/indeks kartice i ime profila\n"
msgid "No valid command specified.\n"
msgstr "Ni jedna ispravna naredba nije navedena.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "Neuspela funkcija pa_context_connect(): %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2361,11 +2241,11 @@ msgid "write(): %s"
msgstr "write(): %s"
# Kako prevesti autospawn (moguÄnost pravljenja ili pokretanja procesa iz istog) -- Igor
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Nije moguÄe pristupiti datoteci zakljuÄavanja za samoumnožavanje."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2382,7 +2262,7 @@ msgstr ""
"ProbuÄeni smo sa postavljenim POLLOUT-om -- ali sledeÄi snd_pcm_avail() je "
"vratio 0 ili neku drugu vrednost manju od min_avail."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2400,15 +2280,15 @@ msgstr ""
"vratio 0 ili neku drugu vrednost manju od min_avail."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "IskljuÄeno"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "Reprodukcija visoke taÄnosti (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "Dvostrano telefoniranje (HSP/HFP)"
@@ -2416,6 +2296,141 @@ msgstr "Dvostrano telefoniranje (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio zvuÄni sistem"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Nije se moguÄe prikljuÄiti na sistemsku magistralu: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Ne mogu dobaviti pozivnika iz PID-a: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Ne mogu postaviti UID za pozivniÄki objekat."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Neuspešno dobavljanje CK sesije."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Ne mogu postaviti UID za objekat sesije."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Ne mogu postaviti PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Ne mogu postaviti action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Ne mogu postaviti PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Ne mogu inicijalizovati PolKitContex: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Nije moguÄe odrediti ovlaÅ¡Äenje pozivnika: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Ne mogu dobiti ovlaÅ¡Äenje: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit je odgovorio sa â%sâ"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "Visokoprioritetno rasporeÄivanje (negativni Unix nivoi finoÄe, tj. nice "
+#~ "nivoi) za PulseAudio demona"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "Stvarnovremensko rasporeÄivanje za PulseAudio demona"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Sistemska politika spreÄava PulseAudiu da dobije visokoprioritetno "
+#~ "rasporeÄivanje."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr ""
+#~ "Sistemska politika spreÄava PulseAudiu da dobije stvarnovremensko "
+#~ "rasporeÄivanje."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "Neuspela funkcija read(): %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "Neuspela funkcija pa_context_connect(): %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Nalazimo se u grupi â%sâ koja dozvoljava visokoprioritetno rasporeÄivanje."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Nalazimo se u grupi â%sâ koja dozvoljava stvarnovremensko rasporeÄivanje."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit nam je dao ovlaÅ¡Äenje za dobijanje visokog prioriteta."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit odbija ovlaÅ¡Äenje za dobijanje visokog prioriteta."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr ""
+#~ "PolicyKit nam je dao ovlaÅ¡Äenje za dobijanje rada u stvarnom vremenu."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit odbija ovlaÅ¡Äenje za dobijanje rada u stvarnom vremenu."
+
+#
+#~ 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 ""
+#~ "SUID root i stvarnovremensko i/ili visokoprioritetno rasporeÄivanje je "
+#~ "zahtevano u podeÅ¡avanjima. MeÄutim, nemamo potrebna ovlaÅ¡Äenja:\n"
+#~ "nismo u grupi â%sâ, PolicyKit odbija da nam daÌ tražena ovlaÅ¡Äenja i "
+#~ "nemamo sredstava za poveÄanje RLIMIT_NICE/RLIMIT_RTPRIO ograniÄenja.\n"
+#~ "Morate dobiti odgovarajuÄa PolicyKit ovlaÅ¡Äenja, ili postati Älan grupe â%"
+#~ "sâ, ili poveÄati ograniÄenja za RLIMIT_NICE/RLIMIT_RTPRIO sredstva ovog "
+#~ "korisnika kako bi omoguÄili stvarnovremensko ili visokoprioritetno "
+#~ "rasporeÄivanje."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "Visokoprioritetno rasporeÄivanje je omoguÄeno u podeÅ¡avanjima, ali "
+#~ "politika to ne dozvoljava."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "UspeÅ¡no poveÄano RLIMIT_RTPRIO ograniÄenje"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "Neuspešno postavljanje RLIMIT_RTPRIO-a:%s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "Odustajem od CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "Stvarnovremensko rasporeÄivanje je omoguÄeno u podeÅ¡avanjima, ali "
+#~ "politika to ne dozvoljava."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "UspeÅ¡no ograniÄio moguÄnosti na CAP_SYS_NICE."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "Neuspela funkcija time_new() \n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analogni mono"
diff --git a/po/sv.po b/po/sv.po
index 3f91c9ae..3bf80f2c 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2008-09-05 18:24+0100\n"
"Last-Translator: Daniel Nylander \n"
"Language-Team: Swedish \n"
@@ -15,7 +15,12 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -24,7 +29,7 @@ msgid ""
"to the ALSA developers."
msgstr ""
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -33,7 +38,7 @@ msgid ""
"to the ALSA developers."
msgstr ""
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -55,7 +60,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
#, fuzzy
msgid "Internal Audio"
msgstr "Internt fel"
@@ -77,208 +82,92 @@ msgstr "Misslyckades med att öppna ljudfil.\n"
msgid "Failed to add bind-now-loader."
msgstr ""
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr ""
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr ""
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr ""
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr ""
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr ""
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr ""
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr ""
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit svarade med \"%s\""
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "Fick signal %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "Avslutar."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Misslyckades med att hitta användaren \"%s\"."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Misslyckades med att hitta gruppen \"%s\"."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr ""
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr ""
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "Hemkatalogen för användaren \"%s\" är inte \"%s\", ignorerar."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Misslyckades med att skapa \"%s\": %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr ""
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr ""
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr ""
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr ""
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr ""
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) misslyckades: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr ""
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr ""
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr ""
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO misslyckades: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr ""
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr ""
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr ""
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr ""
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -286,151 +175,151 @@ msgstr ""
"Detta program är inte tänkt att köras som root (såvida inte --system har "
"angivits)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
#, fuzzy
msgid "Root privileges required."
msgstr "Root-behörighet krävs."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start stöds inte för systeminstanser."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr ""
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr ""
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "pipe misslyckades: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() misslyckades: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() misslyckades: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr ""
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr ""
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Detta är PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr ""
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr ""
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr ""
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr ""
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr ""
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr ""
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr ""
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr ""
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr ""
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr ""
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr ""
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr ""
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr ""
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, c-format
msgid "Session ID is %s."
msgstr ""
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr ""
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr ""
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr ""
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -440,41 +329,41 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() misslyckades."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr ""
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr ""
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() misslyckades."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr ""
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr ""
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr ""
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr ""
@@ -739,15 +628,11 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr ""
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
#, fuzzy
msgid "Dropping root privileges."
msgstr "Släpper root-behörighet."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr ""
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr ""
@@ -756,24 +641,6 @@ msgstr ""
msgid "Start the PulseAudio Sound System"
msgstr ""
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Mono"
@@ -1147,183 +1014,184 @@ msgstr ""
msgid "Failed to open configuration file '%s': %s"
msgstr "Misslyckades med att öppna konfigurationsfilen \"%s\": %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr ""
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr ""
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
+msgstr "Misslyckades med att hitta användaren \"%s\"."
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+msgid "Playback stream drained."
msgstr ""
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+msgid "Draining connection to server."
msgstr ""
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() misslyckades: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() misslyckades: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() misslyckades: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+msgid "Stream successfully created."
msgstr ""
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() misslyckades: %s\n"
-#: ../src/utils/pacat.c:309
+#: ../src/utils/pacat.c:314
#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr ""
-#: ../src/utils/pacat.c:312
+#: ../src/utils/pacat.c:317
#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr ""
-#: ../src/utils/pacat.c:316
+#: ../src/utils/pacat.c:321
#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+msgid "Using sample spec '%s', channel map '%s'."
msgstr ""
-#: ../src/utils/pacat.c:320
+#: ../src/utils/pacat.c:325
#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr ""
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Strömfel: %s\n"
-#: ../src/utils/pacat.c:340
+#: ../src/utils/pacat.c:345
#, c-format
-msgid "Stream device suspended.%s \n"
+msgid "Stream device suspended.%s"
msgstr ""
-#: ../src/utils/pacat.c:342
+#: ../src/utils/pacat.c:347
#, c-format
-msgid "Stream device resumed.%s \n"
+msgid "Stream device resumed.%s"
msgstr ""
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
-msgstr ""
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
+msgstr "Strömfel: %s\n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
-msgstr ""
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
+msgstr "Strömfel: %s\n"
-#: ../src/utils/pacat.c:364
+#: ../src/utils/pacat.c:369
#, c-format
-msgid "Stream started.%s \n"
+msgid "Stream started.%s"
msgstr ""
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr ""
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "inte "
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+msgid "Stream buffer attributes changed.%s"
msgstr ""
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
-msgstr ""
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
+msgstr "Anslutning etablerad.\n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() misslyckades: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() misslyckades: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() misslyckades: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "Anslutningsfel: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "Fick filslut.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() misslyckades: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "Fick filslut.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() misslyckades: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
-msgstr ""
-
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
-msgstr ""
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
+msgstr "Fick signal %s."
#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
+msgstr "Misslyckades med att få statistik: %s\n"
+
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Tid: %0.3f sec; Latens: %0.0f ms \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() misslyckades: %s\n"
#: ../src/utils/pacat.c:605
@@ -1394,34 +1262,34 @@ msgid ""
"Linked with libpulse %s\n"
msgstr ""
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
-#, c-format
-msgid "Invalid client name '%s'\n"
-msgstr ""
+#: ../src/utils/pacat.c:760
+#, fuzzy, c-format
+msgid "Invalid client name '%s'"
+msgstr "Ogiltig server"
#: ../src/utils/pacat.c:776
-#, c-format
-msgid "Invalid stream name '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid stream name '%s'"
+msgstr "Ogiltig server"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
+msgstr "Ogiltig server"
#: ../src/utils/pacat.c:842
#, c-format
-msgid "Invalid latency specification '%s'\n"
+msgid "Invalid latency specification '%s'"
msgstr ""
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
-msgstr ""
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
+msgstr "Ogiltig server"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "Ogiltig server"
#: ../src/utils/pacat.c:878
@@ -1430,59 +1298,63 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
-msgstr ""
+#, fuzzy
+msgid "Invalid sample specification"
+msgstr "Misslyckades med att få modulinformation: %s\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "För många argument.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Misslyckades med att få modulinformation: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Misslyckades med att öppna ljudfil.\n"
#: ../src/utils/pacat.c:956
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
+"specification from file."
msgstr ""
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
-msgid "Failed to determine sample specification from file.\n"
-msgstr ""
+#: ../src/utils/pacat.c:959
+#, fuzzy
+msgid "Failed to determine sample specification from file."
+msgstr "Misslyckades med att få modulinformation: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
+msgid "Warning: Failed to determine channel map from file."
msgstr ""
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
-msgstr ""
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
+msgstr "Misslyckades med att få modulinformation: %s\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
+msgid "Warning: failed to write channel map to file."
msgstr ""
#: ../src/utils/pacat.c:1005
#, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr ""
#: ../src/utils/pacat.c:1006
@@ -1493,35 +1365,34 @@ msgstr ""
msgid "playback"
msgstr ""
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() misslyckades.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() misslyckades.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() misslyckades.\n"
-#: ../src/utils/pacat.c:1066
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_new() misslyckades.\n"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() misslyckades.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() misslyckades.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() misslyckades.\n"
#: ../src/utils/pasuspender.c:81
@@ -1549,6 +1420,11 @@ msgstr ""
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr ""
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "Anslutningsfel: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1582,6 +1458,21 @@ msgstr ""
"Kompilerad med libpulse %s\n"
"Länkad med libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() misslyckades.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() misslyckades.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() misslyckades.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -1874,6 +1765,11 @@ msgstr ""
"Kompilerad med libpulse %s\n"
"Länkad med libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, c-format
+msgid "Invalid client name '%s'\n"
+msgstr ""
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr ""
@@ -1882,6 +1778,10 @@ msgstr ""
msgid "Failed to open sound file.\n"
msgstr "Misslyckades med att öppna ljudfil.\n"
+#: ../src/utils/pactl.c:944
+msgid "Failed to determine sample specification from file.\n"
+msgstr ""
+
#: ../src/utils/pactl.c:951
msgid "Warning: Failed to determine sample specification from file.\n"
msgstr ""
@@ -1938,11 +1838,6 @@ msgstr ""
msgid "No valid command specified.\n"
msgstr ""
-#: ../src/utils/pactl.c:1122
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_new() misslyckades.\n"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2052,11 +1947,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr ""
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2067,7 +1962,7 @@ msgid ""
"returned 0 or another value < min_avail."
msgstr ""
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2079,15 +1974,15 @@ msgid ""
msgstr ""
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr ""
@@ -2095,8 +1990,21 @@ msgstr ""
msgid "PulseAudio Sound Server"
msgstr ""
-#~ msgid "Connection established.\n"
-#~ msgstr "Anslutning etablerad.\n"
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit svarade med \"%s\""
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() misslyckades: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_new() misslyckades.\n"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO misslyckades: %s"
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() misslyckades.\n"
#~ msgid ""
#~ "paplay %s\n"
diff --git a/po/ta.po b/po/ta.po
index a10b0168..73da25ed 100644
--- a/po/ta.po
+++ b/po/ta.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.pulseaudio\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-12 05:02+0530\n"
"Last-Translator: I. Felix \n"
"Language-Team: Tamil \n"
@@ -34,7 +34,12 @@ msgstr ""
"\n"
"\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -47,7 +52,7 @@ msgstr ""
"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
"to the ALSA developers."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -60,7 +65,7 @@ msgstr ""
"Most likely this is a bug in the ALSA driver '%s'. Please report this issue "
"to the ALSA developers."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -86,7 +91,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à®à®à¯à®ªà¯à®± à®à®à®¿à®¯à¯"
@@ -106,373 +111,242 @@ msgstr "பà¯à®¤à®¿à®¯ dl à®à®±à¯à®±à¯à®ªà®µà®°à¯ à®à®¤à¯à®à¯à®à®¿à®°
msgid "Failed to add bind-now-loader."
msgstr "à®à®ªà¯à®ªà¯à®¤à¯ பிணà¯à®à¯à®à¯à®®à¯ à®à®±à¯à®ªà®¿à®¯à¯ à®à¯à®°à¯à®ªà¯à®ªà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "à®à®£à®¿à®©à®¿ பஸà¯à®¸à¯ à®à®£à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID லிரà¯à®¨à¯à®¤à¯ à®
à®´à¯à®ªà¯à®ªà®¾à®³à®°à¯ பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "UID à®à¯à®à¯ à®
à®´à¯à®ªà¯à®ªà®¾à®³à®°à¯ பà¯à®°à¯à®³à¯ à®
à®®à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK à®
மரà¯à®µà¯ பà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "à®
மரà¯à®µà¯ பà¯à®°à¯à®³à®¿à®²à¯ UIDà® à®
à®®à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitActionà® à®à®¤à¯à®à¯à® à®à®¯à®²à®µà®¿à®²à¯à®²à¯."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "à®à¯à®¯à®²à¯ à®
à®®à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯ (_i)"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContextà® à®à®à®à¯à®à®¿à® à®®à¯à®à®¿à®¯à®à®µà®¿à®²à¯à®²à¯."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext஠தà¯à®µà®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "à®
à®´à¯à®ªà¯à®ªà®¾à®³à®°à¯ à®
à®à¯à®à¯à®à®°à®¿à®à¯à®à®ªà¯à®ªà®à¯à®à®µà®°à®¾ à®à®©à¯à®ªà®¯à¯ நிà®à¯à®à®¯à®¿à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "auth஠பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "'%s'à®à®à®©à¯ பாலிஸிà®à®¿à®à¯ à®à®¤à¯à®¤à¯à®ªà¯à®à®¿à®±à®¤à¯"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "%sà®à¯à®à¯ à®à®¿à®à¯à®©à®²à¯ à®à®¿à®à¯à®¤à¯à®¤à¯à®µà®¿à®à¯à®à®¤à¯."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "வà¯à®³à®¿à®¯à¯à®±à¯à®¤à®²à¯."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "'%s' பயனர௠à®à®£à¯à®à¯à®ªà®¿à®à®¿à®ªà¯à®ªà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "'%s' à®à¯à®´à¯à®µà¯ à®à®£à¯à®à¯à®ªà®¿à®à®¿à®ªà¯à®ªà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "'%s'பயனர௠à®à®£à¯à®à¯à®ªà®¿à®à®¿à®à¯à®à®ªà¯à®ªà®à¯à®à®¾à®°à¯ (UID %lu) மறà¯à®±à¯à®®à¯ à®à¯à®´à¯ '%s' (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID ன௠பயனர௠'%s' மறà¯à®±à¯à®®à¯ '%s' à®à¯à®´à¯à®µà¯à®à®©à¯ à®à®¤à¯à®¤à¯ பà¯à®à®µà®¿à®²à¯à®²à¯."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "à®®à¯à®à®ªà¯à®ªà¯ à®
à®à¯à®µà¯ பயனரான'%s' '%s'à®à®²à¯, பà¯à®±à®à¯à®à®£à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s'à® à®à®°à¯à®µà®¾à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "à®à¯à®´à¯à®ªà¯ பà®à¯à®à®¿à®¯à®²à¯ மாறà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GIDà®à¯à®à¯ மாறà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UIDà®à¯à®à¯ மாறà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "à®°à¯à®à¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ வà¯à®±à¯à®±à®¿à®à®°à®®à®¾à® விà®à®ªà¯à®ªà®à¯à®à®¤à¯."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "à®à®¨à¯à®¤ தளதà¯à®¤à®¿à®²à¯ à®à®£à®¿à®©à®¿à®¯à®¿à®©à¯ திறநà¯à®¤ à®®à¯à®±à¯à®®à¯ தà¯à®£à¯à®ªà¯à®°à®¿à®¯à®µà®¿à®²à¯à®²à¯."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à®à®à¯à®à®³à¯ வரிய௠மாறà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"நாம௠à®à¯à®´à¯ '%s'ல௠à®à®°à¯à®¨à¯à®¤ பà¯à®¤à¯ , à®à®¯à®°à¯à®¨à¯à®¤ à®®à¯à®¤à®©à¯à®®à¯ à®
à®à¯à®à®µà®£à¯à®ªà¯à®ªà®à¯à®¤à¯à®¤ à®
னà¯à®®à®¤à®¿ "
-"à®
ளிà®à¯à®à®ªà¯à®ªà®à¯à®à®¿à®°à¯à®¨à¯à®¤à®¤à¯."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "à®à¯à®´à¯ '%s'à®à®²à¯ à®à®°à¯à®à¯à®à®¿à®±à¯à®®à¯, நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ à®
னà¯à®®à®¤à®¿à®à¯à®à®¿à®±à®¤à¯."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "நமà®à¯à®à®¾à® PolicyKit à®à®¯à®°à¯à®¨à¯à®¤ à®®à¯à®à¯à®à®¿à®¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®¯à¯ வழà®à¯à®à¯à®à®¿à®±à®¤à¯."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit à®à®¯à®°à¯à®¨à¯à®¤ à®®à¯à®à¯à®à®¿à®¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®¯à¯ மறà¯à®à¯à®à®¿à®±à®¤à¯."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit acquire-real-time à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ à®à¯à®à¯à®à¯à®à®¿à®±à®¤à¯."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit acquire-real-time à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ நிராà®à®°à®¿à®à¯à®à®¿à®±à®¤à¯."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"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."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"à®à®¯à®°à¯à®¨à¯à®¤ à®à®²à¯à®à¯à®à®³à®¿à®©à¯ à®
à®à¯à®à®µà®£à¯à®¯à¯ à®à®à¯à®à®®à¯à®ªà¯à®ªà®¿à®²à¯ à®à¯à®¯à®²à¯à®ªà®à¯à®¤à¯à®¤à®ªà¯à®ªà®à¯à®à®¤à¯ à®à®©à®¾à®²à¯ பாலிà®à®¿à®¯à®¾à®²à¯ "
-"à®
னà¯à®®à®¤à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "வà¯à®±à¯à®±à®¿à®à®°à®®à®¾à® à®
திà®à®°à®¿à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯ RLIMIT_RTPRIO"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr ""
-"CAP_NICEà® à®®à¯à®²à¯ à®à¯à®à¯à®à¯à®à®¿à®±à®¤à¯ (_N\n"
-")"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ à®à®à¯à®à®®à¯à®ªà¯à®ªà®¿à®²à¯ à®à¯à®¯à®²à¯à®ªà®à¯à®¤à¯à®¤à®ªà¯à®ªà®à¯à®à®¤à¯ à®à®©à®¾à®²à¯ à®à¯à®³à¯à®à¯à®¯à®¾à®²à¯ à®
னà¯à®®à®¤à®¿à®à¯à®à®ªà¯à®ªà®à¯à®µà®¤à®¿à®²à¯à®²à¯"
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "à®à¯à®®à¯à®©à¯ à®à®¯à®à¯à®à®µà®¿à®²à¯à®²à¯"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "PID %uவா஠à®à¯à®®à¯à®©à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "à®à¯à®®à¯à®©à¯à®à¯à®à¯ à®®à¯à®à®¿à®µà¯ à®à®à¯à®à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr "à®à®¨à¯à®¤ நிரல௠ரà¯à®à¯à®à®¾à® à®à®¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯ (--system à®à¯à®±à®¿à®ªà¯à®ªà®¿à®à®¾à®¤ வரà¯)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "à®°à¯à®à¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ தà¯à®µà¯à®ªà¯à®ªà®à¯à®à®¿à®±à®¤à¯."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start à®à®£à®¿à®©à®¿ நிà®à®´à¯à®µà®¿à®²à¯ தà¯à®£à¯à®ªà¯à®°à®¿à®¯à®µà®¿à®²à¯à®²à¯."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "à®à®£à®¿à®©à®¿ à®®à¯à®±à¯à®®à¯à®¯à®¿à®²à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯, à®à®©à®¾à®²à¯ --disallow-exit à®
à®®à¯à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"à®à®£à®¿à®©à®¿ à®®à¯à®±à¯à®®à¯à®¯à®¿à®²à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯, à®à®©à®¾à®²à¯ --disallow-module-loading à®
à®®à¯à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "à®à®£à®¿à®©à®¿ à®®à¯à®±à¯à®®à¯à®¯à®¿à®²à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯, SHM à®®à¯à®±à¯à®®à¯ à®à¯à®¯à®²à¯à®¨à¯à®à¯à®à¯à®¤à®²à¯ à®à®à¯à®à®¾à®¯à®ªà¯à®ªà®à¯à®¤à¯à®¤à¯à®à®¿à®±à®¤à¯!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "à®à®£à®¿à®©à®¿ à®®à¯à®±à¯à®®à¯à®¯à®¿à®²à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯, வà¯à®±à¯à®®à¯ நà¯à®°à®¤à¯à®¤à¯ à®à¯à®¯à®²à¯à®¨à¯à®à¯à® à®à®à¯à®à®¾à®¯à®ªà¯à®ªà®à¯à®¤à¯à®¤à¯à®à®¿à®±à®¤à¯!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio஠பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "பà¯à®ªà¯ தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "வாà®à®¿à®ªà¯à®ªà®¤à®¿à®²à¯() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "à®à¯à®®à¯à®©à¯ தà¯à®µà®à¯à®à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "à®à¯à®®à¯à®©à¯ வà¯à®±à¯à®±à®¿à®à®°à®®à®¾à® தà¯à®µà®à¯à®à®à®ªà¯à®ªà®à¯à®à®¤à¯."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à®à®¤à¯ தான௠பளà¯à®¸à¯ à®à®à®¿à®¯à¯ %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "தà¯à®à¯à®à¯à®à®ªà¯à®ªà®à¯à® பà¯à®°à®µà®²à®©à¯: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "தà¯à®à¯à®ªà¯à®ªà¯ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "பà¯à®°à®µà®²à®©à®¾à® à®à®¯à®à¯à®à¯à®à®¿à®±à®¤: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "CPUs %uவில௠à®à®¾à®£à®ªà¯à®ªà®à¯à®à®¿à®±à®¤à¯ ."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "பà®à¯à® à®
ளவà¯à®à®³à¯ %lu பà¯à®à¯à®¸à¯"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Compiled with Valgrind support: yes"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Compiled with Valgrind support: no"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind à®®à¯à®±à¯à®®à¯à®¯à®¿à®²à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "Optimized build: yes"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "à®à¯à®°à¯à®à¯à®à®®à®¾à®© à®à®°à¯à®µà®¾à®à¯à®à®®à¯: à®à®²à¯à®²à¯"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr ""
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "à®à®£à®¿à®©à®¿ à®à¯à®±à®¿à®¯à¯à®à¯ பà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "à®à®£à®¿à®©à®¿ à®à¯à®±à®¿à®¯à¯à®à¯ %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "à®à®£à®¿à®©à®¿ à®à¯à®±à®¿à®¯à¯à®à¯ %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "à®à®à¯à®®à¯à®¨à¯à®°à®®à¯ %s à®
à®à¯à®µà¯ பயனà¯à®ªà®à¯à®¤à¯à®¤à¯à®à®¿à®±à®¤à¯."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "%s நில௠à®
à®à¯à®µà®¿à®©à¯ பயனà¯à®ªà®à¯à®¤à¯à®¤à¯à®à®¿à®±à®¤à¯."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "à®à®£à®¿à®©à®¿à®¯à®¿à®©à¯ à®®à¯à®±à¯à®®à¯à®¯à®¿à®²à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -482,15 +356,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "à®à®¯à®°à¯à®¨à¯à®¤ திரà¯à®¤à¯à®¤à®¿à®±à®©à¯ நà¯à®°à®®à¯à®à®¾à®à¯à®à®¿ à®à®¿à®à¯à®à¯à®à®¿à®³à®¤à¯! Bon appetit!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -498,27 +372,27 @@ msgstr ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "à®à¯à®®à¯à®©à¯ à®à®°à®®à¯à®ªà®¿à®ªà¯à®ªà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "à®à¯à®®à®¾à®©à¯ தà¯à®µà®à¯à®à®®à¯ à®à®¨à¯à®¤ தà¯à®à¯à®¤à®¿à®à®³à¯à®®à¯ à®à®±à¯à®±à®ªà¯à®ªà®à®¾à®®à®²à¯, வà¯à®²à¯à®¯à¯ நிராà®à®°à®¿à®à¯à®à®¿à®±à®¤à¯."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "à®à¯à®®à¯à®©à¯ தà¯à®µà®à¯à®à¯à®µà®¤à¯ à®®à¯à®à®¿à®µà®à¯à®¨à¯à®¤à®¤à¯."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "à®à¯à®®à¯à®©à¯ பணிநிறà¯à®¤à¯à®¤à®®à¯ à®®à¯à®©à¯à®à®¿à®±à®¤à¯."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "à®à¯à®®à¯à®©à¯ நà¯à®à¯à®à®ªà¯à®ªà®à¯à®à¯à®¤à¯."
@@ -853,14 +727,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### à®à®à¯à®à®®à¯à®ªà¯à®ªà¯ à®à¯à®ªà¯à®ªà®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ வாà®à®¿à®à¯à®à®µà¯à®®à¯: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "à®°à¯à®à¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ விà®à¯à®ªà®à¯à®à®¿à®±à®¤à¯."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "à®à¯à®±à®¿à®ªà¯à®ªà®¿à®à¯à® திறனà¯à®à®³à¯ CAP_SYS_NICEà®à¯à®à¯ à®
à®®à¯à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "பளà¯à®¸à¯ à®à®à®¿à®¯à¯ à®à®²à®¿ à®à®£à®¿à®©à®¿"
@@ -869,26 +739,6 @@ msgstr "பளà¯à®¸à¯ à®à®à®¿à®¯à¯ à®à®²à®¿ à®à®£à®¿à®©à®¿"
msgid "Start the PulseAudio Sound System"
msgstr "பளà¯à®¸à¯ à®à®à®¿à®¯à¯ à®à®²à®¿ à®à®£à®¿à®©à®¿à®¯à¯ தà¯à®µà®à¯à®à®µà¯à®®"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-"à®
தி஠மà¯à®©à¯à®©à¯à®°à®¿à®®à¯à®¯à¯à®³à¯à®³ திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ (negative Unix nice level) PulseAudio daemonà®à¯à®à¯"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio daemonà®à¯à®à®¾à®© நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"à®à®£à®¿à®©à®¿ à®à¯à®³à¯à®à¯ PulseAudioà® à®
தி஠மà¯à®©à¯à®©à¯à®°à®¿à®®à¯ திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ பà¯à®±à¯à®µà®¤à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ தà®à¯à®à¯à®à®¿à®±à®¤à¯."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "à®à®£à®¿à®©à®¿ à®à¯à®³à¯à®à¯ PulseAudio ஠நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ à®à®à¯à®à¯à®à®¿à®±à®¤à¯."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "à®®à¯à®©à¯"
@@ -1261,183 +1111,187 @@ msgstr "à®à¯à®à¯à®à¯ தரவ௠மாறà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯
msgid "Failed to open configuration file '%s': %s"
msgstr "'%s'à®à®à¯à®à®®à¯à®à¯à®à®ªà¯à®ªà®à¯à® à®à¯à®ªà¯à®ªà®¿à®©à¯ திறà®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à®à¯à®à¯à®à®¿ à®à®±à¯à®±à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯. à®à®£à¯à®ªà¯à®ªà®¿à®²à¯à®²à®¾à®®à®²à¯ à®®à¯à®¯à®±à¯à®à®¿à®à¯à®à®¿à®±à®¤à¯."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "தà¯à®°à®¿à®¯à®¾à®¤ தà¯à®à®°à®¿à®à¯à®à®¿à®¯à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ '%s'à®à¯à®à¯ à®à¯à®¯à¯à®¤à®¿à®à®³à¯ பà¯à®±à®ªà¯à®ªà®à¯à®à®©"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "ஸà¯à®à¯à®°à®¿à®®à¯ à®à¯à®°à¯à®©à¯ à®à¯à®¯à¯à®¯ à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "à®à¯à®°à¯à®©à¯ à®à¯à®¯à¯à®¯à®ªà¯à®ªà®à¯à® ஸà¯à®à¯à®°à®¿à®®à¯.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "à®à¯à®°à¯à®©à¯ à®à¯à®¯à¯à®¯à¯à®®à¯ à®à®£à¯à®ªà¯à®ªà¯ à®à¯à®µà¯à®¯à®à®¤à¯à®¤à®¿à®±à¯à®à¯.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "ஸà¯à®à®¿à®°à¯à®®à¯ வà¯à®±à¯à®±à®¿à®à®°à®®à®¾à® à®à®°à¯à®µà®¾à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Buffer metrics: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "à®à¯à®±à®¿à®ªà¯à®ªà®¿à®à¯à® à®à¯à®±à®¿à®ªà¯à®ªà¯ '%s', à®à¯à®©à®²à¯ à®®à¯à®ªà¯ '%s'஠பயனà¯à®ªà®à¯à®¤à¯à®¤à®¿.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "%s à®à®¾à®¤à®©à®¤à¯à®¤à¯à®à®©à¯ à®à®£à¯à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯ (%u, %ssuspended).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "ஸà¯à®à®¿à®°à¯à®®à¯ பிழà¯: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "ஸà¯à®à¯à®°à®¿à®®à¯ à®à®¾à®¤à®©à®®à¯ à®à®à¯à®¨à¯à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "ஸà¯à®à¯à®°à®¿à®®à¯ à®à®¾à®¤à®©à®®à¯ தà¯à®à®°à¯à®à®¿à®±à®¤à¯.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ஸà¯à®à¯à®°à®¿à®®à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "ஸà¯à®à¯à®°à®¿à®®à¯ à®
திà®à®³à®µà¯ à®à®¯à®à¯à®à®¿à®¯à®¤à¯.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "ஸà¯à®à®¿à®°à¯à®®à¯ %s தà¯à®µà®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯ \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "ஸà¯à®à®¿à®°à¯à®®à¯ %s à®à®¯à®à¯à®à®¿à®à¯à®à¯ நà®à®°à¯à®¨à¯à®¤à®¤à¯ (%u, %ssuspended).%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "à®à®²à¯à®²à¯"
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, fuzzy, c-format
-msgid "Stream buffer attributes changed.%s \n"
+msgid "Stream buffer attributes changed.%s"
msgstr "ஸà¯à®à¯à®°à®¿à®®à¯ à®à®¯à®à¯à®à¯à®à®¿à®±à®¤à¯.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "à®à®£à¯à®ªà¯à®ªà¯ தà¯à®µà®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "à®à®£à¯à®ªà¯à®ªà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF à®à®¿à®à¯à®à¯à®à®ªà¯ பà¯à®±à¯à®±à®¤à¯\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "வாà®à®¿à®ªà¯à®ªà®¤à®¿à®²à¯ () தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF à®à®¿à®à¯à®à¯à®à®ªà¯ பà¯à®±à¯à®±à®¤à¯\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "à®à®´à¯à®¤à¯à®µà®¤à®¿à®²à¯ () தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "à®à®¿à®à¯à®©à®²à¯ à®à®¿à®à¯à®¤à¯à®¤à®¤à¯, வà¯à®³à®¿à®¯à¯à®±à¯à®à®¿à®±à®¤à¯.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "லà®à®©à¯à®à®¿à®¯à¯ பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "Time: %0.3f sec; Latency: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() தà¯à®²à¯à®µà®¿: %s\n"
#: ../src/utils/pacat.c:605
@@ -1559,34 +1413,34 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "தவறான à®à¯à®©à®²à¯ வரà¯à®ªà®à®®à¯ '%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "தவறான மறà¯à®®à®¾à®¤à®¿à®°à®¿ à®®à¯à®±à¯ '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "தவறான à®à¯à®©à®²à¯ வரà¯à®ªà®à®®à¯ '%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "தவறான லà¯à®à®©à¯à®à®¿ à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯ '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "தவறான à®à¯à®¯à®²à¯ நà¯à®° à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "தவறான மறà¯à®®à®¾à®¤à®¿à®°à®¿ à®®à¯à®±à¯ '%s'."
#: ../src/utils/pacat.c:878
@@ -1595,60 +1449,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "தவறான மாதிரி à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "நிறà¯à®¯ விவாதà®à¯à®à®³à¯.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "மாதிரி தà®à®µà®²à¯ பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯.: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "à®à®²à®¿ à®à¯à®ªà¯à®ªà®¿à®©à¯ திறà®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "à®à®°à¯ %s ஸà¯à®à¯à®°à®®à¯ மாதிரி à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯ '%s'à®à®à®©à¯ திறà®à¯à®à®¿à®±à®¤à¯.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "மாதிரி தà®à®µà®²à¯ பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯.: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "à®à®°à¯ %s ஸà¯à®à¯à®°à®®à¯ மாதிரி à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯ '%s'à®à®à®©à¯ திறà®à¯à®à®¿à®±à®¤à¯.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à®à¯à®©à®²à¯ à®®à¯à®ªà¯ மாதிரி à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯à®à¯à®à®©à¯ பà¯à®°à¯à®¨à¯à®¤à®µà®¿à®²à¯à®²à¯\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "à®à®°à¯ %s ஸà¯à®à¯à®°à®®à¯ மாதிரி à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯ '%s'à®à®à®©à¯ திறà®à¯à®à®¿à®±à®¤à¯.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "à®à®°à¯ %s ஸà¯à®à¯à®°à®®à¯ மாதிரி à®à¯à®±à®¿à®ªà¯à®ªà¯à®à¯ '%s'à®à®à®©à¯ திறà®à¯à®à®¿à®±à®¤à¯.\n"
#: ../src/utils/pacat.c:1006
@@ -1659,35 +1519,34 @@ msgstr "à®à®²à®¿à®ªà¯à®ªà®¤à®¿à®µà¯"
msgid "playback"
msgstr "பிணà¯à®£à®©à®¿"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() தà¯à®²à¯à®µà®¿.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_பà¯à®¤à®¿à®¯() தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯.(_n) \n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() தà¯à®²à¯à®µà®¿.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() தà¯à®²à¯à®µà®¿: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() தà¯à®²à¯à®µà®¿.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() தà¯à®²à¯à®µà®¿.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() தà¯à®²à¯à®µà®¿.\n"
#: ../src/utils/pasuspender.c:81
@@ -1715,6 +1574,11 @@ msgstr "தà¯à®à®° à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "à®à®à¯à®à®°à®¿à®à¯à®à¯: à®à®²à®¿ à®à¯à®µà¯à®¯à®®à¯ à®à®³à¯à®³à®®à¯à®µà®¾à® à®à®²à¯à®²à¯, à®à®à¯à®¨à®¿à®±à¯à®¤à¯à®¤à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "à®à®£à¯à®ªà¯à®ªà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1754,6 +1618,21 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() தà¯à®²à¯à®µà®¿.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() தà¯à®²à¯à®µà®¿.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() தà¯à®²à¯à®µà®¿.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2169,6 +2048,11 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "தவறான à®à¯à®©à®²à¯ வரà¯à®ªà®à®®à¯ '%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "à®à®±à¯à®±à¯à®µà®¤à®±à¯à®à¯ à®à®°à¯ மாதிரி à®à¯à®ªà¯à®ªà®¿à®©à¯ à®à¯à®±à®¿à®ªà¯à®ªà®¿à®à®µà¯à®®à¯\n"
@@ -2177,6 +2061,11 @@ msgstr "à®à®±à¯à®±à¯à®µà®¤à®±à¯à®à¯ à®à®°à¯ மாதிரி à®à¯à®ª
msgid "Failed to open sound file.\n"
msgstr "à®à®²à®¿ à®à¯à®ªà¯à®ªà®¿à®©à¯ திறà®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "மாதிரி தà®à®µà®²à¯ பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯.: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2242,11 +2131,6 @@ msgstr ""
msgid "No valid command specified.\n"
msgstr "à®à®°à®¿à®¯à®¾à®© à®à®à¯à®à®³à¯ à®à¯à®±à®¿à®ªà¯à®ªà®¿à®à®ªà®à®µà®¿à®²à¯à®²à¯ \n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() தà¯à®²à¯à®µà®¿: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2363,11 +2247,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "autospawn பà¯à®à¯à®à¯ à®
ணà¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2378,7 +2262,7 @@ msgid ""
"returned 0 or another value < min_avail."
msgstr ""
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2390,15 +2274,15 @@ msgid ""
msgstr ""
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr ""
@@ -2407,6 +2291,140 @@ msgstr ""
msgid "PulseAudio Sound Server"
msgstr "பளà¯à®¸à¯ à®à®à®¿à®¯à¯ à®à®²à®¿ à®à®£à®¿à®©à®¿"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "à®à®£à®¿à®©à®¿ பஸà¯à®¸à¯ à®à®£à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID லிரà¯à®¨à¯à®¤à¯ à®
à®´à¯à®ªà¯à®ªà®¾à®³à®°à¯ பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "UID à®à¯à®à¯ à®
à®´à¯à®ªà¯à®ªà®¾à®³à®°à¯ பà¯à®°à¯à®³à¯ à®
à®®à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK à®
மரà¯à®µà¯ பà¯à®±à¯à®µà®¤à®¿à®²à¯ தà¯à®²à¯à®µà®¿."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "à®
மரà¯à®µà¯ பà¯à®°à¯à®³à®¿à®²à¯ UIDà® à®
à®®à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitActionà® à®à®¤à¯à®à¯à® à®à®¯à®²à®µà®¿à®²à¯à®²à¯."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "à®à¯à®¯à®²à¯ à®
à®®à¯à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯ (_i)"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContextà® à®à®à®à¯à®à®¿à® à®®à¯à®à®¿à®¯à®à®µà®¿à®²à¯à®²à¯."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext஠தà¯à®µà®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "à®
à®´à¯à®ªà¯à®ªà®¾à®³à®°à¯ à®
à®à¯à®à¯à®à®°à®¿à®à¯à®à®ªà¯à®ªà®à¯à®à®µà®°à®¾ à®à®©à¯à®ªà®¯à¯ நிà®à¯à®à®¯à®¿à®à¯à® à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "auth஠பà¯à®± à®®à¯à®à®¿à®¯à®µà®¿à®²à¯à®²à¯: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "'%s'à®à®à®©à¯ பாலிஸிà®à®¿à®à¯ à®à®¤à¯à®¤à¯à®ªà¯à®à®¿à®±à®¤à¯"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr ""
+#~ "à®
தி஠மà¯à®©à¯à®©à¯à®°à®¿à®®à¯à®¯à¯à®³à¯à®³ திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ (negative Unix nice level) PulseAudio "
+#~ "daemonà®à¯à®à¯"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio daemonà®à¯à®à®¾à®© நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "à®à®£à®¿à®©à®¿ à®à¯à®³à¯à®à¯ PulseAudioà® à®
தி஠மà¯à®©à¯à®©à¯à®°à®¿à®®à¯ திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ பà¯à®±à¯à®µà®¤à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ "
+#~ "தà®à¯à®à¯à®à®¿à®±à®¤à¯."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "à®à®£à®¿à®©à®¿ à®à¯à®³à¯à®à¯ PulseAudio ஠நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ à®à®à¯à®à¯à®à®¿à®±à®¤à¯."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "வாà®à®¿à®ªà¯à®ªà®¤à®¿à®²à¯ () தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() தà¯à®²à¯à®µà®¿: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "நாம௠à®à¯à®´à¯ '%s'ல௠à®à®°à¯à®¨à¯à®¤ பà¯à®¤à¯ , à®à®¯à®°à¯à®¨à¯à®¤ à®®à¯à®¤à®©à¯à®®à¯ à®
à®à¯à®à®µà®£à¯à®ªà¯à®ªà®à¯à®¤à¯à®¤ à®
னà¯à®®à®¤à®¿ "
+#~ "à®
ளிà®à¯à®à®ªà¯à®ªà®à¯à®à®¿à®°à¯à®¨à¯à®¤à®¤à¯."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "à®à¯à®´à¯ '%s'à®à®²à¯ à®à®°à¯à®à¯à®à®¿à®±à¯à®®à¯, நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ à®
னà¯à®®à®¤à®¿à®à¯à®à®¿à®±à®¤à¯."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "நமà®à¯à®à®¾à® PolicyKit à®à®¯à®°à¯à®¨à¯à®¤ à®®à¯à®à¯à®à®¿à®¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®¯à¯ வழà®à¯à®à¯à®à®¿à®±à®¤à¯."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit à®à®¯à®°à¯à®¨à¯à®¤ à®®à¯à®à¯à®à®¿à®¯ à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®¯à¯ மறà¯à®à¯à®à®¿à®±à®¤à¯."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit acquire-real-time à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ à®à¯à®à¯à®à¯à®à®¿à®±à®¤à¯."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit acquire-real-time à®®à¯à®©à¯à®©à¯à®°à®¿à®®à¯à®à®³à¯ நிராà®à®°à®¿à®à¯à®à®¿à®±à®¤à¯."
+
+#~ 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 ""
+#~ "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."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "à®à®¯à®°à¯à®¨à¯à®¤ à®à®²à¯à®à¯à®à®³à®¿à®©à¯ à®
à®à¯à®à®µà®£à¯à®¯à¯ à®à®à¯à®à®®à¯à®ªà¯à®ªà®¿à®²à¯ à®à¯à®¯à®²à¯à®ªà®à¯à®¤à¯à®¤à®ªà¯à®ªà®à¯à®à®¤à¯ à®à®©à®¾à®²à¯ பாலிà®à®¿à®¯à®¾à®²à¯ "
+#~ "à®
னà¯à®®à®¤à®¿à®à¯à®à®ªà¯à®ªà®à®µà®¿à®²à¯à®²à¯."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "வà¯à®±à¯à®±à®¿à®à®°à®®à®¾à® à®
திà®à®°à®¿à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯ RLIMIT_RTPRIO"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO தà¯à®²à¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr ""
+#~ "CAP_NICEà® à®®à¯à®²à¯ à®à¯à®à¯à®à¯à®à®¿à®±à®¤à¯ (_N\n"
+#~ ")"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "நிà®à®´à¯à®¨à¯à®° திà®à¯à®à®®à®¿à®à¯à®¤à®²à¯ à®à®à¯à®à®®à¯à®ªà¯à®ªà®¿à®²à¯ à®à¯à®¯à®²à¯à®ªà®à¯à®¤à¯à®¤à®ªà¯à®ªà®à¯à®à®¤à¯ à®à®©à®¾à®²à¯ à®à¯à®³à¯à®à¯à®¯à®¾à®²à¯ "
+#~ "à®
னà¯à®®à®¤à®¿à®à¯à®à®ªà¯à®ªà®à¯à®µà®¤à®¿à®²à¯à®²à¯"
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "à®à¯à®±à®¿à®ªà¯à®ªà®¿à®à¯à® திறனà¯à®à®³à¯ CAP_SYS_NICEà®à¯à®à¯ à®
à®®à¯à®à¯à®à®ªà¯à®ªà®à¯à®à®¤à¯."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() தà¯à®²à¯à®µà®¿.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Analog Mono"
diff --git a/po/te.po b/po/te.po
index d4f79e06..bf3ec2d5 100644
--- a/po/te.po
+++ b/po/te.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx.te\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-08 18:21+0530\n"
"Last-Translator: Krishna Babu K \n"
"Language-Team: Telugu \n"
@@ -21,7 +21,12 @@ msgstr ""
"\n"
"\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -33,7 +38,7 @@ msgstr ""
"సాదారణà°à°à°¾ యిది ALSA à°¡à±à°°à±à°µà°°à± '%s' à°¨à°à°¦à°²à°¿ à°¬à°à± à°à°¾à°µà°à±à°à±à°¨à±. దయà°à±à°¸à°¿ à°¦à±à°¨à°¿à°¨à°¿ ALSA à°
à°à°¿à°µà±à°¦à±à°¦à°¿ à°à°¾à°°à±à°²à°à± "
"నివà±à°¦à°¿à°à°à±à°®à±."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -45,7 +50,7 @@ msgstr ""
"సాదారణà°à°à°¾ యిది ALSA à°¡à±à°°à±à°µà°°à± '%s' à°¨à°à°¦à± à°¬à°à± à°à°¾à°µà°à±à°à±à°¨à± . దయà°à±à°¸à°¿ à°¦à±à°¨à°¿à°¨à°¿ ALSA à°
à°à°¿à°µà±à°¦à±à°¦à°¿à°à°¾à°°à±à°²à° "
"నివà±à°¦à°¿à°à°à±à°®à±."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -69,7 +74,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "à°
à°à°¤à°°à±à°à°¤ à°à°¡à°¿à°¯à±"
@@ -89,364 +94,241 @@ msgstr "à°à±à°¤à±à°¤ dl à°²à±à°¡à°°à± à°à±à°à°¾à°¯à°¿à°à°à±à°à°²à±
msgid "Failed to add bind-now-loader."
msgstr "bind-now-loader à°à°¤à°à±à°¯à±à°à°à± విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "సిసà±à°à°®à± బసà±âà°¨à°à± à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à± à°à°¾à°²à±à°à°ªà±à°¯à°¿à°à°¦à°¿: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "PID à°¨à±à°à°¡à°¿ à°à°¾à°²à°°à±âనౠపà±à°à°¦à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "à°à°¾à°²à°°à± à°à°¬à±à°à°à±à°à±à°¨à°à°¦à± UIDనౠà°
మరà±à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "CK à°¸à±à°·à°¨à± à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "à°¸à±à°·à°¨à± à°à°¬à±à°à°à±à°à±à°¨à°à°¦à± UIDనౠà°
మరà±à° à°²à±à°à°ªà±à°¯à°¿à°à°¦à°¿."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "PolKitAction à°à°¿à°°à±à°¨à°¾à°®à°¾à°¨à± à°à±à°à°¾à°¯à°¿à°à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "action_id à°
మరà±à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "PolKitContext à°à±à°à°¾à°¯à°¿à°à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "PolKitContext సిదà±à°¦à°®à± à°à±à°¯à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "à°à°¾à°²à°°à± à°
ధిà°à°¾à°°à°®à± à°à°²à°¦à± à°²à±à°¦à± నిరà±à°£à°¯à°¿à°à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "à°¦à±à°µà±à°à°°à°£ à°ªà±à°à°¦à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit à°¸à±à°ªà°à°¦à°¿à°à°¿à°¨à°¦à°¿ à°¦à±à°¨à°¿à°¤à± '%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "à°¸à°à°à±à°¤à°®à± %s à°ªà±à°à°¦à°¿à°¨à°¦à°¿."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "నిషà±à°à±à°°à°®à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "వినియà±à°à°¦à°¾à°°à°¿ '%s'నౠà°à°¨à±à°à±à°¨à±à°à°à± విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "సమà±à°¹à° '%s' à°à°¨à±à°à±à°¨à±à°à°à± విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "వినియà±à°à°¦à°¾à°°à°¿ '%s' (UID %lu) మరియౠసమà±à°¹à°®à± '%s' (GID %lu) à°à°¨à°¬à°¡à°¿à°¨à°µà°¿."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "వినియà±à°à°¦à°¾à°°à°¿ '%s' మరియౠసమà±à°¹à°®à± '%s' à°¯à±à°à±à° GID సరితà±à°à°²à±à°¦à±."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "వినియà±à°à°¦à°¾à°°à°¿ '%s' à°¯à±à°à±à° నివాస à°¡à±à°°à±à°à±à°à°°à± '%s' à°à°¾à°¦à±, వదిలివà±à°¯à±à°à±à°¨à±à°¨à°¦à°¿."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "'%s' à°¸à±à°·à±à°à°¿à°à°à±à°à°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "సమà±à°¹ à°à°¾à°¬à°¿à°¤à°¾ మారà±à°à±à°à°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "GID మారà±à°à±à°à°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "UID మారà±à°à°à°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "root à°
à°¨à±à°®à°¤à±à°²à± విà°à°¯à°µà°à°¤à°à°à°¾ తిసివà±à°¯à°¬à°¡à°¿à°¨à°¾à°¯à°¿."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "à° à°ªà±à°²à°¾à°à±âఫాఠనà°à°¦à± సిసà±à°à°®à± తరహా à°°à±à°¤à°¿ మదà±à°¦à°¤à±à°¯à°¬à°¡à°¦à±."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "à°à°¦à±à°¶ వరà±à°¸à°¨à± పారà±à°¶à± à°à±à°¯à±à°à°à± విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "మనమౠసమà±à°¹à°®à± '%s' à°¨à°à°¦à± à°µà±à°¨à±à°¨à°¾à°®à±, à°
దిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ పణాళిà°à°¨à± à°
à°¨à±à°®à°¤à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "మనమౠసమà±à°¹à°®à± '%s' à°¨à°à°¦à± à°µà±à°¨à±à°¨à°¾à°®à±, వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°
à°¨à±à°®à°¤à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit మనà°à± acquire-high-priority à°
à°¨à±à°®à°¤à°¿à°¨à°¿ యిà°à±à°à±à°à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit à°
à°¨à±à°¨à°¦à°¿ acquire-high-priority à°
à°¨à±à°®à°¤à°¿à°¨à°¿ తిరసà±à°à°°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit మనà°à± acquire-real-time à°
à°¨à±à°®à°¤à°¿à°¨à°¿ యిà°à±à°à±à°à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit acquire-real-time à°
à°¨à±à°®à°¤à°¿à°¨à°¿ తిరసà±à°à°°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"SUID root à°à°¾à°²à± à°à±à°¸à°¿à°à°¦à°¿ మరియౠవాసà±à°¤à°µ-సమయ మరియà±/à°²à±à°¦à°¾ à°
దిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤ à°ªà±à°°à°£à°¾à°³à°¿à° à°
à°à±à°¯à°°à±à°§à°¿à°à°¬à°¡à°¿à°à°¦à°¿ "
-"à°à°à±à°¤à±à°à°°à°£à°¨à°à°¦à±. à°à°®à±à°¨à°ªà±à°ªà±à°à°¿à°à°¿, మనà°à± à°
వసరమà±à°¨ à°
à°¨à±à°®à°¤à°²à± à°²à±à°ªà°¿à°à°à°¿à°¨à°µà°¿:\n"
-"మనమౠసమà±à°¹à° '%s' à°¨à°à°¦à± à°²à±à°®à±, PolicyKit à°
à°¨à±à°¨à°¦à°¿ మనà°à± à°
à°à±à°¯à°°à±à°¦à°¿à°à°à°¿à°¨ à°
à°¨à±à°®à°¤à±à°²à°¨à± యిà°à±à°à±à°à°à± "
-"నిరాà°à°°à°¿à°à°à°¿à°¨à°¦à°¿ మరియౠమనమౠవà±à°¦à±à°¦à°¿ RLIMIT_NICE/RLIMIT_RTPRIO వనరౠపరిమితà±à°²à°¨à± à°à°²à°¿à°à°¿à°²à±à°®à±.\n"
-"వాసà±à°¤à°µ-సమయ/à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°à±à°¤à°¨à°ªà°°à°à±à°à°à± దయà°à±à°¸à°¿ సరà±à°¨ PolicyKit à°
à°¨à±à°®à°¤à±à°²à°¨à± à°ªà±à°à°¦à±à°®à±, "
-"à°²à±à°¦à°¾ '%s' à°¯à±à°à±à° à°¸à°à±à°¯à±à°¨à°¿à°µà°¿ à°à°®à±à°®à±, à°²à±à°¦à°¾ ఠవినియà±à°à°¦à°¾à°°à°¿à°à°¿ RLIMIT_NICE/RLIMIT_RTPRIO వనరౠ"
-"పరిమితà±à°²à°¨à± à°ªà±à°à°à±à°®à±."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr "à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ à°ªà±à°°à°£à°¾à°³à°¿à° à°à°à±à°¤à±à°à°°à°£à°¨à°à°¦à± à°à±à°¤à°¨à°®à±à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿ à°à°¾à°¨à°¿ విధానమౠదà±à°µà°¾à°°à°¾ à°
à°¨à±à°®à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "సమరà±à°§à°µà°à°¤à°à°à°¾ RLIMIT_RTPRIOనౠపà±à°à°à°¿à°¨à°¦à°¿"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO విఫలమà±à°à°¦à°¿: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "CAP_NICE యిసà±à°¤à±à°à°¦à°¿"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à° à°à°à±à°¤à±à°à°°à°£à°¨à°à°¦à± à°à±à°¤à°¨à°à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿ à°à°¾à°¨à°¿ విధానమౠదà±à°µà°¾à°°à°¾ à°
à°¨à±à°®à°¤à°¿à°à°à°¬à°¡à°²à±à°¦à±."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "à°¡à±à°®à±à°¨à± నడà±à°à±à° à°²à±à°¦à±"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "à°¡à±à°®à±à°¨à± PID %u వలౠనడà±à°à±à°à±à°¨à±à°¨à°¦à°¿"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "à°¡à±à°®à±à°¨à± à°à°à°ªà±à°à°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr "à° à°ªà±à°°à±à°à±à°°à°¾à°®à± root లా నడà±à°ªà°µà°²à°¸à°¿à°à°¦à°¿ à°à°¾à°¦à± (--system à°¤à±à°²à°¿à°ªà°¿à°¤à± తపà±à°ª)"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "Root à°
à°¨à±à°®à°¤à±à°²à± à°
వసరమà±."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "--start సిసà±à°à°®à± à°¸à°à°à°µà°¾à°² à°¦à±à°µà°¾à°°à°¾ మదà±à°¦à°¤à±à°¯à°¬à°¡à°¦à±."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "సిసà±à°à°®à± à°®à±à°¡à± à°¨à°à°¦à± నడà±à°ªà±à°¤à±à°à°¦à°¿, à°
యితౠ--disallow-exit à°
మరà±à°à°²à±à°¦à±!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "సిసà±à°à°®à± à°°à±à°¤à°¿à°¨à°à°¦à± నడà±à°à±à°à±à°¨à±à°¨à°¦à°¿, à°
యితౠ--disallow-module-loading à°
మరà±à°à°²à±à°¦à±!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "సిసà±à°à°®à± à°°à±à°¤à°¿à°¨à°à°¦à± నడà±à°ªà±à°à±à°¨à±à°¨à°¦à°¿, బలవà°à°¤à°à°à°¾ SHM à°°à±à°¤à°¿à°¨à°¿ à°
à°à±à°¤à°¨à°®à± à°à±à°¸à±à°¤à±à°à°¦à°¿!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "సిసà±à°à°®à± à°°à±à°¤à°¿à°¨à°à°¦à± నడà±à°à±à°à±à°¨à±à°¨à°¦à°¿, బలవà°à°¤à°à°à°¾ నిషà±à°à±à°°à°®à°£ à°µà±à°§à°¾ సమయానà±à°¨à°¿ à°
à°à±à°¤à°¨à°®à± à°à±à°¯à±à°à±à°¨à±à°¨à°¦à°¿!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "stdio à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "à°ªà±à°°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork() విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read() విఫలమà±à°à°¦à°¿: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "à°¡à±à°®à±à°¨à± à°ªà±à°°à°¾à°°à°à°à° విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "à°¡à±à°®à±à°¨à± à°ªà±à°°à°¾à°°à°à°à°®à± సఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "à°à°¦à°¿ PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "నిరà±à°µà°°à±à°¤à°¨ à°¹à±à°¸à±à°à±: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "నిరà±à°µà°°à±à°¤à°¨ CFLAGS: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "à°¹à±à°¸à±à°à±à°¨à± నడà±à°ªà±à°à±à°¨à±à°¨à°¦à°¿: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "%u CPUలనౠà°à°¨à±à°à±à°¨à±à°¨à°¦à°¿."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "à°ªà±à°à± పరిమాణమౠ%lu à°¬à±à°à±à°²à±"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "Valgrind మదà±à°¦à°¤à±à°¤à± నిరà±à°µà°°à±à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿: à°
à°µà±à°¨à±"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "Valgrind మదà±à°¦à°¤à±à°¤à± నిరà±à°µà°°à±à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿: à°²à±à°¦à±"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "valgrind à°°à±à°¤à°¿à°¨à°à°¦à± నడà±à°ªà±à°à±à°¨à±à°¨à°¦à°¿: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "à°à°ªà±à°à°¿à°®à±à°à±à°¡à± à°¬à±à°²à±à°¡à±: à°
à°µà±à°¨à±"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "à°à°ªà±à°à°¿à°®à±à°à±à°¡à± à°¬à±à°²à±à°¡à±: à°à°¾à°¦à±"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "NDEBUG నిరà±à°µà°à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿, à°
à°¨à±à°¨à°¿ à°¸à±à°¥à°¿à°°à°°à°¾à°¶à±à°²à± à°
à°à±à°¤à°¨à°®à±à°¨à°µà°¿."
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "FASTPATH నిరà±à°µà°à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿, ఫాసà±à°à± పాతౠసà±à°¥à°¿à°°à°°à°¾à°¶à±à°²à± మాతà±à°°à°®à± à°
à°à±à°¤à°¨à°®à±à°¨à°µà°¿."
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "à°
à°¨à±à°¨à°¿ à°¸à±à°¥à°¿à°°à°°à°¾à°¶à±à°²à± à°à±à°¤à°¨à°®à±à°¨à°µà°¿."
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "మిషనౠID à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "మిషనౠID %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "మిషనౠID %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "à°°à°¨à±âà°à±à°®à± à°¡à±à°°à±à°à±à°à°°à±à°¨à± à°µà±à°ªà°¯à±à°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿ %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "à°¸à±à°¥à°¿à°¤à°¿ à°¡à±à°°à±à°à±à°à°°à±à°¨à± à°µà±à°ªà°¯à±à°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿ %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "సిసà±à°à°®à± à°°à±à°¤à°¿à°¨à°à°¦à± à°µà±à°ªà°¯à±à°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -456,41 +338,41 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create() విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "తాà°à°¾ à°
ధిà°-à°¤à±à°µà±à°°à°¤ à°à°¾à°²à°¸à±à°à°¿à°à°²à± à°
à°à°¦à±à°¬à°¾à°à±à°²à± à°µà±à°¨à±à°¨à°¾à°¯à°¿! బానౠà°à°ªà°à±à°à±!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr "మితà±à°°à°®à°¾, నౠà°à±à°°à±à°¨à°²à± à°à±à°¡à°¿à°ªà±à°¯à°¿à°à°¦à°¿! à°
ధిà°-à°¤à±à°µà±à°°à°¤ à°à°¾à°²à°¸à±à°à°à°¿à°²à°¨à± à°à±à°¤à°¨à°®à± à°à±à°¯à°®à°¨à°¿ à°¸à±à°à°¿à°à°à°¡à°®à±à°¨à°¦à°¿!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new() విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "à°¡à±à°®à±à°¨à± సిదà±à°¦à°®à±à°à±à°¯à±à°à°à± విఫలమà±à°à°¦à°¿."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "à°à°µà°¿à°§à°®à±à°¨ మాడà±à°¯à±à°³à±à°³à± à°²à±à°¡à°µà°à±à°à°¡à°¾ à°¡à±à°®à±à°¨à± à°ªà±à°°à°¾à°°à°à°à°®à±, పనిà°à±à°¯à±à°à°à± తిరసà±à°à°°à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "à°¡à±à°®à±à°¨à± à°ªà±à°°à°¾à°°à°à°à°®à± à°ªà±à°°à±à°¤à±à°¨à°¦à°¿."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "à°¡à±à°®à±à°¨à± à°®à±à°¸à°¿à°µà±à°¤ సిదà±à°¦à°®à±à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "à°¡à±à°®à±à°¨à± à°
à°à°¤à°®à±à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿."
@@ -825,14 +707,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### à°à°à±à°¤à±à°à°°à°£ దసà±à°¤à±à°°à°®à±à°¨à±à°à°¡à°¿ à°à°¦à±à°µà±à°®à±: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "root à°
à°¨à±à°®à°¤à±à°²à°¨à± à°¤à±à°¸à°¿à°µà±à°¯à±à°à±à°¨à±à°¨à°¦à°¿."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "సామరà±à°§à±à°¯à°¾à°²à°¨à± CAP_SYS_NICE à°à± సమరà±à°¦à°µà°à°¤à°à°à°¾ పరిమితఠà°à±à°¯à°¬à°¡à°¿à°¨à°µà°¿."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio శబà±à°¦à°ªà± సిసà±à°à°®à±"
@@ -841,24 +719,6 @@ msgstr "PulseAudio శబà±à°¦à°ªà± సిసà±à°à°®à±"
msgid "Start the PulseAudio Sound System"
msgstr "PulseAudio శబà±à°¦à°ªà± సిసà±à°à°®à±âనౠపà±à°°à°¾à°°à°à°à°¿à°à°à±à°®à±"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ à°ªà±à°°à°£à°¾à°³à°¿à° (à°à°£ à°¯à±à°¨à°¿à°à±à°¸à± సాదా à°¸à±à°¥à°¾à°¯à°¿) PulseAudio à°¡à±à°®à±à°¨à±âà°à±"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio à°¡à±à°®à±à°¨à±â à°à±à°°à°à± వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à°"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "సిసà±à°à°®à± విధానమౠPulseAudio à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°ªà±à°à°¦à°à±à°à°¡à°¾ నిరà±à°§à°¿à°¸à±à°¤à±à°¨à±à°¨à°¦à°¿."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "సిసà±à°à°®à± విధానమౠPulseAudio వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°ªà±à°à°¦à°à±à°à°¡à°¾ నిరà±à°§à°¿à°¸à±à°¤à±à°à°¦à°¿."
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "à°®à±à°¨à±"
@@ -1231,183 +1091,187 @@ msgstr "à°à±à°à± à°¡à°¾à°à°¾ పారà±à°¶à± à°à±à°¯à±à°à°à± à°µ
msgid "Failed to open configuration file '%s': %s"
msgstr "à°à°à±à°¤à±à°à°°à°£ దసà±à°¤à±à°°à°®à± '%s' à°¤à±à°°à±à°µà±à°à°à± విఫలమà±à°à°¦à°¿: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "à° à°à±à°à± à°²à±à°¡à°µà°²à±à°¦à±. à°²à±à°à±à°à°¡à°¾ à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à°à±à°à°à± à°ªà±à°°à°¯à°¤à±à°¨à°¿à°¸à±à°¤à±à°à°¦à°¿."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "à°¤à±à°²à°¿à°¯à°¨à°¿ à°ªà±à°¡à°¿à°à°¿à°à°ªà± à°à±à°°à°à± à°¸à°à°¦à±à°¶à°®à± à°¸à±à°µà±à°à°°à°¿à°à°à°¿à°à°¦à°¿ '%s'"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "à°¸à±à°à±à°°à±à°®à± à°à°à°¡à°à°à±à°à±à°à°à± విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "à°ªà±à°²à±à°¬à±à°¯à°¾à°à± à°¸à±à°à±à°°à±à°®à± à°à°à°¡à°à°à±à°à°¿à°¨à°¦à°¿.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "à°¸à±à°µà°¿à°à°à± à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à±à°¨à± నశిà°à°ªà°à±à°¸à±à°¤à±à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write() విఫలమà±à°à°¦à°¿: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "à°¸à±à°à±à°°à±à°®à± సమరà±à°§à°µà°à°¤à°à°à°¾ à°¸à±à°·à±à°à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "Buffer metrics: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "సాదారణ విశదà±à°à°°à°£(à°¸à±à°ªà±à°à±) '%s' à°µà±à°ªà°¯à±à°à°¿à°¸à±à°¤à±à°à°¦à°¿, à°ªà±à°°à°¸à°¾à°°à°®à°¾à°°à±à°à° మాపౠ'%s'.\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "పరిà°à°°à°®à± %s (%u, %ssuspended) à°à± à°
à°¨à±à°¸à°à°§à°¾à°¨à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "à°¸à±à°à±à°°à±à°®à± à°¦à±à°·à°®à±: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "à°¸à±à°à±à°°à±à°®à± పరిà°à°°à°®à± à°
à°°à±à°¦à°¾à°à°¤à°°à°®à±à°à°¾ నిలిపివà±à°¯à°¿.%s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "à°¸à±à°à±à°°à±à°®à± పరిà°à°°à°®à± తిరిà°à°¿à°à±à°¨à°¸à°¾à°à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿.%s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "à°¸à±à°à±à°°à±à°®à± à°¤à°à±à°à±à°µà°à°¾à°¨à°¡à±à°à±à°à±à°¨à±à°¨à°¦à°¿.%s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "à°¸à±à°à±à°°à±à°®à± మిà°à°à°¿à°¨à°¡à±à°à±à°à±à°¨à±à°¨à°¦à°¿.%s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "à°¸à±à°à±à°°à±à°®à± à°ªà±à°°à°¾à°°à°à°à°®à±à°à°¦à°¿.%s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "à°¸à±à°à±à°°à±à°®à± పరిà°à°°à°®à± %s (%u, %ssuspended) à°à± à°à°¦à±à°ªà°¬à°¡à°¿à°à°¦à°¿.%s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "à°à°¾à°¦à± "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "à°¸à±à°à±à°°à±à°®à± బఫరౠయాà°à±à°°à°¿à°¬à±à°¯à±à°à±à°²à± మారà±à°à°¬à°¡à°¿à°¨à°µà°¿.%s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à± à°à°°à±à°ªà°¡à°¿à°¨à°¦à°¿.%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_record() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à± à°µà±à°«à°²à±à°¯à°®à±: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "EOF à°ªà±à°à°¦à°¿à°à°¦à°¿.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read() విఫలమà±à°à°¦à°¿: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "EOF à°ªà±à°à°¦à°¿à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write() విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "à°¸à°à°à±à°¤à°®à± à°ªà±à°à°¦à°¿à°¨à°¦à°¿, నిషà±à°à±à°°à°®à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "à°à±à°°à°¿à°¯à°¾à°¹à±à°¨à°¤à°¨à± à°ªà±à°à°¦à±à°à°²à± విఫలమà±à°à°¦à°¿: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "సమయà°: %0.3f sec; à°à±à°°à°¿à°¯à°¾à°¹à±à°¨à°¤: %0.0f usec. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info() విఫలమà±à°à°¦à°¿: %s\n"
#: ../src/utils/pacat.c:605
@@ -1529,34 +1393,34 @@ msgstr ""
"libpulse తౠనిరà±à°µà°°à±à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿ %s\n"
"libpulse లిà°à°à±à°¨à°¦à°¿ %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "à°à±à°²à±à°²à°¨à°¿ à°ªà±à°°à°¸à°¾à°°à°®à°¾à°°à±à° మాపౠ'%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "à°à±à°²à±à°²à°¨à°¿ à°ªà±à°¨à°à°µà±à°¦à°¾à°¹à°°à°£ పదà±à°¦à°¤à°¿ '%s'."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "à°à±à°²à±à°²à°¨à°¿ à°ªà±à°°à°¸à°¾à°°à°®à°¾à°°à±à° మాపౠ'%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "à°à±à°²à±à°²à°¨à°¿ à°à±à°°à°¿à°¯à°¾à°¹à±à°¨ విశదà±à°à°°à°£à°®à± '%s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "à°à±à°²à±à°²à°¨à°¿ à°à°¾à°°à±à°¯à°à±à°°à°®à°®à± సమయ విశదà±à°à°°à°£ '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "à°à±à°²à±à°²à°¨à°¿ à°ªà±à°¨à°à°µà±à°¦à°¾à°¹à°°à°£ పదà±à°¦à°¤à°¿ '%s'."
#: ../src/utils/pacat.c:878
@@ -1565,60 +1429,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "à°à±à°²à±à°²à°¨à°à±à°µà°à°à°¿ మాదిరి విశదà±à°à°°à°£\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "à°à°¾à°²à°¾ à°¯à±à°à±à°à±à°µ à°à°°à±à°à±à°®à±à°à°à±à°²à±.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "మాదిరి సమాà°à°¾à°°à°®à± à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "శబà±à°¦à°ªà± దసà±à°¤à±à°°à°®à±à°¨à± à°¤à±à°°à±à°µà±à°à°à± విఫలమà±à°à°¦à°¿.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "%s à°¸à±à°à±à°°à±à°®à±âనౠమాదిరి విశదà±à°à°°à°£à°¿ '%s'తౠతà±à°°à±à°à±à°à±à°¨à±à°¨à°¦à°¿.\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "మాదిరి సమాà°à°¾à°°à°®à± à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "%s à°¸à±à°à±à°°à±à°®à±âనౠమాదిరి విశదà±à°à°°à°£à°¿ '%s'తౠతà±à°°à±à°à±à°à±à°¨à±à°¨à°¦à°¿.\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "à°ªà±à°°à°¸à°¾à°°à°®à°¾à°°à±à° మాపౠమాదిరి విశదà±à°à°°à°£à°¿à°¤à± సరిపà±à°²à±à°à°²à±à°¦à±\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "%s à°¸à±à°à±à°°à±à°®à±âనౠమాదిరి విశదà±à°à°°à°£à°¿ '%s'తౠతà±à°°à±à°à±à°à±à°¨à±à°¨à°¦à°¿.\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "%s à°¸à±à°à±à°°à±à°®à±âనౠమాదిరి విశదà±à°à°°à°£à°¿ '%s'తౠతà±à°°à±à°à±à°à±à°¨à±à°¨à°¦à°¿.\n"
#: ../src/utils/pacat.c:1006
@@ -1629,35 +1499,34 @@ msgstr "à°°à°¿à°à°¾à°°à±à°¡à°¿à°à°à±"
msgid "playback"
msgstr "à°ªà±à°²à±à°¬à°¾à°à±"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new() విఫలమà±à°à°¦à°¿.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new() విఫలమà±à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new() విఫలమà±à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect() విఫలమà±à°à°¦à°¿: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new() విఫలమà±à°à°¦à°¿.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new() విఫలమà±à°à°¦à°¿.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run() విఫలమà±à°à°¦à°¿.\n"
#: ../src/utils/pasuspender.c:81
@@ -1685,6 +1554,11 @@ msgstr "తిరిà°à°¿à°à±à°¨à°¸à°¾à°à°¿à°à°ªà± à°µà±à°«à°²à±à°¯à°®
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "à°¹à±à°à±à°à°°à°¿à°: శబà±à°§à°ªà± à°¸à±à°µà°¿à° à°¸à±à°¥à°¾à°¨à°¿à°à° à°à°¾à°¦à±, à°
à°°à±à°§à°¾à°à°¤à°°à°¨à°¿à°²à±à°ªà±à°¦à°² à°à°¾à°µà°¡à°à°²à±à°¦à±.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à± à°µà±à°«à°²à±à°¯à°®à±: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1725,6 +1599,21 @@ msgstr ""
"libpulse తౠనిరà±à°µà°°à±à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿ %s\n"
"libpulse తౠనిరà±à°µà°°à±à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿ %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new() విఫలమà±à°à°¦à°¿.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new() విఫలమà±à°à°¦à°¿.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run() విఫలమà±à°à°¦à°¿.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2139,6 +2028,11 @@ msgstr ""
"libpulse తౠనిరà±à°µà°°à±à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿%s\n"
"libpulse తౠలిà°à°à±à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿ %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "à°à±à°²à±à°²à°¨à°¿ à°ªà±à°°à°¸à°¾à°°à°®à°¾à°°à±à° మాపౠ'%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "à°²à±à°¡à±à°µà±à°µà±à°à°à± దయà°à±à°¸à°¿ మాదిరి దసà±à°¤à±à°°à°®à±à°¨à± à°¤à±à°²à±à°ªà±à°®à±\n"
@@ -2147,6 +2041,11 @@ msgstr "à°²à±à°¡à±à°µà±à°µà±à°à°à± దయà°à±à°¸à°¿ మాదిరి
msgid "Failed to open sound file.\n"
msgstr "శబà±à°¦à°ªà± దసà±à°¤à±à°°à°®à±à°¨à± à°¤à±à°°à±à°µà±à°à°à± విఫలమà±à°à°¦à°¿.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "మాదిరి సమాà°à°¾à°°à°®à± à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2208,11 +2107,6 @@ msgstr "à°®à±à°°à± à°à°¾à°°à±à°¡à± నామమà±/విషయసà±à°à°¿
msgid "No valid command specified.\n"
msgstr "à°à°à±à°µà°à°à°¿ విలà±à°µà±à°¨ à°à°¦à±à°¶à°®à± à°¤à±à°²à±à°ªà°²à±à°¦à±.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect() విఫలమà±à°à°¦à°¿: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2329,11 +2223,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "à°à°à±à°¸à±à°ªà°¾à°¨à± తాళà°à°¨à± యాà°à±à°¸à°¿à°¸à± à°à±à°¯à°²à±à°¦à±."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2349,7 +2243,7 @@ msgstr ""
"మనమౠPOLLOUT à°
మరà±à°ªà± à°¦à±à°µà°¾à°°à°¾ à°à°¾à°à°°à±à° పరà°à°¬à°¡à°¿à°¨à°¾à°®à± -- à°à°®à±à°¨à°ªà±à°ªà°à°¿à°à°¿ snd_pcm_avail() à°
à°¨à±à°¨à°¦à°¿ 0 నౠ"
"యిసà±à°¤à±à°à°¦à°¿ à°²à±à°¦à°¾ à°µà±à°°à±à° విలà±à°µ < min_avail యిసà±à°¤à±à°à°¦à°¿."
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2366,15 +2260,15 @@ msgstr ""
"యిసà±à°¤à±à°à°¦à°¿ à°²à±à°¦à°¾ à°µà±à°°à±à° విలà±à°µ < min_avail యిసà±à°¤à±à°à°¦à°¿."
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "à°à°«à±"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "హౠఫà±à°¡à°¿à°²à°¿à°à°¿ à°ªà±à°²à±à°¬à±à°¯à°¾à°à± (A2DP)"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "à°à±à°²à°¿à°«à±à°¨à± à°¡à±à°ªà±à°²à±à°à±à°¸à± (HSP/HFP)"
@@ -2382,6 +2276,126 @@ msgstr "à°à±à°²à°¿à°«à±à°¨à± à°¡à±à°ªà±à°²à±à°à±à°¸à± (HSP/HFP)"
msgid "PulseAudio Sound Server"
msgstr "పలà±à°¸à± à°à°¡à°¿à°¯à± à°¸à±à°à°¡à± à°¸à±à°µà°¿à°"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "సిసà±à°à°®à± బసà±âà°¨à°à± à°
à°¨à±à°¸à°à°§à°¾à°¨à°®à± à°à°¾à°²à±à°à°ªà±à°¯à°¿à°à°¦à°¿: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "PID à°¨à±à°à°¡à°¿ à°à°¾à°²à°°à±âనౠపà±à°à°¦à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "à°à°¾à°²à°°à± à°à°¬à±à°à°à±à°à±à°¨à°à°¦à± UIDనౠà°
మరà±à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "CK à°¸à±à°·à°¨à± à°ªà±à°à°¦à±à°à°à± విఫలమà±à°à°¦à°¿."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "à°¸à±à°·à°¨à± à°à°¬à±à°à°à±à°à±à°¨à°à°¦à± UIDనౠà°
మరà±à° à°²à±à°à°ªà±à°¯à°¿à°à°¦à°¿."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "PolKitAction à°à°¿à°°à±à°¨à°¾à°®à°¾à°¨à± à°à±à°à°¾à°¯à°¿à°à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "action_id à°
మరà±à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "PolKitContext à°à±à°à°¾à°¯à°¿à°à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "PolKitContext సిదà±à°¦à°®à± à°à±à°¯à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "à°à°¾à°²à°°à± à°
ధిà°à°¾à°°à°®à± à°à°²à°¦à± à°²à±à°¦à± నిరà±à°£à°¯à°¿à°à°à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "à°¦à±à°µà±à°à°°à°£ à°ªà±à°à°¦à°²à±à° à°ªà±à°¯à°¿à°à°¦à°¿: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit à°¸à±à°ªà°à°¦à°¿à°à°¿à°¨à°¦à°¿ à°¦à±à°¨à°¿à°¤à± '%s'"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ à°ªà±à°°à°£à°¾à°³à°¿à° (à°à°£ à°¯à±à°¨à°¿à°à±à°¸à± సాదా à°¸à±à°¥à°¾à°¯à°¿) PulseAudio à°¡à±à°®à±à°¨à±âà°à±"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio à°¡à±à°®à±à°¨à±â à°à±à°°à°à± వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à°"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr "సిసà±à°à°®à± విధానమౠPulseAudio à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°ªà±à°à°¦à°à±à°à°¡à°¾ నిరà±à°§à°¿à°¸à±à°¤à±à°¨à±à°¨à°¦à°¿."
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "సిసà±à°à°®à± విధానమౠPulseAudio వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°ªà±à°à°¦à°à±à°à°¡à°¾ నిరà±à°§à°¿à°¸à±à°¤à±à°à°¦à°¿."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read() విఫలమà±à°à°¦à°¿: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect() విఫలమà±à°à°¦à°¿: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "మనమౠసమà±à°¹à°®à± '%s' à°¨à°à°¦à± à°µà±à°¨à±à°¨à°¾à°®à±, à°
దిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ పణాళిà°à°¨à± à°
à°¨à±à°®à°¤à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "మనమౠసమà±à°¹à°®à± '%s' à°¨à°à°¦à± à°µà±à°¨à±à°¨à°¾à°®à±, వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°
à°¨à±à°®à°¤à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit మనà°à± acquire-high-priority à°
à°¨à±à°®à°¤à°¿à°¨à°¿ యిà°à±à°à±à°à±à°¨à±à°¨à°¦à°¿."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit à°
à°¨à±à°¨à°¦à°¿ acquire-high-priority à°
à°¨à±à°®à°¤à°¿à°¨à°¿ తిరసà±à°à°°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit మనà°à± acquire-real-time à°
à°¨à±à°®à°¤à°¿à°¨à°¿ యిà°à±à°à±à°à±à°¨à±à°¨à°¦à°¿."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit acquire-real-time à°
à°¨à±à°®à°¤à°¿à°¨à°¿ తిరసà±à°à°°à°¿à°à°à±à°à±à°¨à±à°¨à°¦à°¿."
+
+#~ 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 ""
+#~ "SUID root à°à°¾à°²à± à°à±à°¸à°¿à°à°¦à°¿ మరియౠవాసà±à°¤à°µ-సమయ మరియà±/à°²à±à°¦à°¾ à°
దిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤ à°ªà±à°°à°£à°¾à°³à°¿à° à°
à°à±à°¯à°°à±à°§à°¿à°à°¬à°¡à°¿à°à°¦à°¿ "
+#~ "à°à°à±à°¤à±à°à°°à°£à°¨à°à°¦à±. à°à°®à±à°¨à°ªà±à°ªà±à°à°¿à°à°¿, మనà°à± à°
వసరమà±à°¨ à°
à°¨à±à°®à°¤à°²à± à°²à±à°ªà°¿à°à°à°¿à°¨à°µà°¿:\n"
+#~ "మనమౠసమà±à°¹à° '%s' à°¨à°à°¦à± à°²à±à°®à±, PolicyKit à°
à°¨à±à°¨à°¦à°¿ మనà°à± à°
à°à±à°¯à°°à±à°¦à°¿à°à°à°¿à°¨ à°
à°¨à±à°®à°¤à±à°²à°¨à± యిà°à±à°à±à°à°à± "
+#~ "నిరాà°à°°à°¿à°à°à°¿à°¨à°¦à°¿ మరియౠమనమౠవà±à°¦à±à°¦à°¿ RLIMIT_NICE/RLIMIT_RTPRIO వనరౠపరిమితà±à°²à°¨à± à°à°²à°¿à°à°¿à°²à±à°®à±.\n"
+#~ "వాసà±à°¤à°µ-సమయ/à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯ à°ªà±à°°à°£à°¾à°³à°¿à°à°¨à± à°à±à°¤à°¨à°ªà°°à°à±à°à°à± దయà°à±à°¸à°¿ సరà±à°¨ PolicyKit à°
à°¨à±à°®à°¤à±à°²à°¨à± "
+#~ "à°ªà±à°à°¦à±à°®à±, à°²à±à°¦à°¾ '%s' à°¯à±à°à±à° à°¸à°à±à°¯à±à°¨à°¿à°µà°¿ à°à°®à±à°®à±, à°²à±à°¦à°¾ ఠవినియà±à°à°¦à°¾à°°à°¿à°à°¿ RLIMIT_NICE/RLIMIT_RTPRIO "
+#~ "వనరౠపరిమితà±à°²à°¨à± à°ªà±à°à°à±à°®à±."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr "à°
ధిà°-à°ªà±à°°à°¾à°®à±à°à±à°¯à°¤à°¾ à°ªà±à°°à°£à°¾à°³à°¿à° à°à°à±à°¤à±à°à°°à°£à°¨à°à°¦à± à°à±à°¤à°¨à°®à±à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿ à°à°¾à°¨à°¿ విధానమౠదà±à°µà°¾à°°à°¾ à°
à°¨à±à°®à°¤à°¿à°à°à°¬à°¡à°¿à°à°¦à°¿."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "సమరà±à°§à°µà°à°¤à°à°à°¾ RLIMIT_RTPRIOనౠపà±à°à°à°¿à°¨à°¦à°¿"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO విఫలమà±à°à°¦à°¿: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "CAP_NICE యిసà±à°¤à±à°à°¦à°¿"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "వాసà±à°¤à°µ-సమయ à°ªà±à°°à°£à°¾à°³à°¿à° à°à°à±à°¤à±à°à°°à°£à°¨à°à°¦à± à°à±à°¤à°¨à°à°à±à°¯à°¬à°¡à°¿à°à°¦à°¿ à°à°¾à°¨à°¿ విధానమౠదà±à°µà°¾à°°à°¾ à°
à°¨à±à°®à°¤à°¿à°à°à°¬à°¡à°²à±à°¦à±."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "సామరà±à°§à±à°¯à°¾à°²à°¨à± CAP_SYS_NICE à°à± సమరà±à°¦à°µà°à°¤à°à°à°¾ పరిమితఠà°à±à°¯à°¬à°¡à°¿à°¨à°µà°¿."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new() విఫలమà±à°à°¦à°¿.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "à°à°¨à°²à°¾à°à± à°®à±à°¨à±"
diff --git a/po/uk.po b/po/uk.po
index c8b21c37..ebf45182 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-18 11:13+0300\n"
"Last-Translator: Yuri Chornoivan \n"
"Language-Team: Ukrainian \n"
@@ -17,7 +17,12 @@ msgstr ""
"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"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -30,7 +35,7 @@ msgstr ""
"ÐмовÑÑно, ви наÑÑапили на Ð²Ð°Ð´Ñ Ñ Ð´ÑайвеÑÑ ALSA «%s». ÐÑÐ´Ñ Ð»Ð°Ñка, повÑдомÑе "
"пÑо ÑÑ Ð²Ð°Ð´Ñ ÑозÑобникам ALSA."
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -43,7 +48,7 @@ msgstr ""
"ÐмовÑÑно, ви наÑÑапили на Ð²Ð°Ð´Ñ Ñ Ð´ÑайвеÑÑ ALSA «%s». ÐÑÐ´Ñ Ð»Ð°Ñка, повÑдомÑе "
"пÑо ÑÑ Ð²Ð°Ð´Ñ ÑозÑобникам ALSA."
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -69,7 +74,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "ÐбÑдоване аÑдÑо"
@@ -92,225 +97,92 @@ msgstr ""
msgid "Failed to add bind-now-loader."
msgstr "Ðе вдалоÑÑ Ð´Ð¾Ð´Ð°Ñи bind-now-loader."
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "Ðе вдалоÑÑ Ð·âÑднаÑиÑÑ Ð· ÑÐ¸Ð½Ð¾Ñ ÑиÑÑеми: %s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи джеÑело Ð²Ð¸ÐºÐ»Ð¸ÐºÑ Ð²Ñд PID: %s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "Ðе вдалоÑÑ Ð²ÑÑановиÑи UID Ð´Ð»Ñ Ð¾Ð±âÑкÑа джеÑела викликÑ."
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи CK ÑеанÑÑ."
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "Ðе вдалоÑÑ Ð²ÑÑановиÑи UID Ð´Ð»Ñ Ð¾Ð±âÑкÑа ÑеанÑÑ."
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "Ðе вдалоÑÑ ÑозмÑÑÑиÑи PolKitAction."
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "Ðе вдалоÑÑ Ð²ÑÑановиÑи action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "Ðе вдалоÑÑ ÑозмÑÑÑиÑи PolKitContext."
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "Ðе вдалоÑÑ ÑнÑÑÑалÑзÑваÑи PolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°ÑиÑи Ñи Ñповноважено джеÑело викликÑ: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи ÑповноваженнÑ: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKit надÑÑлала вÑдповÑдÑ: «%s»"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "ÐÑÑимано Ñигнал %s."
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "ÐавеÑÑÐµÐ½Ð½Ñ ÑобоÑи."
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñи коÑиÑÑÑваÑа «%s»."
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñи гÑÑÐ¿Ñ Â«%s»."
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "Ðнайдено коÑиÑÑÑваÑа «%s» (UID %lu) Ñ Ð³ÑÑÐ¿Ñ Â«%s» (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "GID коÑиÑÑÑваÑа «%s» Ñ Ð³ÑÑпи «%s» не збÑгаÑÑÑÑÑ."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "ÐомаÑнÑм каÑалогом коÑиÑÑÑваÑа «%s» не Ñ Â«%s», Ð´Ð°Ð½Ñ Ð¿ÑоÑгноÑовано."
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "Ðе вдалоÑÑ ÑÑвоÑиÑи «%s»: %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "Ðе вдалоÑÑ Ð·Ð¼ÑниÑи ÑпиÑок гÑÑп: %s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "Ðе вдалоÑÑ Ð·Ð¼ÑниÑи GID: %s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "Ðе вдалоÑÑ Ð·Ð¼ÑниÑи UID: %s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "ÐÑогÑама ÑÑпÑÑно позбÑлаÑÑ Ð¿Ñав доÑÑÑÐ¿Ñ ÐºÐ¾ÑиÑÑÑваÑа root."
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "ÐагалÑноÑиÑÑемний Ñежим не пÑдÑÑимÑÑÑÑÑÑ Ð½Ð° ÑÑй плаÑÑоÑмÑ."
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "СпÑоба виконаÑи setrlimit(%s, (%u, %u)) бÑла невдалоÑ: %s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "Ðе вдалоÑÑ Ð¾Ð±ÑобиÑи ÑÑдок команди."
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr ""
-"Ðи пеÑебÑваÑмо Ñ Ð³ÑÑÐ¿Ñ Â«%s», Ñо Ð½Ð°Ð´Ð°Ñ Ð·Ð¼Ð¾Ð³Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ Ð· виÑоким пÑÑоÑиÑеÑом."
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr ""
-"Ðи пеÑебÑваÑмо Ñ Ð³ÑÑÐ¿Ñ Â«%s», Ñо Ð½Ð°Ð´Ð°Ñ Ð·Ð¼Ð¾Ð³Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного "
-"ÑаÑÑ."
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKit надала нам пÑава доÑÑÑÐ¿Ñ acquire-high-priority."
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKit вÑдмовила Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ñав доÑÑÑÐ¿Ñ acquire-high-priority."
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKit надала нам пÑава доÑÑÑÐ¿Ñ acquire-real-time."
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKit вÑдмовила Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ñав доÑÑÑÐ¿Ñ acquire-real-time."
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"У налаÑÑÑваннÑÑ
бÑло вказано виклик SUID root Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного "
-"ÑаÑÑ Ñ/або ÑÐµÐ¶Ð¸Ð¼Ñ Ð²Ð¸Ñокого пÑÑоÑиÑеÑÑ. Ðле Ñ Ð½Ð°Ñ Ð½ÐµÐ¼Ð°Ñ Ð¿Ð¾ÑÑÑбниÑ
пÑав "
-"доÑÑÑпÑ:\n"
-"ÐÐ°Ñ ÐºÐ¾ÑиÑÑÑÐ²Ð°Ñ Ð½Ðµ Ñ ÑÑаÑником гÑÑпи «%s», PolicyKit вÑдмовила Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð½Ð°Ð¼ "
-"поÑÑÑбниÑ
пÑав доÑÑÑпÑ, ÑÐ¾Ð¼Ñ Ð·Ð½ÑÑÑÑ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ñ ÑеÑÑÑÑÑ RLIMIT_NICE/"
-"RLIMIT_RTPRIO не можливе.\n"
-"Щоб ÑвÑмкнÑÑи планÑÐ²Ð°Ð½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного ÑаÑÑ Ñ/або ÑÐµÐ¶Ð¸Ð¼Ñ Ð²Ð¸Ñокого "
-"пÑÑоÑиÑеÑÑ, бÑÐ´Ñ Ð»Ð°Ñка, оÑÑимайÑе вÑдповÑÐ´Ð½Ñ Ð¿Ñава доÑÑÑÐ¿Ñ Ñ PolicyKit або "
-"ÑÑанÑÑе ÑÑаÑником гÑÑпи «%s» або збÑлÑÑÑÑÑ Ð´Ñапазон ÑеÑÑÑÑÑ RLIMIT_NICE/"
-"RLIMIT_RTPRIO Ð´Ð»Ñ ÑÑого коÑиÑÑÑваÑа."
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"ÐланÑÐ²Ð°Ð½Ð½Ñ Ð· виÑоким пÑÑоÑиÑеÑом ÑвÑмкнено Ñ Ð½Ð°Ð»Ð°ÑÑÑваннÑÑ
, але не дозволене "
-"пÑавилами безпеки."
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "УÑпÑÑно пÑдвиÑено RLIMIT_RTPRIO"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби пÑдвиÑиÑи RLIMIT_RTPRIO: %s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "ÐозбÑваÑмоÑÑ CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr ""
-"ÐланÑÐ²Ð°Ð½Ð½Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного ÑаÑÑ ÑвÑмкнено Ñ Ð½Ð°Ð»Ð°ÑÑÑваннÑÑ
, але не "
-"дозволене пÑавилами безпеки."
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "Ð¤Ð¾Ð½Ð¾Ð²Ñ ÑлÑÐ¶Ð±Ñ Ð½Ðµ запÑÑено"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "Ð¤Ð¾Ð½Ð¾Ð²Ñ ÑлÑÐ¶Ð±Ñ Ð·Ð°Ð¿ÑÑено Ñк PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²ÐµÑÑиÑи ÑобоÑÑ ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби: %s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
@@ -318,156 +190,156 @@ msgstr ""
"Ð¦Ñ Ð¿ÑогÑÐ°Ð¼Ñ Ð½Ðµ пÑизнаÑено Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑÐºÑ Ð²Ñд ÑÐ¼ÐµÐ½Ñ ÐºÐ¾ÑиÑÑÑваÑа root (ÑкÑо не "
"вказано паÑамеÑÑа --system)."
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "ÐоÑÑÑÐ±Ð½Ñ Ð¿Ñава доÑÑÑÐ¿Ñ ÐºÐ¾ÑиÑÑÑваÑа root."
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr ""
"ÐаÑамеÑÑ --start не пÑдÑÑимÑÑÑÑÑÑ Ð´Ð»Ñ Ð·Ð°Ð³Ð°Ð»ÑноÑиÑÑемниÑ
екземплÑÑÑв пÑогÑами."
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr ""
"ÐапÑÑк Ñ Ð·Ð°Ð³Ð°Ð»ÑноÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ ÑежимÑ, але не вÑÑановлено --disallow-exit!"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr ""
"ÐапÑÑк Ñ Ð·Ð°Ð³Ð°Ð»ÑноÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ ÑежимÑ, але не вÑÑановлено --disallow-module-"
"loading!"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "ÐапÑÑк Ñ Ð·Ð°Ð³Ð°Ð»ÑноÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ ÑежимÑ, пÑимÑÑове Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ SHM!"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr ""
"ÐапÑÑк Ñ Ð·Ð°Ð³Ð°Ð»ÑноÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ ÑежимÑ, пÑимÑÑове Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ Ð¿Ð°ÑамеÑÑÑв "
"ÑаÑÑ Ð²Ð¸Ñ
Ð¾Ð´Ñ Ð·Ð° вÑдÑÑÑноÑÑÑ Ð°ÐºÑивноÑÑÑ!"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи stdio."
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "СпÑоба ÑÑвоÑÐµÐ½Ð½Ñ ÐºÐ°Ð½Ð°Ð»Ñ Ð·Ð°Ð²ÐµÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ fork() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ read() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "СпÑоба запÑÑÐºÑ ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾."
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "Ð¤Ð¾Ð½Ð¾Ð²Ñ ÑлÑÐ¶Ð±Ñ ÑÑпÑÑно запÑÑено."
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "Це PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "ÐÑзол збиÑаннÑ: %s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "CFLAGS збиÑаннÑ: %s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "ÐапÑÑено на вÑзлÑ: %s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "Ðнайдено %u пÑоÑеÑоÑÑв."
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "РозмÑÑ ÑÑоÑÑнки доÑÑвнÑÑ %lu байÑам"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "ÐÑбÑано з пÑдÑÑÐ¸Ð¼ÐºÐ¾Ñ Valgrind: Ñак"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "ÐÑбÑано з пÑдÑÑÐ¸Ð¼ÐºÐ¾Ñ Valgrind: нÑ"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "ÐапÑÑк Ñ ÑÐµÐ¶Ð¸Ð¼Ñ valgrind: %s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "ÐÑбÑано з опÑимÑзаÑÑÑÑ: Ñак"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "ÐÑбÑано з опÑимÑзаÑÑÑÑ: нÑ"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr ""
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr ""
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "СпÑоба оÑÑимаÑи ÑденÑиÑÑкаÑÐ¾Ñ ÑиÑÑеми завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "ÐденÑиÑÑкаÑÐ¾Ñ ÑиÑÑеми %s."
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "ÐденÑиÑÑкаÑÐ¾Ñ ÑиÑÑеми %s."
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "ÐаÑалог запÑÑкÑ: %s."
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "ÐаÑалог ÑÑанÑ: %s."
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "ÐапÑÑÐºÑ Ñ Ð·Ð°Ð³Ð°Ð»ÑноÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ ÑежимÑ: %s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -477,15 +349,15 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_pid_file_create() зазнала невдаÑÑ."
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "ÐоÑÑÑÐ¿Ð½Ñ ÑвÑÐ¶Ñ Ð²Ð¸ÑокоÑоÑÐ½Ñ ÑаймеÑи! СмаÑного!"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
@@ -493,29 +365,29 @@ msgstr ""
"ЧÑвак, ÑÐ²Ð¾Ñ ÑдÑо â лайно! ÐÑÑÑÑ Ð¿Ð°Ñани ÑекомендÑÑÑÑ Linux з ÑвÑмкненими "
"виÑокоÑоÑними ÑаймеÑами!"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_core_new() зазнала невдаÑÑ."
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "Ðе вдалоÑÑ ÑнÑÑÑалÑзÑваÑи ÑÐ¾Ð½Ð¾Ð²Ñ ÑлÑжбÑ."
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr ""
"ÐапÑÑк ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби без жодного заванÑаженого модÑлÑ, ÑлÑжба не бÑде "
"пÑаÑездаÑноÑ."
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "ÐапÑÑк ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби завеÑÑено."
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "ÐнÑÑÑйовано завеÑÑÐµÐ½Ð½Ñ ÑобоÑи ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби."
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "ÐÐ¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби пеÑеÑвано."
@@ -867,14 +739,10 @@ msgstr ""
msgid "### Read from configuration file: %s ###\n"
msgstr "### ÐÑоÑиÑано з Ñайла налаÑÑÑванÑ: %s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "ÐозбÑваÑмоÑÑ Ð¿Ñав доÑÑÑÐ¿Ñ root."
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "УÑпÑÑно обмежено можливоÑÑÑ Ð´Ð¾ CAP_SYS_NICE."
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "ÐвÑкова ÑиÑÑема PulseAudio"
@@ -883,28 +751,6 @@ msgstr "ÐвÑкова ÑиÑÑема PulseAudio"
msgid "Start the PulseAudio Sound System"
msgstr "ÐапÑÑÑиÑи звÑÐºÐ¾Ð²Ñ ÑиÑÑÐµÐ¼Ñ PulseAudio"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr ""
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-#, fuzzy
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr ""
-"СпÑоба завеÑÑÐµÐ½Ð½Ñ ÑобоÑи ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби PulseAudio завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-#, fuzzy
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr ""
-"Ðи пеÑебÑваÑмо Ñ Ð³ÑÑÐ¿Ñ Â«%s», Ñо Ð½Ð°Ð´Ð°Ñ Ð·Ð¼Ð¾Ð³Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ Ð· виÑоким пÑÑоÑиÑеÑом."
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr ""
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "Ðоно"
@@ -1277,184 +1123,188 @@ msgstr "Ðе вдалоÑÑ Ð¾Ð±ÑобиÑи Ð´Ð°Ð½Ñ ÐºÑки"
msgid "Failed to open configuration file '%s': %s"
msgstr "Ðе вдалоÑÑ Ð²ÑдкÑиÑи Ñайл налаÑÑÑÐ²Ð°Ð½Ð½Ñ Â«%s»: %s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr ""
"ÐÑкÑв не заванÑажено. ÐÑде виконано ÑпÑÐ¾Ð±Ñ Ð·âÑÐ´Ð½Ð°Ð½Ð½Ñ Ð·Ð° ÑÑ
вÑдÑÑÑноÑÑÑ."
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork(): %s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid(): %s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "ÐÑÑимано повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñо невÑдомий додаÑок «%s»"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "Ðе вдалоÑÑ ÑÑвоÑиÑи ÑÑÐ½ÐµÐ»Ñ Ð´Ð»Ñ Ð¿Ð¾ÑокÑ: %s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "ÐоÑÑк вÑдÑвоÑÐµÐ½Ð½Ñ ÑÑнелÑовано.\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "ТÑнелÑне зâÑÐ´Ð½Ð°Ð½Ð½Ñ Ð· ÑеÑвеÑом.\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain(): %s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_write() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_write() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_peek() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "ÐоÑÑк бÑло ÑÑпÑÑно ÑÑвоÑено.\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_get_buffer_attr() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "ÐеÑÑика бÑÑеÑа: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "ÐеÑÑика бÑÑеÑа: maxlength=%u, fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "ÐикоÑиÑÑÐ°Ð½Ð½Ñ ÑаÑÑоÑÐ½Ð¾Ñ ÑпеÑиÑÑкаÑÑÑ Â«%s», каÑÑа каналÑв «%s».\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "ÐâÑднано з пÑиÑÑÑоÑм %s (%u, %s пÑизÑпинено).\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "Ðомилка поÑокÑ: %s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "ÐÑизÑпинено пÑиÑÑÑÑй поÑокÑ. %s \n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "ÐÑдновлено пÑиÑÑÑÑй поÑокÑ. %s \n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "ÐедованÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾ÑокÑ. %s \n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "ÐеÑеванÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾ÑокÑ. %s \n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "ÐоÑÑк запÑÑено. %s \n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "ÐоÑÑк пеÑеÑÑнÑÑо на пÑиÑÑÑÑй %s (%u, %s пÑизÑпинено). %s \n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "не "
-#: ../src/utils/pacat.c:378
+#: ../src/utils/pacat.c:383
#, fuzzy, c-format
-msgid "Stream buffer attributes changed.%s \n"
+msgid "Stream buffer attributes changed.%s"
msgstr "ÐедованÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾ÑокÑ. %s \n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "ÐÑÑановлено зâÑднаннÑ. %s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_new() зазнала невдаÑÑ: %s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_connect_playback() зазнала невдаÑÑ: %s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_connect_record() зазнала невдаÑÑ: %s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "СпÑоба вÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·âÑÐ´Ð½Ð°Ð½Ð½Ñ Ð·Ð°Ð·Ð½Ð°Ð»Ð° невдаÑÑ: %s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "ÐÑÑимано EOF.\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ read() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "ÐÑÑимано EOF.\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ write() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "ÐÑÑимано Ñигнал, завеÑÑÐµÐ½Ð½Ñ ÑобоÑи.\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи лаÑенÑнÑÑÑÑ: %s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "ЧаÑ: %0.3f Ñек.; ÐаÑенÑнÑÑÑÑ: %0.0f мкÑ. \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr ""
"СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_stream_update_timing_info() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
@@ -1575,34 +1425,34 @@ msgstr ""
"ÐÑбÑано з libpulse %s\n"
"ÐâÑднано з libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "ÐекоÑекÑна каÑÑа каналÑв «%s»\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "ÐекоÑекÑний меÑод змÑни ÑаÑÑоÑниÑ
Ñ
аÑакÑеÑиÑÑик «%s»."
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "ÐекоÑекÑна каÑÑа каналÑв «%s»\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "ÐекоÑекÑна ÑпеÑиÑÑкаÑÑÑ Ð»Ð°ÑенÑноÑÑÑ Â«%s»\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "ÐекоÑекÑна ÑаÑова ÑпеÑиÑÑкаÑÑÑ Â«%s»\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "ÐекоÑекÑний меÑод змÑни ÑаÑÑоÑниÑ
Ñ
аÑакÑеÑиÑÑик «%s»."
#: ../src/utils/pacat.c:878
@@ -1611,60 +1461,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "ÐекоÑекÑна ÑаÑÑоÑна ÑпеÑиÑÑкаÑÑÑ\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open(): %s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2(): %s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "ÐабагаÑо аÑгÑменÑÑв.\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи Ð´Ð°Ð½Ñ Ñодо ÑÑагменÑа: %s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "Ðе вдалоÑÑ Ð²ÑдкÑиÑи звÑковий Ñайл.\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "ÐÑдкÑиÑÑÑ Ð¿Ð¾ÑÐ¾ÐºÑ %s з ÑаÑÑоÑÐ½Ð¾Ñ ÑпеÑиÑÑкаÑÑÑÑ Â«%s».\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи Ð´Ð°Ð½Ñ Ñодо ÑÑагменÑа: %s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "ÐÑдкÑиÑÑÑ Ð¿Ð¾ÑÐ¾ÐºÑ %s з ÑаÑÑоÑÐ½Ð¾Ñ ÑпеÑиÑÑкаÑÑÑÑ Â«%s».\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "ÐаÑÑа ÐºÐ°Ð½Ð°Ð»Ñ Ð½Ðµ вÑдповÑÐ´Ð°Ñ ÑаÑÑоÑнÑй ÑпеÑиÑÑкаÑÑÑ\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "ÐÑдкÑиÑÑÑ Ð¿Ð¾ÑÐ¾ÐºÑ %s з ÑаÑÑоÑÐ½Ð¾Ñ ÑпеÑиÑÑкаÑÑÑÑ Â«%s».\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "ÐÑдкÑиÑÑÑ Ð¿Ð¾ÑÐ¾ÐºÑ %s з ÑаÑÑоÑÐ½Ð¾Ñ ÑпеÑиÑÑкаÑÑÑÑ Â«%s».\n"
#: ../src/utils/pacat.c:1006
@@ -1675,35 +1531,34 @@ msgstr "запиÑ"
msgid "playback"
msgstr "вÑдÑвоÑеннÑ"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_mainloop_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ io_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_context_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_context_connect() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ time_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_context_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_mainloop_run() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
#: ../src/utils/pasuspender.c:81
@@ -1732,6 +1587,11 @@ msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr ""
"ÐÐÐÐÐ ÐÐÐÐÐÐЯ: звÑковий ÑеÑÐ²ÐµÑ Ð½Ðµ Ñ Ð»Ð¾ÐºÐ°Ð»Ñним, його не можна пÑизÑпиниÑи.\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "СпÑоба вÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·âÑÐ´Ð½Ð°Ð½Ð½Ñ Ð·Ð°Ð·Ð½Ð°Ð»Ð° невдаÑÑ: %s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1773,6 +1633,21 @@ msgstr ""
"ÐÑбÑано з libpulse %s\n"
"ÐâÑднано з libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_mainloop_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_context_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_mainloop_run() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2187,6 +2062,11 @@ msgstr ""
"ÐÑбÑано з libpulse %s\n"
"ÐâÑднано з libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "ÐекоÑекÑна каÑÑа каналÑв «%s»\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "ÐÑÐ´Ñ Ð»Ð°Ñка, вкажÑÑÑ Ð·Ñазковий Ñайл Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½ÑаженнÑ\n"
@@ -2195,6 +2075,11 @@ msgstr "ÐÑÐ´Ñ Ð»Ð°Ñка, вкажÑÑÑ Ð·Ñазковий Ñайл длÑ
msgid "Failed to open sound file.\n"
msgstr "Ðе вдалоÑÑ Ð²ÑдкÑиÑи звÑковий Ñайл.\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи Ð´Ð°Ð½Ñ Ñодо ÑÑагменÑа: %s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2258,11 +2143,6 @@ msgstr "Ðам ÑлÑд вказаÑи назвÑ/ÑÐ½Ð´ÐµÐºÑ ÐºÐ°ÑÑи Ñ Ð½
msgid "No valid command specified.\n"
msgstr "Ðе вказано коÑекÑÐ½Ð¾Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸.\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_context_connect() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2382,11 +2262,11 @@ msgstr "read(): %s"
msgid "write(): %s"
msgstr "write(): %s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "Ðе вдалоÑÑ Ð·Ð½ÑÑи блокÑÐ²Ð°Ð½Ð½Ñ Ð°Ð²ÑомаÑиÑного ÑозгалÑженнÑ."
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2397,7 +2277,7 @@ msgid ""
"returned 0 or another value < min_avail."
msgstr ""
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2409,15 +2289,15 @@ msgid ""
msgstr ""
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr ""
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr ""
@@ -2426,6 +2306,133 @@ msgstr ""
msgid "PulseAudio Sound Server"
msgstr "ÐвÑкова ÑиÑÑема PulseAudio"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "Ðе вдалоÑÑ Ð·âÑднаÑиÑÑ Ð· ÑÐ¸Ð½Ð¾Ñ ÑиÑÑеми: %s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи джеÑело Ð²Ð¸ÐºÐ»Ð¸ÐºÑ Ð²Ñд PID: %s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "Ðе вдалоÑÑ Ð²ÑÑановиÑи UID Ð´Ð»Ñ Ð¾Ð±âÑкÑа джеÑела викликÑ."
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи CK ÑеанÑÑ."
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "Ðе вдалоÑÑ Ð²ÑÑановиÑи UID Ð´Ð»Ñ Ð¾Ð±âÑкÑа ÑеанÑÑ."
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "Ðе вдалоÑÑ ÑозмÑÑÑиÑи PolKitAction."
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "Ðе вдалоÑÑ Ð²ÑÑановиÑи action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "Ðе вдалоÑÑ ÑозмÑÑÑиÑи PolKitContext."
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "Ðе вдалоÑÑ ÑнÑÑÑалÑзÑваÑи PolKitContext: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°ÑиÑи Ñи Ñповноважено джеÑело викликÑ: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "Ðе вдалоÑÑ Ð¾ÑÑимаÑи ÑповноваженнÑ: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKit надÑÑлала вÑдповÑдÑ: «%s»"
+
+#, fuzzy
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr ""
+#~ "СпÑоба завеÑÑÐµÐ½Ð½Ñ ÑобоÑи ÑÐ¾Ð½Ð¾Ð²Ð¾Ñ ÑлÑжби PulseAudio завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾."
+
+#, fuzzy
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr ""
+#~ "Ðи пеÑебÑваÑмо Ñ Ð³ÑÑÐ¿Ñ Â«%s», Ñо Ð½Ð°Ð´Ð°Ñ Ð·Ð¼Ð¾Ð³Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ Ð· виÑоким "
+#~ "пÑÑоÑиÑеÑом."
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ read() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ pa_context_connect() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾: %s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr ""
+#~ "Ðи пеÑебÑваÑмо Ñ Ð³ÑÑÐ¿Ñ Â«%s», Ñо Ð½Ð°Ð´Ð°Ñ Ð·Ð¼Ð¾Ð³Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ Ð· виÑоким "
+#~ "пÑÑоÑиÑеÑом."
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr ""
+#~ "Ðи пеÑебÑваÑмо Ñ Ð³ÑÑÐ¿Ñ Â«%s», Ñо Ð½Ð°Ð´Ð°Ñ Ð·Ð¼Ð¾Ð³Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного "
+#~ "ÑаÑÑ."
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKit надала нам пÑава доÑÑÑÐ¿Ñ acquire-high-priority."
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKit вÑдмовила Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ñав доÑÑÑÐ¿Ñ acquire-high-priority."
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKit надала нам пÑава доÑÑÑÐ¿Ñ acquire-real-time."
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKit вÑдмовила Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿Ñав доÑÑÑÐ¿Ñ acquire-real-time."
+
+#~ 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 ""
+#~ "У налаÑÑÑваннÑÑ
бÑло вказано виклик SUID root Ñ Ð¿Ð»Ð°Ð½ÑÐ²Ð°Ð½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ "
+#~ "ÑеалÑного ÑаÑÑ Ñ/або ÑÐµÐ¶Ð¸Ð¼Ñ Ð²Ð¸Ñокого пÑÑоÑиÑеÑÑ. Ðле Ñ Ð½Ð°Ñ Ð½ÐµÐ¼Ð°Ñ "
+#~ "поÑÑÑбниÑ
пÑав доÑÑÑпÑ:\n"
+#~ "ÐÐ°Ñ ÐºÐ¾ÑиÑÑÑÐ²Ð°Ñ Ð½Ðµ Ñ ÑÑаÑником гÑÑпи «%s», PolicyKit вÑдмовила Ñ Ð½Ð°Ð´Ð°Ð½Ð½Ñ "
+#~ "нам поÑÑÑбниÑ
пÑав доÑÑÑпÑ, ÑÐ¾Ð¼Ñ Ð·Ð½ÑÑÑÑ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ñ ÑеÑÑÑÑÑ RLIMIT_NICE/"
+#~ "RLIMIT_RTPRIO не можливе.\n"
+#~ "Щоб ÑвÑмкнÑÑи планÑÐ²Ð°Ð½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного ÑаÑÑ Ñ/або ÑÐµÐ¶Ð¸Ð¼Ñ Ð²Ð¸Ñокого "
+#~ "пÑÑоÑиÑеÑÑ, бÑÐ´Ñ Ð»Ð°Ñка, оÑÑимайÑе вÑдповÑÐ´Ð½Ñ Ð¿Ñава доÑÑÑÐ¿Ñ Ñ PolicyKit "
+#~ "або ÑÑанÑÑе ÑÑаÑником гÑÑпи «%s» або збÑлÑÑÑÑÑ Ð´Ñапазон ÑеÑÑÑÑÑ "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO Ð´Ð»Ñ ÑÑого коÑиÑÑÑваÑа."
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr ""
+#~ "ÐланÑÐ²Ð°Ð½Ð½Ñ Ð· виÑоким пÑÑоÑиÑеÑом ÑвÑмкнено Ñ Ð½Ð°Ð»Ð°ÑÑÑваннÑÑ
, але не "
+#~ "дозволене пÑавилами безпеки."
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "УÑпÑÑно пÑдвиÑено RLIMIT_RTPRIO"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби пÑдвиÑиÑи RLIMIT_RTPRIO: %s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "ÐозбÑваÑмоÑÑ CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr ""
+#~ "ÐланÑÐ²Ð°Ð½Ð½Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного ÑаÑÑ ÑвÑмкнено Ñ Ð½Ð°Ð»Ð°ÑÑÑваннÑÑ
, але не "
+#~ "дозволене пÑавилами безпеки."
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "УÑпÑÑно обмежено можливоÑÑÑ Ð´Ð¾ CAP_SYS_NICE."
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "СпÑоба Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ time_new() завеÑÑилаÑÑ Ð½ÐµÐ²Ð´Ð°Ð»Ð¾.\n"
+
#~ msgid "Analog Mono"
#~ msgstr "Ðналоговий моно"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 2da73fe8..90f7cca1 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pulseaudio.master-tx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-06-17 23:42+0200\n"
+"POT-Creation-Date: 2009-08-05 15:09+0200\n"
"PO-Revision-Date: 2009-04-06 10:26+1000\n"
"Last-Translator: Leah Liu \n"
"Language-Team: Simplified Chinese \n"
@@ -20,7 +20,12 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
-#: ../src/modules/alsa/alsa-util.c:1015
+#: ../src/modules/alsa/alsa-util.c:775 ../src/pulsecore/sink.c:2411
+#, c-format
+msgid "%s %s"
+msgstr ""
+
+#: ../src/modules/alsa/alsa-util.c:1023
#, c-format
msgid ""
"snd_pcm_avail() returned a value that is exceptionally large: %lu bytes (%lu "
@@ -31,7 +36,7 @@ msgstr ""
"snd_pcm_avail() è¿åçå¼é常大ï¼%lu åèï¼%lu msï¼ã\n"
"å¾å¯è½æ¯ ALSA 驱å¨ç¨åº '%s' ä¸ç bugã请å ALSA å¼åè
举æ¥è¿ä¸ªé®é¢ã"
-#: ../src/modules/alsa/alsa-util.c:1056
+#: ../src/modules/alsa/alsa-util.c:1064
#, c-format
msgid ""
"snd_pcm_delay() returned a value that is exceptionally large: %li bytes (%s%"
@@ -42,7 +47,7 @@ msgstr ""
"snd_pcm_delay() è¿åçå¼é常大ï¼%li åèï¼%s%lu msï¼ã\n"
"å¾å¯è½æ¯ ALSA 驱å¨ç¨åº '%s' ä¸ç bugã请å ALSA å¼åè
举æ¥è¿ä¸ªé®é¢ã"
-#: ../src/modules/alsa/alsa-util.c:1103
+#: ../src/modules/alsa/alsa-util.c:1111
#, c-format
msgid ""
"snd_pcm_mmap_begin() returned a value that is exceptionally large: %lu bytes "
@@ -66,7 +71,7 @@ msgid ""
"input control values>"
msgstr ""
-#: ../src/pulsecore/sink.c:2394
+#: ../src/pulsecore/sink.c:2395
msgid "Internal Audio"
msgstr "å
é¨é³é¢"
@@ -86,362 +91,241 @@ msgstr "åé
æ°ç dl å è½½å¨å¤±è´¥ã"
msgid "Failed to add bind-now-loader."
msgstr "æ·»å bind-now-loader 失败ã"
-#: ../src/daemon/polkit.c:55
-#, c-format
-msgid "Cannot connect to system bus: %s"
-msgstr "æ æ³è¿æ¥å°ç³»ç»æ»çº¿ï¼%s"
-
-#: ../src/daemon/polkit.c:65
-#, c-format
-msgid "Cannot get caller from PID: %s"
-msgstr "æ æ³ä»PIDè·åè°ç¨è
ï¼%s"
-
-#: ../src/daemon/polkit.c:77
-msgid "Cannot set UID on caller object."
-msgstr "æ æ³ä¸ºè°ç¨è
设å®UIDã"
-
-#: ../src/daemon/polkit.c:82
-msgid "Failed to get CK session."
-msgstr "è·åCKä¼è¯å¤±è´¥ã"
-
-#: ../src/daemon/polkit.c:90
-msgid "Cannot set UID on session object."
-msgstr "æ æ³ä¸ºä¼è¯å¯¹è±¡è®¾å®UIDã"
-
-#: ../src/daemon/polkit.c:95
-msgid "Cannot allocate PolKitAction."
-msgstr "ä¸è½åé
PolKitActionã"
-
-#: ../src/daemon/polkit.c:100
-msgid "Cannot set action_id"
-msgstr "æ æ³è®¾å®action_id"
-
-#: ../src/daemon/polkit.c:105
-msgid "Cannot allocate PolKitContext."
-msgstr "æ æ³åé
PolKitContextã"
-
-#: ../src/daemon/polkit.c:110
-#, c-format
-msgid "Cannot initialize PolKitContext: %s"
-msgstr "æ æ³å使åPolKitContext: %s"
-
-#: ../src/daemon/polkit.c:119
-#, c-format
-msgid "Could not determine whether caller is authorized: %s"
-msgstr "æ æ³å¤æè°ç¨è
æ¯å¦å·²è·å¾ææ: %s"
-
-#: ../src/daemon/polkit.c:139
-#, c-format
-msgid "Cannot obtain auth: %s"
-msgstr "æ æ³è·åææ: %s"
-
-#: ../src/daemon/polkit.c:148
-#, c-format
-msgid "PolicyKit responded with '%s'"
-msgstr "PolicyKitåå¤'%s'"
-
-#: ../src/daemon/main.c:142
+#: ../src/daemon/main.c:145
#, c-format
msgid "Got signal %s."
msgstr "è·å¾ä¿¡å·%s"
-#: ../src/daemon/main.c:169
+#: ../src/daemon/main.c:172
msgid "Exiting."
msgstr "éåº"
-#: ../src/daemon/main.c:187
+#: ../src/daemon/main.c:190
#, c-format
msgid "Failed to find user '%s'."
msgstr "æ¾ä¸å°ç¨æ· `%s' "
-#: ../src/daemon/main.c:192
+#: ../src/daemon/main.c:195
#, c-format
msgid "Failed to find group '%s'."
msgstr "æ¾ä¸å°ç¨æ·ç» `%s'"
-#: ../src/daemon/main.c:196
+#: ../src/daemon/main.c:199
#, c-format
msgid "Found user '%s' (UID %lu) and group '%s' (GID %lu)."
msgstr "åç°ç¨æ·'%s' (UID %lu)åç»'%s' (GID %lu)."
-#: ../src/daemon/main.c:201
+#: ../src/daemon/main.c:204
#, c-format
msgid "GID of user '%s' and of group '%s' don't match."
msgstr "ç¨æ·'%s'ä¸ç»'%s'çGIDä¸å¹é
."
-#: ../src/daemon/main.c:206
+#: ../src/daemon/main.c:209
#, c-format
msgid "Home directory of user '%s' is not '%s', ignoring."
msgstr "ç¨æ·'%s'ç主æ件夹ä¸æ¯'%s'ï¼å¿½ç¥ã"
-#: ../src/daemon/main.c:209 ../src/daemon/main.c:214
+#: ../src/daemon/main.c:212 ../src/daemon/main.c:217
#, c-format
msgid "Failed to create '%s': %s"
msgstr "å建'%s'å¤±è´¥ï¼ %s"
-#: ../src/daemon/main.c:221
+#: ../src/daemon/main.c:224
#, c-format
msgid "Failed to change group list: %s"
msgstr "æ´æ¹ç»å表失败ï¼%s"
-#: ../src/daemon/main.c:237
+#: ../src/daemon/main.c:240
#, c-format
msgid "Failed to change GID: %s"
msgstr "æ´æ¹GID失败ï¼%s"
-#: ../src/daemon/main.c:253
+#: ../src/daemon/main.c:256
#, c-format
msgid "Failed to change UID: %s"
msgstr "æ´æ¹UID失败ï¼%s"
-#: ../src/daemon/main.c:267
+#: ../src/daemon/main.c:270
msgid "Successfully dropped root privileges."
msgstr "æåæ¾å¼rootæéã"
-#: ../src/daemon/main.c:275
+#: ../src/daemon/main.c:278
msgid "System wide mode unsupported on this platform."
msgstr "æ¤å¹³å°ä¸æ¯æsystem-wide模å¼ã"
-#: ../src/daemon/main.c:293
+#: ../src/daemon/main.c:296
#, c-format
msgid "setrlimit(%s, (%u, %u)) failed: %s"
msgstr "setrlimit(%s, (%u, %u)) 失败ï¼%s"
-#: ../src/daemon/main.c:481
+#: ../src/daemon/main.c:471
msgid "Failed to parse command line."
msgstr "åæå½ä»¤è¡å¤±è´¥ã"
-#: ../src/daemon/main.c:505
-#, c-format
-msgid "We're in the group '%s', allowing high-priority scheduling."
-msgstr "æ们å¨'%s'ç»ä¸ï¼å
许é«ä¼å
级è°åº¦ã"
-
-#: ../src/daemon/main.c:512
-#, c-format
-msgid "We're in the group '%s', allowing real-time scheduling."
-msgstr "æ们å¨'%s'ç»ä¸ï¼å
许å®æ¶è°åº¦ã"
-
-#: ../src/daemon/main.c:520
-msgid "PolicyKit grants us acquire-high-priority privilege."
-msgstr "PolicyKitæäºæ们âè·åé«ä¼å
级âæéã"
-
-#: ../src/daemon/main.c:523
-msgid "PolicyKit refuses acquire-high-priority privilege."
-msgstr "PolicyKitæç»âè·åé«ä¼å
级âæéã"
-
-#: ../src/daemon/main.c:528
-msgid "PolicyKit grants us acquire-real-time privilege."
-msgstr "PolicyKitæäºæ们âè·åå®æ¶âæéã"
-
-#: ../src/daemon/main.c:531
-msgid "PolicyKit refuses acquire-real-time privilege."
-msgstr "PolicyKitæç»æ们âè·åå®æ¶âæéã"
-
-#: ../src/daemon/main.c:560
-#, c-format
-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 ""
-"é
ç½®ä¸éè¦è°ç¨ SUID rootãå®æ¶å/æè
é«ä¼å
è°åº¦ãä½æ¯æ们缺å°å¿
è¦çç¹æï¼\n"
-"æ们ä¸å±äºç»ç¾¤ '%s'ï¼PolicyKit æç»èµäºæ们è¦æ±çç¹æï¼èæ们æ æ³å¢å "
-"RLIMIT_NICE/RLIMIT_RTPRIO èµæºéå¶ã\n"
-"è¦å¯ç¨å®æ¶/é«ä¼å
è°åº¦ï¼è¯·è·å¾éå½ç PolicyKit ç¹æï¼æè
æ为 '%s' æåï¼ä¹å¯"
-"以为è¿ä¸ªç¨æ·å¢å RLIMIT_NICE/RLIMIT_RTPRIO èµæºéå¶ã"
-
-#: ../src/daemon/main.c:585
-msgid ""
-"High-priority scheduling enabled in configuration but not allowed by policy."
-msgstr "é
ç½®ä¸å·²å¯ç¨é«ä¼å
级è°åº¦ï¼ä½çç¥æªå
许ã"
-
-#: ../src/daemon/main.c:614
-msgid "Successfully increased RLIMIT_RTPRIO"
-msgstr "æé«RLIMIT_RTPRIOæåã"
-
-#: ../src/daemon/main.c:617
-#, c-format
-msgid "RLIMIT_RTPRIO failed: %s"
-msgstr "RLIMIT_RTPRIO失败ï¼%s"
-
-#: ../src/daemon/main.c:624
-msgid "Giving up CAP_NICE"
-msgstr "æ£å¨æ¾å¼CAP_NICE"
-
-#: ../src/daemon/main.c:631
-msgid ""
-"Real-time scheduling enabled in configuration but not allowed by policy."
-msgstr "é
ç½®ä¸å·²å¯ç¨å®æ¶è°åº¦ï¼ä½çç¥æªå
许ã"
-
-#: ../src/daemon/main.c:692
+#: ../src/daemon/main.c:538
msgid "Daemon not running"
msgstr "åå°ç¨åºæ²¡æè¿è¡"
-#: ../src/daemon/main.c:694
+#: ../src/daemon/main.c:540
#, c-format
msgid "Daemon running as PID %u"
msgstr "åå°ç¨åºæ£å¨è¿è¡ï¼PID %u"
-#: ../src/daemon/main.c:704
+#: ../src/daemon/main.c:550
#, c-format
msgid "Failed to kill daemon: %s"
msgstr "ææ»åå°ç¨åºå¤±è´¥ï¼%s"
-#: ../src/daemon/main.c:722
+#: ../src/daemon/main.c:568
msgid ""
"This program is not intended to be run as root (unless --system is "
"specified)."
msgstr "ä¸åºä»¥root身份è¿è¡æ¬ç¨åºï¼é¤éæå® --systemï¼ã"
-#: ../src/daemon/main.c:724
+#: ../src/daemon/main.c:570
msgid "Root privileges required."
msgstr "éè¦ root æéã"
-#: ../src/daemon/main.c:729
+#: ../src/daemon/main.c:575
msgid "--start not supported for system instances."
msgstr "ç³»ç»å®ä¾ä¸æ¯æ --startã"
-#: ../src/daemon/main.c:734
+#: ../src/daemon/main.c:580
msgid "Running in system mode, but --disallow-exit not set!"
msgstr "æ£å¨ä»¥ç³»ç»æ¨¡å¼è¿è¡ï¼ä½æ¯ --disallow-exit æªè®¾å®ï¼"
-#: ../src/daemon/main.c:737
+#: ../src/daemon/main.c:583
msgid "Running in system mode, but --disallow-module-loading not set!"
msgstr "æ£å¨ä»¥ç³»ç»æ¨¡å¼è¿è¡ï¼ä½æ¯ --disallow-module-loading æªè®¾å®ï¼"
-#: ../src/daemon/main.c:740
+#: ../src/daemon/main.c:586
msgid "Running in system mode, forcibly disabling SHM mode!"
msgstr "æ£å¨ä»¥ç³»ç»æ¨¡å¼è¿è¡ï¼å¼ºå¶ç¦ç¨SHM模å¼ï¼"
-#: ../src/daemon/main.c:745
+#: ../src/daemon/main.c:591
msgid "Running in system mode, forcibly disabling exit idle time!"
msgstr "æ£å¨ä»¥ç³»ç»æ¨¡å¼è¿è¡ï¼å¼ºå¶ç¦ç¨éåºç©ºé²æ¶é´ï¼"
-#: ../src/daemon/main.c:772
+#: ../src/daemon/main.c:618
msgid "Failed to acquire stdio."
msgstr "è·åstdio失败ã"
-#: ../src/daemon/main.c:778
+#: ../src/daemon/main.c:624
#, c-format
msgid "pipe failed: %s"
msgstr "管é失败ï¼%s"
-#: ../src/daemon/main.c:783
+#: ../src/daemon/main.c:629
#, c-format
msgid "fork() failed: %s"
msgstr "fork()失败ï¼%s"
-#: ../src/daemon/main.c:797
+#: ../src/daemon/main.c:643 ../src/utils/pacat.c:505
#, c-format
msgid "read() failed: %s"
msgstr "read()失败ï¼%s"
-#: ../src/daemon/main.c:803
+#: ../src/daemon/main.c:649
msgid "Daemon startup failed."
msgstr "åå°ç¨åºå¯å¨å¤±è´¥ã"
-#: ../src/daemon/main.c:805
+#: ../src/daemon/main.c:651
msgid "Daemon startup successful."
msgstr "åå°ç¨åºå¯å¨æåã"
-#: ../src/daemon/main.c:875
+#: ../src/daemon/main.c:728
#, c-format
msgid "This is PulseAudio %s"
msgstr "è¿æ¯ PulseAudio %s"
-#: ../src/daemon/main.c:876
+#: ../src/daemon/main.c:729
#, c-format
msgid "Compilation host: %s"
msgstr "ç¼è¯ä¸»æºï¼%s"
-#: ../src/daemon/main.c:877
+#: ../src/daemon/main.c:730
#, c-format
msgid "Compilation CFLAGS: %s"
msgstr "ç¼è¯CFLAGSï¼%s"
-#: ../src/daemon/main.c:880
+#: ../src/daemon/main.c:733
#, c-format
msgid "Running on host: %s"
msgstr "æ£å¨ä¸»æºä¸è¿è¡ï¼%s"
-#: ../src/daemon/main.c:883
+#: ../src/daemon/main.c:736
#, c-format
msgid "Found %u CPUs."
msgstr "æ¾å° %u CPUã"
-#: ../src/daemon/main.c:885
+#: ../src/daemon/main.c:738
#, c-format
msgid "Page size is %lu bytes"
msgstr "页é¢å¤§å°ä¸º%luåè"
-#: ../src/daemon/main.c:888
+#: ../src/daemon/main.c:741
msgid "Compiled with Valgrind support: yes"
msgstr "ç¼è¯å¯ç¨Valgrindæ¯æï¼æ¯"
-#: ../src/daemon/main.c:890
+#: ../src/daemon/main.c:743
msgid "Compiled with Valgrind support: no"
msgstr "ç¼è¯å¯ç¨Valgrindæ¯æï¼å¦"
-#: ../src/daemon/main.c:893
+#: ../src/daemon/main.c:746
#, c-format
msgid "Running in valgrind mode: %s"
msgstr "æ£å¨ä»¥valgrind模å¼è¿è¡ï¼%s"
-#: ../src/daemon/main.c:896
+#: ../src/daemon/main.c:749
msgid "Optimized build: yes"
msgstr "ä¼åçæï¼æ¯"
-#: ../src/daemon/main.c:898
+#: ../src/daemon/main.c:751
msgid "Optimized build: no"
msgstr "ä¼åçæï¼å¦"
-#: ../src/daemon/main.c:902
+#: ../src/daemon/main.c:755
msgid "NDEBUG defined, all asserts disabled."
msgstr "æç» NDEBUGï¼ç¦ç¨ææ assert"
-#: ../src/daemon/main.c:904
+#: ../src/daemon/main.c:757
msgid "FASTPATH defined, only fast path asserts disabled."
msgstr "æç» FASTPATHï¼åªç¦ç¨å¿«éè·¯å¾ assertã"
-#: ../src/daemon/main.c:906
+#: ../src/daemon/main.c:759
msgid "All asserts enabled."
msgstr "å¯ç¨ææ assertã"
-#: ../src/daemon/main.c:910
+#: ../src/daemon/main.c:763
msgid "Failed to get machine ID"
msgstr "è·åmachine ID失败"
-#: ../src/daemon/main.c:913
+#: ../src/daemon/main.c:766
#, c-format
msgid "Machine ID is %s."
msgstr "machine IDæ¯%sã"
-#: ../src/daemon/main.c:917
+#: ../src/daemon/main.c:770
#, fuzzy, c-format
msgid "Session ID is %s."
msgstr "machine IDæ¯%sã"
-#: ../src/daemon/main.c:923
+#: ../src/daemon/main.c:776
#, c-format
msgid "Using runtime directory %s."
msgstr "æ£å¨ä½¿ç¨è¿è¡æ¶æ件夹%sã"
-#: ../src/daemon/main.c:928
+#: ../src/daemon/main.c:781
#, c-format
msgid "Using state directory %s."
msgstr "æ£å¨ä½¿ç¨ç¶ææ件夹%sã"
-#: ../src/daemon/main.c:931
+#: ../src/daemon/main.c:784
#, c-format
msgid "Running in system mode: %s"
msgstr "æ£å¨ä»¥ç³»ç»æ¨¡å¼è¿è¡ï¼%s"
-#: ../src/daemon/main.c:934
+#: ../src/daemon/main.c:787
msgid ""
"OK, so you are running PA in system mode. Please note that you most likely "
"shouldn't be doing that.\n"
@@ -451,41 +335,41 @@ msgid ""
"explanation why system mode is usually a bad idea."
msgstr ""
-#: ../src/daemon/main.c:951
+#: ../src/daemon/main.c:804
msgid "pa_pid_file_create() failed."
msgstr "pa_pid_file_create()失败ã"
-#: ../src/daemon/main.c:961
+#: ../src/daemon/main.c:814
msgid "Fresh high-resolution timers available! Bon appetit!"
msgstr "æ°é²çé«å辨ç计æ¶å¨å¼é
äºï¼å个饱ï¼"
-#: ../src/daemon/main.c:963
+#: ../src/daemon/main.c:816
msgid ""
"Dude, your kernel stinks! The chef's recommendation today is Linux with high-"
"resolution timers enabled!"
msgstr "èå
ï¼ä½ çå
æ ¸çèï¼ç°å¨æµè¡çæ¯å¯ç¨äºé«å辩ç计åå¨çLinuxï¼"
-#: ../src/daemon/main.c:988
+#: ../src/daemon/main.c:834
msgid "pa_core_new() failed."
msgstr "pa_core_new()失败ã"
-#: ../src/daemon/main.c:1050
+#: ../src/daemon/main.c:896
msgid "Failed to initialize daemon."
msgstr "åå°ç¨åºåå§å失败ã"
-#: ../src/daemon/main.c:1055
+#: ../src/daemon/main.c:901
msgid "Daemon startup without any loaded modules, refusing to work."
msgstr "åå°ç¨åºå¯å¨æªå 载任ä½æ¨¡åï¼æç»å·¥ä½ã"
-#: ../src/daemon/main.c:1072
+#: ../src/daemon/main.c:918
msgid "Daemon startup complete."
msgstr "åå°ç¨åºå¯å¨å®æã"
-#: ../src/daemon/main.c:1078
+#: ../src/daemon/main.c:924
msgid "Daemon shutdown initiated."
msgstr "å¼å§å
³éåå°ç¨åºã"
-#: ../src/daemon/main.c:1100
+#: ../src/daemon/main.c:946
msgid "Daemon terminated."
msgstr "åå°ç¨åºå·²ç»æ¢ã"
@@ -802,14 +686,10 @@ msgstr "æå®çé»è®¤é¢éå°å¾çé¢éæ°ä¸æå®çé»è®¤é¢éæ°ä¸å
msgid "### Read from configuration file: %s ###\n"
msgstr "### ä»é
ç½®æ件读åï¼%s ###\n"
-#: ../src/daemon/caps.c:63
+#: ../src/daemon/caps.c:65
msgid "Dropping root privileges."
msgstr "æ£å¨åæ¶ root ç¹æã"
-#: ../src/daemon/caps.c:103
-msgid "Limited capabilities successfully to CAP_SYS_NICE."
-msgstr "æ§è½æåéå¶å°CAP_SYS_NICEã"
-
#: ../src/daemon/pulseaudio.desktop.in.h:1
msgid "PulseAudio Sound System"
msgstr "PulseAudio 声é³ç³»ç»"
@@ -818,24 +698,6 @@ msgstr "PulseAudio 声é³ç³»ç»"
msgid "Start the PulseAudio Sound System"
msgstr "å¯å¨ PulseAudio 声é³ç³»ç»"
-#: ../src/daemon/org.pulseaudio.policy.in.h:1
-msgid ""
-"High-priority scheduling (negative Unix nice level) for the PulseAudio daemon"
-msgstr "PulseAudio å®æ¤è¿ç¨çé«ä¼å
è°åº¦ï¼è´ç Unix nic ç级ï¼"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:2
-msgid "Real-time scheduling for the PulseAudio daemon"
-msgstr "PulseAudio å®æ¤è¿ç¨çå®æ¶è°åº¦ã"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:3
-msgid ""
-"System policy prevents PulseAudio from acquiring high-priority scheduling."
-msgstr "ç³»ç»çç¥é²æ¢ PulseAudio è·å¾é«ä¼å
è°åº¦ã"
-
-#: ../src/daemon/org.pulseaudio.policy.in.h:4
-msgid "System policy prevents PulseAudio from acquiring real-time scheduling."
-msgstr "ç³»ç»çç¥é²æ¢ PulseAudio è·å¾å®æ¶è°åº¦ã"
-
#: ../src/pulse/channelmap.c:105 ../src/pulse/channelmap.c:747
msgid "Mono"
msgstr "å声é"
@@ -1208,183 +1070,187 @@ msgstr "cookieæ°æ®åæ失败"
msgid "Failed to open configuration file '%s': %s"
msgstr "æå¼é
ç½®æ件'%s'失败ï¼%s"
-#: ../src/pulse/context.c:546
+#: ../src/pulse/context.c:550
msgid "No cookie loaded. Attempting to connect without."
msgstr "没æå è½½cookieãå°è¯ä¸å è½½cookieè¿è¡è¿æ¥ã"
-#: ../src/pulse/context.c:676
+#: ../src/pulse/context.c:693
#, c-format
msgid "fork(): %s"
msgstr "fork()ï¼%s"
-#: ../src/pulse/context.c:729
+#: ../src/pulse/context.c:745
#, c-format
msgid "waitpid(): %s"
msgstr "waitpid()ï¼%s"
-#: ../src/pulse/context.c:1403
+#: ../src/pulse/context.c:1432
#, c-format
msgid "Received message for unknown extension '%s'"
msgstr "æ¶å°æªç¥æ©å±'%s'çä¿¡æ¯"
-#: ../src/utils/pacat.c:107
-#, c-format
-msgid "Failed to drain stream: %s\n"
+#: ../src/utils/pacat.c:108
+#, fuzzy, c-format
+msgid "Failed to drain stream: %s"
msgstr "æåºæµå¤±è´¥ï¼%s\n"
-#: ../src/utils/pacat.c:112
-msgid "Playback stream drained.\n"
+#: ../src/utils/pacat.c:113
+#, fuzzy
+msgid "Playback stream drained."
msgstr "æµææ¾å®æ¯ã\n"
-#: ../src/utils/pacat.c:122
-msgid "Draining connection to server.\n"
+#: ../src/utils/pacat.c:123
+#, fuzzy
+msgid "Draining connection to server."
msgstr "Draining è¿æ¥å°æå¡å¨ã\n"
-#: ../src/utils/pacat.c:135
-#, c-format
-msgid "pa_stream_drain(): %s\n"
+#: ../src/utils/pacat.c:136
+#, fuzzy, c-format
+msgid "pa_stream_drain(): %s"
msgstr "pa_stream_drain()ï¼%s\n"
-#: ../src/utils/pacat.c:158
-#, c-format
-msgid "pa_stream_write() failed: %s\n"
+#: ../src/utils/pacat.c:159
+#, fuzzy, c-format
+msgid "pa_stream_write() failed: %s"
msgstr "pa_stream_write()失败ï¼%s\n"
-#: ../src/utils/pacat.c:233 ../src/utils/pacat.c:262
-#, c-format
-msgid "pa_stream_peek() failed: %s\n"
+#: ../src/utils/pacat.c:197
+#, fuzzy, c-format
+msgid "pa_stream_begin_write() failed: %s"
+msgstr "pa_stream_write()失败ï¼%s\n"
+
+#: ../src/utils/pacat.c:237 ../src/utils/pacat.c:267
+#, fuzzy, c-format
+msgid "pa_stream_peek() failed: %s"
msgstr "pa_stream_peek()失败ï¼%s\n"
-#: ../src/utils/pacat.c:302
-msgid "Stream successfully created.\n"
+#: ../src/utils/pacat.c:307
+#, fuzzy
+msgid "Stream successfully created."
msgstr "æµå建æåã\n"
-#: ../src/utils/pacat.c:305
-#, c-format
-msgid "pa_stream_get_buffer_attr() failed: %s\n"
+#: ../src/utils/pacat.c:310
+#, fuzzy, c-format
+msgid "pa_stream_get_buffer_attr() failed: %s"
msgstr "pa_stream_get_buffer_attr()失败ï¼%s\n"
-#: ../src/utils/pacat.c:309
-#, c-format
-msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"
+#: ../src/utils/pacat.c:314
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"
msgstr "ç¼å²è®¡éï¼maxlength=%uï¼tlength=%uï¼prebuf=%uï¼minreq=%u\n"
-#: ../src/utils/pacat.c:312
-#, c-format
-msgid "Buffer metrics: maxlength=%u, fragsize=%u\n"
+#: ../src/utils/pacat.c:317
+#, fuzzy, c-format
+msgid "Buffer metrics: maxlength=%u, fragsize=%u"
msgstr "ç¼å²è®¡éï¼maxlength=%uï¼fragsize=%u\n"
-#: ../src/utils/pacat.c:316
-#, c-format
-msgid "Using sample spec '%s', channel map '%s'.\n"
+#: ../src/utils/pacat.c:321
+#, fuzzy, c-format
+msgid "Using sample spec '%s', channel map '%s'."
msgstr "æ£å¨ä½¿ç¨æ ·åè§æ ¼'%s'ï¼ééæ å°'%s'ã\n"
-#: ../src/utils/pacat.c:320
-#, c-format
-msgid "Connected to device %s (%u, %ssuspended).\n"
+#: ../src/utils/pacat.c:325
+#, fuzzy, c-format
+msgid "Connected to device %s (%u, %ssuspended)."
msgstr "å·²è¿æ¥è³è®¾å¤%s (%uï¼%sæèµ·ï¼ã\n"
-#: ../src/utils/pacat.c:330
-#, c-format
-msgid "Stream error: %s\n"
+#: ../src/utils/pacat.c:335
+#, fuzzy, c-format
+msgid "Stream error: %s"
msgstr "æµé误ï¼%s\n"
-#: ../src/utils/pacat.c:340
-#, c-format
-msgid "Stream device suspended.%s \n"
+#: ../src/utils/pacat.c:345
+#, fuzzy, c-format
+msgid "Stream device suspended.%s"
msgstr "æµè®¾å¤æèµ·ã%s\n"
-#: ../src/utils/pacat.c:342
-#, c-format
-msgid "Stream device resumed.%s \n"
+#: ../src/utils/pacat.c:347
+#, fuzzy, c-format
+msgid "Stream device resumed.%s"
msgstr "æµè®¾å¤æ¢å¤ã%s\n"
-#: ../src/utils/pacat.c:350
-#, c-format
-msgid "Stream underrun.%s \n"
+#: ../src/utils/pacat.c:355
+#, fuzzy, c-format
+msgid "Stream underrun.%s"
msgstr "æµæ¬ è½½è¿è¡ã%s\n"
-#: ../src/utils/pacat.c:357
-#, c-format
-msgid "Stream overrun.%s \n"
+#: ../src/utils/pacat.c:362
+#, fuzzy, c-format
+msgid "Stream overrun.%s"
msgstr "æµè¶
éè¿è¡ã%s\n"
-#: ../src/utils/pacat.c:364
-#, c-format
-msgid "Stream started.%s \n"
+#: ../src/utils/pacat.c:369
+#, fuzzy, c-format
+msgid "Stream started.%s"
msgstr "æµå·²å¯å¨ã%s\n"
-#: ../src/utils/pacat.c:371
-#, c-format
-msgid "Stream moved to device %s (%u, %ssuspended).%s \n"
+#: ../src/utils/pacat.c:376
+#, fuzzy, c-format
+msgid "Stream moved to device %s (%u, %ssuspended).%s"
msgstr "æµç§»è³è®¾å¤%s ï¼%uï¼%sæèµ·ï¼ã%s\n"
-#: ../src/utils/pacat.c:371
+#: ../src/utils/pacat.c:376
msgid "not "
msgstr "not "
-#: ../src/utils/pacat.c:378
-#, c-format
-msgid "Stream buffer attributes changed.%s \n"
+#: ../src/utils/pacat.c:383
+#, fuzzy, c-format
+msgid "Stream buffer attributes changed.%s"
msgstr "æ´æ¹æµæ¢åºå±æ§ã%s\n"
-#: ../src/utils/pacat.c:411
-#, c-format
-msgid "Connection established.%s \n"
+#: ../src/utils/pacat.c:416
+#, fuzzy, c-format
+msgid "Connection established.%s"
msgstr "è¿æ¥å·²å»ºç«ã%s \n"
-#: ../src/utils/pacat.c:414
-#, c-format
-msgid "pa_stream_new() failed: %s\n"
+#: ../src/utils/pacat.c:419
+#, fuzzy, c-format
+msgid "pa_stream_new() failed: %s"
msgstr "pa_stream_new()失败ï¼%s\n"
-#: ../src/utils/pacat.c:442
-#, c-format
-msgid "pa_stream_connect_playback() failed: %s\n"
+#: ../src/utils/pacat.c:447
+#, fuzzy, c-format
+msgid "pa_stream_connect_playback() failed: %s"
msgstr "pa_stream_connect_playback()失败ï¼%s\n"
-#: ../src/utils/pacat.c:448
-#, c-format
-msgid "pa_stream_connect_record() failed: %s\n"
+#: ../src/utils/pacat.c:453
+#, fuzzy, c-format
+msgid "pa_stream_connect_record() failed: %s"
msgstr "pa_stream_connect_playback()失败ï¼%s\n"
-#: ../src/utils/pacat.c:462 ../src/utils/pasuspender.c:159
-#: ../src/utils/pactl.c:814
-#, c-format
-msgid "Connection failure: %s\n"
+#: ../src/utils/pacat.c:467
+#, fuzzy, c-format
+msgid "Connection failure: %s"
msgstr "è¿æ¥å¤±è´¥ï¼%s\n"
-#: ../src/utils/pacat.c:495
-msgid "Got EOF.\n"
-msgstr "æ¶å°EOFã\n"
-
#: ../src/utils/pacat.c:500
-#, c-format
-msgid "read() failed: %s\n"
-msgstr "read()失败ï¼%s\n"
+#, fuzzy
+msgid "Got EOF."
+msgstr "æ¶å°EOFã\n"
-#: ../src/utils/pacat.c:532
-#, c-format
-msgid "write() failed: %s\n"
+#: ../src/utils/pacat.c:537
+#, fuzzy, c-format
+msgid "write() failed: %s"
msgstr "write()失败ï¼%s\n"
-#: ../src/utils/pacat.c:553
-msgid "Got signal, exiting.\n"
+#: ../src/utils/pacat.c:558
+#, fuzzy
+msgid "Got signal, exiting."
msgstr "æ¶å°ä¿¡å·ï¼æ£å¨éåºã\n"
-#: ../src/utils/pacat.c:567
-#, c-format
-msgid "Failed to get latency: %s\n"
+#: ../src/utils/pacat.c:572
+#, fuzzy, c-format
+msgid "Failed to get latency: %s"
msgstr "è·åä¼ è¾å»¶è¿å¤±è´¥ï¼%s\n"
-#: ../src/utils/pacat.c:572
+#: ../src/utils/pacat.c:577
#, c-format
msgid "Time: %0.3f sec; Latency: %0.0f usec. \r"
msgstr "æ¶é´ï¼%0.3fç§ï¼å»¶è¿ï¼%0.0f å¾®ç§ã \r"
-#: ../src/utils/pacat.c:592
-#, c-format
-msgid "pa_stream_update_timing_info() failed: %s\n"
+#: ../src/utils/pacat.c:595
+#, fuzzy, c-format
+msgid "pa_stream_update_timing_info() failed: %s"
msgstr "pa_stream_update_timing_info()失败ï¼%s\n"
#: ../src/utils/pacat.c:605
@@ -1490,34 +1356,34 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
-#: ../src/utils/pacat.c:760 ../src/utils/pactl.c:900
+#: ../src/utils/pacat.c:760
#, fuzzy, c-format
-msgid "Invalid client name '%s'\n"
+msgid "Invalid client name '%s'"
msgstr "æ æçééæ å°æè¿°'%s'\n"
#: ../src/utils/pacat.c:776
#, fuzzy, c-format
-msgid "Invalid stream name '%s'\n"
+msgid "Invalid stream name '%s'"
msgstr "æ æçééæ ·æ¹æ³'%s'ã"
#: ../src/utils/pacat.c:813
-#, c-format
-msgid "Invalid channel map '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid channel map '%s'"
msgstr "æ æçééæ å°æè¿°'%s'\n"
#: ../src/utils/pacat.c:842
-#, c-format
-msgid "Invalid latency specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid latency specification '%s'"
msgstr "æ æç延è¿è§æ ¼æè¿° %s'\n"
#: ../src/utils/pacat.c:849
-#, c-format
-msgid "Invalid process time specification '%s'\n"
+#, fuzzy, c-format
+msgid "Invalid process time specification '%s'"
msgstr "æ æçå¤çæ¶é´æè¿° '%s'\n"
#: ../src/utils/pacat.c:861
#, fuzzy, c-format
-msgid "Invalid property '%s'\n"
+msgid "Invalid property '%s'"
msgstr "æ æçééæ ·æ¹æ³'%s'ã"
#: ../src/utils/pacat.c:878
@@ -1526,60 +1392,66 @@ msgid "Unknown file format %s."
msgstr ""
#: ../src/utils/pacat.c:897
-msgid "Invalid sample specification\n"
+#, fuzzy
+msgid "Invalid sample specification"
msgstr "æ æçéæ ·æè¿°\n"
#: ../src/utils/pacat.c:907
-#, c-format
-msgid "open(): %s\n"
+#, fuzzy, c-format
+msgid "open(): %s"
msgstr "open()ï¼%s\n"
#: ../src/utils/pacat.c:912
-#, c-format
-msgid "dup2(): %s\n"
+#, fuzzy, c-format
+msgid "dup2(): %s"
msgstr "dup2()ï¼%s\n"
#: ../src/utils/pacat.c:919
-msgid "Too many arguments.\n"
+#, fuzzy
+msgid "Too many arguments."
msgstr "åæ°è¿å¤ã\n"
#: ../src/utils/pacat.c:930
#, fuzzy
-msgid "Failed to generate sample specification for file.\n"
+msgid "Failed to generate sample specification for file."
msgstr "è·åéæ ·ä¿¡æ¯å¤±è´¥ï¼%s\n"
#: ../src/utils/pacat.c:950
#, fuzzy
-msgid "Failed to open audio file.\n"
+msgid "Failed to open audio file."
msgstr "æå¼å£°é³æ件失败ã\n"
#: ../src/utils/pacat.c:956
+#, fuzzy
msgid ""
"Warning: specified sample specification will be overwritten with "
-"specification from file.\n"
-msgstr ""
+"specification from file."
+msgstr "以éæ ·è§æ ¼'%s'æå¼%sæµã\n"
-#: ../src/utils/pacat.c:959 ../src/utils/pactl.c:944
+#: ../src/utils/pacat.c:959
#, fuzzy
-msgid "Failed to determine sample specification from file.\n"
+msgid "Failed to determine sample specification from file."
msgstr "è·åéæ ·ä¿¡æ¯å¤±è´¥ï¼%s\n"
#: ../src/utils/pacat.c:968
-msgid "Warning: Failed to determine channel map from file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: Failed to determine channel map from file."
+msgstr "以éæ ·è§æ ¼'%s'æå¼%sæµã\n"
#: ../src/utils/pacat.c:979
-msgid "Channel map doesn't match sample specification\n"
+#, fuzzy
+msgid "Channel map doesn't match sample specification"
msgstr "ééæ å°ä¸éæ ·æè¿°ä¸å¹é
\n"
#: ../src/utils/pacat.c:990
-msgid "Warning: failed to write channel map to file.\n"
-msgstr ""
+#, fuzzy
+msgid "Warning: failed to write channel map to file."
+msgstr "以éæ ·è§æ ¼'%s'æå¼%sæµã\n"
#: ../src/utils/pacat.c:1005
#, fuzzy, c-format
msgid ""
-"Opening a %s stream with sample specification '%s' and channel map '%s'.\n"
+"Opening a %s stream with sample specification '%s' and channel map '%s'."
msgstr "以éæ ·è§æ ¼'%s'æå¼%sæµã\n"
#: ../src/utils/pacat.c:1006
@@ -1590,35 +1462,34 @@ msgstr "æ£å¨å½å¶"
msgid "playback"
msgstr "åæ¾"
-#: ../src/utils/pacat.c:1032 ../src/utils/pasuspender.c:277
-#: ../src/utils/pactl.c:1104
-#, c-format
-msgid "pa_mainloop_new() failed.\n"
+#: ../src/utils/pacat.c:1032
+#, fuzzy
+msgid "pa_mainloop_new() failed."
msgstr "pa_mainloop_new()失败ã\n"
#: ../src/utils/pacat.c:1051
-msgid "io_new() failed.\n"
+#, fuzzy
+msgid "io_new() failed."
msgstr "io_new()失败ã\n"
-#: ../src/utils/pacat.c:1058 ../src/utils/pasuspender.c:290
-#: ../src/utils/pactl.c:1116
-#, c-format
-msgid "pa_context_new() failed.\n"
+#: ../src/utils/pacat.c:1058
+#, fuzzy
+msgid "pa_context_new() failed."
msgstr "pa_context_new()失败ã\n"
-#: ../src/utils/pacat.c:1066
-#, fuzzy, c-format
-msgid "pa_context_connect() failed: %s\n"
+#: ../src/utils/pacat.c:1066 ../src/utils/pactl.c:1122
+#, c-format
+msgid "pa_context_connect() failed: %s"
msgstr "pa_context_connect()失败ï¼%s"
-#: ../src/utils/pacat.c:1077
-msgid "time_new() failed.\n"
-msgstr "time_new()失败ã\n"
+#: ../src/utils/pacat.c:1072
+#, fuzzy
+msgid "pa_context_rttime_new() failed."
+msgstr "pa_context_new()失败ã\n"
-#: ../src/utils/pacat.c:1084 ../src/utils/pasuspender.c:298
-#: ../src/utils/pactl.c:1127
-#, c-format
-msgid "pa_mainloop_run() failed.\n"
+#: ../src/utils/pacat.c:1079
+#, fuzzy
+msgid "pa_mainloop_run() failed."
msgstr "pa_mainloop_run()失败ã\n"
#: ../src/utils/pasuspender.c:81
@@ -1646,6 +1517,11 @@ msgstr "æ¢å¤å¤±è´¥ï¼%s\n"
msgid "WARNING: Sound server is not local, not suspending.\n"
msgstr "è¦åï¼éæ¬å°å£°é³æå¡å¨ï¼ä¸ä¼æèµ·ã\n"
+#: ../src/utils/pasuspender.c:159 ../src/utils/pactl.c:814
+#, c-format
+msgid "Connection failure: %s\n"
+msgstr "è¿æ¥å¤±è´¥ï¼%s\n"
+
#: ../src/utils/pasuspender.c:176 ../src/utils/pactl.c:820
#, c-format
msgid "Got SIGINT, exiting.\n"
@@ -1685,6 +1561,21 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
+#: ../src/utils/pasuspender.c:277 ../src/utils/pactl.c:1104
+#, c-format
+msgid "pa_mainloop_new() failed.\n"
+msgstr "pa_mainloop_new()失败ã\n"
+
+#: ../src/utils/pasuspender.c:290 ../src/utils/pactl.c:1116
+#, c-format
+msgid "pa_context_new() failed.\n"
+msgstr "pa_context_new()失败ã\n"
+
+#: ../src/utils/pasuspender.c:298 ../src/utils/pactl.c:1127
+#, c-format
+msgid "pa_mainloop_run() failed.\n"
+msgstr "pa_mainloop_run()失败ã\n"
+
#: ../src/utils/pactl.c:128
#, c-format
msgid "Failed to get statistics: %s\n"
@@ -2099,6 +1990,11 @@ msgstr ""
"Compiled with libpulse %s\n"
"Linked with libpulse %s\n"
+#: ../src/utils/pactl.c:900
+#, fuzzy, c-format
+msgid "Invalid client name '%s'\n"
+msgstr "æ æçééæ å°æè¿°'%s'\n"
+
#: ../src/utils/pactl.c:926
msgid "Please specify a sample file to load\n"
msgstr "请æå®è¦å è½½çéæ ·æ件\n"
@@ -2107,6 +2003,11 @@ msgstr "请æå®è¦å è½½çéæ ·æ件\n"
msgid "Failed to open sound file.\n"
msgstr "æå¼å£°é³æ件失败ã\n"
+#: ../src/utils/pactl.c:944
+#, fuzzy
+msgid "Failed to determine sample specification from file.\n"
+msgstr "è·åéæ ·ä¿¡æ¯å¤±è´¥ï¼%s\n"
+
#: ../src/utils/pactl.c:951
#, fuzzy
msgid "Warning: Failed to determine sample specification from file.\n"
@@ -2166,11 +2067,6 @@ msgstr "ä½ å¿
é¡»æå®å£°å¡å称/ç´¢å¼å侧åå称\n"
msgid "No valid command specified.\n"
msgstr "æªæå®ææçå½ä»¤ã\n"
-#: ../src/utils/pactl.c:1122
-#, c-format
-msgid "pa_context_connect() failed: %s"
-msgstr "pa_context_connect()失败ï¼%s"
-
#: ../src/utils/pax11publish.c:61
#, c-format
msgid ""
@@ -2286,11 +2182,11 @@ msgstr "read()ï¼%s"
msgid "write(): %s"
msgstr "write()ï¼%s"
-#: ../src/pulsecore/lock-autospawn.c:126 ../src/pulsecore/lock-autospawn.c:207
+#: ../src/pulsecore/lock-autospawn.c:136 ../src/pulsecore/lock-autospawn.c:219
msgid "Cannot access autospawn lock."
msgstr "ä¸è½è®¿é®autospawnéã"
-#: ../src/modules/alsa/alsa-sink.c:445 ../src/modules/alsa/alsa-sink.c:593
+#: ../src/modules/alsa/alsa-sink.c:449 ../src/modules/alsa/alsa-sink.c:606
#, c-format
msgid ""
"ALSA woke us up to write new data to the device, but there was actually "
@@ -2306,7 +2202,7 @@ msgstr ""
"æéæ们设置 POLLOUT -- ä½ç»ææ¯ snd_pcm_avail() è¿å 0 æè
å¦ä¸ä¸ªå°äºæå°å¯"
"ç¨å¼çæ°å¼ã"
-#: ../src/modules/alsa/alsa-source.c:424 ../src/modules/alsa/alsa-source.c:563
+#: ../src/modules/alsa/alsa-source.c:429 ../src/modules/alsa/alsa-source.c:578
#, c-format
msgid ""
"ALSA woke us up to read new data from the device, but there was actually "
@@ -2323,15 +2219,15 @@ msgstr ""
"ç¨å¼çæ°å¼ã"
#: ../src/modules/alsa/module-alsa-card.c:152
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2062
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2065
msgid "Off"
msgstr "å
³é"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2032
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2035
msgid "High Fidelity Playback (A2DP)"
msgstr "é«ä¿çåæ¾ï¼A2DPï¼"
-#: ../src/modules/bluetooth/module-bluetooth-device.c:2047
+#: ../src/modules/bluetooth/module-bluetooth-device.c:2050
msgid "Telephony Duplex (HSP/HFP)"
msgstr "åå·¥çµè¯ï¼HSP/HFPï¼"
@@ -2339,6 +2235,125 @@ msgstr "åå·¥çµè¯ï¼HSP/HFPï¼"
msgid "PulseAudio Sound Server"
msgstr "PulseAudio 声é³æå¡å¨"
+#~ msgid "Cannot connect to system bus: %s"
+#~ msgstr "æ æ³è¿æ¥å°ç³»ç»æ»çº¿ï¼%s"
+
+#~ msgid "Cannot get caller from PID: %s"
+#~ msgstr "æ æ³ä»PIDè·åè°ç¨è
ï¼%s"
+
+#~ msgid "Cannot set UID on caller object."
+#~ msgstr "æ æ³ä¸ºè°ç¨è
设å®UIDã"
+
+#~ msgid "Failed to get CK session."
+#~ msgstr "è·åCKä¼è¯å¤±è´¥ã"
+
+#~ msgid "Cannot set UID on session object."
+#~ msgstr "æ æ³ä¸ºä¼è¯å¯¹è±¡è®¾å®UIDã"
+
+#~ msgid "Cannot allocate PolKitAction."
+#~ msgstr "ä¸è½åé
PolKitActionã"
+
+#~ msgid "Cannot set action_id"
+#~ msgstr "æ æ³è®¾å®action_id"
+
+#~ msgid "Cannot allocate PolKitContext."
+#~ msgstr "æ æ³åé
PolKitContextã"
+
+#~ msgid "Cannot initialize PolKitContext: %s"
+#~ msgstr "æ æ³å使åPolKitContext: %s"
+
+#~ msgid "Could not determine whether caller is authorized: %s"
+#~ msgstr "æ æ³å¤æè°ç¨è
æ¯å¦å·²è·å¾ææ: %s"
+
+#~ msgid "Cannot obtain auth: %s"
+#~ msgstr "æ æ³è·åææ: %s"
+
+#~ msgid "PolicyKit responded with '%s'"
+#~ msgstr "PolicyKitåå¤'%s'"
+
+#~ msgid ""
+#~ "High-priority scheduling (negative Unix nice level) for the PulseAudio "
+#~ "daemon"
+#~ msgstr "PulseAudio å®æ¤è¿ç¨çé«ä¼å
è°åº¦ï¼è´ç Unix nic ç级ï¼"
+
+#~ msgid "Real-time scheduling for the PulseAudio daemon"
+#~ msgstr "PulseAudio å®æ¤è¿ç¨çå®æ¶è°åº¦ã"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring high-priority scheduling."
+#~ msgstr "ç³»ç»çç¥é²æ¢ PulseAudio è·å¾é«ä¼å
è°åº¦ã"
+
+#~ msgid ""
+#~ "System policy prevents PulseAudio from acquiring real-time scheduling."
+#~ msgstr "ç³»ç»çç¥é²æ¢ PulseAudio è·å¾å®æ¶è°åº¦ã"
+
+#~ msgid "read() failed: %s\n"
+#~ msgstr "read()失败ï¼%s\n"
+
+#, fuzzy
+#~ msgid "pa_context_connect() failed: %s\n"
+#~ msgstr "pa_context_connect()失败ï¼%s"
+
+#~ msgid "We're in the group '%s', allowing high-priority scheduling."
+#~ msgstr "æ们å¨'%s'ç»ä¸ï¼å
许é«ä¼å
级è°åº¦ã"
+
+#~ msgid "We're in the group '%s', allowing real-time scheduling."
+#~ msgstr "æ们å¨'%s'ç»ä¸ï¼å
许å®æ¶è°åº¦ã"
+
+#~ msgid "PolicyKit grants us acquire-high-priority privilege."
+#~ msgstr "PolicyKitæäºæ们âè·åé«ä¼å
级âæéã"
+
+#~ msgid "PolicyKit refuses acquire-high-priority privilege."
+#~ msgstr "PolicyKitæç»âè·åé«ä¼å
级âæéã"
+
+#~ msgid "PolicyKit grants us acquire-real-time privilege."
+#~ msgstr "PolicyKitæäºæ们âè·åå®æ¶âæéã"
+
+#~ msgid "PolicyKit refuses acquire-real-time privilege."
+#~ msgstr "PolicyKitæç»æ们âè·åå®æ¶âæéã"
+
+#~ 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 ""
+#~ "é
ç½®ä¸éè¦è°ç¨ SUID rootãå®æ¶å/æè
é«ä¼å
è°åº¦ãä½æ¯æ们缺å°å¿
è¦çç¹"
+#~ "æï¼\n"
+#~ "æ们ä¸å±äºç»ç¾¤ '%s'ï¼PolicyKit æç»èµäºæ们è¦æ±çç¹æï¼èæ们æ æ³å¢å "
+#~ "RLIMIT_NICE/RLIMIT_RTPRIO èµæºéå¶ã\n"
+#~ "è¦å¯ç¨å®æ¶/é«ä¼å
è°åº¦ï¼è¯·è·å¾éå½ç PolicyKit ç¹æï¼æè
æ为 '%s' æåï¼ä¹"
+#~ "å¯ä»¥ä¸ºè¿ä¸ªç¨æ·å¢å RLIMIT_NICE/RLIMIT_RTPRIO èµæºéå¶ã"
+
+#~ msgid ""
+#~ "High-priority scheduling enabled in configuration but not allowed by "
+#~ "policy."
+#~ msgstr "é
ç½®ä¸å·²å¯ç¨é«ä¼å
级è°åº¦ï¼ä½çç¥æªå
许ã"
+
+#~ msgid "Successfully increased RLIMIT_RTPRIO"
+#~ msgstr "æé«RLIMIT_RTPRIOæåã"
+
+#~ msgid "RLIMIT_RTPRIO failed: %s"
+#~ msgstr "RLIMIT_RTPRIO失败ï¼%s"
+
+#~ msgid "Giving up CAP_NICE"
+#~ msgstr "æ£å¨æ¾å¼CAP_NICE"
+
+#~ msgid ""
+#~ "Real-time scheduling enabled in configuration but not allowed by policy."
+#~ msgstr "é
ç½®ä¸å·²å¯ç¨å®æ¶è°åº¦ï¼ä½çç¥æªå
许ã"
+
+#~ msgid "Limited capabilities successfully to CAP_SYS_NICE."
+#~ msgstr "æ§è½æåéå¶å°CAP_SYS_NICEã"
+
+#~ msgid "time_new() failed.\n"
+#~ msgstr "time_new()失败ã\n"
+
#~ msgid "Analog Mono"
#~ msgstr "模æå声é"
diff --git a/src/Makefile.am b/src/Makefile.am
index 8722f978..a46c5a1b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -32,6 +32,7 @@ xdgautostartdir=$(sysconfdir)/xdg/autostart
alsaprofilesetsdir=$(datadir)/pulseaudio/alsa-mixer/profile-sets
alsapathsdir=$(datadir)/pulseaudio/alsa-mixer/paths
udevrulesdir=/lib/udev/rules.d
+dbuspolicydir=$(sysconfdir)/dbus-1/system.d
###################################
# Defines #
@@ -87,7 +88,7 @@ AM_CFLAGS = \
AM_LIBADD = $(PTHREAD_LIBS) $(INTLLIBS)
AM_LDADD = $(PTHREAD_LIBS) $(INTLLIBS)
-AM_LDFLAGS = -Wl,-z,nodelete
+AM_LDFLAGS = $(NODELETE_LDFLAGS)
if STATIC_BINS
BINLDFLAGS = -static
@@ -119,6 +120,7 @@ EXTRA_DIST = \
modules/module-defs.h.m4 \
daemon/pulseaudio.desktop.in \
map-file \
+ daemon/pulseaudio-system.conf \
modules/alsa/mixer/profile-sets/default.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio4dj.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio8dj.conf \
@@ -145,6 +147,9 @@ pulseconf_DATA = \
daemon.conf \
client.conf
+dbuspolicy_DATA = \
+ daemon/pulseaudio-system.conf
+
if HAVE_X11
xdgautostart_in_files = \
daemon/pulseaudio.desktop.in
@@ -184,9 +189,9 @@ PREOPEN_LIBS = $(modlibexec_LTLIBRARIES)
endif
if FORCE_PREOPEN
-pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -dlpreopen force $(foreach f,$(PREOPEN_LIBS),-dlpreopen $(f))
+pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(IMMEDIATE_LDFLAGS) -dlpreopen force $(foreach f,$(PREOPEN_LIBS),-dlpreopen $(f))
else
-pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -dlopen force $(foreach f,$(PREOPEN_LIBS),-dlopen $(f))
+pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) $(IMMEDIATE_LDFLAGS) -dlopen force $(foreach f,$(PREOPEN_LIBS),-dlopen $(f))
endif
###################################
@@ -777,7 +782,7 @@ libpulse_mainloop_glib_la_LDFLAGS = $(AM_LDFLAGS) $(VERSIONING_LDFLAGS) -version
# OSS emulation #
###################################
-if HAVE_OSS
+if HAVE_OSS_WRAPPER
lib_LTLIBRARIES += libpulsedsp.la
bin_SCRIPTS += utils/padsp
endif
@@ -869,6 +874,9 @@ libpulsecore_@PA_MAJORMINORMICRO@_la_CFLAGS += $(TDB_CFLAGS)
libpulsecore_@PA_MAJORMINORMICRO@_la_LIBADD += $(TDB_LIBS)
endif
+if HAVE_SIMPLEDB
+libpulsecore_@PA_MAJORMINORMICRO@_la_SOURCES += pulsecore/database-simple.c
+endif
# We split the foreign code off to not be annoyed by warnings we don't care about
noinst_LTLIBRARIES = libpulsecore-foreign.la
@@ -1035,7 +1043,7 @@ modlibexec_LTLIBRARIES += \
module-x11-cork-request.la
endif
-if HAVE_OSS
+if HAVE_OSS_OUTPUT
modlibexec_LTLIBRARIES += \
liboss-util.la \
module-oss.la
@@ -1055,8 +1063,10 @@ alsaprofilesets_DATA = \
modules/alsa/mixer/profile-sets/native-instruments-audio4dj.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio8dj.conf
+if HAVE_UDEV
udevrules_DATA = \
modules/alsa/mixer/profile-sets/90-pulseaudio.rules
+endif
alsapaths_DATA = \
modules/alsa/mixer/paths/analog-input-aux.conf \
@@ -1122,6 +1132,11 @@ modlibexec_LTLIBRARIES += \
module-hal-detect.la
endif
+if HAVE_HAL_COMPAT
+modlibexec_LTLIBRARIES += \
+ module-hal-detect.la
+endif
+
if HAVE_UDEV
modlibexec_LTLIBRARIES += \
module-udev-detect.la
@@ -1250,7 +1265,7 @@ module_simple_protocol_unix_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINOR
module_cli_la_SOURCES = modules/module-cli.c
module_cli_la_LDFLAGS = $(MODULE_LDFLAGS)
-module_cli_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINORMICRO@.la libcli.la libpulsecommon-@PA_MAJORMINORMICRO@.la
+module_cli_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINORMICRO@.la libcli.la libpulsecommon-@PA_MAJORMINORMICRO@.la libpulse.la
module_cli_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
module_cli_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_CLI $(AM_CFLAGS)
@@ -1603,10 +1618,16 @@ module_jack_source_la_LDFLAGS = $(MODULE_LDFLAGS)
module_jack_source_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINORMICRO@.la $(JACK_LIBS) libpulsecommon-@PA_MAJORMINORMICRO@.la libpulse.la
module_jack_source_la_CFLAGS = $(AM_CFLAGS) $(JACK_CFLAGS)
+if HAVE_HAL_COMPAT
+module_hal_detect_la_SOURCES = modules/module-hal-detect-compat.c
+module_hal_detect_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINORMICRO@.la libpulsecommon-@PA_MAJORMINORMICRO@.la libpulse.la
+module_hal_detect_la_CFLAGS = $(AM_CFLAGS)
+else
module_hal_detect_la_SOURCES = modules/module-hal-detect.c
-module_hal_detect_la_LDFLAGS = $(MODULE_LDFLAGS)
module_hal_detect_la_LIBADD = $(AM_LIBADD) $(HAL_LIBS) libpulsecore-@PA_MAJORMINORMICRO@.la libpulsecommon-@PA_MAJORMINORMICRO@.la libpulse.la
module_hal_detect_la_CFLAGS = $(AM_CFLAGS) $(HAL_CFLAGS)
+endif
+module_hal_detect_la_LDFLAGS = $(MODULE_LDFLAGS)
module_udev_detect_la_SOURCES = modules/module-udev-detect.c
module_udev_detect_la_LDFLAGS = $(MODULE_LDFLAGS)
diff --git a/src/daemon/caps.c b/src/daemon/caps.c
index 294be494..76b62e03 100644
--- a/src/daemon/caps.c
+++ b/src/daemon/caps.c
@@ -57,24 +57,29 @@ void pa_drop_root(void) {
#ifdef HAVE_GETUID
uid_t uid;
+ gid_t gid;
+ pa_log_debug(_("Cleaning up privileges."));
uid = getuid();
- if (uid == 0 || geteuid() != 0)
- return;
-
- pa_log_info(_("Dropping root privileges."));
+ gid = getgid();
#if defined(HAVE_SETRESUID)
pa_assert_se(setresuid(uid, uid, uid) >= 0);
+ pa_assert_se(setresgid(gid, gid, gid) >= 0);
#elif defined(HAVE_SETREUID)
pa_assert_se(setreuid(uid, uid) >= 0);
+ pa_assert_se(setregid(gid, gid) >= 0);
#else
pa_assert_se(setuid(uid) >= 0);
pa_assert_se(seteuid(uid) >= 0);
+ pa_assert_se(setgid(gid) >= 0);
+ pa_assert_se(setegid(gid) >= 0);
#endif
pa_assert_se(getuid() == uid);
pa_assert_se(geteuid() == uid);
+ pa_assert_se(getgid() == gid);
+ pa_assert_se(getegid() == gid);
#endif
#ifdef HAVE_SYS_PRCTL_H
@@ -82,7 +87,7 @@ void pa_drop_root(void) {
#endif
#ifdef HAVE_SYS_CAPABILITY_H
- {
+ if (uid != 0) {
cap_t caps;
pa_assert_se(caps = cap_init());
pa_assert_se(cap_clear(caps) == 0);
diff --git a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c
index ace460ed..31f29009 100644
--- a/src/daemon/daemon-conf.c
+++ b/src/daemon/daemon-conf.c
@@ -476,14 +476,18 @@ int pa_daemon_conf_load(pa_daemon_conf *c, const char *filename) {
{ "high-priority", pa_config_parse_bool, &c->high_priority, NULL },
{ "realtime-scheduling", pa_config_parse_bool, &c->realtime_scheduling, NULL },
{ "disallow-module-loading", pa_config_parse_bool, &c->disallow_module_loading, NULL },
+ { "allow-module-loading", pa_config_parse_not_bool, &c->disallow_module_loading, NULL },
{ "disallow-exit", pa_config_parse_bool, &c->disallow_exit, NULL },
+ { "allow-exit", pa_config_parse_not_bool, &c->disallow_exit, NULL },
{ "use-pid-file", pa_config_parse_bool, &c->use_pid_file, NULL },
{ "system-instance", pa_config_parse_bool, &c->system_instance, NULL },
#ifdef HAVE_DBUS
{ "local-server-type", parse_server_type, c, NULL },
#endif
{ "no-cpu-limit", pa_config_parse_bool, &c->no_cpu_limit, NULL },
+ { "cpu-limit", pa_config_parse_not_bool, &c->no_cpu_limit, NULL },
{ "disable-shm", pa_config_parse_bool, &c->disable_shm, NULL },
+ { "enable-shm", pa_config_parse_not_bool, &c->disable_shm, NULL },
{ "flat-volumes", pa_config_parse_bool, &c->flat_volumes, NULL },
{ "lock-memory", pa_config_parse_bool, &c->lock_memory, NULL },
{ "exit-idle-time", pa_config_parse_int, &c->exit_idle_time, NULL },
@@ -503,7 +507,9 @@ int pa_daemon_conf_load(pa_daemon_conf *c, const char *filename) {
{ "default-fragment-size-msec", parse_fragment_size_msec, c, NULL },
{ "nice-level", parse_nice_level, c, NULL },
{ "disable-remixing", pa_config_parse_bool, &c->disable_remixing, NULL },
+ { "enable-remixing", pa_config_parse_not_bool, &c->disable_remixing, NULL },
{ "disable-lfe-remixing", pa_config_parse_bool, &c->disable_lfe_remixing, NULL },
+ { "enable-lfe-remixing", pa_config_parse_not_bool, &c->disable_lfe_remixing, NULL },
{ "load-default-script-file", pa_config_parse_bool, &c->load_default_script_file, NULL },
{ "shm-size-bytes", pa_config_parse_size, &c->shm_size, NULL },
{ "log-meta", pa_config_parse_bool, &c->log_meta, NULL },
@@ -669,15 +675,15 @@ char *pa_daemon_conf_dump(pa_daemon_conf *c) {
pa_strbuf_printf(s, "nice-level = %i\n", c->nice_level);
pa_strbuf_printf(s, "realtime-scheduling = %s\n", pa_yes_no(c->realtime_scheduling));
pa_strbuf_printf(s, "realtime-priority = %i\n", c->realtime_priority);
- pa_strbuf_printf(s, "disallow-module-loading = %s\n", pa_yes_no(c->disallow_module_loading));
- pa_strbuf_printf(s, "disallow-exit = %s\n", pa_yes_no(c->disallow_exit));
+ pa_strbuf_printf(s, "allow-module-loading = %s\n", pa_yes_no(!c->disallow_module_loading));
+ pa_strbuf_printf(s, "allow-exit = %s\n", pa_yes_no(!c->disallow_exit));
pa_strbuf_printf(s, "use-pid-file = %s\n", pa_yes_no(c->use_pid_file));
pa_strbuf_printf(s, "system-instance = %s\n", pa_yes_no(c->system_instance));
#ifdef HAVE_DBUS
pa_strbuf_printf(s, "local-server-type = %s\n", server_type_to_string[c->local_server_type]);
#endif
- pa_strbuf_printf(s, "no-cpu-limit = %s\n", pa_yes_no(c->no_cpu_limit));
- pa_strbuf_printf(s, "disable-shm = %s\n", pa_yes_no(c->disable_shm));
+ pa_strbuf_printf(s, "cpu-limit = %s\n", pa_yes_no(!c->no_cpu_limit));
+ pa_strbuf_printf(s, "enable-shm = %s\n", pa_yes_no(!c->disable_shm));
pa_strbuf_printf(s, "flat-volumes = %s\n", pa_yes_no(c->flat_volumes));
pa_strbuf_printf(s, "lock-memory = %s\n", pa_yes_no(c->lock_memory));
pa_strbuf_printf(s, "exit-idle-time = %i\n", c->exit_idle_time);
@@ -688,8 +694,8 @@ char *pa_daemon_conf_dump(pa_daemon_conf *c) {
pa_strbuf_printf(s, "log-target = %s\n", c->auto_log_target ? "auto" : (c->log_target == PA_LOG_SYSLOG ? "syslog" : "stderr"));
pa_strbuf_printf(s, "log-level = %s\n", log_level_to_string[c->log_level]);
pa_strbuf_printf(s, "resample-method = %s\n", pa_resample_method_to_string(c->resample_method));
- pa_strbuf_printf(s, "disable-remixing = %s\n", pa_yes_no(c->disable_remixing));
- pa_strbuf_printf(s, "disable-lfe-remixing = %s\n", pa_yes_no(c->disable_lfe_remixing));
+ pa_strbuf_printf(s, "enable-remixing = %s\n", pa_yes_no(!c->disable_remixing));
+ pa_strbuf_printf(s, "enable-lfe-remixing = %s\n", pa_yes_no(!c->disable_lfe_remixing));
pa_strbuf_printf(s, "default-sample-format = %s\n", pa_sample_format_to_string(c->default_sample_spec.format));
pa_strbuf_printf(s, "default-sample-rate = %u\n", c->default_sample_spec.rate);
pa_strbuf_printf(s, "default-sample-channels = %u\n", c->default_sample_spec.channels);
diff --git a/src/daemon/daemon.conf.in b/src/daemon/daemon.conf.in
index 9bea6148..a11fd06c 100644
--- a/src/daemon/daemon.conf.in
+++ b/src/daemon/daemon.conf.in
@@ -21,15 +21,15 @@
; daemonize = no
; fail = yes
-; disallow-module-loading = no
-; disallow-exit = no
+; allow-module-loading = yes
+; allow-exit = yes
; use-pid-file = yes
; system-instance = no
; local-server-type = user
-; disable-shm = no
+; enable-shm = yes
; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
; lock-memory = no
-; no-cpu-limit = no
+; cpu-limit = yes
; high-priority = yes
; nice-level = -11
@@ -52,8 +52,8 @@
; log-backtrace = 0
; resample-method = speex-float-3
-; disable-remixing = no
-; disable-lfe-remixing = yes
+; enable-remixing = yes
+; enable-lfe-remixing = no
; flat-volumes = yes
diff --git a/src/daemon/main.c b/src/daemon/main.c
index f4209859..73696005 100644
--- a/src/daemon/main.c
+++ b/src/daemon/main.c
@@ -110,7 +110,7 @@ int allow_severity = LOG_INFO;
int deny_severity = LOG_WARNING;
#endif
-#ifdef HAVE_OSS
+#ifdef HAVE_OSS_WRAPPER
/* padsp looks for this symbol in the running process and disables
* itself if it finds it and it is set to 7 (which is actually a bit
* mask). For details see padsp. */
@@ -407,7 +407,8 @@ int main(int argc, char *argv[]) {
/*
Disable lazy relocations to make usage of external libraries
more deterministic for our RT threads. We abuse __OPTIMIZE__ as
- a check whether we are a debug build or not.
+ a check whether we are a debug build or not. This all is
+ admittedly a bit snake-oilish.
*/
if (!getenv("LD_BIND_NOW")) {
@@ -418,9 +419,16 @@ int main(int argc, char *argv[]) {
pa_set_env("LD_BIND_NOW", "1");
- if ((rp = pa_readlink("/proc/self/exe")))
- pa_assert_se(execv(rp, argv) == 0);
- else
+ if ((rp = pa_readlink("/proc/self/exe"))) {
+
+ if (pa_streq(rp, PA_BINARY))
+ pa_assert_se(execv(rp, argv) == 0);
+ else
+ pa_log_warn("/proc/self/exe does not point to " PA_BINARY ", cannot self execute. Are you playing games?");
+
+ pa_xfree(rp);
+
+ } else
pa_log_warn("Couldn't read /proc/self/exe, cannot self execute. Running in a chroot()?");
}
#endif
@@ -435,10 +443,13 @@ int main(int argc, char *argv[]) {
/* We might be autospawned, in which case have no idea in which
* context we have been started. Let's cleanup our execution
* context as good as possible */
+
+ pa_reset_personality();
pa_drop_root();
pa_close_all(passed_fd, -1);
pa_reset_sigs(-1);
pa_unblock_sigs(-1);
+ pa_reset_priority();
setlocale(LC_ALL, "");
pa_init_i18n();
diff --git a/src/daemon/pulseaudio-system.conf b/src/daemon/pulseaudio-system.conf
new file mode 100644
index 00000000..edddaf93
--- /dev/null
+++ b/src/daemon/pulseaudio-system.conf
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/map-file b/src/map-file
index 3db3a2d7..dafef48f 100644
--- a/src/map-file
+++ b/src/map-file
@@ -220,6 +220,8 @@ pa_simple_get_latency;
pa_simple_new;
pa_simple_read;
pa_simple_write;
+pa_stream_begin_write;
+pa_stream_cancel_write;
pa_stream_connect_playback;
pa_stream_connect_record;
pa_stream_connect_upload;
diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
index a5515e1b..a4c2ee0f 100644
--- a/src/modules/alsa/alsa-mixer.c
+++ b/src/modules/alsa/alsa-mixer.c
@@ -940,7 +940,6 @@ int pa_alsa_path_select(pa_alsa_path *p, snd_mixer_t *m) {
PA_LLIST_FOREACH(e, p->elements) {
switch (e->switch_use) {
- case PA_ALSA_SWITCH_MUTE:
case PA_ALSA_SWITCH_OFF:
r = element_set_switch(e, m, FALSE);
break;
@@ -949,6 +948,7 @@ int pa_alsa_path_select(pa_alsa_path *p, snd_mixer_t *m) {
r = element_set_switch(e, m, TRUE);
break;
+ case PA_ALSA_SWITCH_MUTE:
case PA_ALSA_SWITCH_IGNORE:
case PA_ALSA_SWITCH_SELECT:
r = 0;
@@ -960,7 +960,6 @@ int pa_alsa_path_select(pa_alsa_path *p, snd_mixer_t *m) {
switch (e->volume_use) {
case PA_ALSA_VOLUME_OFF:
- case PA_ALSA_VOLUME_MERGE:
r = element_mute_volume(e, m);
break;
@@ -968,6 +967,7 @@ int pa_alsa_path_select(pa_alsa_path *p, snd_mixer_t *m) {
r = element_zero_volume(e, m);
break;
+ case PA_ALSA_VOLUME_MERGE:
case PA_ALSA_VOLUME_IGNORE:
r = 0;
break;
@@ -2838,9 +2838,9 @@ static int mapping_verify(pa_alsa_mapping *m, const pa_channel_map *bonus) {
if (bonus) {
if (pa_channel_map_equal(&m->channel_map, bonus))
- m->priority += 5000;
+ m->priority += 50;
else if (m->channel_map.channels == bonus->channels)
- m->priority += 4000;
+ m->priority += 30;
}
return 0;
diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c
index c584362d..a91b4b8a 100644
--- a/src/modules/alsa/alsa-sink.c
+++ b/src/modules/alsa/alsa-sink.c
@@ -169,10 +169,10 @@ static int reserve_init(struct userdata *u, const char *dname) {
if (pa_in_system_mode())
return 0;
- /* We are resuming, try to lock the device */
if (!(rname = pa_alsa_get_reserve_name(dname)))
return 0;
+ /* We are resuming, try to lock the device */
u->reserve = pa_reserve_wrapper_get(u->core, rname);
pa_xfree(rname);
@@ -222,7 +222,6 @@ static int reserve_monitor_init(struct userdata *u, const char *dname) {
if (pa_in_system_mode())
return 0;
- /* We are resuming, try to lock the device */
if (!(rname = pa_alsa_get_reserve_name(dname)))
return 0;
@@ -341,6 +340,9 @@ static int try_recover(struct userdata *u, const char *call, int err) {
if (err == -EPIPE)
pa_log_debug("%s: Buffer underrun!", call);
+ if (err == -ESTRPIPE)
+ pa_log_debug("%s: System suspended!", call);
+
if ((err = snd_pcm_recover(u->pcm_handle, err, 1)) < 0) {
pa_log("%s: %s", call, pa_alsa_strerror(err));
return -1;
@@ -402,6 +404,7 @@ static int mmap_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle
snd_pcm_sframes_t n;
size_t n_bytes;
int r;
+ pa_bool_t after_avail = TRUE;
/* First we determine how many samples are missing to fill the
* buffer up to 100% */
@@ -485,6 +488,9 @@ static int mmap_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle
if (PA_UNLIKELY((err = pa_alsa_safe_mmap_begin(u->pcm_handle, &areas, &offset, &frames, u->hwbuf_size, &u->sink->sample_spec)) < 0)) {
+ if (!after_avail && err == -EAGAIN)
+ break;
+
if ((r = try_recover(u, "snd_pcm_mmap_begin", err)) == 0)
continue;
@@ -495,6 +501,12 @@ static int mmap_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle
if (frames > pa_mempool_block_size_max(u->sink->core->mempool)/u->frame_size)
frames = pa_mempool_block_size_max(u->sink->core->mempool)/u->frame_size;
+ if (!after_avail && frames == 0)
+ break;
+
+ pa_assert(frames > 0);
+ after_avail = FALSE;
+
/* Check these are multiples of 8 bit */
pa_assert((areas[0].first & 7) == 0);
pa_assert((areas[0].step & 7)== 0);
@@ -615,6 +627,7 @@ static int unix_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle
for (;;) {
snd_pcm_sframes_t frames;
void *p;
+ pa_bool_t after_avail = TRUE;
/* pa_log_debug("%lu frames to write", (unsigned long) frames); */
@@ -632,16 +645,23 @@ static int unix_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle
frames = snd_pcm_writei(u->pcm_handle, (const uint8_t*) p + u->memchunk.index, (snd_pcm_uframes_t) frames);
pa_memblock_release(u->memchunk.memblock);
- pa_assert(frames != 0);
-
if (PA_UNLIKELY(frames < 0)) {
+ if (!after_avail && (int) frames == -EAGAIN)
+ break;
+
if ((r = try_recover(u, "snd_pcm_writei", (int) frames)) == 0)
continue;
return r;
}
+ if (!after_avail && frames == 0)
+ break;
+
+ pa_assert(frames > 0);
+ after_avail = FALSE;
+
u->memchunk.index += (size_t) frames * u->frame_size;
u->memchunk.length -= (size_t) frames * u->frame_size;
@@ -882,9 +902,13 @@ static int unsuspend(struct userdata *u) {
if (build_pollfd(u) < 0)
goto fail;
+ u->write_count = 0;
+ pa_smoother_reset(u->smoother, pa_rtclock_now(), TRUE);
+
u->first = TRUE;
u->since_start = 0;
+
pa_log_info("Resumed successfully...");
return 0;
@@ -1178,8 +1202,11 @@ static int process_rewind(struct userdata *u) {
pa_log_debug("before: %lu", (unsigned long) in_frames);
if ((out_frames = snd_pcm_rewind(u->pcm_handle, (snd_pcm_uframes_t) in_frames)) < 0) {
pa_log("snd_pcm_rewind() failed: %s", pa_alsa_strerror((int) out_frames));
- return -1;
+ if (try_recover(u, "process_rewind", out_frames) < 0)
+ return -1;
+ out_frames = 0;
}
+
pa_log_debug("after: %lu", (unsigned long) out_frames);
rewind_nbytes = (size_t) out_frames * u->frame_size;
@@ -1187,7 +1214,7 @@ static int process_rewind(struct userdata *u) {
if (rewind_nbytes <= 0)
pa_log_info("Tried rewind, but was apparently not possible.");
else {
- u->write_count -= out_frames * u->frame_size;
+ u->write_count -= rewind_nbytes;
pa_log_debug("Rewound %lu bytes.", (unsigned long) rewind_nbytes);
pa_sink_process_rewind(u->sink, rewind_nbytes);
@@ -1265,7 +1292,8 @@ static void thread_func(void *userdata) {
* we have filled the buffer at least once
* completely.*/
- pa_log_debug("Cutting sleep time for the initial iterations by half.");
+ if (pa_log_ratelimit())
+ pa_log_debug("Cutting sleep time for the initial iterations by half.");
sleep_usec /= 2;
}
diff --git a/src/modules/alsa/alsa-source.c b/src/modules/alsa/alsa-source.c
index a6760e1e..9a51f857 100644
--- a/src/modules/alsa/alsa-source.c
+++ b/src/modules/alsa/alsa-source.c
@@ -333,6 +333,9 @@ static int try_recover(struct userdata *u, const char *call, int err) {
if (err == -EPIPE)
pa_log_debug("%s: Buffer overrun!", call);
+ if (err == -ESTRPIPE)
+ pa_log_debug("%s: System suspended!", call);
+
if ((err = snd_pcm_recover(u->pcm_handle, err, 1)) < 0) {
pa_log("%s: %s", call, pa_alsa_strerror(err));
return -1;
@@ -391,6 +394,7 @@ static int mmap_read(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polled
snd_pcm_sframes_t n;
size_t n_bytes;
int r;
+ pa_bool_t after_avail = TRUE;
if (PA_UNLIKELY((n = pa_alsa_safe_avail(u->pcm_handle, u->hwbuf_size, &u->source->sample_spec)) < 0)) {
@@ -463,6 +467,9 @@ static int mmap_read(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polled
if (PA_UNLIKELY((err = pa_alsa_safe_mmap_begin(u->pcm_handle, &areas, &offset, &frames, u->hwbuf_size, &u->source->sample_spec)) < 0)) {
+ if (!after_avail && err == -EAGAIN)
+ break;
+
if ((r = try_recover(u, "snd_pcm_mmap_begin", err)) == 0)
continue;
@@ -473,6 +480,12 @@ static int mmap_read(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polled
if (frames > pa_mempool_block_size_max(u->source->core->mempool)/u->frame_size)
frames = pa_mempool_block_size_max(u->source->core->mempool)/u->frame_size;
+ if (!after_avail && frames == 0)
+ break;
+
+ pa_assert(frames > 0);
+ after_avail = FALSE;
+
/* Check these are multiples of 8 bit */
pa_assert((areas[0].first & 7) == 0);
pa_assert((areas[0].step & 7)== 0);
@@ -539,6 +552,7 @@ static int unix_read(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polled
snd_pcm_sframes_t n;
size_t n_bytes;
int r;
+ pa_bool_t after_avail = TRUE;
if (PA_UNLIKELY((n = pa_alsa_safe_avail(u->pcm_handle, u->hwbuf_size, &u->source->sample_spec)) < 0)) {
@@ -599,17 +613,26 @@ static int unix_read(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polled
frames = snd_pcm_readi(u->pcm_handle, (uint8_t*) p, (snd_pcm_uframes_t) frames);
pa_memblock_release(chunk.memblock);
- pa_assert(frames != 0);
-
if (PA_UNLIKELY(frames < 0)) {
pa_memblock_unref(chunk.memblock);
- if ((r = try_recover(u, "snd_pcm_readi", (int) (frames))) == 0)
+ if (!after_avail && (int) frames == -EAGAIN)
+ break;
+
+ if ((r = try_recover(u, "snd_pcm_readi", (int) frames)) == 0)
continue;
return r;
}
+ if (!after_avail && frames == 0) {
+ pa_memblock_unref(chunk.memblock);
+ break;
+ }
+
+ pa_assert(frames > 0);
+ after_avail = FALSE;
+
chunk.index = 0;
chunk.length = (size_t) frames * u->frame_size;
@@ -834,7 +857,9 @@ static int unsuspend(struct userdata *u) {
/* FIXME: We need to reload the volume somehow */
snd_pcm_start(u->pcm_handle);
- pa_smoother_resume(u->smoother, pa_rtclock_now(), TRUE);
+
+ u->read_count = 0;
+ pa_smoother_reset(u->smoother, pa_rtclock_now(), TRUE);
pa_log_info("Resumed successfully...");
diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
index 1f3e5dcd..a47a8958 100644
--- a/src/modules/alsa/alsa-util.c
+++ b/src/modules/alsa/alsa-util.c
@@ -233,14 +233,16 @@ int pa_alsa_set_hw_params(
goto finish;
}
- if (_period_size && tsched_size && _periods) {
+ if (_period_size > 0 && tsched_size > 0 && _periods > 0) {
+ snd_pcm_uframes_t buffer_size;
+ unsigned int p;
/* Adjust the buffer sizes, if we didn't get the rate we were asking for */
_period_size = (snd_pcm_uframes_t) (((uint64_t) _period_size * r) / ss->rate);
tsched_size = (snd_pcm_uframes_t) (((uint64_t) tsched_size * r) / ss->rate);
if (_use_tsched) {
- snd_pcm_uframes_t buffer_size = 0;
+ buffer_size = 0;
if ((ret = snd_pcm_hw_params_get_buffer_size_max(hwparams, &buffer_size)) < 0)
pa_log_warn("snd_pcm_hw_params_get_buffer_size_max() failed: %s", pa_alsa_strerror(ret));
@@ -251,32 +253,33 @@ int pa_alsa_set_hw_params(
_periods = 1;
}
- if (_period_size > 0 && _periods > 0) {
- snd_pcm_uframes_t buffer_size;
-
- buffer_size = _periods * _period_size;
-
- if ((ret = snd_pcm_hw_params_set_buffer_size_near(pcm_handle, hwparams, &buffer_size)) < 0)
- pa_log_info("snd_pcm_hw_params_set_buffer_size_near() failed: %s", pa_alsa_strerror(ret));
- }
-
- if (_periods > 0) {
-
- /* First we pass 0 as direction to get exactly what we
- * asked for. That this is necessary is presumably a bug
- * in ALSA. All in all this is mostly a hint to ALSA, so
- * we don't care if this fails. */
-
- dir = 0;
- if (snd_pcm_hw_params_set_periods_near(pcm_handle, hwparams, &_periods, &dir) < 0) {
- dir = 1;
- if (snd_pcm_hw_params_set_periods_near(pcm_handle, hwparams, &_periods, &dir) < 0) {
- dir = -1;
- if ((ret = snd_pcm_hw_params_set_periods_near(pcm_handle, hwparams, &_periods, &dir)) < 0)
- pa_log_info("snd_pcm_hw_params_set_periods_near() failed: %s", pa_alsa_strerror(ret));
- }
+ /* Some ALSA drivers really don't like if we set the buffer
+ * size first and the number of periods second. (which would
+ * make a lot more sense to me) So, follow this rule and
+ * adjust the periods first and the buffer size second */
+
+ /* First we pass 0 as direction to get exactly what we
+ * asked for. That this is necessary is presumably a bug
+ * in ALSA. All in all this is mostly a hint to ALSA, so
+ * we don't care if this fails. */
+
+ p = _periods;
+ dir = 0;
+ if (snd_pcm_hw_params_set_periods_near(pcm_handle, hwparams, &p, &dir) < 0) {
+ p = _periods;
+ dir = 1;
+ if (snd_pcm_hw_params_set_periods_near(pcm_handle, hwparams, &p, &dir) < 0) {
+ p = _periods;
+ dir = -1;
+ if ((ret = snd_pcm_hw_params_set_periods_near(pcm_handle, hwparams, &p, &dir)) < 0)
+ pa_log_info("snd_pcm_hw_params_set_periods_near() failed: %s", pa_alsa_strerror(ret));
}
}
+
+ /* Now set the buffer size */
+ buffer_size = _periods * _period_size;
+ if ((ret = snd_pcm_hw_params_set_buffer_size_near(pcm_handle, hwparams, &buffer_size)) < 0)
+ pa_log_info("snd_pcm_hw_params_set_buffer_size_near() failed: %s", pa_alsa_strerror(ret));
}
if ((ret = snd_pcm_hw_params(pcm_handle, hwparams)) < 0)
diff --git a/src/modules/alsa/mixer/Makefile b/src/modules/alsa/mixer/Makefile
new file mode 120000
index 00000000..b4955194
--- /dev/null
+++ b/src/modules/alsa/mixer/Makefile
@@ -0,0 +1 @@
+../../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/alsa/mixer/paths/Makefile b/src/modules/alsa/mixer/paths/Makefile
new file mode 120000
index 00000000..dc23aaa2
--- /dev/null
+++ b/src/modules/alsa/mixer/paths/Makefile
@@ -0,0 +1 @@
+../../../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/alsa/mixer/paths/analog-output-headphones.conf b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
index c018e0eb..691cb3f2 100644
--- a/src/modules/alsa/mixer/paths/analog-output-headphones.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-headphones.conf
@@ -44,6 +44,10 @@ volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
+[Element Speaker]
+switch = off
+volume = off
+
[Element Front]
switch = off
volume = off
diff --git a/src/modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf b/src/modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf
index 7a267890..2db976a5 100644
--- a/src/modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf
@@ -45,6 +45,12 @@ override-map.2 = lfe,lfe
switch = off
volume = off
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
[Element Front]
switch = off
volume = off
diff --git a/src/modules/alsa/mixer/paths/analog-output-mono.conf b/src/modules/alsa/mixer/paths/analog-output-mono.conf
index f6cb9f8a..a58cc970 100644
--- a/src/modules/alsa/mixer/paths/analog-output-mono.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-mono.conf
@@ -42,6 +42,12 @@ override-map.2 = all-left,all-right
switch = off
volume = off
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
[Element Front]
switch = off
volume = off
diff --git a/src/modules/alsa/mixer/paths/analog-output.conf b/src/modules/alsa/mixer/paths/analog-output.conf
index ea108aaf..b412a437 100644
--- a/src/modules/alsa/mixer/paths/analog-output.conf
+++ b/src/modules/alsa/mixer/paths/analog-output.conf
@@ -41,6 +41,12 @@ volume = off
switch = off
volume = off
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
[Element Front]
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 cc1185f4..3c6ce803 100644
--- a/src/modules/alsa/mixer/paths/analog-output.conf.common
+++ b/src/modules/alsa/mixer/paths/analog-output.conf.common
@@ -104,8 +104,8 @@ switch = select
[Option External Amplifier:on]
name = output-amplifier-on
-priority = 0
+priority = 10
[Option External Amplifier:off]
name = output-amplifier-off
-priority = 10
+priority = 0
diff --git a/src/modules/alsa/mixer/profile-sets/Makefile b/src/modules/alsa/mixer/profile-sets/Makefile
new file mode 120000
index 00000000..dc23aaa2
--- /dev/null
+++ b/src/modules/alsa/mixer/profile-sets/Makefile
@@ -0,0 +1 @@
+../../../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/bluetooth/bluetooth-util.c b/src/modules/bluetooth/bluetooth-util.c
index 5c7681d4..16c29248 100644
--- a/src/modules/bluetooth/bluetooth-util.c
+++ b/src/modules/bluetooth/bluetooth-util.c
@@ -122,9 +122,9 @@ static pa_bool_t device_is_audio(pa_bluetooth_device *d) {
return
d->device_info_valid &&
- (d->audio_state != PA_BT_AUDIO_STATE_INVALID ||
- d->audio_sink_state != PA_BT_AUDIO_STATE_INVALID ||
- d->headset_state != PA_BT_AUDIO_STATE_INVALID);
+ (d->audio_state != PA_BT_AUDIO_STATE_INVALID &&
+ (d->audio_sink_state != PA_BT_AUDIO_STATE_INVALID ||
+ d->headset_state != PA_BT_AUDIO_STATE_INVALID));
}
static int parse_device_property(pa_bluetooth_discovery *y, pa_bluetooth_device *d, DBusMessageIter *i) {
@@ -226,10 +226,6 @@ static int parse_device_property(pa_bluetooth_discovery *y, pa_bluetooth_device
node = uuid_new(value);
PA_LLIST_PREPEND(pa_bluetooth_uuid, d->uuids, node);
- /* this might eventually be racy if .Audio is not there yet, but the State change will come anyway later, so this call is for cold-detection mostly */
- pa_assert_se(m = dbus_message_new_method_call("org.bluez", d->path, "org.bluez.Audio", "GetProperties"));
- send_and_add_to_pending(y, d, m, get_properties_reply);
-
/* Vudentz said the interfaces are here when the UUIDs are announced */
if (strcasecmp(HSP_HS_UUID, value) == 0 || strcasecmp(HFP_HS_UUID, value) == 0) {
pa_assert_se(m = dbus_message_new_method_call("org.bluez", d->path, "org.bluez.Headset", "GetProperties"));
@@ -239,6 +235,10 @@ static int parse_device_property(pa_bluetooth_discovery *y, pa_bluetooth_device
send_and_add_to_pending(y, d, m, get_properties_reply);
}
+ /* this might eventually be racy if .Audio is not there yet, but the State change will come anyway later, so this call is for cold-detection mostly */
+ pa_assert_se(m = dbus_message_new_method_call("org.bluez", d->path, "org.bluez.Audio", "GetProperties"));
+ send_and_add_to_pending(y, d, m, get_properties_reply);
+
if (!dbus_message_iter_next(&ai))
break;
}
@@ -309,6 +309,17 @@ static void run_callback(pa_bluetooth_discovery *y, pa_bluetooth_device *d, pa_b
pa_hook_fire(&y->hook, d);
}
+static void remove_all_devices(pa_bluetooth_discovery *y) {
+ pa_bluetooth_device *d;
+
+ pa_assert(y);
+
+ while ((d = pa_hashmap_steal_first(y->devices))) {
+ run_callback(y, d, TRUE);
+ device_free(d);
+ }
+}
+
static void get_properties_reply(DBusPendingCall *pending, void *userdata) {
DBusMessage *r;
DBusMessageIter arg_i, element_i;
@@ -332,6 +343,12 @@ static void get_properties_reply(DBusPendingCall *pending, void *userdata) {
if (dbus_message_is_method_call(p->message, "org.bluez.Device", "GetProperties"))
d->device_info_valid = valid;
+ if (dbus_message_is_error(r, DBUS_ERROR_SERVICE_UNKNOWN)) {
+ pa_log_debug("Bluetooth daemon is apparently not available.");
+ remove_all_devices(y);
+ goto finish2;
+ }
+
if (dbus_message_get_type(r) == DBUS_MESSAGE_TYPE_ERROR) {
if (!dbus_message_is_error(r, DBUS_ERROR_UNKNOWN_METHOD))
@@ -383,6 +400,7 @@ static void get_properties_reply(DBusPendingCall *pending, void *userdata) {
finish:
run_callback(y, d, FALSE);
+finish2:
dbus_message_unref(r);
PA_LLIST_REMOVE(pa_dbus_pending, y->pending, p);
@@ -412,6 +430,9 @@ static void found_device(pa_bluetooth_discovery *y, const char* path) {
pa_assert(y);
pa_assert(path);
+ if (pa_hashmap_get(y->devices, path))
+ return;
+
d = device_new(path);
pa_hashmap_put(y->devices, d->path, d);
@@ -439,9 +460,15 @@ static void list_devices_reply(DBusPendingCall *pending, void *userdata) {
pa_assert_se(y = p->context_data);
pa_assert_se(r = dbus_pending_call_steal_reply(pending));
+ if (dbus_message_is_error(r, DBUS_ERROR_SERVICE_UNKNOWN)) {
+ pa_log_debug("Bluetooth daemon is apparently not available.");
+ remove_all_devices(y);
+ goto finish;
+ }
+
if (dbus_message_get_type(r) == DBUS_MESSAGE_TYPE_ERROR) {
pa_log("Error from ListDevices reply: %s", dbus_message_get_error_name(r));
- goto end;
+ goto finish;
}
if (!dbus_message_get_args(r, &e, DBUS_TYPE_ARRAY, DBUS_TYPE_OBJECT_PATH, &paths, &num, DBUS_TYPE_INVALID)) {
@@ -454,7 +481,7 @@ static void list_devices_reply(DBusPendingCall *pending, void *userdata) {
found_device(y, paths[i]);
}
-end:
+finish:
if (paths)
dbus_free_string_array (paths);
@@ -487,9 +514,15 @@ static void list_adapters_reply(DBusPendingCall *pending, void *userdata) {
pa_assert_se(y = p->context_data);
pa_assert_se(r = dbus_pending_call_steal_reply(pending));
+ if (dbus_message_is_error(r, DBUS_ERROR_SERVICE_UNKNOWN)) {
+ pa_log_debug("Bluetooth daemon is apparently not available.");
+ remove_all_devices(y);
+ goto finish;
+ }
+
if (dbus_message_get_type(r) == DBUS_MESSAGE_TYPE_ERROR) {
pa_log("Error from ListAdapters reply: %s", dbus_message_get_error_name(r));
- goto end;
+ goto finish;
}
if (!dbus_message_get_args(r, &e, DBUS_TYPE_ARRAY, DBUS_TYPE_OBJECT_PATH, &paths, &num, DBUS_TYPE_INVALID)) {
@@ -502,7 +535,7 @@ static void list_adapters_reply(DBusPendingCall *pending, void *userdata) {
found_adapter(y, paths[i]);
}
-end:
+finish:
if (paths)
dbus_free_string_array (paths);
@@ -615,6 +648,32 @@ static DBusHandlerResult filter_cb(DBusConnection *bus, DBusMessage *m, void *us
run_callback(y, d, FALSE);
}
+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+
+ } else if (dbus_message_is_signal(m, "org.freedesktop.DBus", "NameOwnerChanged")) {
+ const char *name, *old_owner, *new_owner;
+
+ if (!dbus_message_get_args(m, &err,
+ DBUS_TYPE_STRING, &name,
+ DBUS_TYPE_STRING, &old_owner,
+ DBUS_TYPE_STRING, &new_owner,
+ DBUS_TYPE_INVALID)) {
+ pa_log("Failed to parse org.freedesktop.DBus.NameOwnerChanged: %s", err.message);
+ goto fail;
+ }
+
+ if (pa_streq(name, "org.bluez")) {
+ if (old_owner && *old_owner) {
+ pa_log_debug("Bluetooth daemon disappeared.");
+ remove_all_devices(y);
+ }
+
+ if (new_owner && *new_owner) {
+ pa_log_debug("Bluetooth daemon appeared.");
+ list_adapters(y);
+ }
+ }
+
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
}
@@ -699,6 +758,7 @@ pa_bluetooth_discovery* pa_bluetooth_discovery_get(pa_core *c) {
if (pa_dbus_add_matches(
pa_dbus_connection_get(y->connection), &err,
+ "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged'",
"type='signal',sender='org.bluez',interface='org.bluez.Manager',member='AdapterAdded'",
"type='signal',sender='org.bluez',interface='org.bluez.Adapter',member='DeviceRemoved'",
"type='signal',sender='org.bluez',interface='org.bluez.Adapter',member='DeviceCreated'",
@@ -734,8 +794,6 @@ pa_bluetooth_discovery* pa_bluetooth_discovery_ref(pa_bluetooth_discovery *y) {
}
void pa_bluetooth_discovery_unref(pa_bluetooth_discovery *y) {
- pa_bluetooth_device *d;
-
pa_assert(y);
pa_assert(PA_REFCNT_VALUE(y) > 0);
@@ -745,16 +803,13 @@ void pa_bluetooth_discovery_unref(pa_bluetooth_discovery *y) {
pa_dbus_free_pending_list(&y->pending);
if (y->devices) {
- while ((d = pa_hashmap_steal_first(y->devices))) {
- run_callback(y, d, TRUE);
- device_free(d);
- }
-
+ remove_all_devices(y);
pa_hashmap_free(y->devices, NULL, NULL);
}
if (y->connection) {
pa_dbus_remove_matches(pa_dbus_connection_get(y->connection),
+ "type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged'",
"type='signal',sender='org.bluez',interface='org.bluez.Manager',member='AdapterAdded'",
"type='signal',sender='org.bluez',interface='org.bluez.Manager',member='AdapterRemoved'",
"type='signal',sender='org.bluez',interface='org.bluez.Adapter',member='DeviceRemoved'",
diff --git a/src/modules/bluetooth/bluetooth-util.h b/src/modules/bluetooth/bluetooth-util.h
index 265caf40..f15f2170 100644
--- a/src/modules/bluetooth/bluetooth-util.h
+++ b/src/modules/bluetooth/bluetooth-util.h
@@ -59,8 +59,7 @@ typedef enum pa_bt_audio_state {
PA_BT_AUDIO_STATE_DISCONNECTED,
PA_BT_AUDIO_STATE_CONNECTING,
PA_BT_AUDIO_STATE_CONNECTED,
- PA_BT_AUDIO_STATE_PLAYING,
- PA_BT_AUDIO_STATE_LAST
+ PA_BT_AUDIO_STATE_PLAYING
} pa_bt_audio_state_t;
struct pa_bluetooth_device {
diff --git a/src/modules/bluetooth/module-bluetooth-device.c b/src/modules/bluetooth/module-bluetooth-device.c
index e7c6d5e4..d6321fc4 100644
--- a/src/modules/bluetooth/module-bluetooth-device.c
+++ b/src/modules/bluetooth/module-bluetooth-device.c
@@ -881,7 +881,7 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
*((pa_usec_t*) data) = wi > ri ? wi - ri : 0;
}
- *((pa_usec_t*) data) += u->sink->fixed_latency;
+ *((pa_usec_t*) data) += u->sink->thread_info.fixed_latency;
return 0;
}
}
@@ -943,7 +943,7 @@ static int source_process_msg(pa_msgobject *o, int code, void *data, int64_t off
wi = pa_smoother_get(u->read_smoother, pa_rtclock_now());
ri = pa_bytes_to_usec(u->read_index, &u->sample_spec);
- *((pa_usec_t*) data) = (wi > ri ? wi - ri : 0) + u->source->fixed_latency;
+ *((pa_usec_t*) data) = (wi > ri ? wi - ri : 0) + u->source->thread_info.fixed_latency;
return 0;
}
@@ -1262,11 +1262,11 @@ static void thread_func(void *userdata) {
if (u->core->realtime_scheduling)
pa_make_realtime(u->core->realtime_priority);
+ pa_thread_mq_install(&u->thread_mq);
+
if (start_stream_fd(u) < 0)
goto fail;
- pa_thread_mq_install(&u->thread_mq);
-
for (;;) {
struct pollfd *pollfd;
int ret;
@@ -1319,18 +1319,21 @@ static void thread_func(void *userdata) {
if (u->write_index > 0 && audio_to_send > MAX_PLAYBACK_CATCH_UP_USEC) {
pa_usec_t skip_usec;
uint64_t skip_bytes;
- pa_memchunk tmp;
skip_usec = audio_to_send - MAX_PLAYBACK_CATCH_UP_USEC;
skip_bytes = pa_usec_to_bytes(skip_usec, &u->sample_spec);
- pa_log_warn("Skipping %llu us (= %llu bytes) in audio stream",
- (unsigned long long) skip_usec,
- (unsigned long long) skip_bytes);
+ if (skip_bytes > 0) {
+ pa_memchunk tmp;
+
+ pa_log_warn("Skipping %llu us (= %llu bytes) in audio stream",
+ (unsigned long long) skip_usec,
+ (unsigned long long) skip_bytes);
- pa_sink_render_full(u->sink, skip_bytes, &tmp);
- pa_memblock_unref(tmp.memblock);
- u->write_index += skip_bytes;
+ pa_sink_render_full(u->sink, skip_bytes, &tmp);
+ pa_memblock_unref(tmp.memblock);
+ u->write_index += skip_bytes;
+ }
}
do_write = 1;
@@ -1351,11 +1354,14 @@ static void thread_func(void *userdata) {
goto fail;
}
+ if (n_written == 0)
+ pa_log("Broken kernel: we got EAGAIN on write() after POLLOUT!");
+
do_write -= n_written;
writable = FALSE;
}
- if ((!u->source || !PA_SOURCE_IS_LINKED(u->source->thread_info.state)) && do_write <= 0) {
+ if ((!u->source || !PA_SOURCE_IS_LINKED(u->source->thread_info.state)) && do_write <= 0 && writable) {
pa_usec_t time_passed, next_write_at, sleep_for;
/* Hmm, there is no input stream we could synchronize
@@ -1443,12 +1449,12 @@ static DBusHandlerResult filter_cb(DBusConnection *bus, DBusMessage *m, void *us
if (u->sink && dbus_message_is_signal(m, "org.bluez.Headset", "SpeakerGainChanged")) {
pa_cvolume_set(&v, u->sample_spec.channels, (pa_volume_t) (gain * PA_VOLUME_NORM / 15));
- pa_sink_volume_changed(u->sink, &v, TRUE);
+ pa_sink_volume_changed(u->sink, &v);
} else if (u->source && dbus_message_is_signal(m, "org.bluez.Headset", "MicrophoneGainChanged")) {
pa_cvolume_set(&v, u->sample_spec.channels, (pa_volume_t) (gain * PA_VOLUME_NORM / 15));
- pa_source_volume_changed(u->source, &v, TRUE);
+ pa_source_volume_changed(u->source, &v);
}
}
}
@@ -1733,7 +1739,8 @@ static void shutdown_bt(struct userdata *u) {
if (u->service_fd >= 0) {
pa_close(u->service_fd);
u->service_fd = -1;
- u->service_write_type = u->service_write_type = 0;
+ u->service_write_type = 0;
+ u->service_read_type = 0;
}
if (u->write_memchunk.memblock) {
@@ -1749,7 +1756,8 @@ static int init_bt(struct userdata *u) {
shutdown_bt(u);
u->stream_write_type = 0;
- u->service_write_type = u->service_write_type = 0;
+ u->service_write_type = 0;
+ u->service_read_type = 0;
if ((u->service_fd = bt_audio_service_open()) < 0) {
pa_log_error("Couldn't connect to bluetooth audio service");
@@ -2082,6 +2090,15 @@ static int add_card(struct userdata *u, const pa_bluetooth_device *device) {
u->card->userdata = u;
u->card->set_profile = card_set_profile;
+ d = PA_CARD_PROFILE_DATA(u->card->active_profile);
+
+ if ((device->headset_state < PA_BT_AUDIO_STATE_CONNECTED && *d == PROFILE_HSP) ||
+ (device->audio_sink_state < PA_BT_AUDIO_STATE_CONNECTED && *d == PROFILE_A2DP)) {
+ pa_log_warn("Default profile not connected, selecting off profile");
+ u->card->active_profile = pa_hashmap_get(u->card->profiles, "off");
+ u->card->save_profile = FALSE;
+ }
+
d = PA_CARD_PROFILE_DATA(u->card->active_profile);
u->profile = *d;
diff --git a/src/modules/module-combine.c b/src/modules/module-combine.c
index d50e59ae..582cbce1 100644
--- a/src/modules/module-combine.c
+++ b/src/modules/module-combine.c
@@ -92,6 +92,8 @@ struct output {
pa_sink *sink;
pa_sink_input *sink_input;
+ pa_bool_t ignore_state_change;
+
pa_asyncmsgq *inq, /* Message queue from the sink thread to this sink input */
*outq; /* Message queue from this sink input to the sink thread */
pa_rtpoll_item *inq_rtpoll_item_read, *inq_rtpoll_item_write;
@@ -99,9 +101,12 @@ struct output {
pa_memblockq *memblockq;
+ /* For communication of the stream latencies to the main thread */
pa_usec_t total_latency;
+ /* For coomunication of the stream parameters to the sink thread */
pa_atomic_t max_request;
+ pa_atomic_t requested_latency;
PA_LLIST_FIELDS(struct output);
};
@@ -119,13 +124,12 @@ struct userdata {
uint32_t adjust_time;
pa_bool_t automatic;
+ pa_bool_t auto_desc;
pa_hook_slot *sink_put_slot, *sink_unlink_slot, *sink_state_changed_slot;
pa_resample_method_t resample_method;
- struct timeval adjust_timestamp;
-
pa_usec_t block_usec;
pa_idxset* outputs; /* managed in main context */
@@ -145,13 +149,16 @@ enum {
SINK_MESSAGE_REMOVE_OUTPUT,
SINK_MESSAGE_NEED,
SINK_MESSAGE_UPDATE_LATENCY,
- SINK_MESSAGE_UPDATE_MAX_REQUEST
+ SINK_MESSAGE_UPDATE_MAX_REQUEST,
+ SINK_MESSAGE_UPDATE_REQUESTED_LATENCY
};
enum {
SINK_INPUT_MESSAGE_POST = PA_SINK_INPUT_MESSAGE_MAX,
};
+static void output_disable(struct output *o);
+static void output_enable(struct output *o);
static void output_free(struct output *o);
static int output_create_sink_input(struct output *o);
@@ -171,7 +178,7 @@ static void adjust_rates(struct userdata *u) {
if (!PA_SINK_IS_OPENED(pa_sink_get_state(u->sink)))
return;
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx)) {
+ PA_IDXSET_FOREACH(o, u->outputs, idx) {
pa_usec_t sink_latency;
if (!o->sink_input || !PA_SINK_IS_OPENED(pa_sink_get_state(o->sink)))
@@ -188,6 +195,11 @@ static void adjust_rates(struct userdata *u) {
avg_total_latency += o->total_latency;
n++;
+
+ pa_log_debug("[%s] total=%0.2fms sink=%0.2fms ", o->sink->name, (double) o->total_latency / PA_USEC_PER_MSEC, (double) sink_latency / PA_USEC_PER_MSEC);
+
+ if (o->total_latency > 10*PA_USEC_PER_SEC)
+ pa_log_warn("[%s] Total latency of output is very high (%0.2fms), most likely the audio timing in one of your drivers is broken.", o->sink->name, (double) o->total_latency / PA_USEC_PER_MSEC);
}
if (min_total_latency == (pa_usec_t) -1)
@@ -202,7 +214,7 @@ static void adjust_rates(struct userdata *u) {
base_rate = u->sink->sample_spec.rate;
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx)) {
+ PA_IDXSET_FOREACH(o, u->outputs, idx) {
uint32_t r = base_rate;
if (!o->sink_input || !PA_SINK_IS_OPENED(pa_sink_get_state(o->sink)))
@@ -214,10 +226,10 @@ static void adjust_rates(struct userdata *u) {
r += (uint32_t) ((((double) (o->total_latency - target_latency))/(double)u->adjust_time)*(double)r/PA_USEC_PER_SEC);
if (r < (uint32_t) (base_rate*0.9) || r > (uint32_t) (base_rate*1.1)) {
- pa_log_warn("[%s] sample rates too different, not adjusting (%u vs. %u).", pa_proplist_gets(o->sink_input->proplist, PA_PROP_MEDIA_NAME), base_rate, r);
+ pa_log_warn("[%s] sample rates too different, not adjusting (%u vs. %u).", o->sink_input->sink->name, base_rate, r);
pa_sink_input_set_rate(o->sink_input, base_rate);
} else {
- pa_log_info("[%s] new rate is %u Hz; ratio is %0.3f; latency is %0.0f usec.", pa_proplist_gets(o->sink_input->proplist, PA_PROP_MEDIA_NAME), r, (double) r / base_rate, (float) o->total_latency);
+ pa_log_info("[%s] new rate is %u Hz; ratio is %0.3f; latency is %0.0f usec.", o->sink_input->sink->name, r, (double) r / base_rate, (float) o->total_latency);
pa_sink_input_set_rate(o->sink_input, r);
}
}
@@ -354,18 +366,15 @@ static void render_memblock(struct userdata *u, struct output *o, size_t length)
u->thread_info.counter += chunk.length;
/* OK, let's send this data to the other threads */
- for (j = u->thread_info.active_outputs; j; j = j->next)
-
- /* Send to other outputs, which are not the requesting
- * one */
+ PA_LLIST_FOREACH(j, u->thread_info.active_outputs) {
+ if (j == o)
+ continue;
- if (j != o)
- pa_asyncmsgq_post(j->inq, PA_MSGOBJECT(j->sink_input), SINK_INPUT_MESSAGE_POST, NULL, 0, &chunk, NULL);
+ pa_asyncmsgq_post(j->inq, PA_MSGOBJECT(j->sink_input), SINK_INPUT_MESSAGE_POST, NULL, 0, &chunk, NULL);
+ }
/* And place it directly into the requesting output's queue */
- if (o)
- pa_memblockq_push_align(o->memblockq, &chunk);
-
+ pa_memblockq_push_align(o->memblockq, &chunk);
pa_memblock_unref(chunk.memblock);
}
}
@@ -401,10 +410,18 @@ static int sink_input_pop_cb(pa_sink_input *i, size_t nbytes, pa_memchunk *chunk
/* If necessary, get some new data */
request_memblock(o, nbytes);
+ /* pa_log("%s q size is %u + %u (%u/%u)", */
+ /* i->sink->name, */
+ /* pa_memblockq_get_nblocks(o->memblockq), */
+ /* pa_memblockq_get_nblocks(i->thread_info.render_memblockq), */
+ /* pa_memblockq_get_maxrewind(o->memblockq), */
+ /* pa_memblockq_get_maxrewind(i->thread_info.render_memblockq)); */
+
if (pa_memblockq_peek(o->memblockq, chunk) < 0)
return -1;
pa_memblockq_drop(o->memblockq, chunk->length);
+
return 0;
}
@@ -439,13 +456,35 @@ static void sink_input_update_max_request_cb(pa_sink_input *i, size_t nbytes) {
return;
pa_atomic_store(&o->max_request, (int) nbytes);
-
pa_asyncmsgq_post(o->outq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_UPDATE_MAX_REQUEST, NULL, 0, NULL, NULL);
}
+/* Called from thread context */
+static void sink_input_update_sink_requested_latency_cb(pa_sink_input *i) {
+ struct output *o;
+ pa_usec_t c;
+
+ pa_assert(i);
+
+ pa_sink_input_assert_ref(i);
+ pa_assert_se(o = i->userdata);
+
+ c = pa_sink_get_requested_latency_within_thread(i->sink);
+
+ if (c == (pa_usec_t) -1)
+ c = i->sink->thread_info.max_latency;
+
+ if (pa_atomic_load(&o->requested_latency) == (int) c)
+ return;
+
+ pa_atomic_store(&o->requested_latency, (int) c);
+ pa_asyncmsgq_post(o->outq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_UPDATE_REQUESTED_LATENCY, NULL, 0, NULL, NULL);
+}
+
/* Called from I/O thread context */
static void sink_input_attach_cb(pa_sink_input *i) {
struct output *o;
+ pa_usec_t c;
pa_sink_input_assert_ref(i);
pa_assert_se(o = i->userdata);
@@ -454,14 +493,24 @@ static void sink_input_attach_cb(pa_sink_input *i) {
pa_assert(!o->inq_rtpoll_item_read && !o->outq_rtpoll_item_write);
o->inq_rtpoll_item_read = pa_rtpoll_item_new_asyncmsgq_read(
- i->sink->rtpoll,
+ i->sink->thread_info.rtpoll,
PA_RTPOLL_LATE, /* This one is not that important, since we check for data in _peek() anyway. */
o->inq);
o->outq_rtpoll_item_write = pa_rtpoll_item_new_asyncmsgq_write(
- i->sink->rtpoll,
+ i->sink->thread_info.rtpoll,
PA_RTPOLL_EARLY,
o->outq);
+
+ pa_sink_input_request_rewind(i, 0, FALSE, TRUE, TRUE);
+
+ pa_atomic_store(&o->max_request, (int) pa_sink_input_get_max_request(i));
+
+ c = pa_sink_get_requested_latency_within_thread(i->sink);
+ pa_atomic_store(&o->requested_latency, (int) (c == (pa_usec_t) -1 ? 0 : c));
+
+ pa_asyncmsgq_post(o->outq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_UPDATE_MAX_REQUEST, NULL, 0, NULL, NULL);
+ pa_asyncmsgq_post(o->outq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_UPDATE_REQUESTED_LATENCY, NULL, 0, NULL, NULL);
}
/* Called from I/O thread context */
@@ -471,14 +520,15 @@ static void sink_input_detach_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(o = i->userdata);
- /* Shut down the queue from the sink thread to us */
- pa_assert(o->inq_rtpoll_item_read && o->outq_rtpoll_item_write);
-
- pa_rtpoll_item_free(o->inq_rtpoll_item_read);
- o->inq_rtpoll_item_read = NULL;
+ if (o->inq_rtpoll_item_read) {
+ pa_rtpoll_item_free(o->inq_rtpoll_item_read);
+ o->inq_rtpoll_item_read = NULL;
+ }
- pa_rtpoll_item_free(o->outq_rtpoll_item_write);
- o->outq_rtpoll_item_write = NULL;
+ if (o->outq_rtpoll_item_write) {
+ pa_rtpoll_item_free(o->outq_rtpoll_item_write);
+ o->outq_rtpoll_item_write = NULL;
+ }
}
/* Called from main context */
@@ -492,20 +542,6 @@ static void sink_input_kill_cb(pa_sink_input *i) {
output_free(o);
}
-/* Called from IO thread context */
-static void sink_input_state_change_cb(pa_sink_input *i, pa_sink_input_state_t state) {
- struct userdata *u;
-
- pa_sink_input_assert_ref(i);
- pa_assert_se(u = i->userdata);
-
- /* If we are added for the first time, ask for a rewinding so that
- * we are heard right-away. */
- if (PA_SINK_INPUT_IS_LINKED(state) &&
- i->thread_info.state == PA_SINK_INPUT_INIT)
- pa_sink_input_request_rewind(i, 0, FALSE, TRUE, TRUE);
-}
-
/* Called from thread context */
static int sink_input_process_msg(pa_msgobject *obj, int code, void *data, int64_t offset, pa_memchunk *chunk) {
struct output *o = PA_SINK_INPUT(obj)->userdata;
@@ -535,37 +571,6 @@ static int sink_input_process_msg(pa_msgobject *obj, int code, void *data, int64
return pa_sink_input_process_msg(obj, code, data, offset, chunk);
}
-/* Called from main context */
-static void disable_output(struct output *o) {
- pa_assert(o);
-
- if (!o->sink_input)
- return;
-
- pa_sink_input_unlink(o->sink_input);
- pa_asyncmsgq_send(o->userdata->sink->asyncmsgq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_REMOVE_OUTPUT, o, 0, NULL);
- pa_sink_input_unref(o->sink_input);
- o->sink_input = NULL;
-}
-
-/* Called from main context */
-static void enable_output(struct output *o) {
- pa_assert(o);
-
- if (o->sink_input)
- return;
-
- if (output_create_sink_input(o) >= 0) {
-
- pa_memblockq_flush_write(o->memblockq);
-
- pa_sink_input_put(o->sink_input);
-
- if (o->userdata->sink && PA_SINK_IS_LINKED(pa_sink_get_state(o->userdata->sink)))
- pa_asyncmsgq_send(o->userdata->sink->asyncmsgq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_ADD_OUTPUT, o, 0, NULL);
- }
-}
-
/* Called from main context */
static void suspend(struct userdata *u) {
struct output *o;
@@ -574,8 +579,8 @@ static void suspend(struct userdata *u) {
pa_assert(u);
/* Let's suspend by unlinking all streams */
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx))
- disable_output(o);
+ PA_IDXSET_FOREACH(o, u->outputs, idx)
+ output_disable(o);
pa_log_info("Device suspended...");
}
@@ -588,13 +593,8 @@ static void unsuspend(struct userdata *u) {
pa_assert(u);
/* Let's resume */
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx)) {
-
- pa_sink_suspend(o->sink, FALSE, PA_SUSPEND_IDLE);
-
- if (PA_SINK_IS_OPENED(pa_sink_get_state(o->sink)))
- enable_output(o);
- }
+ PA_IDXSET_FOREACH(o, u->outputs, idx)
+ output_enable(o);
pa_log_info("Resumed successfully...");
}
@@ -638,7 +638,13 @@ static void update_max_request(struct userdata *u) {
size_t max_request = 0;
struct output *o;
- for (o = u->thread_info.active_outputs; o; o = o->next) {
+ pa_assert(u);
+ pa_sink_assert_io_context(u->sink);
+
+ /* Collects the max_request values of all streams and sets the
+ * largest one locally */
+
+ PA_LLIST_FOREACH(o, u->thread_info.active_outputs) {
size_t mr = (size_t) pa_atomic_load(&o->max_request);
if (mr > max_request)
@@ -651,6 +657,67 @@ static void update_max_request(struct userdata *u) {
pa_sink_set_max_request_within_thread(u->sink, max_request);
}
+/* Called from IO context */
+static void update_fixed_latency(struct userdata *u) {
+ pa_usec_t fixed_latency = 0;
+ struct output *o;
+
+ pa_assert(u);
+ pa_sink_assert_io_context(u->sink);
+
+ /* Collects the requested_latency values of all streams and sets
+ * the largest one as fixed_latency locally */
+
+ PA_LLIST_FOREACH(o, u->thread_info.active_outputs) {
+ pa_usec_t rl = (size_t) pa_atomic_load(&o->requested_latency);
+
+ if (rl > fixed_latency)
+ fixed_latency = rl;
+ }
+
+ if (fixed_latency <= 0)
+ fixed_latency = u->block_usec;
+
+ pa_sink_set_fixed_latency_within_thread(u->sink, fixed_latency);
+}
+
+/* Called from thread context of the io thread */
+static void output_add_within_thread(struct output *o) {
+ pa_assert(o);
+ pa_sink_assert_io_context(o->sink);
+
+ PA_LLIST_PREPEND(struct output, o->userdata->thread_info.active_outputs, o);
+
+ pa_assert(!o->outq_rtpoll_item_read && !o->inq_rtpoll_item_write);
+
+ o->outq_rtpoll_item_read = pa_rtpoll_item_new_asyncmsgq_read(
+ o->userdata->rtpoll,
+ PA_RTPOLL_EARLY-1, /* This item is very important */
+ o->outq);
+ o->inq_rtpoll_item_write = pa_rtpoll_item_new_asyncmsgq_write(
+ o->userdata->rtpoll,
+ PA_RTPOLL_EARLY,
+ o->inq);
+}
+
+/* Called from thread context of the io thread */
+static void output_remove_within_thread(struct output *o) {
+ pa_assert(o);
+ pa_sink_assert_io_context(o->sink);
+
+ PA_LLIST_REMOVE(struct output, o->userdata->thread_info.active_outputs, o);
+
+ if (o->outq_rtpoll_item_read) {
+ pa_rtpoll_item_free(o->outq_rtpoll_item_read);
+ o->outq_rtpoll_item_read = NULL;
+ }
+
+ if (o->inq_rtpoll_item_write) {
+ pa_rtpoll_item_free(o->inq_rtpoll_item_write);
+ o->inq_rtpoll_item_write = NULL;
+ }
+}
+
/* Called from thread context of the io thread */
static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) {
struct userdata *u = PA_SINK(o)->userdata;
@@ -683,42 +750,17 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
return 0;
}
- case SINK_MESSAGE_ADD_OUTPUT: {
- struct output *op = data;
-
- PA_LLIST_PREPEND(struct output, u->thread_info.active_outputs, op);
-
- pa_assert(!op->outq_rtpoll_item_read && !op->inq_rtpoll_item_write);
-
- op->outq_rtpoll_item_read = pa_rtpoll_item_new_asyncmsgq_read(
- u->rtpoll,
- PA_RTPOLL_EARLY-1, /* This item is very important */
- op->outq);
- op->inq_rtpoll_item_write = pa_rtpoll_item_new_asyncmsgq_write(
- u->rtpoll,
- PA_RTPOLL_EARLY,
- op->inq);
-
+ case SINK_MESSAGE_ADD_OUTPUT:
+ output_add_within_thread(data);
update_max_request(u);
+ update_fixed_latency(u);
return 0;
- }
-
- case SINK_MESSAGE_REMOVE_OUTPUT: {
- struct output *op = data;
-
- PA_LLIST_REMOVE(struct output, u->thread_info.active_outputs, op);
-
- pa_assert(op->outq_rtpoll_item_read && op->inq_rtpoll_item_write);
-
- pa_rtpoll_item_free(op->outq_rtpoll_item_read);
- op->outq_rtpoll_item_read = NULL;
-
- pa_rtpoll_item_free(op->inq_rtpoll_item_write);
- op->inq_rtpoll_item_write = NULL;
+ case SINK_MESSAGE_REMOVE_OUTPUT:
+ output_remove_within_thread(data);
update_max_request(u);
+ update_fixed_latency(u);
return 0;
- }
case SINK_MESSAGE_NEED:
render_memblock(u, (struct output*) data, (size_t) offset);
@@ -740,10 +782,13 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
}
case SINK_MESSAGE_UPDATE_MAX_REQUEST:
-
update_max_request(u);
break;
- }
+
+ case SINK_MESSAGE_UPDATE_REQUESTED_LATENCY:
+ update_fixed_latency(u);
+ break;
+}
return pa_sink_process_msg(o, code, data, offset, chunk);
}
@@ -756,6 +801,9 @@ static void update_description(struct userdata *u) {
pa_assert(u);
+ if (!u->auto_desc)
+ return;
+
if (pa_idxset_isempty(u->outputs)) {
pa_sink_set_description(u->sink, "Simultaneous output");
return;
@@ -763,7 +811,7 @@ static void update_description(struct userdata *u) {
t = pa_xstrdup("Simultaneous output to");
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx)) {
+ PA_IDXSET_FOREACH(o, u->outputs, idx) {
char *e;
if (first) {
@@ -798,7 +846,7 @@ static int output_create_sink_input(struct output *o) {
data.module = o->userdata->module;
data.resample_method = o->userdata->resample_method;
- pa_sink_input_new(&o->sink_input, o->userdata->core, &data, PA_SINK_INPUT_VARIABLE_RATE|PA_SINK_INPUT_DONT_MOVE);
+ pa_sink_input_new(&o->sink_input, o->userdata->core, &data, PA_SINK_INPUT_VARIABLE_RATE|PA_SINK_INPUT_DONT_MOVE|PA_SINK_INPUT_NO_CREATE_ON_SUSPEND);
pa_sink_input_new_data_done(&data);
@@ -808,9 +856,9 @@ static int output_create_sink_input(struct output *o) {
o->sink_input->parent.process_msg = sink_input_process_msg;
o->sink_input->pop = sink_input_pop_cb;
o->sink_input->process_rewind = sink_input_process_rewind_cb;
- o->sink_input->state_change = sink_input_state_change_cb;
o->sink_input->update_max_rewind = sink_input_update_max_rewind_cb;
o->sink_input->update_max_request = sink_input_update_max_request_cb;
+ o->sink_input->update_sink_requested_latency = sink_input_update_sink_requested_latency_cb;
o->sink_input->attach = sink_input_attach_cb;
o->sink_input->detach = sink_input_detach_cb;
o->sink_input->kill = sink_input_kill_cb;
@@ -821,22 +869,19 @@ static int output_create_sink_input(struct output *o) {
return 0;
}
+/* Called from main context */
static struct output *output_new(struct userdata *u, pa_sink *sink) {
struct output *o;
- pa_sink_state_t state;
pa_assert(u);
pa_assert(sink);
pa_assert(u->sink);
- o = pa_xnew(struct output, 1);
+ o = pa_xnew0(struct output, 1);
o->userdata = u;
o->inq = pa_asyncmsgq_new(0);
o->outq = pa_asyncmsgq_new(0);
- o->inq_rtpoll_item_write = o->inq_rtpoll_item_read = NULL;
- o->outq_rtpoll_item_write = o->outq_rtpoll_item_read = NULL;
o->sink = sink;
- o->sink_input = NULL;
o->memblockq = pa_memblockq_new(
0,
MEMBLOCKQ_MAXLENGTH,
@@ -846,84 +891,135 @@ static struct output *output_new(struct userdata *u, pa_sink *sink) {
0,
0,
NULL);
- pa_atomic_store(&o->max_request, 0);
- PA_LLIST_INIT(struct output, o);
pa_assert_se(pa_idxset_put(u->outputs, o, NULL) == 0);
+ update_description(u);
- state = pa_sink_get_state(u->sink);
-
- if (state != PA_SINK_INIT)
- pa_asyncmsgq_send(u->sink->asyncmsgq, PA_MSGOBJECT(u->sink), SINK_MESSAGE_ADD_OUTPUT, o, 0, NULL);
- else {
- /* If the sink is not yet started, we need to do the activation ourselves */
- PA_LLIST_PREPEND(struct output, u->thread_info.active_outputs, o);
-
- o->outq_rtpoll_item_read = pa_rtpoll_item_new_asyncmsgq_read(
- u->rtpoll,
- PA_RTPOLL_EARLY-1, /* This item is very important */
- o->outq);
- o->inq_rtpoll_item_write = pa_rtpoll_item_new_asyncmsgq_write(
- u->rtpoll,
- PA_RTPOLL_EARLY,
- o->inq);
- }
+ return o;
+}
- if (PA_SINK_IS_OPENED(state) || state == PA_SINK_INIT) {
- pa_sink_suspend(sink, FALSE, PA_SUSPEND_IDLE);
+/* Called from main context */
+static void output_free(struct output *o) {
+ pa_assert(o);
- if (PA_SINK_IS_OPENED(pa_sink_get_state(sink)))
- if (output_create_sink_input(o) < 0)
- goto fail;
- }
+ output_disable(o);
- update_description(u);
+ pa_assert_se(pa_idxset_remove_by_data(o->userdata->outputs, o, NULL));
+ update_description(o->userdata);
- return o;
+ if (o->inq_rtpoll_item_read)
+ pa_rtpoll_item_free(o->inq_rtpoll_item_read);
+ if (o->inq_rtpoll_item_write)
+ pa_rtpoll_item_free(o->inq_rtpoll_item_write);
-fail:
+ if (o->outq_rtpoll_item_read)
+ pa_rtpoll_item_free(o->outq_rtpoll_item_read);
+ if (o->outq_rtpoll_item_write)
+ pa_rtpoll_item_free(o->outq_rtpoll_item_write);
- if (o) {
- pa_idxset_remove_by_data(u->outputs, o, NULL);
+ if (o->inq)
+ pa_asyncmsgq_unref(o->inq);
- if (o->sink_input) {
- pa_sink_input_unlink(o->sink_input);
- pa_sink_input_unref(o->sink_input);
- }
+ if (o->outq)
+ pa_asyncmsgq_unref(o->outq);
+
+ if (o->memblockq)
+ pa_memblockq_free(o->memblockq);
+
+ pa_xfree(o);
+}
+
+/* Called from main context */
+static void output_enable(struct output *o) {
+ pa_assert(o);
+
+ if (o->sink_input)
+ return;
+
+ /* This might cause the sink to be resumed. The state change hook
+ * of the sink might hence be called from here, which might then
+ * cause us to be called in a loop. Make sure that state changes
+ * for this output don't cause this loop by setting a flag here */
+ o->ignore_state_change = TRUE;
- if (o->memblockq)
- pa_memblockq_free(o->memblockq);
+ if (output_create_sink_input(o) >= 0) {
- if (o->inq)
- pa_asyncmsgq_unref(o->inq);
+ if (pa_sink_get_state(o->sink) != PA_SINK_INIT) {
- if (o->outq)
- pa_asyncmsgq_unref(o->outq);
+ /* First we register the output. That means that the sink
+ * will start to pass data to this output. */
+ pa_asyncmsgq_send(o->userdata->sink->asyncmsgq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_ADD_OUTPUT, o, 0, NULL);
- pa_xfree(o);
+ /* Then we enable the sink input. That means that the sink
+ * is now asked for new data. */
+ pa_sink_input_put(o->sink_input);
+
+ } else
+ /* Hmm the sink is not yet started, do things right here */
+ output_add_within_thread(o);
}
- return NULL;
+ o->ignore_state_change = FALSE;
}
+/* Called from main context */
+static void output_disable(struct output *o) {
+ pa_assert(o);
+
+ if (!o->sink_input)
+ return;
+
+ /* First we disable the sink input. That means that the sink is
+ * not asked for new data anymore */
+ pa_sink_input_unlink(o->sink_input);
+
+ /* Then we unregister the output. That means that the sink doesn't
+ * pass any further data to this output */
+ pa_asyncmsgq_send(o->userdata->sink->asyncmsgq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_REMOVE_OUTPUT, o, 0, NULL);
+
+ /* Now dellocate the stream */
+ pa_sink_input_unref(o->sink_input);
+ o->sink_input = NULL;
+
+ /* Finally, drop all queued data */
+ pa_memblockq_flush_write(o->memblockq);
+ pa_asyncmsgq_flush(o->inq, FALSE);
+ pa_asyncmsgq_flush(o->outq, FALSE);
+}
+
+/* Called from main context */
+static void output_verify(struct output *o) {
+ pa_assert(o);
+
+ if (PA_SINK_IS_OPENED(pa_sink_get_state(o->userdata->sink)))
+ output_enable(o);
+ else
+ output_disable(o);
+}
+
+/* Called from main context */
static pa_bool_t is_suitable_sink(struct userdata *u, pa_sink *s) {
const char *t;
pa_sink_assert_ref(s);
+ if (s == u->sink)
+ return FALSE;
+
if (!(s->flags & PA_SINK_HARDWARE))
return FALSE;
- if (s == u->sink)
+ if (!(s->flags & PA_SINK_LATENCY))
return FALSE;
if ((t = pa_proplist_gets(s->proplist, PA_PROP_DEVICE_CLASS)))
- if (strcmp(t, "sound"))
+ if (!pa_streq(t, "sound"))
return FALSE;
return TRUE;
}
+/* Called from main context */
static pa_hook_result_t sink_put_hook_cb(pa_core *c, pa_sink *s, struct userdata* u) {
struct output *o;
@@ -936,18 +1032,17 @@ static pa_hook_result_t sink_put_hook_cb(pa_core *c, pa_sink *s, struct userdata
return PA_HOOK_OK;
pa_log_info("Configuring new sink: %s", s->name);
-
if (!(o = output_new(u, s))) {
pa_log("Failed to create sink input on sink '%s'.", s->name);
return PA_HOOK_OK;
}
- if (o->sink_input)
- pa_sink_input_put(o->sink_input);
+ output_verify(o);
return PA_HOOK_OK;
}
+/* Called from main context */
static struct output* find_output(struct userdata *u, pa_sink *s) {
struct output *o;
uint32_t idx;
@@ -958,13 +1053,14 @@ static struct output* find_output(struct userdata *u, pa_sink *s) {
if (u->sink == s)
return NULL;
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx))
+ PA_IDXSET_FOREACH(o, u->outputs, idx)
if (o->sink == s)
return o;
return NULL;
}
+/* Called from main context */
static pa_hook_result_t sink_unlink_hook_cb(pa_core *c, pa_sink *s, struct userdata* u) {
struct output *o;
@@ -976,26 +1072,25 @@ static pa_hook_result_t sink_unlink_hook_cb(pa_core *c, pa_sink *s, struct userd
return PA_HOOK_OK;
pa_log_info("Unconfiguring sink: %s", s->name);
-
output_free(o);
return PA_HOOK_OK;
}
+/* Called from main context */
static pa_hook_result_t sink_state_changed_hook_cb(pa_core *c, pa_sink *s, struct userdata* u) {
struct output *o;
- pa_sink_state_t state;
if (!(o = find_output(u, s)))
return PA_HOOK_OK;
- state = pa_sink_get_state(s);
-
- if (PA_SINK_IS_OPENED(state) && PA_SINK_IS_OPENED(pa_sink_get_state(u->sink)) && !o->sink_input)
- enable_output(o);
+ /* This state change might be triggered because we are creating a
+ * stream here, in that case we don't want to create it a second
+ * time here and enter a loop */
+ if (o->ignore_state_change)
+ return PA_HOOK_OK;
- if (state == PA_SINK_SUSPENDED && o->sink_input)
- disable_output(o);
+ output_verify(o);
return PA_HOOK_OK;
}
@@ -1025,18 +1120,14 @@ int pa__init(pa_module*m) {
}
}
- m->userdata = u = pa_xnew(struct userdata, 1);
+ m->userdata = u = pa_xnew0(struct userdata, 1);
u->core = m->core;
u->module = m;
- u->sink = NULL;
- u->time_event = NULL;
u->adjust_time = DEFAULT_ADJUST_TIME;
u->rtpoll = pa_rtpoll_new();
pa_thread_mq_init(&u->thread_mq, m->core->mainloop, u->rtpoll);
- u->thread = NULL;
u->resample_method = resample_method;
u->outputs = pa_idxset_new(NULL, NULL);
- memset(&u->adjust_timestamp, 0, sizeof(u->adjust_timestamp));
u->sink_put_slot = u->sink_unlink_slot = u->sink_state_changed_slot = NULL;
PA_LLIST_HEAD_INIT(struct output, u->thread_info.active_outputs);
pa_atomic_store(&u->thread_info.running, FALSE);
@@ -1061,6 +1152,55 @@ int pa__init(pa_module*m) {
ss = m->core->default_sample_spec;
map = m->core->default_channel_map;
+
+ /* Check the specified slave sinks for sample_spec and channel_map to use for the combined sink */
+ if (!u->automatic) {
+ const char*split_state = NULL;
+ char *n = NULL;
+ pa_sample_spec slaves_spec;
+ pa_channel_map slaves_map;
+ pa_bool_t is_first_slave = TRUE;
+
+ while ((n = pa_split(slaves, ",", &split_state))) {
+ pa_sink *slave_sink;
+
+ if (!(slave_sink = pa_namereg_get(m->core, n, PA_NAMEREG_SINK))) {
+ pa_log("Invalid slave sink '%s'", n);
+ pa_xfree(n);
+ goto fail;
+ }
+
+ pa_xfree(n);
+
+ if (is_first_slave) {
+ slaves_spec = slave_sink->sample_spec;
+ slaves_map = slave_sink->channel_map;
+ is_first_slave = FALSE;
+ } else {
+ if (slaves_spec.format != slave_sink->sample_spec.format)
+ slaves_spec.format = PA_SAMPLE_INVALID;
+
+ if (slaves_spec.rate < slave_sink->sample_spec.rate)
+ slaves_spec.rate = slave_sink->sample_spec.rate;
+
+ if (!pa_channel_map_equal(&slaves_map, &slave_sink->channel_map))
+ slaves_spec.channels = 0;
+ }
+ }
+
+ if (!is_first_slave) {
+ if (slaves_spec.format != PA_SAMPLE_INVALID)
+ ss.format = slaves_spec.format;
+
+ ss.rate = slaves_spec.rate;
+
+ if (slaves_spec.channels > 0) {
+ map = slaves_map;
+ ss.channels = slaves_map.channels;
+ }
+ }
+ }
+
if ((pa_modargs_get_sample_spec_and_channel_map(ma, &ss, &map, PA_CHANNEL_MAP_DEFAULT) < 0)) {
pa_log("Invalid sample specification.");
goto fail;
@@ -1073,7 +1213,6 @@ int pa__init(pa_module*m) {
pa_sink_new_data_set_name(&data, pa_modargs_get_value(ma, "sink_name", DEFAULT_SINK_NAME));
pa_sink_new_data_set_sample_spec(&data, &ss);
pa_sink_new_data_set_channel_map(&data, &map);
- pa_proplist_sets(data.proplist, PA_PROP_DEVICE_DESCRIPTION, "Simultaneous Output");
pa_proplist_sets(data.proplist, PA_PROP_DEVICE_CLASS, "filter");
if (slaves)
@@ -1085,6 +1224,13 @@ int pa__init(pa_module*m) {
goto fail;
}
+ /* Check proplist for a description & fill in a default value if not */
+ u->auto_desc = FALSE;
+ if (NULL == pa_proplist_gets(data.proplist, PA_PROP_DEVICE_DESCRIPTION)) {
+ u->auto_desc = TRUE;
+ pa_proplist_sets(data.proplist, PA_PROP_DEVICE_DESCRIPTION, "Simultaneous Output");
+ }
+
u->sink = pa_sink_new(m->core, &data, PA_SINK_LATENCY);
pa_sink_new_data_done(&data);
@@ -1138,7 +1284,7 @@ int pa__init(pa_module*m) {
/* We're in automatic mode, we add every sink that matches our needs */
- for (s = pa_idxset_first(m->core->sinks, &idx); s; s = pa_idxset_next(m->core->sinks, &idx)) {
+ PA_IDXSET_FOREACH(s, m->core->sinks, idx) {
if (!is_suitable_sink(u, s))
continue;
@@ -1163,9 +1309,8 @@ int pa__init(pa_module*m) {
/* Activate the sink and the sink inputs */
pa_sink_put(u->sink);
- for (o = pa_idxset_first(u->outputs, &idx); o; o = pa_idxset_next(u->outputs, &idx))
- if (o->sink_input)
- pa_sink_input_put(o->sink_input);
+ PA_IDXSET_FOREACH(o, u->outputs, idx)
+ output_verify(o);
if (u->adjust_time > 0)
u->time_event = pa_core_rttime_new(m->core, pa_rtclock_now() + u->adjust_time * PA_USEC_PER_SEC, time_callback, u);
@@ -1184,37 +1329,6 @@ fail:
return -1;
}
-static void output_free(struct output *o) {
- pa_assert(o);
-
- disable_output(o);
-
- pa_assert_se(pa_idxset_remove_by_data(o->userdata->outputs, o, NULL));
-
- update_description(o->userdata);
-
- if (o->inq_rtpoll_item_read)
- pa_rtpoll_item_free(o->inq_rtpoll_item_read);
- if (o->inq_rtpoll_item_write)
- pa_rtpoll_item_free(o->inq_rtpoll_item_write);
-
- if (o->outq_rtpoll_item_read)
- pa_rtpoll_item_free(o->outq_rtpoll_item_read);
- if (o->outq_rtpoll_item_write)
- pa_rtpoll_item_free(o->outq_rtpoll_item_write);
-
- if (o->inq)
- pa_asyncmsgq_unref(o->inq);
-
- if (o->outq)
- pa_asyncmsgq_unref(o->outq);
-
- if (o->memblockq)
- pa_memblockq_free(o->memblockq);
-
- pa_xfree(o);
-}
-
void pa__done(pa_module*m) {
struct userdata *u;
struct output *o;
diff --git a/src/modules/module-detect.c b/src/modules/module-detect.c
index 18479df3..956fe4c5 100644
--- a/src/modules/module-detect.c
+++ b/src/modules/module-detect.c
@@ -119,7 +119,7 @@ static int detect_alsa(pa_core *c, int just_one) {
}
#endif
-#ifdef HAVE_OSS
+#ifdef HAVE_OSS_OUTPUT
static int detect_oss(pa_core *c, int just_one) {
FILE *f;
int n = 0, b = 0;
@@ -240,7 +240,7 @@ int pa__init(pa_module*m) {
#ifdef HAVE_ALSA
if ((n = detect_alsa(m->core, just_one)) <= 0)
#endif
-#ifdef HAVE_OSS
+#ifdef HAVE_OSS_OUTPUT
if ((n = detect_oss(m->core, just_one)) <= 0)
#endif
#ifdef HAVE_SOLARIS
diff --git a/src/modules/module-hal-detect-compat.c b/src/modules/module-hal-detect-compat.c
new file mode 100644
index 00000000..14cf8143
--- /dev/null
+++ b/src/modules/module-hal-detect-compat.c
@@ -0,0 +1,84 @@
+/***
+ This file is part of PulseAudio.
+
+ Copyright 2009 Lennart Poettering
+
+ 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, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA.
+***/
+
+#ifdef HAVE_CONFIG_H
+#include
+#endif
+
+#include
+
+#include
+#include
+#include
+#include
+
+#include "module-hal-detect-symdef.h"
+
+PA_MODULE_AUTHOR("Lennart Poettering");
+PA_MODULE_DESCRIPTION("Compatibility module");
+PA_MODULE_VERSION(PACKAGE_VERSION);
+PA_MODULE_LOAD_ONCE(TRUE);
+PA_MODULE_DEPRECATED("Please use module-udev-detect instead of module-hal-detect!");
+
+static const char* const valid_modargs[] = {
+ "api",
+ "tsched",
+ "subdevices",
+ NULL,
+};
+
+int pa__init(pa_module*m) {
+ pa_modargs *ma = NULL;
+ pa_bool_t tsched = TRUE;
+ pa_module *n;
+ char *t;
+
+ pa_assert(m);
+
+ if (!(ma = pa_modargs_new(m->argument, valid_modargs))) {
+ pa_log("Failed to parse module arguments");
+ goto fail;
+ }
+
+ if (pa_modargs_get_value_boolean(ma, "tsched", &tsched) < 0) {
+ pa_log("tsched= expects boolean arguments");
+ goto fail;
+ }
+
+ pa_log_warn("We will now load module-udev-detect. Please make sure to remove module-hal-detect from your configuration.");
+
+ t = pa_sprintf_malloc("tsched=%s", pa_yes_no(tsched));
+ n = pa_module_load(m->core, "module-udev-detect", t);
+ pa_xfree(t);
+
+ if (n)
+ pa_module_unload_request(m, TRUE);
+
+ pa_modargs_free(ma);
+
+ return n ? 0 : -1;
+
+fail:
+ if (ma)
+ pa_modargs_free(ma);
+
+ return -1;
+}
diff --git a/src/modules/module-hal-detect.c b/src/modules/module-hal-detect.c
index 658b3e55..ec370d61 100644
--- a/src/modules/module-hal-detect.c
+++ b/src/modules/module-hal-detect.c
@@ -55,14 +55,16 @@ PA_MODULE_AUTHOR("Shahms King");
PA_MODULE_DESCRIPTION("Detect available audio hardware and load matching drivers");
PA_MODULE_VERSION(PACKAGE_VERSION);
PA_MODULE_LOAD_ONCE(TRUE);
-#if defined(HAVE_ALSA) && defined(HAVE_OSS)
+#if defined(HAVE_ALSA) && defined(HAVE_OSS_OUTPUT)
PA_MODULE_USAGE("api= "
- "tsched=");
+ "tsched="
+ "subdevices=");
#elif defined(HAVE_ALSA)
PA_MODULE_USAGE("api= "
"tsched=");
-#elif defined(HAVE_OSS)
-PA_MODULE_USAGE("api=");
+#elif defined(HAVE_OSS_OUTPUT)
+PA_MODULE_USAGE("api="
+ "subdevices=");
#endif
PA_MODULE_DEPRECATED("Please use module-udev-detect instead of module-hal-detect!");
@@ -82,6 +84,9 @@ struct userdata {
#ifdef HAVE_ALSA
pa_bool_t use_tsched;
#endif
+#ifdef HAVE_OSS_OUTPUT
+ pa_bool_t init_subdevs;
+#endif
};
#define CAPABILITY_ALSA "alsa"
@@ -91,6 +96,9 @@ static const char* const valid_modargs[] = {
"api",
#ifdef HAVE_ALSA
"tsched",
+#endif
+#ifdef HAVE_OSS_OUTPUT
+ "subdevices",
#endif
NULL
};
@@ -262,9 +270,9 @@ fail:
#endif
-#ifdef HAVE_OSS
+#ifdef HAVE_OSS_OUTPUT
-static pa_bool_t hal_oss_device_is_pcm(LibHalContext *context, const char *udi) {
+static pa_bool_t hal_oss_device_is_pcm(LibHalContext *context, const char *udi, pa_bool_t init_subdevices) {
char *class = NULL, *dev = NULL, *e;
int device;
pa_bool_t r = FALSE;
@@ -294,7 +302,7 @@ static pa_bool_t hal_oss_device_is_pcm(LibHalContext *context, const char *udi)
/* We only care for the main device */
device = libhal_device_get_property_int(context, udi, "oss.device", &error);
- if (dbus_error_is_set(&error) || device != 0)
+ if (dbus_error_is_set(&error) || (device != 0 && init_subdevices == FALSE))
goto finish;
r = TRUE;
@@ -324,7 +332,7 @@ static int hal_device_load_oss(struct userdata *u, const char *udi, struct devic
pa_assert(d);
/* We only care for OSS PCM devices */
- if (!hal_oss_device_is_pcm(u->context, udi))
+ if (!hal_oss_device_is_pcm(u->context, udi, u->init_subdevs))
goto fail;
/* We store only one entry per card, hence we look for the originating device */
@@ -394,7 +402,7 @@ static struct device* hal_device_add(struct userdata *u, const char *udi) {
if (pa_streq(u->capability, CAPABILITY_ALSA))
r = hal_device_load_alsa(u, udi, d);
#endif
-#ifdef HAVE_OSS
+#ifdef HAVE_OSS_OUTPUT
if (pa_streq(u->capability, CAPABILITY_OSS))
r = hal_device_load_oss(u, udi, d);
#endif
@@ -753,7 +761,7 @@ int pa__init(pa_module*m) {
api = pa_modargs_get_value(ma, "api", "oss");
#endif
-#ifdef HAVE_OSS
+#ifdef HAVE_OSS_OUTPUT
if (pa_streq(api, "oss"))
u->capability = CAPABILITY_OSS;
#endif
@@ -763,6 +771,13 @@ int pa__init(pa_module*m) {
goto fail;
}
+#ifdef HAVE_OSS_OUTPUT
+ if (pa_modargs_get_value_boolean(ma, "subdevices", &u->init_subdevs) < 0) {
+ pa_log("Failed to parse subdevices= argument.");
+ goto fail;
+ }
+#endif
+
if (!(u->connection = pa_dbus_bus_get(m->core, DBUS_BUS_SYSTEM, &error)) || dbus_error_is_set(&error)) {
pa_log_error("Unable to contact DBUS system bus: %s: %s", error.name, error.message);
goto fail;
diff --git a/src/modules/module-intended-roles.c b/src/modules/module-intended-roles.c
index c697209a..b9924dfd 100644
--- a/src/modules/module-intended-roles.c
+++ b/src/modules/module-intended-roles.c
@@ -127,6 +127,9 @@ static pa_hook_result_t sink_input_new_hook_callback(pa_core *c, pa_sink_input_n
if (s == def)
continue;
+ if (!PA_SINK_IS_LINKED(pa_sink_get_state(s)))
+ continue;
+
if (role_match(s->proplist, role)) {
new_data->sink = s;
new_data->save_sink = FALSE;
@@ -173,6 +176,9 @@ static pa_hook_result_t source_output_new_hook_callback(pa_core *c, pa_source_ou
if (s == def)
continue;
+ if (!PA_SOURCE_IS_LINKED(pa_source_get_state(s)))
+ continue;
+
if (role_match(s->proplist, role)) {
new_data->source = s;
new_data->save_source = FALSE;
@@ -201,6 +207,17 @@ static pa_hook_result_t sink_put_hook_callback(pa_core *c, pa_sink *sink, struct
if (si->save_sink)
continue;
+ /* Skip this if it is already in the process of being moved
+ * anyway */
+ if (!si->sink)
+ continue;
+
+ /* It might happen that a stream and a sink are set up at the
+ same time, in which case we want to make sure we don't
+ interfere with that */
+ if (!PA_SINK_INPUT_IS_LINKED(pa_sink_input_get_state(si)))
+ continue;
+
if (!(role = pa_proplist_gets(si->proplist, PA_PROP_MEDIA_ROLE)))
continue;
@@ -237,6 +254,17 @@ static pa_hook_result_t source_put_hook_callback(pa_core *c, pa_source *source,
if (so->direct_on_input)
continue;
+ /* Skip this if it is already in the process of being moved
+ * anyway */
+ if (!so->source)
+ continue;
+
+ /* It might happen that a stream and a source are set up at the
+ same time, in which case we want to make sure we don't
+ interfere with that */
+ if (!PA_SOURCE_OUTPUT_IS_LINKED(pa_source_output_get_state(so)))
+ continue;
+
if (!(role = pa_proplist_gets(so->proplist, PA_PROP_MEDIA_ROLE)))
continue;
@@ -275,24 +303,28 @@ static pa_hook_result_t sink_unlink_hook_callback(pa_core *c, pa_sink *sink, str
uint32_t jdx;
pa_sink *d;
+ if (!si->sink)
+ continue;
+
if (!(role = pa_proplist_gets(si->proplist, PA_PROP_MEDIA_ROLE)))
continue;
/* Would the default sink fit? If so, let's use it */
- if (def != sink && role_match(def->proplist, role)) {
- pa_sink_input_move_to(si, def, FALSE);
- continue;
- }
+ if (def != sink && role_match(def->proplist, role))
+ if (pa_sink_input_move_to(si, def, FALSE) >= 0)
+ continue;
/* Try to find some other fitting sink */
PA_IDXSET_FOREACH(d, c->sinks, jdx) {
if (d == def || d == sink)
continue;
- if (role_match(d->proplist, role)) {
- pa_sink_input_move_to(si, d, FALSE);
- break;
- }
+ if (!PA_SINK_IS_LINKED(pa_sink_get_state(d)))
+ continue;
+
+ if (role_match(d->proplist, role))
+ if (pa_sink_input_move_to(si, d, FALSE) >= 0)
+ break;
}
}
@@ -325,6 +357,9 @@ static pa_hook_result_t source_unlink_hook_callback(pa_core *c, pa_source *sourc
if (so->direct_on_input)
continue;
+ if (!so->source)
+ continue;
+
if (!(role = pa_proplist_gets(so->proplist, PA_PROP_MEDIA_ROLE)))
continue;
@@ -339,6 +374,9 @@ static pa_hook_result_t source_unlink_hook_callback(pa_core *c, pa_source *sourc
if (d == def || d == source)
continue;
+ if (!PA_SOURCE_IS_LINKED(pa_source_get_state(d)))
+ continue;
+
if (role_match(d->proplist, role) && !source->monitor_of == !d->monitor_of) {
pa_source_output_move_to(so, d, FALSE);
break;
diff --git a/src/modules/module-ladspa-sink.c b/src/modules/module-ladspa-sink.c
index 21f4a8f1..f2d53d00 100644
--- a/src/modules/module-ladspa-sink.c
+++ b/src/modules/module-ladspa-sink.c
@@ -64,10 +64,9 @@ PA_MODULE_USAGE(
#define MEMBLOCKQ_MAXLENGTH (16*1024*1024)
struct userdata {
- pa_core *core;
pa_module *module;
- pa_sink *sink, *master;
+ pa_sink *sink;
pa_sink_input *sink_input;
const LADSPA_Descriptor *descriptor;
@@ -105,19 +104,26 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
switch (code) {
- case PA_SINK_MESSAGE_GET_LATENCY: {
- pa_usec_t usec = 0;
+ case PA_SINK_MESSAGE_GET_LATENCY:
- /* Get the latency of the master sink */
- if (PA_MSGOBJECT(u->master)->process_msg(PA_MSGOBJECT(u->master), PA_SINK_MESSAGE_GET_LATENCY, &usec, 0, NULL) < 0)
- usec = 0;
+ /* The sink is _put() before the sink input is, so let's
+ * make sure we don't access it in that time. Also, the
+ * sink input is first shut down, the sink second. */
+ if (!PA_SINK_IS_LINKED(u->sink->thread_info.state) ||
+ !PA_SINK_INPUT_IS_LINKED(u->sink_input->thread_info.state)) {
+ *((pa_usec_t*) data) = 0;
+ return 0;
+ }
+
+ *((pa_usec_t*) data) =
- /* Add the latency internal to our sink input on top */
- usec += pa_bytes_to_usec(pa_memblockq_get_length(u->sink_input->thread_info.render_memblockq), &u->master->sample_spec);
+ /* Get the latency of the master sink */
+ pa_sink_get_latency_within_thread(u->sink_input->sink) +
+
+ /* Add the latency internal to our sink input on top */
+ pa_bytes_to_usec(pa_memblockq_get_length(u->sink_input->thread_info.render_memblockq), &u->sink_input->sink->sample_spec);
- *((pa_usec_t*) data) = usec;
return 0;
- }
}
return pa_sink_process_msg(o, code, data, offset, chunk);
@@ -130,12 +136,11 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state) {
pa_sink_assert_ref(s);
pa_assert_se(u = s->userdata);
- if (PA_SINK_IS_LINKED(state) &&
- u->sink_input &&
- PA_SINK_INPUT_IS_LINKED(pa_sink_input_get_state(u->sink_input)))
-
- pa_sink_input_cork(u->sink_input, state == PA_SINK_SUSPENDED);
+ if (!PA_SINK_IS_LINKED(state) ||
+ !PA_SINK_INPUT_IS_LINKED(pa_sink_input_get_state(u->sink_input)))
+ return 0;
+ pa_sink_input_cork(u->sink_input, state == PA_SINK_SUSPENDED);
return 0;
}
@@ -146,6 +151,10 @@ static void sink_request_rewind(pa_sink *s) {
pa_sink_assert_ref(s);
pa_assert_se(u = s->userdata);
+ if (!PA_SINK_IS_LINKED(u->sink->thread_info.state) ||
+ !PA_SINK_INPUT_IS_LINKED(u->sink_input->thread_info.state))
+ return;
+
/* Just hand this one over to the master sink */
pa_sink_input_request_rewind(u->sink_input, s->thread_info.rewind_nbytes + pa_memblockq_get_length(u->memblockq), TRUE, FALSE, FALSE);
}
@@ -157,6 +166,10 @@ static void sink_update_requested_latency(pa_sink *s) {
pa_sink_assert_ref(s);
pa_assert_se(u = s->userdata);
+ if (!PA_SINK_IS_LINKED(u->sink->thread_info.state) ||
+ !PA_SINK_INPUT_IS_LINKED(u->sink_input->thread_info.state))
+ return;
+
/* Just hand this one over to the master sink */
pa_sink_input_set_requested_latency_within_thread(
u->sink_input,
@@ -175,8 +188,8 @@ static int sink_input_pop_cb(pa_sink_input *i, size_t nbytes, pa_memchunk *chunk
pa_assert(chunk);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_OPENED(u->sink->thread_info.state))
- return -1;
+ /* Hmm, process any rewind request that might be queued up */
+ pa_sink_process_rewind(u->sink, 0);
while (pa_memblockq_peek(u->memblockq, &tchunk) < 0) {
pa_memchunk nchunk;
@@ -225,9 +238,6 @@ static void sink_input_process_rewind_cb(pa_sink_input *i, size_t nbytes) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_OPENED(u->sink->thread_info.state))
- return;
-
if (u->sink->thread_info.rewind_nbytes > 0) {
size_t max_rewrite;
@@ -263,9 +273,6 @@ static void sink_input_update_max_rewind_cb(pa_sink_input *i, size_t nbytes) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
-
pa_memblockq_set_maxrewind(u->memblockq, nbytes);
pa_sink_set_max_rewind_within_thread(u->sink, nbytes);
}
@@ -277,9 +284,6 @@ static void sink_input_update_max_request_cb(pa_sink_input *i, size_t nbytes) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
-
pa_sink_set_max_request_within_thread(u->sink, nbytes);
}
@@ -290,24 +294,28 @@ static void sink_input_update_sink_latency_range_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
-
pa_sink_set_latency_range_within_thread(u->sink, i->sink->thread_info.min_latency, i->sink->thread_info.max_latency);
}
/* Called from I/O thread context */
-static void sink_input_detach_cb(pa_sink_input *i) {
+static void sink_input_update_sink_fixed_latency_cb(pa_sink_input *i) {
struct userdata *u;
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
+ pa_sink_set_fixed_latency_within_thread(u->sink, i->sink->thread_info.fixed_latency);
+}
+
+/* Called from I/O thread context */
+static void sink_input_detach_cb(pa_sink_input *i) {
+ struct userdata *u;
+
+ pa_sink_input_assert_ref(i);
+ pa_assert_se(u = i->userdata);
pa_sink_detach_within_thread(u->sink);
- pa_sink_set_asyncmsgq(u->sink, NULL);
+
pa_sink_set_rtpoll(u->sink, NULL);
}
@@ -318,14 +326,13 @@ static void sink_input_attach_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
+ pa_sink_set_rtpoll(u->sink, i->sink->thread_info.rtpoll);
+ pa_sink_set_latency_range_within_thread(u->sink, i->sink->thread_info.min_latency, i->sink->thread_info.max_latency);
+ pa_sink_set_fixed_latency_within_thread(u->sink, i->sink->thread_info.fixed_latency);
+ pa_sink_set_max_request_within_thread(u->sink, pa_sink_input_get_max_request(i));
+ pa_sink_set_max_rewind_within_thread(u->sink, pa_sink_input_get_max_rewind(i));
- pa_sink_set_asyncmsgq(u->sink, i->sink->asyncmsgq);
- pa_sink_set_rtpoll(u->sink, i->sink->rtpoll);
pa_sink_attach_within_thread(u->sink);
-
- pa_sink_set_latency_range_within_thread(u->sink, u->master->thread_info.min_latency, u->master->thread_info.max_latency);
}
/* Called from main context */
@@ -335,14 +342,18 @@ static void sink_input_kill_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- pa_sink_unlink(u->sink);
+ /* The order here matters! We first kill the sink input, followed
+ * by the sink. That means the sink callbacks must be protected
+ * against an unconnected sink input! */
pa_sink_input_unlink(u->sink_input);
+ pa_sink_unlink(u->sink);
- pa_sink_unref(u->sink);
- u->sink = NULL;
pa_sink_input_unref(u->sink_input);
u->sink_input = NULL;
+ pa_sink_unref(u->sink);
+ u->sink = NULL;
+
pa_module_unload_request(u->module, TRUE);
}
@@ -372,6 +383,17 @@ static pa_bool_t sink_input_may_move_to_cb(pa_sink_input *i, pa_sink *dest) {
return u->sink != dest;
}
+/* Called from main context */
+static void sink_input_moving_cb(pa_sink_input *i, pa_sink *dest) {
+ struct userdata *u;
+
+ pa_sink_input_assert_ref(i);
+ pa_assert_se(u = i->userdata);
+
+ pa_sink_set_asyncmsgq(u->sink, dest->asyncmsgq);
+ pa_sink_update_flags(u->sink, PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY, dest->flags);
+}
+
int pa__init(pa_module*m) {
struct userdata *u;
pa_sample_spec ss;
@@ -392,7 +414,7 @@ int pa__init(pa_module*m) {
pa_assert(m);
- pa_assert(sizeof(LADSPA_Data) == sizeof(float));
+ pa_assert_cc(sizeof(LADSPA_Data) == sizeof(float));
if (!(ma = pa_modargs_new(m->argument, valid_modargs))) {
pa_log("Failed to parse module arguments.");
@@ -425,12 +447,8 @@ int pa__init(pa_module*m) {
cdata = pa_modargs_get_value(ma, "control", NULL);
u = pa_xnew0(struct userdata, 1);
- u->core = m->core;
u->module = m;
m->userdata = u;
- u->master = master;
- u->sink = NULL;
- u->sink_input = NULL;
u->memblockq = pa_memblockq_new(0, MEMBLOCKQ_MAXLENGTH, 0, pa_frame_size(&ss), 1, 1, 0, NULL);
if (!(e = getenv("LADSPA_PATH")))
@@ -694,11 +712,10 @@ int pa__init(pa_module*m) {
sink_data.module = m;
if (!(sink_data.name = pa_xstrdup(pa_modargs_get_value(ma, "sink_name", NULL))))
sink_data.name = pa_sprintf_malloc("%s.ladspa", master->name);
- sink_data.namereg_fail = FALSE;
pa_sink_new_data_set_sample_spec(&sink_data, &ss);
pa_sink_new_data_set_channel_map(&sink_data, &map);
z = pa_proplist_gets(master->proplist, PA_PROP_DEVICE_DESCRIPTION);
- pa_proplist_setf(sink_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "LADSPA Plugin %s on %s", label, z ? z : master->name);
+ pa_proplist_setf(sink_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "LADSPA Plugin %s on %s", d->Name, z ? z : master->name);
pa_proplist_sets(sink_data.proplist, PA_PROP_DEVICE_MASTER_DEVICE, master->name);
pa_proplist_sets(sink_data.proplist, PA_PROP_DEVICE_CLASS, "filter");
pa_proplist_sets(sink_data.proplist, "device.ladspa.module", plugin);
@@ -714,7 +731,7 @@ int pa__init(pa_module*m) {
goto fail;
}
- u->sink = pa_sink_new(m->core, &sink_data, PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY);
+ u->sink = pa_sink_new(m->core, &sink_data, master->flags & (PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY));
pa_sink_new_data_done(&sink_data);
if (!u->sink) {
@@ -729,19 +746,18 @@ int pa__init(pa_module*m) {
u->sink->userdata = u;
pa_sink_set_asyncmsgq(u->sink, master->asyncmsgq);
- pa_sink_set_rtpoll(u->sink, master->rtpoll);
/* Create sink input */
pa_sink_input_new_data_init(&sink_input_data);
sink_input_data.driver = __FILE__;
sink_input_data.module = m;
- sink_input_data.sink = u->master;
+ sink_input_data.sink = master;
pa_proplist_sets(sink_input_data.proplist, PA_PROP_MEDIA_NAME, "LADSPA Stream");
pa_proplist_sets(sink_input_data.proplist, PA_PROP_MEDIA_ROLE, "filter");
pa_sink_input_new_data_set_sample_spec(&sink_input_data, &ss);
pa_sink_input_new_data_set_channel_map(&sink_input_data, &map);
- pa_sink_input_new(&u->sink_input, m->core, &sink_input_data, PA_SINK_INPUT_DONT_MOVE);
+ pa_sink_input_new(&u->sink_input, m->core, &sink_input_data, 0);
pa_sink_input_new_data_done(&sink_input_data);
if (!u->sink_input)
@@ -752,11 +768,13 @@ int pa__init(pa_module*m) {
u->sink_input->update_max_rewind = sink_input_update_max_rewind_cb;
u->sink_input->update_max_request = sink_input_update_max_request_cb;
u->sink_input->update_sink_latency_range = sink_input_update_sink_latency_range_cb;
+ u->sink_input->update_sink_fixed_latency = sink_input_update_sink_fixed_latency_cb;
u->sink_input->kill = sink_input_kill_cb;
u->sink_input->attach = sink_input_attach_cb;
u->sink_input->detach = sink_input_detach_cb;
u->sink_input->state_change = sink_input_state_change_cb;
u->sink_input->may_move_to = sink_input_may_move_to_cb;
+ u->sink_input->moving = sink_input_moving_cb;
u->sink_input->userdata = u;
pa_sink_put(u->sink);
@@ -797,15 +815,20 @@ void pa__done(pa_module*m) {
if (!(u = m->userdata))
return;
- if (u->sink) {
- pa_sink_unlink(u->sink);
- pa_sink_unref(u->sink);
- }
+ /* See comments in sink_input_kill_cb() above regarding
+ * destruction order! */
- if (u->sink_input) {
+ if (u->sink_input)
pa_sink_input_unlink(u->sink_input);
+
+ if (u->sink)
+ pa_sink_unlink(u->sink);
+
+ if (u->sink_input)
pa_sink_input_unref(u->sink_input);
- }
+
+ if (u->sink)
+ pa_sink_unref(u->sink);
for (c = 0; c < u->channels; c++)
if (u->handle[c]) {
diff --git a/src/modules/module-pipe-sink.c b/src/modules/module-pipe-sink.c
index 8a7dc846..9c169327 100644
--- a/src/modules/module-pipe-sink.c
+++ b/src/modules/module-pipe-sink.c
@@ -122,7 +122,7 @@ static int process_render(struct userdata *u) {
pa_assert(u);
if (u->memchunk.length <= 0)
- pa_sink_render(u->sink, PIPE_BUF, &u->memchunk);
+ pa_sink_render(u->sink, pa_pipe_buf(u->fd), &u->memchunk);
pa_assert(u->memchunk.length > 0);
@@ -299,8 +299,8 @@ int pa__init(pa_module*m) {
pa_sink_set_asyncmsgq(u->sink, u->thread_mq.inq);
pa_sink_set_rtpoll(u->sink, u->rtpoll);
- pa_sink_set_max_request(u->sink, PIPE_BUF);
- pa_sink_set_fixed_latency(u->sink, pa_bytes_to_usec(PIPE_BUF, &u->sink->sample_spec));
+ pa_sink_set_max_request(u->sink, pa_pipe_buf(u->fd));
+ pa_sink_set_fixed_latency(u->sink, pa_bytes_to_usec(pa_pipe_buf(u->fd), &u->sink->sample_spec));
u->rtpoll_item = pa_rtpoll_item_new(u->rtpoll, PA_RTPOLL_NEVER, 1);
pollfd = pa_rtpoll_item_get_pollfd(u->rtpoll_item, NULL);
diff --git a/src/modules/module-pipe-source.c b/src/modules/module-pipe-source.c
index e5609fb5..49104f8d 100644
--- a/src/modules/module-pipe-source.c
+++ b/src/modules/module-pipe-source.c
@@ -142,7 +142,7 @@ static void thread_func(void *userdata) {
void *p;
if (!u->memchunk.memblock) {
- u->memchunk.memblock = pa_memblock_new(u->core->mempool, PIPE_BUF);
+ u->memchunk.memblock = pa_memblock_new(u->core->mempool, pa_pipe_buf(u->fd));
u->memchunk.index = u->memchunk.length = 0;
}
diff --git a/src/modules/module-remap-sink.c b/src/modules/module-remap-sink.c
index 119f5b9f..0b4fdc9b 100644
--- a/src/modules/module-remap-sink.c
+++ b/src/modules/module-remap-sink.c
@@ -1,7 +1,7 @@
/***
This file is part of PulseAudio.
- Copyright 2004-2008 Lennart Poettering
+ Copyright 2004-2009 Lennart Poettering
PulseAudio is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published
@@ -48,16 +48,15 @@ PA_MODULE_USAGE(
"master= "
"master_channel_map= "
"format= "
- "channels= "
"rate= "
+ "channels= "
"channel_map= "
"remix=");
struct userdata {
- pa_core *core;
pa_module *module;
- pa_sink *sink, *master;
+ pa_sink *sink;
pa_sink_input *sink_input;
};
@@ -80,19 +79,24 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
switch (code) {
- case PA_SINK_MESSAGE_GET_LATENCY: {
- pa_usec_t usec = 0;
+ case PA_SINK_MESSAGE_GET_LATENCY:
- /* Get the latency of the master sink */
- if (PA_MSGOBJECT(u->master)->process_msg(PA_MSGOBJECT(u->master), PA_SINK_MESSAGE_GET_LATENCY, &usec, 0, NULL) < 0)
- usec = 0;
+ /* The sink is _put() before the sink input is, so let's
+ * make sure we don't access it yet */
+ if (!PA_SINK_IS_LINKED(u->sink->thread_info.state) ||
+ !PA_SINK_INPUT_IS_LINKED(u->sink_input->thread_info.state)) {
+ *((pa_usec_t*) data) = 0;
+ return 0;
+ }
- /* Add the latency internal to our sink input on top */
- usec += pa_bytes_to_usec(pa_memblockq_get_length(u->sink_input->thread_info.render_memblockq), &u->master->sample_spec);
+ *((pa_usec_t*) data) =
+ /* Get the latency of the master sink */
+ pa_sink_get_latency_within_thread(u->sink_input->sink) +
+
+ /* Add the latency internal to our sink input on top */
+ pa_bytes_to_usec(pa_memblockq_get_length(u->sink_input->thread_info.render_memblockq), &u->sink_input->sink->sample_spec);
- *((pa_usec_t*) data) = usec;
return 0;
- }
}
return pa_sink_process_msg(o, code, data, offset, chunk);
@@ -105,12 +109,11 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state) {
pa_sink_assert_ref(s);
pa_assert_se(u = s->userdata);
- if (PA_SINK_IS_LINKED(state) &&
- u->sink_input &&
- PA_SINK_INPUT_IS_LINKED(pa_sink_input_get_state(u->sink_input)))
-
- pa_sink_input_cork(u->sink_input, state == PA_SINK_SUSPENDED);
+ if (!PA_SINK_IS_LINKED(state) ||
+ !PA_SINK_INPUT_IS_LINKED(pa_sink_input_get_state(u->sink_input)))
+ return 0;
+ pa_sink_input_cork(u->sink_input, state == PA_SINK_SUSPENDED);
return 0;
}
@@ -121,6 +124,10 @@ static void sink_request_rewind(pa_sink *s) {
pa_sink_assert_ref(s);
pa_assert_se(u = s->userdata);
+ if (!PA_SINK_IS_LINKED(u->sink->thread_info.state) ||
+ !PA_SINK_INPUT_IS_LINKED(u->sink_input->thread_info.state))
+ return;
+
pa_sink_input_request_rewind(u->sink_input, s->thread_info.rewind_nbytes, TRUE, FALSE, FALSE);
}
@@ -131,6 +138,10 @@ static void sink_update_requested_latency(pa_sink *s) {
pa_sink_assert_ref(s);
pa_assert_se(u = s->userdata);
+ if (!PA_SINK_IS_LINKED(u->sink->thread_info.state) ||
+ !PA_SINK_INPUT_IS_LINKED(u->sink_input->thread_info.state))
+ return;
+
/* Just hand this one over to the master sink */
pa_sink_input_set_requested_latency_within_thread(
u->sink_input,
@@ -145,8 +156,8 @@ static int sink_input_pop_cb(pa_sink_input *i, size_t nbytes, pa_memchunk *chunk
pa_assert(chunk);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_OPENED(u->sink->thread_info.state))
- return -1;
+ /* Hmm, process any rewind request that might be queued up */
+ pa_sink_process_rewind(u->sink, 0);
pa_sink_render(u->sink, nbytes, chunk);
return 0;
@@ -160,9 +171,6 @@ static void sink_input_process_rewind_cb(pa_sink_input *i, size_t nbytes) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_OPENED(u->sink->thread_info.state))
- return;
-
if (u->sink->thread_info.rewind_nbytes > 0) {
amount = PA_MIN(u->sink->thread_info.rewind_nbytes, nbytes);
u->sink->thread_info.rewind_nbytes = 0;
@@ -178,9 +186,6 @@ static void sink_input_update_max_rewind_cb(pa_sink_input *i, size_t nbytes) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
-
pa_sink_set_max_rewind_within_thread(u->sink, nbytes);
}
@@ -191,9 +196,6 @@ static void sink_input_update_max_request_cb(pa_sink_input *i, size_t nbytes) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
-
pa_sink_set_max_request_within_thread(u->sink, nbytes);
}
@@ -204,24 +206,28 @@ static void sink_input_update_sink_latency_range_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
-
pa_sink_set_latency_range_within_thread(u->sink, i->sink->thread_info.min_latency, i->sink->thread_info.max_latency);
}
/* Called from I/O thread context */
-static void sink_input_detach_cb(pa_sink_input *i) {
+static void sink_input_update_sink_fixed_latency_cb(pa_sink_input *i) {
struct userdata *u;
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
+ pa_sink_set_fixed_latency_within_thread(u->sink, i->sink->thread_info.fixed_latency);
+}
+
+/* Called from I/O thread context */
+static void sink_input_detach_cb(pa_sink_input *i) {
+ struct userdata *u;
+
+ pa_sink_input_assert_ref(i);
+ pa_assert_se(u = i->userdata);
pa_sink_detach_within_thread(u->sink);
- pa_sink_set_asyncmsgq(u->sink, NULL);
+
pa_sink_set_rtpoll(u->sink, NULL);
}
@@ -232,14 +238,13 @@ static void sink_input_attach_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- if (!u->sink || !PA_SINK_IS_LINKED(u->sink->thread_info.state))
- return;
+ pa_sink_set_rtpoll(u->sink, i->sink->thread_info.rtpoll);
+ pa_sink_set_latency_range_within_thread(u->sink, i->sink->thread_info.min_latency, i->sink->thread_info.max_latency);
+ pa_sink_set_fixed_latency_within_thread(u->sink, i->sink->thread_info.fixed_latency);
+ pa_sink_set_max_request_within_thread(u->sink, pa_sink_input_get_max_request(i));
+ pa_sink_set_max_rewind_within_thread(u->sink, pa_sink_input_get_max_rewind(i));
- pa_sink_set_asyncmsgq(u->sink, i->sink->asyncmsgq);
- pa_sink_set_rtpoll(u->sink, i->sink->rtpoll);
pa_sink_attach_within_thread(u->sink);
-
- pa_sink_set_latency_range_within_thread(u->sink, u->master->thread_info.min_latency, u->master->thread_info.max_latency);
}
/* Called from main context */
@@ -249,14 +254,18 @@ static void sink_input_kill_cb(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
pa_assert_se(u = i->userdata);
- pa_sink_unlink(u->sink);
+ /* The order here matters! We first kill the sink input, followed
+ * by the sink. That means the sink callbacks must be protected
+ * against an unconnected sink input! */
pa_sink_input_unlink(u->sink_input);
+ pa_sink_unlink(u->sink);
- pa_sink_unref(u->sink);
- u->sink = NULL;
pa_sink_input_unref(u->sink_input);
u->sink_input = NULL;
+ pa_sink_unref(u->sink);
+ u->sink = NULL;
+
pa_module_unload_request(u->module, TRUE);
}
@@ -286,6 +295,17 @@ static pa_bool_t sink_input_may_move_to_cb(pa_sink_input *i, pa_sink *dest) {
return u->sink != dest;
}
+/* Called from main context */
+static void sink_input_moving_cb(pa_sink_input *i, pa_sink *dest) {
+ struct userdata *u;
+
+ pa_sink_input_assert_ref(i);
+ pa_assert_se(u = i->userdata);
+
+ pa_sink_set_asyncmsgq(u->sink, dest->asyncmsgq);
+ pa_sink_update_flags(u->sink, PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY, dest->flags);
+}
+
int pa__init(pa_module*m) {
struct userdata *u;
pa_sample_spec ss;
@@ -336,12 +356,8 @@ int pa__init(pa_module*m) {
}
u = pa_xnew0(struct userdata, 1);
- u->core = m->core;
u->module = m;
m->userdata = u;
- u->master = master;
- u->sink = NULL;
- u->sink_input = NULL;
/* Create sink */
pa_sink_new_data_init(&sink_data);
@@ -362,7 +378,7 @@ int pa__init(pa_module*m) {
goto fail;
}
- u->sink = pa_sink_new(m->core, &sink_data, PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY);
+ u->sink = pa_sink_new(m->core, &sink_data, master->flags & (PA_SINK_LATENCY|PA_SINK_DYNAMIC_LATENCY));
pa_sink_new_data_done(&sink_data);
if (!u->sink) {
@@ -377,19 +393,18 @@ int pa__init(pa_module*m) {
u->sink->userdata = u;
pa_sink_set_asyncmsgq(u->sink, master->asyncmsgq);
- pa_sink_set_rtpoll(u->sink, master->rtpoll);
/* Create sink input */
pa_sink_input_new_data_init(&sink_input_data);
sink_input_data.driver = __FILE__;
sink_input_data.module = m;
- sink_input_data.sink = u->master;
+ sink_input_data.sink = master;
pa_proplist_sets(sink_input_data.proplist, PA_PROP_MEDIA_NAME, "Remapped Stream");
pa_proplist_sets(sink_input_data.proplist, PA_PROP_MEDIA_ROLE, "filter");
pa_sink_input_new_data_set_sample_spec(&sink_input_data, &ss);
pa_sink_input_new_data_set_channel_map(&sink_input_data, &stream_map);
- pa_sink_input_new(&u->sink_input, m->core, &sink_input_data, PA_SINK_INPUT_DONT_MOVE | (remix ? 0 : PA_SINK_INPUT_NO_REMIX));
+ pa_sink_input_new(&u->sink_input, m->core, &sink_input_data, (remix ? 0 : PA_SINK_INPUT_NO_REMIX));
pa_sink_input_new_data_done(&sink_input_data);
if (!u->sink_input)
@@ -400,11 +415,13 @@ int pa__init(pa_module*m) {
u->sink_input->update_max_rewind = sink_input_update_max_rewind_cb;
u->sink_input->update_max_request = sink_input_update_max_request_cb;
u->sink_input->update_sink_latency_range = sink_input_update_sink_latency_range_cb;
+ u->sink_input->update_sink_fixed_latency = sink_input_update_sink_fixed_latency_cb;
u->sink_input->attach = sink_input_attach_cb;
u->sink_input->detach = sink_input_detach_cb;
u->sink_input->kill = sink_input_kill_cb;
u->sink_input->state_change = sink_input_state_change_cb;
u->sink_input->may_move_to = sink_input_may_move_to_cb;
+ u->sink_input->moving = sink_input_moving_cb;
u->sink_input->userdata = u;
pa_sink_put(u->sink);
@@ -440,15 +457,20 @@ void pa__done(pa_module*m) {
if (!(u = m->userdata))
return;
- if (u->sink) {
- pa_sink_unlink(u->sink);
- pa_sink_unref(u->sink);
- }
+ /* See comments in sink_input_kill_cb() above regarding
+ * destruction order! */
- if (u->sink_input) {
+ if (u->sink_input)
pa_sink_input_unlink(u->sink_input);
+
+ if (u->sink)
+ pa_sink_unlink(u->sink);
+
+ if (u->sink_input)
pa_sink_input_unref(u->sink_input);
- }
+
+ if (u->sink)
+ pa_sink_unref(u->sink);
pa_xfree(u);
}
diff --git a/src/modules/module-rescue-streams.c b/src/modules/module-rescue-streams.c
index c23feceb..722d84b2 100644
--- a/src/modules/module-rescue-streams.c
+++ b/src/modules/module-rescue-streams.c
@@ -45,13 +45,46 @@ static const char* const valid_modargs[] = {
};
struct userdata {
- pa_hook_slot *sink_slot, *source_slot;
+ pa_hook_slot
+ *sink_unlink_slot,
+ *source_unlink_slot,
+ *sink_input_move_fail_slot,
+ *source_output_move_fail_slot;
};
-static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* userdata) {
+static pa_sink* find_evacuation_sink(pa_core *c, pa_sink_input *i, pa_sink *skip) {
+ pa_sink *target, *def;
+ uint32_t idx;
+
+ pa_assert(c);
+ pa_assert(i);
+
+ def = pa_namereg_get_default_sink(c);
+
+ if (def && def != skip && pa_sink_input_may_move_to(i, def))
+ return def;
+
+ PA_IDXSET_FOREACH(target, c->sinks, idx) {
+ if (target == def)
+ continue;
+
+ if (target == skip)
+ continue;
+
+ if (!PA_SINK_IS_LINKED(pa_sink_get_state(target)))
+ continue;
+
+ if (pa_sink_input_may_move_to(i, target))
+ return target;
+ }
+
+ pa_log_debug("No evacuation sink found.");
+ return NULL;
+}
+
+static pa_hook_result_t sink_unlink_hook_callback(pa_core *c, pa_sink *sink, void* userdata) {
pa_sink_input *i;
uint32_t idx;
- pa_sink *target;
pa_assert(c);
pa_assert(sink);
@@ -65,21 +98,12 @@ static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* user
return PA_HOOK_OK;
}
- if (!(target = pa_namereg_get_default_sink(c)) || target == sink) {
-
- PA_IDXSET_FOREACH(target, c->sinks, idx)
- if (target != sink)
- break;
-
- if (!target) {
- pa_log_debug("No evacuation sink found.");
- return PA_HOOK_OK;
- }
- }
+ PA_IDXSET_FOREACH(i, sink->inputs, idx) {
+ pa_sink *target;
- pa_assert(target != sink);
+ if (!(target = find_evacuation_sink(c, i, sink)))
+ continue;
- PA_IDXSET_FOREACH(i, sink->inputs, idx) {
if (pa_sink_input_move_to(i, target, FALSE) < 0)
pa_log_info("Failed to move sink input %u \"%s\" to %s.", i->index,
pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
@@ -91,9 +115,66 @@ static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* user
return PA_HOOK_OK;
}
-static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void* userdata) {
+static pa_hook_result_t sink_input_move_fail_hook_callback(pa_core *c, pa_sink_input *i, void *userdata) {
+ pa_sink *target;
+
+ pa_assert(c);
+ pa_assert(i);
+
+ /* There's no point in doing anything if the core is shut down anyway */
+ if (c->state == PA_CORE_SHUTDOWN)
+ return PA_HOOK_OK;
+
+ if (!(target = find_evacuation_sink(c, i, NULL)))
+ return PA_HOOK_OK;
+
+ if (pa_sink_input_finish_move(i, target, FALSE) < 0) {
+ pa_log_info("Failed to move sink input %u \"%s\" to %s.", i->index,
+ pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ return PA_HOOK_OK;
+
+ } else {
+ pa_log_info("Sucessfully moved sink input %u \"%s\" to %s.", i->index,
+ pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ return PA_HOOK_STOP;
+ }
+}
+
+static pa_source* find_evacuation_source(pa_core *c, pa_source_output *o, pa_source *skip) {
+ pa_source *target, *def;
+ uint32_t idx;
+
+ pa_assert(c);
+ pa_assert(o);
+
+ def = pa_namereg_get_default_source(c);
+
+ if (def && def != skip && pa_source_output_may_move_to(o, def))
+ return def;
+
+ PA_IDXSET_FOREACH(target, c->sources, idx) {
+ if (target == def)
+ continue;
+
+ if (target == skip)
+ continue;
+
+ if (!target->monitor_of != !skip->monitor_of)
+ continue;
+
+ if (!PA_SOURCE_IS_LINKED(pa_source_get_state(target)))
+ continue;
+
+ if (pa_source_output_may_move_to(o, target))
+ return target;
+ }
+
+ pa_log_debug("No evacuation source found.");
+ return NULL;
+}
+
+static pa_hook_result_t source_unlink_hook_callback(pa_core *c, pa_source *source, void* userdata) {
pa_source_output *o;
- pa_source *target;
uint32_t idx;
pa_assert(c);
@@ -108,21 +189,12 @@ static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void
return PA_HOOK_OK;
}
- if (!(target = pa_namereg_get_default_source(c)) || target == source) {
-
- PA_IDXSET_FOREACH(target, c->sources, idx)
- if (target != source && !target->monitor_of == !source->monitor_of)
- break;
-
- if (!target) {
- pa_log_info("No evacuation source found.");
- return PA_HOOK_OK;
- }
- }
+ PA_IDXSET_FOREACH(o, source->outputs, idx) {
+ pa_source *target;
- pa_assert(target != source);
+ if (!(target = find_evacuation_source(c, o, source)))
+ continue;
- PA_IDXSET_FOREACH(o, source->outputs, idx) {
if (pa_source_output_move_to(o, target, FALSE) < 0)
pa_log_info("Failed to move source output %u \"%s\" to %s.", o->index,
pa_strnull(pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME)), target->name);
@@ -134,6 +206,31 @@ static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void
return PA_HOOK_OK;
}
+static pa_hook_result_t source_output_move_fail_hook_callback(pa_core *c, pa_source_output *i, void *userdata) {
+ pa_source *target;
+
+ pa_assert(c);
+ pa_assert(i);
+
+ /* There's no point in doing anything if the core is shut down anyway */
+ if (c->state == PA_CORE_SHUTDOWN)
+ return PA_HOOK_OK;
+
+ if (!(target = find_evacuation_source(c, i, NULL)))
+ return PA_HOOK_OK;
+
+ if (pa_source_output_finish_move(i, target, FALSE) < 0) {
+ pa_log_info("Failed to move source input %u \"%s\" to %s.", i->index,
+ pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ return PA_HOOK_OK;
+
+ } else {
+ pa_log_info("Sucessfully moved source input %u \"%s\" to %s.", i->index,
+ pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ return PA_HOOK_STOP;
+ }
+}
+
int pa__init(pa_module*m) {
pa_modargs *ma;
struct userdata *u;
@@ -148,8 +245,11 @@ int pa__init(pa_module*m) {
m->userdata = u = pa_xnew(struct userdata, 1);
/* A little bit later than module-stream-restore, module-intended-roles... */
- u->sink_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SINK_UNLINK], PA_HOOK_LATE+20, (pa_hook_cb_t) sink_hook_callback, u);
- u->source_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SOURCE_UNLINK], PA_HOOK_LATE+20, (pa_hook_cb_t) source_hook_callback, u);
+ u->sink_unlink_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SINK_UNLINK], PA_HOOK_LATE+20, (pa_hook_cb_t) sink_unlink_hook_callback, u);
+ u->source_unlink_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SOURCE_UNLINK], PA_HOOK_LATE+20, (pa_hook_cb_t) source_unlink_hook_callback, u);
+
+ u->sink_input_move_fail_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SINK_INPUT_MOVE_FAIL], PA_HOOK_LATE+20, (pa_hook_cb_t) sink_input_move_fail_hook_callback, u);
+ u->source_output_move_fail_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_FAIL], PA_HOOK_LATE+20, (pa_hook_cb_t) source_output_move_fail_hook_callback, u);
pa_modargs_free(ma);
return 0;
@@ -163,10 +263,15 @@ void pa__done(pa_module*m) {
if (!(u = m->userdata))
return;
- if (u->sink_slot)
- pa_hook_slot_free(u->sink_slot);
- if (u->source_slot)
- pa_hook_slot_free(u->source_slot);
+ if (u->sink_unlink_slot)
+ pa_hook_slot_free(u->sink_unlink_slot);
+ if (u->source_unlink_slot)
+ pa_hook_slot_free(u->source_unlink_slot);
+
+ if (u->sink_input_move_fail_slot)
+ pa_hook_slot_free(u->sink_input_move_fail_slot);
+ if (u->source_output_move_fail_slot)
+ pa_hook_slot_free(u->source_output_move_fail_slot);
pa_xfree(u);
}
diff --git a/src/modules/module-stream-restore.c b/src/modules/module-stream-restore.c
index e9063031..076b3918 100644
--- a/src/modules/module-stream-restore.c
+++ b/src/modules/module-stream-restore.c
@@ -114,15 +114,16 @@ struct userdata {
#endif
};
-#define ENTRY_VERSION 2
+#define ENTRY_VERSION 3
struct entry {
uint8_t version;
- pa_bool_t muted_valid:1, volume_valid:1, device_valid:1;
+ pa_bool_t muted_valid:1, volume_valid:1, device_valid:1, card_valid:1;
pa_bool_t muted:1;
pa_channel_map channel_map;
pa_cvolume volume;
char device[PA_NAME_MAX];
+ char card[PA_NAME_MAX];
} PA_GCC_PACKED;
enum {
@@ -1083,11 +1084,21 @@ static struct entry *read_entry(struct userdata *u, const char *name) {
goto fail;
}
+ if (!memchr(e->card, 0, sizeof(e->card))) {
+ pa_log_warn("Database contains entry for stream %s with missing NUL byte in card name", name);
+ goto fail;
+ }
+
if (e->device_valid && !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)) {
+ pa_log_warn("Invalid card name stored in database for stream %s", name);
+ goto fail;
+ }
+
if (e->volume_valid && !pa_channel_map_valid(&e->channel_map)) {
pa_log_warn("Invalid channel map stored in database for stream %s", name);
goto fail;
@@ -1139,6 +1150,10 @@ static pa_bool_t entries_equal(const struct entry *a, const struct entry *b) {
(a->device_valid && strncmp(a->device, b->device, sizeof(a->device))))
return FALSE;
+ if (a->card_valid != b->card_valid ||
+ (a->card_valid && strncmp(a->card, b->card, sizeof(a->card))))
+ return FALSE;
+
if (a->muted_valid != b->muted_valid ||
(a->muted_valid && (a->muted != b->muted)))
return FALSE;
@@ -1217,6 +1232,10 @@ static void subscribe_callback(pa_core *c, pa_subscription_event_type_t t, uint3
entry.device_valid = TRUE;
device_updated = !created_new_entry && (!old->device_valid || !pa_streq(entry.device, old->device));
+ if (sink_input->sink->card) {
+ pa_strlcpy(entry.card, sink_input->sink->card->name, sizeof(entry.card));
+ entry.card_valid = TRUE;
+ }
}
} else {
@@ -1240,6 +1259,11 @@ static void subscribe_callback(pa_core *c, pa_subscription_event_type_t t, uint3
entry.device_valid = source_output->save_source;
device_updated = !created_new_entry && (!old->device_valid || !pa_streq(entry.device, old->device));
+
+ if (source_output->source->card) {
+ pa_strlcpy(entry.card, source_output->source->card->name, sizeof(entry.card));
+ entry.card_valid = TRUE;
+ }
}
}
@@ -1298,19 +1322,28 @@ static pa_hook_result_t sink_input_new_hook_callback(pa_core *c, pa_sink_input_n
if (!(name = get_name(new_data->proplist, "sink-input")))
return PA_HOOK_OK;
- if ((e = read_entry(u, name))) {
+ if (new_data->sink)
+ pa_log_debug("Not restoring device for stream %s, because already set.", name);
+ else if ((e = read_entry(u, name))) {
+ pa_sink *s = NULL;
- if (e->device_valid) {
- pa_sink *s;
+ if (e->device_valid)
+ s = pa_namereg_get(c, e->device, PA_NAMEREG_SINK);
- if ((s = pa_namereg_get(c, e->device, PA_NAMEREG_SINK))) {
- if (!new_data->sink) {
- pa_log_info("Restoring device for stream %s.", name);
- new_data->sink = s;
- new_data->save_sink = TRUE;
- } else
- pa_log_debug("Not restoring device for stream %s, because already set.", name);
- }
+ if (!s && e->card_valid) {
+ pa_card *card;
+
+ if ((card = pa_namereg_get(c, e->card, PA_NAMEREG_CARD)))
+ s = pa_idxset_first(card->sinks, NULL);
+ }
+
+ /* It might happen that a stream and a sink are set up at the
+ same time, in which case we want to make sure we don't
+ interfere with that */
+ if (s && PA_SINK_IS_LINKED(pa_sink_get_state(s))) {
+ pa_log_info("Restoring device for stream %s.", name);
+ new_data->sink = s;
+ new_data->save_sink = TRUE;
}
pa_xfree(e);
@@ -1385,18 +1418,28 @@ static pa_hook_result_t source_output_new_hook_callback(pa_core *c, pa_source_ou
if (!(name = get_name(new_data->proplist, "source-output")))
return PA_HOOK_OK;
- if ((e = read_entry(u, name))) {
- pa_source *s;
+ if (new_data->source)
+ pa_log_debug("Not restoring device for stream %s, because already set", name);
+ else if ((e = read_entry(u, name))) {
+ pa_source *s = NULL;
- if (e->device_valid) {
- if ((s = pa_namereg_get(c, e->device, PA_NAMEREG_SOURCE))) {
- if (!new_data->source) {
- pa_log_info("Restoring device for stream %s.", name);
- new_data->source = s;
- new_data->save_source = TRUE;
- } else
- pa_log_debug("Not restoring device for stream %s, because already set", name);
- }
+ if (e->device_valid)
+ s = pa_namereg_get(c, e->device, PA_NAMEREG_SOURCE);
+
+ if (!s && e->card_valid) {
+ pa_card *card;
+
+ if ((card = pa_namereg_get(c, e->card, PA_NAMEREG_CARD)))
+ s = pa_idxset_first(card->sources, NULL);
+ }
+
+ /* It might happen that a stream and a sink are set up at the
+ same time, in which case we want to make sure we don't
+ interfere with that */
+ if (s && PA_SOURCE_IS_LINKED(pa_source_get_state(s))) {
+ pa_log_info("Restoring device for stream %s.", name);
+ new_data->source = s;
+ new_data->save_source = TRUE;
}
pa_xfree(e);
@@ -1426,6 +1469,17 @@ static pa_hook_result_t sink_put_hook_callback(pa_core *c, pa_sink *sink, struct
if (si->save_sink)
continue;
+ /* Skip this if it is already in the process of being moved
+ * anyway */
+ if (!si->sink)
+ continue;
+
+ /* It might happen that a stream and a sink are set up at the
+ same time, in which case we want to make sure we don't
+ interfere with that */
+ if (!PA_SINK_INPUT_IS_LINKED(pa_sink_input_get_state(si)))
+ continue;
+
if (!(name = get_name(si->proplist, "sink-input")))
continue;
@@ -1464,6 +1518,16 @@ static pa_hook_result_t source_put_hook_callback(pa_core *c, pa_source *source,
if (so->direct_on_input)
continue;
+ /* Skip this if it is already in the process of being moved anyway */
+ if (!so->source)
+ continue;
+
+ /* It might happen that a stream and a sink are set up at the
+ same time, in which case we want to make sure we don't
+ interfere with that */
+ if (!PA_SOURCE_OUTPUT_IS_LINKED(pa_source_output_get_state(so)))
+ continue;
+
if (!(name = get_name(so->proplist, "source-input")))
continue;
@@ -1497,6 +1561,9 @@ static pa_hook_result_t sink_unlink_hook_callback(pa_core *c, pa_sink *sink, str
char *name;
struct entry *e;
+ if (!si->sink)
+ continue;
+
if (!(name = get_name(si->proplist, "sink-input")))
continue;
@@ -1505,7 +1572,9 @@ static pa_hook_result_t sink_unlink_hook_callback(pa_core *c, pa_sink *sink, str
if (e->device_valid) {
pa_sink *d;
- if ((d = pa_namereg_get(c, e->device, PA_NAMEREG_SINK)) && d != sink)
+ if ((d = pa_namereg_get(c, e->device, PA_NAMEREG_SINK)) &&
+ d != sink &&
+ PA_SINK_IS_LINKED(pa_sink_get_state(d)))
pa_sink_input_move_to(si, d, TRUE);
}
@@ -1535,6 +1604,12 @@ static pa_hook_result_t source_unlink_hook_callback(pa_core *c, pa_source *sourc
char *name;
struct entry *e;
+ if (so->direct_on_input)
+ continue;
+
+ if (!so->source)
+ continue;
+
if (!(name = get_name(so->proplist, "source-output")))
continue;
@@ -1543,7 +1618,9 @@ static pa_hook_result_t source_unlink_hook_callback(pa_core *c, pa_source *sourc
if (e->device_valid) {
pa_source *d;
- if ((d = pa_namereg_get(c, e->device, PA_NAMEREG_SOURCE)) && d != source)
+ if ((d = pa_namereg_get(c, e->device, PA_NAMEREG_SOURCE)) &&
+ d != source &&
+ PA_SOURCE_IS_LINKED(pa_source_get_state(d)))
pa_source_output_move_to(so, d, TRUE);
}
@@ -1567,7 +1644,7 @@ static void apply_entry(struct userdata *u, const char *name, struct entry *e) {
pa_assert(name);
pa_assert(e);
- for (si = pa_idxset_first(u->core->sink_inputs, &idx); si; si = pa_idxset_next(u->core->sink_inputs, &idx)) {
+ PA_IDXSET_FOREACH(si, u->core->sink_inputs, idx) {
char *n;
pa_sink *s;
@@ -1585,12 +1662,13 @@ static void apply_entry(struct userdata *u, const char *name, struct entry *e) {
v = e->volume;
pa_log_info("Restoring volume for sink input %s.", name);
- pa_sink_input_set_volume(si, pa_cvolume_remap(&v, &e->channel_map, &si->channel_map), FALSE, FALSE);
+ pa_cvolume_remap(&v, &e->channel_map, &si->channel_map);
+ pa_sink_input_set_volume(si, &v, TRUE, FALSE);
}
if (u->restore_muted && e->muted_valid) {
pa_log_info("Restoring mute state for sink input %s.", name);
- pa_sink_input_set_mute(si, e->muted, FALSE);
+ pa_sink_input_set_mute(si, e->muted, TRUE);
}
if (u->restore_device &&
@@ -1598,11 +1676,11 @@ static void apply_entry(struct userdata *u, const char *name, struct entry *e) {
(s = pa_namereg_get(u->core, e->device, PA_NAMEREG_SINK))) {
pa_log_info("Restoring device for stream %s.", name);
- pa_sink_input_move_to(si, s, FALSE);
+ pa_sink_input_move_to(si, s, TRUE);
}
}
- for (so = pa_idxset_first(u->core->source_outputs, &idx); so; so = pa_idxset_next(u->core->source_outputs, &idx)) {
+ PA_IDXSET_FOREACH(so, u->core->source_outputs, idx) {
char *n;
pa_source *s;
@@ -1620,7 +1698,7 @@ static void apply_entry(struct userdata *u, const char *name, struct entry *e) {
(s = pa_namereg_get(u->core, e->device, PA_NAMEREG_SOURCE))) {
pa_log_info("Restoring device for stream %s.", name);
- pa_source_output_move_to(so, s, FALSE);
+ pa_source_output_move_to(so, s, TRUE);
}
}
}
diff --git a/src/modules/module-tunnel.c b/src/modules/module-tunnel.c
index d1153829..eaccea4e 100644
--- a/src/modules/module-tunnel.c
+++ b/src/modules/module-tunnel.c
@@ -55,6 +55,7 @@
#include
#include
#include
+#include
#ifdef TUNNEL_SINK
#include "module-tunnel-sink-symdef.h"
@@ -194,6 +195,7 @@ struct userdata {
#else
char *source_name;
pa_source *source;
+ pa_mcalign *mcalign;
#endif
pa_auth_cookie *auth_cookie;
@@ -614,14 +616,23 @@ static int source_process_msg(pa_msgobject *o, int code, void *data, int64_t off
return 0;
}
- case SOURCE_MESSAGE_POST:
+ case SOURCE_MESSAGE_POST: {
+ pa_memchunk c;
- if (PA_SOURCE_IS_OPENED(u->source->thread_info.state))
- pa_source_post(u->source, chunk);
+ pa_mcalign_push(u->mcalign, chunk);
- u->counter += (int64_t) chunk->length;
+ while (pa_mcalign_pop(u->mcalign, &c) >= 0) {
+
+ if (PA_SOURCE_IS_OPENED(u->source->thread_info.state))
+ pa_source_post(u->source, &c);
+
+ pa_memblock_unref(c.memblock);
+
+ u->counter += (int64_t) c.length;
+ }
return 0;
+ }
case SOURCE_MESSAGE_REMOTE_SUSPEND:
@@ -1154,10 +1165,10 @@ static void sink_input_info_cb(pa_pdispatch *pd, uint32_t command, uint32_t tag
pa_cvolume_equal(&volume, &u->sink->virtual_volume))
return;
- pa_sink_volume_changed(u->sink, &volume, FALSE);
+ pa_sink_volume_changed(u->sink, &volume);
if (u->version >= 11)
- pa_sink_mute_changed(u->sink, mute, FALSE);
+ pa_sink_mute_changed(u->sink, mute);
return;
@@ -1937,6 +1948,8 @@ int pa__init(pa_module*m) {
pa_source_set_asyncmsgq(u->source, u->thread_mq.inq);
pa_source_set_rtpoll(u->source, u->rtpoll);
+
+ u->mcalign = pa_mcalign_new(pa_frame_size(&u->source->sample_spec));
#endif
pa_xfree(dn);
@@ -2030,6 +2043,11 @@ void pa__done(pa_module*m) {
if (u->time_event)
u->core->mainloop->time_free(u->time_event);
+#ifndef TUNNEL_SINK
+ if (u->mcalign)
+ pa_mcalign_free(u->mcalign);
+#endif
+
#ifdef TUNNEL_SINK
pa_xfree(u->sink_name);
#else
diff --git a/src/modules/module-udev-detect.c b/src/modules/module-udev-detect.c
index 1ad6fa2d..11de1ccb 100644
--- a/src/modules/module-udev-detect.c
+++ b/src/modules/module-udev-detect.c
@@ -65,6 +65,8 @@ static const char* const valid_modargs[] = {
NULL
};
+static int setup_inotify(struct userdata *u);
+
static void device_free(struct device *d) {
pa_assert(d);
@@ -117,6 +119,9 @@ static void card_changed(struct userdata *u, struct udev_device *dev) {
pa_assert(u);
pa_assert(dev);
+ /* Maybe /dev/snd is now available? */
+ setup_inotify(u);
+
path = udev_device_get_devpath(dev);
if ((d = pa_hashmap_get(u->devices, path))) {
@@ -262,7 +267,7 @@ static void inotify_cb(
} buf;
struct userdata *u = userdata;
static int type = 0;
- pa_bool_t verify = FALSE;
+ pa_bool_t verify = FALSE, deleted = FALSE;
for (;;) {
ssize_t r;
@@ -279,6 +284,9 @@ static void inotify_cb(
if ((buf.e.mask & IN_CLOSE_WRITE) && pa_startswith(buf.e.name, "pcmC"))
verify = TRUE;
+
+ if ((buf.e.mask & (IN_DELETE_SELF|IN_MOVE_SELF)))
+ deleted = TRUE;
}
if (verify) {
@@ -291,11 +299,14 @@ static void inotify_cb(
verify_access(u, d);
}
- return;
+ if (!deleted)
+ return;
fail:
- a->io_free(u->inotify_io);
- u->inotify_io = NULL;
+ if (u->inotify_io) {
+ a->io_free(u->inotify_io);
+ u->inotify_io = NULL;
+ }
if (u->inotify_fd >= 0) {
pa_close(u->inotify_fd);
@@ -307,17 +318,38 @@ static int setup_inotify(struct userdata *u) {
char *dev_snd;
int r;
+ if (u->inotify_fd >= 0)
+ return 0;
+
if ((u->inotify_fd = inotify_init1(IN_CLOEXEC|IN_NONBLOCK)) < 0) {
pa_log("inotify_init1() failed: %s", pa_cstrerror(errno));
return -1;
}
dev_snd = pa_sprintf_malloc("%s/snd", udev_get_dev_path(u->udev));
- r = inotify_add_watch(u->inotify_fd, dev_snd, IN_CLOSE_WRITE);
+ r = inotify_add_watch(u->inotify_fd, dev_snd, IN_CLOSE_WRITE|IN_DELETE_SELF|IN_MOVE_SELF);
pa_xfree(dev_snd);
if (r < 0) {
- pa_log("inotify_add_watch() failed: %s", pa_cstrerror(errno));
+ int saved_errno = errno;
+
+ pa_close(u->inotify_fd);
+ u->inotify_fd = -1;
+
+ if (saved_errno == ENOENT) {
+ pa_log_debug("/dev/snd/ is apparently not existing yet, retrying to create inotify watch later.");
+ return 0;
+ }
+
+ if (saved_errno == ENOSPC) {
+ pa_log("You apparently ran out of inotify watches, probably because Tracker/Beagle took them all away. "
+ "I wished people would do their homework first and fix inotify before using it for watching whole "
+ "directory trees which is something the current inotify is certainly not useful for. "
+ "Please make sure to drop the Tracker/Beagle guys a line complaining about their broken use of inotify.");
+ return 0;
+ }
+
+ pa_log("inotify_add_watch() failed: %s", pa_cstrerror(saved_errno));
return -1;
}
diff --git a/src/modules/module-volume-restore.c b/src/modules/module-volume-restore.c
index 91da598e..6e484eae 100644
--- a/src/modules/module-volume-restore.c
+++ b/src/modules/module-volume-restore.c
@@ -48,6 +48,7 @@ static const char* const valid_modargs[] = {
int pa__init(pa_module*m) {
pa_modargs *ma = NULL;
pa_bool_t restore_device = TRUE, restore_volume = TRUE;
+ pa_module *n;
char *t;
pa_assert(m);
@@ -66,13 +67,15 @@ int pa__init(pa_module*m) {
pa_log_warn("We will now load module-stream-restore. Please make sure to remove module-volume-restore from your configuration.");
t = pa_sprintf_malloc("restore_volume=%s restore_device=%s", pa_yes_no(restore_volume), pa_yes_no(restore_device));
- pa_module_load(m->core, "module-stream-restore", t);
+ n = pa_module_load(m->core, "module-stream-restore", t);
pa_xfree(t);
- pa_module_unload_request(m, TRUE);
+ if (n)
+ pa_module_unload_request(m, TRUE);
pa_modargs_free(ma);
- return 0;
+
+ return n ? 0 : -1;
fail:
if (ma)
diff --git a/src/modules/reserve-monitor.c b/src/modules/reserve-monitor.c
index 64d2a7cc..13ecde2b 100644
--- a/src/modules/reserve-monitor.c
+++ b/src/modules/reserve-monitor.c
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
/***
Copyright 2009 Lennart Poettering
@@ -76,9 +78,17 @@ static DBusHandlerResult filter_handler(
goto invalid;
if (strcmp(name, m->service_name) == 0) {
-
m->busy = !!(new && *new);
+ /* If we ourselves own the device, then don't consider this 'busy' */
+ if (m->busy) {
+ const char *un;
+
+ if ((un = dbus_bus_get_unique_name(c)))
+ if (strcmp(new, un) == 0)
+ m->busy = FALSE;
+ }
+
if (m->change_cb) {
m->ref++;
m->change_cb(m);
diff --git a/src/modules/reserve-monitor.h b/src/modules/reserve-monitor.h
index 4f4a8332..421a52e0 100644
--- a/src/modules/reserve-monitor.h
+++ b/src/modules/reserve-monitor.h
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
#ifndef fooreservemonitorhfoo
#define fooreservemonitorhfoo
@@ -28,6 +30,10 @@
#include
#include
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct rm_monitor rm_monitor;
/* Prototype for a function that is called whenever the reservation
@@ -59,4 +65,8 @@ void rm_set_userdata(rm_monitor *m, void *userdata);
* userdata was set. */
void* rm_get_userdata(rm_monitor *m);
+#ifdef __cplusplus
+}
+#endif
+
#endif
diff --git a/src/modules/reserve-wrap.c b/src/modules/reserve-wrap.c
index 07b592d3..6086fc99 100644
--- a/src/modules/reserve-wrap.c
+++ b/src/modules/reserve-wrap.c
@@ -336,5 +336,9 @@ pa_bool_t pa_reserve_monitor_wrapper_busy(pa_reserve_monitor_wrapper *w) {
pa_assert(PA_REFCNT_VALUE(w) >= 1);
+#ifdef HAVE_DBUS
return rm_busy(w->monitor) > 0;
+#else
+ return FALSE;
+#endif
}
diff --git a/src/modules/reserve.c b/src/modules/reserve.c
index 09bc46cb..5597f177 100644
--- a/src/modules/reserve.c
+++ b/src/modules/reserve.c
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
/***
Copyright 2009 Lennart Poettering
diff --git a/src/modules/reserve.h b/src/modules/reserve.h
index 31071298..9ae49cf5 100644
--- a/src/modules/reserve.h
+++ b/src/modules/reserve.h
@@ -1,3 +1,5 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: t -*-*/
+
#ifndef fooreservehfoo
#define fooreservehfoo
@@ -28,6 +30,10 @@
#include
#include
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct rd_device rd_device;
/* Prototype for a function that is called whenever someone else wants
@@ -66,4 +72,8 @@ void rd_set_userdata(rd_device *d, void *userdata);
* userdata was set. */
void* rd_get_userdata(rd_device *d);
+#ifdef __cplusplus
+}
+#endif
+
#endif
diff --git a/src/modules/rtp/module-rtp-recv.c b/src/modules/rtp/module-rtp-recv.c
index 5caf8272..c195c045 100644
--- a/src/modules/rtp/module-rtp-recv.c
+++ b/src/modules/rtp/module-rtp-recv.c
@@ -361,7 +361,7 @@ static void sink_input_attach(pa_sink_input *i) {
pa_assert_se(s = i->userdata);
pa_assert(!s->rtpoll_item);
- s->rtpoll_item = pa_rtpoll_item_new(i->sink->rtpoll, PA_RTPOLL_LATE, 1);
+ s->rtpoll_item = pa_rtpoll_item_new(i->sink->thread_info.rtpoll, PA_RTPOLL_LATE, 1);
p = pa_rtpoll_item_get_pollfd(s->rtpoll_item, NULL);
p->fd = s->rtp_context.fd;
diff --git a/src/pulse/client-conf.c b/src/pulse/client-conf.c
index 8eab1094..62c06f6a 100644
--- a/src/pulse/client-conf.c
+++ b/src/pulse/client-conf.c
@@ -94,17 +94,18 @@ int pa_client_conf_load(pa_client_conf *c, const char *filename) {
/* Prepare the configuration parse table */
pa_config_item table[] = {
- { "daemon-binary", pa_config_parse_string, &c->daemon_binary, NULL },
- { "extra-arguments", pa_config_parse_string, &c->extra_arguments, NULL },
- { "default-sink", pa_config_parse_string, &c->default_sink, NULL },
- { "default-source", pa_config_parse_string, &c->default_source, NULL },
- { "default-server", pa_config_parse_string, &c->default_server, NULL },
- { "default-dbus-server", pa_config_parse_string, &c->default_dbus_server, NULL },
- { "autospawn", pa_config_parse_bool, &c->autospawn, NULL },
- { "cookie-file", pa_config_parse_string, &c->cookie_file, NULL },
- { "disable-shm", pa_config_parse_bool, &c->disable_shm, NULL },
- { "shm-size-bytes", pa_config_parse_size, &c->shm_size, NULL },
- { NULL, NULL, NULL, NULL },
+ { "daemon-binary", pa_config_parse_string, &c->daemon_binary, NULL },
+ { "extra-arguments", pa_config_parse_string, &c->extra_arguments, NULL },
+ { "default-sink", pa_config_parse_string, &c->default_sink, NULL },
+ { "default-source", pa_config_parse_string, &c->default_source, NULL },
+ { "default-server", pa_config_parse_string, &c->default_server, NULL },
+ { "default-dbus-server", pa_config_parse_string, &c->default_dbus_server, NULL },
+ { "autospawn", pa_config_parse_bool, &c->autospawn, NULL },
+ { "cookie-file", pa_config_parse_string, &c->cookie_file, NULL },
+ { "disable-shm", pa_config_parse_bool, &c->disable_shm, NULL },
+ { "enable-shm", pa_config_parse_not_bool, &c->disable_shm, NULL },
+ { "shm-size-bytes", pa_config_parse_size, &c->shm_size, NULL },
+ { NULL, NULL, NULL, NULL },
};
if (filename) {
diff --git a/src/pulse/client.conf.in b/src/pulse/client.conf.in
index 3340b0b2..e03096e0 100644
--- a/src/pulse/client.conf.in
+++ b/src/pulse/client.conf.in
@@ -30,5 +30,5 @@
; cookie-file =
-; disable-shm = no
+; enable-shm = yes
; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
diff --git a/src/pulse/context.c b/src/pulse/context.c
index 505e758a..894ab2e0 100644
--- a/src/pulse/context.c
+++ b/src/pulse/context.c
@@ -668,11 +668,24 @@ static pa_strlist *prepend_per_user(pa_strlist *l) {
static int context_autospawn(pa_context *c) {
pid_t pid;
int status, r;
-
- pa_log_debug("Trying to autospawn...");
+ struct sigaction sa;
pa_context_ref(c);
+ if (sigaction(SIGCHLD, NULL, &sa) < 0) {
+ pa_log_debug("sigaction() failed: %s", pa_cstrerror(errno));
+ pa_context_fail(c, PA_ERR_INTERNAL);
+ goto fail;
+ }
+
+ if ((sa.sa_flags & SA_NOCLDWAIT) || sa.sa_handler == SIG_IGN) {
+ pa_log_debug("Process disabled waitpid(), cannot autospawn.");
+ pa_context_fail(c, PA_ERR_CONNECTIONREFUSED);
+ goto fail;
+ }
+
+ pa_log_debug("Trying to autospawn...");
+
if (c->spawn_api.prefork)
c->spawn_api.prefork();
@@ -688,23 +701,23 @@ static int context_autospawn(pa_context *c) {
/* Child */
const char *state = NULL;
-#define MAX_ARGS 64
- const char * argv[MAX_ARGS+1];
- int n;
+ const char * argv[32];
+ unsigned n = 0;
if (c->spawn_api.atfork)
c->spawn_api.atfork();
+ /* We leave most of the cleaning up of the process environment
+ * to the executable. We only clean up the file descriptors to
+ * make sure the executable can actually be loaded
+ * correctly. */
pa_close_all(-1);
/* Setup argv */
-
- n = 0;
-
argv[n++] = c->conf->daemon_binary;
argv[n++] = "--start";
- while (n < MAX_ARGS) {
+ while (n < PA_ELEMENTSOF(argv)-1) {
char *a;
if (!(a = pa_split_spaces(c->conf->extra_arguments, &state)))
@@ -714,10 +727,10 @@ static int context_autospawn(pa_context *c) {
}
argv[n++] = NULL;
+ pa_assert(n <= PA_ELEMENTSOF(argv));
execv(argv[0], (char * const *) argv);
_exit(1);
-#undef MAX_ARGS
}
/* Parent */
@@ -730,9 +743,16 @@ static int context_autospawn(pa_context *c) {
} while (r < 0 && errno == EINTR);
if (r < 0) {
- pa_log(_("waitpid(): %s"), pa_cstrerror(errno));
- pa_context_fail(c, PA_ERR_INTERNAL);
- goto fail;
+
+ if (errno != ESRCH) {
+ pa_log(_("waitpid(): %s"), pa_cstrerror(errno));
+ pa_context_fail(c, PA_ERR_INTERNAL);
+ goto fail;
+ }
+
+ /* hmm, something already reaped our child, so we assume
+ * startup worked, even if we cannot know */
+
} else if (!WIFEXITED(status) || WEXITSTATUS(status) != 0) {
pa_context_fail(c, PA_ERR_CONNECTIONREFUSED);
goto fail;
@@ -761,22 +781,33 @@ static void track_pulseaudio_on_dbus(pa_context *c, DBusBusType type, pa_dbus_wr
pa_assert(conn);
dbus_error_init(&error);
+
if (!(*conn = pa_dbus_wrap_connection_new(c->mainloop, c->use_rtclock, type, &error)) || dbus_error_is_set(&error)) {
pa_log_warn("Unable to contact DBUS: %s: %s", error.name, error.message);
- goto finish;
+ goto fail;
}
if (!dbus_connection_add_filter(pa_dbus_wrap_connection_get(*conn), filter_cb, c, NULL)) {
pa_log_warn("Failed to add filter function");
- goto finish;
+ goto fail;
}
if (pa_dbus_add_matches(
pa_dbus_wrap_connection_get(*conn), &error,
- "type='signal',sender='" DBUS_SERVICE_DBUS "',interface='" DBUS_INTERFACE_DBUS "',member='NameOwnerChanged',arg0='org.pulseaudio.Server',arg1=''", NULL) < 0)
+ "type='signal',sender='" DBUS_SERVICE_DBUS "',interface='" DBUS_INTERFACE_DBUS "',member='NameOwnerChanged',arg0='org.pulseaudio.Server',arg1=''", NULL) < 0) {
+
pa_log_warn("Unable to track org.pulseaudio.Server: %s: %s", error.name, error.message);
+ goto fail;
+ }
+
+ return;
+
+fail:
+ if (*conn) {
+ pa_dbus_wrap_connection_free(*conn);
+ *conn = NULL;
+ }
- finish:
dbus_error_free(&error);
}
#endif
@@ -861,7 +892,7 @@ static void on_connection(pa_socket_client *client, pa_iochannel*io, void *userd
c->client = NULL;
if (!io) {
- /* Try the item in the list */
+ /* Try the next item in the list */
if (saved_errno == ECONNREFUSED ||
saved_errno == ETIMEDOUT ||
saved_errno == EHOSTUNREACH) {
@@ -897,7 +928,7 @@ static DBusHandlerResult filter_cb(DBusConnection *bus, DBusMessage *message, vo
/* FIXME: We probably should check if this is actually the NameOwnerChanged we were looking for */
is_session = c->session_bus && bus == pa_dbus_wrap_connection_get(c->session_bus);
- pa_log_debug("Rock!! PulseAudio is back on %s bus", is_session ? "session" : "system");
+ pa_log_debug("Rock!! PulseAudio might be back on %s bus", is_session ? "session" : "system");
if (is_session)
/* The user instance via PF_LOCAL */
@@ -937,7 +968,7 @@ int pa_context_connect(
pa_context_ref(c);
- c->no_fail = flags & PA_CONTEXT_NOFAIL;
+ c->no_fail = !!(flags & PA_CONTEXT_NOFAIL);
c->server_specified = !!server;
pa_assert(!c->server_list);
@@ -954,10 +985,7 @@ int pa_context_connect(
/* Follow the X display */
if ((d = getenv("DISPLAY"))) {
- char *e;
- d = pa_xstrdup(d);
- if ((e = strchr(d, ':')))
- *e = 0;
+ d = pa_xstrndup(d, strcspn(d, ":"));
if (*d)
c->server_list = pa_strlist_prepend(c->server_list, d);
diff --git a/src/pulse/internal.h b/src/pulse/internal.h
index ec2da85b..e069c9e9 100644
--- a/src/pulse/internal.h
+++ b/src/pulse/internal.h
@@ -151,6 +151,11 @@ struct pa_stream {
uint32_t device_index;
char *device_name;
+ /* playback */
+ pa_memblock *write_memblock;
+ void *write_data;
+
+ /* recording */
pa_memchunk peek_memchunk;
void *peek_data;
pa_memblockq *record_memblockq;
diff --git a/src/pulse/introspect.c b/src/pulse/introspect.c
index ab67f596..27a587cb 100644
--- a/src/pulse/introspect.c
+++ b/src/pulse/introspect.c
@@ -201,42 +201,44 @@ static void context_get_sink_info_callback(pa_pdispatch *pd, uint32_t command, u
goto finish;
}
- if (i.n_ports > 0) {
- i.ports = pa_xnew(pa_sink_port_info*, i.n_ports+1);
- i.ports[0] = pa_xnew(pa_sink_port_info, i.n_ports);
-
- for (j = 0; j < i.n_ports; j++) {
- if (pa_tagstruct_gets(t, &i.ports[0][j].name) < 0 ||
- pa_tagstruct_gets(t, &i.ports[0][j].description) < 0 ||
- pa_tagstruct_getu32(t, &i.ports[0][j].priority) < 0) {
-
- pa_context_fail(o->context, PA_ERR_PROTOCOL);
- pa_xfree(i.ports);
- pa_xfree(i.ports[0]);
- pa_proplist_free(i.proplist);
- goto finish;
+ if (o->context->version >= 16) {
+ if (i.n_ports > 0) {
+ i.ports = pa_xnew(pa_sink_port_info*, i.n_ports+1);
+ i.ports[0] = pa_xnew(pa_sink_port_info, i.n_ports);
+
+ for (j = 0; j < i.n_ports; j++) {
+ if (pa_tagstruct_gets(t, &i.ports[0][j].name) < 0 ||
+ pa_tagstruct_gets(t, &i.ports[0][j].description) < 0 ||
+ pa_tagstruct_getu32(t, &i.ports[0][j].priority) < 0) {
+
+ pa_context_fail(o->context, PA_ERR_PROTOCOL);
+ pa_xfree(i.ports[0]);
+ pa_xfree(i.ports);
+ pa_proplist_free(i.proplist);
+ goto finish;
+ }
+
+ i.ports[j] = &i.ports[0][j];
}
- i.ports[j] = &i.ports[0][j];
+ i.ports[j] = NULL;
}
- i.ports[j] = NULL;
- }
-
- if (pa_tagstruct_gets(t, &ap) < 0) {
- pa_context_fail(o->context, PA_ERR_PROTOCOL);
- pa_xfree(i.ports[0]);
- pa_xfree(i.ports);
- pa_proplist_free(i.proplist);
- goto finish;
- }
+ if (pa_tagstruct_gets(t, &ap) < 0) {
+ pa_context_fail(o->context, PA_ERR_PROTOCOL);
+ pa_xfree(i.ports[0]);
+ pa_xfree(i.ports);
+ pa_proplist_free(i.proplist);
+ goto finish;
+ }
- if (ap) {
- for (j = 0; j < i.n_ports; j++)
- if (pa_streq(i.ports[j]->name, ap)) {
- i.active_port = i.ports[j];
- break;
- }
+ if (ap) {
+ for (j = 0; j < i.n_ports; j++)
+ if (pa_streq(i.ports[j]->name, ap)) {
+ i.active_port = i.ports[j];
+ break;
+ }
+ }
}
i.mute = (int) mute;
@@ -248,6 +250,10 @@ static void context_get_sink_info_callback(pa_pdispatch *pd, uint32_t command, u
cb(o->context, &i, 0, o->userdata);
}
+ if (i.ports) {
+ pa_xfree(i.ports[0]);
+ pa_xfree(i.ports);
+ }
pa_proplist_free(i.proplist);
}
}
@@ -428,42 +434,44 @@ static void context_get_source_info_callback(pa_pdispatch *pd, uint32_t command,
goto finish;
}
- if (i.n_ports > 0) {
- i.ports = pa_xnew(pa_source_port_info*, i.n_ports+1);
- i.ports[0] = pa_xnew(pa_source_port_info, i.n_ports);
+ if (o->context->version >= 16) {
+ if (i.n_ports > 0) {
+ i.ports = pa_xnew(pa_source_port_info*, i.n_ports+1);
+ i.ports[0] = pa_xnew(pa_source_port_info, i.n_ports);
- for (j = 0; j < i.n_ports; j++) {
- if (pa_tagstruct_gets(t, &i.ports[0][j].name) < 0 ||
- pa_tagstruct_gets(t, &i.ports[0][j].description) < 0 ||
- pa_tagstruct_getu32(t, &i.ports[0][j].priority) < 0) {
+ for (j = 0; j < i.n_ports; j++) {
+ if (pa_tagstruct_gets(t, &i.ports[0][j].name) < 0 ||
+ pa_tagstruct_gets(t, &i.ports[0][j].description) < 0 ||
+ pa_tagstruct_getu32(t, &i.ports[0][j].priority) < 0) {
- pa_context_fail(o->context, PA_ERR_PROTOCOL);
- pa_xfree(i.ports[0]);
- pa_xfree(i.ports);
- pa_proplist_free(i.proplist);
- goto finish;
+ pa_context_fail(o->context, PA_ERR_PROTOCOL);
+ pa_xfree(i.ports[0]);
+ pa_xfree(i.ports);
+ pa_proplist_free(i.proplist);
+ goto finish;
+ }
+
+ i.ports[j] = &i.ports[0][j];
}
- i.ports[j] = &i.ports[0][j];
+ i.ports[j] = NULL;
}
- i.ports[j] = NULL;
- }
-
- if (pa_tagstruct_gets(t, &ap) < 0) {
- pa_context_fail(o->context, PA_ERR_PROTOCOL);
- pa_xfree(i.ports[0]);
- pa_xfree(i.ports);
- pa_proplist_free(i.proplist);
- goto finish;
- }
+ if (pa_tagstruct_gets(t, &ap) < 0) {
+ pa_context_fail(o->context, PA_ERR_PROTOCOL);
+ pa_xfree(i.ports[0]);
+ pa_xfree(i.ports);
+ pa_proplist_free(i.proplist);
+ goto finish;
+ }
- if (ap) {
- for (j = 0; j < i.n_ports; j++)
- if (pa_streq(i.ports[j]->name, ap)) {
- i.active_port = i.ports[j];
- break;
- }
+ if (ap) {
+ for (j = 0; j < i.n_ports; j++)
+ if (pa_streq(i.ports[j]->name, ap)) {
+ i.active_port = i.ports[j];
+ break;
+ }
+ }
}
i.mute = (int) mute;
@@ -475,6 +483,10 @@ static void context_get_source_info_callback(pa_pdispatch *pd, uint32_t command,
cb(o->context, &i, 0, o->userdata);
}
+ if (i.ports) {
+ pa_xfree(i.ports[0]);
+ pa_xfree(i.ports);
+ }
pa_proplist_free(i.proplist);
}
}
diff --git a/src/pulse/mainloop.c b/src/pulse/mainloop.c
index c418d108..93a4742d 100644
--- a/src/pulse/mainloop.c
+++ b/src/pulse/mainloop.c
@@ -765,23 +765,22 @@ static pa_time_event* find_next_time_event(pa_mainloop *m) {
static int calc_next_timeout(pa_mainloop *m) {
pa_time_event *t;
- pa_usec_t usec;
+ pa_usec_t clock_now;
if (!m->n_enabled_time_events)
return -1;
- t = find_next_time_event(m);
- pa_assert(t);
+ pa_assert_se(t = find_next_time_event(m));
- if (t->time == 0)
+ if (t->time <= 0)
return 0;
- usec = t->time - pa_rtclock_now();
+ clock_now = pa_rtclock_now();
- if (usec <= 0)
+ if (t->time <= clock_now)
return 0;
- return (int) (usec / 1000); /* in milliseconds */
+ return (int) ((t->time - clock_now) / 1000); /* in milliseconds */
}
static int dispatch_timeout(pa_mainloop *m) {
diff --git a/src/pulse/operation.h b/src/pulse/operation.h
index 7b0dabdd..b6b5691d 100644
--- a/src/pulse/operation.h
+++ b/src/pulse/operation.h
@@ -40,7 +40,11 @@ pa_operation *pa_operation_ref(pa_operation *o);
/** Decrease the reference count by one */
void pa_operation_unref(pa_operation *o);
-/** Cancel the operation. Beware! This will not necessarily cancel the execution of the operation on the server side. */
+/** Cancel the operation. Beware! This will not necessarily cancel the
+ * execution of the operation on the server side. However it will make
+ * sure that the callback associated with this operation will not be
+ * called anymore, effectively disabling the operation from the client
+ * side's view. */
void pa_operation_cancel(pa_operation *o);
/** Return the current status of the operation */
diff --git a/src/pulse/simple.c b/src/pulse/simple.c
index f4481fc3..9ed7a653 100644
--- a/src/pulse/simple.c
+++ b/src/pulse/simple.c
@@ -70,8 +70,8 @@ struct pa_simple {
#define CHECK_DEAD_GOTO(p, rerror, label) \
do { \
- if (!(p)->context || pa_context_get_state((p)->context) != PA_CONTEXT_READY || \
- !(p)->stream || pa_stream_get_state((p)->stream) != PA_STREAM_READY) { \
+ if (!(p)->context || !PA_CONTEXT_IS_GOOD(pa_context_get_state((p)->context)) || \
+ !(p)->stream || !PA_STREAM_IS_GOOD(pa_stream_get_state((p)->stream))) { \
if (((p)->context && pa_context_get_state((p)->context) == PA_CONTEXT_FAILED) || \
((p)->stream && pa_stream_get_state((p)->stream) == PA_STREAM_FAILED)) { \
if (rerror) \
@@ -157,12 +157,8 @@ pa_simple* pa_simple_new(
CHECK_VALIDITY_RETURN_ANY(rerror, ss && pa_sample_spec_valid(ss), PA_ERR_INVALID, NULL);
CHECK_VALIDITY_RETURN_ANY(rerror, !map || (pa_channel_map_valid(map) && map->channels == ss->channels), PA_ERR_INVALID, NULL)
- p = pa_xnew(pa_simple, 1);
- p->context = NULL;
- p->stream = NULL;
+ p = pa_xnew0(pa_simple, 1);
p->direction = dir;
- p->read_data = NULL;
- p->read_index = p->read_length = 0;
if (!(p->mainloop = pa_threaded_mainloop_new()))
goto fail;
@@ -182,12 +178,21 @@ pa_simple* pa_simple_new(
if (pa_threaded_mainloop_start(p->mainloop) < 0)
goto unlock_and_fail;
- /* Wait until the context is ready */
- pa_threaded_mainloop_wait(p->mainloop);
+ for (;;) {
+ pa_context_state_t state;
- if (pa_context_get_state(p->context) != PA_CONTEXT_READY) {
- error = pa_context_errno(p->context);
- goto unlock_and_fail;
+ state = pa_context_get_state(p->context);
+
+ if (state == PA_CONTEXT_READY)
+ break;
+
+ if (!PA_CONTEXT_IS_GOOD(state)) {
+ error = pa_context_errno(p->context);
+ goto unlock_and_fail;
+ }
+
+ /* Wait until the context is ready */
+ pa_threaded_mainloop_wait(p->mainloop);
}
if (!(p->stream = pa_stream_new(p->context, stream_name, ss, map))) {
@@ -216,13 +221,21 @@ pa_simple* pa_simple_new(
goto unlock_and_fail;
}
- /* Wait until the stream is ready */
- pa_threaded_mainloop_wait(p->mainloop);
+ for (;;) {
+ pa_stream_state_t state;
- /* Wait until the stream is ready */
- if (pa_stream_get_state(p->stream) != PA_STREAM_READY) {
- error = pa_context_errno(p->context);
- goto unlock_and_fail;
+ state = pa_stream_get_state(p->stream);
+
+ if (state == PA_STREAM_READY)
+ break;
+
+ if (!PA_STREAM_IS_GOOD(state)) {
+ error = pa_context_errno(p->context);
+ goto unlock_and_fail;
+ }
+
+ /* Wait until the stream is ready */
+ pa_threaded_mainloop_wait(p->mainloop);
}
pa_threaded_mainloop_unlock(p->mainloop);
@@ -248,8 +261,10 @@ void pa_simple_free(pa_simple *s) {
if (s->stream)
pa_stream_unref(s->stream);
- if (s->context)
+ if (s->context) {
+ pa_context_disconnect(s->context);
pa_context_unref(s->context);
+ }
if (s->mainloop)
pa_threaded_mainloop_free(s->mainloop);
@@ -261,7 +276,8 @@ int pa_simple_write(pa_simple *p, const void*data, size_t length, int *rerror) {
pa_assert(p);
CHECK_VALIDITY_RETURN_ANY(rerror, p->direction == PA_STREAM_PLAYBACK, PA_ERR_BADSTATE, -1);
- CHECK_VALIDITY_RETURN_ANY(rerror, data && length, PA_ERR_INVALID, -1);
+ CHECK_VALIDITY_RETURN_ANY(rerror, data, PA_ERR_INVALID, -1);
+ CHECK_VALIDITY_RETURN_ANY(rerror, length > 0, PA_ERR_INVALID, -1);
pa_threaded_mainloop_lock(p->mainloop);
@@ -300,7 +316,8 @@ int pa_simple_read(pa_simple *p, void*data, size_t length, int *rerror) {
pa_assert(p);
CHECK_VALIDITY_RETURN_ANY(rerror, p->direction == PA_STREAM_RECORD, PA_ERR_BADSTATE, -1);
- CHECK_VALIDITY_RETURN_ANY(rerror, data && length, PA_ERR_INVALID, -1);
+ CHECK_VALIDITY_RETURN_ANY(rerror, data, PA_ERR_INVALID, -1);
+ CHECK_VALIDITY_RETURN_ANY(rerror, length > 0, PA_ERR_INVALID, -1);
pa_threaded_mainloop_lock(p->mainloop);
@@ -375,7 +392,7 @@ int pa_simple_drain(pa_simple *p, int *rerror) {
CHECK_SUCCESS_GOTO(p, rerror, o, unlock_and_fail);
p->operation_success = 0;
- while (pa_operation_get_state(o) != PA_OPERATION_DONE) {
+ while (pa_operation_get_state(o) == PA_OPERATION_RUNNING) {
pa_threaded_mainloop_wait(p->mainloop);
CHECK_DEAD_GOTO(p, rerror, unlock_and_fail);
}
@@ -411,7 +428,7 @@ int pa_simple_flush(pa_simple *p, int *rerror) {
CHECK_SUCCESS_GOTO(p, rerror, o, unlock_and_fail);
p->operation_success = 0;
- while (pa_operation_get_state(o) != PA_OPERATION_DONE) {
+ while (pa_operation_get_state(o) == PA_OPERATION_RUNNING) {
pa_threaded_mainloop_wait(p->mainloop);
CHECK_DEAD_GOTO(p, rerror, unlock_and_fail);
}
diff --git a/src/pulse/stream.c b/src/pulse/stream.c
index 40556329..2bc2b1e4 100644
--- a/src/pulse/stream.c
+++ b/src/pulse/stream.c
@@ -144,12 +144,13 @@ pa_stream *pa_stream_new_with_proplist(
s->suspended = FALSE;
s->corked = FALSE;
+ s->write_memblock = NULL;
+ s->write_data = NULL;
+
pa_memchunk_reset(&s->peek_memchunk);
s->peek_data = NULL;
-
s->record_memblockq = NULL;
-
memset(&s->timing_info, 0, sizeof(s->timing_info));
s->timing_info_valid = FALSE;
@@ -221,6 +222,11 @@ static void stream_free(pa_stream *s) {
stream_unlink(s);
+ if (s->write_memblock) {
+ pa_memblock_release(s->write_memblock);
+ pa_memblock_unref(s->write_data);
+ }
+
if (s->peek_memchunk.memblock) {
if (s->peek_data)
pa_memblock_release(s->peek_memchunk.memblock);
@@ -821,7 +827,7 @@ static void create_stream_complete(pa_stream *s) {
if (s->flags & PA_STREAM_AUTO_TIMING_UPDATE) {
s->auto_timing_interval_usec = AUTO_TIMING_INTERVAL_START_USEC;
pa_assert(!s->auto_timing_update_event);
- s->auto_timing_update_event = pa_context_rttime_new(s->context, pa_rtclock_now() + s->auto_timing_interval_usec, &auto_timing_update_callback, s);
+ s->auto_timing_update_event = pa_context_rttime_new(s->context, pa_rtclock_now() + s->auto_timing_interval_usec, &auto_timing_update_callback, s);
request_auto_timing_update(s, TRUE);
}
@@ -861,7 +867,7 @@ static void automatic_buffer_attr(pa_stream *s, pa_buffer_attr *attr, const pa_s
void pa_create_stream_callback(pa_pdispatch *pd, uint32_t command, uint32_t tag, pa_tagstruct *t, void *userdata) {
pa_stream *s = userdata;
- uint32_t requested_bytes;
+ uint32_t requested_bytes = 0;
pa_assert(pd);
pa_assert(s);
@@ -1166,7 +1172,7 @@ int pa_stream_connect_playback(
const char *dev,
const pa_buffer_attr *attr,
pa_stream_flags_t flags,
- pa_cvolume *volume,
+ const pa_cvolume *volume,
pa_stream *sync_stream) {
pa_assert(s);
@@ -1187,20 +1193,71 @@ int pa_stream_connect_record(
return create_stream(PA_STREAM_RECORD, s, dev, attr, flags, NULL, NULL);
}
+int pa_stream_begin_write(
+ pa_stream *s,
+ void **data,
+ size_t *nbytes) {
+
+ pa_assert(s);
+ pa_assert(PA_REFCNT_VALUE(s) >= 1);
+
+ PA_CHECK_VALIDITY(s->context, !pa_detect_fork(), PA_ERR_FORKED);
+ PA_CHECK_VALIDITY(s->context, s->state == PA_STREAM_READY, PA_ERR_BADSTATE);
+ PA_CHECK_VALIDITY(s->context, s->direction == PA_STREAM_PLAYBACK || s->direction == PA_STREAM_UPLOAD, PA_ERR_BADSTATE);
+ PA_CHECK_VALIDITY(s->context, data, PA_ERR_INVALID);
+ PA_CHECK_VALIDITY(s->context, nbytes && *nbytes != 0, PA_ERR_INVALID);
+
+ if (*nbytes != (size_t) -1) {
+ size_t m, fs;
+
+ m = pa_mempool_block_size_max(s->context->mempool);
+ fs = pa_frame_size(&s->sample_spec);
+
+ m = (m / fs) * fs;
+ if (*nbytes > m)
+ *nbytes = m;
+ }
+
+ if (!s->write_memblock) {
+ s->write_memblock = pa_memblock_new(s->context->mempool, *nbytes);
+ s->write_data = pa_memblock_acquire(s->write_memblock);
+ }
+
+ *data = s->write_data;
+ *nbytes = pa_memblock_get_length(s->write_memblock);
+
+ return 0;
+}
+
+int pa_stream_cancel_write(
+ pa_stream *s) {
+
+ pa_assert(s);
+ pa_assert(PA_REFCNT_VALUE(s) >= 1);
+
+ PA_CHECK_VALIDITY(s->context, !pa_detect_fork(), PA_ERR_FORKED);
+ PA_CHECK_VALIDITY(s->context, s->state == PA_STREAM_READY, PA_ERR_BADSTATE);
+ PA_CHECK_VALIDITY(s->context, s->direction == PA_STREAM_PLAYBACK || s->direction == PA_STREAM_UPLOAD, PA_ERR_BADSTATE);
+ PA_CHECK_VALIDITY(s->context, s->write_memblock, PA_ERR_BADSTATE);
+
+ pa_assert(s->write_data);
+
+ pa_memblock_release(s->write_memblock);
+ pa_memblock_unref(s->write_memblock);
+ s->write_memblock = NULL;
+ s->write_data = NULL;
+
+ return 0;
+}
+
int pa_stream_write(
pa_stream *s,
const void *data,
size_t length,
- void (*free_cb)(void *p),
+ pa_free_cb_t free_cb,
int64_t offset,
pa_seek_mode_t seek) {
- pa_memchunk chunk;
- pa_seek_mode_t t_seek;
- int64_t t_offset;
- size_t t_length;
- const void *t_data;
-
pa_assert(s);
pa_assert(PA_REFCNT_VALUE(s) >= 1);
pa_assert(data);
@@ -1210,46 +1267,71 @@ int pa_stream_write(
PA_CHECK_VALIDITY(s->context, s->direction == PA_STREAM_PLAYBACK || s->direction == PA_STREAM_UPLOAD, PA_ERR_BADSTATE);
PA_CHECK_VALIDITY(s->context, seek <= PA_SEEK_RELATIVE_END, PA_ERR_INVALID);
PA_CHECK_VALIDITY(s->context, s->direction == PA_STREAM_PLAYBACK || (seek == PA_SEEK_RELATIVE && offset == 0), PA_ERR_INVALID);
+ PA_CHECK_VALIDITY(s->context,
+ !s->write_memblock ||
+ ((data >= s->write_data) &&
+ ((const char*) data + length <= (const char*) s->write_data + pa_memblock_get_length(s->write_memblock))),
+ PA_ERR_INVALID);
+ PA_CHECK_VALIDITY(s->context, !free_cb || !s->write_memblock, PA_ERR_INVALID);
- if (length <= 0)
- return 0;
+ if (s->write_memblock) {
+ pa_memchunk chunk;
- t_seek = seek;
- t_offset = offset;
- t_length = length;
- t_data = data;
+ /* pa_stream_write_begin() was called before */
- while (t_length > 0) {
+ pa_memblock_release(s->write_memblock);
- chunk.index = 0;
+ chunk.memblock = s->write_memblock;
+ chunk.index = (const char *) data - (const char *) s->write_data;
+ chunk.length = length;
- if (free_cb && !pa_pstream_get_shm(s->context->pstream)) {
- chunk.memblock = pa_memblock_new_user(s->context->mempool, (void*) t_data, t_length, free_cb, 1);
- chunk.length = t_length;
- } else {
- void *d;
+ s->write_memblock = NULL;
+ s->write_data = NULL;
- chunk.length = PA_MIN(t_length, pa_mempool_block_size_max(s->context->mempool));
- chunk.memblock = pa_memblock_new(s->context->mempool, chunk.length);
+ pa_pstream_send_memblock(s->context->pstream, s->channel, offset, seek, &chunk);
+ pa_memblock_unref(chunk.memblock);
- d = pa_memblock_acquire(chunk.memblock);
- memcpy(d, t_data, chunk.length);
- pa_memblock_release(chunk.memblock);
- }
+ } else {
+ pa_seek_mode_t t_seek = seek;
+ int64_t t_offset = offset;
+ size_t t_length = length;
+ const void *t_data = data;
- pa_pstream_send_memblock(s->context->pstream, s->channel, t_offset, t_seek, &chunk);
+ /* pa_stream_write_begin() was not called before */
- t_offset = 0;
- t_seek = PA_SEEK_RELATIVE;
+ while (t_length > 0) {
+ pa_memchunk chunk;
- t_data = (const uint8_t*) t_data + chunk.length;
- t_length -= chunk.length;
+ chunk.index = 0;
- pa_memblock_unref(chunk.memblock);
- }
+ if (free_cb && !pa_pstream_get_shm(s->context->pstream)) {
+ chunk.memblock = pa_memblock_new_user(s->context->mempool, (void*) t_data, t_length, free_cb, 1);
+ chunk.length = t_length;
+ } else {
+ void *d;
+
+ chunk.length = PA_MIN(t_length, pa_mempool_block_size_max(s->context->mempool));
+ chunk.memblock = pa_memblock_new(s->context->mempool, chunk.length);
+
+ d = pa_memblock_acquire(chunk.memblock);
+ memcpy(d, t_data, chunk.length);
+ pa_memblock_release(chunk.memblock);
+ }
- if (free_cb && pa_pstream_get_shm(s->context->pstream))
- free_cb((void*) data);
+ pa_pstream_send_memblock(s->context->pstream, s->channel, t_offset, t_seek, &chunk);
+
+ t_offset = 0;
+ t_seek = PA_SEEK_RELATIVE;
+
+ t_data = (const uint8_t*) t_data + chunk.length;
+ t_length -= chunk.length;
+
+ pa_memblock_unref(chunk.memblock);
+ }
+
+ if (free_cb && pa_pstream_get_shm(s->context->pstream))
+ free_cb((void*) data);
+ }
/* This is obviously wrong since we ignore the seeking index . But
* that's OK, the server side applies the same error */
diff --git a/src/pulse/stream.h b/src/pulse/stream.h
index 49c132a2..8a08421f 100644
--- a/src/pulse/stream.h
+++ b/src/pulse/stream.h
@@ -405,7 +405,7 @@ int pa_stream_connect_playback(
const char *dev /**< Name of the sink to connect to, or NULL for default */ ,
const pa_buffer_attr *attr /**< Buffering attributes, or NULL for default */,
pa_stream_flags_t flags /**< Additional flags, or 0 for default */,
- pa_cvolume *volume /**< Initial volume, or NULL for default */,
+ const pa_cvolume *volume /**< Initial volume, or NULL for default */,
pa_stream *sync_stream /**< Synchronize this stream with the specified one, or NULL for a standalone stream*/);
/** Connect the stream to a source */
@@ -418,15 +418,71 @@ int pa_stream_connect_record(
/** Disconnect a stream from a source/sink */
int pa_stream_disconnect(pa_stream *s);
-/** Write some data to the server (for playback sinks), if free_cb is
- * non-NULL this routine is called when all data has been written out
- * and an internal reference to the specified data is kept, the data
- * is not copied. If NULL, the data is copied into an internal
- * buffer. The client my freely seek around in the output buffer. For
+/** Prepare writing data to the server (for playback streams). This
+ * function may be used to optimize the number of memory copies when
+ * doing playback ("zero-copy"). It is recommended to call this
+ * function before each call to pa_stream_write(). Pass in the address
+ * to a pointer and an address of the number of bytes you want to
+ * write. On return the two values will contain a pointer where you
+ * can place the data to write and the maximum number of bytes you can
+ * write. On return *nbytes can be smaller or have the same value as
+ * you passed in. You need to be able to handle both cases. Accessing
+ * memory beyond the returned *nbytes value is invalid. Acessing the
+ * memory returned after the following pa_stream_write() or
+ * pa_stream_cancel_write() is invalid. On invocation only *nbytes
+ * needs to be initialized, on return both *data and *nbytes will be
+ * valid. If you place (size_t) -1 in *nbytes on invocation the memory
+ * size will be chosen automatically (which is recommended to
+ * do). After placing your data in the memory area returned call
+ * pa_stream_write() with data set to an address within this memory
+ * area and an nbytes value that is smaller or equal to what was
+ * returned by this function to actually execute the write. An
+ * invocation of pa_stream_write() should follow "quickly" on
+ * pa_stream_begin_write(). It is not recommended letting an unbounded
+ * amount of time pass after calling pa_stream_begin_write() and
+ * before calling pa_stream_write(). If you want to cancel a
+ * previously called pa_stream_begin_write() without calling
+ * pa_stream_write() use pa_stream_cancel_write(). Calling
+ * pa_stream_begin_write() twice without calling pa_stream_write() or
+ * pa_stream_cancel_write() in between will return exactly the same
+ * pointer/nbytes values.\since 0.9.16 */
+int pa_stream_begin_write(
+ pa_stream *p,
+ void **data,
+ size_t *nbytes);
+
+/** Reverses the effect of pa_stream_begin_write() dropping all data
+ * that has already been placed in the memory area returned by
+ * pa_stream_begin_write(). Only valid to call if
+ * pa_stream_begin_write() was called before and neither
+ * pa_stream_cancel_write() nor pa_stream_write() have been called
+ * yet. Accessing the memory previously returned by
+ * pa_stream_begin_write() after this call is invalid. Any further
+ * explicit freeing of the memory area is not necessary. \since
+ * 0.9.16 */
+int pa_stream_cancel_write(
+ pa_stream *p);
+
+/** Write some data to the server (for playback streams), if free_cb
+ * is non-NULL this routine is called when all data has been written
+ * out and an internal reference to the specified data is kept, the
+ * data is not copied. If NULL, the data is copied into an internal
+ * buffer. The client may freely seek around in the output buffer. For
* most applications passing 0 and PA_SEEK_RELATIVE as arguments for
* offset and seek should be useful. Afte ther write call succeeded
* the write index will be a the position after where this chunk of
- * data has been written to. */
+ * data has been written to.
+ *
+ * As an optimization for avoiding needless memory copies you may call
+ * pa_stream_begin_write() before this call and then place your audio
+ * data directly in the memory area returned by that call. Then, pass
+ * a pointer to that memory area to pa_stream_write(). After the
+ * invocation of pa_stream_write() the memory area may no longer be
+ * accessed. Any further explicit freeing of the memory area is not
+ * necessary. It is OK to write the memory area returned by
+ * pa_stream_begin_write() only partially with this call, skipping
+ * bytes both at the end and at the beginning of the reserved memory
+ * area.*/
int pa_stream_write(
pa_stream *p /**< The stream to use */,
const void *data /**< The data to write */,
@@ -435,11 +491,12 @@ int pa_stream_write(
int64_t offset, /**< Offset for seeking, must be 0 for upload streams */
pa_seek_mode_t seek /**< Seek mode, must be PA_SEEK_RELATIVE for upload streams */);
-/** Read the next fragment from the buffer (for recording).
- * data will point to the actual data and length will contain the size
- * of the data in bytes (which can be less than a complete framgnet).
- * Use pa_stream_drop() to actually remove the data from the
- * buffer. If no data is available will return a NULL pointer */
+/** Read the next fragment from the buffer (for recording streams).
+ * data will point to the actual data and nbytes will contain the size
+ * of the data in bytes (which can be less or more than a complete
+ * fragment). Use pa_stream_drop() to actually remove the data from
+ * the buffer. If no data is available this will return a NULL
+ * pointer */
int pa_stream_peek(
pa_stream *p /**< The stream to use */,
const void **data /**< Pointer to pointer that will point to data */,
@@ -455,7 +512,9 @@ size_t pa_stream_writable_size(pa_stream *p);
/** Return the number of bytes that may be read using pa_stream_peek()*/
size_t pa_stream_readable_size(pa_stream *p);
-/** Drain a playback stream. Use this for notification when the buffer is empty */
+/** Drain a playback stream. Use this for notification when the buffer
+ * is empty. Please note that only one drain operation per stream may
+ * be issued at a time. */
pa_operation* pa_stream_drain(pa_stream *s, pa_stream_success_cb_t cb, void *userdata);
/** Request a timing info structure update for a stream. Use
diff --git a/src/pulse/thread-mainloop.c b/src/pulse/thread-mainloop.c
index 6916d867..a2b98ce1 100644
--- a/src/pulse/thread-mainloop.c
+++ b/src/pulse/thread-mainloop.c
@@ -51,7 +51,7 @@
struct pa_threaded_mainloop {
pa_mainloop *real_mainloop;
- int n_waiting;
+ int n_waiting, n_waiting_for_accept;
pa_thread* thread;
pa_mutex* mutex;
@@ -190,8 +190,12 @@ void pa_threaded_mainloop_signal(pa_threaded_mainloop *m, int wait_for_accept) {
pa_cond_signal(m->cond, 1);
- if (wait_for_accept && m->n_waiting > 0)
- pa_cond_wait(m->accept_cond, m->mutex);
+ if (wait_for_accept) {
+ m->n_waiting_for_accept ++;
+
+ while (m->n_waiting_for_accept > 0)
+ pa_cond_wait(m->accept_cond, m->mutex);
+ }
}
void pa_threaded_mainloop_wait(pa_threaded_mainloop *m) {
@@ -214,6 +218,9 @@ void pa_threaded_mainloop_accept(pa_threaded_mainloop *m) {
/* Make sure that this function is not called from the helper thread */
pa_assert(!m->thread || !pa_thread_is_running(m->thread) || !in_worker(m));
+ pa_assert(m->n_waiting_for_accept > 0);
+ m->n_waiting_for_accept --;
+
pa_cond_signal(m->accept_cond, 0);
}
diff --git a/src/pulse/thread-mainloop.h b/src/pulse/thread-mainloop.h
index 8eddce4c..e847070d 100644
--- a/src/pulse/thread-mainloop.h
+++ b/src/pulse/thread-mainloop.h
@@ -137,15 +137,19 @@ PA_C_DECL_BEGIN
* The main function, my_drain_stream_func(), will wait for the callback to
* be called using pa_threaded_mainloop_wait().
*
- * If your application is multi-threaded, then this waiting must be done
- * inside a while loop. The reason for this is that multiple threads might be
- * using pa_threaded_mainloop_wait() at the same time. Each thread must
- * therefore verify that it was its callback that was invoked.
+ * If your application is multi-threaded, then this waiting must be
+ * done inside a while loop. The reason for this is that multiple
+ * threads might be using pa_threaded_mainloop_wait() at the same
+ * time. Each thread must therefore verify that it was its callback
+ * that was invoked. Also the underlying OS synchronization primitives
+ * are usually not free of spurious wake-ups, so a
+ * pa_threaded_mainloop_wait() must be called within a loop even if
+ * you have only one thread waiting.
*
* The callback, my_drain_callback(), indicates to the main function that it
* has been called using pa_threaded_mainloop_signal().
*
- * As you can see, both pa_threaded_mainloop_wait() may only be called with
+ * As you can see, pa_threaded_mainloop_wait() may only be called with
* the lock held. The same thing is true for pa_threaded_mainloop_signal(),
* but as the lock is held before the callback is invoked, you do not have to
* deal with that.
@@ -274,7 +278,9 @@ void pa_threaded_mainloop_unlock(pa_threaded_mainloop *m);
* inside the event loop thread. Prior to this call the event loop
* object needs to be locked using pa_threaded_mainloop_lock(). While
* waiting the lock will be released, immediately before returning it
- * will be acquired again. */
+ * will be acquired again. This function may spuriously wake up even
+ * without _signal() being called. You need to make sure to handle
+ * that! */
void pa_threaded_mainloop_wait(pa_threaded_mainloop *m);
/** Signal all threads waiting for a signalling event in
diff --git a/src/pulse/volume.c b/src/pulse/volume.c
index 42cde5b9..c23f360b 100644
--- a/src/pulse/volume.c
+++ b/src/pulse/volume.c
@@ -205,9 +205,12 @@ pa_volume_t pa_sw_volume_from_linear(double v) {
*
* http://www.robotplanet.dk/audio/audio_gui_design/
* http://lists.linuxaudio.org/pipermail/linux-audio-dev/2009-May/thread.html#23151
+ *
+ * We make sure that the conversion to linear and back yields the
+ * same volume value! That's why we need the lround() below!
*/
- return (pa_volume_t) (cbrt(v) * PA_VOLUME_NORM);
+ return (pa_volume_t) lround(cbrt(v) * PA_VOLUME_NORM);
}
double pa_sw_volume_to_linear(pa_volume_t v) {
diff --git a/src/pulsecore/asyncmsgq.c b/src/pulsecore/asyncmsgq.c
index e191b05f..b0804f79 100644
--- a/src/pulsecore/asyncmsgq.c
+++ b/src/pulsecore/asyncmsgq.c
@@ -26,14 +26,16 @@
#include
#include
+#include
+
#include
+#include
#include
#include
#include
#include
#include
#include
-#include
#include "asyncmsgq.h"
@@ -76,7 +78,7 @@ static void asyncmsgq_free(pa_asyncmsgq *a) {
struct asyncmsgq_item *i;
pa_assert(a);
- while ((i = pa_asyncq_pop(a->asyncq, 0))) {
+ while ((i = pa_asyncq_pop(a->asyncq, FALSE))) {
pa_assert(!i->semaphore);
@@ -172,11 +174,11 @@ int pa_asyncmsgq_send(pa_asyncmsgq *a, pa_msgobject *object, int code, const voi
return i.ret;
}
-int pa_asyncmsgq_get(pa_asyncmsgq *a, pa_msgobject **object, int *code, void **userdata, int64_t *offset, pa_memchunk *chunk, pa_bool_t wait) {
+int pa_asyncmsgq_get(pa_asyncmsgq *a, pa_msgobject **object, int *code, void **userdata, int64_t *offset, pa_memchunk *chunk, pa_bool_t wait_op) {
pa_assert(PA_REFCNT_VALUE(a) > 0);
pa_assert(!a->current);
- if (!(a->current = pa_asyncq_pop(a->asyncq, wait))) {
+ if (!(a->current = pa_asyncq_pop(a->asyncq, wait_op))) {
/* pa_log("failure"); */
return -1;
}
@@ -246,7 +248,7 @@ int pa_asyncmsgq_wait_for(pa_asyncmsgq *a, int code) {
pa_memchunk chunk;
int ret;
- if (pa_asyncmsgq_get(a, &o, &c, &data, &offset, &chunk, 1) < 0)
+ if (pa_asyncmsgq_get(a, &o, &c, &data, &offset, &chunk, TRUE) < 0)
return -1;
ret = pa_asyncmsgq_dispatch(o, c, data, offset, &chunk);
@@ -269,7 +271,7 @@ int pa_asyncmsgq_process_one(pa_asyncmsgq *a) {
pa_assert(PA_REFCNT_VALUE(a) > 0);
- if (pa_asyncmsgq_get(a, &object, &code, &data, &offset, &chunk, 0) < 0)
+ if (pa_asyncmsgq_get(a, &object, &code, &data, &offset, &chunk, FALSE) < 0)
return 0;
pa_asyncmsgq_ref(a);
@@ -323,3 +325,35 @@ int pa_asyncmsgq_dispatch(pa_msgobject *object, int code, void *userdata, int64_
return 0;
}
+
+void pa_asyncmsgq_flush(pa_asyncmsgq *a, pa_bool_t run) {
+ pa_assert(PA_REFCNT_VALUE(a) > 0);
+
+ for (;;) {
+ pa_msgobject *object;
+ int code;
+ void *data;
+ int64_t offset;
+ pa_memchunk chunk;
+ int ret;
+
+ if (pa_asyncmsgq_get(a, &object, &code, &data, &offset, &chunk, FALSE) < 0)
+ return;
+
+ if (!run) {
+ pa_asyncmsgq_done(a, -1);
+ continue;
+ }
+
+ pa_asyncmsgq_ref(a);
+ ret = pa_asyncmsgq_dispatch(object, code, data, offset, &chunk);
+ pa_asyncmsgq_done(a, ret);
+ pa_asyncmsgq_unref(a);
+ }
+}
+
+pa_bool_t pa_asyncmsgq_dispatching(pa_asyncmsgq *a) {
+ pa_assert(PA_REFCNT_VALUE(a) > 0);
+
+ return !!a->current;
+}
diff --git a/src/pulsecore/asyncmsgq.h b/src/pulsecore/asyncmsgq.h
index 1f38207a..1085c2f0 100644
--- a/src/pulsecore/asyncmsgq.h
+++ b/src/pulsecore/asyncmsgq.h
@@ -66,6 +66,8 @@ void pa_asyncmsgq_done(pa_asyncmsgq *q, int ret);
int pa_asyncmsgq_wait_for(pa_asyncmsgq *a, int code);
int pa_asyncmsgq_process_one(pa_asyncmsgq *a);
+void pa_asyncmsgq_flush(pa_asyncmsgq *a, pa_bool_t run);
+
/* For the reading side */
int pa_asyncmsgq_read_fd(pa_asyncmsgq *q);
int pa_asyncmsgq_read_before_poll(pa_asyncmsgq *a);
@@ -76,4 +78,6 @@ int pa_asyncmsgq_write_fd(pa_asyncmsgq *q);
void pa_asyncmsgq_write_before_poll(pa_asyncmsgq *a);
void pa_asyncmsgq_write_after_poll(pa_asyncmsgq *a);
+pa_bool_t pa_asyncmsgq_dispatching(pa_asyncmsgq *a);
+
#endif
diff --git a/src/pulsecore/aupdate.c b/src/pulsecore/aupdate.c
index 56ebb8e5..85b6e00e 100644
--- a/src/pulsecore/aupdate.c
+++ b/src/pulsecore/aupdate.c
@@ -39,6 +39,7 @@ struct pa_aupdate {
pa_atomic_t read_lock;
pa_mutex *write_lock;
pa_semaphore *semaphore;
+ pa_bool_t swapped;
};
pa_aupdate *pa_aupdate_new(void) {
@@ -101,6 +102,8 @@ unsigned pa_aupdate_write_begin(pa_aupdate *a) {
n = (unsigned) pa_atomic_load(&a->read_lock);
+ a->swapped = FALSE;
+
return !WHICH(n);
}
@@ -119,11 +122,16 @@ unsigned pa_aupdate_write_swap(pa_aupdate *a) {
break;
}
+ a->swapped = TRUE;
+
return WHICH(n);
}
void pa_aupdate_write_end(pa_aupdate *a) {
pa_assert(a);
+ if (!a->swapped)
+ pa_aupdate_write_swap(a);
+
pa_mutex_unlock(a->write_lock);
}
diff --git a/src/pulsecore/aupdate.h b/src/pulsecore/aupdate.h
index 072e382d..fb38ffa2 100644
--- a/src/pulsecore/aupdate.h
+++ b/src/pulsecore/aupdate.h
@@ -93,6 +93,10 @@ unsigned pa_aupdate_write_swap(pa_aupdate *a);
* pa_update_write_end(a)
* }
*
+ * In some cases keeping both structures up-to-date might not be
+ * necessary, since they are fully rebuilt on each iteration
+ * anyway. In that case you may leave the _write_swap() call out, it
+ * will then be done implicitly in the _write_end() invocation.
*/
#endif
diff --git a/src/pulsecore/authkey.c b/src/pulsecore/authkey.c
index 1e31d076..15613e27 100644
--- a/src/pulsecore/authkey.c
+++ b/src/pulsecore/authkey.c
@@ -36,6 +36,7 @@
#include
#include
+#include
#include
#include
#include
@@ -147,47 +148,46 @@ int pa_authkey_load(const char *path, void *data, size_t length) {
/* If the specified file path starts with / return it, otherwise
* return path prepended with home directory */
-static const char *normalize_path(const char *fn, char *s, size_t l) {
+static char *normalize_path(const char *fn) {
pa_assert(fn);
- pa_assert(s);
- pa_assert(l > 0);
#ifndef OS_IS_WIN32
if (fn[0] != '/') {
#else
if (strlen(fn) < 3 || !isalpha(fn[0]) || fn[1] != ':' || fn[2] != '\\') {
#endif
- char homedir[PATH_MAX];
+ char *homedir, *s;
- if (!pa_get_home_dir(homedir, sizeof(homedir)))
+ if (!(homedir = pa_get_home_dir_malloc()))
return NULL;
-#ifndef OS_IS_WIN32
- pa_snprintf(s, l, "%s/%s", homedir, fn);
-#else
- pa_snprintf(s, l, "%s\\%s", homedir, fn);
-#endif
+ s = pa_sprintf_malloc("%s" PA_PATH_SEP "%s", homedir, fn);
+ pa_xfree(homedir);
+
return s;
}
- return fn;
+ return pa_xstrdup(fn);
}
/* Load a cookie from a file in the home directory. If the specified
* path starts with /, use it as absolute path instead. */
int pa_authkey_load_auto(const char *fn, void *data, size_t length) {
- char path[PATH_MAX];
- const char *p;
+ char *p;
+ int ret;
pa_assert(fn);
pa_assert(data);
pa_assert(length > 0);
- if (!(p = normalize_path(fn, path, sizeof(path))))
+ if (!(p = normalize_path(fn)))
return -2;
- return pa_authkey_load(p, data, length);
+ ret = pa_authkey_load(p, data, length);
+ pa_xfree(p);
+
+ return ret;
}
/* Store the specified cookie in the specified cookie file */
@@ -195,14 +195,13 @@ int pa_authkey_save(const char *fn, const void *data, size_t length) {
int fd = -1;
int unlock = 0, ret = -1;
ssize_t r;
- char path[PATH_MAX];
- const char *p;
+ char *p;
pa_assert(fn);
pa_assert(data);
pa_assert(length > 0);
- if (!(p = normalize_path(fn, path, sizeof(path))))
+ if (!(p = normalize_path(fn)))
return -2;
if ((fd = open(p, O_RDWR|O_CREAT|O_NOCTTY, S_IRUSR|S_IWUSR)) < 0) {
@@ -232,5 +231,7 @@ finish:
}
}
+ pa_xfree(p);
+
return ret;
}
diff --git a/src/pulsecore/cli-text.c b/src/pulsecore/cli-text.c
index 9395513d..a5530991 100644
--- a/src/pulsecore/cli-text.c
+++ b/src/pulsecore/cli-text.c
@@ -296,7 +296,7 @@ char *pa_sink_list_to_string(pa_core *c) {
pa_strbuf_printf(
s,
"\tfixed latency: %0.2f ms\n",
- (double) pa_sink_get_requested_latency(sink) / PA_USEC_PER_MSEC);
+ (double) pa_sink_get_fixed_latency(sink) / PA_USEC_PER_MSEC);
if (sink->card)
pa_strbuf_printf(s, "\tcard: %u <%s>\n", sink->card->index, sink->card->name);
@@ -415,7 +415,7 @@ char *pa_source_list_to_string(pa_core *c) {
pa_strbuf_printf(
s,
"\tfixed latency: %0.2f ms\n",
- (double) pa_source_get_requested_latency(source) / PA_USEC_PER_MSEC);
+ (double) pa_source_get_fixed_latency(source) / PA_USEC_PER_MSEC);
if (source->monitor_of)
pa_strbuf_printf(s, "\tmonitor_of: %u\n", source->monitor_of->index);
@@ -482,7 +482,7 @@ char *pa_source_output_list_to_string(pa_core *c) {
s,
" index: %u\n"
"\tdriver: <%s>\n"
- "\tflags: %s%s%s%s%s%s%s%s%s%s\n"
+ "\tflags: %s%s%s%s%s%s%s%s%s%s%s\n"
"\tstate: %s\n"
"\tsource: %u <%s>\n"
"\tcurrent latency: %0.2f ms\n"
@@ -501,7 +501,8 @@ char *pa_source_output_list_to_string(pa_core *c) {
o->flags & PA_SOURCE_OUTPUT_FIX_RATE ? "FIX_RATE " : "",
o->flags & PA_SOURCE_OUTPUT_FIX_CHANNELS ? "FIX_CHANNELS " : "",
o->flags & PA_SOURCE_OUTPUT_DONT_INHIBIT_AUTO_SUSPEND ? "DONT_INHIBIT_AUTO_SUSPEND " : "",
- o->flags & PA_SOURCE_OUTPUT_FAIL_ON_SUSPEND ? "FAIL_ON_SUSPEND " : "",
+ o->flags & PA_SOURCE_OUTPUT_NO_CREATE_ON_SUSPEND ? "NO_CREATE_ON_SUSPEND " : "",
+ o->flags & PA_SOURCE_OUTPUT_KILL_ON_SUSPEND ? "KILL_ON_SUSPEND " : "",
state_table[pa_source_output_get_state(o)],
o->source->index, o->source->name,
(double) pa_source_output_get_latency(o, NULL) / PA_USEC_PER_MSEC,
@@ -564,7 +565,7 @@ char *pa_sink_input_list_to_string(pa_core *c) {
s,
" index: %u\n"
"\tdriver: <%s>\n"
- "\tflags: %s%s%s%s%s%s%s%s%s%s\n"
+ "\tflags: %s%s%s%s%s%s%s%s%s%s%s\n"
"\tstate: %s\n"
"\tsink: %u <%s>\n"
"\tvolume: %s\n"
@@ -587,7 +588,8 @@ char *pa_sink_input_list_to_string(pa_core *c) {
i->flags & PA_SINK_INPUT_FIX_RATE ? "FIX_RATE " : "",
i->flags & PA_SINK_INPUT_FIX_CHANNELS ? "FIX_CHANNELS " : "",
i->flags & PA_SINK_INPUT_DONT_INHIBIT_AUTO_SUSPEND ? "DONT_INHIBIT_AUTO_SUSPEND " : "",
- i->flags & PA_SINK_INPUT_FAIL_ON_SUSPEND ? "FAIL_ON_SUSPEND " : "",
+ i->flags & PA_SINK_INPUT_NO_CREATE_ON_SUSPEND ? "NO_CREATE_SUSPEND " : "",
+ i->flags & PA_SINK_INPUT_KILL_ON_SUSPEND ? "KILL_ON_SUSPEND " : "",
state_table[pa_sink_input_get_state(i)],
i->sink->index, i->sink->name,
pa_cvolume_snprint(cv, sizeof(cv), &v),
diff --git a/src/pulsecore/conf-parser.c b/src/pulsecore/conf-parser.c
index 2dc9a223..b4ab23cc 100644
--- a/src/pulsecore/conf-parser.c
+++ b/src/pulsecore/conf-parser.c
@@ -278,6 +278,30 @@ int pa_config_parse_bool(const char *filename, unsigned line, const char *sectio
return 0;
}
+int pa_config_parse_not_bool(
+ const char *filename, unsigned line,
+ const char *section,
+ const char *lvalue, const char *rvalue,
+ void *data, void *userdata) {
+
+ int k;
+ pa_bool_t *b = data;
+
+ pa_assert(filename);
+ pa_assert(lvalue);
+ pa_assert(rvalue);
+ pa_assert(data);
+
+ if ((k = pa_parse_boolean(rvalue)) < 0) {
+ pa_log("[%s:%u] Failed to parse boolean value: %s", filename, line, rvalue);
+ return -1;
+ }
+
+ *b = !k;
+
+ return 0;
+}
+
int pa_config_parse_string(const char *filename, unsigned line, const char *section, const char *lvalue, const char *rvalue, void *data, void *userdata) {
char **s = data;
diff --git a/src/pulsecore/conf-parser.h b/src/pulsecore/conf-parser.h
index 08e17ca7..c6c8a148 100644
--- a/src/pulsecore/conf-parser.h
+++ b/src/pulsecore/conf-parser.h
@@ -47,6 +47,7 @@ int pa_config_parse_int(const char *filename, unsigned line, const char *section
int pa_config_parse_unsigned(const char *filename, unsigned line, const char *section, const char *lvalue, const char *rvalue, void *data, void *userdata);
int pa_config_parse_size(const char *filename, unsigned line, const char *section, const char *lvalue, const char *rvalue, void *data, void *userdata);
int pa_config_parse_bool(const char *filename, unsigned line, const char *section, const char *lvalue, const char *rvalue, void *data, void *userdata);
+int pa_config_parse_not_bool(const char *filename, unsigned line, const char *section, const char *lvalue, const char *rvalue, void *data, void *userdata);
int pa_config_parse_string(const char *filename, unsigned line, const char *section, const char *lvalue, const char *rvalue, void *data, void *userdata);
#endif
diff --git a/src/pulsecore/core-scache.c b/src/pulsecore/core-scache.c
index 4c5a4b26..fde12ecf 100644
--- a/src/pulsecore/core-scache.c
+++ b/src/pulsecore/core-scache.c
@@ -494,13 +494,14 @@ int pa_scache_add_directory_lazy(pa_core *c, const char *pathname) {
struct dirent *e;
while ((e = readdir(dir))) {
- char p[PATH_MAX];
+ char *p;
if (e->d_name[0] == '.')
continue;
- pa_snprintf(p, sizeof(p), "%s/%s", pathname, e->d_name);
+ p = pa_sprintf_malloc("%s" PA_PATH_SEP "%s", pathname, e->d_name);
add_file(c, p);
+ pa_xfree(p);
}
closedir(dir);
diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c
index ebddf363..e83563f9 100644
--- a/src/pulsecore/core-util.c
+++ b/src/pulsecore/core-util.c
@@ -101,6 +101,10 @@
#include "rtkit.h"
#endif
+#ifdef __linux__
+#include
+#endif
+
#include
#include
#include
@@ -552,12 +556,20 @@ char *pa_vsprintf_malloc(const char *format, va_list ap) {
/* Similar to OpenBSD's strlcpy() function */
char *pa_strlcpy(char *b, const char *s, size_t l) {
+ size_t k;
+
pa_assert(b);
pa_assert(s);
pa_assert(l > 0);
- strncpy(b, s, l);
- b[l-1] = 0;
+ k = strlen(s);
+
+ if (k > l-1)
+ k = l-1;
+
+ memcpy(b, s, k);
+ b[k] = 0;
+
return b;
}
@@ -1328,26 +1340,32 @@ int pa_unlock_lockfile(const char *fn, int fd) {
}
static char *get_pulse_home(void) {
- char h[PATH_MAX];
+ char *h;
struct stat st;
+ char *ret = NULL;
- if (!pa_get_home_dir(h, sizeof(h))) {
+ if (!(h = pa_get_home_dir_malloc())) {
pa_log_error("Failed to get home directory.");
return NULL;
}
if (stat(h, &st) < 0) {
pa_log_error("Failed to stat home directory %s: %s", h, pa_cstrerror(errno));
- return NULL;
+ goto finish;
}
if (st.st_uid != getuid()) {
pa_log_error("Home directory %s not ours.", h);
errno = EACCES;
- return NULL;
+ goto finish;
}
- return pa_sprintf_malloc("%s" PA_PATH_SEP ".pulse", h);
+ ret = pa_sprintf_malloc("%s" PA_PATH_SEP ".pulse", h);
+
+finish:
+ pa_xfree(h);
+
+ return ret;
}
char *pa_get_state_dir(void) {
@@ -1372,6 +1390,50 @@ char *pa_get_state_dir(void) {
return d;
}
+char *pa_get_home_dir_malloc(void) {
+ char *homedir;
+ size_t allocated = 128;
+
+ for (;;) {
+ homedir = pa_xmalloc(allocated);
+
+ if (!pa_get_home_dir(homedir, allocated)) {
+ pa_xfree(homedir);
+ return NULL;
+ }
+
+ if (strlen(homedir) < allocated - 1)
+ break;
+
+ pa_xfree(homedir);
+ allocated *= 2;
+ }
+
+ return homedir;
+}
+
+char *pa_get_binary_name_malloc(void) {
+ char *t;
+ size_t allocated = 128;
+
+ for (;;) {
+ t = pa_xmalloc(allocated);
+
+ if (!pa_get_binary_name(t, allocated)) {
+ pa_xfree(t);
+ return NULL;
+ }
+
+ if (strlen(t) < allocated - 1)
+ break;
+
+ pa_xfree(t);
+ allocated *= 2;
+ }
+
+ return t;
+}
+
static char* make_random_dir(mode_t m) {
static const char table[] =
"abcdefghijklmnopqrstuvwxyz"
@@ -1481,7 +1543,7 @@ char *pa_get_runtime_dir(void) {
goto fail;
}
- k = pa_sprintf_malloc("%s" PA_PATH_SEP "%s:runtime", d, mid);
+ k = pa_sprintf_malloc("%s" PA_PATH_SEP "%s-runtime", d, mid);
pa_xfree(d);
pa_xfree(mid);
@@ -1626,14 +1688,15 @@ FILE *pa_open_config_file(const char *global, const char *local, const char *env
if (local) {
const char *e;
char *lfn;
- char h[PATH_MAX];
+ char *h;
FILE *f;
if ((e = getenv("PULSE_CONFIG_PATH")))
fn = lfn = pa_sprintf_malloc("%s" PA_PATH_SEP "%s", e, local);
- else if (pa_get_home_dir(h, sizeof(h)))
+ else if ((h = pa_get_home_dir_malloc())) {
fn = lfn = pa_sprintf_malloc("%s" PA_PATH_SEP ".pulse" PA_PATH_SEP "%s", h, local);
- else
+ pa_xfree(h);
+ } else
return NULL;
#ifdef OS_IS_WIN32
@@ -1713,13 +1776,14 @@ char *pa_find_config_file(const char *global, const char *local, const char *env
if (local) {
const char *e;
char *lfn;
- char h[PATH_MAX];
+ char *h;
if ((e = getenv("PULSE_CONFIG_PATH")))
fn = lfn = pa_sprintf_malloc("%s" PA_PATH_SEP "%s", e, local);
- else if (pa_get_home_dir(h, sizeof(h)))
+ else if ((h = pa_get_home_dir_malloc())) {
fn = lfn = pa_sprintf_malloc("%s" PA_PATH_SEP ".pulse" PA_PATH_SEP "%s", h, local);
- else
+ pa_xfree(h);
+ } else
return NULL;
#ifdef OS_IS_WIN32
@@ -1904,7 +1968,7 @@ static char *get_path(const char *fn, pa_bool_t prependmid, pa_bool_t rt) {
return NULL;
}
- r = pa_sprintf_malloc("%s" PA_PATH_SEP "%s:%s", rtp, mid, fn);
+ r = pa_sprintf_malloc("%s" PA_PATH_SEP "%s-%s", rtp, mid, fn);
pa_xfree(mid);
} else
r = pa_sprintf_malloc("%s" PA_PATH_SEP "%s", rtp, fn);
@@ -2801,3 +2865,28 @@ char* pa_maybe_prefix_path(const char *path, const char *prefix) {
return pa_sprintf_malloc("%s" PA_PATH_SEP "%s", prefix, path);
}
+
+size_t pa_pipe_buf(int fd) {
+
+#ifdef _PC_PIPE_BUF
+ long n;
+
+ if ((n = fpathconf(fd, _PC_PIPE_BUF)) >= 0)
+ return (size_t) n;
+#endif
+
+#ifdef PIPE_BUF
+ return PIPE_BUF;
+#else
+ return 4096;
+#endif
+}
+
+void pa_reset_personality(void) {
+
+#ifdef __linux__
+ if (personality(PER_LINUX) < 0)
+ pa_log_warn("Uh, personality() failed: %s", pa_cstrerror(errno));
+#endif
+
+}
diff --git a/src/pulsecore/core-util.h b/src/pulsecore/core-util.h
index aaa51bd6..3db55106 100644
--- a/src/pulsecore/core-util.h
+++ b/src/pulsecore/core-util.h
@@ -126,6 +126,8 @@ char* pa_find_config_file(const char *global, const char *local, const char *env
char *pa_get_runtime_dir(void);
char *pa_get_state_dir(void);
+char *pa_get_home_dir_malloc(void);
+char *pa_get_binary_name_malloc(void);
char *pa_runtime_path(const char *fn);
char *pa_state_path(const char *fn, pa_bool_t prepend_machine_id);
@@ -243,4 +245,9 @@ char **pa_split_spaces_strv(const char *s);
char* pa_maybe_prefix_path(const char *path, const char *prefix);
+/* Returns size of the specified pipe or 4096 on failure */
+size_t pa_pipe_buf(int fd);
+
+void pa_reset_personality(void);
+
#endif
diff --git a/src/pulsecore/database-simple.c b/src/pulsecore/database-simple.c
new file mode 100644
index 00000000..1f4caf71
--- /dev/null
+++ b/src/pulsecore/database-simple.c
@@ -0,0 +1,510 @@
+/***
+ This file is part of PulseAudio.
+
+ Copyright 2009 Nokia Corporation
+ Contact: Maemo Multimedia
+
+ 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with PulseAudio; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA.
+***/
+
+#ifdef HAVE_CONFIG_H
+#include
+#endif
+
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+#include
+#include
+#include
+#include
+
+#include "database.h"
+
+
+typedef struct simple_data {
+ char *filename;
+ char *tmp_filename;
+ pa_hashmap *map;
+ pa_bool_t read_only;
+} simple_data;
+
+typedef struct entry {
+ pa_datum key;
+ pa_datum data;
+} entry;
+
+void pa_datum_free(pa_datum *d) {
+ pa_assert(d);
+
+ pa_xfree(d->data);
+ d->data = NULL;
+ d->size = 0;
+}
+
+static int compare_func(const void *a, const void *b) {
+ const pa_datum *aa, *bb;
+
+ aa = (const pa_datum*)a;
+ bb = (const pa_datum*)b;
+
+ if (aa->size != bb->size)
+ return aa->size > bb->size ? 1 : -1;
+
+ return memcmp(aa->data, bb->data, aa->size);
+}
+
+/* pa_idxset_string_hash_func modified for our use */
+static unsigned hash_func(const void *p) {
+ const pa_datum *d;
+ unsigned hash = 0;
+ const char *c;
+ unsigned i;
+
+ d = (const pa_datum*)p;
+ c = d->data;
+
+ for (i = 0; i < d->size; i++) {
+ hash = 31 * hash + (unsigned) *c;
+ c++;
+ }
+
+ return hash;
+}
+
+static entry* new_entry(const pa_datum *key, const pa_datum *data) {
+ entry *e;
+
+ pa_assert(key);
+ pa_assert(data);
+
+ e = pa_xnew0(entry, 1);
+ e->key.data = key->size > 0 ? pa_xmemdup(key->data, key->size) : NULL;
+ e->key.size = key->size;
+ e->data.data = data->size > 0 ? pa_xmemdup(data->data, data->size) : NULL;
+ e->data.size = data->size;
+ return e;
+}
+
+static void free_entry(entry *e) {
+ if (e) {
+ if (e->key.data)
+ pa_xfree(e->key.data);
+ if (e->data.data)
+ pa_xfree(e->data.data);
+ pa_xfree(e);
+ }
+}
+
+static int read_uint(FILE *f, uint32_t *res) {
+ size_t items = 0;
+ uint8_t values[4];
+ uint32_t tmp;
+ int i;
+
+ items = fread(&values, sizeof(values), sizeof(uint8_t), f);
+
+ if (feof(f)) /* EOF */
+ return 0;
+
+ if (ferror(f))
+ return -1;
+
+ for (i = 0; i < 4; ++i) {
+ tmp = values[i];
+ *res += (tmp << (i*8));
+ }
+
+ return items;
+}
+
+static int read_data(FILE *f, void **data, ssize_t *length) {
+ size_t items = 0;
+ uint32_t data_len = 0;
+
+ pa_assert(f);
+
+ *data = NULL;
+ *length = 0;
+
+ if ((items = read_uint(f, &data_len)) <= 0)
+ return -1;
+
+ if (data_len > 0) {
+ *data = pa_xmalloc0(data_len);
+ items = fread(*data, data_len, 1, f);
+
+ if (feof(f)) /* EOF */
+ goto reset;
+
+ if (ferror(f))
+ goto reset;
+
+ *length = data_len;
+
+ } else { /* no data? */
+ return -1;
+ }
+
+ return 0;
+
+reset:
+ pa_xfree(*data);
+ *data = NULL;
+ *length = 0;
+ return -1;
+}
+
+static int fill_data(simple_data *db, FILE *f) {
+ pa_datum key;
+ pa_datum data;
+ void *d = NULL;
+ ssize_t l = 0;
+ pa_bool_t append = FALSE;
+ enum { FIELD_KEY = 0, FIELD_DATA } field = FIELD_KEY;
+
+ pa_assert(db);
+ pa_assert(db->map);
+
+ errno = 0;
+
+ key.size = 0;
+ key.data = NULL;
+
+ while (!read_data(f, &d, &l)) {
+
+ switch (field) {
+ case FIELD_KEY:
+ key.data = d;
+ key.size = l;
+ field = FIELD_DATA;
+ break;
+ case FIELD_DATA:
+ data.data = d;
+ data.size = l;
+ append = TRUE;
+ break;
+ }
+
+ if (append) {
+ entry *e = pa_xnew0(entry, 1);
+ e->key.data = key.data;
+ e->key.size = key.size;
+ e->data.data = data.data;
+ e->data.size = data.size;
+ pa_hashmap_put(db->map, &e->key, e);
+ append = FALSE;
+ field = FIELD_KEY;
+ }
+ }
+
+ if (ferror(f)) {
+ pa_log_warn("read error. %s", pa_cstrerror(errno));
+ pa_database_clear((pa_database*)db);
+ }
+
+ if (field == FIELD_DATA && d)
+ pa_xfree(d);
+
+ return pa_hashmap_size(db->map);
+}
+
+pa_database* pa_database_open(const char *fn, pa_bool_t for_write) {
+ FILE *f;
+ char *path;
+ simple_data *db;
+
+ pa_assert(fn);
+
+ path = pa_sprintf_malloc("%s."CANONICAL_HOST".simple", fn);
+ errno = 0;
+
+ f = fopen(path, "r");
+
+ if (f || errno == ENOENT) { /* file not found is ok */
+ db = pa_xnew0(simple_data, 1);
+ db->map = pa_hashmap_new(hash_func, compare_func);
+ db->filename = pa_xstrdup(path);
+ db->tmp_filename = pa_sprintf_malloc(".%s.tmp", db->filename);
+ db->read_only = !for_write;
+
+ if (f) {
+ fill_data(db, f);
+ fclose(f);
+ }
+ } else {
+ if (errno == 0)
+ errno = EIO;
+ db = NULL;
+ }
+
+ pa_xfree(path);
+
+ return (pa_database*) db;
+}
+
+void pa_database_close(pa_database *database) {
+ simple_data *db = (simple_data*)database;
+ pa_assert(db);
+
+ pa_database_sync(database);
+ pa_database_clear(database);
+ pa_xfree(db->filename);
+ pa_xfree(db->tmp_filename);
+ pa_hashmap_free(db->map, NULL, NULL);
+ pa_xfree(db);
+}
+
+pa_datum* pa_database_get(pa_database *database, const pa_datum *key, pa_datum* data) {
+ simple_data *db = (simple_data*)database;
+ entry *e;
+
+ pa_assert(db);
+ pa_assert(key);
+ pa_assert(data);
+
+ e = pa_hashmap_get(db->map, key);
+
+ if (!e)
+ return NULL;
+
+ data->data = e->data.size > 0 ? pa_xmemdup(e->data.data, e->data.size) : NULL;
+ data->size = e->data.size;
+
+ return data;
+}
+
+int pa_database_set(pa_database *database, const pa_datum *key, const pa_datum* data, pa_bool_t overwrite) {
+ simple_data *db = (simple_data*)database;
+ entry *e;
+ int ret = 0;
+
+ pa_assert(db);
+ pa_assert(key);
+ pa_assert(data);
+
+ if (db->read_only)
+ return -1;
+
+ e = new_entry(key, data);
+
+ if (pa_hashmap_put(db->map, &e->key, e) < 0) {
+ /* entry with same key exists in hashmap */
+ entry *r;
+ if (overwrite) {
+ r = pa_hashmap_remove(db->map, key);
+ pa_hashmap_put(db->map, &e->key, e);
+ } else {
+ /* wont't overwrite, so clean new entry */
+ r = e;
+ ret = -1;
+ }
+
+ free_entry(r);
+ }
+
+ return ret;
+}
+
+int pa_database_unset(pa_database *database, const pa_datum *key) {
+ simple_data *db = (simple_data*)database;
+ entry *e;
+
+ pa_assert(db);
+ pa_assert(key);
+
+ e = pa_hashmap_remove(db->map, key);
+ if (!e)
+ return -1;
+
+ free_entry(e);
+
+ return 0;
+}
+
+int pa_database_clear(pa_database *database) {
+ simple_data *db = (simple_data*)database;
+ entry *e;
+
+ pa_assert(db);
+
+ while ((e = pa_hashmap_steal_first(db->map)))
+ free_entry(e);
+
+ return 0;
+}
+
+signed pa_database_size(pa_database *database) {
+ simple_data *db = (simple_data*)database;
+ pa_assert(db);
+
+ return (signed) pa_hashmap_size(db->map);
+}
+
+pa_datum* pa_database_first(pa_database *database, pa_datum *key, pa_datum *data) {
+ simple_data *db = (simple_data*)database;
+ entry *e;
+
+ pa_assert(db);
+ pa_assert(key);
+
+ e = pa_hashmap_first(db->map);
+
+ if (!e)
+ return NULL;
+
+ key->data = e->key.size > 0 ? pa_xmemdup(e->key.data, e->key.size) : NULL;
+ key->size = e->key.size;
+
+ if (data) {
+ data->data = e->data.size > 0 ? pa_xmemdup(e->data.data, e->data.size) : NULL;
+ data->size = e->data.size;
+ }
+
+ return key;
+}
+
+pa_datum* pa_database_next(pa_database *database, const pa_datum *key, pa_datum *next, pa_datum *data) {
+ simple_data *db = (simple_data*)database;
+ entry *e;
+ entry *search;
+ void *state;
+ pa_bool_t pick_now;
+
+ pa_assert(db);
+ pa_assert(next);
+
+ if (!key)
+ return pa_database_first(database, next, data);
+
+ search = pa_hashmap_get(db->map, key);
+
+ state = NULL;
+ pick_now = FALSE;
+
+ while ((e = pa_hashmap_iterate(db->map, &state, NULL))) {
+ if (pick_now)
+ break;
+
+ if (search == e)
+ pick_now = TRUE;
+ }
+
+ if (!pick_now || !e)
+ return NULL;
+
+ next->data = e->key.size > 0 ? pa_xmemdup(e->key.data, e->key.size) : NULL;
+ next->size = e->key.size;
+
+ if (data) {
+ data->data = e->data.size > 0 ? pa_xmemdup(e->data.data, e->data.size) : NULL;
+ data->size = e->data.size;
+ }
+
+ return next;
+}
+
+static int write_uint(FILE *f, const uint32_t num) {
+ size_t items;
+ uint8_t values[4];
+ int i;
+ errno = 0;
+
+ for (i = 0; i < 4; i++)
+ values[i] = (num >> (i*8)) & 0xFF;
+
+ items = fwrite(&values, sizeof(values), sizeof(uint8_t), f);
+
+ if (ferror(f))
+ return -1;
+
+ return items;
+}
+
+static int write_data(FILE *f, void *data, const size_t length) {
+ size_t items;
+ uint32_t len;
+
+ len = length;
+ if ((items = write_uint(f, len)) <= 0)
+ return -1;
+
+ items = fwrite(data, length, 1, f);
+
+ if (ferror(f) || items != 1)
+ return -1;
+
+ return 0;
+}
+
+static int write_entry(FILE *f, const entry *e) {
+ pa_assert(f);
+ pa_assert(e);
+
+ if (write_data(f, e->key.data, e->key.size) < 0)
+ return -1;
+ if (write_data(f, e->data.data, e->data.size) < 0)
+ return -1;
+
+ return 0;
+}
+
+int pa_database_sync(pa_database *database) {
+ simple_data *db = (simple_data*)database;
+ FILE *f;
+ void *state;
+ entry *e;
+
+ pa_assert(db);
+
+ if (db->read_only)
+ return 0;
+
+ errno = 0;
+
+ f = fopen(db->tmp_filename, "w");
+
+ if (!f)
+ goto fail;
+
+ state = NULL;
+ while((e = pa_hashmap_iterate(db->map, &state, NULL))) {
+ if (write_entry(f, e) < 0) {
+ pa_log_warn("error while writing to file. %s", pa_cstrerror(errno));
+ goto fail;
+ }
+ }
+
+ fclose(f);
+ f = NULL;
+
+ if (rename(db->tmp_filename, db->filename) < 0) {
+ pa_log_warn("error while renaming file. %s", pa_cstrerror(errno));
+ goto fail;
+ }
+
+ return 0;
+
+fail:
+ if (f)
+ fclose(f);
+ return -1;
+}
diff --git a/src/pulsecore/dbus-util.c b/src/pulsecore/dbus-util.c
index 903acadb..b45e6a6c 100644
--- a/src/pulsecore/dbus-util.c
+++ b/src/pulsecore/dbus-util.c
@@ -667,7 +667,7 @@ void pa_dbus_append_proplist(DBusMessageIter *iter, pa_proplist *proplist) {
pa_assert_se(dbus_message_iter_open_container(iter, DBUS_TYPE_ARRAY, "{say}", &dict_iter));
- while ((key = pa_proplist_iterate(proplist, state))) {
+ while ((key = pa_proplist_iterate(proplist, &state))) {
const void *value = NULL;
size_t nbytes;
diff --git a/src/pulsecore/hook-list.c b/src/pulsecore/hook-list.c
index a00116d1..d9b9917d 100644
--- a/src/pulsecore/hook-list.c
+++ b/src/pulsecore/hook-list.c
@@ -97,7 +97,7 @@ pa_hook_result_t pa_hook_fire(pa_hook *hook, void *data) {
hook->n_firing ++;
- for (slot = hook->slots; slot; slot = slot->next) {
+ PA_LLIST_FOREACH(slot, hook->slots) {
if (slot->dead)
continue;
diff --git a/src/pulsecore/lock-autospawn.c b/src/pulsecore/lock-autospawn.c
index 4436974d..c0df7938 100644
--- a/src/pulsecore/lock-autospawn.c
+++ b/src/pulsecore/lock-autospawn.c
@@ -55,10 +55,16 @@ static pa_mutex *mutex;
static unsigned n_ref = 0;
static int lock_fd = -1;
static pa_mutex *lock_fd_mutex = NULL;
-static pa_bool_t taken = FALSE;
-static pa_thread *thread;
+static pa_thread *thread = NULL;
static int pipe_fd[2] = { -1, -1 };
+static enum {
+ STATE_IDLE,
+ STATE_OWNING,
+ STATE_TAKEN,
+ STATE_FAILED
+} state = STATE_IDLE;
+
static void destroy_mutex(void) PA_GCC_DESTRUCTOR;
static int ref(void) {
@@ -67,15 +73,16 @@ static int ref(void) {
pa_assert(pipe_fd[0] >= 0);
pa_assert(pipe_fd[1] >= 0);
+ pa_assert(lock_fd_mutex);
n_ref++;
return 0;
}
- pa_assert(lock_fd < 0);
pa_assert(!lock_fd_mutex);
- pa_assert(!taken);
+ pa_assert(state == STATE_IDLE);
+ pa_assert(lock_fd < 0);
pa_assert(!thread);
pa_assert(pipe_fd[0] < 0);
pa_assert(pipe_fd[1] < 0);
@@ -83,14 +90,14 @@ static int ref(void) {
if (pipe(pipe_fd) < 0)
return -1;
- lock_fd_mutex = pa_mutex_new(FALSE, FALSE);
-
pa_make_fd_cloexec(pipe_fd[0]);
pa_make_fd_cloexec(pipe_fd[1]);
pa_make_fd_nonblock(pipe_fd[1]);
pa_make_fd_nonblock(pipe_fd[0]);
+ lock_fd_mutex = pa_mutex_new(FALSE, FALSE);
+
n_ref = 1;
return 0;
}
@@ -107,15 +114,18 @@ static void unref(pa_bool_t after_fork) {
if (n_ref > 0)
return;
- pa_assert(!taken);
-
if (thread) {
pa_thread_free(thread);
thread = NULL;
}
pa_mutex_lock(lock_fd_mutex);
- if (lock_fd >= 0) {
+
+ pa_assert(state != STATE_TAKEN);
+
+ if (state == STATE_OWNING) {
+
+ pa_assert(lock_fd >= 0);
if (after_fork)
pa_close(lock_fd);
@@ -127,10 +137,12 @@ static void unref(pa_bool_t after_fork) {
pa_unlock_lockfile(lf, lock_fd);
pa_xfree(lf);
-
- lock_fd = -1;
}
}
+
+ lock_fd = -1;
+ state = STATE_IDLE;
+
pa_mutex_unlock(lock_fd_mutex);
pa_mutex_free(lock_fd_mutex);
@@ -205,15 +217,24 @@ static void thread_func(void *u) {
if (!(lf = pa_runtime_path(AUTOSPAWN_LOCK))) {
pa_log_warn(_("Cannot access autospawn lock."));
- goto finish;
+ goto fail;
}
if ((fd = pa_lock_lockfile(lf)) < 0)
- goto finish;
+ goto fail;
pa_mutex_lock(lock_fd_mutex);
- pa_assert(lock_fd < 0);
+ pa_assert(state == STATE_IDLE);
lock_fd = fd;
+ state = STATE_OWNING;
+ pa_mutex_unlock(lock_fd_mutex);
+
+ goto finish;
+
+fail:
+ pa_mutex_lock(lock_fd_mutex);
+ pa_assert(state == STATE_IDLE);
+ state = STATE_FAILED;
pa_mutex_unlock(lock_fd_mutex);
finish:
@@ -238,12 +259,10 @@ static void create_mutex(void) {
}
static void destroy_mutex(void) {
-
if (mutex)
pa_mutex_free(mutex);
}
-
int pa_autospawn_lock_init(void) {
int ret = -1;
@@ -273,13 +292,18 @@ int pa_autospawn_lock_acquire(pa_bool_t block) {
empty_pipe();
- if (lock_fd >= 0 && !taken) {
- taken = TRUE;
+ if (state == STATE_OWNING) {
+ state = STATE_TAKEN;
ret = 1;
break;
}
- if (lock_fd < 0)
+ if (state == STATE_FAILED) {
+ ret = -1;
+ break;
+ }
+
+ if (state == STATE_IDLE)
if (start_thread() < 0)
break;
@@ -310,8 +334,8 @@ void pa_autospawn_lock_release(void) {
pa_mutex_lock(mutex);
pa_assert(n_ref >= 1);
- pa_assert(taken);
- taken = FALSE;
+ pa_assert(state == STATE_TAKEN);
+ state = STATE_OWNING;
ping();
diff --git a/src/pulsecore/memblock.c b/src/pulsecore/memblock.c
index 9a57895b..441b397b 100644
--- a/src/pulsecore/memblock.c
+++ b/src/pulsecore/memblock.c
@@ -96,6 +96,7 @@ struct pa_memimport_segment {
unsigned n_blocks;
};
+/* A collection of multiple segments */
struct pa_memimport {
pa_mutex *mutex;
@@ -257,7 +258,8 @@ static struct mempool_slot* mempool_allocate_slot(pa_mempool *p) {
slot = (struct mempool_slot*) ((uint8_t*) p->memory.ptr + (p->block_size * (size_t) idx));
if (!slot) {
- pa_log_info("Pool full");
+ if (pa_log_ratelimit())
+ pa_log_debug("Pool full");
pa_atomic_inc(&p->stat.n_pool_full);
return NULL;
}
@@ -509,13 +511,16 @@ static void memblock_free(pa_memblock *b) {
/* FIXME! This should be implemented lock-free */
- segment = b->per_type.imported.segment;
- pa_assert(segment);
- import = segment->import;
- pa_assert(import);
+ pa_assert_se(segment = b->per_type.imported.segment);
+ pa_assert_se(import = segment->import);
pa_mutex_lock(import->mutex);
- pa_hashmap_remove(import->blocks, PA_UINT32_TO_PTR(b->per_type.imported.id));
+
+ pa_assert_se(pa_hashmap_remove(
+ import->blocks,
+ PA_UINT32_TO_PTR(b->per_type.imported.id)));
+
+ pa_assert(segment->n_blocks >= 1);
if (-- segment->n_blocks <= 0)
segment_detach(segment);
@@ -525,6 +530,7 @@ static void memblock_free(pa_memblock *b) {
if (pa_flist_push(PA_STATIC_FLIST_GET(unused_memblocks), b) < 0)
pa_xfree(b);
+
break;
}
@@ -657,7 +663,8 @@ pa_memblock *pa_memblock_will_need(pa_memblock *b) {
/* Self-locked. This function is not multiple-caller safe */
static void memblock_replace_import(pa_memblock *b) {
- pa_memimport_segment *seg;
+ pa_memimport_segment *segment;
+ pa_memimport *import;
pa_assert(b);
pa_assert(b->type == PA_MEMBLOCK_IMPORTED);
@@ -667,23 +674,22 @@ static void memblock_replace_import(pa_memblock *b) {
pa_atomic_dec(&b->pool->stat.n_imported);
pa_atomic_sub(&b->pool->stat.imported_size, (int) b->length);
- seg = b->per_type.imported.segment;
- pa_assert(seg);
- pa_assert(seg->import);
+ pa_assert_se(segment = b->per_type.imported.segment);
+ pa_assert_se(import = segment->import);
- pa_mutex_lock(seg->import->mutex);
+ pa_mutex_lock(import->mutex);
- pa_hashmap_remove(
- seg->import->blocks,
- PA_UINT32_TO_PTR(b->per_type.imported.id));
+ pa_assert_se(pa_hashmap_remove(
+ import->blocks,
+ PA_UINT32_TO_PTR(b->per_type.imported.id)));
memblock_make_local(b);
- if (-- seg->n_blocks <= 0) {
- pa_mutex_unlock(seg->import->mutex);
- segment_detach(seg);
- } else
- pa_mutex_unlock(seg->import->mutex);
+ pa_assert(segment->n_blocks >= 1);
+ if (-- segment->n_blocks <= 0)
+ segment_detach(segment);
+
+ pa_mutex_unlock(import->mutex);
}
pa_mempool* pa_mempool_new(pa_bool_t shared, size_t size) {
@@ -956,6 +962,11 @@ pa_memblock* pa_memimport_get(pa_memimport *i, uint32_t block_id, uint32_t shm_i
pa_mutex_lock(i->mutex);
+ if ((b = pa_hashmap_get(i->blocks, PA_UINT32_TO_PTR(block_id)))) {
+ pa_memblock_ref(b);
+ goto finish;
+ }
+
if (pa_hashmap_size(i->blocks) >= PA_MEMIMPORT_SLOTS_MAX)
goto finish;
@@ -985,12 +996,11 @@ pa_memblock* pa_memimport_get(pa_memimport *i, uint32_t block_id, uint32_t shm_i
seg->n_blocks++;
+ stat_add(b);
+
finish:
pa_mutex_unlock(i->mutex);
- if (b)
- stat_add(b);
-
return b;
}
diff --git a/src/pulsecore/memblockq.c b/src/pulsecore/memblockq.c
index 77f9efc9..32758be3 100644
--- a/src/pulsecore/memblockq.c
+++ b/src/pulsecore/memblockq.c
@@ -692,6 +692,12 @@ size_t pa_memblockq_get_minreq(pa_memblockq *bq) {
return bq->minreq;
}
+size_t pa_memblockq_get_maxrewind(pa_memblockq *bq) {
+ pa_assert(bq);
+
+ return bq->maxrewind;
+}
+
int64_t pa_memblockq_get_read_index(pa_memblockq *bq) {
pa_assert(bq);
diff --git a/src/pulsecore/memblockq.h b/src/pulsecore/memblockq.h
index 146d261b..587c364b 100644
--- a/src/pulsecore/memblockq.h
+++ b/src/pulsecore/memblockq.h
@@ -141,6 +141,9 @@ size_t pa_memblockq_get_prebuf(pa_memblockq *bq);
/* Returns the minimal request value */
size_t pa_memblockq_get_minreq(pa_memblockq *bq);
+/* Returns the maximal rewind value */
+size_t pa_memblockq_get_maxrewind(pa_memblockq *bq);
+
/* Return the base unit in bytes */
size_t pa_memblockq_get_base(pa_memblockq *bq);
diff --git a/src/pulsecore/memtrap.c b/src/pulsecore/memtrap.c
index e06f60ca..c647e507 100644
--- a/src/pulsecore/memtrap.c
+++ b/src/pulsecore/memtrap.c
@@ -37,6 +37,7 @@
#include
#include
#include
+#include
#include "memtrap.h"
@@ -49,6 +50,7 @@ struct pa_memtrap {
static pa_memtrap *memtraps[2] = { NULL, NULL };
static pa_aupdate *aupdate;
+static pa_static_mutex mutex = PA_STATIC_MUTEX_INIT; /* only required to serialize access to the write side */
static void allocate_aupdate(void) {
PA_ONCE_BEGIN {
@@ -63,7 +65,7 @@ pa_bool_t pa_memtrap_is_good(pa_memtrap *m) {
}
static void sigsafe_error(const char *s) {
- write(STDERR_FILENO, s, strlen(s));
+ (void) write(STDERR_FILENO, s, strlen(s));
}
static void signal_handler(int sig, siginfo_t* si, void *data) {
@@ -124,6 +126,7 @@ static void memtrap_unlink(pa_memtrap *m, unsigned j) {
pa_memtrap* pa_memtrap_add(const void *start, size_t size) {
pa_memtrap *m = NULL;
unsigned j;
+ pa_mutex *mx;
pa_assert(start);
pa_assert(size > 0);
@@ -138,33 +141,45 @@ pa_memtrap* pa_memtrap_add(const void *start, size_t size) {
allocate_aupdate();
+ mx = pa_static_mutex_get(&mutex, FALSE, TRUE);
+ pa_mutex_lock(mx);
+
j = pa_aupdate_write_begin(aupdate);
memtrap_link(m, j);
j = pa_aupdate_write_swap(aupdate);
memtrap_link(m, j);
pa_aupdate_write_end(aupdate);
+ pa_mutex_unlock(mx);
+
return m;
}
void pa_memtrap_remove(pa_memtrap *m) {
unsigned j;
+ pa_mutex *mx;
pa_assert(m);
allocate_aupdate();
+ mx = pa_static_mutex_get(&mutex, FALSE, TRUE);
+ pa_mutex_lock(mx);
+
j = pa_aupdate_write_begin(aupdate);
memtrap_unlink(m, j);
j = pa_aupdate_write_swap(aupdate);
memtrap_unlink(m, j);
pa_aupdate_write_end(aupdate);
+ pa_mutex_unlock(mx);
+
pa_xfree(m);
}
pa_memtrap *pa_memtrap_update(pa_memtrap *m, const void *start, size_t size) {
unsigned j;
+ pa_mutex *mx;
pa_assert(m);
@@ -176,6 +191,9 @@ pa_memtrap *pa_memtrap_update(pa_memtrap *m, const void *start, size_t size) {
allocate_aupdate();
+ mx = pa_static_mutex_get(&mutex, FALSE, TRUE);
+ pa_mutex_lock(mx);
+
j = pa_aupdate_write_begin(aupdate);
if (m->start == start && m->size == size)
@@ -194,6 +212,8 @@ pa_memtrap *pa_memtrap_update(pa_memtrap *m, const void *start, size_t size) {
unlock:
pa_aupdate_write_end(aupdate);
+ pa_mutex_unlock(mx);
+
return m;
}
diff --git a/src/pulsecore/namereg.c b/src/pulsecore/namereg.c
index 046c87b2..d7d83c5e 100644
--- a/src/pulsecore/namereg.c
+++ b/src/pulsecore/namereg.c
@@ -167,26 +167,33 @@ void pa_namereg_unregister(pa_core *c, const char *name) {
pa_assert_se(e = pa_hashmap_remove(c->namereg, name));
if (c->default_sink == e->data) {
- pa_sink *new_default = pa_idxset_first(c->sinks, &idx);
+ pa_sink *new_default = NULL;
- if (new_default == e->data)
- new_default = pa_idxset_next(c->sinks, &idx);
+ /* FIXME: the selection here should be based priority values on
+ * the sinks */
+
+ PA_IDXSET_FOREACH(new_default, c->sinks, idx) {
+ if (new_default != e->data && PA_SINK_IS_LINKED(pa_sink_get_state(new_default)))
+ break;
+ }
pa_namereg_set_default_sink(c, new_default);
} else if (c->default_source == e->data) {
- pa_source *new_default;
+ pa_source *new_default = NULL;
- for (new_default = pa_idxset_first(c->sources, &idx); new_default; new_default = pa_idxset_next(c->sources, &idx)) {
- if (new_default != e->data && !new_default->monitor_of)
+ /* First, try to find one that isn't a monitor */
+ PA_IDXSET_FOREACH(new_default, c->sources, idx) {
+ if (new_default != e->data && !new_default->monitor_of && PA_SOURCE_IS_LINKED(pa_source_get_state(new_default)))
break;
}
if (!new_default) {
- new_default = pa_idxset_first(c->sources, &idx);
-
- if (new_default == e->data)
- new_default = pa_idxset_next(c->sources, &idx);
+ /* Then, fallback to a monitor */
+ PA_IDXSET_FOREACH(new_default, c->sources, idx) {
+ if (new_default != e->data && PA_SOURCE_IS_LINKED(pa_source_get_state(new_default)))
+ break;
+ }
}
pa_namereg_set_default_source(c, new_default);
@@ -249,6 +256,9 @@ void* pa_namereg_get(pa_core *c, const char *name, pa_namereg_type_t type) {
pa_sink* pa_namereg_set_default_sink(pa_core*c, pa_sink *s) {
pa_assert(c);
+ if (s && !PA_SINK_IS_LINKED(pa_sink_get_state(s)))
+ return NULL;
+
if (c->default_sink != s) {
c->default_sink = s;
pa_subscription_post(c, PA_SUBSCRIPTION_EVENT_SERVER|PA_SUBSCRIPTION_EVENT_CHANGE, PA_INVALID_INDEX);
@@ -260,6 +270,9 @@ pa_sink* pa_namereg_set_default_sink(pa_core*c, pa_sink *s) {
pa_source* pa_namereg_set_default_source(pa_core*c, pa_source *s) {
pa_assert(c);
+ if (s && !PA_SOURCE_IS_LINKED(pa_source_get_state(s)))
+ return NULL;
+
if (c->default_source != s) {
c->default_source = s;
pa_subscription_post(c, PA_SUBSCRIPTION_EVENT_SERVER|PA_SUBSCRIPTION_EVENT_CHANGE, PA_INVALID_INDEX);
@@ -270,14 +283,47 @@ pa_source* pa_namereg_set_default_source(pa_core*c, pa_source *s) {
/* XXX: After removing old functionality, has this function become useless? */
pa_sink *pa_namereg_get_default_sink(pa_core *c) {
+ pa_sink *s;
+ uint32_t idx;
+
pa_assert(c);
- return c->default_sink;
+ if (!c->default_sink || PA_SINK_IS_LINKED(pa_sink_get_state(c->default_sink)))
+ return c->default_sink;
+
+ /* The old default sink has become unlinked, set a new one. */
+
+ /* FIXME: the selection here should be based priority values on
+ * the sinks */
+
+ PA_IDXSET_FOREACH(s, c->sinks, idx)
+ if (PA_SINK_IS_LINKED(pa_sink_get_state(s)))
+ return pa_namereg_set_default_sink(c, s);
+
+ return pa_namereg_set_default_sink(c, NULL);
}
/* XXX: After removing old functionality, has this function become useless? */
pa_source *pa_namereg_get_default_source(pa_core *c) {
+ pa_source *s;
+ uint32_t idx;
+
pa_assert(c);
- return c->default_source;
+ if (!c->default_source || PA_SOURCE_IS_LINKED(pa_source_get_state(c->default_source)))
+ return c->default_source;
+
+ /* The old default source has become unlinked, set a new one. */
+
+ /* First, try to find one that isn't a monitor */
+ PA_IDXSET_FOREACH(s, c->sources, idx)
+ if (!s->monitor_of && PA_SOURCE_IS_LINKED(pa_source_get_state(s)))
+ return pa_namereg_set_default_source(c, s);
+
+ /* Then, fallback to a monitor */
+ PA_IDXSET_FOREACH(s, c->sources, idx)
+ if (PA_SOURCE_IS_LINKED(pa_source_get_state(s)))
+ return pa_namereg_set_default_source(c, s);
+
+ return pa_namereg_set_default_source(c, NULL);
}
diff --git a/src/pulsecore/proplist-util.c b/src/pulsecore/proplist-util.c
index d9769bc7..23864bcb 100644
--- a/src/pulsecore/proplist-util.c
+++ b/src/pulsecore/proplist-util.c
@@ -186,10 +186,12 @@ void pa_init_proplist(pa_proplist *p) {
}
if (!pa_proplist_contains(p, PA_PROP_APPLICATION_PROCESS_BINARY)) {
- char t[PATH_MAX];
- if (pa_get_binary_name(t, sizeof(t))) {
+ char *t;
+
+ if ((t = pa_get_binary_name_malloc())) {
char *c = pa_utf8_filter(t);
pa_proplist_sets(p, PA_PROP_APPLICATION_PROCESS_BINARY, c);
+ pa_xfree(t);
pa_xfree(c);
}
}
diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c
index cda7ef57..280707e2 100644
--- a/src/pulsecore/protocol-native.c
+++ b/src/pulsecore/protocol-native.c
@@ -762,6 +762,7 @@ static int playback_stream_process_msg(pa_msgobject *o, int code, void*userdata,
return -1;
switch (code) {
+
case PLAYBACK_STREAM_MESSAGE_REQUEST_DATA: {
pa_tagstruct *t;
int l = 0;
@@ -1130,6 +1131,12 @@ static void playback_stream_request_bytes(playback_stream *s) {
m = pa_memblockq_pop_missing(s->memblockq);
+ /* pa_log("request_bytes(%lu) (tlength=%lu minreq=%lu length=%lu)", */
+ /* (unsigned long) m, */
+ /* pa_memblockq_get_tlength(s->memblockq), */
+ /* pa_memblockq_get_minreq(s->memblockq), */
+ /* pa_memblockq_get_length(s->memblockq)); */
+
if (m <= 0)
return;
@@ -1143,7 +1150,6 @@ static void playback_stream_request_bytes(playback_stream *s) {
pa_asyncmsgq_post(pa_thread_mq_get()->outq, PA_MSGOBJECT(s), PLAYBACK_STREAM_MESSAGE_REQUEST_DATA, NULL, 0, NULL, NULL);
}
-
/* Called from main context */
static void playback_stream_send_killed(playback_stream *p) {
pa_tagstruct *t;
@@ -1345,7 +1351,9 @@ static int sink_input_process_msg(pa_msgobject *o, int code, void *userdata, int
/* pa_log("sink input post: %lu %lli", (unsigned long) chunk->length, (long long) windex); */
if (pa_memblockq_push_align(s->memblockq, chunk) < 0) {
- pa_log_warn("Failed to push data into queue");
+
+ if (pa_log_ratelimit())
+ pa_log_warn("Failed to push data into queue");
pa_asyncmsgq_post(pa_thread_mq_get()->outq, PA_MSGOBJECT(s), PLAYBACK_STREAM_MESSAGE_OVERFLOW, NULL, 0, NULL, NULL);
pa_memblockq_seek(s->memblockq, (int64_t) chunk->length, PA_SEEK_RELATIVE, TRUE);
}
@@ -1617,6 +1625,9 @@ static void sink_input_moving_cb(pa_sink_input *i, pa_sink *dest) {
s = PLAYBACK_STREAM(i->userdata);
playback_stream_assert_ref(s);
+ if (!dest)
+ return;
+
fix_playback_buffer_attr(s);
pa_memblockq_apply_attr(s->memblockq, &s->buffer_attr);
pa_memblockq_get_attr(s->memblockq, &s->buffer_attr);
@@ -1752,6 +1763,9 @@ static void source_output_moving_cb(pa_source_output *o, pa_source *dest) {
s = RECORD_STREAM(o->userdata);
record_stream_assert_ref(s);
+ if (!dest)
+ return;
+
fix_record_buffer_attr_pre(s);
pa_memblockq_set_maxlength(s->memblockq, s->buffer_attr.maxlength);
pa_memblockq_get_attr(s->memblockq, &s->buffer_attr);
@@ -1951,7 +1965,7 @@ static void command_create_playback_stream(pa_pdispatch *pd, uint32_t command, u
(no_move ? PA_SINK_INPUT_DONT_MOVE : 0) |
(variable_rate ? PA_SINK_INPUT_VARIABLE_RATE : 0) |
(dont_inhibit_auto_suspend ? PA_SINK_INPUT_DONT_INHIBIT_AUTO_SUSPEND : 0) |
- (fail_on_suspend ? PA_SINK_INPUT_FAIL_ON_SUSPEND : 0);
+ (fail_on_suspend ? PA_SINK_INPUT_NO_CREATE_ON_SUSPEND|PA_SINK_INPUT_KILL_ON_SUSPEND : 0);
/* Only since protocol version 15 there's a seperate muted_set
* flag. For older versions we synthesize it here */
@@ -2207,7 +2221,7 @@ static void command_create_record_stream(pa_pdispatch *pd, uint32_t command, uin
(no_move ? PA_SOURCE_OUTPUT_DONT_MOVE : 0) |
(variable_rate ? PA_SOURCE_OUTPUT_VARIABLE_RATE : 0) |
(dont_inhibit_auto_suspend ? PA_SOURCE_OUTPUT_DONT_INHIBIT_AUTO_SUSPEND : 0) |
- (fail_on_suspend ? PA_SOURCE_OUTPUT_FAIL_ON_SUSPEND : 0);
+ (fail_on_suspend ? PA_SOURCE_OUTPUT_NO_CREATE_ON_SUSPEND|PA_SOURCE_OUTPUT_KILL_ON_SUSPEND : 0);
s = record_stream_new(c, source, &ss, &map, peak_detect, &attr, flags, p, adjust_latency, direct_on_input, early_requests, &ret);
pa_proplist_free(p);
@@ -2550,7 +2564,7 @@ static void command_get_playback_latency(pa_pdispatch *pd, uint32_t command, uin
reply = reply_new(tag);
pa_tagstruct_put_usec(reply,
s->current_sink_latency +
- pa_bytes_to_usec(s->render_memblockq_length, &s->sink_input->sample_spec));
+ pa_bytes_to_usec(s->render_memblockq_length, &s->sink_input->sink->sample_spec));
pa_tagstruct_put_usec(reply, 0);
pa_tagstruct_put_boolean(reply,
s->playing_for > 0 &&
@@ -2689,7 +2703,9 @@ static void command_finish_upload_stream(pa_pdispatch *pd, uint32_t command, uin
CHECK_VALIDITY(c->pstream, s, tag, PA_ERR_NOENTITY);
CHECK_VALIDITY(c->pstream, upload_stream_isinstance(s), tag, PA_ERR_NOENTITY);
- if (pa_scache_add_item(c->protocol->core, s->name, &s->sample_spec, &s->channel_map, &s->memchunk, s->proplist, &idx) < 0)
+ if (!s->memchunk.memblock)
+ pa_pstream_send_error(c->pstream, tag, PA_ERR_TOOLARGE);
+ else if (pa_scache_add_item(c->protocol->core, s->name, &s->sample_spec, &s->channel_map, &s->memchunk, s->proplist, &idx) < 0)
pa_pstream_send_error(c->pstream, tag, PA_ERR_INTERNAL);
else
pa_pstream_send_simple_ack(c->pstream, tag);
@@ -3321,6 +3337,7 @@ static void command_set_volume(
pa_source *source = NULL;
pa_sink_input *si = NULL;
const char *name = NULL;
+ const char *client_name;
pa_native_connection_assert_ref(c);
pa_assert(t);
@@ -3367,12 +3384,20 @@ static void command_set_volume(
CHECK_VALIDITY(c->pstream, si || sink || source, tag, PA_ERR_NOENTITY);
- if (sink)
+ client_name = pa_strnull(pa_proplist_gets(c->client->proplist, PA_PROP_APPLICATION_PROCESS_BINARY));
+
+ if (sink) {
+ pa_log_debug("Client %s changes volume of sink %s.", client_name, sink->name);
pa_sink_set_volume(sink, &volume, TRUE, TRUE, TRUE, TRUE);
- else if (source)
+ } else if (source) {
+ pa_log_debug("Client %s changes volume of sink %s.", client_name, source->name);
pa_source_set_volume(source, &volume, TRUE);
- else if (si)
+ } else if (si) {
+ pa_log_debug("Client %s changes volume of sink %s.",
+ client_name,
+ pa_strnull(pa_proplist_gets(si->proplist, PA_PROP_MEDIA_NAME)));
pa_sink_input_set_volume(si, &volume, TRUE, TRUE);
+ }
pa_pstream_send_simple_ack(c->pstream, tag);
}
diff --git a/src/pulsecore/resampler.c b/src/pulsecore/resampler.c
index 17fb8480..59e0a0c1 100644
--- a/src/pulsecore/resampler.c
+++ b/src/pulsecore/resampler.c
@@ -347,13 +347,17 @@ void pa_resampler_set_output_rate(pa_resampler *r, uint32_t rate) {
size_t pa_resampler_request(pa_resampler *r, size_t out_length) {
pa_assert(r);
- return (((out_length / r->o_fz)*r->i_ss.rate)/r->o_ss.rate) * r->i_fz;
+ /* Let's round up here */
+
+ return (((((out_length + r->o_fz-1) / r->o_fz) * r->i_ss.rate) + r->o_ss.rate-1) / r->o_ss.rate) * r->i_fz;
}
size_t pa_resampler_result(pa_resampler *r, size_t in_length) {
pa_assert(r);
- return (((in_length / r->i_fz)*r->o_ss.rate)/r->i_ss.rate) * r->o_fz;
+ /* Let's round up here */
+
+ return (((((in_length + r->i_fz-1) / r->i_fz) * r->o_ss.rate) + r->i_ss.rate-1) / r->i_ss.rate) * r->o_fz;
}
size_t pa_resampler_max_block_size(pa_resampler *r) {
diff --git a/src/pulsecore/shm.c b/src/pulsecore/shm.c
index 6e428426..fbf777a4 100644
--- a/src/pulsecore/shm.c
+++ b/src/pulsecore/shm.c
@@ -60,7 +60,8 @@
#define MADV_REMOVE 9
#endif
-#define MAX_SHM_SIZE (PA_ALIGN(1024*1024*64))
+/* 1 GiB at max */
+#define MAX_SHM_SIZE (PA_ALIGN(1024*1024*1024))
#ifdef __linux__
/* On Linux we know that the shared memory blocks are files in
diff --git a/src/pulsecore/sink-input.c b/src/pulsecore/sink-input.c
index a5f96351..f6d9ac73 100644
--- a/src/pulsecore/sink-input.c
+++ b/src/pulsecore/sink-input.c
@@ -51,7 +51,7 @@ static void sink_input_free(pa_object *o);
pa_sink_input_new_data* pa_sink_input_new_data_init(pa_sink_input_new_data *data) {
pa_assert(data);
- memset(data, 0, sizeof(*data));
+ pa_zero(*data);
data->resample_method = PA_RESAMPLER_INVALID;
data->proplist = pa_proplist_new();
@@ -114,6 +114,7 @@ static void reset_callbacks(pa_sink_input *i) {
i->update_max_request = NULL;
i->update_sink_requested_latency = NULL;
i->update_sink_latency_range = NULL;
+ i->update_sink_fixed_latency = NULL;
i->attach = NULL;
i->detach = NULL;
i->suspend = NULL;
@@ -142,6 +143,7 @@ int pa_sink_input_new(
pa_assert(_i);
pa_assert(core);
pa_assert(data);
+ pa_assert_ctl_context();
if (data->client)
pa_proplist_update(data->proplist, PA_UPDATE_MERGE, data->client->proplist);
@@ -220,7 +222,7 @@ int pa_sink_input_new(
if ((r = pa_hook_fire(&core->hooks[PA_CORE_HOOK_SINK_INPUT_FIXATE], data)) < 0)
return r;
- if ((flags & PA_SINK_INPUT_FAIL_ON_SUSPEND) &&
+ if ((flags & PA_SINK_INPUT_NO_CREATE_ON_SUSPEND) &&
pa_sink_get_state(data->sink) == PA_SINK_SUSPENDED) {
pa_log_warn("Failed to create sink input: sink is suspended.");
return -PA_ERR_BADSTATE;
@@ -348,6 +350,7 @@ int pa_sink_input_new(
/* Called from main context */
static void update_n_corked(pa_sink_input *i, pa_sink_input_state_t state) {
pa_assert(i);
+ pa_assert_ctl_context();
if (!i->sink)
return;
@@ -362,6 +365,7 @@ static void update_n_corked(pa_sink_input *i, pa_sink_input_state_t state) {
static void sink_input_set_state(pa_sink_input *i, pa_sink_input_state_t state) {
pa_sink_input *ssync;
pa_assert(i);
+ pa_assert_ctl_context();
if (state == PA_SINK_INPUT_DRAINED)
state = PA_SINK_INPUT_RUNNING;
@@ -400,7 +404,9 @@ static void sink_input_set_state(pa_sink_input *i, pa_sink_input_state_t state)
void pa_sink_input_unlink(pa_sink_input *i) {
pa_bool_t linked;
pa_source_output *o, *p = NULL;
+
pa_assert(i);
+ pa_assert_ctl_context();
/* See pa_sink_unlink() for a couple of comments how this function
* works */
@@ -471,6 +477,7 @@ static void sink_input_free(pa_object *o) {
pa_sink_input* i = PA_SINK_INPUT(o);
pa_assert(i);
+ pa_assert_ctl_context();
pa_assert(pa_sink_input_refcnt(i) == 0);
if (PA_SINK_INPUT_IS_LINKED(i->state))
@@ -502,7 +509,9 @@ static void sink_input_free(pa_object *o) {
/* Called from main context */
void pa_sink_input_put(pa_sink_input *i) {
pa_sink_input_state_t state;
+
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(i->state == PA_SINK_INPUT_INIT);
@@ -538,6 +547,7 @@ void pa_sink_input_put(pa_sink_input *i) {
/* Called from main context */
void pa_sink_input_kill(pa_sink_input*i) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
i->kill(i);
@@ -548,6 +558,7 @@ pa_usec_t pa_sink_input_get_latency(pa_sink_input *i, pa_usec_t *sink_latency) {
pa_usec_t r[2] = { 0, 0 };
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_assert_se(pa_asyncmsgq_send(i->sink->asyncmsgq, PA_MSGOBJECT(i), PA_SINK_INPUT_MESSAGE_GET_LATENCY, r, 0, NULL) == 0);
@@ -569,6 +580,7 @@ void pa_sink_input_peek(pa_sink_input *i, size_t slength /* in sink frames */, p
size_t ilength;
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
pa_assert(PA_SINK_INPUT_IS_LINKED(i->thread_info.state));
pa_assert(pa_frame_aligned(slength, &i->sink->sample_spec));
pa_assert(chunk);
@@ -706,8 +718,9 @@ void pa_sink_input_peek(pa_sink_input *i, size_t slength /* in sink frames */, p
/* Called from thread context */
void pa_sink_input_drop(pa_sink_input *i, size_t nbytes /* in sink sample spec */) {
- pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
pa_assert(PA_SINK_INPUT_IS_LINKED(i->thread_info.state));
pa_assert(pa_frame_aligned(nbytes, &i->sink->sample_spec));
pa_assert(nbytes > 0);
@@ -721,8 +734,9 @@ void pa_sink_input_drop(pa_sink_input *i, size_t nbytes /* in sink sample spec *
void pa_sink_input_process_rewind(pa_sink_input *i, size_t nbytes /* in sink sample spec */) {
size_t lbq;
pa_bool_t called = FALSE;
- pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
pa_assert(PA_SINK_INPUT_IS_LINKED(i->thread_info.state));
pa_assert(pa_frame_aligned(nbytes, &i->sink->sample_spec));
@@ -789,9 +803,29 @@ void pa_sink_input_process_rewind(pa_sink_input *i, size_t nbytes /* in sink sam
i->thread_info.dont_rewind_render = FALSE;
}
+/* Called from thread context */
+size_t pa_sink_input_get_max_rewind(pa_sink_input *i) {
+ pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
+
+ return i->thread_info.resampler ? pa_resampler_request(i->thread_info.resampler, i->sink->thread_info.max_rewind) : i->sink->thread_info.max_rewind;
+}
+
+/* Called from thread context */
+size_t pa_sink_input_get_max_request(pa_sink_input *i) {
+ pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
+
+ /* We're not verifying the status here, to allow this to be called
+ * in the state change handler between _INIT and _RUNNING */
+
+ return i->thread_info.resampler ? pa_resampler_request(i->thread_info.resampler, i->sink->thread_info.max_request) : i->sink->thread_info.max_request;
+}
+
/* Called from thread context */
void pa_sink_input_update_max_rewind(pa_sink_input *i, size_t nbytes /* in the sink's sample spec */) {
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
pa_assert(PA_SINK_INPUT_IS_LINKED(i->thread_info.state));
pa_assert(pa_frame_aligned(nbytes, &i->sink->sample_spec));
@@ -804,6 +838,7 @@ void pa_sink_input_update_max_rewind(pa_sink_input *i, size_t nbytes /* in the
/* Called from thread context */
void pa_sink_input_update_max_request(pa_sink_input *i, size_t nbytes /* in the sink's sample spec */) {
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
pa_assert(PA_SINK_INPUT_IS_LINKED(i->thread_info.state));
pa_assert(pa_frame_aligned(nbytes, &i->sink->sample_spec));
@@ -814,15 +849,16 @@ void pa_sink_input_update_max_request(pa_sink_input *i, size_t nbytes /* in the
/* Called from thread context */
pa_usec_t pa_sink_input_set_requested_latency_within_thread(pa_sink_input *i, pa_usec_t usec) {
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
if (!(i->sink->flags & PA_SINK_DYNAMIC_LATENCY))
- usec = i->sink->fixed_latency;
+ usec = i->sink->thread_info.fixed_latency;
if (usec != (pa_usec_t) -1)
usec = PA_CLAMP(usec, i->sink->thread_info.min_latency, i->sink->thread_info.max_latency);
i->thread_info.requested_sink_latency = usec;
- pa_sink_invalidate_requested_latency(i->sink);
+ pa_sink_invalidate_requested_latency(i->sink, TRUE);
return usec;
}
@@ -830,6 +866,7 @@ pa_usec_t pa_sink_input_set_requested_latency_within_thread(pa_sink_input *i, pa
/* Called from main context */
pa_usec_t pa_sink_input_set_requested_latency(pa_sink_input *i, pa_usec_t usec) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
if (PA_SINK_INPUT_IS_LINKED(i->state) && i->sink) {
pa_assert_se(pa_asyncmsgq_send(i->sink->asyncmsgq, PA_MSGOBJECT(i), PA_SINK_INPUT_MESSAGE_SET_REQUESTED_LATENCY, &usec, 0, NULL) == 0);
@@ -841,7 +878,7 @@ pa_usec_t pa_sink_input_set_requested_latency(pa_sink_input *i, pa_usec_t usec)
if (i->sink) {
if (!(i->sink->flags & PA_SINK_DYNAMIC_LATENCY))
- usec = i->sink->fixed_latency;
+ usec = pa_sink_get_fixed_latency(i->sink);
if (usec != (pa_usec_t) -1) {
pa_usec_t min_latency, max_latency;
@@ -858,6 +895,7 @@ pa_usec_t pa_sink_input_set_requested_latency(pa_sink_input *i, pa_usec_t usec)
/* Called from main context */
pa_usec_t pa_sink_input_get_requested_latency(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
if (PA_SINK_INPUT_IS_LINKED(i->state) && i->sink) {
pa_usec_t usec = 0;
@@ -876,6 +914,7 @@ void pa_sink_input_set_volume(pa_sink_input *i, const pa_cvolume *volume, pa_boo
pa_cvolume v;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_assert(volume);
pa_assert(pa_cvolume_valid(volume));
@@ -922,6 +961,7 @@ void pa_sink_input_set_volume(pa_sink_input *i, const pa_cvolume *volume, pa_boo
/* Called from main context */
pa_cvolume *pa_sink_input_get_volume(pa_sink_input *i, pa_cvolume *volume, pa_bool_t absolute) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
if ((i->sink->flags & PA_SINK_FLAT_VOLUME) && !absolute) {
@@ -939,6 +979,7 @@ pa_cvolume *pa_sink_input_get_relative_volume(pa_sink_input *i, pa_cvolume *v) {
unsigned c;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(v);
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
@@ -959,6 +1000,7 @@ void pa_sink_input_set_relative_volume(pa_sink_input *i, const pa_cvolume *v) {
pa_cvolume _v;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_assert(!v || pa_cvolume_compatible(v, &i->sample_spec));
@@ -985,8 +1027,8 @@ void pa_sink_input_set_relative_volume(pa_sink_input *i, const pa_cvolume *v) {
/* Called from main context */
void pa_sink_input_set_mute(pa_sink_input *i, pa_bool_t mute, pa_bool_t save) {
- pa_assert(i);
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
if (!i->muted == !mute)
@@ -1002,6 +1044,7 @@ void pa_sink_input_set_mute(pa_sink_input *i, pa_bool_t mute, pa_bool_t save) {
/* Called from main context */
pa_bool_t pa_sink_input_get_mute(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
return i->muted;
@@ -1010,6 +1053,7 @@ pa_bool_t pa_sink_input_get_mute(pa_sink_input *i) {
/* Called from main thread */
void pa_sink_input_update_proplist(pa_sink_input *i, pa_update_mode_t mode, pa_proplist *p) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
if (p)
pa_proplist_update(i->proplist, mode, p);
@@ -1023,6 +1067,7 @@ void pa_sink_input_update_proplist(pa_sink_input *i, pa_update_mode_t mode, pa_p
/* Called from main context */
void pa_sink_input_cork(pa_sink_input *i, pa_bool_t b) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
sink_input_set_state(i, b ? PA_SINK_INPUT_CORKED : PA_SINK_INPUT_RUNNING);
@@ -1031,6 +1076,7 @@ void pa_sink_input_cork(pa_sink_input *i, pa_bool_t b) {
/* Called from main context */
int pa_sink_input_set_rate(pa_sink_input *i, uint32_t rate) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_return_val_if_fail(i->thread_info.resampler, -PA_ERR_BADSTATE);
@@ -1049,13 +1095,14 @@ int pa_sink_input_set_rate(pa_sink_input *i, uint32_t rate) {
void pa_sink_input_set_name(pa_sink_input *i, const char *name) {
const char *old;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
if (!name && !pa_proplist_contains(i->proplist, PA_PROP_MEDIA_NAME))
return;
old = pa_proplist_gets(i->proplist, PA_PROP_MEDIA_NAME);
- if (old && name && !strcmp(old, name))
+ if (old && name && pa_streq(old, name))
return;
if (name)
@@ -1072,6 +1119,7 @@ void pa_sink_input_set_name(pa_sink_input *i, const char *name) {
/* Called from main context */
pa_resample_method_t pa_sink_input_get_resample_method(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
return i->actual_resample_method;
}
@@ -1079,6 +1127,7 @@ pa_resample_method_t pa_sink_input_get_resample_method(pa_sink_input *i) {
/* Called from main context */
pa_bool_t pa_sink_input_may_move(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
if (i->flags & PA_SINK_INPUT_DONT_MOVE)
@@ -1095,6 +1144,7 @@ pa_bool_t pa_sink_input_may_move(pa_sink_input *i) {
/* Called from main context */
pa_bool_t pa_sink_input_may_move_to(pa_sink_input *i, pa_sink *dest) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_sink_assert_ref(dest);
@@ -1123,6 +1173,7 @@ int pa_sink_input_start_move(pa_sink_input *i) {
int r;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_assert(i->sink);
@@ -1177,6 +1228,7 @@ int pa_sink_input_finish_move(pa_sink_input *i, pa_sink *dest, pa_bool_t save) {
pa_resampler *new_resampler;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_assert(!i->sink);
pa_sink_assert_ref(dest);
@@ -1266,11 +1318,30 @@ int pa_sink_input_finish_move(pa_sink_input *i, pa_sink *dest, pa_bool_t save) {
return 0;
}
+/* Called from main context */
+void pa_sink_input_fail_move(pa_sink_input *i) {
+
+ pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
+ pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
+ pa_assert(!i->sink);
+
+ /* Check if someone wants this sink input? */
+ if (pa_hook_fire(&i->core->hooks[PA_CORE_HOOK_SINK_INPUT_MOVE_FAIL], i) == PA_HOOK_STOP)
+ return;
+
+ if (i->moving)
+ i->moving(i, NULL);
+
+ pa_sink_input_kill(i);
+}
+
/* Called from main context */
int pa_sink_input_move_to(pa_sink_input *i, pa_sink *dest, pa_bool_t save) {
int r;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_INPUT_IS_LINKED(i->state));
pa_assert(i->sink);
pa_sink_assert_ref(dest);
@@ -1289,6 +1360,7 @@ int pa_sink_input_move_to(pa_sink_input *i, pa_sink *dest, pa_bool_t save) {
}
if ((r = pa_sink_input_finish_move(i, dest, save)) < 0) {
+ pa_sink_input_fail_move(i);
pa_sink_input_unref(i);
return r;
}
@@ -1301,7 +1373,9 @@ int pa_sink_input_move_to(pa_sink_input *i, pa_sink *dest, pa_bool_t save) {
/* Called from IO thread context */
void pa_sink_input_set_state_within_thread(pa_sink_input *i, pa_sink_input_state_t state) {
pa_bool_t corking, uncorking;
+
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
if (state == i->thread_info.state)
return;
@@ -1411,6 +1485,7 @@ int pa_sink_input_process_msg(pa_msgobject *o, int code, void *userdata, int64_t
/* Called from main thread */
pa_sink_input_state_t pa_sink_input_get_state(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
if (i->state == PA_SINK_INPUT_RUNNING || i->state == PA_SINK_INPUT_DRAINED)
return pa_atomic_load(&i->thread_info.drained) ? PA_SINK_INPUT_DRAINED : PA_SINK_INPUT_RUNNING;
@@ -1421,6 +1496,7 @@ pa_sink_input_state_t pa_sink_input_get_state(pa_sink_input *i) {
/* Called from IO context */
pa_bool_t pa_sink_input_safe_to_remove(pa_sink_input *i) {
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
if (PA_SINK_INPUT_IS_LINKED(i->thread_info.state))
return pa_memblockq_is_empty(i->thread_info.render_memblockq);
@@ -1445,6 +1521,7 @@ void pa_sink_input_request_rewind(pa_sink_input *i, size_t nbytes /* in our sam
* rewound. */
pa_sink_input_assert_ref(i);
+ pa_sink_input_assert_io_context(i);
nbytes = PA_MAX(i->thread_info.rewrite_nbytes, nbytes);
@@ -1511,8 +1588,11 @@ void pa_sink_input_request_rewind(pa_sink_input *i, size_t nbytes /* in our sam
/* Called from main context */
pa_memchunk* pa_sink_input_get_silence(pa_sink_input *i, pa_memchunk *ret) {
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(ret);
+ /* FIXME: Shouldn't access resampler object from main context! */
+
pa_silence_memchunk_get(
&i->core->silence_cache,
i->core->mempool,
@@ -1529,6 +1609,7 @@ void pa_sink_input_send_event(pa_sink_input *i, const char *event, pa_proplist *
pa_sink_input_send_event_hook_data hook_data;
pa_sink_input_assert_ref(i);
+ pa_assert_ctl_context();
pa_assert(event);
if (!i->send_event)
diff --git a/src/pulsecore/sink-input.h b/src/pulsecore/sink-input.h
index 98144d41..b5502c45 100644
--- a/src/pulsecore/sink-input.h
+++ b/src/pulsecore/sink-input.h
@@ -42,6 +42,7 @@ typedef enum pa_sink_input_state {
PA_SINK_INPUT_RUNNING, /*< The stream is alive and kicking */
PA_SINK_INPUT_CORKED, /*< The stream was corked on user request */
PA_SINK_INPUT_UNLINKED /*< The stream is dead */
+ /* FIXME: we need a state for MOVING here */
} pa_sink_input_state_t;
static inline pa_bool_t PA_SINK_INPUT_IS_LINKED(pa_sink_input_state_t x) {
@@ -58,7 +59,8 @@ typedef enum pa_sink_input_flags {
PA_SINK_INPUT_FIX_RATE = 64,
PA_SINK_INPUT_FIX_CHANNELS = 128,
PA_SINK_INPUT_DONT_INHIBIT_AUTO_SUSPEND = 256,
- PA_SINK_INPUT_FAIL_ON_SUSPEND = 512
+ PA_SINK_INPUT_NO_CREATE_ON_SUSPEND = 512,
+ PA_SINK_INPUT_KILL_ON_SUSPEND = 1024
} pa_sink_input_flags_t;
struct pa_sink_input {
@@ -137,6 +139,10 @@ struct pa_sink_input {
* from IO context. */
void (*update_sink_latency_range) (pa_sink_input *i); /* may be NULL */
+ /* Called whenver the fixed latency of the sink changes, if there
+ * is one. Called from IO context. */
+ void (*update_sink_fixed_latency) (pa_sink_input *i); /* may be NULL */
+
/* If non-NULL this function is called when the input is first
* connected to a sink or when the rtpoll/asyncmsgq fields
* change. You usually don't need to implement this function
@@ -159,7 +165,9 @@ struct pa_sink_input {
/* If non-NULL called whenever the sink input is moved to a new
* sink. Called from main context after the sink input has been
* detached from the old sink and before it has been attached to
- * the new sink. */
+ * the new sink. If dest is NULL the move was executed in two
+ * phases and the second one failed; the stream will be destroyed
+ * after this call. */
void (*moving) (pa_sink_input *i, pa_sink *dest); /* may be NULL */
/* Supposed to unlink and destroy this stream. Called from main
@@ -303,6 +311,10 @@ void pa_sink_input_cork(pa_sink_input *i, pa_bool_t b);
int pa_sink_input_set_rate(pa_sink_input *i, uint32_t rate);
+/* This returns the sink's fields converted into out sample type */
+size_t pa_sink_input_get_max_rewind(pa_sink_input *i);
+size_t pa_sink_input_get_max_request(pa_sink_input *i);
+
/* Callable by everyone from main thread*/
/* External code may request disconnection with this function */
@@ -333,6 +345,7 @@ pa_bool_t pa_sink_input_may_move_to(pa_sink_input *i, pa_sink *dest); /* may thi
* new sink */
int pa_sink_input_start_move(pa_sink_input *i);
int pa_sink_input_finish_move(pa_sink_input *i, pa_sink *dest, pa_bool_t save);
+void pa_sink_input_fail_move(pa_sink_input *i);
pa_sink_input_state_t pa_sink_input_get_state(pa_sink_input *i);
@@ -359,4 +372,7 @@ pa_memchunk* pa_sink_input_get_silence(pa_sink_input *i, pa_memchunk *ret);
/* To be used by sink.c only */
void pa_sink_input_set_relative_volume(pa_sink_input *i, const pa_cvolume *v);
+#define pa_sink_input_assert_io_context(s) \
+ pa_assert(pa_thread_mq_get() || !PA_SINK_INPUT_IS_LINKED((s)->state))
+
#endif
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c
index d8f3c7d1..717584f2 100644
--- a/src/pulsecore/sink.c
+++ b/src/pulsecore/sink.c
@@ -59,7 +59,7 @@ static void sink_free(pa_object *s);
pa_sink_new_data* pa_sink_new_data_init(pa_sink_new_data *data) {
pa_assert(data);
- memset(data, 0, sizeof(*data));
+ pa_zero(*data);
data->proplist = pa_proplist_new();
return data;
@@ -177,6 +177,7 @@ pa_sink* pa_sink_new(
pa_assert(core);
pa_assert(data);
pa_assert(data->name);
+ pa_assert_ctl_context();
s = pa_msgobject_new(pa_sink);
@@ -255,13 +256,10 @@ pa_sink* pa_sink_new(
s->muted = data->muted;
s->refresh_volume = s->refresh_muted = FALSE;
- s->fixed_latency = flags & PA_SINK_DYNAMIC_LATENCY ? 0 : DEFAULT_FIXED_LATENCY;
-
reset_callbacks(s);
s->userdata = NULL;
s->asyncmsgq = NULL;
- s->rtpoll = NULL;
/* As a minor optimization we just steal the list instead of
* copying it here */
@@ -294,6 +292,7 @@ pa_sink* pa_sink_new(
&s->sample_spec,
0);
+ s->thread_info.rtpoll = NULL;
s->thread_info.inputs = pa_hashmap_new(pa_idxset_trivial_hash_func, pa_idxset_trivial_compare_func);
s->thread_info.soft_volume = s->soft_volume;
s->thread_info.soft_muted = s->muted;
@@ -306,7 +305,9 @@ pa_sink* pa_sink_new(
s->thread_info.requested_latency = 0;
s->thread_info.min_latency = ABSOLUTE_MIN_LATENCY;
s->thread_info.max_latency = ABSOLUTE_MAX_LATENCY;
+ s->thread_info.fixed_latency = flags & PA_SINK_DYNAMIC_LATENCY ? 0 : DEFAULT_FIXED_LATENCY;
+ /* FIXME: This should probably be moved to pa_sink_put() */
pa_assert_se(pa_idxset_put(core->sinks, s, &s->index) >= 0);
if (s->card)
@@ -348,6 +349,7 @@ pa_sink* pa_sink_new(
s->monitor_source->monitor_of = s;
pa_source_set_latency_range(s->monitor_source, s->thread_info.min_latency, s->thread_info.max_latency);
+ pa_source_set_fixed_latency(s->monitor_source, s->thread_info.fixed_latency);
pa_source_set_max_rewind(s->monitor_source, s->thread_info.max_rewind);
return s;
@@ -360,6 +362,7 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state) {
pa_sink_state_t original_state;
pa_assert(s);
+ pa_assert_ctl_context();
if (s->state == state)
return 0;
@@ -396,9 +399,9 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state) {
/* We're suspending or resuming, tell everyone about it */
- for (i = PA_SINK_INPUT(pa_idxset_first(s->inputs, &idx)); i; i = PA_SINK_INPUT(pa_idxset_next(s->inputs, &idx)))
+ PA_IDXSET_FOREACH(i, s->inputs, idx)
if (s->state == PA_SINK_SUSPENDED &&
- (i->flags & PA_SINK_INPUT_FAIL_ON_SUSPEND))
+ (i->flags & PA_SINK_INPUT_KILL_ON_SUSPEND))
pa_sink_input_kill(i);
else if (i->suspend)
i->suspend(i, state == PA_SINK_SUSPENDED);
@@ -413,12 +416,12 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state) {
/* Called from main context */
void pa_sink_put(pa_sink* s) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(s->state == PA_SINK_INIT);
/* The following fields must be initialized properly when calling _put() */
pa_assert(s->asyncmsgq);
- pa_assert(s->rtpoll);
pa_assert(s->thread_info.min_latency <= s->thread_info.max_latency);
/* Generally, flags should be initialized via pa_sink_new(). As a
@@ -436,11 +439,11 @@ void pa_sink_put(pa_sink* s) {
pa_assert((s->flags & PA_SINK_HW_VOLUME_CTRL) || (s->base_volume == PA_VOLUME_NORM && s->flags & PA_SINK_DECIBEL_VOLUME));
pa_assert(!(s->flags & PA_SINK_DECIBEL_VOLUME) || s->n_volume_steps == PA_VOLUME_NORM+1);
- pa_assert(!(s->flags & PA_SINK_DYNAMIC_LATENCY) == (s->fixed_latency != 0));
+ pa_assert(!(s->flags & PA_SINK_DYNAMIC_LATENCY) == (s->thread_info.fixed_latency != 0));
pa_assert(!(s->flags & PA_SINK_LATENCY) == !(s->monitor_source->flags & PA_SOURCE_LATENCY));
pa_assert(!(s->flags & PA_SINK_DYNAMIC_LATENCY) == !(s->monitor_source->flags & PA_SOURCE_DYNAMIC_LATENCY));
- pa_assert(s->monitor_source->fixed_latency == s->fixed_latency);
+ pa_assert(s->monitor_source->thread_info.fixed_latency == s->thread_info.fixed_latency);
pa_assert(s->monitor_source->thread_info.min_latency == s->thread_info.min_latency);
pa_assert(s->monitor_source->thread_info.max_latency == s->thread_info.max_latency);
@@ -458,6 +461,7 @@ void pa_sink_unlink(pa_sink* s) {
pa_sink_input *i, *j = NULL;
pa_assert(s);
+ pa_assert_ctl_context();
/* Please note that pa_sink_unlink() does more than simply
* reversing pa_sink_put(). It also undoes the registrations
@@ -507,6 +511,7 @@ static void sink_free(pa_object *o) {
pa_sink_input *i;
pa_assert(s);
+ pa_assert_ctl_context();
pa_assert(pa_sink_refcnt(s) == 0);
if (PA_SINK_IS_LINKED(s->state))
@@ -547,9 +552,10 @@ static void sink_free(pa_object *o) {
pa_xfree(s);
}
-/* Called from main context */
+/* Called from main context, and not while the IO thread is active, please */
void pa_sink_set_asyncmsgq(pa_sink *s, pa_asyncmsgq *q) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
s->asyncmsgq = q;
@@ -557,11 +563,32 @@ void pa_sink_set_asyncmsgq(pa_sink *s, pa_asyncmsgq *q) {
pa_source_set_asyncmsgq(s->monitor_source, q);
}
-/* Called from main context */
+/* Called from main context, and not while the IO thread is active, please */
+void pa_sink_update_flags(pa_sink *s, pa_sink_flags_t mask, pa_sink_flags_t value) {
+ pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
+
+ if (mask == 0)
+ return;
+
+ /* For now, allow only a minimal set of flags to be changed. */
+ pa_assert((mask & ~(PA_SINK_DYNAMIC_LATENCY|PA_SINK_LATENCY)) == 0);
+
+ s->flags = (s->flags & ~mask) | (value & mask);
+
+ pa_source_update_flags(s->monitor_source,
+ ((mask & PA_SINK_LATENCY) ? PA_SOURCE_LATENCY : 0) |
+ ((mask & PA_SINK_DYNAMIC_LATENCY) ? PA_SOURCE_DYNAMIC_LATENCY : 0),
+ ((value & PA_SINK_LATENCY) ? PA_SOURCE_LATENCY : 0) |
+ ((value & PA_SINK_DYNAMIC_LATENCY) ? PA_SINK_DYNAMIC_LATENCY : 0));
+}
+
+/* Called from IO context, or before _put() from main context */
void pa_sink_set_rtpoll(pa_sink *s, pa_rtpoll *p) {
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
- s->rtpoll = p;
+ s->thread_info.rtpoll = p;
if (s->monitor_source)
pa_source_set_rtpoll(s->monitor_source, p);
@@ -570,6 +597,7 @@ void pa_sink_set_rtpoll(pa_sink *s, pa_rtpoll *p) {
/* Called from main context */
int pa_sink_update_status(pa_sink*s) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
if (s->state == PA_SINK_SUSPENDED)
@@ -581,6 +609,7 @@ int pa_sink_update_status(pa_sink*s) {
/* Called from main context */
int pa_sink_suspend(pa_sink *s, pa_bool_t suspend, pa_suspend_cause_t cause) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert(cause != 0);
@@ -609,6 +638,7 @@ pa_queue *pa_sink_move_all_start(pa_sink *s, pa_queue *q) {
uint32_t idx;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
if (!q)
@@ -633,12 +663,13 @@ void pa_sink_move_all_finish(pa_sink *s, pa_queue *q, pa_bool_t save) {
pa_sink_input *i;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert(q);
while ((i = PA_SINK_INPUT(pa_queue_pop(q)))) {
if (pa_sink_input_finish_move(i, s, save) < 0)
- pa_sink_input_kill(i);
+ pa_sink_input_fail_move(i);
pa_sink_input_unref(i);
}
@@ -649,13 +680,13 @@ void pa_sink_move_all_finish(pa_sink *s, pa_queue *q, pa_bool_t save) {
/* Called from main context */
void pa_sink_move_all_fail(pa_queue *q) {
pa_sink_input *i;
+
+ pa_assert_ctl_context();
pa_assert(q);
while ((i = PA_SINK_INPUT(pa_queue_pop(q)))) {
- if (pa_hook_fire(&i->core->hooks[PA_CORE_HOOK_SINK_INPUT_MOVE_FAIL], i) == PA_HOOK_OK) {
- pa_sink_input_kill(i);
- pa_sink_input_unref(i);
- }
+ pa_sink_input_fail_move(i);
+ pa_sink_input_unref(i);
}
pa_queue_free(q, NULL, NULL);
@@ -665,11 +696,15 @@ void pa_sink_move_all_fail(pa_queue *q) {
void pa_sink_process_rewind(pa_sink *s, size_t nbytes) {
pa_sink_input *i;
void *state = NULL;
+
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
/* If nobody requested this and this is actually no real rewind
- * then we can short cut this */
+ * then we can short cut this. Please note that this means that
+ * not all rewind requests triggered upstream will always be
+ * translated in actual requests! */
if (!s->thread_info.rewind_requested && nbytes <= 0)
return;
@@ -682,7 +717,7 @@ void pa_sink_process_rewind(pa_sink *s, size_t nbytes) {
if (nbytes > 0)
pa_log_debug("Processing rewind...");
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL))) {
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state) {
pa_sink_input_assert_ref(i);
pa_sink_input_process_rewind(i, nbytes);
}
@@ -700,6 +735,7 @@ static unsigned fill_mix_info(pa_sink *s, size_t *length, pa_mix_info *info, uns
size_t mixlength = *length;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(info);
while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)) && maxinfo > 0) {
@@ -739,6 +775,7 @@ static void inputs_drop(pa_sink *s, pa_mix_info *info, unsigned n, pa_memchunk *
unsigned n_unreffed = 0;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(result);
pa_assert(result->memblock);
pa_assert(result->length > 0);
@@ -834,6 +871,7 @@ void pa_sink_render(pa_sink*s, size_t length, pa_memchunk *result) {
size_t block_size_max;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
pa_assert(pa_frame_aligned(length, &s->sample_spec));
pa_assert(result);
@@ -920,6 +958,7 @@ void pa_sink_render_into(pa_sink*s, pa_memchunk *target) {
size_t length, block_size_max;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
pa_assert(target);
pa_assert(target->memblock);
@@ -1003,6 +1042,7 @@ void pa_sink_render_into_full(pa_sink *s, pa_memchunk *target) {
size_t l, d;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
pa_assert(target);
pa_assert(target->memblock);
@@ -1037,6 +1077,7 @@ void pa_sink_render_full(pa_sink *s, size_t length, pa_memchunk *result) {
unsigned n;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
pa_assert(length > 0);
pa_assert(pa_frame_aligned(length, &s->sample_spec));
@@ -1128,6 +1169,7 @@ pa_usec_t pa_sink_get_latency(pa_sink *s) {
pa_usec_t usec = 0;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
/* The returned value is supposed to be in the time domain of the sound card! */
@@ -1149,6 +1191,7 @@ pa_usec_t pa_sink_get_latency_within_thread(pa_sink *s) {
pa_msgobject *o;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
/* The returned value is supposed to be in the time domain of the sound card! */
@@ -1161,7 +1204,7 @@ pa_usec_t pa_sink_get_latency_within_thread(pa_sink *s) {
o = PA_MSGOBJECT(s);
- /* We probably should make this a proper vtable callback instead of going through process_msg() */
+ /* FIXME: We probably should make this a proper vtable callback instead of going through process_msg() */
if (o->process_msg(o, PA_SINK_MESSAGE_GET_LATENCY, &usec, 0, NULL) < 0)
return -1;
@@ -1215,6 +1258,7 @@ void pa_sink_update_flat_volume(pa_sink *s, pa_cvolume *new_volume) {
uint32_t idx;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(new_volume);
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert(s->flags & PA_SINK_FLAT_VOLUME);
@@ -1271,6 +1315,7 @@ void pa_sink_propagate_flat_volume(pa_sink *s) {
uint32_t idx;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert(s->flags & PA_SINK_FLAT_VOLUME);
@@ -1319,6 +1364,7 @@ void pa_sink_set_volume(pa_sink *s, const pa_cvolume *volume, pa_bool_t propagat
pa_bool_t virtual_volume_changed;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert(volume);
pa_assert(pa_cvolume_valid(volume));
@@ -1360,6 +1406,7 @@ void pa_sink_set_volume(pa_sink *s, const pa_cvolume *volume, pa_bool_t propagat
/* Called from main thread. Only to be called by sink implementor */
void pa_sink_set_soft_volume(pa_sink *s, const pa_cvolume *volume) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(volume);
s->soft_volume = *volume;
@@ -1373,6 +1420,8 @@ void pa_sink_set_soft_volume(pa_sink *s, const pa_cvolume *volume) {
/* Called from main thread */
const pa_cvolume *pa_sink_get_volume(pa_sink *s, pa_bool_t force_refresh, pa_bool_t reference) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
+ pa_assert(PA_SINK_IS_LINKED(s->state));
if (s->refresh_volume || force_refresh) {
struct pa_cvolume old_virtual_volume = s->virtual_volume;
@@ -1386,6 +1435,12 @@ const pa_cvolume *pa_sink_get_volume(pa_sink *s, pa_bool_t force_refresh, pa_boo
s->reference_volume = s->virtual_volume;
+ /* Something got changed in the hardware. It probably
+ * makes sense to save changed hw settings given that hw
+ * volume changes not triggered by PA are almost certainly
+ * done by the user. */
+ s->save_volume = TRUE;
+
if (s->flags & PA_SINK_FLAT_VOLUME)
pa_sink_propagate_flat_volume(s);
@@ -1397,17 +1452,17 @@ const pa_cvolume *pa_sink_get_volume(pa_sink *s, pa_bool_t force_refresh, pa_boo
}
/* Called from main thread */
-void pa_sink_volume_changed(pa_sink *s, const pa_cvolume *new_volume, pa_bool_t save) {
+void pa_sink_volume_changed(pa_sink *s, const pa_cvolume *new_volume) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
+ pa_assert(PA_SINK_IS_LINKED(s->state));
/* The sink implementor may call this if the volume changed to make sure everyone is notified */
- if (pa_cvolume_equal(&s->virtual_volume, new_volume)) {
- s->save_volume = s->save_volume || save;
+ if (pa_cvolume_equal(&s->virtual_volume, new_volume))
return;
- }
s->reference_volume = s->virtual_volume = *new_volume;
- s->save_volume = save;
+ s->save_volume = TRUE;
if (s->flags & PA_SINK_FLAT_VOLUME)
pa_sink_propagate_flat_volume(s);
@@ -1420,6 +1475,7 @@ void pa_sink_set_mute(pa_sink *s, pa_bool_t mute, pa_bool_t save) {
pa_bool_t old_muted;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
old_muted = s->muted;
@@ -1439,6 +1495,8 @@ void pa_sink_set_mute(pa_sink *s, pa_bool_t mute, pa_bool_t save) {
pa_bool_t pa_sink_get_mute(pa_sink *s, pa_bool_t force_refresh) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
+ pa_assert(PA_SINK_IS_LINKED(s->state));
if (s->refresh_muted || force_refresh) {
pa_bool_t old_muted = s->muted;
@@ -1449,6 +1507,8 @@ pa_bool_t pa_sink_get_mute(pa_sink *s, pa_bool_t force_refresh) {
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_MUTE, NULL, 0, NULL) == 0);
if (old_muted != s->muted) {
+ s->save_muted = TRUE;
+
pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SINK|PA_SUBSCRIPTION_EVENT_CHANGE, s->index);
/* Make sure the soft mute status stays in sync */
@@ -1456,22 +1516,23 @@ pa_bool_t pa_sink_get_mute(pa_sink *s, pa_bool_t force_refresh) {
}
}
+
return s->muted;
}
/* Called from main thread */
-void pa_sink_mute_changed(pa_sink *s, pa_bool_t new_muted, pa_bool_t save) {
+void pa_sink_mute_changed(pa_sink *s, pa_bool_t new_muted) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
+ pa_assert(PA_SINK_IS_LINKED(s->state));
/* The sink implementor may call this if the volume changed to make sure everyone is notified */
- if (s->muted == new_muted) {
- s->save_muted = s->save_muted || save;
+ if (s->muted == new_muted)
return;
- }
s->muted = new_muted;
- s->save_muted = save;
+ s->save_muted = TRUE;
pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SINK|PA_SUBSCRIPTION_EVENT_CHANGE, s->index);
}
@@ -1479,6 +1540,7 @@ void pa_sink_mute_changed(pa_sink *s, pa_bool_t new_muted, pa_bool_t save) {
/* Called from main thread */
pa_bool_t pa_sink_update_proplist(pa_sink *s, pa_update_mode_t mode, pa_proplist *p) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (p)
pa_proplist_update(s->proplist, mode, p);
@@ -1492,16 +1554,18 @@ pa_bool_t pa_sink_update_proplist(pa_sink *s, pa_update_mode_t mode, pa_proplist
}
/* Called from main thread */
+/* FIXME -- this should be dropped and be merged into pa_sink_update_proplist() */
void pa_sink_set_description(pa_sink *s, const char *description) {
const char *old;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (!description && !pa_proplist_contains(s->proplist, PA_PROP_DEVICE_DESCRIPTION))
return;
old = pa_proplist_gets(s->proplist, PA_PROP_DEVICE_DESCRIPTION);
- if (old && description && !strcmp(old, description))
+ if (old && description && pa_streq(old, description))
return;
if (description)
@@ -1528,6 +1592,7 @@ unsigned pa_sink_linked_by(pa_sink *s) {
unsigned ret;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
ret = pa_idxset_size(s->inputs);
@@ -1546,6 +1611,7 @@ unsigned pa_sink_used_by(pa_sink *s) {
unsigned ret;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
ret = pa_idxset_size(s->inputs);
@@ -1564,6 +1630,7 @@ unsigned pa_sink_check_suspend(pa_sink *s) {
uint32_t idx;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (!PA_SINK_IS_LINKED(s->state))
return 0;
@@ -1597,8 +1664,9 @@ static void sync_input_volumes_within_thread(pa_sink *s) {
void *state = NULL;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
- while ((i = PA_SINK_INPUT(pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))) {
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state) {
if (pa_cvolume_equal(&i->thread_info.soft_volume, &i->soft_volume))
continue;
@@ -1701,7 +1769,7 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
if (pa_hashmap_remove(s->thread_info.inputs, PA_UINT32_TO_PTR(i->index)))
pa_sink_input_unref(i);
- pa_sink_invalidate_requested_latency(s);
+ pa_sink_invalidate_requested_latency(s, TRUE);
pa_sink_request_rewind(s, (size_t) -1);
/* In flat volume mode we need to update the volume as
@@ -1723,10 +1791,7 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
size_t sink_nbytes, total_nbytes;
/* Get the latency of the sink */
- if (!(s->flags & PA_SINK_LATENCY) ||
- PA_MSGOBJECT(s)->process_msg(PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_LATENCY, &usec, 0, NULL) < 0)
- usec = 0;
-
+ usec = pa_sink_get_latency_within_thread(s);
sink_nbytes = pa_usec_to_bytes(usec, &s->sample_spec);
total_nbytes = sink_nbytes + pa_memblockq_get_length(i->thread_info.render_memblockq);
@@ -1747,7 +1812,7 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
if (pa_hashmap_remove(s->thread_info.inputs, PA_UINT32_TO_PTR(i->index)))
pa_sink_input_unref(i);
- pa_sink_invalidate_requested_latency(s);
+ pa_sink_invalidate_requested_latency(s, TRUE);
pa_log_debug("Requesting rewind due to started move");
pa_sink_request_rewind(s, (size_t) -1);
@@ -1785,10 +1850,7 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
size_t nbytes;
/* Get the latency of the sink */
- if (!(s->flags & PA_SINK_LATENCY) ||
- PA_MSGOBJECT(s)->process_msg(PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_LATENCY, &usec, 0, NULL) < 0)
- usec = 0;
-
+ usec = pa_sink_get_latency_within_thread(s);
nbytes = pa_usec_to_bytes(usec, &s->sample_spec);
if (nbytes > 0)
@@ -1876,6 +1938,9 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
pa_usec_t *usec = userdata;
*usec = pa_sink_get_requested_latency_within_thread(s);
+ /* Yes, that's right, the IO thread will see -1 when no
+ * explicit requested latency is configured, the main
+ * thread will see max_latency */
if (*usec == (pa_usec_t) -1)
*usec = s->thread_info.max_latency;
@@ -1899,6 +1964,16 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
return 0;
}
+ case PA_SINK_MESSAGE_GET_FIXED_LATENCY:
+
+ *((pa_usec_t*) userdata) = s->thread_info.fixed_latency;
+ return 0;
+
+ case PA_SINK_MESSAGE_SET_FIXED_LATENCY:
+
+ pa_sink_set_fixed_latency_within_thread(s, (pa_usec_t) offset);
+ return 0;
+
case PA_SINK_MESSAGE_GET_MAX_REWIND:
*((size_t*) userdata) = s->thread_info.max_rewind;
@@ -1934,9 +2009,10 @@ int pa_sink_suspend_all(pa_core *c, pa_bool_t suspend, pa_suspend_cause_t cause)
int ret = 0;
pa_core_assert_ref(c);
+ pa_assert_ctl_context();
pa_assert(cause != 0);
- for (sink = PA_SINK(pa_idxset_first(c->sinks, &idx)); sink; sink = PA_SINK(pa_idxset_next(c->sinks, &idx))) {
+ PA_IDXSET_FOREACH(sink, c->sinks, idx) {
int r;
if ((r = pa_sink_suspend(sink, suspend, cause)) < 0)
@@ -1949,6 +2025,7 @@ int pa_sink_suspend_all(pa_core *c, pa_bool_t suspend, pa_suspend_cause_t cause)
/* Called from main thread */
void pa_sink_detach(pa_sink *s) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_DETACH, NULL, 0, NULL) == 0);
@@ -1957,6 +2034,7 @@ void pa_sink_detach(pa_sink *s) {
/* Called from main thread */
void pa_sink_attach(pa_sink *s) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_ATTACH, NULL, 0, NULL) == 0);
@@ -1968,9 +2046,10 @@ void pa_sink_detach_within_thread(pa_sink *s) {
void *state = NULL;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
if (i->detach)
i->detach(i);
@@ -1984,9 +2063,10 @@ void pa_sink_attach_within_thread(pa_sink *s) {
void *state = NULL;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
if (i->attach)
i->attach(i);
@@ -1997,6 +2077,7 @@ void pa_sink_attach_within_thread(pa_sink *s) {
/* Called from IO thread */
void pa_sink_request_rewind(pa_sink*s, size_t nbytes) {
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
if (s->thread_info.state == PA_SINK_SUSPENDED)
@@ -2026,15 +2107,15 @@ pa_usec_t pa_sink_get_requested_latency_within_thread(pa_sink *s) {
pa_usec_t monitor_latency;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
if (!(s->flags & PA_SINK_DYNAMIC_LATENCY))
- return PA_CLAMP(s->fixed_latency, s->thread_info.min_latency, s->thread_info.max_latency);
+ return PA_CLAMP(s->thread_info.fixed_latency, s->thread_info.min_latency, s->thread_info.max_latency);
if (s->thread_info.requested_latency_valid)
return s->thread_info.requested_latency;
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
-
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
if (i->thread_info.requested_sink_latency != (pa_usec_t) -1 &&
(result == (pa_usec_t) -1 || result > i->thread_info.requested_sink_latency))
result = i->thread_info.requested_sink_latency;
@@ -2062,6 +2143,7 @@ pa_usec_t pa_sink_get_requested_latency(pa_sink *s) {
pa_usec_t usec = 0;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SINK_IS_LINKED(s->state));
if (s->state == PA_SINK_SUSPENDED)
@@ -2077,16 +2159,16 @@ void pa_sink_set_max_rewind_within_thread(pa_sink *s, size_t max_rewind) {
void *state = NULL;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
if (max_rewind == s->thread_info.max_rewind)
return;
s->thread_info.max_rewind = max_rewind;
- if (PA_SINK_IS_LINKED(s->thread_info.state)) {
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
+ if (PA_SINK_IS_LINKED(s->thread_info.state))
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
pa_sink_input_update_max_rewind(i, s->thread_info.max_rewind);
- }
if (s->monitor_source)
pa_source_set_max_rewind_within_thread(s->monitor_source, s->thread_info.max_rewind);
@@ -2095,6 +2177,7 @@ void pa_sink_set_max_rewind_within_thread(pa_sink *s, size_t max_rewind) {
/* Called from main thread */
void pa_sink_set_max_rewind(pa_sink *s, size_t max_rewind) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (PA_SINK_IS_LINKED(s->state))
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_SET_MAX_REWIND, NULL, max_rewind, NULL) == 0);
@@ -2107,6 +2190,7 @@ void pa_sink_set_max_request_within_thread(pa_sink *s, size_t max_request) {
void *state = NULL;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
if (max_request == s->thread_info.max_request)
return;
@@ -2116,7 +2200,7 @@ void pa_sink_set_max_request_within_thread(pa_sink *s, size_t max_request) {
if (PA_SINK_IS_LINKED(s->thread_info.state)) {
pa_sink_input *i;
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
pa_sink_input_update_max_request(i, s->thread_info.max_request);
}
}
@@ -2124,6 +2208,7 @@ void pa_sink_set_max_request_within_thread(pa_sink *s, size_t max_request) {
/* Called from main thread */
void pa_sink_set_max_request(pa_sink *s, size_t max_request) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (PA_SINK_IS_LINKED(s->state))
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_SET_MAX_REQUEST, NULL, max_request, NULL) == 0);
@@ -2132,23 +2217,24 @@ void pa_sink_set_max_request(pa_sink *s, size_t max_request) {
}
/* Called from IO thread */
-void pa_sink_invalidate_requested_latency(pa_sink *s) {
+void pa_sink_invalidate_requested_latency(pa_sink *s, pa_bool_t dynamic) {
pa_sink_input *i;
void *state = NULL;
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
- if (!(s->flags & PA_SINK_DYNAMIC_LATENCY))
+ if ((s->flags & PA_SINK_DYNAMIC_LATENCY))
+ s->thread_info.requested_latency_valid = FALSE;
+ else if (dynamic)
return;
- s->thread_info.requested_latency_valid = FALSE;
-
if (PA_SINK_IS_LINKED(s->thread_info.state)) {
if (s->update_requested_latency)
s->update_requested_latency(s);
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
if (i->update_sink_requested_latency)
i->update_sink_requested_latency(i);
}
@@ -2157,6 +2243,7 @@ void pa_sink_invalidate_requested_latency(pa_sink *s) {
/* Called from main thread */
void pa_sink_set_latency_range(pa_sink *s, pa_usec_t min_latency, pa_usec_t max_latency) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
/* min_latency == 0: no limit
* min_latency anything else: specified limit
@@ -2191,6 +2278,7 @@ void pa_sink_set_latency_range(pa_sink *s, pa_usec_t min_latency, pa_usec_t max_
/* Called from main thread */
void pa_sink_get_latency_range(pa_sink *s, pa_usec_t *min_latency, pa_usec_t *max_latency) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(min_latency);
pa_assert(max_latency);
@@ -2209,9 +2297,8 @@ void pa_sink_get_latency_range(pa_sink *s, pa_usec_t *min_latency, pa_usec_t *ma
/* Called from IO thread */
void pa_sink_set_latency_range_within_thread(pa_sink *s, pa_usec_t min_latency, pa_usec_t max_latency) {
- void *state = NULL;
-
pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
pa_assert(min_latency >= ABSOLUTE_MIN_LATENCY);
pa_assert(max_latency <= ABSOLUTE_MAX_LATENCY);
@@ -2222,27 +2309,36 @@ void pa_sink_set_latency_range_within_thread(pa_sink *s, pa_usec_t min_latency,
max_latency == ABSOLUTE_MAX_LATENCY) ||
(s->flags & PA_SINK_DYNAMIC_LATENCY));
+ if (s->thread_info.min_latency == min_latency &&
+ s->thread_info.max_latency == max_latency)
+ return;
+
s->thread_info.min_latency = min_latency;
s->thread_info.max_latency = max_latency;
if (PA_SINK_IS_LINKED(s->thread_info.state)) {
pa_sink_input *i;
+ void *state = NULL;
- while ((i = pa_hashmap_iterate(s->thread_info.inputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
if (i->update_sink_latency_range)
i->update_sink_latency_range(i);
}
- pa_sink_invalidate_requested_latency(s);
+ pa_sink_invalidate_requested_latency(s, FALSE);
pa_source_set_latency_range_within_thread(s->monitor_source, min_latency, max_latency);
}
-/* Called from main thread, before the sink is put */
+/* Called from main thread */
void pa_sink_set_fixed_latency(pa_sink *s, pa_usec_t latency) {
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
- pa_assert(pa_sink_get_state(s) == PA_SINK_INIT);
+ if (s->flags & PA_SINK_DYNAMIC_LATENCY) {
+ pa_assert(latency == 0);
+ return;
+ }
if (latency < ABSOLUTE_MIN_LATENCY)
latency = ABSOLUTE_MIN_LATENCY;
@@ -2250,14 +2346,69 @@ void pa_sink_set_fixed_latency(pa_sink *s, pa_usec_t latency) {
if (latency > ABSOLUTE_MAX_LATENCY)
latency = ABSOLUTE_MAX_LATENCY;
- s->fixed_latency = latency;
+ if (PA_SINK_IS_LINKED(s->state))
+ pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_SET_FIXED_LATENCY, NULL, (int64_t) latency, NULL) == 0);
+ else
+ s->thread_info.fixed_latency = latency;
+
pa_source_set_fixed_latency(s->monitor_source, latency);
}
+/* Called from main thread */
+pa_usec_t pa_sink_get_fixed_latency(pa_sink *s) {
+ pa_usec_t latency;
+
+ pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
+
+ if (s->flags & PA_SINK_DYNAMIC_LATENCY)
+ return 0;
+
+ if (PA_SINK_IS_LINKED(s->state))
+ pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_FIXED_LATENCY, &latency, 0, NULL) == 0);
+ else
+ latency = s->thread_info.fixed_latency;
+
+ return latency;
+}
+
+/* Called from IO thread */
+void pa_sink_set_fixed_latency_within_thread(pa_sink *s, pa_usec_t latency) {
+ pa_sink_assert_ref(s);
+ pa_sink_assert_io_context(s);
+
+ if (s->flags & PA_SINK_DYNAMIC_LATENCY) {
+ pa_assert(latency == 0);
+ return;
+ }
+
+ pa_assert(latency >= ABSOLUTE_MIN_LATENCY);
+ pa_assert(latency <= ABSOLUTE_MAX_LATENCY);
+
+ if (s->thread_info.fixed_latency == latency)
+ return;
+
+ s->thread_info.fixed_latency = latency;
+
+ if (PA_SINK_IS_LINKED(s->thread_info.state)) {
+ pa_sink_input *i;
+ void *state = NULL;
+
+ PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state)
+ if (i->update_sink_fixed_latency)
+ i->update_sink_fixed_latency(i);
+ }
+
+ pa_sink_invalidate_requested_latency(s, FALSE);
+
+ pa_source_set_fixed_latency_within_thread(s->monitor_source, latency);
+}
+
/* Called from main context */
size_t pa_sink_get_max_rewind(pa_sink *s) {
size_t r;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (!PA_SINK_IS_LINKED(s->state))
return s->thread_info.max_rewind;
@@ -2271,6 +2422,7 @@ size_t pa_sink_get_max_rewind(pa_sink *s) {
size_t pa_sink_get_max_request(pa_sink *s) {
size_t r;
pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (!PA_SINK_IS_LINKED(s->state))
return s->thread_info.max_request;
@@ -2284,7 +2436,8 @@ size_t pa_sink_get_max_request(pa_sink *s) {
int pa_sink_set_port(pa_sink *s, const char *name, pa_bool_t save) {
pa_device_port *port;
- pa_assert(s);
+ pa_sink_assert_ref(s);
+ pa_assert_ctl_context();
if (!s->set_port) {
pa_log_debug("set_port() operation not implemented for sink %u \"%s\"", s->index, s->name);
@@ -2315,7 +2468,6 @@ int pa_sink_set_port(pa_sink *s, const char *name, pa_bool_t save) {
return 0;
}
-/* Called from main context */
pa_bool_t pa_device_init_icon(pa_proplist *p, pa_bool_t is_sink) {
const char *ff, *c, *t = NULL, *s = "", *profile, *bus;
diff --git a/src/pulsecore/sink.h b/src/pulsecore/sink.h
index d16fcc01..3cd7e59d 100644
--- a/src/pulsecore/sink.h
+++ b/src/pulsecore/sink.h
@@ -42,6 +42,7 @@ typedef struct pa_device_port pa_device_port;
#include
#include
#include
+#include
#define PA_MAX_INPUTS_PER_SINK 32
@@ -101,12 +102,9 @@ struct pa_sink {
pa_bool_t save_muted:1;
pa_asyncmsgq *asyncmsgq;
- pa_rtpoll *rtpoll;
pa_memchunk silence;
- pa_usec_t fixed_latency; /* for sinks with PA_SINK_DYNAMIC_LATENCY this is 0 */
-
pa_hashmap *ports;
pa_device_port *active_port;
@@ -155,9 +153,14 @@ struct pa_sink {
pa_sink_state_t state;
pa_hashmap *inputs;
+ pa_rtpoll *rtpoll;
+
pa_cvolume soft_volume;
pa_bool_t soft_muted:1;
+ /* The requested latency is used for dynamic latency
+ * sinks. For fixed latency sinks it is always identical to
+ * the fixed_latency. See below. */
pa_bool_t requested_latency_valid:1;
pa_usec_t requested_latency;
@@ -173,8 +176,15 @@ struct pa_sink {
size_t rewind_nbytes;
pa_bool_t rewind_requested;
+ /* Both dynamic and fixed latencies will be clamped to this
+ * range. */
pa_usec_t min_latency; /* we won't go below this latency */
pa_usec_t max_latency; /* An upper limit for the latencies */
+
+ /* 'Fixed' simply means that the latency is exclusively
+ * decided on by the sink, and the clients have no influence
+ * in changing it */
+ pa_usec_t fixed_latency; /* for sinks with PA_SINK_DYNAMIC_LATENCY this is 0 */
} thread_info;
void *userdata;
@@ -200,6 +210,8 @@ typedef enum pa_sink_message {
PA_SINK_MESSAGE_DETACH,
PA_SINK_MESSAGE_SET_LATENCY_RANGE,
PA_SINK_MESSAGE_GET_LATENCY_RANGE,
+ PA_SINK_MESSAGE_SET_FIXED_LATENCY,
+ PA_SINK_MESSAGE_GET_FIXED_LATENCY,
PA_SINK_MESSAGE_GET_MAX_REWIND,
PA_SINK_MESSAGE_GET_MAX_REQUEST,
PA_SINK_MESSAGE_SET_MAX_REWIND,
@@ -267,8 +279,10 @@ void pa_sink_detach(pa_sink *s);
void pa_sink_attach(pa_sink *s);
void pa_sink_set_soft_volume(pa_sink *s, const pa_cvolume *volume);
-void pa_sink_volume_changed(pa_sink *s, const pa_cvolume *new_volume, pa_bool_t save);
-void pa_sink_mute_changed(pa_sink *s, pa_bool_t new_muted, pa_bool_t save);
+void pa_sink_volume_changed(pa_sink *s, const pa_cvolume *new_volume);
+void pa_sink_mute_changed(pa_sink *s, pa_bool_t new_muted);
+
+void pa_sink_update_flags(pa_sink *s, pa_sink_flags_t mask, pa_sink_flags_t value);
pa_bool_t pa_device_init_description(pa_proplist *p);
pa_bool_t pa_device_init_icon(pa_proplist *p, pa_bool_t is_sink);
@@ -280,6 +294,7 @@ pa_bool_t pa_device_init_intended_roles(pa_proplist *p);
pa_usec_t pa_sink_get_latency(pa_sink *s);
pa_usec_t pa_sink_get_requested_latency(pa_sink *s);
void pa_sink_get_latency_range(pa_sink *s, pa_usec_t *min_latency, pa_usec_t *max_latency);
+pa_usec_t pa_sink_get_fixed_latency(pa_sink *s);
size_t pa_sink_get_max_rewind(pa_sink *s);
size_t pa_sink_get_max_request(pa_sink *s);
@@ -331,16 +346,23 @@ void pa_sink_set_max_rewind_within_thread(pa_sink *s, size_t max_rewind);
void pa_sink_set_max_request_within_thread(pa_sink *s, size_t max_request);
void pa_sink_set_latency_range_within_thread(pa_sink *s, pa_usec_t min_latency, pa_usec_t max_latency);
+void pa_sink_set_fixed_latency_within_thread(pa_sink *s, pa_usec_t latency);
/*** To be called exclusively by sink input drivers, from IO context */
void pa_sink_request_rewind(pa_sink*s, size_t nbytes);
-void pa_sink_invalidate_requested_latency(pa_sink *s);
+void pa_sink_invalidate_requested_latency(pa_sink *s, pa_bool_t dynamic);
pa_usec_t pa_sink_get_latency_within_thread(pa_sink *s);
pa_device_port *pa_device_port_new(const char *name, const char *description, size_t extra);
void pa_device_port_free(pa_device_port *p);
+/* Verify that we called in IO context (aka 'thread context), or that
+ * the sink is not yet set up, i.e. the thread not set up yet. See
+ * pa_assert_io_context() in thread-mq.h for more information. */
+#define pa_sink_assert_io_context(s) \
+ pa_assert(pa_thread_mq_get() || !PA_SINK_IS_LINKED((s)->state))
+
#endif
diff --git a/src/pulsecore/source-output.c b/src/pulsecore/source-output.c
index 4ba25ae4..3803a6cc 100644
--- a/src/pulsecore/source-output.c
+++ b/src/pulsecore/source-output.c
@@ -48,7 +48,7 @@ static void source_output_free(pa_object* mo);
pa_source_output_new_data* pa_source_output_new_data_init(pa_source_output_new_data *data) {
pa_assert(data);
- memset(data, 0, sizeof(*data));
+ pa_zero(*data);
data->resample_method = PA_RESAMPLER_INVALID;
data->proplist = pa_proplist_new();
@@ -84,6 +84,7 @@ static void reset_callbacks(pa_source_output *o) {
o->update_max_rewind = NULL;
o->update_source_requested_latency = NULL;
o->update_source_latency_range = NULL;
+ o->update_source_fixed_latency = NULL;
o->attach = NULL;
o->detach = NULL;
o->suspend = NULL;
@@ -111,6 +112,7 @@ int pa_source_output_new(
pa_assert(_o);
pa_assert(core);
pa_assert(data);
+ pa_assert_ctl_context();
if (data->client)
pa_proplist_update(data->proplist, PA_UPDATE_MERGE, data->client->proplist);
@@ -166,7 +168,7 @@ int pa_source_output_new(
if ((r = pa_hook_fire(&core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_FIXATE], data)) < 0)
return r;
- if ((flags & PA_SOURCE_OUTPUT_FAIL_ON_SUSPEND) &&
+ if ((flags & PA_SOURCE_OUTPUT_NO_CREATE_ON_SUSPEND) &&
pa_source_get_state(data->source) == PA_SOURCE_SUSPENDED) {
pa_log("Failed to create source output: source is suspended.");
return -PA_ERR_BADSTATE;
@@ -262,6 +264,7 @@ int pa_source_output_new(
/* Called from main context */
static void update_n_corked(pa_source_output *o, pa_source_output_state_t state) {
pa_assert(o);
+ pa_assert_ctl_context();
if (!o->source)
return;
@@ -275,6 +278,7 @@ static void update_n_corked(pa_source_output *o, pa_source_output_state_t state)
/* Called from main context */
static void source_output_set_state(pa_source_output *o, pa_source_output_state_t state) {
pa_assert(o);
+ pa_assert_ctl_context();
if (o->state == state)
return;
@@ -294,6 +298,7 @@ static void source_output_set_state(pa_source_output *o, pa_source_output_state_
void pa_source_output_unlink(pa_source_output*o) {
pa_bool_t linked;
pa_assert(o);
+ pa_assert_ctl_context();
/* See pa_sink_unlink() for a couple of comments how this function
* works */
@@ -346,6 +351,7 @@ static void source_output_free(pa_object* mo) {
pa_source_output *o = PA_SOURCE_OUTPUT(mo);
pa_assert(o);
+ pa_assert_ctl_context();
pa_assert(pa_source_output_refcnt(o) == 0);
if (PA_SOURCE_OUTPUT_IS_LINKED(o->state))
@@ -371,7 +377,9 @@ static void source_output_free(pa_object* mo) {
/* Called from main context */
void pa_source_output_put(pa_source_output *o) {
pa_source_output_state_t state;
+
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(o->state == PA_SOURCE_OUTPUT_INIT);
@@ -395,6 +403,7 @@ void pa_source_output_put(pa_source_output *o) {
/* Called from main context */
void pa_source_output_kill(pa_source_output*o) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
o->kill(o);
@@ -405,6 +414,7 @@ pa_usec_t pa_source_output_get_latency(pa_source_output *o, pa_usec_t *source_la
pa_usec_t r[2] = { 0, 0 };
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
pa_assert_se(pa_asyncmsgq_send(o->source->asyncmsgq, PA_MSGOBJECT(o), PA_SOURCE_OUTPUT_MESSAGE_GET_LATENCY, r, 0, NULL) == 0);
@@ -424,6 +434,7 @@ void pa_source_output_push(pa_source_output *o, const pa_memchunk *chunk) {
size_t limit, mbs = 0;
pa_source_output_assert_ref(o);
+ pa_source_output_assert_io_context(o);
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->thread_info.state));
pa_assert(chunk);
pa_assert(pa_frame_aligned(chunk->length, &o->source->sample_spec));
@@ -499,8 +510,9 @@ void pa_source_output_push(pa_source_output *o, const pa_memchunk *chunk) {
/* Called from thread context */
void pa_source_output_process_rewind(pa_source_output *o, size_t nbytes /* in source sample spec */) {
- pa_source_output_assert_ref(o);
+ pa_source_output_assert_ref(o);
+ pa_source_output_assert_io_context(o);
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->thread_info.state));
pa_assert(pa_frame_aligned(nbytes, &o->source->sample_spec));
@@ -525,9 +537,18 @@ void pa_source_output_process_rewind(pa_source_output *o, size_t nbytes /* in so
pa_memblockq_rewind(o->thread_info.delay_memblockq, nbytes);
}
+/* Called from thread context */
+size_t pa_source_output_get_max_rewind(pa_source_output *o) {
+ pa_source_output_assert_ref(o);
+ pa_source_output_assert_io_context(o);
+
+ return o->thread_info.resampler ? pa_resampler_request(o->thread_info.resampler, o->source->thread_info.max_rewind) : o->source->thread_info.max_rewind;
+}
+
/* Called from thread context */
void pa_source_output_update_max_rewind(pa_source_output *o, size_t nbytes /* in the source's sample spec */) {
pa_source_output_assert_ref(o);
+ pa_source_output_assert_io_context(o);
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->thread_info.state));
pa_assert(pa_frame_aligned(nbytes, &o->source->sample_spec));
@@ -538,15 +559,16 @@ void pa_source_output_update_max_rewind(pa_source_output *o, size_t nbytes /* i
/* Called from thread context */
pa_usec_t pa_source_output_set_requested_latency_within_thread(pa_source_output *o, pa_usec_t usec) {
pa_source_output_assert_ref(o);
+ pa_source_output_assert_io_context(o);
if (!(o->source->flags & PA_SOURCE_DYNAMIC_LATENCY))
- usec = o->source->fixed_latency;
+ usec = o->source->thread_info.fixed_latency;
if (usec != (pa_usec_t) -1)
usec = PA_CLAMP(usec, o->source->thread_info.min_latency, o->source->thread_info.max_latency);
o->thread_info.requested_source_latency = usec;
- pa_source_invalidate_requested_latency(o->source);
+ pa_source_invalidate_requested_latency(o->source, TRUE);
return usec;
}
@@ -554,6 +576,7 @@ pa_usec_t pa_source_output_set_requested_latency_within_thread(pa_source_output
/* Called from main context */
pa_usec_t pa_source_output_set_requested_latency(pa_source_output *o, pa_usec_t usec) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
if (PA_SOURCE_OUTPUT_IS_LINKED(o->state) && o->source) {
pa_assert_se(pa_asyncmsgq_send(o->source->asyncmsgq, PA_MSGOBJECT(o), PA_SOURCE_OUTPUT_MESSAGE_SET_REQUESTED_LATENCY, &usec, 0, NULL) == 0);
@@ -565,7 +588,7 @@ pa_usec_t pa_source_output_set_requested_latency(pa_source_output *o, pa_usec_t
if (o->source) {
if (!(o->source->flags & PA_SOURCE_DYNAMIC_LATENCY))
- usec = o->source->fixed_latency;
+ usec = pa_source_get_fixed_latency(o->source);
if (usec != (pa_usec_t) -1) {
pa_usec_t min_latency, max_latency;
@@ -582,6 +605,7 @@ pa_usec_t pa_source_output_set_requested_latency(pa_source_output *o, pa_usec_t
/* Called from main context */
pa_usec_t pa_source_output_get_requested_latency(pa_source_output *o) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
if (PA_SOURCE_OUTPUT_IS_LINKED(o->state) && o->source) {
pa_usec_t usec = 0;
@@ -598,6 +622,7 @@ pa_usec_t pa_source_output_get_requested_latency(pa_source_output *o) {
/* Called from main context */
void pa_source_output_cork(pa_source_output *o, pa_bool_t b) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
source_output_set_state(o, b ? PA_SOURCE_OUTPUT_CORKED : PA_SOURCE_OUTPUT_RUNNING);
@@ -606,6 +631,7 @@ void pa_source_output_cork(pa_source_output *o, pa_bool_t b) {
/* Called from main context */
int pa_source_output_set_rate(pa_source_output *o, uint32_t rate) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
pa_return_val_if_fail(o->thread_info.resampler, -PA_ERR_BADSTATE);
@@ -623,6 +649,7 @@ int pa_source_output_set_rate(pa_source_output *o, uint32_t rate) {
/* Called from main context */
void pa_source_output_set_name(pa_source_output *o, const char *name) {
const char *old;
+ pa_assert_ctl_context();
pa_source_output_assert_ref(o);
if (!name && !pa_proplist_contains(o->proplist, PA_PROP_MEDIA_NAME))
@@ -647,11 +674,12 @@ void pa_source_output_set_name(pa_source_output *o, const char *name) {
/* Called from main thread */
void pa_source_output_update_proplist(pa_source_output *o, pa_update_mode_t mode, pa_proplist *p) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
if (p)
pa_proplist_update(o->proplist, mode, p);
- if (PA_SINK_IS_LINKED(o->state)) {
+ if (PA_SOURCE_OUTPUT_IS_LINKED(o->state)) {
pa_hook_fire(&o->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_PROPLIST_CHANGED], o);
pa_subscription_post(o->core, PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT|PA_SUBSCRIPTION_EVENT_CHANGE, o->index);
}
@@ -660,6 +688,7 @@ void pa_source_output_update_proplist(pa_source_output *o, pa_update_mode_t mode
/* Called from main context */
pa_resample_method_t pa_source_output_get_resample_method(pa_source_output *o) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
return o->actual_resample_method;
}
@@ -667,6 +696,7 @@ pa_resample_method_t pa_source_output_get_resample_method(pa_source_output *o) {
/* Called from main context */
pa_bool_t pa_source_output_may_move(pa_source_output *o) {
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
if (o->flags & PA_SOURCE_OUTPUT_DONT_MOVE)
@@ -708,6 +738,7 @@ int pa_source_output_start_move(pa_source_output *o) {
int r;
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
pa_assert(o->source);
@@ -739,6 +770,7 @@ int pa_source_output_finish_move(pa_source_output *o, pa_source *dest, pa_bool_t
pa_resampler *new_resampler;
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
pa_assert(!o->source);
pa_source_assert_ref(dest);
@@ -815,11 +847,30 @@ int pa_source_output_finish_move(pa_source_output *o, pa_source *dest, pa_bool_t
return 0;
}
+/* Called from main context */
+void pa_source_output_fail_move(pa_source_output *o) {
+
+ pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
+ pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
+ pa_assert(!o->source);
+
+ /* Check if someone wants this source output? */
+ if (pa_hook_fire(&o->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_FAIL], o) == PA_HOOK_STOP)
+ return;
+
+ if (o->moving)
+ o->moving(o, NULL);
+
+ pa_source_output_kill(o);
+}
+
/* Called from main context */
int pa_source_output_move_to(pa_source_output *o, pa_source *dest, pa_bool_t save) {
int r;
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_OUTPUT_IS_LINKED(o->state));
pa_assert(o->source);
pa_source_assert_ref(dest);
@@ -838,6 +889,7 @@ int pa_source_output_move_to(pa_source_output *o, pa_source *dest, pa_bool_t sav
}
if ((r = pa_source_output_finish_move(o, dest, save)) < 0) {
+ pa_source_output_fail_move(o);
pa_source_output_unref(o);
return r;
}
@@ -850,6 +902,7 @@ int pa_source_output_move_to(pa_source_output *o, pa_source *dest, pa_bool_t sav
/* Called from IO thread context */
void pa_source_output_set_state_within_thread(pa_source_output *o, pa_source_output_state_t state) {
pa_source_output_assert_ref(o);
+ pa_source_output_assert_io_context(o);
if (state == o->thread_info.state)
return;
@@ -906,11 +959,13 @@ int pa_source_output_process_msg(pa_msgobject *mo, int code, void *userdata, int
return -PA_ERR_NOTIMPLEMENTED;
}
+/* Called from main context */
void pa_source_output_send_event(pa_source_output *o, const char *event, pa_proplist *data) {
pa_proplist *pl = NULL;
pa_source_output_send_event_hook_data hook_data;
pa_source_output_assert_ref(o);
+ pa_assert_ctl_context();
pa_assert(event);
if (!o->send_event)
diff --git a/src/pulsecore/source-output.h b/src/pulsecore/source-output.h
index 9824e160..a70a3fdb 100644
--- a/src/pulsecore/source-output.h
+++ b/src/pulsecore/source-output.h
@@ -55,7 +55,8 @@ typedef enum pa_source_output_flags {
PA_SOURCE_OUTPUT_FIX_RATE = 64,
PA_SOURCE_OUTPUT_FIX_CHANNELS = 128,
PA_SOURCE_OUTPUT_DONT_INHIBIT_AUTO_SUSPEND = 256,
- PA_SOURCE_OUTPUT_FAIL_ON_SUSPEND = 512
+ PA_SOURCE_OUTPUT_NO_CREATE_ON_SUSPEND = 512,
+ PA_SOURCE_OUTPUT_KILL_ON_SUSPEND = 1024
} pa_source_output_flags_t;
struct pa_source_output {
@@ -108,6 +109,10 @@ struct pa_source_output {
* from IO context. */
void (*update_source_latency_range) (pa_source_output *o); /* may be NULL */
+ /* Called whenver the fixed latency of the source changes, if there
+ * is one. Called from IO context. */
+ void (*update_source_fixed_latency) (pa_source_output *i); /* may be NULL */
+
/* If non-NULL this function is called when the output is first
* connected to a source. Called from IO thread context */
void (*attach) (pa_source_output *o); /* may be NULL */
@@ -127,7 +132,9 @@ struct pa_source_output {
/* If non-NULL called whenever the source output is moved to a new
* source. Called from main context after the stream was detached
* from the old source and before it is attached to the new
- * source. */
+ * source. If dest is NULL the move was executed in two
+ * phases and the second one failed; the stream will be destroyed
+ * after this call. */
void (*moving) (pa_source_output *o, pa_source *dest); /* may be NULL */
/* Supposed to unlink and destroy this stream. Called from main
@@ -238,6 +245,8 @@ void pa_source_output_cork(pa_source_output *o, pa_bool_t b);
int pa_source_output_set_rate(pa_source_output *o, uint32_t rate);
+size_t pa_source_output_get_max_rewind(pa_source_output *o);
+
/* Callable by everyone */
/* External code may request disconnection with this funcion */
@@ -260,6 +269,7 @@ int pa_source_output_move_to(pa_source_output *o, pa_source *dest, pa_bool_t sav
* new source */
int pa_source_output_start_move(pa_source_output *o);
int pa_source_output_finish_move(pa_source_output *o, pa_source *dest, pa_bool_t save);
+void pa_source_output_fail_move(pa_source_output *o);
#define pa_source_output_get_state(o) ((o)->state)
@@ -277,4 +287,7 @@ int pa_source_output_process_msg(pa_msgobject *mo, int code, void *userdata, int
pa_usec_t pa_source_output_set_requested_latency_within_thread(pa_source_output *o, pa_usec_t usec);
+#define pa_source_output_assert_io_context(s) \
+ pa_assert(pa_thread_mq_get() || !PA_SOURCE_OUTPUT_IS_LINKED((s)->state))
+
#endif
diff --git a/src/pulsecore/source.c b/src/pulsecore/source.c
index 74f38bc5..46f049ef 100644
--- a/src/pulsecore/source.c
+++ b/src/pulsecore/source.c
@@ -33,6 +33,7 @@
#include
#include
+#include
#include
#include
#include
@@ -52,7 +53,7 @@ static void source_free(pa_object *o);
pa_source_new_data* pa_source_new_data_init(pa_source_new_data *data) {
pa_assert(data);
- memset(data, 0, sizeof(*data));
+ pa_zero(*data);
data->proplist = pa_proplist_new();
return data;
@@ -145,6 +146,7 @@ pa_source* pa_source_new(
pa_assert(core);
pa_assert(data);
pa_assert(data->name);
+ pa_assert_ctl_context();
s = pa_msgobject_new(pa_source);
@@ -224,13 +226,10 @@ pa_source* pa_source_new(
s->muted = data->muted;
s->refresh_volume = s->refresh_muted = FALSE;
- s->fixed_latency = flags & PA_SOURCE_DYNAMIC_LATENCY ? 0 : DEFAULT_FIXED_LATENCY;
-
reset_callbacks(s);
s->userdata = NULL;
s->asyncmsgq = NULL;
- s->rtpoll = NULL;
/* As a minor optimization we just steal the list instead of
* copying it here */
@@ -263,6 +262,7 @@ pa_source* pa_source_new(
&s->sample_spec,
0);
+ s->thread_info.rtpoll = NULL;
s->thread_info.outputs = pa_hashmap_new(pa_idxset_trivial_hash_func, pa_idxset_trivial_compare_func);
s->thread_info.soft_volume = s->soft_volume;
s->thread_info.soft_muted = s->muted;
@@ -272,6 +272,7 @@ pa_source* pa_source_new(
s->thread_info.requested_latency = 0;
s->thread_info.min_latency = ABSOLUTE_MIN_LATENCY;
s->thread_info.max_latency = ABSOLUTE_MAX_LATENCY;
+ s->thread_info.fixed_latency = flags & PA_SOURCE_DYNAMIC_LATENCY ? 0 : DEFAULT_FIXED_LATENCY;
pa_assert_se(pa_idxset_put(core->sources, s, &s->index) >= 0);
@@ -297,6 +298,7 @@ static int source_set_state(pa_source *s, pa_source_state_t state) {
pa_source_state_t original_state;
pa_assert(s);
+ pa_assert_ctl_context();
if (s->state == state)
return 0;
@@ -333,27 +335,26 @@ static int source_set_state(pa_source *s, pa_source_state_t state) {
/* We're suspending or resuming, tell everyone about it */
- for (o = PA_SOURCE_OUTPUT(pa_idxset_first(s->outputs, &idx)); o; o = PA_SOURCE_OUTPUT(pa_idxset_next(s->outputs, &idx)))
+ PA_IDXSET_FOREACH(o, s->outputs, idx)
if (s->state == PA_SOURCE_SUSPENDED &&
- (o->flags & PA_SOURCE_OUTPUT_FAIL_ON_SUSPEND))
+ (o->flags & PA_SOURCE_OUTPUT_KILL_ON_SUSPEND))
pa_source_output_kill(o);
else if (o->suspend)
o->suspend(o, state == PA_SOURCE_SUSPENDED);
}
-
return 0;
}
/* Called from main context */
void pa_source_put(pa_source *s) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(s->state == PA_SOURCE_INIT);
/* The following fields must be initialized properly when calling _put() */
pa_assert(s->asyncmsgq);
- pa_assert(s->rtpoll);
pa_assert(s->thread_info.min_latency <= s->thread_info.max_latency);
/* Generally, flags should be initialized via pa_source_new(). As
@@ -368,7 +369,7 @@ void pa_source_put(pa_source *s) {
pa_assert((s->flags & PA_SOURCE_HW_VOLUME_CTRL) || (s->base_volume == PA_VOLUME_NORM && s->flags & PA_SOURCE_DECIBEL_VOLUME));
pa_assert(!(s->flags & PA_SOURCE_DECIBEL_VOLUME) || s->n_volume_steps == PA_VOLUME_NORM+1);
- pa_assert(!(s->flags & PA_SOURCE_DYNAMIC_LATENCY) == (s->fixed_latency != 0));
+ pa_assert(!(s->flags & PA_SOURCE_DYNAMIC_LATENCY) == (s->thread_info.fixed_latency != 0));
pa_assert_se(source_set_state(s, PA_SOURCE_IDLE) == 0);
@@ -382,6 +383,7 @@ void pa_source_unlink(pa_source *s) {
pa_source_output *o, *j = NULL;
pa_assert(s);
+ pa_assert_ctl_context();
/* See pa_sink_unlink() for a couple of comments how this function
* works. */
@@ -423,6 +425,7 @@ static void source_free(pa_object *o) {
pa_source *s = PA_SOURCE(o);
pa_assert(s);
+ pa_assert_ctl_context();
pa_assert(pa_source_refcnt(s) == 0);
if (PA_SOURCE_IS_LINKED(s->state))
@@ -458,23 +461,40 @@ static void source_free(pa_object *o) {
pa_xfree(s);
}
-/* Called from main context */
+/* Called from main context, and not while the IO thread is active, please */
void pa_source_set_asyncmsgq(pa_source *s, pa_asyncmsgq *q) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
s->asyncmsgq = q;
}
-/* Called from main context */
+/* Called from main context, and not while the IO thread is active, please */
+void pa_source_update_flags(pa_source *s, pa_source_flags_t mask, pa_source_flags_t value) {
+ pa_source_assert_ref(s);
+ pa_assert_ctl_context();
+
+ if (mask == 0)
+ return;
+
+ /* For now, allow only a minimal set of flags to be changed. */
+ pa_assert((mask & ~(PA_SOURCE_DYNAMIC_LATENCY|PA_SOURCE_LATENCY)) == 0);
+
+ s->flags = (s->flags & ~mask) | (value & mask);
+}
+
+/* Called from IO context, or before _put() from main context */
void pa_source_set_rtpoll(pa_source *s, pa_rtpoll *p) {
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
- s->rtpoll = p;
+ s->thread_info.rtpoll = p;
}
/* Called from main context */
int pa_source_update_status(pa_source*s) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
if (s->state == PA_SOURCE_SUSPENDED)
@@ -486,6 +506,7 @@ int pa_source_update_status(pa_source*s) {
/* Called from main context */
int pa_source_suspend(pa_source *s, pa_bool_t suspend, pa_suspend_cause_t cause) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
pa_assert(cause != 0);
@@ -513,6 +534,7 @@ int pa_source_sync_suspend(pa_source *s) {
pa_sink_state_t state;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
pa_assert(s->monitor_of);
@@ -532,6 +554,7 @@ pa_queue *pa_source_move_all_start(pa_source *s, pa_queue *q) {
uint32_t idx;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
if (!q)
@@ -556,12 +579,13 @@ void pa_source_move_all_finish(pa_source *s, pa_queue *q, pa_bool_t save) {
pa_source_output *o;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
pa_assert(q);
while ((o = PA_SOURCE_OUTPUT(pa_queue_pop(q)))) {
if (pa_source_output_finish_move(o, s, save) < 0)
- pa_source_output_kill(o);
+ pa_source_output_fail_move(o);
pa_source_output_unref(o);
}
@@ -572,13 +596,13 @@ void pa_source_move_all_finish(pa_source *s, pa_queue *q, pa_bool_t save) {
/* Called from main context */
void pa_source_move_all_fail(pa_queue *q) {
pa_source_output *o;
+
+ pa_assert_ctl_context();
pa_assert(q);
while ((o = PA_SOURCE_OUTPUT(pa_queue_pop(q)))) {
- if (pa_hook_fire(&o->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_FAIL], o) == PA_HOOK_OK) {
- pa_source_output_kill(o);
- pa_source_output_unref(o);
- }
+ pa_source_output_fail_move(o);
+ pa_source_output_unref(o);
}
pa_queue_free(q, NULL, NULL);
@@ -590,17 +614,18 @@ void pa_source_process_rewind(pa_source *s, size_t nbytes) {
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
- if (s->thread_info.state == PA_SOURCE_SUSPENDED)
+ if (nbytes <= 0)
return;
- if (nbytes <= 0)
+ if (s->thread_info.state == PA_SOURCE_SUSPENDED)
return;
pa_log_debug("Processing rewind...");
- while ((o = pa_hashmap_iterate(s->thread_info.outputs, &state, NULL))) {
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state) {
pa_source_output_assert_ref(o);
pa_source_output_process_rewind(o, nbytes);
}
@@ -612,6 +637,7 @@ void pa_source_post(pa_source*s, const pa_memchunk *chunk) {
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
pa_assert(chunk);
@@ -651,6 +677,7 @@ void pa_source_post(pa_source*s, const pa_memchunk *chunk) {
/* Called from IO thread context */
void pa_source_post_direct(pa_source*s, pa_source_output *o, const pa_memchunk *chunk) {
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
pa_source_output_assert_ref(o);
pa_assert(o->thread_info.direct_on_input);
@@ -682,6 +709,7 @@ pa_usec_t pa_source_get_latency(pa_source *s) {
pa_usec_t usec;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
if (s->state == PA_SOURCE_SUSPENDED)
@@ -701,6 +729,7 @@ pa_usec_t pa_source_get_latency_within_thread(pa_source *s) {
pa_msgobject *o;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
/* The returned value is supposed to be in the time domain of the sound card! */
@@ -727,6 +756,7 @@ void pa_source_set_volume(pa_source *s, const pa_cvolume *volume, pa_bool_t save
pa_bool_t virtual_volume_changed;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
pa_assert(volume);
pa_assert(pa_cvolume_valid(volume));
@@ -752,6 +782,7 @@ void pa_source_set_volume(pa_source *s, const pa_cvolume *volume, pa_bool_t save
/* Called from main thread. Only to be called by source implementor */
void pa_source_set_soft_volume(pa_source *s, const pa_cvolume *volume) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(volume);
if (PA_SOURCE_IS_LINKED(s->state))
@@ -763,6 +794,7 @@ void pa_source_set_soft_volume(pa_source *s, const pa_cvolume *volume) {
/* Called from main thread */
const pa_cvolume *pa_source_get_volume(pa_source *s, pa_bool_t force_refresh) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
if (s->refresh_volume || force_refresh) {
@@ -773,26 +805,28 @@ const pa_cvolume *pa_source_get_volume(pa_source *s, pa_bool_t force_refresh) {
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_GET_VOLUME, NULL, 0, NULL) == 0);
- if (!pa_cvolume_equal(&old_virtual_volume, &s->virtual_volume))
+ if (!pa_cvolume_equal(&old_virtual_volume, &s->virtual_volume)) {
+ s->save_volume = TRUE;
pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SOURCE|PA_SUBSCRIPTION_EVENT_CHANGE, s->index);
+ }
}
return &s->virtual_volume;
}
/* Called from main thread */
-void pa_source_volume_changed(pa_source *s, const pa_cvolume *new_volume, pa_bool_t save) {
+void pa_source_volume_changed(pa_source *s, const pa_cvolume *new_volume) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
+ pa_assert(PA_SOURCE_IS_LINKED(s->state));
/* The source implementor may call this if the volume changed to make sure everyone is notified */
- if (pa_cvolume_equal(&s->virtual_volume, new_volume)) {
- s->save_volume = s->save_volume || save;
+ if (pa_cvolume_equal(&s->virtual_volume, new_volume))
return;
- }
s->virtual_volume = *new_volume;
- s->save_volume = save;
+ s->save_volume = TRUE;
pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SOURCE|PA_SUBSCRIPTION_EVENT_CHANGE, s->index);
}
@@ -802,6 +836,7 @@ void pa_source_set_mute(pa_source *s, pa_bool_t mute, pa_bool_t save) {
pa_bool_t old_muted;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
old_muted = s->muted;
@@ -820,6 +855,7 @@ void pa_source_set_mute(pa_source *s, pa_bool_t mute, pa_bool_t save) {
/* Called from main thread */
pa_bool_t pa_source_get_mute(pa_source *s, pa_bool_t force_refresh) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
if (s->refresh_muted || force_refresh) {
@@ -831,6 +867,8 @@ pa_bool_t pa_source_get_mute(pa_source *s, pa_bool_t force_refresh) {
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_GET_MUTE, NULL, 0, NULL) == 0);
if (old_muted != s->muted) {
+ s->save_muted = TRUE;
+
pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SOURCE|PA_SUBSCRIPTION_EVENT_CHANGE, s->index);
/* Make sure the soft mute status stays in sync */
@@ -842,18 +880,18 @@ pa_bool_t pa_source_get_mute(pa_source *s, pa_bool_t force_refresh) {
}
/* Called from main thread */
-void pa_source_mute_changed(pa_source *s, pa_bool_t new_muted, pa_bool_t save) {
+void pa_source_mute_changed(pa_source *s, pa_bool_t new_muted) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
+ pa_assert(PA_SOURCE_IS_LINKED(s->state));
/* The source implementor may call this if the mute state changed to make sure everyone is notified */
- if (s->muted == new_muted) {
- s->save_muted = s->save_muted || save;
+ if (s->muted == new_muted)
return;
- }
s->muted = new_muted;
- s->save_muted = save;
+ s->save_muted = TRUE;
pa_subscription_post(s->core, PA_SUBSCRIPTION_EVENT_SOURCE|PA_SUBSCRIPTION_EVENT_CHANGE, s->index);
}
@@ -861,6 +899,7 @@ void pa_source_mute_changed(pa_source *s, pa_bool_t new_muted, pa_bool_t save) {
/* Called from main thread */
pa_bool_t pa_source_update_proplist(pa_source *s, pa_update_mode_t mode, pa_proplist *p) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
if (p)
pa_proplist_update(s->proplist, mode, p);
@@ -874,16 +913,18 @@ pa_bool_t pa_source_update_proplist(pa_source *s, pa_update_mode_t mode, pa_prop
}
/* Called from main thread */
+/* FIXME -- this should be dropped and be merged into pa_source_update_proplist() */
void pa_source_set_description(pa_source *s, const char *description) {
const char *old;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
if (!description && !pa_proplist_contains(s->proplist, PA_PROP_DEVICE_DESCRIPTION))
return;
old = pa_proplist_gets(s->proplist, PA_PROP_DEVICE_DESCRIPTION);
- if (old && description && !strcmp(old, description))
+ if (old && description && pa_streq(old, description))
return;
if (description)
@@ -901,6 +942,7 @@ void pa_source_set_description(pa_source *s, const char *description) {
unsigned pa_source_linked_by(pa_source *s) {
pa_source_assert_ref(s);
pa_assert(PA_SOURCE_IS_LINKED(s->state));
+ pa_assert_ctl_context();
return pa_idxset_size(s->outputs);
}
@@ -911,6 +953,7 @@ unsigned pa_source_used_by(pa_source *s) {
pa_source_assert_ref(s);
pa_assert(PA_SOURCE_IS_LINKED(s->state));
+ pa_assert_ctl_context();
ret = pa_idxset_size(s->outputs);
pa_assert(ret >= s->n_corked);
@@ -925,6 +968,7 @@ unsigned pa_source_check_suspend(pa_source *s) {
uint32_t idx;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
if (!PA_SOURCE_IS_LINKED(s->state))
return 0;
@@ -1006,7 +1050,7 @@ int pa_source_process_msg(pa_msgobject *object, int code, void *userdata, int64_
if (pa_hashmap_remove(s->thread_info.outputs, PA_UINT32_TO_PTR(o->index)))
pa_source_output_unref(o);
- pa_source_invalidate_requested_latency(s);
+ pa_source_invalidate_requested_latency(s, TRUE);
return 0;
}
@@ -1086,6 +1130,16 @@ int pa_source_process_msg(pa_msgobject *object, int code, void *userdata, int64_
return 0;
}
+ case PA_SOURCE_MESSAGE_GET_FIXED_LATENCY:
+
+ *((pa_usec_t*) userdata) = s->thread_info.fixed_latency;
+ return 0;
+
+ case PA_SOURCE_MESSAGE_SET_FIXED_LATENCY:
+
+ pa_source_set_fixed_latency_within_thread(s, (pa_usec_t) offset);
+ return 0;
+
case PA_SOURCE_MESSAGE_GET_MAX_REWIND:
*((size_t*) userdata) = s->thread_info.max_rewind;
@@ -1120,6 +1174,7 @@ int pa_source_suspend_all(pa_core *c, pa_bool_t suspend, pa_suspend_cause_t caus
int ret = 0;
pa_core_assert_ref(c);
+ pa_assert_ctl_context();
pa_assert(cause != 0);
for (source = PA_SOURCE(pa_idxset_first(c->sources, &idx)); source; source = PA_SOURCE(pa_idxset_next(c->sources, &idx))) {
@@ -1138,6 +1193,7 @@ int pa_source_suspend_all(pa_core *c, pa_bool_t suspend, pa_suspend_cause_t caus
/* Called from main thread */
void pa_source_detach(pa_source *s) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_DETACH, NULL, 0, NULL) == 0);
@@ -1146,6 +1202,7 @@ void pa_source_detach(pa_source *s) {
/* Called from main thread */
void pa_source_attach(pa_source *s) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_ATTACH, NULL, 0, NULL) == 0);
@@ -1157,9 +1214,10 @@ void pa_source_detach_within_thread(pa_source *s) {
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
- while ((o = pa_hashmap_iterate(s->thread_info.outputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state)
if (o->detach)
o->detach(o);
}
@@ -1170,9 +1228,10 @@ void pa_source_attach_within_thread(pa_source *s) {
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
- while ((o = pa_hashmap_iterate(s->thread_info.outputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state)
if (o->attach)
o->attach(o);
}
@@ -1184,15 +1243,15 @@ pa_usec_t pa_source_get_requested_latency_within_thread(pa_source *s) {
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
if (!(s->flags & PA_SOURCE_DYNAMIC_LATENCY))
- return PA_CLAMP(s->fixed_latency, s->thread_info.min_latency, s->thread_info.max_latency);
+ return PA_CLAMP(s->thread_info.fixed_latency, s->thread_info.min_latency, s->thread_info.max_latency);
if (s->thread_info.requested_latency_valid)
return s->thread_info.requested_latency;
- while ((o = pa_hashmap_iterate(s->thread_info.outputs, &state, NULL)))
-
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state)
if (o->thread_info.requested_source_latency != (pa_usec_t) -1 &&
(result == (pa_usec_t) -1 || result > o->thread_info.requested_source_latency))
result = o->thread_info.requested_source_latency;
@@ -1214,6 +1273,7 @@ pa_usec_t pa_source_get_requested_latency(pa_source *s) {
pa_usec_t usec = 0;
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(PA_SOURCE_IS_LINKED(s->state));
if (s->state == PA_SOURCE_SUSPENDED)
@@ -1230,21 +1290,22 @@ void pa_source_set_max_rewind_within_thread(pa_source *s, size_t max_rewind) {
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
if (max_rewind == s->thread_info.max_rewind)
return;
s->thread_info.max_rewind = max_rewind;
- if (PA_SOURCE_IS_LINKED(s->thread_info.state)) {
- while ((o = pa_hashmap_iterate(s->thread_info.outputs, &state, NULL)))
+ if (PA_SOURCE_IS_LINKED(s->thread_info.state))
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state)
pa_source_output_update_max_rewind(o, s->thread_info.max_rewind);
- }
}
/* Called from main thread */
void pa_source_set_max_rewind(pa_source *s, size_t max_rewind) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
if (PA_SOURCE_IS_LINKED(s->state))
pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_SET_MAX_REWIND, NULL, max_rewind, NULL) == 0);
@@ -1253,17 +1314,18 @@ void pa_source_set_max_rewind(pa_source *s, size_t max_rewind) {
}
/* Called from IO thread */
-void pa_source_invalidate_requested_latency(pa_source *s) {
+void pa_source_invalidate_requested_latency(pa_source *s, pa_bool_t dynamic) {
pa_source_output *o;
void *state = NULL;
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
- if (!(s->flags & PA_SOURCE_DYNAMIC_LATENCY))
+ if ((s->flags & PA_SOURCE_DYNAMIC_LATENCY))
+ s->thread_info.requested_latency_valid = FALSE;
+ else if (dynamic)
return;
- s->thread_info.requested_latency_valid = FALSE;
-
if (PA_SOURCE_IS_LINKED(s->thread_info.state)) {
if (s->update_requested_latency)
@@ -1275,12 +1337,13 @@ void pa_source_invalidate_requested_latency(pa_source *s) {
}
if (s->monitor_of)
- pa_sink_invalidate_requested_latency(s->monitor_of);
+ pa_sink_invalidate_requested_latency(s->monitor_of, dynamic);
}
/* Called from main thread */
void pa_source_set_latency_range(pa_source *s, pa_usec_t min_latency, pa_usec_t max_latency) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
/* min_latency == 0: no limit
* min_latency anything else: specified limit
@@ -1315,6 +1378,7 @@ void pa_source_set_latency_range(pa_source *s, pa_usec_t min_latency, pa_usec_t
/* Called from main thread */
void pa_source_get_latency_range(pa_source *s, pa_usec_t *min_latency, pa_usec_t *max_latency) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
pa_assert(min_latency);
pa_assert(max_latency);
@@ -1333,9 +1397,8 @@ void pa_source_get_latency_range(pa_source *s, pa_usec_t *min_latency, pa_usec_t
/* Called from IO thread, and from main thread before pa_source_put() is called */
void pa_source_set_latency_range_within_thread(pa_source *s, pa_usec_t min_latency, pa_usec_t max_latency) {
- void *state = NULL;
-
pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
pa_assert(min_latency >= ABSOLUTE_MIN_LATENCY);
pa_assert(max_latency <= ABSOLUTE_MAX_LATENCY);
@@ -1347,25 +1410,34 @@ void pa_source_set_latency_range_within_thread(pa_source *s, pa_usec_t min_laten
(s->flags & PA_SOURCE_DYNAMIC_LATENCY) ||
s->monitor_of);
+ if (s->thread_info.min_latency == min_latency &&
+ s->thread_info.max_latency == max_latency)
+ return;
+
s->thread_info.min_latency = min_latency;
s->thread_info.max_latency = max_latency;
if (PA_SOURCE_IS_LINKED(s->thread_info.state)) {
pa_source_output *o;
+ void *state = NULL;
- while ((o = pa_hashmap_iterate(s->thread_info.outputs, &state, NULL)))
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state)
if (o->update_source_latency_range)
o->update_source_latency_range(o);
}
- pa_source_invalidate_requested_latency(s);
+ pa_source_invalidate_requested_latency(s, FALSE);
}
/* Called from main thread, before the source is put */
void pa_source_set_fixed_latency(pa_source *s, pa_usec_t latency) {
pa_source_assert_ref(s);
+ pa_assert_ctl_context();
- pa_assert(pa_source_get_state(s) == PA_SOURCE_INIT);
+ if (s->flags & PA_SOURCE_DYNAMIC_LATENCY) {
+ pa_assert(latency == 0);
+ return;
+ }
if (latency < ABSOLUTE_MIN_LATENCY)
latency = ABSOLUTE_MIN_LATENCY;
@@ -1373,12 +1445,64 @@ void pa_source_set_fixed_latency(pa_source *s, pa_usec_t latency) {
if (latency > ABSOLUTE_MAX_LATENCY)
latency = ABSOLUTE_MAX_LATENCY;
- s->fixed_latency = latency;
+ if (PA_SOURCE_IS_LINKED(s->state))
+ pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_SET_FIXED_LATENCY, NULL, (int64_t) latency, NULL) == 0);
+ else
+ s->thread_info.fixed_latency = latency;
+}
+
+/* Called from main thread */
+pa_usec_t pa_source_get_fixed_latency(pa_source *s) {
+ pa_usec_t latency;
+
+ pa_source_assert_ref(s);
+ pa_assert_ctl_context();
+
+ if (s->flags & PA_SOURCE_DYNAMIC_LATENCY)
+ return 0;
+
+ if (PA_SOURCE_IS_LINKED(s->state))
+ pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_GET_FIXED_LATENCY, &latency, 0, NULL) == 0);
+ else
+ latency = s->thread_info.fixed_latency;
+
+ return latency;
+}
+
+/* Called from IO thread */
+void pa_source_set_fixed_latency_within_thread(pa_source *s, pa_usec_t latency) {
+ pa_source_assert_ref(s);
+ pa_source_assert_io_context(s);
+
+ if (s->flags & PA_SOURCE_DYNAMIC_LATENCY) {
+ pa_assert(latency == 0);
+ return;
+ }
+
+ pa_assert(latency >= ABSOLUTE_MIN_LATENCY);
+ pa_assert(latency <= ABSOLUTE_MAX_LATENCY);
+
+ if (s->thread_info.fixed_latency == latency)
+ return;
+
+ s->thread_info.fixed_latency = latency;
+
+ if (PA_SOURCE_IS_LINKED(s->thread_info.state)) {
+ pa_source_output *o;
+ void *state = NULL;
+
+ PA_HASHMAP_FOREACH(o, s->thread_info.outputs, state)
+ if (o->update_source_fixed_latency)
+ o->update_source_fixed_latency(o);
+ }
+
+ pa_source_invalidate_requested_latency(s, FALSE);
}
/* Called from main thread */
size_t pa_source_get_max_rewind(pa_source *s) {
size_t r;
+ pa_assert_ctl_context();
pa_source_assert_ref(s);
if (!PA_SOURCE_IS_LINKED(s->state))
@@ -1394,9 +1518,10 @@ int pa_source_set_port(pa_source *s, const char *name, pa_bool_t save) {
pa_device_port *port;
pa_assert(s);
+ pa_assert_ctl_context();
if (!s->set_port) {
- pa_log_debug("set_port() operation not implemented for sink %u \"%s\"", s->index, s->name);
+ pa_log_debug("set_port() operation not implemented for source %u \"%s\"", s->index, s->name);
return -PA_ERR_NOTIMPLEMENTED;
}
diff --git a/src/pulsecore/source.h b/src/pulsecore/source.h
index 7e9fd8b7..6f33de06 100644
--- a/src/pulsecore/source.h
+++ b/src/pulsecore/source.h
@@ -43,6 +43,7 @@ typedef struct pa_source pa_source;
#include
#include
#include
+#include
#define PA_MAX_OUTPUTS_PER_SOURCE 32
@@ -89,12 +90,9 @@ struct pa_source {
pa_bool_t save_muted:1;
pa_asyncmsgq *asyncmsgq;
- pa_rtpoll *rtpoll;
pa_memchunk silence;
- pa_usec_t fixed_latency; /* for sources with PA_SOURCE_DYNAMIC_LATENCY this is 0 */
-
pa_hashmap *ports;
pa_device_port *active_port;
@@ -139,6 +137,8 @@ struct pa_source {
pa_source_state_t state;
pa_hashmap *outputs;
+ pa_rtpoll *rtpoll;
+
pa_cvolume soft_volume;
pa_bool_t soft_muted:1;
@@ -151,7 +151,9 @@ struct pa_source {
pa_usec_t min_latency; /* we won't go below this latency */
pa_usec_t max_latency; /* An upper limit for the latencies */
- } thread_info;
+
+ pa_usec_t fixed_latency; /* for sources with PA_SOURCE_DYNAMIC_LATENCY this is 0 */
+ } thread_info;
void *userdata;
};
@@ -173,6 +175,8 @@ typedef enum pa_source_message {
PA_SOURCE_MESSAGE_DETACH,
PA_SOURCE_MESSAGE_SET_LATENCY_RANGE,
PA_SOURCE_MESSAGE_GET_LATENCY_RANGE,
+ PA_SOURCE_MESSAGE_SET_FIXED_LATENCY,
+ PA_SOURCE_MESSAGE_GET_FIXED_LATENCY,
PA_SOURCE_MESSAGE_GET_MAX_REWIND,
PA_SOURCE_MESSAGE_SET_MAX_REWIND,
PA_SOURCE_MESSAGE_MAX
@@ -237,17 +241,20 @@ void pa_source_detach(pa_source *s);
void pa_source_attach(pa_source *s);
void pa_source_set_soft_volume(pa_source *s, const pa_cvolume *volume);
-void pa_source_volume_changed(pa_source *s, const pa_cvolume *new_volume, pa_bool_t save);
-void pa_source_mute_changed(pa_source *s, pa_bool_t new_muted, pa_bool_t save);
+void pa_source_volume_changed(pa_source *s, const pa_cvolume *new_volume);
+void pa_source_mute_changed(pa_source *s, pa_bool_t new_muted);
int pa_source_sync_suspend(pa_source *s);
+void pa_source_update_flags(pa_source *s, pa_source_flags_t mask, pa_source_flags_t value);
+
/*** May be called by everyone, from main context */
/* The returned value is supposed to be in the time domain of the sound card! */
pa_usec_t pa_source_get_latency(pa_source *s);
pa_usec_t pa_source_get_requested_latency(pa_source *s);
void pa_source_get_latency_range(pa_source *s, pa_usec_t *min_latency, pa_usec_t *max_latency);
+pa_usec_t pa_source_get_fixed_latency(pa_source *s);
size_t pa_source_get_max_rewind(pa_source *s);
@@ -257,6 +264,7 @@ int pa_source_suspend_all(pa_core *c, pa_bool_t suspend, pa_suspend_cause_t caus
void pa_source_set_volume(pa_source *source, const pa_cvolume *volume, pa_bool_t save);
const pa_cvolume *pa_source_get_volume(pa_source *source, pa_bool_t force_refresh);
+
void pa_source_set_mute(pa_source *source, pa_bool_t mute, pa_bool_t save);
pa_bool_t pa_source_get_mute(pa_source *source, pa_bool_t force_refresh);
@@ -288,11 +296,16 @@ void pa_source_detach_within_thread(pa_source *s);
pa_usec_t pa_source_get_requested_latency_within_thread(pa_source *s);
void pa_source_set_max_rewind_within_thread(pa_source *s, size_t max_rewind);
+
void pa_source_set_latency_range_within_thread(pa_source *s, pa_usec_t min_latency, pa_usec_t max_latency);
+void pa_source_set_fixed_latency_within_thread(pa_source *s, pa_usec_t latency);
/*** To be called exclusively by source output drivers, from IO context */
-void pa_source_invalidate_requested_latency(pa_source *s);
+void pa_source_invalidate_requested_latency(pa_source *s, pa_bool_t dynamic);
pa_usec_t pa_source_get_latency_within_thread(pa_source *s);
+#define pa_source_assert_io_context(s) \
+ pa_assert(pa_thread_mq_get() || !PA_SOURCE_IS_LINKED((s)->state))
+
#endif
diff --git a/src/pulsecore/start-child.c b/src/pulsecore/start-child.c
index 7774bde6..b3bce131 100644
--- a/src/pulsecore/start-child.c
+++ b/src/pulsecore/start-child.c
@@ -68,23 +68,24 @@ int pa_start_child_for_read(const char *name, const char *argv1, pid_t *pid) {
} else {
/* child */
- pa_reset_priority();
+ pa_reset_personality();
pa_assert_se(pa_close(pipe_fds[0]) == 0);
- pa_assert_se(dup2(pipe_fds[1], 1) == 1);
+ pa_assert_se(dup2(pipe_fds[1], STDOUT_FILENO) == STDOUT_FILENO);
- if (pipe_fds[1] != 1)
+ if (pipe_fds[1] != STDOUT_FILENO)
pa_assert_se(pa_close(pipe_fds[1]) == 0);
- pa_close(0);
- pa_assert_se(open("/dev/null", O_RDONLY) == 0);
+ pa_close(STDIN_FILENO);
+ pa_assert_se(open("/dev/null", O_RDONLY) == STDIN_FILENO);
- pa_close(2);
- pa_assert_se(open("/dev/null", O_WRONLY) == 2);
+ pa_close(STDERR_FILENO);
+ pa_assert_se(open("/dev/null", O_WRONLY) == STDERR_FILENO);
pa_close_all(-1);
pa_reset_sigs(-1);
pa_unblock_sigs(-1);
+ pa_reset_priority();
#ifdef PR_SET_PDEATHSIG
/* On Linux we can use PR_SET_PDEATHSIG to have the helper
diff --git a/src/pulsecore/thread-mq.c b/src/pulsecore/thread-mq.c
index 34f92a7e..73997a74 100644
--- a/src/pulsecore/thread-mq.c
+++ b/src/pulsecore/thread-mq.c
@@ -59,7 +59,7 @@ static void asyncmsgq_read_cb(pa_mainloop_api*api, pa_io_event* e, int fd, pa_io
pa_memchunk chunk;
/* Check whether there is a message for us to process */
- while (pa_asyncmsgq_get(aq, &object, &code, &data, &offset, &chunk, 0) == 0) {
+ while (pa_asyncmsgq_get(aq, &object, &code, &data, &offset, &chunk, 0) >= 0) {
int ret;
ret = pa_asyncmsgq_dispatch(object, code, data, offset, &chunk);
@@ -104,6 +104,15 @@ void pa_thread_mq_init(pa_thread_mq *q, pa_mainloop_api *mainloop, pa_rtpoll *rt
void pa_thread_mq_done(pa_thread_mq *q) {
pa_assert(q);
+ /* Since we are called from main context we can be sure that the
+ * inq is empty. However, the outq might still contain messages
+ * for the main loop, which we need to dispatch (e.g. release
+ * msgs, other stuff). Hence do so if we aren't currently
+ * dispatching anyway. */
+
+ if (!pa_asyncmsgq_dispatching(q->outq))
+ pa_asyncmsgq_flush(q->outq, TRUE);
+
q->mainloop->io_free(q->read_event);
q->mainloop->io_free(q->write_event);
q->read_event = q->write_event = NULL;
diff --git a/src/pulsecore/thread-mq.h b/src/pulsecore/thread-mq.h
index 3b5e0e78..96839d25 100644
--- a/src/pulsecore/thread-mq.h
+++ b/src/pulsecore/thread-mq.h
@@ -45,4 +45,12 @@ void pa_thread_mq_install(pa_thread_mq *q);
/* Return the pa_thread_mq object that is set for the current thread */
pa_thread_mq *pa_thread_mq_get(void);
+/* Verify that we are in control context (aka 'main context'). */
+#define pa_assert_ctl_context(s) \
+ pa_assert(!pa_thread_mq_get())
+
+/* Verify that we are in IO context (aka 'thread context'). */
+#define pa_assert_io_context(s) \
+ pa_assert(pa_thread_mq_get())
+
#endif
diff --git a/src/pulsecore/time-smoother.c b/src/pulsecore/time-smoother.c
index 9d5a0705..d6c37878 100644
--- a/src/pulsecore/time-smoother.c
+++ b/src/pulsecore/time-smoother.c
@@ -108,29 +108,11 @@ pa_smoother* pa_smoother_new(
s = pa_xnew(pa_smoother, 1);
s->adjust_time = adjust_time;
s->history_time = history_time;
- s->time_offset = 0;
+ s->min_history = min_history;
s->monotonic = monotonic;
-
- s->px = s->py = 0;
- s->dp = 1;
-
- s->ex = s->ey = s->ry = 0;
- s->de = 1;
-
- s->history_idx = 0;
- s->n_history = 0;
-
- s->last_y = s->last_x = 0;
-
- s->abc_valid = FALSE;
-
- s->paused = FALSE;
s->smoothing = smoothing;
- s->min_history = min_history;
-
- s->paused = paused;
- s->time_offset = s->pause_time = time_offset;
+ pa_smoother_reset(s, time_offset, paused);
return s;
}
@@ -514,9 +496,26 @@ pa_usec_t pa_smoother_translate(pa_smoother *s, pa_usec_t x, pa_usec_t y_delay)
return (pa_usec_t) llrint((double) y_delay / nde);
}
-void pa_smoother_reset(pa_smoother *s) {
+void pa_smoother_reset(pa_smoother *s, pa_usec_t time_offset, pa_bool_t paused) {
pa_assert(s);
+ s->px = s->py = 0;
+ s->dp = 1;
+
+ s->ex = s->ey = s->ry = 0;
+ s->de = 1;
+
+ s->history_idx = 0;
s->n_history = 0;
+
+ s->last_y = s->last_x = 0;
+
s->abc_valid = FALSE;
+
+ s->paused = paused;
+ s->time_offset = s->pause_time = time_offset;
+
+#ifdef DEBUG_DATA
+ pa_log_debug("reset()");
+#endif
}
diff --git a/src/pulsecore/time-smoother.h b/src/pulsecore/time-smoother.h
index 5244a7e7..63d33e48 100644
--- a/src/pulsecore/time-smoother.h
+++ b/src/pulsecore/time-smoother.h
@@ -52,7 +52,7 @@ void pa_smoother_set_time_offset(pa_smoother *s, pa_usec_t x_offset);
void pa_smoother_pause(pa_smoother *s, pa_usec_t x);
void pa_smoother_resume(pa_smoother *s, pa_usec_t x, pa_bool_t abrupt);
-void pa_smoother_reset(pa_smoother *s);
+void pa_smoother_reset(pa_smoother *s, pa_usec_t time_offset, pa_bool_t paused);
void pa_smoother_fix_now(pa_smoother *s);
diff --git a/src/tests/get-binary-name-test.c b/src/tests/get-binary-name-test.c
index a34e38fd..e49f2eff 100644
--- a/src/tests/get-binary-name-test.c
+++ b/src/tests/get-binary-name-test.c
@@ -23,12 +23,33 @@
#include
#include
+#include
#include
+#include
int main(int argc, char *argv[]) {
- char exename[PATH_MAX];
+ char *exename;
+ size_t allocated = 128;
+
+ for (;;) {
+ exename = pa_xmalloc(allocated);
+
+ if (!pa_get_binary_name(exename, allocated)) {
+ printf("failed to read binary name\n");
+ pa_xfree(exename);
+ break;
+ }
+
+ if (strlen(exename) < allocated - 1) {
+ printf("%s\n", exename);
+ pa_xfree(exename);
+ break;
+ }
+
+ pa_xfree(exename);
+ allocated *= 2;
+ }
- printf("%s\n", pa_get_binary_name(exename, sizeof(exename)));
return 0;
}
diff --git a/src/tests/interpol-test.c b/src/tests/interpol-test.c
index 0c906d3e..007555c3 100644
--- a/src/tests/interpol-test.c
+++ b/src/tests/interpol-test.c
@@ -43,20 +43,37 @@ static pa_context *context = NULL;
static pa_stream *stream = NULL;
static pa_mainloop_api *mainloop_api = NULL;
static pa_bool_t playback = TRUE;
+static pa_usec_t latency = 0;
static void stream_write_cb(pa_stream *p, size_t nbytes, void *userdata) {
/* Just some silence */
- pa_assert_se(pa_stream_write(p, pa_xmalloc0(nbytes), nbytes, pa_xfree, 0, PA_SEEK_RELATIVE) == 0);
+
+ for (;;) {
+ void *data;
+
+ pa_assert_se((nbytes = pa_stream_writable_size(p)) != (size_t) -1);
+
+ if (nbytes <= 0)
+ break;
+
+ pa_assert_se(pa_stream_begin_write(p, &data, &nbytes) == 0);
+ pa_memzero(data, nbytes);
+ pa_assert_se(pa_stream_write(p, data, nbytes, NULL, 0, PA_SEEK_RELATIVE) == 0);
+ }
}
static void stream_read_cb(pa_stream *p, size_t nbytes, void *userdata) {
- /* We don't care, just drop the data */
+ /* We don't care about the data, just drop it */
- while (pa_stream_readable_size(p) > 0) {
- const void *d;
- size_t b;
+ for (;;) {
+ const void *data;
- pa_assert_se(pa_stream_peek(p, &d, &b) == 0);
+ pa_assert_se((nbytes = pa_stream_readable_size(p)) != (size_t) -1);
+
+ if (nbytes <= 0)
+ break;
+
+ pa_assert_se(pa_stream_peek(p, &data, &nbytes) == 0);
pa_assert_se(pa_stream_drop(p) == 0);
}
}
@@ -82,27 +99,36 @@ static void context_state_callback(pa_context *c, void *userdata) {
case PA_CONTEXT_READY: {
pa_stream_flags_t flags = PA_STREAM_AUTO_TIMING_UPDATE;
-
+ pa_buffer_attr attr;
static const pa_sample_spec ss = {
.format = PA_SAMPLE_S16LE,
.rate = 44100,
.channels = 2
};
+ pa_zero(attr);
+ attr.maxlength = (uint32_t) -1;
+ attr.tlength = latency > 0 ? (uint32_t) pa_usec_to_bytes(latency, &ss) : (uint32_t) -1;
+ attr.prebuf = (uint32_t) -1;
+ attr.minreq = (uint32_t) -1;
+ attr.fragsize = (uint32_t) -1;
+
#ifdef INTERPOLATE
flags |= PA_STREAM_INTERPOLATE_TIMING;
#endif
+ if (latency > 0)
+ flags |= PA_STREAM_ADJUST_LATENCY;
+
fprintf(stderr, "Connection established.\n");
- stream = pa_stream_new(c, "interpol-test", &ss, NULL);
- assert(stream);
+ pa_assert_se(stream = pa_stream_new(c, "interpol-test", &ss, NULL));
if (playback) {
- pa_assert_se(pa_stream_connect_playback(stream, NULL, NULL, flags, NULL, NULL) == 0);
+ pa_assert_se(pa_stream_connect_playback(stream, NULL, &attr, flags, NULL, NULL) == 0);
pa_stream_set_write_callback(stream, stream_write_cb, NULL);
} else {
- pa_assert_se(pa_stream_connect_record(stream, NULL, NULL, flags) == 0);
+ pa_assert_se(pa_stream_connect_record(stream, NULL, &attr, flags) == 0);
pa_stream_set_read_callback(stream, stream_read_cb, NULL);
}
@@ -123,7 +149,7 @@ static void context_state_callback(pa_context *c, void *userdata) {
int main(int argc, char *argv[]) {
pa_threaded_mainloop* m = NULL;
- int k, r;
+ int k;
struct timeval start, last_info = { 0, 0 };
pa_usec_t old_t = 0, old_rtc = 0;
#ifdef CORK
@@ -134,24 +160,22 @@ int main(int argc, char *argv[]) {
playback = argc <= 1 || !pa_streq(argv[1], "-r");
- /* Set up a new main loop */
- m = pa_threaded_mainloop_new();
- assert(m);
-
- mainloop_api = pa_threaded_mainloop_get_api(m);
+ latency =
+ (argc >= 2 && !pa_streq(argv[1], "-r")) ? atoi(argv[1]) :
+ (argc >= 3 ? atoi(argv[2]) : 0);
- context = pa_context_new(mainloop_api, argv[0]);
- assert(context);
+ /* Set up a new main loop */
+ pa_assert_se(m = pa_threaded_mainloop_new());
+ pa_assert_se(mainloop_api = pa_threaded_mainloop_get_api(m));
+ pa_assert_se(context = pa_context_new(mainloop_api, argv[0]));
pa_context_set_state_callback(context, context_state_callback, NULL);
- r = pa_context_connect(context, NULL, 0, NULL);
- assert(r >= 0);
+ pa_assert_se(pa_context_connect(context, NULL, 0, NULL) >= 0);
pa_gettimeofday(&start);
- r = pa_threaded_mainloop_start(m);
- assert(r >= 0);
+ pa_assert_se(pa_threaded_mainloop_start(m) >= 0);
/* #ifdef CORK */
for (k = 0; k < 20000; k++)
@@ -160,7 +184,7 @@ int main(int argc, char *argv[]) {
/* #endif */
{
pa_bool_t success = FALSE, changed = FALSE;
- pa_usec_t t, rtc;
+ pa_usec_t t, rtc, d;
struct timeval now, tv;
pa_bool_t playing = FALSE;
@@ -169,7 +193,8 @@ int main(int argc, char *argv[]) {
if (stream) {
const pa_timing_info *info;
- if (pa_stream_get_time(stream, &t) >= 0)
+ if (pa_stream_get_time(stream, &t) >= 0 &&
+ pa_stream_get_latency(stream, &d, NULL) >= 0)
success = TRUE;
if ((info = pa_stream_get_timing_info(stream))) {
@@ -191,14 +216,16 @@ int main(int argc, char *argv[]) {
pa_bool_t cork_now;
#endif
rtc = pa_timeval_diff(&now, &start);
- printf("%i\t%llu\t%llu\t%llu\t%llu\t%lli\t%u\t%u\n", k,
+ printf("%i\t%llu\t%llu\t%llu\t%llu\t%lli\t%u\t%u\t%llu\t%llu\n", k,
(unsigned long long) rtc,
(unsigned long long) t,
(unsigned long long) (rtc-old_rtc),
(unsigned long long) (t-old_t),
(signed long long) rtc - (signed long long) t,
changed,
- playing);
+ playing,
+ (unsigned long long) latency,
+ (unsigned long long) d);
fflush(stdout);
old_t = t;
diff --git a/src/tests/mix-test.c b/src/tests/mix-test.c
index c7a30d67..f9f76da3 100644
--- a/src/tests/mix-test.c
+++ b/src/tests/mix-test.c
@@ -69,6 +69,8 @@ static void dump_block(const pa_sample_spec *ss, const pa_memchunk *chunk) {
break;
}
+ case PA_SAMPLE_S24_32NE:
+ case PA_SAMPLE_S24_32RE:
case PA_SAMPLE_S32NE:
case PA_SAMPLE_S32RE: {
uint32_t *u = d;
@@ -83,8 +85,10 @@ static void dump_block(const pa_sample_spec *ss, const pa_memchunk *chunk) {
case PA_SAMPLE_S24RE: {
uint8_t *u = d;
- for (i = 0; i < chunk->length / pa_frame_size(ss); i++)
- printf("0x%02x%02x%02xx ", *(u++), *(u++), *(u++));
+ for (i = 0; i < chunk->length / pa_frame_size(ss); i++) {
+ printf("0x%02x%02x%02xx ", *u, *(u+1), *(u+2));
+ u += 3;
+ }
break;
}
@@ -123,66 +127,72 @@ static pa_memblock* generate_block(pa_mempool *pool, const pa_sample_spec *ss) {
case PA_SAMPLE_U8:
case PA_SAMPLE_ULAW:
case PA_SAMPLE_ALAW: {
- static const uint8_t u8_samples[] =
- { 0x00, 0xFF, 0x7F, 0x80, 0x9f,
- 0x3f, 0x01, 0xF0, 0x20, 0x21 };
+ static const uint8_t u8_samples[] = {
+ 0x00, 0xFF, 0x7F, 0x80, 0x9f,
+ 0x3f, 0x01, 0xF0, 0x20, 0x21
+ };
- memcpy(d, &u8_samples[0], sizeof(u8_samples));
+ memcpy(d, u8_samples, sizeof(u8_samples));
break;
}
case PA_SAMPLE_S16NE:
case PA_SAMPLE_S16RE: {
- static const uint16_t u16_samples[] =
- { 0x0000, 0xFFFF, 0x7FFF, 0x8000, 0x9fff,
- 0x3fff, 0x0001, 0xF000, 0x0020, 0x0021 };
+ static const uint16_t u16_samples[] = {
+ 0x0000, 0xFFFF, 0x7FFF, 0x8000, 0x9fff,
+ 0x3fff, 0x0001, 0xF000, 0x0020, 0x0021
+ };
- memcpy(d, &u16_samples[0], sizeof(u16_samples));
+ memcpy(d, u16_samples, sizeof(u16_samples));
break;
}
+ case PA_SAMPLE_S24_32NE:
+ case PA_SAMPLE_S24_32RE:
case PA_SAMPLE_S32NE:
case PA_SAMPLE_S32RE: {
- static const uint32_t u32_samples[] =
- { 0x00000001, 0xFFFF0002, 0x7FFF0003, 0x80000004, 0x9fff0005,
- 0x3fff0006, 0x00010007, 0xF0000008, 0x00200009, 0x0021000A };
+ static const uint32_t u32_samples[] = {
+ 0x00000001, 0xFFFF0002, 0x7FFF0003, 0x80000004, 0x9fff0005,
+ 0x3fff0006, 0x00010007, 0xF0000008, 0x00200009, 0x0021000A
+ };
- memcpy(d, &u32_samples[0], sizeof(u32_samples));
+ memcpy(d, u32_samples, sizeof(u32_samples));
break;
}
case PA_SAMPLE_S24NE:
case PA_SAMPLE_S24RE: {
- /* Need to be on a byte array because they are not aligned */
- static const uint8_t u24_samples[] =
- { 0x00, 0x00, 0x01,
- 0xFF, 0xFF, 0x02,
- 0x7F, 0xFF, 0x03,
- 0x80, 0x00, 0x04,
- 0x9f, 0xff, 0x05,
- 0x3f, 0xff, 0x06,
- 0x01, 0x00, 0x07,
- 0xF0, 0x00, 0x08,
- 0x20, 0x00, 0x09,
- 0x21, 0x00, 0x0A };
-
- memcpy(d, &u24_samples[0], sizeof(u24_samples));
+ /* Need to be on a byte array because they are not aligned */
+ static const uint8_t u24_samples[] = {
+ 0x00, 0x00, 0x01,
+ 0xFF, 0xFF, 0x02,
+ 0x7F, 0xFF, 0x03,
+ 0x80, 0x00, 0x04,
+ 0x9f, 0xff, 0x05,
+ 0x3f, 0xff, 0x06,
+ 0x01, 0x00, 0x07,
+ 0xF0, 0x00, 0x08,
+ 0x20, 0x00, 0x09,
+ 0x21, 0x00, 0x0A
+ };
+
+ memcpy(d, u24_samples, sizeof(u24_samples));
break;
}
case PA_SAMPLE_FLOAT32NE:
case PA_SAMPLE_FLOAT32RE: {
float *u = d;
- static const float float_samples[] =
- { 0.0f, -1.0f, 1.0f, 4711.0f, 0.222f,
- 0.33f, -.3f, 99.0f, -0.555f, -.123f };
+ static const float float_samples[] = {
+ 0.0f, -1.0f, 1.0f, 4711.0f, 0.222f,
+ 0.33f, -.3f, 99.0f, -0.555f, -.123f
+ };
if (ss->format == PA_SAMPLE_FLOAT32RE) {
for (i = 0; i < 10; i++)
u[i] = swap_float(float_samples[i]);
- } else {
- memcpy(d, &float_samples[0], sizeof(float_samples));
- }
+ } else
+ memcpy(d, float_samples, sizeof(float_samples));
break;
}
diff --git a/src/tests/rtstutter.c b/src/tests/rtstutter.c
index a4b5d596..c93fee93 100644
--- a/src/tests/rtstutter.c
+++ b/src/tests/rtstutter.c
@@ -67,7 +67,9 @@ static void* work(void *p) {
pa_log_notice("CPU%i: Sleeping for 1s", PA_PTR_TO_UINT(p));
sleep(1);
+#ifdef CLOCK_REALTIME
pa_assert_se(clock_gettime(CLOCK_REALTIME, &end) == 0);
+#endif
nsec =
(uint64_t) ((((double) rand())*(double)(msec_upper-msec_lower)*PA_NSEC_PER_MSEC)/RAND_MAX) +
@@ -84,7 +86,9 @@ static void* work(void *p) {
}
do {
+#ifdef CLOCK_REALTIME
pa_assert_se(clock_gettime(CLOCK_REALTIME, &now) == 0);
+#endif
} while (now.tv_sec < end.tv_sec ||
(now.tv_sec == end.tv_sec && now.tv_nsec < end.tv_nsec));
}
diff --git a/src/tests/voltest.c b/src/tests/voltest.c
index 2dcfa53c..64aec5c6 100644
--- a/src/tests/voltest.c
+++ b/src/tests/voltest.c
@@ -1,8 +1,33 @@
+/***
+ 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, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA.
+***/
+
+#ifdef HAVE_CONFIG_H
+#include
+#endif
+
#include
#include
#include
+#include
+
int main(int argc, char *argv[]) {
pa_volume_t v;
pa_cvolume cv;
@@ -60,5 +85,16 @@ int main(int argc, char *argv[]) {
printf("After: volume: [%s]; balance: %2.1f (intended: %2.1f) %s\n", pa_cvolume_snprint(s, sizeof(s), &r), k, b, k < b-.05 || k > b+.5 ? "MISMATCH" : "");
}
+ for (v = PA_VOLUME_MUTED; v <= PA_VOLUME_NORM*2; v += 1) {
+
+ double l = pa_sw_volume_to_linear(v);
+ pa_volume_t k = pa_sw_volume_from_linear(l);
+ double db = pa_sw_volume_to_dB(v);
+ pa_volume_t r = pa_sw_volume_from_dB(db);
+
+ pa_assert(k == v);
+ pa_assert(r == v);
+ }
+
return 0;
}
diff --git a/src/utils/pacat.c b/src/utils/pacat.c
index f00a32eb..9264a062 100644
--- a/src/utils/pacat.c
+++ b/src/utils/pacat.c
@@ -105,12 +105,12 @@ static void context_drain_complete(pa_context*c, void *userdata) {
static void stream_drain_complete(pa_stream*s, int success, void *userdata) {
if (!success) {
- pa_log(_("Failed to drain stream: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("Failed to drain stream: %s"), pa_strerror(pa_context_errno(context)));
quit(1);
}
if (verbose)
- pa_log(_("Playback stream drained.\n"));
+ pa_log(_("Playback stream drained."));
pa_stream_disconnect(stream);
pa_stream_unref(stream);
@@ -120,7 +120,7 @@ static void stream_drain_complete(pa_stream*s, int success, void *userdata) {
pa_context_disconnect(context);
else {
if (verbose)
- pa_log(_("Draining connection to server.\n"));
+ pa_log(_("Draining connection to server."));
}
}
@@ -133,7 +133,7 @@ static void start_drain(void) {
pa_stream_set_write_callback(stream, NULL, NULL);
if (!(o = pa_stream_drain(stream, stream_drain_complete, NULL))) {
- pa_log(_("pa_stream_drain(): %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("pa_stream_drain(): %s"), pa_strerror(pa_context_errno(context)));
quit(1);
return;
}
@@ -156,7 +156,7 @@ static void do_stream_write(size_t length) {
l = buffer_length;
if (pa_stream_write(stream, (uint8_t*) buffer + buffer_index, l, NULL, 0, PA_SEEK_RELATIVE) < 0) {
- pa_log(_("pa_stream_write() failed: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("pa_stream_write() failed: %s"), pa_strerror(pa_context_errno(context)));
quit(1);
return;
}
@@ -193,7 +193,11 @@ static void stream_write_callback(pa_stream *s, size_t length, void *userdata) {
pa_assert(sndfile);
- data = pa_xmalloc(length);
+ if (pa_stream_begin_write(s, &data, &length) < 0) {
+ pa_log(_("pa_stream_begin_write() failed: %s"), pa_strerror(pa_context_errno(context)));
+ quit(1);
+ return;
+ }
if (readf_function) {
size_t k = pa_frame_size(&sample_spec);
@@ -205,9 +209,9 @@ static void stream_write_callback(pa_stream *s, size_t length, void *userdata) {
bytes = sf_read_raw(sndfile, data, (sf_count_t) length);
if (bytes > 0)
- pa_stream_write(s, data, (size_t) bytes, pa_xfree, 0, PA_SEEK_RELATIVE);
+ pa_stream_write(s, data, (size_t) bytes, NULL, 0, PA_SEEK_RELATIVE);
else
- pa_xfree(data);
+ pa_stream_cancel_write(s);
if (bytes < (sf_count_t) length)
start_drain();
@@ -226,12 +230,11 @@ static void stream_read_callback(pa_stream *s, size_t length, void *userdata) {
if (stdio_event)
mainloop_api->io_enable(stdio_event, PA_IO_EVENT_OUTPUT);
-
while (pa_stream_readable_size(s) > 0) {
const void *data;
if (pa_stream_peek(s, &data, &length) < 0) {
- pa_log(_("pa_stream_peek() failed: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("pa_stream_peek() failed: %s"), pa_strerror(pa_context_errno(context)));
quit(1);
return;
}
@@ -249,6 +252,7 @@ static void stream_read_callback(pa_stream *s, size_t length, void *userdata) {
buffer_length = length;
buffer_index = 0;
}
+
pa_stream_drop(s);
}
@@ -260,7 +264,7 @@ static void stream_read_callback(pa_stream *s, size_t length, void *userdata) {
const void *data;
if (pa_stream_peek(s, &data, &length) < 0) {
- pa_log(_("pa_stream_peek() failed: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("pa_stream_peek() failed: %s"), pa_strerror(pa_context_errno(context)));
quit(1);
return;
}
@@ -300,25 +304,25 @@ static void stream_state_callback(pa_stream *s, void *userdata) {
const pa_buffer_attr *a;
char cmt[PA_CHANNEL_MAP_SNPRINT_MAX], sst[PA_SAMPLE_SPEC_SNPRINT_MAX];
- pa_log(_("Stream successfully created.\n"));
+ pa_log(_("Stream successfully created."));
if (!(a = pa_stream_get_buffer_attr(s)))
- pa_log(_("pa_stream_get_buffer_attr() failed: %s\n"), pa_strerror(pa_context_errno(pa_stream_get_context(s))));
+ pa_log(_("pa_stream_get_buffer_attr() failed: %s"), pa_strerror(pa_context_errno(pa_stream_get_context(s))));
else {
if (mode == PLAYBACK)
- pa_log(_("Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u\n"), a->maxlength, a->tlength, a->prebuf, a->minreq);
+ pa_log(_("Buffer metrics: maxlength=%u, tlength=%u, prebuf=%u, minreq=%u"), a->maxlength, a->tlength, a->prebuf, a->minreq);
else {
pa_assert(mode == RECORD);
- pa_log(_("Buffer metrics: maxlength=%u, fragsize=%u\n"), a->maxlength, a->fragsize);
+ pa_log(_("Buffer metrics: maxlength=%u, fragsize=%u"), a->maxlength, a->fragsize);
}
}
- pa_log(_("Using sample spec '%s', channel map '%s'.\n"),
+ pa_log(_("Using sample spec '%s', channel map '%s'."),
pa_sample_spec_snprint(sst, sizeof(sst), pa_stream_get_sample_spec(s)),
pa_channel_map_snprint(cmt, sizeof(cmt), pa_stream_get_channel_map(s)));
- pa_log(_("Connected to device %s (%u, %ssuspended).\n"),
+ pa_log(_("Connected to device %s (%u, %ssuspended)."),
pa_stream_get_device_name(s),
pa_stream_get_device_index(s),
pa_stream_is_suspended(s) ? "" : "not ");
@@ -328,7 +332,7 @@ static void stream_state_callback(pa_stream *s, void *userdata) {
case PA_STREAM_FAILED:
default:
- pa_log(_("Stream error: %s\n"), pa_strerror(pa_context_errno(pa_stream_get_context(s))));
+ pa_log(_("Stream error: %s"), pa_strerror(pa_context_errno(pa_stream_get_context(s))));
quit(1);
}
}
@@ -338,9 +342,9 @@ static void stream_suspended_callback(pa_stream *s, void *userdata) {
if (verbose) {
if (pa_stream_is_suspended(s))
- pa_log(_("Stream device suspended.%s \n"), CLEAR_LINE);
+ pa_log(_("Stream device suspended.%s"), CLEAR_LINE);
else
- pa_log(_("Stream device resumed.%s \n"), CLEAR_LINE);
+ pa_log(_("Stream device resumed.%s"), CLEAR_LINE);
}
}
@@ -348,35 +352,35 @@ static void stream_underflow_callback(pa_stream *s, void *userdata) {
pa_assert(s);
if (verbose)
- pa_log(_("Stream underrun.%s \n"), CLEAR_LINE);
+ pa_log(_("Stream underrun.%s"), CLEAR_LINE);
}
static void stream_overflow_callback(pa_stream *s, void *userdata) {
pa_assert(s);
if (verbose)
- pa_log(_("Stream overrun.%s \n"), CLEAR_LINE);
+ pa_log(_("Stream overrun.%s"), CLEAR_LINE);
}
static void stream_started_callback(pa_stream *s, void *userdata) {
pa_assert(s);
if (verbose)
- pa_log(_("Stream started.%s \n"), CLEAR_LINE);
+ pa_log(_("Stream started.%s"), CLEAR_LINE);
}
static void stream_moved_callback(pa_stream *s, void *userdata) {
pa_assert(s);
if (verbose)
- pa_log(_("Stream moved to device %s (%u, %ssuspended).%s \n"), pa_stream_get_device_name(s), pa_stream_get_device_index(s), pa_stream_is_suspended(s) ? "" : _("not "), CLEAR_LINE);
+ pa_log(_("Stream moved to device %s (%u, %ssuspended).%s"), pa_stream_get_device_name(s), pa_stream_get_device_index(s), pa_stream_is_suspended(s) ? "" : _("not "), CLEAR_LINE);
}
static void stream_buffer_attr_callback(pa_stream *s, void *userdata) {
pa_assert(s);
if (verbose)
- pa_log(_("Stream buffer attributes changed.%s \n"), CLEAR_LINE);
+ pa_log(_("Stream buffer attributes changed.%s"), CLEAR_LINE);
}
static void stream_event_callback(pa_stream *s, const char *name, pa_proplist *pl, void *userdata) {
@@ -387,7 +391,7 @@ static void stream_event_callback(pa_stream *s, const char *name, pa_proplist *p
pa_assert(pl);
t = pa_proplist_to_string_sep(pl, ", ");
- pa_log("Got event '%s', properties '%s'\n", name, t);
+ pa_log("Got event '%s', properties '%s'", name, t);
pa_xfree(t);
}
@@ -409,10 +413,10 @@ static void context_state_callback(pa_context *c, void *userdata) {
pa_assert(!stream);
if (verbose)
- pa_log(_("Connection established.%s \n"), CLEAR_LINE);
+ pa_log(_("Connection established.%s"), CLEAR_LINE);
if (!(stream = pa_stream_new_with_proplist(c, NULL, &sample_spec, &channel_map, proplist))) {
- pa_log(_("pa_stream_new() failed: %s\n"), pa_strerror(pa_context_errno(c)));
+ pa_log(_("pa_stream_new() failed: %s"), pa_strerror(pa_context_errno(c)));
goto fail;
}
@@ -440,13 +444,13 @@ static void context_state_callback(pa_context *c, void *userdata) {
if (mode == PLAYBACK) {
pa_cvolume cv;
if ((r = pa_stream_connect_playback(stream, device, latency > 0 ? &buffer_attr : NULL, flags, volume_is_set ? pa_cvolume_set(&cv, sample_spec.channels, volume) : NULL, NULL)) < 0) {
- pa_log(_("pa_stream_connect_playback() failed: %s\n"), pa_strerror(pa_context_errno(c)));
+ pa_log(_("pa_stream_connect_playback() failed: %s"), pa_strerror(pa_context_errno(c)));
goto fail;
}
} else {
if ((r = pa_stream_connect_record(stream, device, latency > 0 ? &buffer_attr : NULL, flags)) < 0) {
- pa_log(_("pa_stream_connect_record() failed: %s\n"), pa_strerror(pa_context_errno(c)));
+ pa_log(_("pa_stream_connect_record() failed: %s"), pa_strerror(pa_context_errno(c)));
goto fail;
}
}
@@ -460,7 +464,7 @@ static void context_state_callback(pa_context *c, void *userdata) {
case PA_CONTEXT_FAILED:
default:
- pa_log(_("Connection failure: %s\n"), pa_strerror(pa_context_errno(c)));
+ pa_log(_("Connection failure: %s"), pa_strerror(pa_context_errno(c)));
goto fail;
}
@@ -493,12 +497,12 @@ static void stdin_callback(pa_mainloop_api*a, pa_io_event *e, int fd, pa_io_even
if ((r = read(fd, buffer, l)) <= 0) {
if (r == 0) {
if (verbose)
- pa_log(_("Got EOF.\n"));
+ pa_log(_("Got EOF."));
start_drain();
} else {
- pa_log(_("read() failed: %s\n"), strerror(errno));
+ pa_log(_("read() failed: %s"), strerror(errno));
quit(1);
}
@@ -530,7 +534,7 @@ static void stdout_callback(pa_mainloop_api*a, pa_io_event *e, int fd, pa_io_eve
pa_assert(buffer_length);
if ((r = write(fd, (uint8_t*) buffer+buffer_index, buffer_length)) <= 0) {
- pa_log(_("write() failed: %s\n"), strerror(errno));
+ pa_log(_("write() failed: %s"), strerror(errno));
quit(1);
mainloop_api->io_free(stdio_event);
@@ -551,7 +555,7 @@ static void stdout_callback(pa_mainloop_api*a, pa_io_event *e, int fd, pa_io_eve
/* UNIX signal to quit recieved */
static void exit_signal_callback(pa_mainloop_api*m, pa_signal_event *e, int sig, void *userdata) {
if (verbose)
- pa_log(_("Got signal, exiting.\n"));
+ pa_log(_("Got signal, exiting."));
quit(0);
}
@@ -565,7 +569,7 @@ static void stream_update_timing_callback(pa_stream *s, int success, void *userd
if (!success ||
pa_stream_get_time(s, &usec) < 0 ||
pa_stream_get_latency(s, &l, &negative) < 0) {
- pa_log(_("Failed to get latency: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("Failed to get latency: %s"), pa_strerror(pa_context_errno(context)));
quit(1);
return;
}
@@ -588,7 +592,7 @@ static void time_event_callback(pa_mainloop_api *m, pa_time_event *e, const stru
if (stream && pa_stream_get_state(stream) == PA_STREAM_READY) {
pa_operation *o;
if (!(o = pa_stream_update_timing_info(stream, stream_update_timing_callback, NULL)))
- pa_log(_("pa_stream_update_timing_info() failed: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("pa_stream_update_timing_info() failed: %s"), pa_strerror(pa_context_errno(context)));
else
pa_operation_unref(o);
}
@@ -753,7 +757,7 @@ int main(int argc, char *argv[]) {
if (!(t = pa_locale_to_utf8(optarg)) ||
pa_proplist_sets(proplist, PA_PROP_APPLICATION_NAME, t) < 0) {
- pa_log(_("Invalid client name '%s'\n"), t ? t : optarg);
+ pa_log(_("Invalid client name '%s'"), t ? t : optarg);
pa_xfree(t);
goto quit;
}
@@ -769,7 +773,7 @@ int main(int argc, char *argv[]) {
if (!(t = pa_locale_to_utf8(optarg)) ||
pa_proplist_sets(proplist, PA_PROP_MEDIA_NAME, t) < 0) {
- pa_log(_("Invalid stream name '%s'\n"), t ? t : optarg);
+ pa_log(_("Invalid stream name '%s'"), t ? t : optarg);
pa_xfree(t);
goto quit;
}
@@ -806,7 +810,7 @@ int main(int argc, char *argv[]) {
case ARG_CHANNELMAP:
if (!pa_channel_map_parse(&channel_map, optarg)) {
- pa_log(_("Invalid channel map '%s'\n"), optarg);
+ pa_log(_("Invalid channel map '%s'"), optarg);
goto quit;
}
@@ -835,14 +839,14 @@ int main(int argc, char *argv[]) {
case ARG_LATENCY:
if (((latency = (size_t) atoi(optarg))) <= 0) {
- pa_log(_("Invalid latency specification '%s'\n"), optarg);
+ pa_log(_("Invalid latency specification '%s'"), optarg);
goto quit;
}
break;
case ARG_PROCESS_TIME:
if (((process_time = (size_t) atoi(optarg))) <= 0) {
- pa_log(_("Invalid process time specification '%s'\n"), optarg);
+ pa_log(_("Invalid process time specification '%s'"), optarg);
goto quit;
}
break;
@@ -854,7 +858,7 @@ int main(int argc, char *argv[]) {
pa_proplist_setp(proplist, t) < 0) {
pa_xfree(t);
- pa_log(_("Invalid property '%s'\n"), optarg);
+ pa_log(_("Invalid property '%s'"), optarg);
goto quit;
}
@@ -890,7 +894,7 @@ int main(int argc, char *argv[]) {
}
if (!pa_sample_spec_valid(&sample_spec)) {
- pa_log(_("Invalid sample specification\n"));
+ pa_log(_("Invalid sample specification"));
goto quit;
}
@@ -900,19 +904,19 @@ int main(int argc, char *argv[]) {
filename = argv[optind];
if ((fd = open(argv[optind], mode == PLAYBACK ? O_RDONLY : O_WRONLY|O_TRUNC|O_CREAT, 0666)) < 0) {
- pa_log(_("open(): %s\n"), strerror(errno));
+ pa_log(_("open(): %s"), strerror(errno));
goto quit;
}
if (dup2(fd, mode == PLAYBACK ? STDIN_FILENO : STDOUT_FILENO) < 0) {
- pa_log(_("dup2(): %s\n"), strerror(errno));
+ pa_log(_("dup2(): %s"), strerror(errno));
goto quit;
}
pa_close(fd);
} else if (optind+1 <= argc) {
- pa_log(_("Too many arguments.\n"));
+ pa_log(_("Too many arguments."));
goto quit;
}
@@ -923,7 +927,7 @@ int main(int argc, char *argv[]) {
if (mode == RECORD) {
/* This might patch up the sample spec */
if (pa_sndfile_write_sample_spec(&sfi, &sample_spec) < 0) {
- pa_log(_("Failed to generate sample specification for file.\n"));
+ pa_log(_("Failed to generate sample specification for file."));
goto quit;
}
@@ -943,16 +947,16 @@ int main(int argc, char *argv[]) {
if (!(sndfile = sf_open_fd(mode == RECORD ? STDOUT_FILENO : STDIN_FILENO,
mode == RECORD ? SFM_WRITE : SFM_READ,
&sfi, 0))) {
- pa_log(_("Failed to open audio file.\n"));
+ pa_log(_("Failed to open audio file."));
goto quit;
}
if (mode == PLAYBACK) {
if (sample_spec_set)
- pa_log(_("Warning: specified sample specification will be overwritten with specification from file.\n"));
+ pa_log(_("Warning: specified sample specification will be overwritten with specification from file."));
if (pa_sndfile_read_sample_spec(sndfile, &sample_spec) < 0) {
- pa_log(_("Failed to determine sample specification from file.\n"));
+ pa_log(_("Failed to determine sample specification from file."));
goto quit;
}
sample_spec_set = TRUE;
@@ -961,7 +965,7 @@ int main(int argc, char *argv[]) {
/* Allow the user to overwrite the channel map on the command line */
if (pa_sndfile_read_channel_map(sndfile, &channel_map) < 0) {
if (sample_spec.channels > 2)
- pa_log(_("Warning: Failed to determine channel map from file.\n"));
+ pa_log(_("Warning: Failed to determine channel map from file."));
} else
channel_map_set = TRUE;
}
@@ -972,7 +976,7 @@ int main(int argc, char *argv[]) {
pa_channel_map_init_extend(&channel_map, sample_spec.channels, PA_CHANNEL_MAP_DEFAULT);
if (!pa_channel_map_compatible(&channel_map, &sample_spec)) {
- pa_log(_("Channel map doesn't match sample specification\n"));
+ pa_log(_("Channel map doesn't match sample specification"));
goto quit;
}
@@ -983,7 +987,7 @@ int main(int argc, char *argv[]) {
readf_function = pa_sndfile_readf_function(&sample_spec);
else {
if (pa_sndfile_write_channel_map(sndfile, &channel_map) < 0)
- pa_log(_("Warning: failed to write channel map to file.\n"));
+ pa_log(_("Warning: failed to write channel map to file."));
writef_function = pa_sndfile_writef_function(&sample_spec);
}
@@ -998,7 +1002,7 @@ int main(int argc, char *argv[]) {
if (verbose) {
char tss[PA_SAMPLE_SPEC_SNPRINT_MAX], tcm[PA_CHANNEL_MAP_SNPRINT_MAX];
- pa_log(_("Opening a %s stream with sample specification '%s' and channel map '%s'.\n"),
+ pa_log(_("Opening a %s stream with sample specification '%s' and channel map '%s'."),
mode == RECORD ? _("recording") : _("playback"),
pa_sample_spec_snprint(tss, sizeof(tss), &sample_spec),
pa_channel_map_snprint(tcm, sizeof(tcm), &channel_map));
@@ -1025,7 +1029,7 @@ int main(int argc, char *argv[]) {
/* Set up a new main loop */
if (!(m = pa_mainloop_new())) {
- pa_log(_("pa_mainloop_new() failed.\n"));
+ pa_log(_("pa_mainloop_new() failed."));
goto quit;
}
@@ -1044,14 +1048,14 @@ int main(int argc, char *argv[]) {
mode == PLAYBACK ? STDIN_FILENO : STDOUT_FILENO,
mode == PLAYBACK ? PA_IO_EVENT_INPUT : PA_IO_EVENT_OUTPUT,
mode == PLAYBACK ? stdin_callback : stdout_callback, NULL))) {
- pa_log(_("io_new() failed.\n"));
+ pa_log(_("io_new() failed."));
goto quit;
}
}
/* Create a new connection context */
if (!(context = pa_context_new_with_proplist(mainloop_api, NULL, proplist))) {
- pa_log(_("pa_context_new() failed.\n"));
+ pa_log(_("pa_context_new() failed."));
goto quit;
}
@@ -1059,20 +1063,20 @@ int main(int argc, char *argv[]) {
/* Connect the context */
if (pa_context_connect(context, server, 0, NULL) < 0) {
- pa_log(_("pa_context_connect() failed: %s\n"), pa_strerror(pa_context_errno(context)));
+ pa_log(_("pa_context_connect() failed: %s"), pa_strerror(pa_context_errno(context)));
goto quit;
}
if (verbose) {
if (!(time_event = pa_context_rttime_new(context, pa_rtclock_now() + TIME_EVENT_USEC, time_event_callback, NULL))) {
- pa_log(_("pa_context_rttime_new() failed.\n"));
+ pa_log(_("pa_context_rttime_new() failed."));
goto quit;
}
}
/* Run the main loop */
if (pa_mainloop_run(m, &ret) < 0) {
- pa_log(_("pa_mainloop_run() failed.\n"));
+ pa_log(_("pa_mainloop_run() failed."));
goto quit;
}
diff --git a/src/utils/pacmd.c b/src/utils/pacmd.c
index ac60a0bc..5ef57e3b 100644
--- a/src/utils/pacmd.c
+++ b/src/utils/pacmd.c
@@ -25,7 +25,7 @@
#include
#include
-#include