Pulseaudio fails to run when system's language is in certain non-English locales
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | pulseaudio (Ubuntu) |
High
|
David Henningsson | ||
Bug Description
Changing the System Language in Greek resulted in the corruption of the sound in the entire system. This happened when the latest updates applied and after a reboot.
I have attempted a new installation in Greek getting the latest ISO image and the problem exists there as well.
If I go back (turn the system) to the English Language and reboot the problem disappears.
I have also tested another Language (Russian Localization) but the problem does not occur.
How to reproduce:
Apply the latest updates and install the Greek language packages (language-pack-el , language-
Choose Greek as the system's language and reboot.
ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: pulseaudio 1:6.0-0ubuntu5
ProcVersionSign
Uname: Linux 3.19.0-14-generic x86_64
ApportVersion: 2.17.1-0ubuntu2
Architecture: amd64
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/hwC1D0', '/dev/snd/
CurrentDesktop: Unity
Date: Fri Apr 17 09:48:39 2015
InstallationDate: Installed on 2015-04-15 (1 days ago)
InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Beta amd64 (20150415)
SourcePackage: pulseaudio
Symptom: audio
Symptom_Card: HDA-Intel - HDA Intel PCH
Symptom_Jack: Speaker, Internal
Title: [SVF1532X1EB, Realtek ALC233, Speaker, Internal] Pulseaudio fails to detect card
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 09/19/2014
dmi.bios.vendor: Insyde Corp.
dmi.bios.version: R1080DB
dmi.board.
dmi.board.name: VAIO
dmi.board.vendor: Sony Corporation
dmi.board.version: N/A
dmi.chassis.
dmi.chassis.type: 10
dmi.chassis.vendor: Sony Corporation
dmi.chassis.
dmi.modalias: dmi:bvnInsydeCo
dmi.product.name: SVF1532X1EB
dmi.product.
dmi.sys.vendor: Sony Corporation
Related branches
| Raymond (superquad-vortex2) wrote : | #2 |
| Launchpad Janitor (janitor) wrote : | #3 |
Status changed to 'Confirmed' because the bug affects multiple users.
| Changed in pulseaudio (Ubuntu): | |
| status: | New → Confirmed |
| description: | updated |
| Manos Sarris (emmsarris) wrote : | #5 |
Actually it does not concern only realtek but my intel hd audio card too. Thanks for the workaround...
| N1ck 7h0m4d4k15 (nick-athens30) wrote : | #6 |
This .po file seems to work without problems.
Compile the file to pulseaudio.mo and move it to /usr/share/
$ msgfmt -o pulseaudio.mo -v ~/Downloads/el.po
$ sudo mv /usr/share/
$ sudo mv ~/pulseaudio.mo /usr/share/
$ sudo reboot
| summary: |
- [SVF1532X1EB, Realtek ALC233, Speaker, Internal] Pulseaudio fails to - detect card + Pulseaudio fails to run when system's language is in Greek |
| N1ck 7h0m4d4k15 (nick-athens30) wrote : Re: Pulseaudio fails to run when system's language is in Greek | #7 |
Right click and save as el.po
Then proceed with the instructions above (comment #6).
| Nick Bagios (nickbagi) wrote : | #8 |
It works for me with solution of NickTh (Kubuntu 15.04) thank you
| Changed in pulseaudio (Ubuntu): | |
| importance: | Undecided → Medium |
| N1ck 7h0m4d4k15 (nick-athens30) wrote : | #9 |
Further testing I've made showed different results.
I've downloaded the source code of pulseaudio in Vivid
$ apt-get source pulseaudio
then I compiled the pulseaudio-
Guess what, audio works.
So, maybe something is going on with the Machine Object file and has nothing to do with translation ?
| Simos Xenitellis (simosx) wrote : | #10 |
The relevant message in /var/log/syslog is:
Apr 20 14:03:45 user-laptop pulseaudio[1661]: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-
What is says here is that "insmod" (or similar) was called with parameters like "tsched=ναι", and failed.
"git blame" says:
d806b197 src/pulsecore/
cd13fb36 src/pulsecore/
which means that about a year ago a change was made to make yes/no localisable.
A quick fix is to make pa_yes_no() non-localisable again.
| Robie Basak (racb) wrote : | #11 |
Sounds like sound is broken for everyone when in certain locales? That'll be Importance: High then.
| Changed in pulseaudio (Ubuntu): | |
| importance: | Medium → High |
| tags: | added: rls-v-incoming |
| summary: |
- Pulseaudio fails to run when system's language is in Greek + Pulseaudio fails to run when system's language is in certain non-English + locales |
| Changed in pulseaudio (Ubuntu): | |
| status: | Confirmed → In Progress |
| assignee: | nobody → David Henningsson (diwic) |
| David Henningsson (diwic) wrote : | #12 |
I've tested and uploaded a fix now, it's waiting for an archive admin to approve. Thanks to all of you who helped reporting / triaging / analysing this issue, in this case it was just a matter of packaging up Simos patch, test and upload.
| David Henningsson (diwic) wrote : [PATCH] core-util, pactl: Make one localised and one non-localised version of pa_yes_no | #13 |
We currently use pa_yes_no to write module arguments, so they can not be
localised. Instead add a new pa_yes_no_localised function and use it in pactl
(and thus, revert all other places to use the non-localised version).
BugLink: https:/
Signed-off-by: David Henningsson <email address hidden>
---
src/pulsecore/
src/utils/pactl.c | 20 +++++++
2 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/src/pulsecore
index dcdc40e..d5a2d39 100644
--- a/src/pulsecore
+++ b/src/pulsecore
@@ -90,6 +90,10 @@ int pa_parse_
int pa_parse_
static inline const char *pa_yes_no(bool b) {
+ return b ? "yes" : "no";
+}
+
+static inline const char *pa_yes_
return b ? _("yes") : _("no");
}
diff --git a/src/utils/pactl.c b/src/utils/pactl.c
index a13c7fb..d6791d4 100644
--- a/src/utils/pactl.c
+++ b/src/utils/pactl.c
@@ -196,7 +196,7 @@ static void get_server_
- pa_yes_
+ pa_yes_
@@ -302,7 +302,7 @@ static void get_sink_
- pa_yes_no(i->mute),
+ pa_yes_
@@ -409,7 +409,7 @@ static void get_source_
- pa_yes_no(i->mute),
+ pa_yes_
@@ -578,8 +578,8 @@ static void get_card_
for (p = i->profiles2; *p; p++)
- printf("\t\t%s: %s (sinks: %u, sources: %u, priority: %u, available: %s)\n", (*p)->name,
- (*p)->description, (*p)->n_sinks, (*p)->n_sources, (*p)->priority, pa_yes_no((*p)-...
| Tanu Kaskinen (tanuk) wrote : Re: [pulseaudio-discuss] [PATCH] core-util, pactl: Make one localised and one non-localised version of pa_yes_no | #14 |
On Mon, 2015-04-20 at 17:41 +0200, David Henningsson wrote:
> We currently use pa_yes_no to write module arguments, so they can not be
> localised. Instead add a new pa_yes_no_localised function and use it in pactl
> (and thus, revert all other places to use the non-localised version).
>
> BugLink: https:/
> Signed-off-by: David Henningsson <email address hidden>
> ---
> src/pulsecore/
> src/utils/pactl.c | 20 +++++++
> 2 files changed, 14 insertions(+), 10 deletions(-)
Looks good to me.
--
Tanu
The attachment "Make pa_yes_no() non-localisable." seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.
[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]
| tags: | added: patch |
| Launchpad Janitor (janitor) wrote : | #16 |
This bug was fixed in the package pulseaudio - 1:6.0-0ubuntu6
---------------
pulseaudio (1:6.0-0ubuntu6) vivid; urgency=medium
* debian/
- Fix pulseaudio failure to load in some non-English
locales (LP: #1445358)
-- David Henningsson <email address hidden> Mon, 20 Apr 2015 16:19:10 +0200
| Changed in pulseaudio (Ubuntu): | |
| status: | In Progress → Fix Released |


Απρ 17 08:28:12 hostname pulseaudio[952]: [pulseaudio] module-alsa-card.c: Failed to parse ignore_dB argument. 0000_00_ 03.0" card_name= "alsa_card. pci-0000_ 00_03.0" namereg_fail=false tsched=ναι fixed_latency_ range=όχι ignore_dB=όχι deferred_volume=ναι use_ucm=ναι card_properties ="module- udev-detect. discovered= 1""): initialization failed. 0000_00_ 1b.0" card_name= "alsa_card. pci-0000_ 00_1b.0" namereg_fail=false tsched=ναι fixed_latency_ range=όχι ignore_dB=όχι deferred_volume=ναι use_ucm=ναι card_properties ="module- udev-detect. discovered= 1""): initialization failed.
Απρ 17 08:28:12 hostname pulseaudio[952]: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-
Απρ 17 08:28:12 hostname pulseaudio[952]: [pulseaudio] module-alsa-card.c: Failed to parse ignore_dB argument.
Απρ 17 08:28:12 hostname pulseaudio[952]: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="1" name="pci-
Απρ 17 08:28:12 hostname pulseaudio[1021]: [pulseaudio] pid.c: Daemon already running.
strange that those parameters are localised