Thursday, April 23, 2009

Flash On Flash With Pulse

I think that I have gotten Flash working with pulse now to our thin clients. Here are my work notes in case this helps anyone.

From our old system, this was what the daemon reported when playing Youtube videos:

I: client.c: created 27 "Native client (TCP/IP client from 128.222.233.233:53650)"
I: client.c: client 27 changed name from "Native client (TCP/IP client from 128.222.233.233:53650)" to "flashplayer"
I: module-volume-restore.c: Restoring volume for
I: module-volume-restore.c: Restoring sink for
I: sink-input.c: created 20 "playback" on oss_output.dsp with sample spec s16le 2ch 44100Hz
D: memblock.c: Memory block too large for pool: 1048576 > 16376
D: memblockq.c: memblockq requested: maxlength=132300, tlength=88200, base=4, prebuf=87318, minreq=882
D: memblockq.c: m
emblockq sanitized: maxlength=132300, tlength=88200, base=4, prebuf=87320, minreq=880

Here is the same page on OpenSuse 11.1

I: client.c: created 31 "Native client (TCP/IP client from 128.222.233.236:38065)"
I: client.c: client 31 changed name from "Native client (TCP/IP client from 128.222.233.236:38065)" to "flashplayer"
I: module-volume-restore.c: Restoring volume for
I: module-volume-restore.c: Restoring sin
k for
I: sink-input.c: created 22 "playback" on oss_output.dsp with sample spec s16le 2ch 44100Hz
D: memblock.c: Memory block too large for pool: 1048576 > 16376
D: memblockq.c: memblockq requested: maxlength=4194304, tlength=44100, base=4, prebuf=44100, minreq=8820
D: memblockq.c: memblockq sanitized: maxlength=4194304, tlength=44100, base=4, prebuf=44100, minreq=1
D: memblock.c: Pool full

D: memblock.c: Pool full
D: memblock.c: Pool full
D: memblock.c: Pool full
D: memblock.c: Pool full

The sound would play for a short while, and then get choppy. The browser would start to gray out and eventually freeze.

I then started looking around and found
that many people were mentioning that libflashplayer was no longer needed and to use the Alsa-Pulse "device" instead to increase browser stability. I straced aplay and could see that it was looking for /etc/asound.conf which it was not finding. I looked in the directory and noticed that asound-pulse.conf is what was loaded instead. I soft-linked it into asound.conf and aplay -Dpulse started to work as expected. I then removed libflashplayer.so and started up Firefox and it's working *much* better now. The pulse daemon is no longer getting hammered with spewage.

Things like this really make you want to put in a little classic Queen. :)


2 comments:

Anonymous said...

Flash!!! WoooOOOOooooHH! He'll save every one of us!

Anonymous said...

Hi David,

Apologies for the orthogonal post ...

Could you post a mini-HOWTO about your current thinclient deployment? Mainly, the following:
1) Hardware configuration/spec
2) Software
3) Patches? and what they fix?

This would be most helpful.