PDA

View Full Version : Does SoftSqueeze need a mathematical coprocessor



truehl
2010-04-07, 00:19
Hi folks,
does SoftSqueeze need a mathematical coprocessor like SqueezeSlave? And if the answer is yes: Does someone know an other player working headless on debian together with SBS?

Thanks for your reply!

Greetings,
Thomas

bpa
2010-04-07, 00:25
does SoftSqueeze need a mathematical coprocessor like SqueezeSlave? And if the answer is yes: Does someone know an other player working headless on debian together with SBS?

No - it is written in Java so if Java runs on your PC then it should run OK - however it may be slow.

It would be better to describe the symptoms of your problem rather your diagnosis.

Not sure if the headless question is related to the coprocessor one. Softqueeze will run headless but the Java libraries requires an Xserver to be running even though the display is not used.

truehl
2010-04-07, 00:36
No - it is written in Java so if Java runs on your PC then it should run OK - however it may be slow.

It would be better to describe the symptoms of your problem rather your diagnosis.

Not sure if the headless question is related to the coprocessor one. Softqueeze will run headless but the Java libraries requires an Xserver to be running even though the display is not used.

bpa: Thank a lot! The background of my question is: I would like to integrate a player in my SqueezePlug project. SqueezePlug runs on SheevaPlug. SheevaPlug uses an ARM-Processor without a Coprocessor, so I can't use SqueezeSlave. SheevaPlug is a complete headless device running debian. On SqueezePlugVM (virtual SqueezePlug on PC) I use SqueezeSlave and it works great. So I'm searching for a player working on a SheevaPlug.

Greetings,
Thomas

bpa
2010-04-07, 01:18
What audio out are you using on the Sheevaplug ?

signor_rossi
2010-04-07, 01:29
Couldn't squeezeslave be compiled to adjust to the fact that the plugcomputer doesn't have a FPU? Does it include the decoder libraries or does it rely on separate libraries?
Maybe you should ask the squeezeslave devs (if you haven't already)?

EDIT: libmad already doesn't need a FPU? See here: http://www.underbit.com/products/mad/
EDIT2: vorbis has a version that doesn't need a FPU too? See 'Tremor' here: http://www.xiph.org/vorbis/

bpa
2010-04-07, 01:44
signor_rossi you are thinking along the same lines as me. So I'll explain my question a bit more.

Sheevaplug has no audio out so a cheap USB line out just needs a PCM stream. Squeezeslave and Softsqueeze by default will have their audio streams encoded into MP3 or FLAC - this is OK for remote player but for an integrated players you can disable this and just send WAV (i.e. PCM) to the player. You can also force SBS to decode flac into WAV so that a fixed point decoder for flac can be used. I am not sure about MP3 but since you are in control of the SBS source (i.e. you can patch after install) - I think MP3 decode by SBS is also possible.

I am pretty sure standard libraries can be built as fixed point or optimised for ARM as mplayer can do this and it used standard libraries. A few years ago I played around with mplayer on an ARM with no FPU. Remember many ARM cores have full 32 bit arithmetic (i.e. 64/48 bit results) which is enough for most audio decodes when compiled for fixed point.

truehl
2010-04-07, 02:09
What audio out are you using on the Sheevaplug ?
A simple USB audio card. It is detectet by alsa!

truehl
2010-04-07, 02:10
Couldn't squeezeslave be compiled to adjust to the fact that the plugcomputer doesn't have a FPU? Does it include the decoder libraries or does it rely on separate libraries?
Maybe you should ask the squeezeslave devs (if you haven't already)?

EDIT: libmad already doesn't need a FPU? See here: http://www.underbit.com/products/mad/
EDIT2: vorbis has a version that doesn't need a FPU too? See 'Tremor' here: http://www.xiph.org/vorbis/

I asked Ralphy and he told me that SqueezeSlave needs FPU!

bpa
2010-04-07, 02:23
I asked Ralphy and he told me that SqueezeSlave needs FPU!

Then try the I approach I suggested - get SBS to do the decode and pass WAV to SqueezeSlave.

truehl
2010-04-14, 06:59
Then try the I approach I suggested - get SBS to do the decode and pass WAV to SqueezeSlave.

SBS is running on the sheevaplug without FPU too. So does'nt SBS need a FPU? If yes, how can I pass WAV to squeezeslve?

Greetings, Thomas

bpa
2010-04-14, 09:00
Whena processor has no FPU - the FPU instructions can be emulated and so still be run although sometimes it is about 10x slower than real FPU but Sheevaplug has a fast CPU (1.2GHz ?) so "slow" may be fast enough. However the processor good fixed point arithemetic and many ofd the supporting apps can use fixed point instead of FPU. IIRC Andyg has built all support SBS apps on ARM processor to use this fixed point where possible. Not enough CPU power will result in stuttering.

In summary - it is best to test and see if it works.

Try disabling native Flac under WebUI Settings/Advanced/Filetypes.

If that works then you can add a special custom-convert.conf so that Flac->wav is always done for Squeezeslave but left as Flac for other players.