Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Topic Options
#114298 - 01/09/2002 19:37 CharcoalGray's web interface 1.3 suggestions
Gary
stranger

Registered: 03/02/2002
Posts: 25
If you haven't installed CharcoalGray's web interface 1.3, you're really missing a wonderful part of the empeg home experience. You can drive your empeg from the couch with your wireless laptop. Thanks to CharcoalGray and Mark Lord (for Hijack, which provides the ftp/http server).

Version 1.3 of the web interface includes support for inserts into the current playlist. Don't know if they're possible, but here are a coupla thoughts:

1) There's currently no visual feedback for inserts. You can click on the insert icon, but not know if you hit it properly. Is there a way to change the icon when you click it? Better would be some response from the player, but it would be good to have a mouse-over or other way of knowing that you hit the icon.

2) You can select whether an insert is an insert, enqueue, or append. But the player forgets your selection and reverts to insert each time you load a new page. Could your preference be saved? Set a cookie? Add a string "?insert=enqueue" to the url?

Fantastic contribution, CharcoalGray! Thanks!

--Gary

Top
#114299 - 02/09/2002 17:18 Re: CharcoalGray's web interface 1.3 suggestions [Re: Gary]
Aragon
member

Registered: 17/05/2002
Posts: 148
Loc: Cape Town, South Africa
Hi,

WRT point 1, I'd love if it were possible for Hijack to output the current song queue in XML too. However, I can imagine this being incredibly difficult, since the queue is probably stored in memory by the player software. So I'll keep dreaming

Point 2 - I've wanted to use cookies in the code for something else, but haven't gotten around to writing anything. I'm sure what you want to do is possible with cookies..


Regards,
Aragon

Top
#114300 - 04/09/2002 18:39 Re: CharcoalGray's web interface 1.3 suggestions [Re: Aragon]
number6
old hand

Registered: 30/04/2001
Posts: 745
Loc: In The Village or sometimes: A...
I'd agree that the current playlist 'queue' is in memory.

However,the current playlist is built in memory but is then persisted (saved to disk)whenever you power the player off if it didn't then the current playlist position and 'queue of songs to play next' would be incorrect when you restarted your car/player.

So, given that this info *is* written to the disk already, all thats needed is to find out the format and location where this info is stored and then make use of it.

Most likely in the same disk area where the playcounts and other stuff is stored.
[special partition on the disk from memory - (a search on this forum will turn up the info about it)

I also saw a comment from Hugo (The main guy behind the empeg/RioCar) about this a while back.

So, if we can get this info from the disk then will be a good start.

Albeit this information is only persisted whenever the player app quits, and therefore any new tracks added to the current playlist won't show up on disk until the player (application) is shutdown - there may be a way we can ask nicely for the player to refresh the on-disk copy of the playlist (e.g. via SIGUSR1 perhaps signal to the player app) - this may be able to be added by the folks who control the player apps source code when they get a breather from earning a living.

Once we have the persisted playlist on-disk format we can then create a hijack "feature" that exposes this via a /proc/empeg_playlist "special" file that when read returns a XML representation of the playlist built from the persistent copy of the playlist on disk.

By matching this list (of FIDS no doubt) with the current song info (also available in a /proc/... file) , you can then work out where in this playlist you are.


Top
#114301 - 04/09/2002 18:50 Re: CharcoalGray's web interface 1.3 suggestions [Re: number6]
tman
carpal tunnel

Registered: 24/12/2001
Posts: 5528
I thought the playlist is always kept up to date on the dynamic data partition? If it doesn't then it would need to start writing to the HD when it loses power. The code in the kernel saves the data into the flash as one of the last things it does when it's detected that power has gone.

All we need now is for something to decode it really. We already can work out what is currently playing and where it is from the flash data area and the serial notify lines which are trapped by Hijack.

- Trevor

Top