PDA

View Full Version : Softsqueeze as application on iPhone



mortslim
2008-07-18, 12:23
How about Slim Devices making a version of Softsqueeze that runs native as an application on the iPhone.

Why?

As a promotional and marketing tool for the Squeezebox.

Say it is a pared down version of Softsqueeze that only streams shoutcast stations. Then a little message saying if you want full functionality, buy a Squeezebox.

mortslim
2008-07-18, 15:47
And if Slim Devices can't get Apple to approve this proposed application for their App Store, then as an alternative, set up softsqueeze as a Web Application for the iPhone, similar to Stitcher and FlyTunes.

pippin
2008-07-18, 15:55
And if Slim Devices can't get Apple to approve this proposed application for their App Store, then as an alternative, set up softsqueeze as a Web Application for the iPhone, similar to Stitcher and FlyTunes.

Let'em just fix bug 6266 and I'll do that within a day in iPeng. I know how. It's just that SC doesn't support it.

andyg
2008-07-18, 17:39
What's needed to fix bug 6266? Is this related to the Tuner issue?

pippin
2008-07-18, 17:53
What's needed to fix bug 6266? Is this related to the Tuner issue?

No. This is to be able to load media FILES (not streams) with iPhone.
So the links to the .mp3 files (for mp3 files) that are already in the songinfo page could be used to play a file.
You can use that to construct a page with a playlist (including the files) that iPhone would play. You cannot control it through SC anymore, but you can browse the DB and play files.
I would say streaming Internet Radio to iPhone is less important since every radio that is not deeply sleeping currently tries to get a streaming app online for that so nothing SC needs to do.

Of course, a real App that uses the stream or even understands the squeezebox protocol would be much better, but it's a start.

I don't know what's needed to fix this (technically speaking), but I know that the server would have to support "byte range access" which means the client can select which portion of a file it wants to download at a given time.

If you don't have an iThingy to test you can use QuickTime, I think it has the same limitation.

andyg
2008-07-18, 17:59
Oh OK, just have the server support Range requests, that's trivial. I assume this is only an issue if you try to seek in a file? This solution won't handle non-mp3/aac/alac files though, as there is no transcoding built in to the download feature.

pippin
2008-07-18, 18:27
Oh OK, just have the server support Range requests, that's trivial. I assume this is only an issue if you try to seek in a file? This solution won't handle non-mp3/aac/alac files though, as there is no transcoding built in to the download feature.

I think iPhone ALWAYS requests only part of a file. May have something to do with power saving. So it will not load it at all if the byte range is not supported.

I understand it will only work for file types QuickTime can play. As I said: it's not a good solution but a start...

Good to hear it's trivial. I mean, I filed the bug 8 months ago...

andyg
2008-07-18, 19:33
Well I got it working. Looks like Mobile Safari tries lots of different ranges to see what works best, maybe some sort of bandwidth detection. On my wifi network it ends up doing a ton of requests for only 63 bytes at a time. Quite inefficient and puts quite a load on the server but at least it works.

andyg
2008-07-18, 19:43
Oops I think that was just a bug in the response header causing it to send all those extra requests. It actually buffers the whole file very fast. :)

andyg
2008-07-18, 20:39
OK, it's checked in. Sorry for not doing that sooner.

pippin
2008-07-19, 03:50
Pooh. That was quick now.
Now I've promised something. Will see what I can put together tonight. There goes my iPeng schedule ;-)

But I want this...

pippin
2008-07-19, 04:47
And a new enhancement request ;-)
http://bugs.slimdevices.com/show_bug.cgi?id=8803

It's for a stub player that allows you to construct a playlist without a player attached.

raaurora
2008-07-19, 06:13
How about Slim Devices making a version of Softsqueeze that runs native as an application on the iPhone.

Why?

As a promotional and marketing tool for the Squeezebox.

Say it is a pared down version of Softsqueeze that only streams shoutcast stations. Then a little message saying if you want full functionality, buy a Squeezebox.

didn't apple open the iPhone api library up so people could write apps to it? sounds like a cool idea.

raaurora
2008-07-19, 06:16
And a new enhancement request ;-)
http://bugs.slimdevices.com/show_bug.cgi?id=8803

It's for a stub player that allows you to construct a playlist without a player attached.

you can use something like WMP to create the play list. Just make sure you save it in whatever folder SC looks for playlists and also save it in a format SC can read (.m3u).

pippin
2008-07-19, 12:53
you can use something like WMP to create the play list. Just make sure you save it in whatever folder SC looks for playlists and also save it in a format SC can read (.m3u).

I know. But that's not what this request is about ;-)

mherger
2008-07-20, 05:35
> didn't apple open the iPhone api library up so people could write apps
> to it? sounds like a cool idea.

They did. But Softsqueeze is implemented in Java - no option on the
iPhone. And SqueezePlay uses LUA as a scripting engine for most of the UI.
But Apple does not allow using scripting languages on the iPhone.

But hey, Pippin will soon have a solution, he promised ;-)

Michael

pippin
2008-07-21, 02:13
But hey, Pippin will soon have a solution, he promised ;-)


Well, I didn't promise streaming but playback. And yes, it took me two days instead of one.
But here it is: http://forums.slimdevices.com/showthread.php?p=321704#post321704

It's somewhat experimental and far from perfect. Needs server side support. Help appreciated (see that post).
But it's a start.

andynormancx
2008-07-21, 05:36
> didn't apple open the iPhone api library up so people could write apps
> to it? sounds like a cool idea.

They did. But Softsqueeze is implemented in Java - no option on the
iPhone. And SqueezePlay uses LUA as a scripting engine for most of the UI.
But Apple does not allow using scripting languages on the iPhone.

There appears to be a lua compiler, so a combination of that and disabling lua's ability to compile on the fly _might_ work around that issue.