Hydrogenaudio Forums

Hosted Forums => foobar2000 => 3rd Party Plugins - (fb2k) => Topic started by: oblikoamorale on 2008-03-28 05:01:01

Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-28 05:01:01
This foobar2000 1.0+ component is developed as replacement for Media Player Classic web control interface, which I used quite a lot, but still didn't like it, as it missed quite a number of features I'd like to have. Also I felt it's a shame such great player as foobar2000 couldn't be remotely controlled over http nowadays. So, erm, I went ahead and somehow developed component featuring functions I use by myself on everyday basis.

This component provides the following features via http interface:
- full control of playback, including seekbar;
- basic playlist support;
- basic playback queue support;
- basic media library support;
- basic file browser functions, including ability to browse Microsoft Network;
- a few UI custimization abilities.

Stock interface template is written using synchronious document model (with basic CSS and JS), and has been tested and proved itself working on any modern browser: Opera, Firefox, Chrome, Safari. Stock interface screenshot (https://bitbucket.org/oblikoamorale/foo_httpcontrol/wiki/foo_httpcontrol.png)

Download (https://bitbucket.org/oblikoamorale/foo_httpcontrol/downloads)
Changelog (https://bitbucket.org/oblikoamorale/foo_httpcontrol/wiki/Changelog)

User submitted templates for component version 0.96.5 and newer:
for desktop PC browser:
ajquery (jQuery UI based) (https://bitbucket.org/oblikoamorale/foo_httpcontrol/downloads)
default (brain dead simple) (https://bitbucket.org/oblikoamorale/foo_httpcontrol/downloads)
by vakata (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=691078) fix (http://goo.gl/1ReDN)
Opera sidebar, by Ritsl (http://people.opera.com/rijk/fb2ksidebar/)
by vairulez (http://tinyurl.com/2u6ckeg)

for mobile devices:
SimpleBasic, for iphone/ipod touch, by L4nt0m (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=733466)
iPhone, by lxofith (vast improvement of Joror template) (http://tinyurl.com/2uvmrso) fix (http://tinyurl.com/6y3zz2w)
G1 Android (also Chrome/Safari/Firefox/Opera/iPhone compatible), by Kev0 (http://tinyurl.com/3592gyx) fix (http://tinyurl.com/6jsckha)
experimental autoscaling, by Kev0 (based on lxofith work) (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=693830)
foodroid2000, native Android client, by bugramovic (http://foodroid.net84.net)
for Android, by regi24 (http://foobar2000controller.blogspot.com)
for 320x240 screens, by kaFFee666 (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=718444)
for Nokia N900, based on vakata2, by yolan (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=736892)
iPhone and iPad remotes, by vogliadicane (http://www.anamon.eu/index.php?cat=c5_foobar-iPhone-remotes.html)

Illustrated beginner's guide to the component (http://www.chip.in/forums/viewtopic.php?f=28&p=574089).
Title: foo_httpcontrol
Post by: math0ne on 2008-03-28 06:37:15
I couldn't get this to work.  It connects but i just get a blank page.

I've tried multiple ports.

Here's my versions: http://screencast.com/t/pBERELarlGH (http://screencast.com/t/pBERELarlGH)
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-28 06:46:56
by default it is configured to be available on network interfaces via port 8888. http://127.0.0.1:8888/ (http://127.0.0.1:8888/) should work.

do you see 'Bind successful' message in File/Preferences/Display/foo_httpcontrol page?

by the way, check foobar console for any error messages -- perhaps there is a problem with template files loading, they are expected to be found in foobar's components directory.
Title: foo_httpcontrol
Post by: foo_peter on 2008-03-28 10:28:25
Extremely useful....have been using it for a long time...makes things a lot more productive...thx for the update!

foo_peter
Title: foo_httpcontrol
Post by: Chipicui on 2008-03-28 14:57:17
Wow!! amazing... Thanks a lot !     
Works really fine here..
(Now the only thing I miss is the option to show "cover.jpg") 

A little issue: When you enqueue a whole folder, everything inside gets enqueued, (*.txt *.jpg...etc...)
Would be nice if it'd only enqueue audio files, but it's no big deal here...
Thank you very much!!!
Title: foo_httpcontrol
Post by: Chipicui on 2008-03-28 15:31:46
Sorry if I bother you too much... but this little plugin is soooooo useful to me that I can't help it... 
You know... everything works perfectly from Opera,
Using it via wifi from my Palm browser, I can't change volume (although I see the vol box) and I can't seek... everything else works fine and fast!
Do you have an idea of what could be causing this behaviour?
I've been taking a look to the code, but I don't really have an idea about javascript...
Were really close to the perfect remote control to foobar!!!!!! 
Title: foo_httpcontrol
Post by: TooSteep on 2008-03-28 17:00:38
Newb question here...

From Opera 9.26, I am trying to run pages from SpyTunes, such as this one:

http://spytunes.co.uk/S-E-P-R/Level1/Rhythm.html (http://spytunes.co.uk/S-E-P-R/Level1/Rhythm.html)

There is a simple link to an MP3 file on the page. I'd like to click on it, and have it played through my Foobar player.

Is this what your control does? I downloaded and installed it, taking the default preferences, but I still get the same Opera error: "You need a plugin to view .... blah blah blah ..."

If your control does not serve this function, do you know how I can get thes clips playing from within Opera?

Thanks a lot.
Title: foo_httpcontrol
Post by: blubbo on 2008-03-28 20:16:54
I like the idea but with 70% cpu utilization when playing and the same blank page problem as has been reported by others I'd say you've got some more testing to do.

I'll definitely keep an eye on this. :) Keep it up!
Title: foo_httpcontrol
Post by: Hamallainen on 2008-03-29 01:44:55
Thank you so much for this.
There's a long time i was needing this kind of control. It's so useful for me
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-29 06:45:08
Using it via wifi from my Palm browser, I can't change volume (although I see the vol box) and I can't seek...
Do you have an idea of what could be causing this behaviour?


well, I have no idea about issues of palm browser. perhaps it doesn't recognise onchange event in dropdown list? all I can offer in this case is to provide opportunity to raise/lower volume level by a certain amount via buttons, instead of dropdown list. regarding the seek issue, it's a difficult question, as a matter of getting mouse coordinates is a weird issue even for pc browsers. I guess you'll have to do some research on this topic, and modify JS template section by yourself.
and thanks for the dir enqueue note!

TooSteep - I guess you chose the wrong tool for your task in this case...

regarding the problem with a blank page and (or) high cpu usage, perhaps monstrous playlist size might have something with it? I'll look into it later
Title: foo_httpcontrol
Post by: Hamallainen on 2008-03-29 11:46:08
Hi,

A little feedback after some testing.

In Firefox 2.0.0.13, volume and playback order dropdown boxes do not have any effects on foobar (i'm using foobar 0.9.5.1 with ColumnsUI 0.3 beta 1 preview 4). I also tested it in IE 6 and it works correctly so it's maybe something i should change in the templates to make it work with Firefox.

Also it seems there's a sorting problem when browsing folders and files on a network. They are sorted randomly in both IE and Firefox.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-29 12:35:18
In Firefox 2.0.0.13, volume and playback order dropdown boxes do not have any effects on foobar (i'm using foobar 0.9.5.1 with ColumnsUI 0.3 beta 1 preview 4). I also tested it in IE 6 and it works correctly so it's maybe something i should change in the templates to make it work with Firefox.


yep, replacing all occurences of 'this.document' to just 'document' in control template should solve this.
btw, Chipicui, it might help with half of the problem you are having with palm browser too.

Also it seems there's a sorting problem when browsing folders and files on a network. They are sorted randomly in both IE and Firefox.


thats definitely weird, as I actually don't sort files in any way -- I just display what FindFirstFileW/FindNextFileW API functions return, and they do actually return alphabetically sorted data on my winxp sp2.
whats the specifics of your OS?
Title: foo_httpcontrol
Post by: Hamallainen on 2008-03-29 13:59:55
yep, replacing all occurences of 'this.document' to just 'document' in control template should solve this.
btw, Chipicui, it might help with half of the problem you are having with palm browser too.

Thanks a lot, it works now

 
thats definitely weird, as I actually don't sort files in any way -- I just display what FindFirstFileW/FindNextFileW API functions return, and they do actually return alphabetically sorted data on my winxp sp2.
whats the specifics of your OS?

About this 'problem', it's maybe my fault because i had not seen this in your first post :
- basic file browser functions, including ability to browse Microsoft Network;
In fact, my files which are stored on the network are on a network drive (Synology DS207) which seems to have some linux version as OS. Otherwise the OS of my computer is XP Pro SP2.

About the functionalities of your plugin, do you have already done what you need or do you still consider feature requests ?
Title: foo_httpcontrol
Post by: TooSteep on 2008-03-29 15:12:58
...

TooSteep - I guess you chose the wrong tool for your task in this case...


Thanks for responding. I guess that means there is no Foobar plugin for Opera or I.E.?  Do you recommend any particular plugin for Opera for playing mp3's from an embeeded link such as:

<embed src="http://spytunes.co.uk/images/spytunes/rythms/basicstrpatL1/ex01.mp3" height="15" autostart="false" align="middle" id="rhythm" name="rhythm" alt=""></embed>
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-29 16:23:22
In fact, my files which are stored on the network are on a network drive (Synology DS207) which seems to have some linux version as OS. Otherwise the OS of my computer is XP Pro SP2.

eh, my bad, actually. seems like file order is not guaranted, according to documentation. no big deal anyway, I'll add a compulsive file list sort.
About the functionalities of your plugin, do you have already done what you need or do you still consider feature requests ?

to be honest, this thing satisfies my own needs by around 90% as it is now, but I wouldn't mind hearing suggestions as I still have some interest in messing with its development.
Title: foo_httpcontrol
Post by: bubbleguuum on 2008-03-29 20:06:44
Useful plugin, I want to use it with my PSP, as a remote.

It worked once, then it's now always a blank page and 50-70% CPU usage...(check you don't have an active loop in your code, especially on an error)
Title: foo_httpcontrol
Post by: nightfishing on 2008-03-30 05:09:49
Works great. (very handy)

Thank you!
Title: foo_httpcontrol
Post by: Hengest on 2008-03-30 07:31:14
Thanks for the plugin. One suggestion though: add the option of requiring a user name and password to access the page.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-30 19:18:20
updated...
Code: [Select]
    v0.6 30 Mar 2008
        fix: templates, here and there;
        fix: wrong state caused by starting on-paused foobar;
        fix: blank page and excessive cpu usage on insane playlist sizes;
        fix: compulsive list sort in file browser;
        fix: simultaneous enqueuements disabled;
        add: filter of enqueued items;
        add: configurable retrieval of playlist (for those who need as
             lightweight control page as possible)
Title: foo_httpcontrol
Post by: Hamallainen on 2008-03-30 23:21:12
updated...

Thanks for the new template and the fix for the large playlists
and my sorting problem on network is gone now. Great ! 
Title: foo_httpcontrol
Post by: smok3 on 2008-03-31 07:41:03
(about sorting: the same behavior is noticed with php dir listing for example, where win will return alphabet and nix some random stuff)
Title: foo_httpcontrol
Post by: Chipicui on 2008-03-31 15:17:02
Holy cow!!!!!!!!!!!!!!!!     
Thank you so much for the update!
Don't know what kind of magic you did to the template's code but now EVERYTHING works in my PalmTX.
Thanks to you, now I can have a fast remote control for foobar!
I'm extremely thankful...

One suggestion if you really want to go the extra mile: could you implement a drop-down list (or simply another web page) to change the active playlist?

Thanks a lot!     
Title: foo_httpcontrol
Post by: Chipicui on 2008-03-31 15:30:33
A question:
How do you filter a folder to enqueue (for example)... only mp3 files?
Thanks
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-31 16:35:45
A question:
How do you filter a folder to enqueue (for example)... only mp3 files?
Thanks


actually I retrieve the list of foobar supported playable files for that. hmm, weird, looks like the extensions restriction I pass to foobar process_locations_async is not making any effect, and I overlooked that. additional filter of incoming filenames added, version 0.6 re-uploaded...
Title: foo_httpcontrol
Post by: bubbleguuum on 2008-03-31 19:46:29
Thanks for the updated version


I got the plugin to crash foobar several times by enqueuing a directory (in
the www file broswer)
Title: foo_httpcontrol
Post by: Chipicui on 2008-03-31 20:16:53

A question:
How do you filter a folder to enqueue (for example)... only mp3 files?
Thanks


actually I retrieve the list of foobar supported playable files for that. hmm, weird, looks like the extensions restriction I pass to foobar process_locations_async is not making any effect, and I overlooked that. additional filter of incoming filenames added, version 0.6 re-uploaded...


Damn ...that's fast!
How I'd wish to have 1/4 of your programming skills man!
Thank you very much... everything's working ok now! 
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-03-31 20:33:00
I got the plugin to crash foobar several times by enqueuing a directory (in
the www file broswer)


does it happen during or after enqueuement process? can you try to add the same directory in foobar by File/Add Folder?
perhaps there is a specific file causing the crash, for example, in my system foobar crashes on attempt to enqueue any avi file, getting access violation in an external activex module.

I've uploaded the current version (just in case), please use it if you decide to spend a time on this problem.


Chipcui, thanks, but there's really nothing to wish for, believe me...
Title: foo_httpcontrol
Post by: Chipicui on 2008-03-31 21:04:56
a minor thing though;
I can reproduce the same crash reported above, while enqueueing directories. Foobar reports it as coming from foo_http...
It's my one and only issue with this wonderful plugin...
Title: foo_httpcontrol
Post by: RainDawg on 2008-03-31 21:34:13
Excellent plugin.  I think this will fit nicely into a little idea I had to turn my iPhone into a foobar2000 remote control....something that I could use to change songs from the backyard during a party, or as part of a complex nerdy seduction scheme.

I do have two questions.

1- Is there a security risk with this component?  I see that I can browse through my entire computer.  Clearly with the plugin itself there is little that can be done with those information, but having an index of the entire contents of my discs strikes me as a bit unsettling, especially when that is being exposed to the world.  I realize that with a router this information is behind a firewall, which then restricts my intended use to Wi-Fi and using the "masked" IP address of my PC.

2- How difficult would it be to compress the webpage down to a viewport typically used in mobile webapps?  I only did a cursory look at the code in the html pages; I am wondering if I should head down that road and create a solution for those of us using the iPhone/touch or not.
Title: foo_httpcontrol
Post by: foo_peter on 2008-03-31 23:19:16
that's fast!

tested Firefox 2.0.0.13


(http://img146.imageshack.us/my.php?image=bild1pn9.jpg)
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-01 15:46:51
1- Is there a security risk with this component?  I see that I can browse through my entire computer.  Clearly with the plugin itself there is little that can be done with those information, but having an index of the entire contents of my discs strikes me as a bit unsettling, especially when that is being exposed to the world.  I realize that with a router this information is behind a firewall, which then restricts my intended use to Wi-Fi and using the "masked" IP address of my PC.


if i were you, I wouldn't expose it to zeh whole internets without protecting it by proper means you noted, as it initially never been planned to be made bulletproof and used outside the trusted localnet. of course there might be unexpected vulnerability problems in my code or, for example, in the network library I use.

2- How difficult would it be to compress the webpage down to a viewport typically used in mobile webapps?  I only did a cursory look at the code in the html pages; I am wondering if I should head down that road and create a solution for those of us using the iPhone/touch or not.

the only hardcoded thing in template file is the playlist by itself. the rest is up to you, downsize it as you wish.
anyway I guess playlist, even a small one, wouldn't be much of use on mobile phone screen...

2 all - currently I'm clueless about the crash. I enqueued my whole hdd a few times to no crashing luck.
Title: foo_httpcontrol
Post by: steliyan on 2008-04-01 16:08:17
I got this error, when connect to http://localhost:8888/: (http://localhost:8888/:)
Code: [Select]
failed to read file: components/foo_httpcontrol_controls_tpl.html


No errors in the console, I copied all files in /components dir. Same error with Firefox and Internet Explore. Using v0.9.5.1 with default_ui.
Title: foo_httpcontrol
Post by: Chipicui on 2008-04-01 16:46:13
My god!!!     
(almost crying)... I can't believe it.... It's by far, the best "customer's service"    I've ever had...
Everything's working ok now... and I mean EVERYTHING, even in my Palm!!!.
Now I have the remote control I've been looking for so long!!!!


THANKS THANKS and THANKS AGAIN!!!!


Chipicui
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-01 17:00:50
I got this error, when connect to http://localhost:8888/: (http://localhost:8888/:)
Code: [Select]
failed to read file: components/foo_httpcontrol_controls_tpl.html


No errors in the console, I copied all files in /components dir. Same error with Firefox and Internet Explore. Using v0.9.5.1 with default_ui.


please check that you have a proper working directory in foobar shortcut properties -- it should be pointing at foobar dir and nowhere else.

Chipicui - I'm glad I've been something remotely close to of use
Title: foo_httpcontrol
Post by: steliyan on 2008-04-01 17:12:08
Thanks, that was the problem.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-02 21:18:23
I guess this one is going to last for a real while now...
Code: [Select]
v0.62 03 Apr 2008
    add: usability improvements;
    fix: additional safety checks;
Title: foo_httpcontrol
Post by: Chipicui on 2008-04-03 03:38:44
Many thanks...
We can change playlists!

Nice work! 
Title: foo_httpcontrol
Post by: AndyCar on 2008-04-03 19:22:37
I guess this one is going to last for a real while now...
Code: [Select]
v0.62 03 Apr 2008
    add: usability improvements;
    fix: additional safety checks;


I must say- Now I'm falling in love with this sexy plug-in 
BTW, may be it's good idea to post info about this plugin here (http://tinyurl.com/34ffce)
(oblikoamorale, C'mon you must be russian too
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-05 19:55:06
couldn't resist fixing things I ran on by myself, sorry.
Code: [Select]
v0.63 05 Apr 2008
    add: clickable path in browser;
    add: previously played track is highlighted in playlist;
    fix: list of playlists wasn't always updated;
    fix: additional safety checks and fixes;
Title: foo_httpcontrol
Post by: alphaex32 on 2008-04-06 00:25:32
It would be awesome if someone made a template for this formatted for the iphone/ipod touch.
Title: foo_httpcontrol
Post by: RainDawg on 2008-04-06 00:51:28
It would be awesome if someone made a template for this formatted for the iphone/ipod touch.


There is a very good chance that I will take exactly this project on, though not for the next few months.  I just recently purchased a house, so the majority of my time away from work will be tied up for the time being.  However, I just can get over how cool it would be to be able to change the music from anywhere in the house....just as a cool party gag .

So guaranteed that if someone else doesn't do a better job than I could before I get a chance to do some tweaking of the code, I'll do my best to build something that I think fits nicely on the screen.
Title: foo_httpcontrol
Post by: alphaex32 on 2008-04-06 01:32:45
Well, if you're planning to make a whole project of it, maybe a native iphone app would be the best way to go.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-08 20:52:52
Code: [Select]
v0.64 08 Apr 2008
    add: basic http auth;
    add: preferences page moved to tools section;
    fix: too small seekbar;
    fix: some glitches and optimizations here and there;
Title: foo_httpcontrol
Post by: Chipicui on 2008-04-08 22:39:55
Thank you!
It's getting better and better...
Title: foo_httpcontrol
Post by: pIv on 2008-04-09 07:41:09
When current song highlighted with gray in playlist - around previous song box is drawing.

My suggestion highlight with color and box drawing only current playing song!
Title: foo_httpcontrol
Post by: carmenm on 2008-04-09 08:37:59
Hi, i just tried this component and i like it a lot!!!!.
I found a little thing bugging me, if i am connected from the web:
- i start playing from the web
- playing start on my foobar, and the web interface refresh itself
- i pause from foobar
- foobar pauses itself but the web interface doesnt refresh itself!

The other thing is a feature request:
- possibility to draw the album art

I was thinking we might even be able to retrieve artist infos from last.fm .... (it would the last coolest feature )

Thanks for your great work!
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-09 16:06:43
When current song highlighted with gray in playlist - around previous song box is drawing.
My suggestion highlight with color and box drawing only current playing song!

you can modify the appearance or even get rid of previously played track indicator by editing the css section of foo_httpcontrol_controls_tpl.html.

I found a little thing bugging me, if i am connected from the web:

cannot reproduce it. only if I understood the problem correctly, of course.
anyway, try this template file (http://ftp://ftp.kursknet.ru/~smith/foo_httpcontrol_controls_tpl.html), I wonder if the situation improves?

regarding last.fm stuff.... well, maybe. some time, in distant future...
Title: foo_httpcontrol
Post by: pIv on 2008-04-09 18:40:29
Quote
Quote
When current song highlighted with gray in playlist - around previous song box is drawing.
My suggestion highlight with color and box drawing only current playing song!

you can modify the appearance or even get rid of previously played track indicator by editing the css section of foo_httpcontrol_controls_tpl.html.

Big thanks to you.  It is very good solution!
Title: foo_httpcontrol
Post by: carmenm on 2008-04-09 20:47:55

I found a little thing bugging me, if i am connected from the web:

cannot reproduce it. only if I understood the problem correctly, of course.
anyway, try this template file (http://ftp://ftp.kursknet.ru/~smith/foo_httpcontrol_controls_tpl.html), I wonder if the situation improves?

regarding last.fm stuff.... well, maybe. some time, in distant future...

i cant access the file.
To sum up my problem, is there a way for foobar on the "server" machine to force refresh of the webpage on the "client" machine when doing something like play or stop?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-10 03:59:39
To sum up my problem, is there a way for foobar on the "server" machine to force refresh of the webpage on the "client" machine when doing something like play or stop?

ah, I got it. well, there is no way web page would know about changed foobar state without reconnecting. so it is not a bug, really.

2all: there was a typo in 0.64 template file which led to unclickable playlist. typo is fixed, 0.64 re-uploaded.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-04-19 21:09:51
I guess this is where the saga ends. I reached all the goals I aimed to, and the idea within its restraints pretty much exhausted itself. thank you all for the fun time I spent here, it was a very interesting experience. Peter's foobar architectural techniques is something unique and, why not, have the right to be called perfect :-)
Code: [Select]
    v0.66 20 Apr 2008
        add: previously browsed directory remembering;
        fix: and again, invisible consistency fixes;
Title: foo_httpcontrol
Post by: Hamallainen on 2008-04-20 01:31:02
Thanks a lot for your work.
Much appreciated, really.
Title: foo_httpcontrol
Post by: Chipicui on 2008-04-21 17:33:31
Yes!... Thank you very much for such a nice and useful plugin.
Title: foo_httpcontrol
Post by: Cutter on 2008-05-08 08:49:22
Your plugin is impressive but is there a way to set the next song to be played?

Edit: sometimes the page is very slow to load after a song change even though the playlist is very short and I'm connected to localhost. Once I even got a 404 error. What may be the problem?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-08 16:34:00
Your plugin is impressive but is there a way to set the next song to be played?

nope, I didn't even think in this direction as I don't need this feauture at all. what do you suggest?
Edit: sometimes the page is very slow to load after a song change even though the playlist is very short and I'm connected to localhost. Once I even got a 404 error. What may be the problem?

I've never encountered anything even remotely close to your problem. 404? weird, I didn't code this error response at all. please be more descriptive and perhaps we'll be able to pin-point the possible bug.
Title: foo_httpcontrol
Post by: kanuac on 2008-05-08 16:54:33
Nice work.
Thanks!
Title: foo_httpcontrol
Post by: Cutter on 2008-05-08 21:00:15

Your plugin is impressive but is there a way to set the next song to be played?

nope, I didn't even think in this direction as I don't need this feauture at all. what do you suggest?

There could be a checkbox next to each playlist item. Checking one box would add the corresponding item to the playback queue.
Or there could be a difference between single click and double-click. Double click would start playback, single click would just put the cursor on an item, just as the foobar interface behaves. If "Playback follows cursor" is enabled, the next song will be the highlighted one.

Edit: sometimes the page is very slow to load after a song change even though the playlist is very short and I'm connected to localhost. Once I even got a 404 error. What may be the problem?

I've never encountered anything even remotely close to your problem. 404? weird, I didn't code this error response at all. please be more descriptive and perhaps we'll be able to pin-point the possible bug.

No, it was not a template error 404, it was just a message from my browser saying that the page is unavailable. Most of the time the pages load slowly or the loading freezes halfway. I'm not behind a proxy nor a firewall for local connections.
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-05-10 23:43:43
First: oblikoamorale thanks for this component, I like it very much.

I also would like an option to enqueue tracks, but not by handling a double click. I use a smart phone and it doesn't no anything like double click. My idea is to add just an extra link (an 'e' or +) after the track and the delete sign. By clicking the webpage puts that specific track in the queue, and refreshes.
I don't care if enqueued files are visually indicated. But than you need cwb_hooks and maybe it is preferably better to be less dependant on other components?

Another small request of mine. Could you add an extra checkbox that disable automatic refreshing of the webpage? Again because I use my smart phone I have to pay for the bandwidth I use. Maybe it isn't much, but when I leave the page open and put the browser to the background it still consumes unnessesary data.

@Cutter: when you get a error, how large is the requested playlist?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-11 05:06:37
I also would like an option to enqueue tracks, but not by handling a double click. I use a smart phone and it doesn't no anything like double click. My idea is to add just an extra link (an 'e' or +) after the track and the delete sign. By clicking the webpage puts that specific track in the queue, and refreshes.
I don't care if enqueued files are visually indicated. But than you need cwb_hooks and maybe it is preferably better to be less dependant on other components?

I'm thinking of a better way of implementing queue and cursor management controls. I don't want to add extra control buttons to playlist itself, as it is going to unneccessary increase of page size. and I'm removing the delete button from there.
I guess I'll end up with something like this: at first, user presses some button, choosing action (delete, queue, focus), then he clicks desired track in playlist.
Another small request of mine. Could you add an extra checkbox that disable automatic refreshing of the webpage? Again because I use my smart phone I have to pay for the bandwidth I use. Maybe it isn't much, but when I leave the page open and put the browser to the background it still consumes unnessesary data.

autorefresh can be turned off by fiddling with javascript in template, but I'll think what can be done.
@Cutter: when you get a error, how large is the requested playlist?

it doesn't seem like a matter of big playlist, it's something else. i have a test playlist consisting of 23 thousand tracks, and stress testing the plugin page with apache benchmark reveals no problems. no memory leaks, no handle leaks, nothing suspicious.
Title: foo_httpcontrol
Post by: Hamallainen on 2008-05-11 11:02:11
I'm thinking of a better way of implementing queue and cursor management controls. I don't want to add extra control buttons to playlist itself, as it is going to unnecessary increase of page size. and I'm removing the delete button from there.
I guess I'll end up with something like this: at first, user presses some button, choosing action (delete, queue, focus), then he clicks desired track in playlist.
Yes that would be great that way.
Like radio buttons or dropdown menu maybe for : play now, delete, enqueue (and dequeue?) and then just single click a track.
Also it would be nice if there was a way to see enqueued tracks and a way to set the default action between 'play now' and 'enqueue' (or something else)
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-05-11 15:21:20
...
Also it would be nice if there was a way to see enqueued tracks...

That can be achieved by requesting the content of the queue playlist, so that funcionality is already present.

Oblikoamorale, your new idea of implementing queue and cursor management controls, does that mean extra refreshing of the webpage?

And would it be possible to come up with variations of [PLAYLIST]. So maybe [PLAYLIST_WITH_DELETE] and [PLAYLIST_WITH_ENQUEUE] etc? So that I has a user can 'create' my best configuration for the webpage? Or some options in the properties in foobar with checkboxes that represent the items to be included in the webpage? The last option is maybe more user friendly.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-11 15:48:24

...
Also it would be nice if there was a way to see enqueued tracks...

That can be achieved by requesting the content of the queue playlist, so that funcionality is already present.

not quite right, queue information has to be requested separately. I'm still considering the best way of showing queue within the existing playlist without introducing any other (table) data. color highlighting might be a good compromise even although it introduces some problems, for example, when one track is queued several times.

Oblikoamorale, your new idea of implementing queue and cursor management controls, does that mean extra refreshing of the webpage?

one refresh per one action, that is the way it is designed.

And would it be possible to come up with variations of [PLAYLIST]. So maybe [PLAYLIST_WITH_DELETE] and [PLAYLIST_WITH_ENQUEUE] etc? So that I has a user can 'create' my best configuration for the webpage? Or some options in the properties in foobar with checkboxes that represent the items to be included in the webpage? The last option is maybe more user friendly.

the ultimate way to satisfy any end user wishes would be to transfer all web page playlist formatting to user end. what I mean is that template's javascript receives some sort of playlist data array, and generates the playlist section of the page by itself. I didn't benchmark this approach yet, but my guess it's going to be quite expensive, considering this stuff is being used on some mobile devices.
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-05-11 19:13:19
...
the ultimate way to satisfy any end user wishes would be to transfer all web page playlist formatting to user end. what I mean is that template's javascript receives some sort of playlist data array, and generates the playlist section of the page by itself. I didn't benchmark this approach yet, but my guess it's going to be quite expensive, considering this stuff is being used on some mobile devices.


Putting all available playlist information in the webpage is indeed data expensive. But you didn't respond to my alternative option, putting some options in the properties in foobar with checkboxes that represent the items to be included in the webpage.

But I very like your efford in making this component!
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-11 19:36:24
Putting all available playlist information in the webpage is indeed data expensive. But you didn't respond to my alternative option, putting some options in the properties in foobar with checkboxes that represent the items to be included in the webpage.


I feel that introducing checkboxes in this case is leading to unneccessary mess. I'd like to try and do these things in a more elegant way.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-11 21:36:08
something like should be appropriate for most of the uses. almost untested though, so proceed with care.
Code: [Select]
    v0.68 12 May 2008
        add: playback enqueue/dequeue (LIFO) control, q/w hotkeys;
        add: playlist focus control, shift hotkey;
        add: playlist entry remove control, ctrl hotkey;
        add: configurable page autorefresh;
        fix: compacted control template JS;
        fix: invisible glitches;
Title: foo_httpcontrol
Post by: Hamallainen on 2008-05-11 23:26:46
Nice, it all seems to work fine here. Thanks for the improvements
IMO it would be better if the dropdown action list could remember the last action.

not quite right, queue information has to be requested separately. I'm still considering the best way of showing queue within the existing playlist without introducing any other (table) data. color highlighting might be a good compromise even although it introduces some problems, for example, when one track is queued several times.
Color highlighting is ok for me. I don't know if it's possible but maybe a tooltip showing the queue position(s) would be enough, at least for me.

That can be achieved by requesting the content of the queue playlist, so that functionality is already present.
I had not thought about it. Thanks for the tip.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-12 07:10:08
Color highlighting is ok for me. I don't know if it's possible but maybe a tooltip showing the queue position(s) would be enough, at least for me.

I'm not exactly sure what do you mean, a way of indicating the playback progress within the queue?

That can be achieved by requesting the content of the queue playlist, so that functionality is already present.
I had not thought about it. Thanks for the tip.

ah, right. he meant foosion's playback queue plugin, didn't he?

to everyone: can you post screen shots or screen photos of plugin running on your pda or mobile phone or whatever exotic or not so exotic devices? or perhaps some of you modified the front end appearance or behaviour in one or another way, what is also quite interesting for me. I absolutely wouldn't mind seeing or reading the feedback. thanks
Title: foo_httpcontrol
Post by: Hamallainen on 2008-05-12 10:46:45
Color highlighting is ok for me. I don't know if it's possible but maybe a tooltip showing the queue position(s) would be enough, at least for me.
I'm not exactly sure what do you mean, a way of indicating the playback progress within the queue?
Well not the playback progress in minutes/seconds, i was just talking about  eventually showing the enqueued tracks position(s)/index(es) within the playback queue. But with Tim Schuhmacher's suggestion it's maybe not needed except it requires to install an extra component. In fact I was suggesting this because you said :
 
I'm still considering the best way of showing  queue within the existing playlist without introducing any other  (table) data. color highlighting might be a good compromise even  although it introduces some problems, for example, when one track is  queued several times.
Title: foo_httpcontrol
Post by: Gerrit on 2008-05-12 13:22:33
Hello,

I have been looking for a control like this, it does nearly everything I need. Except....

Let me explain, I use foobar2000 to play music on a laptop attached to an amplifier. my music collection is on a server and has a web interface for browsing etc. I also control the foobar player with my own web interface, pausing, volume up/down, this is now done with another plugin (control_server) and a custom soap/perl script.

There are two things that I am looking for:
a) instead of a complete webpage returned I only need a string with the track info/file name etc.
b) Volume Up and Volume Down instead of setting the volume to a certain percentage (I might have the control interface on screen on more than one machine.

While writing this I realized that I can use both controls to do what I need (Control_server cannot add tracks to the playlist)
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-05-12 14:41:05
...
to everyone: can you post screen shots or screen photos of plugin running on your pda or mobile phone or whatever exotic or not so exotic devices? or perhaps some of you modified the front end appearance or behaviour in one or another way, what is also quite interesting for me. I absolutely wouldn't mind seeing or reading the feedback. thanks

I will try to make a picture of your component in action on my SonyEricsson w950i phone.

The new version works great, thankt for the autorefresh checkbox.

I do experience one problem. Maybe this problem did also exists in the previous version. I have a playlist with online radio streams. When listening to a stream the progress bar shows some strange behaviour.

For example:
http://media.kxradio.nl/winamp (http://media.kxradio.nl/winamp) shows this 'KXradio 1:00 / 71582788:15  #'
this is not a problem, but with http://www.omroep.nl/live/radio3-breed.asx (http://www.omroep.nl/live/radio3-breed.asx) (so mslive streams) shows this 'NOS [Radio 3FM #01] Radio 3FM  #'. So no time indication. The result is that with autorefresh checked the page keeps on refreshing as soon as it is loaded.

When you look in foobar the first stream has '?' for its duration and the second stream '0:00'. So could you add a check on the duration and handle accordingly with the progress indicator and the time indication in the playlist overview?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-12 16:05:44
Well not the playback progress in minutes/seconds, i was just talking about  eventually showing the enqueued tracks position(s)/index(es) within the playback queue.

I've thought of adding an additional playlist column with serial number of enqueued track within playback queue, but considered it as a minor thing. if you think it'll improve usability, I'll add it, no problem.
It's just me who didn't (and still doesn't) use queueing at all.

There are two things that I am looking for:
a) instead of a complete webpage returned I only need a string with the track info/file name etc.
b) Volume Up and Volume Down instead of setting the volume to a certain percentage (I might have the control interface on screen on more than one machine.

first request is possible by changing the page template. take a look at its inside, it isn't complicated. volume control in this way is not possible at the moment, but again, there's no big deal to implement it (if it is needed).

I will try to make a picture of your component in action on my SonyEricsson w950i phone.

thanks, much appreciated.
I do experience one problem. Maybe this problem did also exists in the previous version. I have a playlist with online radio streams. When listening to a stream the progress bar shows some strange behaviour.
[...]

well, it is no surprise radiostreams cause some problems considering the fact they don't have any fixed length. I'll fix it (or try to, at least).
Title: foo_httpcontrol
Post by: foo_peter on 2008-05-12 16:41:55
to everyone: can you post screen shots or screen photos of plugin running on your pda or mobile phone or whatever exotic or not so exotic devices? or perhaps some of you modified the front end appearance or behaviour in one or another way, what is also quite interesting for me. I absolutely wouldn't mind seeing or reading the feedback. thanks
[/quote]


Photo (cover) would be splendid that searches I since I Foobar!

+1

foo_peter
Title: foo_httpcontrol
Post by: Hamallainen on 2008-05-12 23:29:34
I've thought of adding an additional playlist column with serial number of enqueued track within playback queue
yep that would be fine thanks
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-13 04:23:05
Code: [Select]
    v0.69 13 May 2008
        add: VolumeUp/VolumeDown by degree of percent in param1 commands;
        add: remembering of previously selected playlist action;
        add: display order of enqueued tracks;
        fix: playback queue glitches;
        fix: proper handling of unknown length tracks;
Title: foo_httpcontrol
Post by: Hamallainen on 2008-05-13 10:39:00
perfect thanks
Title: foo_httpcontrol
Post by: Cutter on 2008-05-13 15:43:18
Small request: currently the page refreshes automatically when a song is over and playback jumps to the next item. Fine. However it doesn't refresh if the user changes the playing song using the foobar interface.
Could the plugin send a refresh request each time someone changes the played item (let's say after a 5 seconds delay so the browser doesn't become crazy if I hit "Random" repeatedly)?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-13 16:06:18
Small request: currently the page refreshes automatically when a song is over and playback jumps to the next item. Fine. However it doesn't refresh if the user changes the playing song using the foobar interface.
Could the plugin send a refresh request each time someone changes the played item (let's say after a 5 seconds delay so the browser doesn't become crazy if I hit "Random" repeatedly)?

communication between plugin and client page in plugin-to-page direction is not possible. things work only in opposite.
Title: foo_httpcontrol
Post by: Cutter on 2008-05-13 16:30:39
What about an element within the webpage code wich would regularly check if the playing song has changed?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-13 16:53:39
What about an element within the webpage code wich would regularly check if the playing song has changed?

it would require too much work with code redesign as I haven't been planning AJAX'y behaviour from the very start.
I agree that this kind of behaviour would definitely be cool, but considering the fact that the main idea behind this component consists of controlling foobar running on machine you don't want or don't have any alternative access to, it seems a little bit unnneded.
Title: foo_httpcontrol
Post by: Cutter on 2008-05-13 19:26:05
Yeah it would be overkill for quite a little improvement after all.

Another suggestion: could we set the default behaviour of the "playlist action"? I would like it to be set on "Focus" by default and to stay that way when I click on an item (currently it switches back to "Start" everytime).
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-14 03:53:39
Another suggestion: could we set the default behaviour of the "playlist action"? I would like it to be set on "Focus" by default and to stay that way when I click on an item (currently it switches back to "Start" everytime).

replacing the line N 140 in control template file:
Code: [Select]
    act = [LAST_ACTION];

with
Code: [Select]
    act = 3;

would do the trick
Title: foo_httpcontrol
Post by: Cutter on 2008-05-14 10:33:23
Thanks.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-17 06:25:05
I've organised some kind of radio streaming jukebox on localnet, and in terms of privacy it seems convinient to have a certain list of visible directories in file browser instead of all hard drive.
Code: [Select]
    v0.70 17 May 2008
        fix: failed reading template files when foobar path contained non-ascii characters;
        add: default playlist action reverts to 'Start' after any non-playlist related action;
        add: display of playback queue length;
        add: restrictive list of directories allowed to browse;
Title: foo_httpcontrol
Post by: Hancoque on 2008-05-17 06:53:59
A small feature request: I'd like to be able to show only files with extensions that foobar2000 supports. Right now I'm just hiding unsupported file types via CSS, but that only fools the average Joe as the file names are still visible in the HTML source.

And another small request: Could you make it possible to separate HTML, CSS and JavaScript into different files? That would make it much easier to maintain customizations to the code. Defining a subdirectory in the components directory that would behave like the root directory of a "normal" web server would be great as it would also allow graphics to be used or any other files.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-17 12:28:35
A small feature request: I'd like to be able to show only files with extensions that foobar2000 supports. Right now I'm just hiding unsupported file types via CSS, but that only fools the average Joe as the file names are still visible in the HTML source.
what exactly for do you need this, may I ask? it's just that this thing is intended for personal use where seeing non playable files in list means no harm, I think.
And another small request: Could you make it possible to separate HTML, CSS and JavaScript into different files? That would make it much easier to maintain customizations to the code. Defining a subdirectory in the components directory that would behave like the root directory of a "normal" web server would be great as it would also allow graphics to be used or any other files.
I'm not motivated and/or interested in going this way. I suppose the better, reliable and much faster way of achieving desired functionality would be a combination of apache, php and foobar COM automation server plugin.
Title: foo_httpcontrol
Post by: Hancoque on 2008-05-17 16:18:48
what exactly for do you need this, may I ask? it's just that this thing is intended for personal use where seeing non playable files in list means no harm, I think.
In the distant past people had to bring their CDs to parties. In the not so distant past they brought their external hard drives. But now they can can access all their music without bringing anything.  I use this plugin in combination with the Icecast server and set foobar2000 to null output and thereby have a remote music jukebox. Though I use password protection I want to leave access open to the "public" after the authentication. But people should do nothing more then to browse my music files. They should definitely not be able to see all my hard drives' contents. And there are music files scattered all over three different drives, so I cannot just restrict access to some folders, or the list of allowed folders would be really long.

I'm not motivated and/or interested in going this way. I suppose the better, reliable and much faster way of achieving desired functionality would be a combination of apache, php and foobar COM automation server plugin.
Well, all right.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-17 17:30:54
what exactly for do you need this, may I ask? it's just that this thing is intended for personal use where seeing non playable files in list means no harm, I think.
In the distant past people had to bring their CDs to parties. In the not so distant past they brought their external hard drives. But now they can can access all their music without bringing anything.  I use this plugin in combination with the Icecast server and set foobar2000 to null output and thereby have a remote music jukebox. Though I use password protection I want to leave access open to the "public" after the authentication. But people should do nothing more then to browse my music files. They should definitely not be able to see all my hard drives' contents. And there are music files scattered all over three different drives, so I cannot just restrict access to some folders, or the list of allowed folders would be really long.

eheh, thanks, you've made me chuckle, and that's definitely good! and it's interesting to know someone else is using it as a remote jukebox as well.
I guess one more preferences checkbox hiding non-playable files wouldn't hurt. will do!
Title: foo_httpcontrol
Post by: Hancoque on 2008-05-17 19:34:47
Thanks!
Title: foo_httpcontrol
Post by: Jorgo on 2008-05-18 10:52:23
What for, really? In the foobar Media Library you can already define folders and filemasks... wouldn't this be redundant?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-18 17:02:06
probably because the media library access interface is not implemented? or perhaps not everybody is using media library?

Hancoque: I've reuploaded current version with non playable files filter.
Title: foo_httpcontrol
Post by: thuneau on 2008-05-18 20:07:37
This is a very cool component. Thank you very much for making it.
Question 1. I can't see the volume up/down control you added in 0.69. (Firefox 2.0.0.14). How do I add it?
do I replace :
Code: [Select]
<select title="Volume level" onchange="pc('Volume',this.value);">[VOLUME_OPTION]</select>%&nbsp;


with

Code: [Select]
<select title="Volume Up" onchange="pc('Volume',this.value);">[VOLUME_OPTION]</select>%&nbsp;
<select title="Volume Down" onchange="pc('Volume',this.value);">[VOLUME_OPTION]</select>%&nbsp;


if yes, where do I set the % change per up/down?

Question 2. Could the htm template be skinned using Flash?

Thanks again.
Title: foo_httpcontrol
Post by: Hancoque on 2008-05-18 21:28:25
Hancoque: I've reuploaded current version with non playable files filter.
Great! Thanks again.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-19 04:05:55
This is a very cool component. Thank you very much for making it.
Question 1. I can't see the volume up/down control you added in 0.69. (Firefox 2.0.0.14). How do I add it?

it isn't included in the template as it is going to be needed only on rare occasions. to control volume in this way you'll probably want something like
Code: [Select]
<input name="VolumeUp" type="button" value="V_Up" onClick="pc(this.name, 20);">
<input name="VolumeDown" type="button" value="V_Down" onClick="pc(this.name, 20);">

where 20 is step in percents.
Question 2. Could the htm template be skinned using Flash?

I don't really know how flash works from inside, but I suppose yes, it could. although it would be somewhat hard, I think, as you'll need to parse the html within the flash.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-20 20:59:34
it seems that programming a threaded micro-webserver is no big deal at all, and is fun.
although I still have no sound idea what it might be needed for, I've already found one use, to set a page favicon. and foobar stock icon loads perfectly fine in opera

btw, latest version has one nice bug: it doesn't display root page in file browser if 'hide non-playables' checkbox is on. but I guess it's ok, as no one noticed it yet.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-21 20:31:03
well, at least I can enjoy the favicon now
Code: [Select]
    v0.71 21 May 2008
        add: multithreaded (restricted up to four simultaneous sessions)
             mini-web-server, able to serve any files from home directory.
             the following mime types are supported: css, gif, htm, html, ico,
             jpg, jpe, jpeg, js, png, xml.
        add: optional logging of remote ip addresses in console;
Title: foo_httpcontrol
Post by: Hancoque on 2008-05-21 22:48:35
So, finally you did it.

There is still a problem when trying to separate the JavaScript code from the HTML template, though. The JavaScript code contains markers that are not replaced by the actual code if they are not in the main template file. Also parsing linked JavaScript files would solve the problem.

I'm trying to rewrite the HTML templates to the XHTML 1.1 specification using valid code, but there's one thing I cannot fix in the template: The plugin dynamically inserts checked (for checkboxes) and selected (for drop-down menu options) into the code. XHTML disallows this. Instead checked="checked" and selected="selected" has to be used to produce valid code. What speaks against using XHTML for the templates in general?

If you are willing to convert the templates to valid XHTML, here are some hints to solve issues that break the application in XHTML mode:

1. JavaScript code should be enclosed this way:
Quote
//<![CDATA[
...
//]]>

2. The form element must not contain the attributes name and target. Remove the latter altogether and replace the former by id and use document.getElementById('cmd_form') instead of document.cmd_form.

3. The CSS styles width, height and left need to have units specified (like px), otherwise they are not applied if the document is treated as XHTML. Simply adding +"px" to the corresponding JavaScript statements solves the problem:
Quote
document.getElementById('np').style.width=Math.floor(np_width * t_sec / t_length)+"px";
Quote
height=getElementById("np").offsetHeight*2-2+"px";
left=getElementById("npd").offsetLeft+"px";

4. Write all HTML event handlers small (onload instead of onLoad for example).

Edit: I just finished my XHTML 1.1 compliant (and working) versions of the templates. You might want to take a look: foo_httpcontrol_data.zip (http://www.devir.de/temp/foo_httpcontrol_data.zip)

Edit (2): The server sends a charset called utf8. I think it has to be utf-8 instead. The XHTML validator complains that there's a charset mismatch.
Title: foo_httpcontrol
Post by: Ritsl on 2008-05-22 01:15:11
I'm trying to rewrite the HTML templates to the XHTML 1.1 specification using valid code, but there's one thing I cannot fix in the template: The plugin dynamically inserts checked (for checkboxes) and selected (for drop-down menu options) into the code. XHTML disallows this. Instead checked="checked" and selected="selected" has to be used to produce valid code. What speaks against using XHTML for the templates in general?

What speaks in favor? This is a subject on which holy wars have been fought  Let's not go there...

Quote
2. The form element must not contain the attributes name and target. Remove the latter altogether and replace the former by id and use document.getElementById('cmd_form') instead of document.cmd_form.

3. The CSS styles width, height and left need to have units specified (like px), otherwise they are not applied if the document is treated as XHTML.

This is good advice even for a HTML purist like me. It would also be nice to use a Doctype that doesn't trigger Quirks mode. But this is already in reach of the intrepid customizers. I should try if I can make use of Opera's support for WebForms 2 to create a nicer interface

Quote
The server sends a charset called utf8. I think it has to be utf-8 instead. The XHTML validator complains that there's a charset mismatch.
Yes, that should be utf-8 indeed, though my browser has no trouble recognizing it as such.
Title: foo_httpcontrol
Post by: soulruins on 2008-05-22 15:14:52
Great plugin! Thanks.

My optimization for iPhone:

(http://smages.com/e1/db/e1db7386dcd1f00d834c009cc7e920fb.jpg.htm)

Download: http://rapidshare.com/files/116779129/foo_...l_data.zip.html (http://rapidshare.com/files/116779129/foo_httpcontrol_data.zip.html)
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-22 16:09:00
soulruins: looks great! very thanks for posting the shot, appreciated.

to those who are concerned, here are the guidelines I think I should be keeping to make customization process transparent:
1. don't generate any html formatted data within the plugin at all. perhaps the pregenerated playl- and file browser lists should be left alive, but necessarily with optional possibility to retrieve raw data, to be formatted on user-side by means of js.
2. move every macro substitution into a single javascript file containing as much foobar state data as possible, in form of defined variables/arrays. therefore including this js into any html page makes the page able to display foobar state information in any form.

perhaps this is an obvious overkill and such heavy relying on js isn't a very bright idea, but this way looks like the only reasonable one to give the user full control of any visual appearance aspect.

any thoughts?
Title: foo_httpcontrol
Post by: Hancoque on 2008-05-23 00:41:49
I think it's no problem to generate (X)HTML code in the plugin *if* the code stays absolutely neutral concerning (X)HTML standards and visual styles. For the case that code differs between HTML and XHTML there might be a checkbox in the plugin options page what to use. But I think it's sufficient to generally conform to XHTML because it has more future potential and can be seen as the successor of HTML 4 where things are more standardized and unified. Concerning visual styles only IDs and classes should be used (no direct formatting).

By the way: I found malformed HTML in the browser list. The first entry ([ .. ]) contains this code:
Code: [Select]
<tr colspan=4><td>...</td>
instead of this:
Code: [Select]
<tr><td colspan="4">...</td>
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-24 16:56:48
I might be wrong, but I decided to stick to classic html for better compatibility.
Code: [Select]
    v0.72 24 May 2008
        WARNING: delete previous version of foo_httpcontrol.dll and start
                 Foobar, answer "No" when you're asked whether you want to
                 keep plugin settings.                                        

        add: reorganization of templates and settings to provide more
             customization possibilities. default templates are valid HTML
             4.01 transitional now;
        fix: utf-8 instead of utf8 in content-type encoding;
        fix: safety checks;
Title: foo_httpcontrol
Post by: soulruins on 2008-05-25 13:18:55
oblikoamorale (http://www.hydrogenaudio.org/forums/index.php?showuser=52244), Ehhh!  Nice work!

Update iPhone template:

Download (http://philip.progtech.ru:1111/foobar2000_Pack/ext/foo_httpcontrol_controls_tpl_iphone.zip)
Title: foo_httpcontrol
Post by: saivert on 2008-05-25 18:12:09
I see a lot of people complaining about the lack of customizability with foo_httpcontrol. Well, this component is about getting a web frontend for foobar2000 with little to no hassle. If you want to go all nuts about configuring and creating your own user interface/frontend, there is another component called foo_controlserver which only exposes a telnet-like interface to foobar2000. You can then write your own PHP/Perl web frontend which connects to this server to issue commands to foobar2000 and retrieve data.

I'm doing this here:  http://beta.saivert.com/foobar2000%20webui/ (http://beta.saivert.com/foobar2000%20webui/)

For what foo_httpcontrol represents I'm satisfied. It basically is a no-brainer while my own script is a complex AJAX monster.

Both foo_httpcontrol and foo_controlsever could do with improvements. Nothing is ever perfect (in a realistic world) but don't go over board with demands. Sometimes keeping it simple and splitting up radical new ideas in new projects is the better way to do it.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-25 19:07:35
no one would object that dedicated server combined with a decent scripting language and foo_controlserver (or, what I personally like better, foo_comserver2) is a zillion times better approach, and that's exactly what I've already said somewhere up the thread.
but every tool has its use, and anyone is free to take the way they suppose is optimal. I'm cooking this thing in the way I like and need in my daily use, and don't pretend it to be anything else that it really is.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-26 05:12:27
Code: [Select]
    v0.73 26 May 2008
        add: templates optimized for iphone, by soulruins;
        add: helper1-3 titleformats are always formatted in playlist now playing
             item context;
             for perfomance reasons playlist row titleformat is formatted in
             playlist context only for queued items, what makes possible to
             use introduced in 0.9.5.3 %queue_*% fields instead of built-in
             #queue_info#.
        fix: probability of insane playlist and queue lengths in totals;
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-05-26 20:02:45
I removed the previous version and didn't keep the settings. But now I get the following error (in Firefox):
"failed to read file: E:\Music\Sorted\foo_httpcontrol_controls_tpl.html, error: 2."

Where 'E:\Music\Sorted\' is the home directory and browse path. I get the same error when I leave browse path blank. When I leave both input blanks the plugin works fine. This problem didn't occur with the previous version.

What could it be?

And the queue index isn't shown. Only total time of the queued tracks
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-27 04:10:28
home dir specifies a directory where plugin will look for template files, and also it serves as a document root of webserver. you should leave it blank if you're satisfied with keeping the above data in components/foo_httpcontrol_data.

for queue indexes to work you have to update foobar to latest version. I'm using 0.9.5.3 built-in queue info field now.
Title: foo_httpcontrol
Post by: Jonas Nyrup on 2008-05-27 09:09:11
If I play a track from one playlist in foobar and have focus on another playlist in httpcontrol it fails to display the right track.
httpcontrol displays information about the track which has the same place in the focused playlist as the actual track has in its playlist.
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-05-27 13:24:42
@oblikoamorale: you're right. thanks
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-27 15:41:34
Code: [Select]
    v0.74 27 May 2008
        fix: wrong playlist context (active instead of playing) in helper1-
             helper3 title formats;
Title: foo_httpcontrol
Post by: Jonas Nyrup on 2008-05-27 17:31:22
thanks for the quick fix.
Title: foo_httpcontrol
Post by: carmenm on 2008-05-28 12:00:52
i am starting to use this plugin using Fluid on mac, so NICE!
I was wondering is there a way to stream the albumart ? (usually a folder.jpg in playing file dir)
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-28 13:26:29
i am starting to use this plugin using Fluid on mac, so NICE!

care to post a screenshot?
I was wondering is there a way to stream the albumart ? (usually a folder.jpg in playing file dir)

if albumart is an external file of the certain name, why not, I can make it. although I don't know why would anyone need it, to be honest.
Title: foo_httpcontrol
Post by: Chipicui on 2008-05-28 15:00:04
Well... in my case not a real need, certainly...
but it would be nice if we could have the option to see the album art ("cover.jpg" in the album folder, for me).
And I mention the word "option" because it could make for a very slow redraw, so I'm not sure if i'd use it  on wifi connection, but I'd certainly do while using the wired network.
Title: foo_httpcontrol
Post by: carmenm on 2008-05-28 17:43:19

i am starting to use this plugin using Fluid on mac, so NICE!

care to post a screenshot?
I was wondering is there a way to stream the albumart ? (usually a folder.jpg in playing file dir)

if albumart is an external file of the certain name, why not, I can make it. although I don't know why would anyone need it, to be honest.


[a href="http://img148.imageshack.us/my.php?image=picture2pr4.png" target="_blank"] so it s nice to see the albumart of what i am playing in my http interface. And album art is external file always called folder.jpg and placed in the same dir as the track file .

Thanks for your concern

EDIT: would it be possible for the web interface to update itself when we make modifications to foo_httpcontrol_controls_tpl.html? Currently i have to restart foobar for each modification
Title: foo_httpcontrol
Post by: Ritsl on 2008-05-29 00:47:57
I've optimized the control page for use in a sidebar. Copied the volume up/down from the iphone setup, moved around some buttons, changed the code a bit, changed the styles so the main player buttons stretch to fill the sidebar width. Simplified the markup for the progress bar, adjusted the related styles and the script to make the click-to-seek work independent of the length of the text in it. In my version, you'll get a bordered box you can click in. Also works fine when the text in the progress bar wraps.

Developed and tested in Opera 9.5, also seems works to work fine in Firefox 3 and Opera 9.27 (with minor issues), and looks the same in Safari 3, though that browser doesn't sport a sidebar :-)
Screenshot is taken using the Tango CL skin in Opera.

Screenshot (http://people.opera.com/rijk/tmp/ritsl_foo_httpcontrol_screenshot.png)
Zipped HTML File (http://people.opera.com/rijk/tmp/ritsl_foo_httpcontrol_data.zip)
Title: foo_httpcontrol
Post by: carmenm on 2008-05-29 01:22:42
(http://img134.imageshack.us/my.php?image=picture1fj5.png)
getting closer to something that i want
Title: foo_httpcontrol
Post by: pstrg on 2008-05-29 02:22:13
Code: [Select]
    v0.74 27 May 2008
        fix: wrong playlist context (active instead of playing) in helper1-
             helper3 title formats;

Replaced 0.72 for this newer version.
Strange that now, after each entry (to the right of the duration) the following text appears: #queue_info#
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-29 04:11:29
I use my macbook to control my foobar. And album art is external file always called folder.jpg and placed in the same dir as the track file .
so, I suggest something like this: album art will be retrieved by virtual request of /albumart.jpg. plugin will look for folder.jpg in playing track directory. if folder.jpg is not found there, first of jpg residing in the same dir will be shown. if there still is no picture, I'll show a /nocover.jpg.

and thanks for the shots, they're interesting!

EDIT: would it be possible for the web interface to update itself when we make modifications to foo_httpcontrol_controls_tpl.html? Currently i have to restart foobar for each modification
technically - yes. right now I'm reading these files on startup and keep them in memory, for perfomance reasons, again. I'll benchmark reading templates on each request. if no perfomance hit is going to be discovered, I'll leave it be.

I've optimized the control page for use in a sidebar.
yay, I didn't know opera 9.5 had something like built-in sidebar. your work looks promising, gotta try it! thanks for sharing.


Replaced 0.72 for this newer version.
Strange that now, after each entry (to the right of the duration) the following text appears: #queue_info#

use the following playlist row format. also you'll need updating to 0.9.5.3
Code: [Select]
<td class="p">[%album artist% ]['['%album%[ CD%discnumber%][ #%tracknumber%]']' ]%title%[ '//' %track artist%]</td><td class="t">%length%</td>[<td class="q">%queue_indexes%</td>]
Title: foo_httpcontrol
Post by: Ritsl on 2008-05-29 12:32:32
I've optimized the control page for use in a sidebar.
yay, I didn't know opera 9.5 had something like built-in sidebar. your work looks promising, gotta try it! thanks for sharing.
Opera has had customizable panels since version 5.10  Just check the box 'Show in panel' in the bookmark properties. I've reordered and prettified the buttons a bit more, and sneakily updated the existing files online.
Title: foo_httpcontrol
Post by: pstrg on 2008-05-29 12:40:11
Quote
use the following playlist row format. also you'll need updating to 0.9.5.3
Code: [Select]
<td class="p">[%album artist% ]['['%album%[ CD%discnumber%][ #%tracknumber%]']' ]%title%[ '//' %track artist%]</td><td class="t">%length%</td>[<td class="q">%queue_indexes%</td>]

Was already using 0.9.5.3; with the new playlist row string above problem was solved.
Thanks!
Title: foo_httpcontrol
Post by: pstrg on 2008-05-29 22:37:30
I'm trying to modify foo_httpcontrol_controls_tpl.html as shown below in color:

<input name="Stop" title="Stop playback" type="button" style="font-size: 12pt; font-family: webdings;" value="<" onclick="pc(this.name);">

With that, I wanted to change the button captions to Webdings chars that resemble players' signs: "<" for instance is a solid square in that font.
It works with IE (which I don't use) but with Mozilla Firefox 3.0 RC1 the font-size parameter does modify size but the font-family one doesn't change font to Webdings (although Allow pages to use their own fonts is set).

[2008-05-30 update]

I have learned that *dings fonts are not displayable anymore by design in the newest release of Firefox.
Could not find a way to circumvent the limitation yet (directions on http://www.mvps.org/dmcritchie/firefox/firefox.htm (http://www.mvps.org/dmcritchie/firefox/firefox.htm) do not work anymore).
Title: foo_httpcontrol
Post by: saivert on 2008-05-30 00:08:05
Why not just a "reload page templates" button on the preferences page?
Title: foo_httpcontrol
Post by: carmenm on 2008-05-30 12:16:47
Why not just a "reload page templates" button on the preferences page?

Could do it but would be even greater if we had a command for reload page templates. I would use this instead of refresh command.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-30 17:33:52
Code: [Select]
    v0.75 30 May 2008
        add: templates optimized for opera sidebar, by Ritsl;
        add: Browse path values must be separated by '|' instead of ';' now;
        add: templates are reloaded on each page request;
        add, especially for album art addicts: [ALBUMART] macro.
             returns an url link to album art picture.
             picture search variants must be specified in "Album art"
             preferences title formatted field, separated by '|'.

             example of field value, which makes plugin look for folder.jpg
             and then, if folder.jpg is not found, for any jpg in playing
             track directory:
             $puts(dir,$left(%path%,$strrchr(%path%,\)))$get(dir)folder.jpg|$get(dir)*.jpg
            
             if nothing is found, /nocover.jpg is returned.
             if track is not playing, /nocoverinfo.jpg is returned.

             example of macro usage:
             <img src="[ALBUMART]">
Title: foo_httpcontrol
Post by: soulruins on 2008-05-30 21:49:26
Perfect! Update iPhone (PDA) template for v0.75:


Download (http://philip.progtech.ru:1111/foobar2000_Pack/ext/foo_httpcontrol_controls_tpl_iphone.zip)
Title: foo_httpcontrol
Post by: foo_peter on 2008-05-30 22:34:02
@oblikoamorale

Wow! amazing... amazing ... Thanks a lot !
Works really fine here..
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-05-31 04:41:15
d'oh! I forgot to remove the 'no-cache' http header in 0.75, which evil nature prevents caching and generates unneccessary traffic when serving favicon, pictures and any other files (excluding always reloading main interface). fixed 0.75 is re-uploaded.
Title: foo_httpcontrol
Post by: soulruins on 2008-06-01 17:39:52
Again update iPhone (PDA) template for v0.75:


Download (http://philip.progtech.ru:1111/foobar2000_Pack/ext/foo_httpcontrol_controls_tpl_iphone.zip)
[/size]
Title: foo_httpcontrol
Post by: carmenm on 2008-06-02 10:31:25
Amazing oblikoamorale !!! Thank you so much!
Title: foo_httpcontrol
Post by: drcursor on 2008-06-02 22:14:40
Easter egg:

"
Happy birthday, oblikoamorale! :-)

"
..so...happy birthday!
Title: foo_httpcontrol
Post by: Ritsl on 2008-06-07 00:07:15
Here's my latest version of the Opera/Firefox sidebar, updated to include album art as offered in 0.7.5, and also simplified much more:
Title: foo_httpcontrol
Post by: foo_peter on 2008-06-10 19:44:03
It is simply a dream and even if I have stoned me, I will see this now rather than in my Foobar

now actually missing only the lyrics I get to this point because someone can help me?

Thank you in advance and all made this possible

(http://img367.imageshack.us/my.php?image=lyricsbv0.jpg)


foo_peter
Title: foo_httpcontrol
Post by: alkasar on 2008-06-22 23:05:21
this is a great plugin  thanks a lot.

Is it possible to enhance the html template to have vertical scroll only on the playlist area ?
the goal is to have buttons and now_playing area always visible.
Title: foo_httpcontrol
Post by: Hancoque on 2008-06-23 00:39:01
You can accomplish this by putting a div element around the playlist table. Assign it a unique id (I use "playlist"), so that it looks like this:
Code: [Select]
<div id="playlist">
    <table id="pl">
        [PLAYLIST]
        ...
    </table>
</div>

Now add the following JavaScript function to the JavaScript section in the HTML head:
Code: [Select]
function fit() {
    var playlist = document.getElementById('playlist');

    playlist.style.position = 'static'; // important for the onresize event
    var top = playlist.offsetTop;
    var left = playlist.offsetLeft;

    playlist.style.overflowY = 'auto';

    playlist.style.top = top + 'px';
    playlist.style.left = left + 'px';
    playlist.style.right = left + 'px';
    playlist.style.bottom = '8px'; // fit this to your taste
    playlist.style.position = 'absolute';
}

To make sure it is executed every time the page (re)loads or is resized, the body element has to be modified this way:
Code: [Select]
<body onload="mouse_capture_init(); fit();" onresize="fit();">
Title: foo_httpcontrol
Post by: carmenm on 2008-06-25 16:36:21
Does anybody see a way to do a template using sproutcore (http://www.sproutcore.com/)??
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-26 15:23:02
nice, Hancoque. thanks. once been trying to make something similar, but failed. nice.
Title: foo_httpcontrol
Post by: Ritsl on 2008-06-26 20:08:15
Indeed nice. I've updated my Opera/Firefox sidebar templates (http://people.opera.com/rijk/tmp/foo_httpcontrol_data.zip) to include the table scroll
Title: foo_httpcontrol
Post by: Athyndmion on 2008-06-28 11:17:40
Excellent plugin. Thanks a lot, oblikoamorale.

I installed it on my girl friend's computer, who listens to her music on a desktop computer, but she prefers using her laptop on her sofa for other geeky activities. So she was interested in having a tool to control her music remotely.

There is a problem, though. When she connects to foo_httpcontrol server using Firefox, it quickly reaches 99% CPU usage, and she has to kill Firefox. She has a 512MB / 1.5GHz laptop with Win XP SP2, she uses Firefox 2.0.0.14 and foo_httpcontrol 0.75.
I tried to connect to her server with my own laptop (4GB / 2.6GHz dual core under Win XP SP3) and I get 50% CPU usage for 10 to 20 seconds, then it drops to 0-3% for a while, and jump back to 50%.

Her playlist is big, which is probably the problem (but I read you are testing the plugin on a 23k playlist). She has about 38k tracks.

--

BTW, I personnally use foo_httpcontrol in conjunction with a edcast streaming server and a secured ssh connection with a tunnel. The stream is public, non secured, but the http control can only be performed locally (So I ssh/tunnel the http requests). It works very well with my 10k playlist, but I do not tried with the last version of foo_httpcontrol.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-28 13:18:17
38k tracks is an obvious overload.
it takes some time for plugin to process so many tracks internally, but it should be less than a second. and, what's more significant, generated html page size in this case is enormous, something around 5Mb. apparently mozilla is having troubles loading and displaying such big pages.
perhaps it is a good idea to try opera 9.5. 23k playlist displays just fine, even with instant page redrawing option turned on.
but in my opinion, the only comfortable solution in case of a (very) big playlists is to uncheck 'retrieve playlist' in plugin settings.
Title: foo_httpcontrol
Post by: Athyndmion on 2008-06-28 14:26:47
but in my opinion, the only comfortable solution in case of a (very) big playlists is to uncheck 'retrieve playlist' in plugin settings.


Thank you. I was thinking of such possibility, but I did not look at the settings. I was also wondering if it would be possible to reduce the size of the web page by, e.g., only displaying the list of artists or albums, and when you click on one of them, it retrieves the list of tracks for the particular artist / album.
This is probably far more complex to implement since the playlist is not necessarily ordered by artist/album.

An alternative solution would be to retrieve tracks according to a query that would be given through a web form. So, if the query is carefully chosen, there would not be a huge list to display.

I will also take a look at opera 9.5, but I love Firefox too.
Title: foo_httpcontrol
Post by: Hamallainen on 2008-06-28 15:00:21
To reduce the page size wouldn't it be possible to display only a limited amout of the playlist splitted in multiple pages ?
For exemple : with a 10k songs playlist. Only display 1k songs at once but splitted in 10 pages.
The number of songs displayed per page could be defined in the préferences
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-28 15:32:38
Athyndmion, sadly I'm not interested in reproducing autoplaylists/playlists query/media library etc in html interface.

Hamallainen, I've thought about it before but got stuck on two things: I'm amazingly lazy, and personally I don't need such page switching. and I'm lazy again.

sorry.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-29 17:56:55
well... some spare time today has been spent fiddling with this bastard:
Code: [Select]
    v0.76 29 Jun 2008
        add: improved remote access logging;
        add: scrollable playlist area (by Hancoque);
        add: autoscroll to now playing track;
        add: multipage playlist. number of per-page entries is set in
             "Page entries" settings field. entering 0 disables multipage;
        fix: mostly invisible glitches;
Title: foo_httpcontrol
Post by: Hamallainen on 2008-06-29 20:38:10
so you're not so lazy 
The multi page works quite well. Big playlist should not be a problem anymore.
And the scrollable playlist is a nice addition too.
Thanks to you and Hancoque
Title: foo_httpcontrol
Post by: Hancoque on 2008-06-29 22:26:06
Strangely the playlist disappears in IE7 when a now-playing track is present. It has something to do with the autoscroll feature.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-30 02:56:28
can't test due to absence of IE7... thanks g#d I don't have it
try removing the autoscroll part in fit() function of the template file maybe?
Title: foo_httpcontrol
Post by: Hancoque on 2008-06-30 07:46:30
I've just tested it with your default template and found out that the fit function doesn't have any effect in quirks mode when using IE6 or IE7. If I remove the doctype declaration in my own otherwise XHTML compliant template and thus force the browser to interpret it in quirks mode I experience the same problem. In standards compliance mode however IE7 correctly applies the fit function to make the playlist scrollable while in IE6 it still doesn't work (which is either my fault or that of IE6). But as I said, the playlist gets eaten by IE7 if the code inside the "if (npelem)" condition is executed. Just accessing npelem.offsetTop, offsetHeight or scrollTop triggers the bug. So you don't even have to change any values, which means that even code like below already causes the problem:

Code: [Select]
if (npelem)
{
    var foo = npelem.offsetTop;
}

Code: [Select]
if (npelem)
{
    var foo = offsetHeight;
}

Code: [Select]
if (npelem)
{
    var foo = scrollTop;
}

Strange, isn't it?
Title: foo_httpcontrol
Post by: Ritsl on 2008-06-30 08:38:30
I've had a problem with 0.76: the playlist wasn't shown anymore. Tried in various browsers, switched to the original template and saw the same. But then I stopped the music, switched playlists and things started working properly again. After some more trying, I figured out that after switching to a new playlist, it tries to automatically go to the page were the 'now playing' song is on - even though that song is not present on the newly chosen playlist. If the page number is not available in the new playlist because it is shorter, the playlist will not be shown at all.

Presumably this is the same thing as Hancoque is talking about.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-30 08:59:39
Hancoque, could it be that assigning nowplaying id to an <tr> element of playlist causes this weird problem? what do you, as html guru, would suggest?

Ritsl, thanks for detailed report! I think it is a different issue which I thought I've fixed already.
Title: foo_httpcontrol
Post by: Hancoque on 2008-06-30 16:12:05
I've found the problem. It occurs after setting the playlist's position to 'absolute'. If offsetHeight and scrollTop are accessed before that happens, the problem doesn't occur. However, as these values are only useful after setting the position to 'absolute' it has to be done in that order.

But I've also found a fix. Simply set the position to 'fixed' instead of 'absolute'.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-06-30 17:55:15
my appreciation for this curious tour through innard html debris

brief test reveals that IE6.0.2900.5512 doesn't introduce disappearing playlist anymore. playlist won't become scrollable as well, but I guess it's not a big deal.
opera 9.5 and mozilla 2 works fine despite the change.
Title: foo_httpcontrol
Post by: ExUser on 2008-06-30 18:26:38
Does anybody see a way to do a template using sproutcore (http://www.sproutcore.com/)??


Yeah. Sproutcore is just a javascript framework, so you can use it in template design.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-07-02 20:17:51
Code: [Select]
    v0.76a 02 Jul 2008
        fix: playlist switcher fought with multipage playlist;
        fix: playing track playlist autoscroller;
Title: foo_httpcontrol
Post by: 3ddfreak on 2008-07-06 15:37:09
This is one of the best plugins for foobar ever! Thx oblikoamorale! The only thing I cant get to work is coverart? Any suggestions? (I have "cover.jpg" files in my albumfolders. How can I actually display them?)
Title: foo_httpcontrol
Post by: Ritsl on 2008-07-06 20:53:34
Using this in the field for 'Album art' in the http_control preferences should do the trick.

$puts(dir,$left(%path%,$strrchr(%path%,\)))$get(dir)folder.jpg|$get(dir)*.jpg

... and using an html template with <img src="[ALBUMART]" alt=""> in it of course.
Title: foo_httpcontrol
Post by: 3ddfreak on 2008-07-06 22:06:52
Using this in the field for 'Album art' in the http_control preferences should do the trick.

$puts(dir,$left(%path%,$strrchr(%path%,\)))$get(dir)folder.jpg|$get(dir)*.jpg

... and using an html template with <img src="[ALBUMART]" alt=""> in it of course.


Yup, it works now! Thx for the fast reply/help!
Title: foo_httpcontrol
Post by: :ub: on 2008-07-20 15:02:09
Thank you so much oblikoamorale, foo_httpcontrol is THE answer to controlling foobar on a remote machine, and it is very well done!  You can't believe how happy I am that I found your plugin.

Here are a few ideas I've had to make the UI more intuitive for less technical users:

The playback control buttons are pure ASCII:
(http://smages.com/21/0f/210f5ab2c88a4f71252aa970b943e594.png.htm)

Full screenshot:
(http://smages.com/66/13/66133de545523678b10b1755c888c2e5.png.htm)

If you're interested, these are the foo_httpcontrol HTML files:
http://rapidshare.com/files/131110860/foo_...l_data.zip.html (http://rapidshare.com/files/131110860/foo_httpcontrol_data.zip.html)

Dear oblikoamorale, there are a few other ideas that I guess can't be done in html:
The last point is certainly a bit of work, but maybe it's less work than adding more real "Playlist management" to foo_http_control (change order, drag&drop, etc).  For a user who just likes to play entire albums from a directory tree, using foo_http_control might become even easier: they just click "Folder browser", click "Play this folder", and see the "now playing" bar progress through the directory.

The idea is: If the folder browser was appearing underneath the playback controls in the "controls" screen, it could on-and-off replace the playlist in the lower part of the screen, and always show the currently played song in its actual "directory context". The Playlist controls could be replaced with "enqueue folder/subfolder". So, the user could flip back and forth from Playlist to Folders view in a single screen. The %path% variable on the current controls screen could then be permanently replaced with the cool "clickable" path you've done for the browser screen, which would give a nice way to navigate folders right in the controls screen.

Just an idea!

Thanks a lot anyway for this long-awaited plugin!

Best
Ulf
Title: foo_httpcontrol
Post by: :ub: on 2008-07-20 15:13:29
...I forgot to mention that, in the screenshot I shared, the "expert mode" was obviously turned off.

If turned on, the complete foo_httpcontrol is visible, of course. The user can control it with a little checkbox in the "Display" control group:

(http://smages.com/1a/3d/1a3d91daed8f26046dfe55c7fde4e058.png.htm)
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-07-20 15:49:01
Nice skin, but the listbox is the expert mode doesn't work in Firefox 2. (the one with start, enqueue...) It won't show the available options, and it is positioned half over the stop and play controls. Also is expert mode not remembered. For example when expert mode is visable, hit refresh (upd button) and expert mode is disabled.
Title: foo_httpcontrol
Post by: :ub: on 2008-07-20 16:11:25
Nice skin, but the listbox is the expert mode doesn't work in Firefox 2. (the one with start, enqueue...) It won't show the available options, and it is positioned half over the stop and play controls. Also is expert mode not remembered. For example when expert mode is visable, hit refresh (upd button) and expert mode is disabled.

Thanks, Tim!  All functionality tested OK on Firefox 3 -- if you can, I recommend the upgrade from FF2: A lot of things improved significantly in FF3.

Nevertheless, here's a version that depends less on CSS2.0, so it should work on a broader range of browsers.  Does this work better for you?

(http://smages.com/c6/c9/c6c9ae5b9df28ab8f5bc8e357ce3adc7.png.htm)
http://rapidshare.com/files/131148724/foo_...l_data.zip.html (http://rapidshare.com/files/131148724/foo_httpcontrol_data.zip.html)

BTW, yes, the "expert" mode is flagged just inside the page, not in the URL.  So it gets reset every time the page is reloaded.  It's good to see here that the "expert" settings themselves are persistent! So for instance, when you flip the "Start/Enqueue/..." switch to "Delete", all following clicks in the playlist respect that setting until you go back to expert mode and change it.

Anyway I agree that persistence should be added, but when I made the expert mode I found persistance was less of a problem than I thought in the beginning.

Best,
Ulf
Title: foo_httpcontrol
Post by: Tim Schuhmacher on 2008-07-20 22:26:42
Thanks for the quick reply and updated (but downgraded  ) version. Indeed I should update to Firefox 3. This one works better!
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-07-21 16:18:11
[quote author=:ub: link=msg=578342 date=1216562529]there are a few other ideas that I guess can't be done in html:[/quote]

first of all, thanks for the feedback. it is always interesting to see the ways someone use THIS. now, let's get to the answers.
I find having additional option to specify nocover/nocoverinfo filenames an overkill. yes, it seems reasonable being able to select a single pixelled gif to save bandwidth, but to think of it, the ones who are caring of bandwidth saving won't be using cover art anyway. so it doesn't really matter if a fewbyted onepixel.gif or 700 bytes onepixel.jpg is loaded. moreover, the loaded file will be cached by browser anyway.

tracking volume control can definitely be done by javascript means, considering the fact that you can retrieve current volume level by [VOLUME], and set volume by calling /cmd=Volume?param1=NN

[quote author=:ub: link=msg=578342 date=1216562529]The last point is certainly a bit of work, but maybe it's less work than adding more real "Playlist management" to foo_http_control (change order, drag&drop, etc).  For a user who just likes to play entire albums from a directory tree, using foo_http_control might become even easier: they just click "Folder browser", click "Play this folder", and see the "now playing" bar progress through the directory.[/quote]

I'll try to give your idea a thought. perhaps it is indeed nicer to have one combined page rather than two separated pages, but I've never considered this. the media player classic web inferface was the inspiration and it does have two separated pages.
regarding the ability of being able to fully control playlist.. well, I think it doesn't just needed in our case where things are bound to be as simple as it is possible. anyways, half of the playlist modifications possibilities are available, and the other half is somehow compensated by playback queue access.

[quote author=:ub: link=msg=578353 date=1216566685]BTW, yes, the "expert" mode is flagged just inside the page, not in the URL.  So it gets reset every time the page is reloaded.  It's good to see here that the "expert" settings themselves are persistent! So for instance, when you flip the "Start/Enqueue/..." switch to "Delete", all following clicks in the playlist respect that setting until you go back to expert mode and change it.[/quote]
you're right, this kind of persistence needs to be done on plugin side. and while it is possible to create some kind of user defined variables being stored within the plugin, I don't really know if the time spent on it will really be compensated by achieved functionality.
Title: foo_httpcontrol
Post by: :ub: on 2008-07-21 20:22:52
Hi oblikoamorale, thanks for your prompt response!
[quote author=:ub: link=msg=578342 date=1216562529]there are a few other ideas that I guess can't be done in html:
  • wouldn't a transparent onepixel.gif be a better fallback cover art than a JPG?
I find having additional option to specify nocover/nocoverinfo filenames an overkill. yes, it seems reasonable being able to select a single pixelled gif to save bandwidth
[/quote]This could be a misunderstanding, actually: the idea was not to save a few hundred bytes, but to have a transparent graphic for "fallback" in case that no cover art is found.  afaik, jpg graphics can't be transparent, but gif graphics can.

Here's one more idea to share before I go for the pub now  -- a great feature would of course be if you could make FB2K's command interface available via URL parameters: So, you could pass FB2K commands straight through to FB2K when your plugin receives them via the cmd parameter. This would enable HTML developers to add functionality right in the template: For instance, I would like to be able to set %rating% tags in music files right from a button in the HTML user interface.  If I knew I could just pass a FB2K command to FB2K via the URL, your plugin could enable such command-passing without actual modifications to your plugin itself...

Ulf
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-07-22 16:32:18
[quote author=:ub: link=msg=578553 date=1216668172]This could be a misunderstanding, actually: the idea was not to save a few hundred bytes, but to have a transparent graphic for "fallback" in case that no cover art is found.  afaik, jpg graphics can't be transparent, but gif graphics can.[/quote]
eheh, it's just an one tiny bit of a pixel, isn't it? well, all right, it will be possible to specify coverinfo file names in future versions.
[quote author=:ub: link=msg=578553 date=1216668172]Here's one more idea to share before I go for the pub now  -- a great feature would of course be if you could make FB2K's command interface available via URL parameters: So, you could pass FB2K commands straight through to FB2K when your plugin receives them via the cmd parameter. This would enable HTML developers to add functionality right in the template: For instance, I would like to be able to set %rating% tags in music files right from a button in the HTML user interface.  If I knew I could just pass a FB2K command to FB2K via the URL, your plugin could enable such command-passing without actual modifications to your plugin itself...[/quote]
I'm afraid there's no universal way of making all of the commands (hehhh...) to be available without programming support for each and every one. is it really needed?
how will you estimate the number of users needing such thing?
Title: foo_httpcontrol
Post by: :ub: on 2008-07-25 02:00:32
'm afraid there's no universal way of making all of the commands (hehhh...) to be available without programming support for each and every one. is it really needed?
Hi oblikomorale, when I suggested passing commands to foobar via your http plugin, I though of something like http://192.168.178.2:8888/?foo_cmd=/playing_command:"Custom Info/Rate 5" that would pass everything after "foo_cmd=" to foobar's command line: \foobar2000\foobar2000.exe /playing_command:"Custom Info/Rate 5".

Don't you think this would be doable in a generic way?  Of course, it was not my intention to suggest writing individual code for every API command.

Btw, I've made another small enhancement to the HTML: by clicking the album art, the cover.jpg now switches between 3 states: small -- invisible -- fullscreen -- small invisible.. etc etc. It's quite nice to display and hide large covers with a click

http://rapidshare.com/files/132240691/foo_...l_data.zip.html (http://rapidshare.com/files/132240691/foo_httpcontrol_data.zip.html)

Do you think you could make the new settings "image appearance" and "expert mode" persistent in your plugin: similar to "volume", which is also persistent already?

Best
Ulf
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-07-26 20:30:42
don't know how useful these additions are going to be, but here you go:
Code: [Select]
    v0.77 26 Jul
        add: user specified macro values. for example, calling the following:
             http://127.0.0.1:8888/?cmd=SetVar&param1=VarName&param2=VarValue
             initializes [VarName] macro with VarValue.
             note that the [VarName] macro doesn't get replaced unless VarName
             variable is initialized;
        add: ability  to  execute  currently  running  foobar  with  specified
             command line parameters. make  sure  to  urlencode  command  line
             parameter (just in case). example:
             http://127.0.0.1:8888/?cmd=CmdLine&param1=%2fplaypause
        add: customizable nocover and nocoverinfo image names;
        fix: heap corruption in jnetlib's getheader();
Title: foo_httpcontrol
Post by: :ub: on 2008-08-01 23:37:24
don't know how useful these additions are going to be, but here you go:
Thanks, oblikomorale!

I've been testing it and it works:  Using plugins RunCMD and Quicktagger (or PlaybackStatistics), it's now possible to set a %rating% tag for songs per foo_httpcontrol, and display the song's %rating% tag in the playlist.

So as promised, let me extend my HTML skin with some rating functionality, and persistent cover art display. I'll be back...

Thanks a lot for your quick response!

Ulf
Title: foo_httpcontrol
Post by: btz on 2008-08-03 22:14:23
Loving the plugin, great work. and the themes aswell.

just have one little problem, no albumart is showing up in any of the themes. even tho foobar finds the pictures just fine, the webinterface wont :S

all my albumarts are called folder.jpg and located in the folder of the albums

would be nice if anyone could tell me what im doing wrong
Title: foo_httpcontrol
Post by: viniciusferrao on 2008-08-04 06:12:38
Awesome!

But... can we have a better iPhone interface? Automatic browser detection too? ^^

Okay, I'm asking too much
Title: foo_httpcontrol
Post by: sIIhZt on 2008-08-04 17:59:31
sorry if i missed this being mentioned before, but is there a way to run a foobar script from the webinterface?
i really need that feature as i'm using various scripts like all the time
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-05 15:52:02
btz, put this into album art field of http control preferences page:
$directory_path(%path%)\folder.jpg

viniciusferrao, if you want interface improvements I'm afraid you have to spend some time implementing them by yourself.

larskl, define foobar script please. I'm quite curious what would it be.
Title: foo_httpcontrol
Post by: RainDawg on 2008-08-05 16:50:54
Is there a foobar2000 scripting language?  Hrm....I've managed to miss this little beauty.
Title: foo_httpcontrol
Post by: sIIhZt on 2008-08-05 22:15:27
Quote
larskl, define foobar script please. I'm quite curious what would it be.

Masstagger scripts I meant. Afaik that's the only kind of scripting available so I use it heavily and it'd really be nice to have it available in this plugins.
For example I use it for rating songs as I listen to them, amongst other stuff.
Title: foo_httpcontrol
Post by: sIIhZt on 2008-08-05 22:29:45
After playing with the existing interfaces I noticed one big problem with all of them: they use synchronous requests, making the updates require screen updates. So I wrote this AJAX powered webui!

Due to the way this plugin is designed you'll have to open http://localhost:8888/index.html (http://localhost:8888/index.html) instead of just http://localhost:8888/ (http://localhost:8888/) in your browser (the "index.html" part is important, else you'll just get some text) but besides that it works just fine.

(http://img139.imageshack.us/img139/3879/foobarzw6.png)

Download: http://www.2shared.com/file/3717567/6947f4...ntrol_data.html (http://www.2shared.com/file/3717567/6947f4c5/foo_httpcontrol_data.html)
Mirror: http://www.uploading.com/files/9XPZ4C6M/fo...l_data.zip.html (http://www.uploading.com/files/9XPZ4C6M/foo_httpcontrol_data.zip.html)

Note: Doesn't work with IE, tested in Opera 9.5 and Firefox 3
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-06 05:12:44
larski, it's the one of an interesting approach, nice.
regarding support of tagging, it is available via cmdline interface, I guess. just look a bit up the thread.
Title: foo_httpcontrol
Post by: sIIhZt on 2008-08-06 11:11:04
Thx, that works fine. Must have missed that post
Title: foo_httpcontrol
Post by: sIIhZt on 2008-08-06 20:54:20
made my webui with firefox as well (IE is still not supported and will not be):

http://www.2shared.com/file/3717567/6947f4...ntrol_data.html (http://www.2shared.com/file/3717567/6947f4c5/foo_httpcontrol_data.html)
http://www.uploading.com/files/9XPZ4C6M/fo...l_data.zip.html (http://www.uploading.com/files/9XPZ4C6M/foo_httpcontrol_data.zip.html)
Title: foo_httpcontrol
Post by: rexit2 on 2008-08-07 07:45:16
I just discovered this today. Great Work, Thanks!
I would love to have some way of keyword searching the playlist or the directories. (other then using the *find* feature in the web browser) Maybe this is possible already, I'm just not aware of how to go about this. Thanks, again
Title: foo_httpcontrol
Post by: 3ddfreak on 2008-08-07 13:54:00
Trying to get this to work on my nokia N82. Anyone who managed to get it to work on an Nseries phone?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-07 15:42:35
Trying to get this to work on my nokia N82. Anyone who managed to get it to work on an Nseries phone?

perhaps you should start with stripping down as much javascript as possible and heavily reducing the amount of displayed information.
Title: foo_httpcontrol
Post by: alkasar on 2008-08-07 16:30:13
made my webui with firefox as well (IE is still not supported and will not be):

http://www.2shared.com/file/3717567/6947f4...ntrol_data.html (http://www.2shared.com/file/3717567/6947f4c5/foo_httpcontrol_data.html)
http://www.uploading.com/files/9XPZ4C6M/fo...l_data.zip.html (http://www.uploading.com/files/9XPZ4C6M/foo_httpcontrol_data.zip.html)

thanks for the port. I am using FF 3 on Vista. Ii looks really good and is a pretty reactive interface.

volumebar and progress bar are not clickable. (except extreme right/left). I am a nub, but tried to read your code and it seems your intention was to make the areas clickable. A bug ?

also, if i may : the layout is really big! could you reduce size so that it fits without scrolling on a regular size screen... i mean about 500 pixel height should be sufficient. For example, thiner prgress bar and put the volume % in the volumebar would save space and be even better looking.

are you working on playlist management in ajax as well ? the potential of this interface seems really great.
Title: foo_httpcontrol
Post by: sIIhZt on 2008-08-07 19:17:52
hm, overlooked the bars not working in FF. No idea why they don't work there, works fine in Opera (which is my main browser and thus the browser this was created for).
I'm not planning to make any further changes on this interface at the moment as it has all the features I need but feel free to built uppon it or reuse any of the code/ideas used
Title: foo_httpcontrol
Post by: Auric on 2008-08-07 20:47:32
are you working on playlist management in ajax as well ? the potential of this interface seems really great.


I've been toying around with this a bit myself, with the goal of making an iPhone UI that is more consistent with the iPod app.  The playlist is a bit difficult to work with though, since there appears to be some table formatting built-in.
Title: foo_httpcontrol
Post by: Auric on 2008-08-09 01:32:28
Would it be possible to move the playlist formatting (the table rows and links) out of the internal code and either into a parameter in the settings or an external file?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-09 06:19:40
being exactly specific in what data you want to receive should really help me, as it will save my time.

removing builtin table formatting seems a good way except it doesn't answer to the question where playlist highlighting data should be going. we can't just drop it, right?

so, won't you mind to be a good sport, go ahead and elaborate on the request?
Title: foo_httpcontrol
Post by: Auric on 2008-08-09 15:35:23
being exactly specific in what data you want to receive should really help me, as it will save my time.

removing builtin table formatting seems a good way except it doesn't answer to the question where playlist highlighting data should be going. we can't just drop it, right?

so, won't you mind to be a good sport, go ahead and elaborate on the request?


If you are referring to the odd, even and focus classes, you already mentioned one possibility earlier in this thread: store the playlist as an array in an external file.  You wouldn't need to pass the highlighting data because the user would have all the information he needs to make his own.  There are other possibilities too, but I think that would probably be the most efficient.

The only question is how to store the array.  XML might be the obvious choice, though I opted for JSON in my template since it does not require an external interpreter and is therefore faster.  The downside is that I ran in to a host of issues with quotes.  Since JSON data is really just a JavaScript array, it doesn't like quotes or apostrophes within the data.  The user-specified formatting strings in your component do not have this problem, as they are apparently stripped of quotes before being stored as a macro.  The extra formatting code (e.g. highlight classes), however, is not stripped of quotes.  At the moment, I'm using a few lines of JavaScript to parse the playlist and pull out the quotes where necessary.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-09 18:59:10
The only question is how to store the array.  XML might be the obvious choice, though I opted for JSON in my template since it does not require an external interpreter and is therefore faster.

care to show example of your own JSON playlist data structures and code digging through them? it might help to push myself towards the right direction.
Title: foo_httpcontrol
Post by: Auric on 2008-08-09 19:39:51
care to show example of your own JSON playlist data structures and code digging through them? it might help to push myself towards the right direction.


Sure.

The JSON data is stored in the foo_httpcontrol_controls_tpl file, much like Larskl's solution.  As I said, it's basically just a JavaScript array:
Code: [Select]
{
"playlist": "[PLAYLIST]",
"volume": "[VOLUME]",
"isplaying": "[IS_PLAYING]",
"ispaused": "[IS_PAUSED]",
"lastaction": "[LAST_ACTION]",
"trackpos": "[TRACK_POS]",
"tracklen": "[TRACK_LEN]",
"helper1": "[HELPER1]",
"helper2": "[HELPER2]",
"helper3": "[HELPER3]",
"albumart": "[ALBUMART]"
}

Here's the code that parses it, taken from the AJAX function called on state changes:
Code: [Select]
jsonString = httpRequestStatus.responseText;
plString = jsonString.substring(jsonString.indexOf('<'),jsonString.indexOf('",'));
plStringNew = plString.replace(/"/g,'');
plStringNew = plStringNew.replace(/'/g,"");
h1String = jsonString.substring(jsonString.indexOf("<div>"),jsonString.indexOf('</div>"'));
h1StringNew = h1String.replace(/"/g,'');
jsonString = jsonString.replace(plString,plStringNew);
jsonString = jsonString.replace(h1String,h1StringNew);
fooVars = eval("(" + jsonString + ")");

7 of those 9 lines are doing nothing but stripping quotes.  Since the JSON data structure itself uses quotes, I can't just strip all of them out of the file, so those lines isolate the playlist and helper1 macros -- the ones that potentially have quotes in them -- and strip their quotes.  The code only makes sense if you know that the playlist macro is the very first "<" in the data array, and the helper1 macro is the first div.  I apologize for the confusing code; cleanup will come later.

In any case, the import bit is the eval() function.  You can use the built-in JavaScript interpreter to parse JSON data instead of having to load a DOM parser for XML.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-10 10:07:24
thanks for the tip on JSON! it looked easy enough, so the following quick and dirty fb2k state structure based on your example came upon my mind:
Code: [Select]
var fb2k = 
{
    "playlist": [ { entry_1 }, { entry_etc } ],        // to implement
// example of custom titleformatted entry:
// "track": "Some track title", "len": "5:01", "playing": "%is_playing%", "focus": "{IS_FOCUSED}", "previously_played": "{PREVIOUSLY_PLAYED}", "q_num" : "{QUEUE_NUM}"
//
// {IS_FOCUSED}, {QUEUE_NUM}, {PREVIOUSLY_PLAYED} need to be implemented, this data is not available in titleformatting
    "playlist_page": "[PLAYLIST_PAGE]",                // to implement
    "playlist_total_pages": "[PLAYLIST_PAGES]",        // to implement
    "playlist_total_time": "[PLAYLIST_TOTAL_TIME]",
    "queue_total_time": "[QUEUE_TOTAL_TIME]",
    "playlists": [                                  // to implement
       { "name": "Playlist 1", "items" : "102" },
       { "name": "Playlist etc", "items" : "54" } ],
    "playlists_current": "[PLAYLIST_CURRENT]",        // to implement
    "playlists_total": "[PLAYLIST_TOTAL]",            // to implement
    "playback_order": "[PLAYBACK_ORDER]",            // to implement
    "volume": "[VOLUME]",
    "isplaying": "[IS_PLAYING]",
    "ispaused": "[IS_PAUSED]",
    "isenqueueing": "[IS_ENQUEUEING]",
    "lastaction": "[LAST_ACTION]",
    "stopaftercurrent": "[SAC]",
    "autorefresh": "[AUTO_REFRESH]",
    "trackpos": "[TRACK_POS]",
    "tracklen": "[TRACK_LEN]",
    "tracknum": "[TRACK_NUM]",
    "trackstotal": "[TRACKS_TOTAL]",
    "helper1": "[HELPER1]",
    "helper2": "[HELPER2]",
    "helper3": "[HELPER3]",
    "albumart": "[ALBUMART]"
}

please correct me if anything neccessary is forgotten.
the quotes issue can be avoided by replacing " with &quote; in every titleformatted field within the plugin.
Title: foo_httpcontrol
Post by: Auric on 2008-08-10 14:26:10
Looks good, except for a few minor typos.  %is_playing% should be [IS_PLAYING], {IS_FOCUSED} should be [IS_FOCUSED], etc, but I'm sure you would've caught that before implementation.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-10 21:19:53
I do realise this might look somewhat scary, but at least it seems to work
Code: [Select]
    v0.78 10 Aug
        add: [PLAYLIST_ACTIVE] - active playlist index,
             [PLAYLIST_PAGE] - current page of active playlist,
             [PLAYLIST_PAGES_COUNT] - number of playlist pages,
             [PLAYLIST_ITEM_FOCUSED], [PLAYLIST_ITEM_PLAYING], and
             [PLAYLIST_ITEM_PREV_PLAYED] - focused, now playing
             and previously played playlist items.

             [PLAYLIST_JS] - javascript array with current playlist items.
             each array element is defined by playlist row titleformatting
             string set in preferences. for example, the following
             playlist row value:
             { "track": "$replace(%title%,",)", "len": "%length%", "queue" : "%queue_indexes%" }
             creates you this array:
             [ { "track": "Laila", "len": "5:29", "queue" : "?" },
               { "track": "Outward bound", "len": "4:53", "queue" : "?" },
               ...etc...
               { "track": "December", "len": "3:19", "queue" : "?" },
               { "track": "South", "len": "4:49", "queue" : "?" } ]

             [PLAYLIST_JS] - javascript array with current playlist info
             (playlist name and playlist items count).
             sample return value:
             [ { "name": "local", "count": "0" }, { "name": "test", "count": "3" } ]

             these additions allows you to have important parts of fb2k state
             exported as a javascript array, for example:

             var fb2k =
             {
                 "playlist_items": [PLAYLIST_JS],
                "playlist": { "currentpage": "[PLAYLIST_PAGE]",
                              "totalpages": "[PLAYLIST_PAGES]",
                              "item_focus": "[PLAYLIST_ITEM_FOCUS]",
                              "item_playing": "[PLAYLIST_ITEM_PLAYING]",
                              "item_previouslyplayed": "[PLAYLIST_ITEM_PREV_PLAYED]" },
                            "playlist_total_time": "[PLAYLIST_TOTAL_TIME]",
                            "queue_total_time": "[QUEUE_TOTAL_TIME]",
                            "playlists": [PLAYLISTS_JS],
                            "playlist_current": "[PLAYLIST_ACTIVE]",
                            "playback_order": "[PLAYBACK_ORDER]",
                            "volume": "[VOLUME]",
                            "isplaying": "[IS_PLAYING]",
                            "ispaused": "[IS_PAUSED]",
                            "isenqueueing": "[IS_ENQUEUEING]",
                            "lastaction": "[LAST_ACTION]",
                            "stopaftercurrent": "[SAC]",
                            "autorefresh": "[AUTO_REFRESH]",
                            "trackpos": "[TRACK_POS]",
                            "tracklen": "[TRACK_LEN]",
                            "tracknum": "[TRACK_NUM]",
                            "trackstotal": "[TRACKS_TOTAL]",
                            "helper1": "[HELPER1]",
                            "helper2": "[HELPER2]",
                            "helper3": "[HELPER3]",
                            "albumart": "[ALBUMART]"
             }
Title: foo_httpcontrol
Post by: Auric on 2008-08-11 02:33:22
The JSON playlist works great, thanks!

On a side note, it seems that the macros are only updated when no command is sent in the HTTP request, in other words to retrieve the playlist.  If a command is sent, such as to play or pause, the macro data is incomplete.

Here's an example:
Code: [Select]
{

"playlist": [ { "number": "01", "track": "The Pretender", "len": "4:29" }, { "number": "02", "track": "Let It Die", "len": "4:05" }, { "number": "03", "track": "Erase Replace", "len": "4:13" }, { "number": "04", "track": "Long Road To Ruin", "len": "3:45" }, { "number": "05", "track": "Come Alive", "len": "5:11" }, { "number": "06", "track": "Stranger Things Have Happened", "len": "5:21" }, { "number": "07", "track": "Cheer Up Boys, Your Make-up Is Running", "len": "3:41" }, { "number": "08", "track": "Summer's End", "len": "4:38" }, { "number": "09", "track": "The Ballad of the Beaconsfield Miners", "len": "2:32" }, { "number": "10", "track": "Statues", "len": "3:48" }, { "number": "11", "track": "But Honestly", "len": "4:36" }, { "number": "12", "track": "Home", "len": "4:53" } ],
"volume": "99",
"isPlaying": "1",
"currentTrack": "4294967295",
"trackpos": "0",
"tracklen": "0",
"helper1": "",
"helper2": "",
"helper3": "",
"albumArt": "/nocoverinfo.jpg"
}


The PLAYLIST_JS, VOLUME and IS_PLAYING macros are there, but the others are either empty or -- in the case of PLAYLIST_ITEM_PLAYING (currentTrack) -- just wacky.  The album in the example does have available cover art, so that macro isn't working either.

I've been working around it by running the request function with no command on an interval timer, but that's not very efficient.  Any idea what might be causing this?


Also, for anyone interested, here's a screenshot of my playlist, just like the iPod UI:
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-11 04:11:51
On a side note, it seems that the macros are only updated when no command is sent in the HTTP request, in other words to retrieve the playlist.  If a command is sent, such as to play or pause, the macro data is incomplete.

you should re-request data a few moments after playback has been started. the thing is that playback starts immediately after request, but the information about playing track won't available in the same command request session.
I don't know any workaround or what am I doing wrong, so I suggest the approach similar to the one used in the default template:

if ([HELPER1] == '' && ([IS_PLAYING] || [IS_PAUSED])) // if playing but track info is not loaded yet, reload page
   setTimeout('pc()',500);
Title: foo_httpcontrol
Post by: fusen on 2008-08-11 22:06:05
The JSON playlist works great, thanks!

On a side note, it seems that the macros are only updated when no command is sent in the HTTP request, in other words to retrieve the playlist.  If a command is sent, such as to play or pause, the macro data is incomplete.

Here's an example:
Code: [Select]
{

"playlist": [ { "number": "01", "track": "The Pretender", "len": "4:29" }, { "number": "02", "track": "Let It Die", "len": "4:05" }, { "number": "03", "track": "Erase Replace", "len": "4:13" }, { "number": "04", "track": "Long Road To Ruin", "len": "3:45" }, { "number": "05", "track": "Come Alive", "len": "5:11" }, { "number": "06", "track": "Stranger Things Have Happened", "len": "5:21" }, { "number": "07", "track": "Cheer Up Boys, Your Make-up Is Running", "len": "3:41" }, { "number": "08", "track": "Summer's End", "len": "4:38" }, { "number": "09", "track": "The Ballad of the Beaconsfield Miners", "len": "2:32" }, { "number": "10", "track": "Statues", "len": "3:48" }, { "number": "11", "track": "But Honestly", "len": "4:36" }, { "number": "12", "track": "Home", "len": "4:53" } ],
"volume": "99",
"isPlaying": "1",
"currentTrack": "4294967295",
"trackpos": "0",
"tracklen": "0",
"helper1": "",
"helper2": "",
"helper3": "",
"albumArt": "/nocoverinfo.jpg"
}


The PLAYLIST_JS, VOLUME and IS_PLAYING macros are there, but the others are either empty or -- in the case of PLAYLIST_ITEM_PLAYING (currentTrack) -- just wacky.  The album in the example does have available cover art, so that macro isn't working either.

I've been working around it by running the request function with no command on an interval timer, but that's not very efficient.  Any idea what might be causing this?


Also, for anyone interested, here's a screenshot of my playlist, just like the iPod UI:


will you be making this available?
Title: foo_httpcontrol
Post by: Auric on 2008-08-11 22:28:04
will you be making this available?


Yes, when it's done, and assuming Apple won't jump down my throat about copyright issues.  Pandora uses almost the exact same UI though, so I don't think it'll be a problem.
Title: foo_httpcontrol
Post by: Chairman85 on 2008-08-13 04:02:53

will you be making this available?


Yes, when it's done, and assuming Apple won't jump down my throat about copyright issues.  Pandora uses almost the exact same UI though, so I don't think it'll be a problem.

Awesome.  Looks perfect.
Title: foo_httpcontrol
Post by: Auric on 2008-08-22 22:56:09
Any chance we could get the browser macro formatted with JSON like the playlist?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-23 05:30:16
yes, it is doable, but only if you or anyone else will actually use this one.
Title: foo_httpcontrol
Post by: Auric on 2008-08-23 16:12:36
yes, it is doable, but only if you or anyone else will actually use this one.


I can't speak for anyone else, but I certainly would, just as I'm using the JSON playlist now.  I don't want to release my template without browser functionality, which is why I haven't posted it yet.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-24 19:51:52
here you go
Code: [Select]
    v0.79 24 Aug
        add: [PATH_JS] - javascript array with current path of built-in
             browser, available in foo_httpcontrol_browser_tpl.html only.
             sample value:
             [ { "cmd": "/?cmd=Browse&amp;param1=%20", "path": "Root:\" },
               { "cmd": "/?cmd=Browse&amp;param1=D%3A\", "path": "D:\" },
               { "cmd": "/?cmd=Browse&amp;param1=D%3A%5CMUSIC\", "path": "MUSIC\" } ]
        add: [PATH_PARENT] - urlencoded uppper level path of current built-in
             browser path. available in foo_httpcontrol_browser_tpl.html only.
        add: [BROWSER_JS] - javascript array of browser files. sample array
             element:
             [ { "p": "directory/file name",
                "pu": "urlencoded full directory/file path",
                "fs": "file size",
                "cm": "file type",
                "ft": "file time/date" } ]
        fix: disappearing network in browser with 'hide non-playables' option;
Title: foo_httpcontrol
Post by: Auric on 2008-08-24 21:14:32
One small bug:  The component automatically adds a trailing slash to the default path set in preferences.  The JavaScript eval function interprets this as you wanting to ignore the closing quote of the "p" element, causing it to error out.  Of course, since we have url-encoded path in "pu", "p" may not even be necessary.  It's easy to strip the slashes out though, so I'll do that for now.

Thanks for the update.

edit: also, it seems the commas are missing between rows in the BROWSER_JS array.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-08-25 04:22:08
whops, sorry! completely missed the necessity to escape slashes. the issue (along with missing commas) is fixed for newly added macros, and the current version is updated without increasing version number.
Title: foo_httpcontrol
Post by: Chairman85 on 2008-08-29 22:58:04
One small bug:  The component automatically adds a trailing slash to the default path set in preferences.  The JavaScript eval function interprets this as you wanting to ignore the closing quote of the "p" element, causing it to error out.  Of course, since we have url-encoded path in "pu", "p" may not even be necessary.  It's easy to strip the slashes out though, so I'll do that for now.

Thanks for the update.

edit: also, it seems the commas are missing between rows in the BROWSER_JS array.

Any update, Auric?
Title: foo_httpcontrol
Post by: Chairman85 on 2008-08-31 21:31:12
Any chance for support of embedded album art?
Title: foo_httpcontrol
Post by: waltereegho on 2008-08-31 22:29:36
I absolutely love this. Thanks a lot
Title: foo_httpcontrol
Post by: Auric on 2008-09-01 04:45:40
Any update, Auric?


The browser is pretty much done, but I need to implement enqueue support for directories, and I'd like to create subheaders for each album in a playlist.  I'll see if I can't release something this week.
Title: foo_httpcontrol
Post by: RogerM on 2008-09-05 18:58:23
Awesome work! Any updates?
Title: foo_httpcontrol
Post by: Chairman85 on 2008-09-09 05:16:09
made my webui with firefox as well (IE is still not supported and will not be):

http://www.2shared.com/file/3717567/6947f4...ntrol_data.html (http://www.2shared.com/file/3717567/6947f4c5/foo_httpcontrol_data.html)
http://www.uploading.com/files/9XPZ4C6M/fo...l_data.zip.html (http://www.uploading.com/files/9XPZ4C6M/foo_httpcontrol_data.zip.html)


Here's my modified version. Designed for iPhone, very barebones, no browser. http://www.2shared.com/file/3899339/d6fcdf...ntrol_data.html (http://www.2shared.com/file/3899339/d6fcdf12/foo_httpcontrol_data.html)
Title: foo_httpcontrol
Post by: Auric on 2008-09-09 16:36:21
Sorry for the lack of a release; I ran into a memory leak the other day and wanted to make sure it wasn't something in my Javascript.  There's still a lot of features I could put in, but I'll try to get something out soon.
Title: foo_httpcontrol
Post by: Chairman85 on 2008-09-09 19:03:27
Sorry for the lack of a release; I ran into a memory leak the other day and wanted to make sure it wasn't something in my Javascript.  There's still a lot of features I could put in, but I'll try to get something out soon.

Any update is good news, Auric.  I'd love to help you out if you'd like.
Title: foo_httpcontrol
Post by: Auric on 2008-09-13 04:08:38
Ok, here you go:



Download iPhone template release 1 (http://www.sendspace.com/file/le3g8p)

A few notes:

- Like Larskl's template, this one requires that you access it via index.html
- The "playlist row" field in the HTTP Control preferences must be set to the following, or some variation thereof:
Code: [Select]
{ "artist": "$ifgreater($len(%artist%),29,$cut(%artist%,29)'...',%artist%)", "album": "$ifgreater($len(%album%),29,$cut(%album%,29)'...',%album%)", "number": "%tracknumber%", "track": "$ifgreater($len($replace(%title%,",)),28,$cut($replace(%title%,",),28)'...',$replace(%title%,",))", "len": "%length%" }
- The shuffle button does not work like the iPhone shuffle, on account of the foobar shuffle not working like the iPhone shuffle.  Rather than shuffling the playlist, it picks a single track at random and continues forward from there.
- This template automatically refreshes every 5 seconds, regardless of whether or not you have the auto-refresh option checked in the HTTP Control preferences.  This is largely because the the AUTO_REFRESH macro is passed with quotes, and I didn't feel like stripping them out for an option that you should really leave turned on.  If there's a demand for it, I'll fix it.
- Many features are missing, on account of it being really hard to mimic Apple's UI with only a single form of user input (left-click).  I have a few ideas in the works, but feel free to make suggestions.
Title: foo_httpcontrol
Post by: Chairman85 on 2008-09-13 04:32:51
Thanks, Auric.  Though it chokes on large playlists (3143 items).
Title: foo_httpcontrol
Post by: rexit2 on 2008-09-13 07:51:17
Thanks, Auric.  Though it chokes on large playlists (3143 items).


There is a setting in the http control preferences that is named page entries. Set that to however many playlist entries you want listed per page. Hope that helps.

*Feature Request* I would love to have a way of keyword searching either the playlist or the directory list, this would be extremely useful for those of us with large collections. Thanks again.
Title: foo_httpcontrol
Post by: Auric on 2008-09-13 14:54:31
Thanks, Auric.  Though it chokes on large playlists (3143 items).

Yeah, I kind of expected that.  I believe it has to do with the maximum execution time allowed for Javascript on the iPhone.  Have you had better luck with other templates?

There is a setting in the http control preferences that is named page entries. Set that to however many playlist entries you want listed per page. Hope that helps.

*Feature Request* I would love to have a way of keyword searching either the playlist or the directory list, this would be extremely useful for those of us with large collections. Thanks again.

  Currently, the playlist does not support pages, as I wasn't designing this with very large playlists in mind.  I'll see if I can't work up something up, though.  Until then, I would recommend against loading playlists with more than 100 tracks.

A keyword search wouldn't be hard to implement, but like anything else it's matter of where to put it on the screen.
Title: foo_httpcontrol
Post by: Chairman85 on 2008-09-14 07:54:53

Thanks, Auric.  Though it chokes on large playlists (3143 items).

Yeah, I kind of expected that.  I believe it has to do with the maximum execution time allowed for Javascript on the iPhone.  Have you had better luck with other templates?

Actually, until this point I had been using a very simple layout with no playlist controls, just Play/pause, next, and previous.
Title: foo_httpcontrol
Post by: Auric on 2008-09-14 15:01:21
I'm working on breaking the playlist up into chunks and loading them as you scroll.  The iPhone has no problem loading the whole playlist into memory, it just can't display it all at the same time.
Title: foo_httpcontrol
Post by: Steeleye on 2008-10-02 22:51:42
Thanks for the great plugin and sorry for nitpicking, but "Browse path" restriction is easily avoided appending "..\" to the path.
Of course it's not a problem as long as you have the password set.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-03 10:00:07
right, thanks for pointing that out. I'll add additional checks for this case.
Title: foo_httpcontrol
Post by: Chairman85 on 2008-10-03 19:53:00
I'm working on breaking the playlist up into chunks and loading them as you scroll.  The iPhone has no problem loading the whole playlist into memory, it just can't display it all at the same time.

FYI, Firmware 2.1 has added the ability to make a web app run in full screen.

Code: [Select]
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta names="apple-mobile-web-app-status-bar-style" content="black-translucent" />
Title: foo_httpcontrol
Post by: Auric on 2008-10-06 03:59:42
FYI, Firmware 2.1 has added the ability to make a web app run in full screen.

Code: [Select]
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta names="apple-mobile-web-app-status-bar-style" content="black-translucent" />


Good to know; I'll add that in next time I get a chance to work on it.
Title: foo_httpcontrol
Post by: 57hsq on 2008-10-06 19:03:51
this is great. perfect for my needs. huge thanks to all
The only missing feature for me is some form of search facility. In Foobar proper I use Album List set to 'by folder structure' to search my huge classical collection. Is it possible to emulate something like this function remotely?
Title: foo_httpcontrol
Post by: carmenm on 2008-10-10 10:39:13
Auric:  Thanks a lot for your work. I use your template but not on an iphone. I use it on my mac with fluid and its amazingly beautiful!!!
Yet i have one problem and 2 feature requests
My problem is that when using your template, the playlist page is not scrollable. I tried with fusion and firefox and it s not scrollable. Maybe it s something you want on iphone but do you know how to change that?

No my first feature request is to have a button on the playlist view to clear it. That can be useful when you want to change the music your listening to: you clear, you browse and you enqueue.
The second feature request is about enqueuing and i am not sure if it is doable.
When in the browser, if i am on a directory containing no mp3 files but directories which contain mp3, if i click enqueue nothing is enqueued. I suppose it is because the function for enqueuing is not recursive. Is it doable?

Thanks for your work, it s beautiful

EDIT: When switching track, the album cover is not refreshed.
Title: foo_httpcontrol
Post by: Auric on 2008-10-14 04:23:51
My problem is that when using your template, the playlist page is not scrollable. I tried with fusion and firefox and it s not scrollable. Maybe it s something you want on iphone but do you know how to change that?

It has to do with how the iPhone handles scrolling.  To restore the scroll bar, open up the CSS file and remove the "overflow: hidden" attribute from the BODY element.

Quote
No my first feature request is to have a button on the playlist view to clear it. That can be useful when you want to change the music your listening to: you clear, you browse and you enqueue.

I'll see what I can do.

Quote
The second feature request is about enqueuing and i am not sure if it is doable.
When in the browser, if i am on a directory containing no mp3 files but directories which contain mp3, if i click enqueue nothing is enqueued. I suppose it is because the function for enqueuing is not recursive. Is it doable?

That's not something I can do on the template end; the plugin would have to support it.

Quote
EDIT: When switching track, the album cover is not refreshed.

If you manually switch tracks, it should update.  If it switches automatically after the previous track ends, there may be a pause, as the data is only requested every 5 seconds.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-14 16:14:55
Quote
The second feature request is about enqueuing and i am not sure if it is doable.
When in the browser, if i am on a directory containing no mp3 files but directories which contain mp3, if i click enqueue nothing is enqueued. I suppose it is because the function for enqueuing is not recursive. Is it doable?

That's not something I can do on the template end; the plugin would have to support it.
it has been possible from almost the very beginning with EnqueueDirSubdirs cmd.

Quote
EDIT: When switching track, the album cover is not refreshed.

If you manually switch tracks, it should update.  If it switches automatically after the previous track ends, there may be a pause, as the data is only requested every 5 seconds.
may I ask why you didn't go in the way suggested by stock template, where the page is being refreshed only on track changes or in case of insufficient playing track data? requesting data every five seconds might be a bit consumptive batterywise.
Title: foo_httpcontrol
Post by: aequasi on 2008-10-14 22:30:16
idk if this is supposed to allow this, but whenever i try and access the ip i supply in the program from another computter, i always get a "Forbidden" page
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-15 03:56:35
idk if this is supposed to allow this, but whenever i try and access the ip i supply in the program from another computter, i always get a "Forbidden" page
did you set any value to "Remote IP" field in plugin configuration page?
Title: foo_httpcontrol
Post by: aequasi on 2008-10-15 07:13:45

idk if this is supposed to allow this, but whenever i try and access the ip i supply in the program from another computter, i always get a "Forbidden" page
did you set any value to "Remote IP" field in plugin configuration page?

yup, as the outbound ip of the computer
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-15 09:13:04


idk if this is supposed to allow this, but whenever i try and access the ip i supply in the program from another computter, i always get a "Forbidden" page
did you set any value to "Remote IP" field in plugin configuration page?

yup, as the outbound ip of the computer

check "Enable logging" in preferences, try to access remotely, and then post screenshot of plugin preferences window and contents of foobar2000 console.
Title: foo_httpcontrol
Post by: aequasi on 2008-10-15 13:19:32
http://quasi.schererzoo.com/screenshot.jpg (http://quasi.schererzoo.com/screenshot.jpg)

and yes that is with me trying to remote access, it doesnt show up at all, which leads me to believe its something wrong with vista
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-15 13:55:28
http://quasi.schererzoo.com/screenshot.jpg (http://quasi.schererzoo.com/screenshot.jpg)
and yes that is with me trying to remote access, it doesnt show up at all, which leads me to believe its something wrong with vista
I think you misunderstood something. your "bind to interface" field equals to "remote ip". why is that? you said you are trying to connect to machine running foobar2000 remotely.
Title: foo_httpcontrol
Post by: aequasi on 2008-10-15 17:39:20

http://quasi.schererzoo.com/screenshot.jpg (http://quasi.schererzoo.com/screenshot.jpg)
and yes that is with me trying to remote access, it doesnt show up at all, which leads me to believe its something wrong with vista
I think you misunderstood something. your "bind to interface" field equals to "remote ip". why is that? you said you are trying to connect to machine running foobar2000 remotely.

yes i am, so should bind to be local host? and if so, what should remote be?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-15 17:47:04
once again, remote ip defines the one and only ip you're allowing connection _from_.
Title: foo_httpcontrol
Post by: aequasi on 2008-10-15 20:14:18
once again, remote ip defines the one and only ip you're allowing connection _from_.

http://quasi.schererzoo.com/screenshot.jpg (http://quasi.schererzoo.com/screenshot.jpg)

so technically, if im trying to connect remotely from a computer that has the IP 192.168.1.4, this should work?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-16 04:14:04

once again, remote ip defines the one and only ip you're allowing connection _from_.

http://quasi.schererzoo.com/screenshot.jpg (http://quasi.schererzoo.com/screenshot.jpg)

so technically, if im trying to connect remotely from a computer that has the IP 192.168.1.4, this should work?

no it wont. your http listener service is bound to localhost ip which is unreachable from the remote machine unless you set up the routing
change it to whatever ip has the network card connected with the remote machine (192.168.1.5 iirc judging by your previous screenshot)

ps I hope you are not trolling
Title: foo_httpcontrol
Post by: Auric on 2008-10-16 05:31:43
it has been possible from almost the very beginning with EnqueueDirSubdirs cmd.


Ahh, I stand corrected.  I posted in haste without checking the available commands.  Now to find room for another button on the template...

Quote
may I ask why you didn't go in the way suggested by stock template, where the page is being refreshed only on track changes or in case of insufficient playing track data? requesting data every five seconds might be a bit consumptive batterywise.


I would need to read the track length and set up a timer to request the data at the presumed end of the track.  Certainly doable; I just haven't had time yet.
Title: foo_httpcontrol
Post by: carmenm on 2008-10-16 13:43:09

My problem is that when using your template, the playlist page is not scrollable. I tried with fusion and firefox and it s not scrollable. Maybe it s something you want on iphone but do you know how to change that?

It has to do with how the iPhone handles scrolling.  To restore the scroll bar, open up the CSS file and remove the "overflow: hidden" attribute from the BODY element.

Thanks but i would like my page to be scrollable with mouse wheel but still hide the scrollbar. Is it possible?
Title: foo_httpcontrol
Post by: aequasi on 2008-10-16 18:42:33


once again, remote ip defines the one and only ip you're allowing connection _from_.

http://quasi.schererzoo.com/screenshot.jpg (http://quasi.schererzoo.com/screenshot.jpg)

so technically, if im trying to connect remotely from a computer that has the IP 192.168.1.4, this should work?

no it wont. your http listener service is bound to localhost ip which is unreachable from the remote machine unless you set up the routing
change it to whatever ip has the network card connected with the remote machine (192.168.1.5 iirc judging by your previous screenshot)

ps I hope you are not trolling

ok i got it, thanks, and no im not trolling lol
Title: foo_httpcontrol
Post by: Auric on 2008-10-18 22:19:14
Thanks but i would like my page to be scrollable with mouse wheel but still hide the scrollbar. Is it possible?


For all intents and purposes, no.
Title: foo_httpcontrol
Post by: carmenm on 2008-10-19 16:34:39

Thanks but i would like my page to be scrollable with mouse wheel but still hide the scrollbar. Is it possible?


For all intents and purposes, no.

Good to know thank you
Title: foo_httpcontrol
Post by: odyssey on 2008-10-22 10:34:45
When any tag is updated, foobar2000 freezes for up to 15 seconds (at least when a large playlist is active, >30000 entrys). 
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-10-22 17:50:20
Patient: Doctor, it hurts when I do this...
Doctor: Then stop doing it...
Title: foo_httpcontrol
Post by: baltazar on 2008-11-26 08:11:35
If there an option to make http control "read-only"? I want other users in LAN to be able to see what is playing now but I don't want to let them change anything. Is it possible?
Thanks
Title: foo_httpcontrol
Post by: sondale on 2008-11-26 10:39:21
Oblikoamorale,

I have a couple of questions, I think I already know the answer to the first.

So can your plugin be loaded on a Nokia 770? Assuming the answer is no, then could you recommend any device (or style of device) on which it could be loaded? All that I am looking for is to create a remote whose primary purpose is to control Foobar on my pc - nothing more. A screen the size of the Nokia is sufficient and I would not be wanting to use said device as a phone / pda etc.

A newbie.
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-11-26 16:17:28
If there an option to make http control "read-only"? I want other users in LAN to be able to see what is playing now but I don't want to let them change anything. Is it possible?
nope, there is no such option. but you can somewhat simulate one by cutting out all playback control knobs from the template.

So can your plugin be loaded on a Nokia 770? Assuming the answer is no, then could you recommend any device (or style of device) on which it could be loaded? All that I am looking for is to create a remote whose primary purpose is to control Foobar on my pc - nothing more. A screen the size of the Nokia is sufficient and I would not be wanting to use said device as a phone / pda etc.
and the answer is: I simply don't know. there is a possibility that control page would work fine, but there also is a non-zero chance that nokian browser considers template javascript too hard to swallow. in other words, you wouldn't know until you try. but even if your attempt fails, you can always get rid of all troublesome javascript moments by fiddling with the template.
if you want template to be adopted for your device - send me one and I'll do the dirty work
Title: foo_httpcontrol
Post by: sondale on 2008-11-26 21:48:11
That is a most generous offer  - I will first try it on the Nokia - just to see - there is nothing to lose!

I am going to have to find out how to quote - so first it is off to the help area!!
Title: foo_httpcontrol
Post by: sondale on 2008-12-03 15:16:06
Well I tried - but the Nokia does not even see the file never mind use it!! So I will have to try another tack.

Thanks again.

Alan
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-12-03 15:41:40
Well I tried - but the Nokia does not even see the file never mind use it!! So I will have to try another tack.

I'm a bit curious: what exacty did you try?
Title: foo_httpcontrol
Post by: 57hsq on 2008-12-04 09:47:48
Are there any clever people here who use the G1 phone? This plugin works perfectly for me - but I wonder if someone would like to design a really beautiful interface that uses the right screen size etc..

The other thing that I'm desperate for is some form of keyword search - I have so much music over so many hard drives and searching works so well on foobar itself..

any hope?

cheers


ooops,
i meant to post this in the
foo_httpcontrol, control foobar via http
thread. Can someone move it for me? thanks!



Are there any clever people here who use the G1 phone? This plugin works perfectly for me - but I wonder if someone would like to design a really beautiful interface that uses the right screen size etc..

The other thing that I'm desperate for is some form of keyword search - I have so much music over so many hard drives and searching works so well on foobar itself..

any hope?

cheers
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-12-17 05:38:12
The other thing that I'm desperate for is some form of keyword search - I have so much music over so many hard drives and searching works so well on foobar itself..

I'd stuck by myself upon the need of simple search yesterday, so I admit, it might be useful.
Code: [Select]
    v0.81 17 Feb
        add: CreateSimpleAutoplaylist command, turning currently active
             playlist into autoplaylist with query pattern specified in param1
             value. Calling it with empty param1 value removes autoplaylist.
Title: foo_httpcontrol
Post by: putzeudel on 2008-12-19 21:15:14
In version 0.80 and 0.81 autorefresh stopped working for me (FF 2.0.0.18). It is checked in the preferences and on the web page, JS is 100% enabled. Any tips? What browser are you coding this for (version, patchlevel)?
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-12-20 06:20:00
works fine in win32 builds of Firefox 2.0.0.8 and 2.0.0.20, Opera 9.60 and 0.63.
moreover, I didn't change anything related to autorefresh feature within the template or plugin since implementing.
Title: foo_httpcontrol
Post by: putzeudel on 2008-12-20 22:18:45
works fine in win32 builds of Firefox 2.0.0.8 and 2.0.0.20, Opera 9.60 and 0.63.
moreover, I didn't change anything related to autorefresh feature within the template or plugin since implementing.


What can cause the problem? Some old config that did not get whiped? Clicking "R" for manual refresh works fine, the html code the client gets should do the refresh (i am no html or js expert though).
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-12-21 06:14:26
What can cause the problem? Some old config that did not get whiped? Clicking "R" for manual refresh works fine, the html code the client gets should do the refresh (i am no html or js expert though).

I have no idea, really. try deleting plugin dll, start foobar2000, say No when it asks whether you want to keep plugin settings, extract whole plugin contents from archive and restart foobar2000. but these measures are an overkill.
by the way, is it possible that you do have some weird firefox addon which gets in the way? try running the clean firefox install.
Title: foo_httpcontrol
Post by: sti3 on 2008-12-22 21:45:59
I am using this in build 7349 of Chromium and it seems to work wonderfully.  This plugin rocks!  I also just tried it using the browser on my Android G1 and that worked great as well!
Title: foo_httpcontrol
Post by: pIv on 2008-12-23 16:31:05
with last version of foo_httpcontrol.dll (0.81) beta 2 crash on installation.
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 046A903Fh
Access violation, operation: read, address: 00000000h
Call path:
entry=>initquit::on_init=>on_items_reordered
Code bytes (046A903Fh):
046A8FFFh:  E8 CC 88 00 00 59 59 8B 4D F4 8B C6 5E 64 89 0D
046A900Fh:  00 00 00 00 C9 C2 04 00 32 C0 C2 04 00 80 7C 24
046A901Fh:  04 00 74 0C 8B 44 24 0C 8B 4C 24 08 03 C1 EB 04
046A902Fh:  8B 44 24 08 C2 0C 00 8B 44 24 04 8B 49 04 33 D2
046A903Fh:  39 04 81 0F 95 C2 8A C2 C2 04 00 8B 44 24 04 3B
046A904Fh:  41 04 72 09 3B 41 08 73 04 B0 01 EB 02 32 C0 80
046A905Fh:  79 0C 00 75 05 84 C0 0F 94 C0 C2 04 00 55 8B EC
046A906Fh:  51 8B 45 10 53 8B 5D 0C 89 4D FC 85 C0 74 28 56
Stack (0012F67Ch):
0012F65Ch:  00000000 0187F950 7C90E900 7C910440
0012F66Ch:  7C97D600 7C914029 7C91401C 00000208
0012F67Ch:  046A9098 00000000 00506DB0 0000000E
0012F68Ch:  00000000 0012F9C4 0012F9B4 046ADD1C
0012F69Ch:  00000001 00000000 0000000E 004E5820
0012F6ACh:  100025A3 0000000F 0012F8E4 00506DB0
0012F6BCh:  0000000F 046D1204 04709258 0000000F
0012F6CCh:  00000010 00000000 00000000 046D8DC4
0012F6DCh:  046D8EC0 046D11A4 00000000 00000000
0012F6ECh:  00000000 00000000 00000000 09696958
0012F6FCh:  0012F92C 7C910EE4 7C911066 7C9101BB
0012F70Ch:  7C9100A4 00000400 00000000 04C00440
0012F71Ch:  09696958 0012F950 7C910EE4 7C911066
0012F72Ch:  7C9101BB 7C9100A4 00000400 00000000
0012F73Ch:  003D06E8 003D0000 096966B8 0012F738
0012F74Ch:  0012F780 046D1C08 003D0000 7C910202
0012F75Ch:  00000002 003D06E8 003D0000 096966B8
0012F76Ch:  0012F75C 0012F7A4 00000000 7C910202
0012F77Ch:  00000006 095E0000 003D0000 09695B20
0012F78Ch:  0012F77C 7C9100A4 0012F9C0 7C90E900
Registers:
EAX: 00000000, EBX: 00000000, ECX: 00000000, EDX: 00000000
ESI: 0000000E, EDI: 00000001, EBP: 0012F694, ESP: 0012F67C
Crash location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h

Loaded modules:
foobar2000                      loaded at 00400000h - 0053D000h
ntdll                            loaded at 7C900000h - 7C9B0000h
kernel32                        loaded at 7C800000h - 7C8F8000h
COMCTL32                        loaded at 773C0000h - 774C3000h
msvcrt                          loaded at 77C00000h - 77C58000h
ADVAPI32                        loaded at 77DC0000h - 77E6C000h
RPCRT4                          loaded at 77E70000h - 77F02000h
Secur32                          loaded at 77FE0000h - 77FF1000h
GDI32                            loaded at 77F10000h - 77F59000h
USER32                          loaded at 7E360000h - 7E3F1000h
SHLWAPI                          loaded at 77F60000h - 77FD6000h
SHELL32                          loaded at 7C9C0000h - 7D1DB000h
ole32                            loaded at 774D0000h - 7760D000h
shared                          loaded at 10000000h - 1002A000h
UxTheme                          loaded at 5B260000h - 5B298000h
COMDLG32                        loaded at 76380000h - 763C9000h
IMM32                            loaded at 76360000h - 7637D000h
MSCTF                            loaded at 746E0000h - 7472C000h
UnlockerHook                    loaded at 003F0000h - 003F4000h
msctfime                        loaded at 75310000h - 7533E000h
foo_channel_mixer                loaded at 00AD0000h - 00B0A000h
foo_uie_explorer                loaded at 00B20000h - 00B6E000h
CLBCATQ                          loaded at 76FC0000h - 7703F000h
COMRes                          loaded at 77040000h - 77107000h
OLEAUT32                        loaded at 77110000h - 7719B000h
VERSION                          loaded at 77BF0000h - 77BF8000h
foo_utils_playback              loaded at 00BA0000h - 00BB9000h
foo_dsp_src9                    loaded at 00BE0000h - 00C1B000h
foo_skip                        loaded at 00C30000h - 00C4D000h
foo_rgscan                      loaded at 00C70000h - 00CCB000h
foo_uie_vis_peakmeter_spectrum  loaded at 00CF0000h - 00D2F000h
gdiplus                          loaded at 4EBE0000h - 4ED86000h
foo_dbsearch                    loaded at 105A0000h - 10610000h
foo_input_reverse                loaded at 00D80000h - 00DA7000h
foo_mouse_gesture                loaded at 00DD0000h - 00DF9000h
foo_input_wma                    loaded at 00E20000h - 00E4E000h
WMVCore                          loaded at 15110000h - 1536C000h
WMASF                            loaded at 11C70000h - 11CAA000h
foo_dsp_std                      loaded at 00E70000h - 00EB8000h
foo_verifier                    loaded at 00EE0000h - 00F15000h
foo_random                      loaded at 11500000h - 1153D000h
foo_facets                      loaded at 00F60000h - 00FE1000h
MSIMG32                          loaded at 76350000h - 76355000h
foo_cdda                        loaded at 01010000h - 01051000h
foo_chacon                      loaded at 01080000h - 010A0000h
foo_input_mkx                    loaded at 010C0000h - 010F0000h
foo_preview                      loaded at 113E0000h - 11401000h
foo_uie_graphical_browser        loaded at 01110000h - 011A4000h
foo_unpack                      loaded at 011C0000h - 011ED000h
foo_freedb2_fix                  loaded at 109A0000h - 109B5000h
foo_masstag_addons              loaded at 01230000h - 01251000h
foo_masstag                      loaded at 01280000h - 012C0000h
foo_lock                        loaded at 012E0000h - 012F8000h
foo_uie_elplaylist              loaded at 01320000h - 01389000h
foo_chronflow                    loaded at 013B0000h - 01411000h
WINMM                            loaded at 76B20000h - 76B4E000h
OPENGL32                        loaded at 5F220000h - 5F2EC000h
GLU32                            loaded at 5FF90000h - 5FFB1000h
DDRAW                            loaded at 73720000h - 7376B000h
DCIMAN32                        loaded at 73B80000h - 73B86000h
foo_rg_trn                      loaded at 015C0000h - 015DB000h
foo_albumlist                    loaded at 01600000h - 0166C000h
foo_converter                    loaded at 01690000h - 016FC000h
foo_uie_albumlist                loaded at 01720000h - 0175D000h
foo_ui_std                      loaded at 01780000h - 01855000h
foo_lock_ex                      loaded at 10DE0000h - 10DF9000h
foo_dockable_panels              loaded at 106B0000h - 106E3000h
foo_menu_addons                  loaded at 018B0000h - 018F5000h
foo_uie_textbox                  loaded at 01920000h - 0194E000h
foo_midi                        loaded at 01960000h - 01A0C000h
foo_scheduler                    loaded at 11610000h - 1167F000h
POWRPROF                        loaded at 74A90000h - 74A98000h
foo_whatsnew                    loaded at 01A50000h - 01A90000h
foo_sic                          loaded at 116D0000h - 11729000h
WS2_32                          loaded at 71A90000h - 71AA7000h
WS2HELP                          loaded at 71A80000h - 71A88000h
foo_runcmd                      loaded at 01C10000h - 01C44000h
foo_input_monkey                loaded at 01C70000h - 01CB5000h
foo_run                          loaded at 01CE0000h - 01D0E000h
foo_textdisplay                  loaded at 01D30000h - 01D6F000h
foo_uie_queuemanager            loaded at 11D90000h - 11DC9000h
mscoree                          loaded at 79000000h - 79046000h
MSVCR80                          loaded at 78130000h - 781CB000h
msvcm80                          loaded at 7C4C0000h - 7C53D000h
mscorwks                        loaded at 79E70000h - 7A400000h
mscorlib.ni                      loaded at 790C0000h - 79BB7000h
mscorjit                        loaded at 79060000h - 790BB000h
rsaenh                          loaded at 68000000h - 68036000h
System.ni                        loaded at 7A440000h - 7ABC5000h
System.Drawing.ni                loaded at 7ADE0000h - 7AF68000h
foo_out_ks                      loaded at 11160000h - 1118A000h
SETUPAPI                        loaded at 77910000h - 77A04000h
foo_version                      loaded at 12160000h - 12186000h
dbghelp                          loaded at 59C60000h - 59D01000h
foo_sendtodevice                loaded at 11680000h - 116AF000h
foo_input_tta                    loaded at 04650000h - 0467B000h
foo_httpcontrol                  loaded at 046A0000h - 046E1000h
WSOCK32                          loaded at 71AB0000h - 71ABA000h
MPR                              loaded at 71B00000h - 71B12000h
foo_texttools                    loaded at 04710000h - 04744000h
foo_bubble_coverflow            loaded at 04770000h - 047F9000h
foo_freedb2                      loaded at 04820000h - 04862000h
foo_input_std                    loaded at 04890000h - 049CF000h
foo_convolve                    loaded at 10440000h - 10491000h
foo_infobox                      loaded at 10AC0000h - 10B00000h
foo_uie_tabs                    loaded at 04A30000h - 04A58000h
foo_playlist_tree_mod            loaded at 04A80000h - 04AE7000h
libmzsch360_000                  loaded at 04B00000h - 04CD0000h
libmzgc360_000                  loaded at 04CE0000h - 04D84000h
foo_trackpos                    loaded at 11800000h - 1181F000h
foo_uie_console                  loaded at 04DF0000h - 04E0C000h
foo_lnk                          loaded at 10DA0000h - 10DB9000h
foo_abx                          loaded at 04E50000h - 04E81000h
foo_uie_albumart                loaded at 04EB0000h - 04EED000h
foo_uie_playlists_dropdown      loaded at 04F10000h - 04F4C000h
foo_bitcompare                  loaded at 05070000h - 05098000h
foo_utils                        loaded at 050C0000h - 05104000h
foo_uie_peakmeter                loaded at 05130000h - 0515D000h
foo_uie_dragpanel                loaded at 05180000h - 051AD000h
foo_uie_trackinfo                loaded at 051C0000h - 051E5000h
foo_uie_vis_channel_spectrum    loaded at 05210000h - 0524D000h
foo_history                      loaded at 10AA0000h - 10ABC000h
foo_removeplayed                loaded at 05290000h - 052A8000h
foo_ui_columns                  loaded at 052D0000h - 0540B000h
foo_uie_quicksearch              loaded at 05430000h - 05476000h
foo_playcount                    loaded at 054A0000h - 054CA000h
foo_pqview                      loaded at 054F0000h - 0551D000h
foo_uie_panel_splitter          loaded at 05540000h - 0558F000h
foo_quicktag                    loaded at 055B0000h - 055E4000h
foo_fileops                      loaded at 05610000h - 05656000h
foo_ac3                          loaded at 05680000h - 056AF000h
foo_write_http                  loaded at 122C0000h - 122FB000h
foo_cuesheet_creator            loaded at 056F0000h - 0571C000h
foo_uie_tagger_mod              loaded at 05740000h - 0577F000h
foo_uie_typefind                loaded at 057A0000h - 057D0000h
foo_discogs                      loaded at 057F0000h - 05883000h
foo_playlist_manager            loaded at 11240000h - 11284000h
foo_new_file_stamper_mod        loaded at 058C0000h - 058E9000h
foo_infospect                    loaded at 05910000h - 05947000h
foo_explorer                    loaded at 10940000h - 10958000h
foo_uie_bookmarks                loaded at 05990000h - 059E5000h
foo_filedate                    loaded at 05A00000h - 05A22000h
foo_vis_screensaver              loaded at 05A50000h - 05A7B000h
xpsp2res                        loaded at 05CA0000h - 05F6D000h
mscms                            loaded at 73AF0000h - 73B05000h
WINSPOOL                        loaded at 72FC0000h - 72FE6000h
icm32                            loaded at 58BE0000h - 58C21000h
nvoglnt                          loaded at 69500000h - 69D88000h
appHelp                          loaded at 77B30000h - 77B52000h
cscui                            loaded at 77A10000h - 77A65000h
CSCDLL                          loaded at 765D0000h - 765ED000h
drwebsp                          loaded at 09080000h - 090A0000h
imagehlp                        loaded at 76C80000h - 76CA8000h

Stack dump analysis:
Address: 046A9098h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 00506DB0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 046ADD1Ch, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 004E5820h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 100025A3h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000000h)
Address: 00506DB0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 046D1204h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 046D8DC4h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 046D8EC0h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 046D11A4h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 7C910EE4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000985h)
Address: 7C911066h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9101BBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9100A4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 04C00440h, location: "libmzsch360_000", loaded at 04B00000h - 04CD0000h
Symbol: "scheme_make_bignum_from_unsigned" (+000FDD25h)
Address: 7C910EE4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000985h)
Address: 7C911066h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9101BBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9100A4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 046D1C08h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 7C910202h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C910202h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C9100A4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 7C90E900h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000113h)
Address: 7C910202h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C91017Bh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+000000D7h)
Address: 7C9101BBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9100A4h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 7C91017Bh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+000000D7h)
Address: 7C919D8Ah, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlReAllocateHeap" (+0000020Ah)
Address: 7C910098h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C910021h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000114h)
Address: 7C910A16h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C910A16h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C910961h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "wcsncpy" (+00000402h)
Address: 7C910098h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C910098h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+0000018Bh)
Address: 7C910021h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000114h)
Address: 7C91003Dh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 00404215h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 7C90E900h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000113h)
Address: 0101003Dh, location: "foo_cdda", loaded at 01010000h - 01051000h
Address: 00FD4F90h, location: "foo_facets", loaded at 00F60000h - 00FE1000h
Address: 00FD4FA0h, location: "foo_facets", loaded at 00F60000h - 00FE1000h
Address: 00F8B2B8h, location: "foo_facets", loaded at 00F60000h - 00FE1000h
Address: 00FC00B4h, location: "foo_facets", loaded at 00F60000h - 00FE1000h
Address: 00F8B2FCh, location: "foo_facets", loaded at 00F60000h - 00FE1000h
Address: 100025A3h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000000h)
Address: 04AAF2F6h, location: "foo_playlist_tree_mod", loaded at 04A80000h - 04AE7000h
Address: 004E5820h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 100025A3h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000000h)
Address: 046C91F8h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 004E5820h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 046A454Ah, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 046D8DB0h, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 046D119Ch, location: "foo_httpcontrol", loaded at 046A0000h - 046E1000h
Address: 0045A212h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00509263h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C4EE0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00509262h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00463900h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C4171h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004603BBh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00506DB0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00509263h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004602CBh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004CA683h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00461647h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004135C1h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DFBB4h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DFBB4h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0041349Dh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C8381h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00413454h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004127B5h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DFBB4h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DFBB4h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DFBB4h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DFBB4h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004125EBh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C9373h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00412D6Bh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0050643Ch, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C9420h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00413A33h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00506170h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00411E48h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00506170h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00506DB0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C9FD6h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004141CFh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004147DAh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DF968h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 7C90D89Ch, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "ZwQueryPerformanceCounter" (+0000000Ch)
Address: 7C80A4CBh, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "QueryPerformanceCounter" (+00000014h)
Address: 00506170h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DF440h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004155EAh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004CA8A1h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00414401h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DBE34h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 00506DB0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00416AFEh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C36C6h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 004DFCACh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00404215h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0046B760h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00416AF1h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00416AFEh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C36C6h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0049F1B3h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0040AB52h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0040AB6Dh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004CB1A1h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00439B57h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DBDA7h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DBE34h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00506190h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00439B1Dh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004C38DCh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0043A994h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DBE50h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DBE34h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004DBE34h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 7C90E900h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "strchr" (+00000113h)
Address: 7C9101C0h, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C9101BBh, location: "ntdll", loaded at 7C900000h - 7C9B0000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004B79B3h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B2050h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B79B3h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B5E08h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 004E26ACh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004CC31Ch, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004E26ACh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 0043ACC0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B01E1h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B01DBh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004D3BA8h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004D10D0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B2050h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B01DBh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B01EFh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004D10D0h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004CC4EAh, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B1D3Ah, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B9E46h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 004B2050h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 7C817067h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "RegisterWaitForInputIdle" (+00000049h)
Address: 7C839AC0h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "ValidateLocale" (+000002B0h)
Address: 7C817070h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "RegisterWaitForInputIdle" (+00000052h)
Address: 004B1DA5h, location: "foobar2000", loaded at 00400000h - 0053D000h
Address: 7C809AE1h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "VirtualAlloc" (+00000000h)
Address: 7C801AD4h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "VirtualProtect" (+00000000h)
Address: 7C809B02h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "VirtualAllocEx" (+00000000h)
Address: 7C809B50h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "VirtualAllocEx" (+0000004Eh)
Address: 7C801A61h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "VirtualProtectEx" (+00000000h)
Address: 7C80236Bh, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "CreateProcessA" (+00000000h)
Address: 7C802336h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "CreateProcessW" (+00000000h)
Address: 7C81D536h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "CreateProcessInternalA" (+00000000h)
Address: 7C81979Ch, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "CreateProcessInternalW" (+00000000h)
Address: 7C8623ADh, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "WinExec" (+00000000h)
Address: 7C8104BCh, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "CreateRemoteThread" (+00000000h)
Address: 7C8106C7h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "CreateThread" (+00000000h)
Address: 7C863AA9h, location: "kernel32", loaded at 7C800000h - 7C8F8000h
Symbol: "SetThreadContext" (+00000000h)

Version info:
foobar2000 v0.9.6.1 beta 2
UNICODE
Windows 5.1


Additional info:
Text Tools 1.0.1  (foo_texttools)
Feature Watcher 1.0.6  (foo_whatsnew)
Peakmeter Spectrum Visualisation 0.2.0.0 beta  (foo_uie_vis_peakmeter_spectrum)
Textbox 0.0.5a  (foo_uie_textbox)
Track info panel 0.8  (foo_uie_trackinfo)
Matroska input 0.1  (foo_input_mkx)
Queue manager panel 0.2.3  (foo_uie_queuemanager)
Infospect 1.0.3  (foo_infospect)
mouse gesture host 0.4.1  (foo_mouse_gesture)
Pause on Lock 0.4  (foo_lock)
Peakmeter Panel 0.0.4.0 alpha preview  (foo_uie_peakmeter)
Dockable Panels 1.0.7b [Mar 28 2007 - 09:18:48]  (foo_dockable_panels)
Playlist Manager 1.0.2  (foo_playlist_manager)
Tagger Mod Panel Window 1.1.0.2 [Dec 21 2008 - 17:59:45]  (foo_uie_tagger_mod)
Standard Input Array 1.0  (foo_input_std)
Standard DSP Array 1.0  (foo_dsp_std)
RAR reader 1.1  (foo_unpack)
Database Search 1.4  (foo_dbsearch)
Chronial's Coverflow 0.3.0  (foo_chronflow)
Drag Panel 0.0.6a  (foo_uie_dragpanel)
Convolver 0.3  (foo_convolve)
Screen Saver Visualisation 1.1  (foo_vis_screensaver)
Reverse Playback 0.1.4 (SSE)  (foo_input_reverse)
Album List 4.3  (foo_albumlist)
Playback Queue Viewer 0.2  (foo_pqview)
TTA Audio Decoder (unofficial) 2.4.2  (foo_input_tta)
Quick Tagger 1.0.1  (foo_quicktag)
Playlists Dropdown 0.7 beta 1  (foo_uie_playlists_dropdown)
Cover Flow 0.19  (foo_bubble_coverflow)
AC3 decoder 0.9.1  (foo_ac3)
Panel Stack Splitter 0.3.6.2(alpha)  (foo_uie_panel_splitter)
File Operations 2.1.1  (foo_fileops)
ABX Comparator 1.3.3  (foo_abx)
Kernel Streaming Output 1.2.2  (foo_out_ks)
Chacon 0.0.1  (foo_chacon)
Scheduler 3.53  (foo_scheduler)
ZIP/GZIP reader 1.0  (foo_unpack)
Preview 1.1  (foo_preview)
Special file info box 2.0.3  (foo_infobox)
Album list panel 0.3.3  (foo_uie_albumlist)
Channel Spectrum panel 0.17.2  (foo_uie_vis_channel_spectrum)
foobar2000 core 0.9.6.1 beta 2  (Core)
Pause on Lock (extended) 1.0  (foo_lock_ex)
foo_explorer 1.31  (foo_explorer)
History 0.2  (foo_history)
File date 1.0.4  (foo_filedate)
Menu Addons 0.4 (SSE)  (foo_menu_addons)
Components versions viewer 0.3  (foo_version)
HTTP Control 0.81  (foo_httpcontrol)
New file stamper 1.0.0 [Dec 21 2008 - 01:05:11]  (foo_new_file_stamper_mod)
Tabbed Panel Modified 0.2.7  (foo_uie_tabs)
Playback Statistics 2.1.7  (foo_playcount)
Remove played Files 1.4.0  (foo_removeplayed)
Typefind 0.2 beta 1  (foo_uie_typefind)
Shell Link Resolver 1.2  (foo_lnk)
Freedb2 characters fixer (masstagger addon) 0.02  (foo_freedb2_fix)
CD Audio Decoder 2.1.4  (foo_cdda)
Masstagger Addons 0.3.4 (SSE)  (foo_masstag_addons)
Track Positioner 1.0  (foo_trackpos)
Resampler (Secret Rabbit Code) 1.03  (foo_dsp_src9)
File Integrity Verifier 1.0.3  (foo_verifier)
Text Display UI Element 1.0 RC 3  (foo_textdisplay)
Run services 0.3.4  (foo_run)
Columns UI 0.3.6.3  (foo_ui_columns)
Channel Mixer 0.9.6.5  (foo_channel_mixer)
Facets 2008-02-25  (foo_facets)
ELPlaylist 0.6.4.2(beta)  (foo_uie_elplaylist)
Randomized Playlist Entry 1.2.3  (foo_random)
Explorer Tree 1.04.7b  (foo_uie_explorer)
Quick Search Toolbar 2.8l  (foo_uie_quicksearch)
Masstagger 1.7  (foo_masstag)
Playlist Tools 0.6.2 beta 6  (foo_utils)
Binary Comparator 1.2  (foo_bitcompare)
Send to Device 1.0.5 [Nov 17 2006 - 14:16:40]  (foo_sendtodevice)
Console panel 0.3  (foo_uie_console)
freedb Tagger 0.6.1  (foo_freedb2)
Discogs Tagger 1.14  (foo_discogs)
Cuesheet Creator 0.4.6  (foo_cuesheet_creator)
Run Command 1.0 beta 3  (foo_runcmd)
Acro WMA decoder 0.1.7.2 (SSE)  (foo_input_wma)
MIDI synthesizer host 1.7  (foo_midi)
Playlist Tree Mod Panel 3.0.6.1 [Jul 31 2008 - 00:00:57]  (foo_playlist_tree_mod)
Skip Track 0.3  (foo_skip)
HTTP Writer 1.1  (foo_write_http)
Bookmarks 0.2.5.3  (foo_uie_bookmarks)
Default User Interface 0.9.5  (foo_ui_std)
Playback Utilities 1.0  (foo_utils_playback)
Monkey's Audio Decoder 2.1.3  (foo_input_monkey)
Converter 1.2  (foo_converter)
foosic music database 1.0 beta 12  (foo_sic)
ReplayGain override 0.1.2  (foo_rg_trn)
Album Art Panel 0.2.7.1  (foo_uie_albumart)
ReplayGain Scanner 2.0.8  (foo_rgscan)
Graphical Browser rev015  (foo_uie_graphical_browser)

My system - XP+SP3
Title: foo_httpcontrol
Post by: oblikoamorale on 2008-12-24 10:29:46
I've added additional null pointer check, re-download 0.81 version and try again.
Title: foo_httpcontrol
Post by: pIv on 2008-12-24 11:41:25
I've added additional null pointer check, re-download 0.81 version and try again.


Thanks, with new version all is OK.
Title: foo_httpcontrol
Post by: tg2k3 on 2008-12-25 23:27:14
thanks a lot, that was my actual plan. you saved me some work!
Title: foo_httpcontrol
Post by: TREX6662k6 on 2009-01-01 03:38:18
Download link is down. Any chance of a mirror?
Title: foo_httpcontrol
Post by: ExUser on 2009-01-07 22:12:45
I've experienced a reproducible crash. When I change an autoplaylist's query from
Code: [Select]
ALL SORT BY "$crc32(%album%)"
to
Code: [Select]
album EXISTS SORT BY "$crc32(%album%)"
, foo_httpcontrol crashes.

Crash log:
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 01D9903Fh
Access violation, operation: read, address: 00000000h
Call path:
entry=>app_mainloop=>on_items_reordered
Code bytes (01D9903Fh):
01D98FFFh:  E8 CC 88 00 00 59 59 8B 4D F4 8B C6 5E 64 89 0D
01D9900Fh:  00 00 00 00 C9 C2 04 00 32 C0 C2 04 00 80 7C 24
01D9901Fh:  04 00 74 0C 8B 44 24 0C 8B 4C 24 08 03 C1 EB 04
01D9902Fh:  8B 44 24 08 C2 0C 00 8B 44 24 04 8B 49 04 33 D2
01D9903Fh:  39 04 81 0F 95 C2 8A C2 C2 04 00 8B 44 24 04 3B
01D9904Fh:  41 04 72 09 3B 41 08 73 04 B0 01 EB 02 32 C0 80
01D9905Fh:  79 0C 00 75 05 84 C0 0F 94 C0 C2 04 00 55 8B EC
01D9906Fh:  51 8B 45 10 53 8B 5D 0C 89 4D FC 85 C0 74 28 56
Stack (002FF094h):
002FF074h:  00000000 00000000 00000000 00000000
002FF084h:  00000000 00000000 00000000 00000000
002FF094h:  01D99098 00000000 00946DB0 00000374
002FF0A4h:  00000000 002FF3DC 002FF3CC 01D9DD1C
002FF0B4h:  00000001 00000000 00000374 00925878
002FF0C4h:  100025A3 00000007 00B2B83D 00946DB0
002FF0D4h:  00000375 01DC1204 113F0060 00000375
002FF0E4h:  00000400 00000000 00000000 01DC8DC4
002FF0F4h:  01DC8EC0 01DC11A4 00000000 00000000
002FF104h:  00000000 00000000 00000000 7D7610B5
002FF114h:  02640000 00000000 026401A4 773A5B87
002FF124h:  773A5955 00660010 00B2B83D 00000000
002FF134h:  00C50014 00B2B83D 00000032 026467D0
002FF144h:  0000001D 00700011 00B2B83D 00000000
002FF154h:  026464D0 0264D8D8 026465E0 079E8188
002FF164h:  02646988 01DC1C08 079E85C0 002FF280
002FF174h:  77349834 0A63ADFD FFFFFFFE 773A5B87
002FF184h:  773A5955 773A58A6 0000001D 773A5B87
002FF194h:  7D761331 02E90000 00000000 02E9019C
002FF1A4h:  773A8AF0 773A8B2C 002A000E 037CCB09
Registers:
EAX: 00000000, EBX: 00000000, ECX: 00000000, EDX: 00000000
ESI: 00000374, EDI: 00000001, EBP: 002FF0AC, ESP: 002FF094
Crash location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h

Loaded modules:
foobar2000                      loaded at 00840000h - 0097D000h
ntdll                            loaded at 77340000h - 77467000h
kernel32                        loaded at 770D0000h - 771AB000h
COMCTL32                        loaded at 748A0000h - 74A3E000h
msvcrt                          loaded at 76780000h - 7682A000h
ADVAPI32                        loaded at 76D80000h - 76E46000h
RPCRT4                          loaded at 76AF0000h - 76BB2000h
GDI32                            loaded at 76830000h - 7687B000h
USER32                          loaded at 76C50000h - 76CED000h
SHLWAPI                          loaded at 774C0000h - 77518000h
SHELL32                          loaded at 75C70000h - 76780000h
ole32                            loaded at 769A0000h - 76AE4000h
shared                          loaded at 10000000h - 1002A000h
UxTheme                          loaded at 74860000h - 7489F000h
COMDLG32                        loaded at 76F20000h - 76F93000h
IMM32                            loaded at 77520000h - 7753E000h
MSCTF                            loaded at 76E50000h - 76F18000h
LPK                              loaded at 774B0000h - 774B9000h
USP10                            loaded at 75BC0000h - 75C3D000h
foo_run                          loaded at 001A0000h - 001CD000h
foo_fileops                      loaded at 00300000h - 00346000h
foo_converter                    loaded at 01C80000h - 01CEC000h
foo_freedb2                      loaded at 01CF0000h - 01D32000h
foo_input_monkey                loaded at 01D40000h - 01D89000h
foo_discogs                      loaded at 01E30000h - 01EC3000h
gdiplus                          loaded at 74500000h - 746AB000h
WS2_32                          loaded at 77470000h - 7749D000h
NSI                              loaded at 77540000h - 77546000h
WINMM                            loaded at 744C0000h - 744F2000h
OLEAUT32                        loaded at 76BC0000h - 76C4D000h
OLEACC                          loaded at 74480000h - 744B9000h
foo_utils                        loaded at 6A2A0000h - 6A2E4000h
foo_texttools                    loaded at 6A260000h - 6A294000h
foo_input_alac                  loaded at 006C0000h - 006E0000h
foo_input_std                    loaded at 021E0000h - 0231F000h
foo_httpcontrol                  loaded at 01D90000h - 01DD1000h
WSOCK32                          loaded at 72890000h - 72897000h
MPR                              loaded at 755D0000h - 755E4000h
foo_verifier                    loaded at 01DE0000h - 01E10000h
foo_masstag                      loaded at 01ED0000h - 01F10000h
foo_pqview                      loaded at 01F10000h - 01F38000h
foo_input_usf                    loaded at 01FF0000h - 020D0000h
foo_quicktag                    loaded at 02160000h - 02194000h
foo_albumlist                    loaded at 02320000h - 0238C000h
foo_facets                      loaded at 02390000h - 0245B000h
MSIMG32                          loaded at 75200000h - 75205000h
foo_vorbisstream                loaded at 02800000h - 029A9000h
WINSPOOL                        loaded at 73D60000h - 73DA2000h
foo_playcount                    loaded at 02120000h - 0214A000h
foo_gep                          loaded at 026D0000h - 02766000h
foo_rgscan                      loaded at 02770000h - 027CB000h
foo_unpack                      loaded at 021A0000h - 021CD000h
foo_dsp_std                      loaded at 029D0000h - 02A18000h
foo_textdisplay                  loaded at 6A300000h - 6A337000h
foo_ui_std                      loaded at 02BC0000h - 02C95000h
foo_audioscrobbler              loaded at 025C0000h - 025F0000h
foo_abx                          loaded at 02A50000h - 02A81000h
foo_dsp_vlevel                  loaded at 6CC20000h - 6CC2A000h
MSVCR90                          loaded at 73740000h - 737E3000h
foo_dumb                        loaded at 02CA0000h - 02D29000h
foo_format                      loaded at 02A20000h - 02A39000h
foo_cdda                        loaded at 02A90000h - 02AD1000h
CLBCatQ                          loaded at 76CF0000h - 76D74000h
mlang                            loaded at 6F9D0000h - 6FA00000h
sud                              loaded at 65FD0000h - 660FE000h
ADVPACK                          loaded at 6C210000h - 6C23E000h
VERSION                          loaded at 75250000h - 75258000h
SETUPAPI                        loaded at 771B0000h - 7733A000h
PROPSYS                          loaded at 74380000h - 7443B000h
DUser                            loaded at 74830000h - 74860000h
NLAapi                          loaded at 746C0000h - 746CF000h
IPHLPAPI                        loaded at 75430000h - 75449000h
dhcpcsvc                        loaded at 753F0000h - 75425000h
DNSAPI                          loaded at 75670000h - 7569C000h
Secur32                          loaded at 75A50000h - 75A64000h
WINNSI                          loaded at 753E0000h - 753E7000h
dhcpcsvc6                        loaded at 753B0000h - 753D1000h
napinsp                          loaded at 71100000h - 7110F000h
pnrpnsp                          loaded at 70ED0000h - 70EE2000h
mswsock                          loaded at 75180000h - 751BB000h
winrnr                          loaded at 710F0000h - 710F8000h
WLDAP32                          loaded at 77550000h - 7759A000h
PSAPI                            loaded at 75BB0000h - 75BB7000h
rasadhlp                        loaded at 71940000h - 71946000h
wship6                          loaded at 75240000h - 75245000h
wshtcpip                        loaded at 750C0000h - 750C5000h
browseui                        loaded at 6FD20000h - 6FE66000h
tiptsf                          loaded at 73C60000h - 73CC0000h
rsaenh                          loaded at 750F0000h - 7512B000h
USERENV                          loaded at 75A70000h - 75A8E000h
ieframe                          loaded at 6DBB0000h - 6E17E000h
iertutil                        loaded at 76950000h - 76995000h
SXS                              loaded at 75900000h - 7595F000h
apphelp                          loaded at 759C0000h - 759EC000h
actxprxy                        loaded at 6EFA0000h - 6EFF3000h
imagehlp                        loaded at 75C40000h - 75C69000h
dbghelp                          loaded at 73AD0000h - 73BAC000h

Stack dump analysis:
Address: 01D99098h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Address: 00946DB0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 01D9DD1Ch, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Address: 00925878h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 100025A3h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000000h)
Address: 00946DB0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 01DC1204h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+0001F9BFh)
Address: 01DC8DC4h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+0002757Fh)
Address: 01DC8EC0h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+0002767Bh)
Address: 01DC11A4h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+0001F95Fh)
Address: 773A5B87h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000002E1h)
Address: 773A5955h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000000AFh)
Address: 01DC1C08h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+000203C3h)
Address: 77349834h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlUpdateTimer" (+00000605h)
Address: 773A5B87h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000002E1h)
Address: 773A5955h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000000AFh)
Address: 773A58A6h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 773A5B87h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000002E1h)
Address: 773A8AF0h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlTryEnterCriticalSection" (+00000A0Dh)
Address: 773A8B2Ch, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlTryEnterCriticalSection" (+00000A49h)
Address: 77349834h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlUpdateTimer" (+00000605h)
Address: 773A5B87h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000002E1h)
Address: 773A5955h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000000AFh)
Address: 773A58A6h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 773A5B87h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000002E1h)
Address: 773A861Fh, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlTryEnterCriticalSection" (+0000053Ch)
Address: 76C689EEh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetKeyState" (+00000227h)
Address: 76C7058Ah, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowRect" (+00000028h)
Address: 76C70598h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowRect" (+00000036h)
Address: 76CB51BAh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DrawFrame" (+00000AB3h)
Address: 76C70598h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowRect" (+00000036h)
Address: 02C14374h, location: "foo_ui_std", loaded at 02BC0000h - 02C95000h
Address: 76836386h, location: "GDI32", loaded at 76830000h - 7687B000h
Symbol: "SelectObject" (+00000286h)
Address: 7683A410h, location: "GDI32", loaded at 76830000h - 7687B000h
Symbol: "CombineRgn" (+000000C6h)
Address: 02C131D8h, location: "foo_ui_std", loaded at 02BC0000h - 02C95000h
Address: 02C468DCh, location: "foo_ui_std", loaded at 02BC0000h - 02C95000h
Symbol: "foobar2000_get_interface" (+0001E5DCh)
Address: 02BDD8CBh, location: "foo_ui_std", loaded at 02BC0000h - 02C95000h
Address: 02BDD8E1h, location: "foo_ui_std", loaded at 02BC0000h - 02C95000h
Address: 00925878h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 01DB91F8h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+000179B3h)
Address: 01D9454Ah, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Address: 01DC8DB0h, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+0002756Bh)
Address: 01DC119Ch, location: "foo_httpcontrol", loaded at 01D90000h - 01DD1000h
Symbol: "foobar2000_get_interface" (+0001F957h)
Address: 00899EA7h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00949263h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00904F40h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0094B000h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00949262h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0094B000h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0090414Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0089FFFCh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00946DB0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00949263h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0089FF0Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0090A6C5h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008A1288h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0085363Dh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091FBC4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091FBC4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00853519h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00908389h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008534D0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091FBC4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091FBC4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091FBC4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091FBC4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008530DEh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 009093D7h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008530B8h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008526FCh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00851E82h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008526FCh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008518EEh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091E99Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091E99Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008517EBh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 009067CCh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00851691h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0090C244h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0085212Fh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00843C42h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 76C6F8D2h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetMessageW" (+00000093h)
Address: 76C5B894h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "UnregisterMessagePumpHook" (+00000120h)
Address: 76C5B84Ah, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "UnregisterMessagePumpHook" (+000000D6h)
Address: 748DD215h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "DefSubclassProc" (+00000234h)
Address: 76CB51BAh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DrawFrame" (+00000AB3h)
Address: 76C5B978h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "UnregisterMessagePumpHook" (+00000204h)
Address: 76C6F8D2h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetMessageW" (+00000093h)
Address: 76C5BA7Bh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DefDlgProcW" (+00000022h)
Address: 76C6F8D2h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetMessageW" (+00000093h)
Address: 76C6F794h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowLongW" (+00000115h)
Address: 76C5BA59h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DefDlgProcW" (+00000000h)
Address: 76C6F73Dh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowLongW" (+000000BEh)
Address: 748DD1E1h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "DefSubclassProc" (+00000200h)
Address: 76CB51BAh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DrawFrame" (+00000AB3h)
Address: 76C70A05h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowThreadProcessId" (+0000016Dh)
Address: 76C5BA59h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DefDlgProcW" (+00000000h)
Address: 76C70AB1h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "SendMessageW" (+00000000h)
Address: 76C5BA59h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DefDlgProcW" (+00000000h)
Address: 76C70AFAh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "SendMessageW" (+00000049h)
Address: 001A7AD8h, location: "foo_run", loaded at 001A0000h - 001CD000h
Symbol: "foobar2000_get_interface" (+00000F88h)
Address: 748BF94Fh, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "RegisterClassNameW" (+000037C4h)
Address: 748BF9B1h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "RegisterClassNameW" (+00003826h)
Address: 748BFC97h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "RegisterClassNameW" (+00003B0Ch)
Address: 7487DDC0h, location: "UxTheme", loaded at 74860000h - 7489F000h
Symbol: "OpenThemeDataEx" (+000001B8h)
Address: 76C6F8D2h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetMessageW" (+00000093h)
Address: 76C6F794h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowLongW" (+00000115h)
Address: 748DD1E1h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "DefSubclassProc" (+00000200h)
Address: 76C6F73Dh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowLongW" (+000000BEh)
Address: 76CB51BAh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DrawFrame" (+00000AB3h)
Address: 76C70008h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "PeekMessageW" (+00000269h)
Address: 748DD1E1h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "DefSubclassProc" (+00000200h)
Address: 76C808B6h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetComboBoxInfo" (+0000004Dh)
Address: 76CB51BAh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DrawFrame" (+00000AB3h)
Address: 76C70060h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 748DD1E1h, location: "COMCTL32", loaded at 748A0000h - 74A3E000h
Symbol: "DefSubclassProc" (+00000200h)
Address: 76C5AF07h, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "GetWindowTextLengthW" (+00000142h)
Address: 00879DE9h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 76C614BCh, location: "USER32", loaded at 76C50000h - 76CED000h
Symbol: "DestroyWindow" (+00000000h)
Address: 0090453Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00879E5Fh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 0087A96Eh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091BE28h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0091BE28h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 773A5955h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+000000AFh)
Address: 773A58A6h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 0091E99Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00320D5Ch, location: "foo_fileops", loaded at 00300000h - 00346000h
Symbol: "foobar2000_get_interface" (+000111FCh)
Address: 00840000h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0092BFD0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008EFC51h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F3DE6h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 77398A94h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "ZwQueryInformationProcess" (+0000000Ch)
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 009226F4h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0090C390h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0087ABB0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00840000h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F0231h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F022Bh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00913BA8h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00911150h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F20A0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F022Bh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F023Fh, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00911150h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 0090C54Ch, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F1D8Ah, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00840000h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F9E96h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F20A0h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 77114911h, location: "kernel32", loaded at 770D0000h - 771AB000h
Symbol: "BaseThreadInitThunk" (+00000012h)
Address: 7737E4B6h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlInitializeExceptionChain" (+00000063h)
Address: 7716F389h, location: "kernel32", loaded at 770D0000h - 771AB000h
Symbol: "UnhandledExceptionFilter" (+00000000h)
Address: 7716F389h, location: "kernel32", loaded at 770D0000h - 771AB000h
Symbol: "UnhandledExceptionFilter" (+00000000h)
Address: 77349834h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlUpdateTimer" (+00000605h)
Address: 7737E489h, location: "ntdll", loaded at 77340000h - 77467000h
Symbol: "RtlInitializeExceptionChain" (+00000036h)
Address: 008F1DF5h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 008F1DF5h, location: "foobar2000", loaded at 00840000h - 0097D000h
Address: 00905A4Dh, location: "foobar2000", loaded at 00840000h - 0097D000h

Version info:
foobar2000 v0.9.6.1
UNICODE
Windows 6.0


Additional info:
Masstagger 1.7  (foo_masstag)
freedb Tagger 0.6.1  (foo_freedb2)
ZIP/GZIP reader 1.0  (foo_unpack)
Converter 1.2  (foo_converter)
64th Note 1.5.0.305  (foo_input_usf)
HTTP Control 0.81  (foo_httpcontrol)
foobar2000 core 0.9.6.1  (Core)
Game Emu Player 1.4  (foo_gep)
Default User Interface 0.9.5  (foo_ui_std)
Standard DSP Array 1.0  (foo_dsp_std)
ALAC Decoder 1.0.1  (foo_input_alac)
Text Display Element 1.0 beta 2  (foo_textdisplay)
Text Tools 1.0.1  (foo_texttools)
Quick Tagger 1.0.1  (foo_quicktag)
DUMB module decoder 0.9.8.3  (foo_dumb)
edcast Vorbis Streamer 0.9.8  (foo_vorbisstream)
ABX Comparator 1.3.3  (foo_abx)
Playlist Tools 0.6.2 beta 6  (foo_utils)
ReplayGain Scanner 2.0.8  (foo_rgscan)
File Integrity Verifier 1.0.1  (foo_verifier)
VLevel 200809.0  (foo_dsp_vlevel)
RAR reader 1.1  (foo_unpack)
Audioscrobbler 1.3.13.6  (foo_audioscrobbler)
Standard Input Array 1.0  (foo_input_std)
Playback Statistics 2.1.6  (foo_playcount)
Monkey's Audio decoder 2.1.1  (foo_input_monkey)
Album List 4.3  (foo_albumlist)
Run services 0.3.3  (foo_run)
Facets 2009-01-03 beta  (foo_facets)
File Operations 2.1.1  (foo_fileops)
CD Audio Decoder 2.1.4  (foo_cdda)
Discogs Tagger 1.14  (foo_discogs)
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-01-08 05:36:54
I've experienced a reproducible crash. When I change an autoplaylist's query from
Code: [Select]
ALL SORT BY "$crc32(%album%)"
to
Code: [Select]
album EXISTS SORT BY "$crc32(%album%)"
, foo_httpcontrol crashes.

I've already fixed this issue a while ago (at least, I think so). let me know if re-downloading 0.81 version helps.
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-19 03:21:23
Good day to all.

Firstly, thanks for developing what looks to be an essential foo.

I have used many plug-ins the past and am not a total idiot.  BUt i cannot seem to get this to work on my iphone.

I am able to follow the 127.0.0.1:8888 on my brower on my pc.  But that address doesn't work on my phone.

Can anyone help please?

I would love to control my foobar from my iiphone with album rt if possible.

many thanks in advance.
Title: foo_httpcontrol
Post by: redmodel on 2009-01-19 04:17:31
I am able to follow the 127.0.0.1:8888 on my brower on my pc.  But that address doesn't work on my phone.


127.0.0.1 is just a local connection to your own computer.  You need to find out the actual IP.  You can go to command prompt and type ipconfig, and it'll show there, or in the network properties.  Should probably start with 192.168....
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-19 06:24:01
thanks much... i am in...

Can you help me apply one of the simpler iphone display settings?
one with album art?

thanks again.
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-19 07:05:21
i should mention that all of my album art is my albums folders as "folder.jpg"
Title: foo_httpcontrol
Post by: redmodel on 2009-01-19 09:29:38
thanks much... i am in...

Can you help me apply one of the simpler iphone display settings?
one with album art?

thanks again.


$replace(%path%,%filename_ext%,)*.jp*g

add that to the album art section in preferences
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-19 17:21:53
redmodel,

Many thanks for helping.  I truly appreciate it.

I did have that text in the album art field, but it didn't show on my phone. 

Perhaps I am not using the the iphone display settings correctly.  I downloaded the "iPhone" profile, and to be honest I am not sure what to do with all of the files.

I simply copy and pasted the fields from the word file in the download into the corresponding fields in Foobar Preferences.  i am not sure what to do with the .jpgs, and other files.  I extracted the complete folder to my components folder.

Obviously, from the screenshots, one of the .jpgs is a button image for my iPhne home screen.  How do I embed that image on the page for my phone?

I basically would love this:



Exactly....

Can you help get me there?
Title: foo_httpcontrol
Post by: redmodel on 2009-01-19 23:01:39
Sorry, just wanted to make sure, did you copy all the files into the foo_httpcontrol_data folder?

It's located in components folder.
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-19 23:17:07
Sorry, just wanted to make sure, did you copy all the files into the foo_httpcontrol_data folder?

It's located in components folder.


Probably not....  Do i simply extract the entire "iPhone" Folder into the HHTP component folder?  Meaning do I keep the exact file structure of the zipped download?

I dont think I did that.  I think I extracted the iPhone folder into my components only.  Not all the way into the HTTp folder.

Ill give that a shot asap.

THANK YOU SO MUCH!
Title: foo_httpcontrol
Post by: redmodel on 2009-01-20 00:13:59
I actually just extracted all the files in the iphone folder into the HHTP folder.  And not actual iphone folder itself.

I guess if you did the just move the iphone folder, you'd have to go to 192.168.xx.xx:8888/iphone
on your browser
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-20 01:34:05
OK... trying now.

There is a folder inside the iphone folder called "foo-hhtpcontrol-data"

Do I leave these files here and import it with the others into the http control folder

thanks again!!!
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-20 02:04:13
OK!!!!  Things are getting there!!!

Now i only need to figure out why the album art is not refreshing.  I will re-read this entire thread to see if I can fix it.

the first song I played worked, but know the art will not change from the first thing I played.

This is awesome!!!!
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-20 02:36:52
Ok I have this basically working.  I started fresh and things are going well.



two questions:

My art isnt showing, and woudlnt refresh on the other profile.  Help?

Also, can I have it NOT load playlists but still get the album art screen?

thanks!!!!!
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-21 19:47:33
OK redmodel....

I tried the "other" text someone posted back a few pages to get the albumart to work.

I now see the art!!!  But it doesn;t refresh when changing tracks unless i physically refresh the page.  Then it dumps me back into the playlist page.

Also, unless on shuffle (worthless... same songs in a row over and over), it will not go to the next track without me pressing next.

I guess this is all a little opver my head.

I have read EVERY single post in this thread and it appears people are starting with a much higher understanding of how to make these things work...

Oh well....

Very nice idea though.
Title: foo_httpcontrol
Post by: pcstockton on 2009-01-22 00:35:06
After playing with the existing interfaces I noticed one big problem with all of them: they use synchronous requests, making the updates require screen updates. So I wrote this AJAX powered webui!

Due to the way this plugin is designed you'll have to open http://localhost:8888/index.html (http://localhost:8888/index.html) instead of just http://localhost:8888/ (http://localhost:8888/) in your browser (the "index.html" part is important, else you'll just get some text) but besides that it works just fine.

(http://img139.imageshack.us/img139/3879/foobarzw6.png)

Download: http://www.2shared.com/file/3717567/6947f4...ntrol_data.html (http://www.2shared.com/file/3717567/6947f4c5/foo_httpcontrol_data.html)
Mirror: http://www.uploading.com/files/9XPZ4C6M/fo...l_data.zip.html (http://www.uploading.com/files/9XPZ4C6M/foo_httpcontrol_data.zip.html)

Note: Doesn't work with IE, tested in Opera 9.5 and Firefox 3


Now this is awesome....  Perfectly simple and clean.  I dont need playlists.
Would anyone know a way to do two things to this?

1) Resize for iPhone
2) Add the Foobar Playback options of "Random", "Default" etc.
Title: foo_httpcontrol
Post by: bronc on 2009-02-03 12:37:45
I'm with Auric's config for httpcontrol but none of my songs/playlists is shown on my ipod touch



Do i have to specify the folder where my music is and if i have to can you please tell me where should i do this. Thanks!

p.s. can someone give a link for the last version of httpcontrol because the link in the first post is dead.
Title: foo_httpcontrol
Post by: bronc on 2009-02-07 21:47:49
bump
Title: foo_httpcontrol
Post by: AnalBeard on 2009-02-09 18:14:58

I too have exactly the same problem with my iPhone. Is it an incorrectly inconfigured setting or actually a bug?
Title: foo_httpcontrol
Post by: saivert on 2009-02-10 13:04:34
If playlist items are missing it may be because you forgot to do this:

- The "playlist row" field in the HTTP Control preferences must be set to the following, or some variation thereof:
Code: [Select]
{ "artist": "$ifgreater($len(%artist%),29,$cut(%artist%,29)'...',%artist%)", "album": "$ifgreater($len(%album%),29,$cut(%album%,29)'...',%album%)", "number": "%tracknumber%", "track": "$ifgreater($len($replace(%title%,",)),28,$cut($replace(%title%,",),28)'...',$replace(%title%,",))", "len": "%length%" }


Always read instructions when someone gives you something here.

Also I fixed the code so you get scrollbars.
Download updated style.css with scrollbars: http://saivert.xerc.biz/foobar2000/iPhone_webui/style.css (http://saivert.xerc.biz/foobar2000/iPhone_webui/style.css)

This is only for the iPhone WebUI theme by Auric
Title: foo_httpcontrol
Post by: Junk Angel on 2009-02-11 15:25:42
Uh I'm curious - does anyone have a mirror?

The host can't be found and there doesn't seem to be one in the thread.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-02-11 16:19:09
silly me, the link has been broken during last edit. fixed now.
Title: foo_httpcontrol
Post by: vtaylor on 2009-02-11 21:33:28
Salut

Thanks guys for your great work.

soulruins: got yours to work fine except that the volume control is very coarse - goes from silence to loud then very loud. Is there an easy way to decrease the step size? I tried in the fb2k advanced settings but it made no difference. Also the browser text size is miniscule - can this be modded?

auric: any updates? Any intention to add a volume control and queue directory? Screen is a bit slow on the iphone, but I was messing with yours and soulruins. I'll try again tomorrow (it often fixes problems ;-).

Thanks also of course to oblikoamorale.

Regards

Vernon
Title: foo_httpcontrol
Post by: nightfishing on 2009-02-20 23:47:12
For anyone using a phone/bb etc to access this (not thru wifi) I could use some help.

It works fine from other computers in my wireless network, but I cannot gain access from my bb (IP outside of my wireless network).

Any suggestions would be appreciated.

Title: foo_httpcontrol
Post by: supervillain on 2009-02-28 21:46:34
here is the message i get every time in. firefox 3.0.6: failed to read file: C:\Users\Ryan\Programs\Foobar2000\components\foo_httpcontrol_data\foo_httpcontrol_controls_tpl.html, error: 3.

i cant seem to get this plugin to work.  any ideas?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-01 06:51:38
judging by the error code, path C:\Users\Ryan\Programs\Foobar2000\components\foo_httpcontrol_data\ doesn't exist
do you have foobar2000 installed to your user directory?
Title: foo_httpcontrol
Post by: TREX6662k6 on 2009-03-01 18:23:00
Thanks.
Works great in Wine running on OS X!

Saves me having to VNC.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-02 15:04:02
Had a flick through the thread and got this working well from my G1. Thanks alot.

Wondering what code I would need to call to make a button to remove the current playing track from the playlist and skip to next track? If thats possible?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-02 17:16:34
Wondering what code I would need to call to make a button to remove the current playing track from the playlist and skip to next track? If thats possible?
by design you cannot execute more than one command at once, and there is no builtin macro representing the currently playing item index.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-05 09:33:06
Wondering what code I would need to call to make a button to remove the current playing track from the playlist and skip to next track? If thats possible?
by design you cannot execute more than one command at once, and there is no builtin macro representing the currently playing item index.


Damn . And the skip to next track thing wasnt important, just an after thought. But nevermind, my http remote is still ace. Cheers.

Just a thought, is there anyway I could implement the effects of the following into the action of a button or two, on a template without a displayed playlist? I could then just remove the previous played track if I wanted to.

Quote
v0.63 05 Apr 2008
    add: clickable path in browser;
    add: previously played track is highlighted in playlist;
    fix: list of playlists wasn't always updated;
    fix: additional safety checks and fixes;


and

Quote
v0.68 12 May 2008
        add: playback enqueue/dequeue (LIFO) control, q/w hotkeys;
        add: playlist focus control, shift hotkey;
        add: playlist entry remove control, ctrl hotkey;
        add: configurable page autorefresh;
        fix: compacted control template JS;
        fix: invisible glitches;


I'm trying to keep my main control screen fairly clear (such as using album art as the link to the browser page), so dont want a full playlist and playlist controls on it, but I'm no html expert and cant seem to get a seperate playlist page to work, so hopeful for some basic buttons on my main control page.


Oh, and I had the same problem as bronc and analbeard with Aurics iphone skin, even after checking and double checking the playlist config details. Unlikley, but is it because I'm not using an iPhone and it has some specific iPhone code, maybe the CSS?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-05 15:50:53
Just a thought, is there anyway I could implement the effects of the following into the action of a button or two, on a template without a displayed playlist? I could then just remove the previous played track if I wanted to.

d'oh. sorry! removing currently playing track (in case it is from the currently chosen playlist) is obviously possible right now with something like this:
Code: [Select]
<script language="JavaScript" type="text/javascript">
<!--
if ([IS_PLAYING])
{
    trk=[TRACK_NUM];trk-=1;
    document.write('<a href="/?cmd=Del&param1='+trk+'">Remove currently playing track</a>');
}
//--></script>

and of course you don't need playlist for this to work.

Oh, and I had the same problem as bronc and analbeard with Aurics iphone skin, even after checking and double checking the playlist config details. Unlikley, but is it because I'm not using an iPhone and it has some specific iPhone code, maybe the CSS?

I looked into the problem and it seems that you have to restart foobar2000 for new playlist row formatting string to be applied. after that Auric's templates works just fine. I'll fix this obscure bug in the next version.
Title: foo_httpcontrol
Post by: rexit2 on 2009-03-05 16:23:10
I have been following this thread for quite some time. Is there a keyword search function for the playlist and directories yet? Or is this not possible? I'm looking for something similar to this (http://sourceforge.net/projects/halo8wwwinamp/#item3rd-2)
Title: foo_httpcontrol
Post by: supervillain on 2009-03-05 18:07:29
judging by the error code, path C:\Users\Ryan\Programs\Foobar2000\components\foo_httpcontrol_data\ doesn't exist
do you have foobar2000 installed to your user directory?



yeah i do.  do i need to reinstall in program files for this to work??
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-05 18:28:35
I have been following this thread for quite some time. Is there a keyword search function for the playlist and directories yet? Or is this not possible? I'm looking for something similar to this (http://sourceforge.net/projects/halo8wwwinamp/#item3rd-2)
nope, nothing like that. only simple ability to query the media library is available.

judging by the error code, path C:\Users\Ryan\Programs\Foobar2000\components\foo_httpcontrol_data\ doesn't exist
do you have foobar2000 installed to your user directory?



yeah i do.  do i need to reinstall in program files for this to work??
first of all you have to make sure C:\Users\Ryan\Programs\Foobar2000\components\foo_httpcontrol_data\ is created and component data files are extracted exactly into it.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-05 19:11:31
Great stuff, you're ace.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-06 14:00:12
Right, I've gone for sIIhZt/larskl AJAX interface as it seems to work the best from my G1, (its great cheers sIIhZt).

I've modified the layout a little to best suite me, theres just a couple of things I want to add, but the javascript is a stretch to far for what I know, without getting a little help. (maybe the answer to my question is for me to have a read up on javascript/AJAX!)

This is what I've got currently;


I want to add something similar to the playlist selector and playback order selector from the default layout, with a button to do this (**) between them and put it below the volume bar/text.
(**)
d'oh. sorry! removing currently playing track (in case it is from the currently chosen playlist) is obviously possible right now with something like this:
Code: [Select]
<script language="JavaScript" type="text/javascript">
<!--
if ([IS_PLAYING])
{
    trk=[TRACK_NUM];trk-=1;
    document.write('<a href="/?cmd=Del&param1='+trk+'">Remove currently playing track</a>');
}
//--></script>

and of course you don't need playlist for this to work.



I'm usually quite good at bodging things without needing to learn the language throughout (by copypastedelete), but the problem I'm having, maybe with it being ajax?, is I'm not quite sure new information/commands I need to be adding, and where I need to be putting them  - index.html, controls*.html or the javascript file. It seems if I add anything to the controls*.html file (e.g. [PLAYLISTS_OPTION]) it stops the webUI from getting any information - %artist% track, etc.

Not looking for anyone to go out of their way and do it for me, but some pointers on how to go about it, or somewhere that might explain it a little better would be appreciated.


.......Would it be easier/possible to put the selectors and "remove track" button I want on the browser layout, rather than the main index ajax page?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-06 16:05:22
Not looking for anyone to go out of their way and do it for me, but some pointers on how to go about it, or somewhere that might explain it a little better would be appreciated.
the working principle of Auric's AJAX interface is based on retrieving JS-formatted object from foo_httpcontrol, which describes the current state of the player, and then building the interface outlook based on received data.
format of the object is defined in foo_httpcontrol_controls_tpl.html. after eval()-ling received data, you can easily access object fields within your JS and do whatever you want.
that's very basic info, but it should point you towards the right direction. for implementing playlist switcher you need to include [PLAYLISTS_JS] and [PLAYLIST_ACTIVE] into the state object. check readme.txt for details on these macros.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-06 17:45:12
the working principle of Auric's AJAX interface is based on retrieving JS-formatted object from foo_httpcontrol, which describes the current state of the player, and then building the interface outlook based on received data.
format of the object is defined in foo_httpcontrol_controls_tpl.html. after eval()-ling received data, you can easily access object fields within your JS and do whatever you want.
that's very basic info, but it should point you towards the right direction. for implementing playlist switcher you need to include [PLAYLISTS_JS] and [PLAYLIST_ACTIVE] into the state object. check readme.txt for details on these macros.


Are you suggesting I would be better off using Aurics JS file (instead of the one by sIIhZt/larskl) as my backbone for getting the information from fb2k, and then working the html interface ontop of that? I'm hoping the bulk of the html layout I already have set up could be used with the other JS file besides some renaming of the commands/headings called, etc?

Problem is Aurics template doesnt seem to load on my G1, whereas sIIhZt's (and my fiddled version of it) does. Though I dont know whether this is is down to something in Auric's html/css or in the JS file, as yet. It just seems to load at the "#_playlist" section of the page like the picture posted by bronc, and wont go to the "#_nowPlaying" part - but at the same time it displays ok through my PC browser.

I'm guessing the structure in the foo_httpcontrol_controls_tpl.html is - "substituted object name for use in the JS" : [OBJECT INFO PULLED FROM FOO_HTTPCONTROL], and that the subsituted name isnt predefined anywhere but here, I could call them anything? And controls_tpl.html is just a list of all of the headings you need to pull from foo_httpcontrol to get the information you need, the order listed isnt important?

Is it possible to make a drop down selection (default, random, shuffle etc) have its effect without redrawing the whole page using the ajax? Sorry for the newbie questions  .
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-06 18:31:25
Are you suggesting I would be better off using Aurics JS file (instead of the one by sIIhZt/larskl) as my backbone for getting the information from fb2k, and then working the html interface ontop of that? I'm hoping the bulk of the html layout I already have set up could be used with the other JS file besides some renaming of the commands/headings called, etc?
no, that wasn't my point. I don't know anything about sIIhZt/larskl work, the basic principle of work is the same in all asynchronious interfaces: you pull the data behind the scene.

I'm guessing the structure in the foo_httpcontrol_controls_tpl.html is - "substituted object name for use in the JS" : [OBJECT INFO PULLED FROM FOO_HTTPCONTROL], and that the subsituted name isnt predefined anywhere but here, I could call them anything? And controls_tpl.html is just a list of all of the headings you need to pull from foo_httpcontrol to get the information you need, the order listed isnt important?
yes, the only predefined things are square bracket rounded macros. some of them (by weird design) are replaced only within foo_httpcontrol_controls_tpl.html, and the other - foo_httpcontrol_browser.html. consult readme.txt for details.

Is it possible to make a drop down selection (default, random, shuffle etc) have its effect without redrawing the whole page.
yes. that's the beauty of asyncroniousness.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-07 20:33:53
I'm getting a little bit further  , but it seems adding [PLAYBACK_ORDER_OPTION] to my "foo_httpcontrol_controls_tpl.html" kills everything. My guess is its either because some of the playback titles have brackets in their name or because there seems to be no spacing between each playback type when displayed in the browser.
Code: [Select]
"DefaultRepeat (playlist)Repeat (track)RandomShuffle (tracks)Shuffle (albums)Shuffle (folders)"


If that is the problem, is it possible to select playback order by name just using [PLAYBACK_ORDER], for example I give each nuber value its name? In fact, thinking out loud as I type, I dont need all the playback options, a "default <-> random" button should be enough.

<back to work>
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-08 07:24:22
If that is the problem, is it possible to select playback order by name just using [PLAYBACK_ORDER], for example I give each nuber value its name? In fact, thinking out loud as I type, I dont need all the playback options, a "default <-> random" button should be enough.
you need a numerical representation of playback order, and [PLAYBACK_ORDER] stands for it: 0 - Default ... 6 - Shuffle (folders) iirc.
[PLAYBACK_ORDER_OPTION] generates html <select><option...></select> construct which obviously doesn't suit your needs.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-09 09:49:49
Hmmm, it seems I've got it working in Opera, but my android (Webkit) phone doesnt like the JS for my two buttons, everything else on it works fine - album art, track details etc.

Can anyone spot anything obvious in this part of the code as to why it will work in opera but not webkit browsers?

index.html
Code: [Select]
td style="text-align: center;">
                <img id="remtrack" src="delete.png" onclick="MakeRequest('Del', '');" />
                <img id="playorder" src="playorder.png" onclick="MakeRequest('PlaybackOrder', '');" />
            </td>

JS file
Code: [Select]
if (fooVars["isplaying"] == 1)
{
trk = --fooVars["tracknum"];
document.getElementById("remtrack").onclick = "MakeRequest('Del', trk )";
}



if (fooVars["playborder"] == 0)
{
document.getElementById("playorder").src = "rand.png";
document.getElementById("playorder").onclick = "MakeRequest('PlaybackOrder',3)";
}
if (fooVars["playborder"] == 3)
{
document.getElementById("playorder").src = "playorder.png";
document.getElementById("playorder").onclick = "MakeRequest('PlaybackOrder',0)";
}

The playorder image changes if I update it via the desktop, but the buttons just arent clickable through Android, or google chrome.

Granted, this isn't really foo_httpcontrol specific now, so let me know if I should take this problem elsewhere.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-09 11:49:14
Hmmm, it seems I've got it working in Opera, but my android (Webkit) phone doesnt like the JS for my two buttons, everything else on it works fine - album art, track details etc.
perhaps it is a good idea to look at Chrome's JS error log to figure out what is wrong.
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-09 13:38:01
Only error I seem to be getting is "Resource interpreted as script but transferred with MIME type text/html", the javascript replace of the "onclick" value just doesnt seem to be getting through the the displayed html? Even though the image replace part is getting though, if I change it through foobar.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-09 14:50:15
the onClick name seems to be case sensitive. and you cannot just assign text to onClick as it is a handler, not property.
instead of
Code: [Select]
document.something.onClick = "someFunction(parameters);";
the right way would be the
Code: [Select]
document.something.onClick = someFunction;
or
Code: [Select]
document.something.onClick = function () { alert('foo'); }


we're really getting off the thread scope...
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-09 15:20:35
Yes sorry for getting off topic a little. But I have managed to fix it!

Code is now;

Code: [Select]
if (fooVars["isplaying"] == 1) {
trk = --fooVars["tracknum"];
document.getElementById("remtrack").onclick = function() { (MakeRequest('Del', trk )); }
}



if (fooVars["playborder"] == 0) {
document.getElementById("playorder").onclick = function() { (MakeRequest('PlaybackOrder',3)); }
document.getElementById("playorder").src = "rand.png";
}
if (fooVars["playborder"] == 3) {
document.getElementById("playorder").onclick = function() { (MakeRequest('PlaybackOrder',0)); }
document.getElementById("playorder").src = "playorder.png";
}

Appreciate the help, and the plugin.


Edit.....

I've finished my remote set up now, looks like this;

 And oblikoamorale for the plug in itself and the help.
Title: foo_httpcontrol
Post by: viktor on 2009-03-14 11:55:54
"many thanks, higher power"
Title: foo_httpcontrol
Post by: viktor on 2009-03-17 00:48:10
since both links were dead earlier this day, here a mirror:

foo_httpcontrol_0.81.zip (http://birkak.extra.hu/foo_httpcontrol_0.81.zip)
Title: foo_httpcontrol
Post by: Kev0 on 2009-03-19 15:39:09
Had a couple of PMs asking for the files.

Obviously not everyone has a playlist called Kev's  , so I have changed it a bit. The playlist switch button now just flicks through the playlists with text above showing the number of the active playlist (not sure how to get it to display the playlist name instead of number?). As it is at the moment you will need to edit the javascript file if you have more or less than 6 playlists, unless someone has suggestions to improve that part of the code?

LINK (http://www.kevo.me.uk/f/foo_httpcontrol_data_UPLOAD.zip)

Edit...
Tested to be working in Opera and Webkit based (chrome/android).
All features bar updating of progress/volume bar working in firefox.
Not working in IE7.
Title: foo_httpcontrol
Post by: fanerman91 on 2009-03-25 17:50:12
Are there instructions on how to use this?

I have a computer hooked up to my receiver and I'd like to be able to control it from my laptop.  This plugin will do the job, right?  The "Remote IP" would be the IP of my laptop, correct?  Is that the local IP (192.168.1.x) or the IP seen from the internet?  Is there anything else I should know?
Title: foo_httpcontrol
Post by: viktor on 2009-03-25 17:58:01
Are there instructions on how to use this?

I have a computer hooked up to my receiver and I'd like to be able to control it from my laptop.  This plugin will do the job, right?  The "Remote IP" would be the IP of my laptop, correct?  Is that the local IP (192.168.1.x) or the IP seen from the internet?  Is there anything else I should know?


you will open the web browser on your laptop and enter the local ip address of the machine hooked up to your receiver

so 192.168.1.x:8888 (8888 is the default port)
Title: foo_httpcontrol
Post by: fanerman91 on 2009-03-25 18:23:30
Are there instructions on how to use this?

I have a computer hooked up to my receiver and I'd like to be able to control it from my laptop.  This plugin will do the job, right?  The "Remote IP" would be the IP of my laptop, correct?  Is that the local IP (192.168.1.x) or the IP seen from the internet?  Is there anything else I should know?


you will open the web browser on your laptop and enter the local ip address of the machine hooked up to your receiver

so 192.168.1.x:8888 (8888 is the default port)


Thank you.  Where does the 127.0.01 come in?
Title: foo_httpcontrol
Post by: viktor on 2009-03-25 21:17:57
Are there instructions on how to use this?

I have a computer hooked up to my receiver and I'd like to be able to control it from my laptop.  This plugin will do the job, right?  The "Remote IP" would be the IP of my laptop, correct?  Is that the local IP (192.168.1.x) or the IP seen from the internet?  Is there anything else I should know?


you will open the web browser on your laptop and enter the local ip address of the machine hooked up to your receiver

so 192.168.1.x:8888 (8888 is the default port)


Thank you.  Where does the 127.0.01 come in?


127.0.0.1 is the loopback IP address which is available on all computers and with that you can reach the same computer. so, you can reach your laptop on your laptop via 127.0.0.1
Title: foo_httpcontrol
Post by: 2E7AH on 2009-03-26 03:13:33
[edit] drunk night, sorry

http://img207.imageshack.us/img207/339/operettamorale.jpg (http://img207.imageshack.us/img207/339/operettamorale.jpg)
Title: foo_httpcontrol
Post by: odyssey on 2009-03-27 18:44:17
@oblikoamorale:

Do you think it could be possible to implement a way to send commands to foobar2000 using the webinterface. That could be handy for making a interface that allows tagging (rating etc.), as well as switches on misc. components... Opputunities are endless
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-27 19:09:20
it is partly possible via foobar2000 command-line parameters. it gives you access to tagging etc

Code: [Select]
        add: ability  to  execute  currently  running  foobar  with  specified
             command line parameters. make  sure  to  urlencode  command  line
             parameter (just in case). example:
             http://127.0.0.1:8888/?cmd=CmdLine&param1=%2fplaypause


run foobar2000.exe /? for command details
Title: foo_httpcontrol
Post by: odyssey on 2009-03-27 20:41:08
Removed... Note to self: READ BEFORE POSTING

oblikoamorale: Thx, i missed that one...
Title: foo_httpcontrol
Post by: l00d on 2009-03-28 00:20:15
I've finished my remote set up now, looks like this;

And oblikoamorale for the plug in itself and the help.



Holy crap please do upload that and/or somehow have it incorporated it into the actual package as an automatic page layout when browsing from an iphone/android.

That looks great!
Title: foo_httpcontrol
Post by: dperry on 2009-03-28 01:28:02
Huge props to Oblikoamorale for putting this plug-in together!

2 things:

1: when browsing over the network and selecting a networked computer, the JSON formatted string that is returned by PATH_JS dosen't seem to encode the cmd value for 'Network:\' so it escapes the following quote during eval:

Code: [Select]
{

"path":    [ { "cmd": "%20", "path": "Root:\\" }, { "cmd": "Network:\", "path": "Network:\\" }, { "cmd": "%5C%5CMONKEY-BRAIN%5C", "path": "\\\\MONKEY-BRAIN\\" } ],

"parent": "Network%3A%5C",

"browser": [ { "p": "\\\\MONKEY-BRAIN\\Albums\\", "pu": "%5C%5CMONKEY-BRAIN%5CAlbums%5C", "fs": "", "cm": "", "ft": "" } ]

}


I'm currently replacing the text before running eval right now.

2: I'm using AJAX and I'd like to be able to highlight the active track in the playlist on page load. Is there any way to tell what the current track is on page load. After sending a Start or PlayOrPause command PLAYLIST_ITEM_PLAYING returns the index of the track but I can't find a way to get it returned without actually starting playback.

Thanks for any help. Props again, your plug-in kicks ass!

Dave
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-28 13:38:30
no problem, here you go:
Code: [Select]
    v0.82 28 Mar
       add: [TRACK_FOCUSED_NUM] - currently focused item of active playlist;
             [TRACK_PREV_NUM] - previously played item. empty if another
             playlist is selected;
       add: optional param2 parameter for Del command, specifying playlist
            index of item to be deleted. if omitted, active playlist is used.
        fix: [PATH_JS] improperly escaped string;
Title: foo_httpcontrol
Post by: dperry on 2009-03-28 16:01:04
Thanks for the quick reply!

The encoding fix is working fine. Regarding the request for the added player info, I guess I didn't explain myself well. Part of the issue I think is how foobar deals with track selection and playing.

In foobar if I have a playlist with say 8 items, I can select and start playback on track 6. I can then click on track 3 and track 6 will keep playing. While foobar is playing I can get the playing track index with PLAYLIST_ITEM_PLAYING and the clicked item, track 3, with PLAYLIST_ITEM_FOCUSED. But if I stop playback, I can only retrieve the 'focused' track and have no way to highlight the track that will begin playing when I press play. This is especially true when first starting foobar as it remembers where it was last in the playlist when it closed and will start playing from there again. I'd like to be able to highlight the track that so that I can tell where foobar will begin playing.

Not sure if foobar exposes the needed information for this. I can keep track of it in javascript once playback has started but I hate the 'blank' status on startup if I can avoid it.

thanks again.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-03-28 18:31:14
aha, now I understand what you meant. I've always been using foobar2000 with Playback/Cursor follows playback option checked, so there seemed to be no problem for me to determine the track which will be played on playback start - just retrieve the cursor/focus position.
behaviour changes indeed when you untie cursor/focus from playback. I've re-checked SDK and didn't find the way to get this playback-start-track number. perhaps I'm missing something, and I'll be glad if someone points me in right direction.
Title: foo_httpcontrol
Post by: dperry on 2009-03-28 21:46:04
Quote
I've always been using foobar2000 with Playback/Cursor follows playback option checked,



  heh....I've been using foobar for over 4 years and never knew you could do that. Thanks this will do fine for me.


Title: foo_httpcontrol
Post by: dperry on 2009-04-03 01:13:02
Anyone gotten 'SwitchCursor' command to work?

I'm not getting a focus change when I send SwitchCursor as the command and a track index as param1. I get the expected reaction if I pass 'Start' as the command and a track index so I don't think it's my HTTPRequest code.

using v0.82

thanks



-----never mind -------
readme.txt listed it as SwitchCursor but the sample UI uses MoveCursor which works fine.
Title: foo_httpcontrol
Post by: orian on 2009-04-03 11:09:32
Hi everyone.

I started using this plugin a few days ago and it's fantastic.

I created a mockup for an alternative design. It's still missing some bits here and there. Im not sure if I have enough time to get a fully working layout done and especially to maintain it. That's why im willing to release this under a Creative Commons Attribution-Noncommercial license  http://creativecommons.org/licenses/by-nc/3.0/ (http://creativecommons.org/licenses/by-nc/3.0/)

Title: foo_httpcontrol
Post by: odyssey on 2009-04-03 11:18:48
Ohhhhhhhh it's beauuutiful!

Does it use ajax? Oh, it's only a mockup... 
Title: foo_httpcontrol
Post by: dperry on 2009-04-03 19:53:04
Running into a small problem with the macro [PLAYLIST_JS]. With an empty playlist it resolves to an empty string which throws an error during eval().

Code: [Select]
"playlist": [PLAYLIST_JS],


throws a syntax error 
Code: [Select]
"playlist": ,


It would be great if the macro would default to [] on an empty playlist. I'm using a string replace workaround before eval() for now.

thanks.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-04 05:25:38
fixed without increasing version number.
Title: foo_httpcontrol
Post by: dperry on 2009-04-04 18:56:13
Thanks!

Anyone know how to use the commandline to move a playlist entry up or down? Move up/down by 1 or, even better, move to specific index? ie re-arrange the playlist items(not sort)? I checked into some of the documentation on commandline and it seems it might only be able to do menu commands and foobar2000 re-arranging is a UI drag and drop.

If not, any chance foo_httpcontrol can do this?

Thanks again
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-05 08:21:52
ok, it is simple enough. hope it helps
Code: [Select]
    v0.83 05 Mar
       add: Delete one or more playlist items
            cmd=Del
            param1=numbers separated by any delitemeter
       add: Move one or more active playlist items
            cmd=Move
            param1=numbers separated by any delitemeter
            param2=signed move delta
       add: adding param3=NoResponse query parameter forces component to
            skip generating request response;
Title: foo_httpcontrol
Post by: dperry on 2009-04-05 19:41:48
ok, it is simple enough. hope it helps
Code: [Select]
    v0.83 05 Mar
       add: Delete one or more playlist items
            cmd=Del
            param1=numbers separated by any delitemeter
       add: Move one or more active playlist items
            cmd=Move
            param1=numbers separated by any delitemeter
            param2=signed move delta
       add: adding param3=NoResponse query parameter forces component to
            skip generating request response;



Sweeeet! Thanks for the Add and Del changes too. I've been looping through multiple requests up til now.
Title: foo_httpcontrol
Post by: eimer on 2009-04-12 00:12:04
I have my music ripped as images (flac) with cue sheet. What is the best way to have httpcontrol display some sort of playlist browser, e.g. every album as a playlist? How should i create those lists, where should i save them (in the same folder as the image or some central folder, ...) and how do i get httpcontrol to display them? I can find my way through the javascript but i have absolutly no knowledge about the underlying mechanism the plugin and/or foobar provide.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-12 04:59:59
why would you want this hell of a lot playlists? set up foobar2000 media library. restrict media library files to *.cue and exclude *.flac. after that you can map your whole collection to a single playlist by typing ALL in component search field, or find some specific album/performer by keywords.
Title: foo_httpcontrol
Post by: dperry on 2009-04-12 10:23:15
Proof I'm not just a lurker asking for features I'll never use 

Here's a screenshot of my browser in progress. Pretty much everything is working. Still need to implement track progress and will be doing a layout with just song info (left section) and one with just song and playlist info.

thanks for the great plugin. I'll post the files when I'm done.

dave

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-12 11:18:37
looks cool
will it be possible to switch browser column off? and do you plan to add a library query field?
Title: foo_httpcontrol
Post by: eimer on 2009-04-12 14:27:58
why would you want this hell of a lot playlists? set up foobar2000 media library. restrict media library files to *.cue and exclude *.flac. after that you can map your whole collection to a single playlist by typing ALL in component search field, or find some specific album/performer by keywords.


One of my concerns is that i wanted to use the web interface with a touch-only device, without any keyboard or touchpad keyboard. I had a dropdown box in mind to select which list i want to browse (e.g. artist, album or genre), and link the selection to the next logical list (genre leads to artist or album, artist leads to album and album defines the new playlist). This is not a final decision though  The other point is that i don't really know what type of playlists and searchengines foobar respectively httpcontrol supports (my "linked" lists can be done entirely in js). Using just one playlist doesn't work too well on a small screen, so i still hang on to my idea of having several lists ... are there already defined functions to get a list of all artists, all albums, etc, that are present in the media library, out of foobar? In other words: how do i get the data i want to process via js?

Out of curiosity: I already set up the library and restricted it to *.cue - would the exclusion of *.flac make any difference?


I want to use this call for help and thank you for your plugin. With more and more of digital music transportation, multi-room etc it is essential, at least for me. Good job!
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-12 16:17:04
thanks for the explanation, now your point is perfectly clear. I'll think what can be done without introducing excessive complexity, as right now there are no handles suitable for this task present in the component.

regarding library restriction: you are right, restricting files to *.cue should be enough .
Title: foo_httpcontrol
Post by: Kev0 on 2009-04-12 17:53:30
One of my concerns is that i wanted to use the web interface with a touch-only device, without any keyboard or touchpad keyboard. I had a dropdown box in mind to select which list i want to browse (e.g. artist, album or genre), and link the selection to the next logical list (genre leads to artist or album, artist leads to album and album defines the new playlist). This is not a final decision though  The other point is that i don't really know what type of playlists and searchengines foobar respectively httpcontrol supports (my "linked" lists can be done entirely in js). Using just one playlist doesn't work too well on a small screen, so i still hang on to my idea of having several lists ... are there already defined functions to get a list of all artists, all albums, etc, that are present in the media library, out of foobar? In other words: how do i get the data i want to process via js?

Out of curiosity: I already set up the library and restricted it to *.cue - would the exclusion of *.flac make any difference?


I want to use this call for help and thank you for your plugin. With more and more of digital music transportation, multi-room etc it is essential, at least for me. Good job!



Forgive me if I'm not understanding what you require correctly, but would you not achieve what you want, simply by having maybe a "clear current playlist" option and then from there, you go to the Browser side of the httpcontrol interface, where your directory structure would be genre, artist, album and then you browse and enque to the empty playlist from there?
Title: foo_httpcontrol
Post by: dperry on 2009-04-12 18:41:55
looks cool
will it be possible to switch browser column off? and do you plan to add a library query field?


Yeah there will be 3 layout modes:
1. album art, playing track info, and display of the 2 songs in playlist before and after current.
2. same as in image but without browser
3. full display.

Hadn't thought about the query field yet but I don't see why not (as long as I can make it pretty 
Title: foo_httpcontrol
Post by: eimer on 2009-04-12 18:47:00
Forgive me if I'm not understanding what you require correctly, but would you not achieve what you want, simply by having maybe a "clear current playlist" option and then from there, you go to the Browser side of the httpcontrol interface, where your directory structure would be genre, artist, album and then you browse and enque to the empty playlist from there?


Good idea, js should be flexible enough to change the appearance the way i want it. I'll get my requirements with more details and then try to figure out how it can be done. I assume the documentation included in httpcontrol is complete?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-12 20:26:38
dperry, interesting and promising. looking forward to it

eimer, this approach, while might be perfectly workable, just don't look right for me. but whatever, why not, especially since there is no another way available (yet)
Title: foo_httpcontrol
Post by: NEMO7538 on 2009-04-13 00:40:10
Weird ... I have repeated crash with the new version and can't even start foobar now

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 0166931Ch
Access violation, operation: read, address: 093EE000h
Call path:
entry=>app_mainloop=>main_thread_callback::callback_run=>on_items_reordered
Code bytes (0166931Ch):
016692DCh:  E8 1D 8C 00 00 59 59 8B 4D F4 8B C6 5E 64 89 0D
016692ECh:  00 00 00 00 C9 C2 04 00 32 C0 C2 04 00 80 7C 24
016692FCh:  04 00 74 0C 8B 44 24 0C 8B 4C 24 08 03 C1 EB 04
0166930Ch:  8B 44 24 08 C2 0C 00 8B 44 24 04 8B 49 04 33 D2
0166931Ch:  39 04 81 0F 95 C2 8A C2 C2 04 00 8B 44 24 04 3B
0166932Ch:  41 04 72 09 3B 41 08 73 04 B0 01 EB 02 32 C0 80
0166933Ch:  79 0C 00 75 05 84 C0 0F 94 C0 C2 04 00 55 8B EC
0166934Ch:  51 8B 45 10 53 8B 5D 0C 89 4D FC 85 C0 74 28 56
Stack (0012F6E4h):
0012F6C4h:  00C5EB70 7C9D9508 77F443DD 7C9D9508
0012F6D4h:  00000004 00000000 00C5E07C 00000000
0012F6E4h:  01669375 000006FC 0E40BEE0 000006FC
0012F6F4h:  0012F760 0012FA2C 0012FA1C 0166E2C2
0012F704h:  00000001 000006FC 00000B03 004E392C
0012F714h:  100025A3 0000000C FFFFFFFF 00504CE8
0012F724h:  000011FF 0169222C 17B2AFE8 000011FF
0012F734h:  00002000 00000000 00000000 01699DC4
0012F744h:  01699EAC 016921CC 17B293C8 0000005D
0012F754h:  00000100 0000005C 00000000 0012F900
0012F764h:  016921CC 00000000 00000000 00000000
0012F774h:  00000000 016921CC 00000000 00000000
0012F784h:  00000000 0000005C 016921CC 00000000
0012F794h:  00000000 00000000 00000000 016921CC
0012F7A4h:  00000000 00000000 00000000 00000000
0012F7B4h:  7C91E900 01692C78 FFFFFFFF 7C920202
0012F7C4h:  7C92017B 00000010 7C9200A4 00000028
0012F7D4h:  00000000 00000008 7C91E900 7C920208
0012F7E4h:  093BEA08 7C920202 093D5BF8 7C9201BB
0012F7F4h:  7C9200A4 0012F82C 003C0000 7C920202
Registers:
EAX: 000006FC, EBX: 000006FC, ECX: 093EC410, EDX: 00000000
ESI: 00000B03, EDI: 00000001, EBP: 0012F6FC, ESP: 0012F6E4
Crash location: "foo_httpcontrol", loaded at 01660000h - 016A2000h

Loaded modules:
foobar2000                      loaded at 00400000h - 0053B000h
ntdll                            loaded at 7C910000h - 7C9C6000h
kernel32                        loaded at 7C800000h - 7C906000h
COMCTL32                        loaded at 77390000h - 77493000h
msvcrt                          loaded at 77BE0000h - 77C38000h
ADVAPI32                        loaded at 77DA0000h - 77E4C000h
RPCRT4                          loaded at 77E50000h - 77EE2000h
Secur32                          loaded at 77FC0000h - 77FD1000h
GDI32                            loaded at 77EF0000h - 77F39000h
USER32                          loaded at 7E390000h - 7E421000h
SHLWAPI                          loaded at 77F40000h - 77FB6000h
SHELL32                          loaded at 7C9D0000h - 7D1F5000h
ole32                            loaded at 774A0000h - 775DD000h
shared                          loaded at 10000000h - 1002A000h
UxTheme                          loaded at 5B090000h - 5B0C8000h
COMDLG32                        loaded at 76340000h - 7638A000h
MSCTF                            loaded at 74690000h - 746DC000h
foo_ui_std                      loaded at 00A60000h - 00B34000h
gdiplus                          loaded at 4EB80000h - 4ED26000h
MSIMG32                          loaded at 76310000h - 76315000h
foo_uie_quicksearch              loaded at 00B50000h - 00B96000h
foo_uie_biography                loaded at 00BC0000h - 00C3C000h
WS2_32                          loaded at 719F0000h - 71A07000h
WS2HELP                          loaded at 719E0000h - 719E8000h
foo_uie_peakmeter                loaded at 00CA0000h - 00CD3000h
foo_history                      loaded at 00D00000h - 00D1C000h
foo_quicktag                    loaded at 00D40000h - 00D7E000h
foo_vis_shpeck                  loaded at 00DA0000h - 00DDE000h
foo_cdda                        loaded at 00E00000h - 00E40000h
foo_albumlist                    loaded at 00E60000h - 00ECB000h
foo_ui_columns                  loaded at 00EF0000h - 01058000h
foo_whatsnew                    loaded at 01080000h - 010B1000h
foo_navigator                    loaded at 010E0000h - 01114000h
foo_scrobblecharts              loaded at 01140000h - 01173000h
WININET                          loaded at 77AA0000h - 77B4B000h
CRYPT32                          loaded at 779E0000h - 77A77000h
MSASN1                          loaded at 77A80000h - 77A92000h
OLEAUT32                        loaded at 770E0000h - 7716B000h
foo_lyricsdb                    loaded at 011A0000h - 011CF000h
foo_freedb2                      loaded at 011F0000h - 01231000h
foo_runcmd                      loaded at 01270000h - 012A4000h
foo_burninate                    loaded at 012D0000h - 01307000h
VERSION                          loaded at 77BD0000h - 77BD8000h
foo_pqview                      loaded at 01330000h - 01358000h
foo_uie_vis_peakmeter_spectrum  loaded at 01380000h - 013BF000h
foo_run                          loaded at 013E0000h - 0140E000h
foo_uie_trackinfo                loaded at 01430000h - 0145E000h
foo_scheduler                    loaded at 01480000h - 014EF000h
POWRPROF                        loaded at 74A40000h - 74A48000h
WINMM                            loaded at 76AE0000h - 76B0F000h
foo_masstag                      loaded at 01590000h - 015D8000h
foo_uie_albumlist                loaded at 01600000h - 0163D000h
foo_httpcontrol                  loaded at 01660000h - 016A2000h
WSOCK32                          loaded at 71A10000h - 71A1A000h
MPR                              loaded at 71A60000h - 71A72000h
foo_input_std                    loaded at 016D0000h - 01810000h
foo_rgscan                      loaded at 01830000h - 0188B000h
foo_lastfm_radio                loaded at 018B0000h - 018F5000h
foo_uie_console                  loaded at 01920000h - 0193C000h
foo_playcount                    loaded at 01960000h - 0198B000h
foo_converter                    loaded at 019B0000h - 01A1C000h
foo_dop                          loaded at 01A40000h - 01B1F000h
SETUPAPI                        loaded at 778E0000h - 779D8000h
QUARTZ                          loaded at 74780000h - 748EE000h
foo_audioscrobbler              loaded at 01B50000h - 01B80000h
foo_fileops                      loaded at 01BA0000h - 01BE6000h
foo_uie_wsh_panel_mod            loaded at 01C10000h - 01C8C000h
IMM32                            loaded at 76320000h - 7633D000h
foo_dsp_delta                    loaded at 01DE0000h - 01DFF000h
foo_dsp_std                      loaded at 01E20000h - 01E68000h
foo_uie_lyrics                  loaded at 01E90000h - 01EED000h
foo_utils                        loaded at 01F10000h - 01F89000h
SXS                              loaded at 77210000h - 772C1000h
CLBCATQ                          loaded at 76F80000h - 76FFF000h
COMRes                          loaded at 77000000h - 770D4000h
jscript                          loaded at 75BE0000h - 75C5D000h
xpsp2res                        loaded at 03060000h - 0333A000h
mscms                            loaded at 73A80000h - 73A95000h
WINSPOOL                        loaded at 72F50000h - 72F76000h
mswsock                          loaded at 71990000h - 719D0000h
DNSAPI                          loaded at 76ED0000h - 76EF7000h
rasadhlp                        loaded at 76F70000h - 76F76000h
hnetcfg                          loaded at 62E40000h - 62E99000h
wshtcpip                        loaded at 719D0000h - 719D8000h
WINTRUST                        loaded at 76BE0000h - 76C0E000h
IMAGEHLP                        loaded at 76C40000h - 76C68000h
DBGHELP                          loaded at 5D3F0000h - 5D491000h

Stack dump analysis:
Address: 01669375h, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 0166E2C2h, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 004E392Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 100025A3h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000000h)
Address: 00504CE8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0169222Ch, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 01699DC4h, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 01699EACh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 016921CCh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 016921CCh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 016921CCh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 016921CCh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 016921CCh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 7C91E900h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "strchr" (+00000113h)
Address: 01692C78h, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 7C920202h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C92017Bh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+000000D7h)
Address: 7C9200A4h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 7C91E900h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "strchr" (+00000113h)
Address: 7C920208h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 7C920202h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C9201BBh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9200A4h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 7C920202h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C9201BBh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C91E900h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "strchr" (+00000113h)
Address: 7C920208h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 7C921066h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9201BBh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9200A4h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 77F46A7Ah, location: "SHLWAPI", loaded at 77F40000h - 77FB6000h
Symbol: "Ordinal45" (+0000006Fh)
Address: 004A12DAh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 77F46A7Ah, location: "SHLWAPI", loaded at 77F40000h - 77FB6000h
Symbol: "Ordinal45" (+0000006Fh)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C92082Ch, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000002CDh)
Address: 7C92082Ch, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000002CDh)
Address: 7C92003Dh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 0101E900h, location: "foo_ui_columns", loaded at 00EF0000h - 01058000h
Address: 0101E900h, location: "foo_ui_columns", loaded at 00EF0000h - 01058000h
Address: 0101E900h, location: "foo_ui_columns", loaded at 00EF0000h - 01058000h
Address: 004174EBh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00417500h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0041933Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 016899DCh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 004E392Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 016645AEh, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 01699DB0h, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 016921C4h, location: "foo_httpcontrol", loaded at 01660000h - 016A2000h
Address: 00459A6Bh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0050715Bh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C3D00h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0050715Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00462F00h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C3050h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0045FABEh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00504CE8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0050715Bh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C91E3h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00460D4Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004142C5h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004141A1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C6FB1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0041439Eh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00504588h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C2A7Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00504588h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C7F09h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00413EC9h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD974h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C917Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004145EAh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00507ABCh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 01967D8Ah, location: "foo_playcount", loaded at 01960000h - 0198B000h
Address: 0043CB39h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E0C4Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00B15B04h, location: "foo_ui_std", loaded at 00A60000h - 00B34000h
Address: 004DD574h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00507ABCh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C352Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CCAEh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E398734h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetDC" (+0000006Dh)
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E398816h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetDC" (+0000014Fh)
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E3C048Fh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 7E3C048Fh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 7E398830h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetDC" (+00000169h)
Address: 7E3989CDh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetWindowLongW" (+00000127h)
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E3AB19Ch, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DestroyWindow" (+00000000h)
Address: 7E3C048Fh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 7E3989F0h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 7E398A10h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 0043A70Dh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 013AB19Ch, location: "foo_uie_vis_peakmeter_spectrum", loaded at 01380000h - 013BF000h
Address: 0043B1E4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D9DF4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D9DF4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004EA0D4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004EA0B8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7C91E900h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "strchr" (+00000113h)
Address: 7C9201C0h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C9201BBh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004B6FB3h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B1650h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B6FB3h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B5408h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 004E075Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CB0C1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E075Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043B426h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9C1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9BBh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D1BC0h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CFD20h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B1650h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9BBh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9CFh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CFD20h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CB24Dh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B151Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B9446h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B1650h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7C817067h, location: "kernel32", loaded at 7C800000h - 7C906000h
Symbol: "RegisterWaitForInputIdle" (+00000049h)
Address: 7C839AC0h, location: "kernel32", loaded at 7C800000h - 7C906000h
Symbol: "ValidateLocale" (+000002B0h)
Address: 7C817070h, location: "kernel32", loaded at 7C800000h - 7C906000h
Symbol: "RegisterWaitForInputIdle" (+00000052h)
Address: 004B1585h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004F0044h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00530057h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B0063h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00530022h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00410072h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004F0044h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00530057h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D002Eh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h

Version info:
foobar2000 v0.9.6.3
UNICODE
Windows 5.1


Additional info:
Standard DSP Array 1.0  (foo_dsp_std)
WSH Panel Mod 1.1.4  (foo_uie_wsh_panel_mod)
Masstagger 1.8 beta 1  (foo_masstag)
Audio CD Writer 2.0.1  (foo_burninate)
Feature Watcher 1.0.4  (foo_whatsnew)
freedb Tagger 0.6.1  (foo_freedb2)
Biography View 0.2.4  (foo_uie_biography)
Navigator 0.63  (foo_navigator)
History 0.2  (foo_history)
Lyric Show Panel 0.3.3.8 [Dec 11 2008 - 13:46:54]  (foo_uie_lyrics)
Last.fm Chart Player 0.2.3  (foo_scrobblecharts)
Default User Interface 0.9.5  (foo_ui_std)
CD Audio Decoder 2.1.4  (foo_cdda)
Columns UI 0.3.6.8  (foo_ui_columns)
iPod manager 0.6.4.1  (foo_dop)
Playback Statistics 2.1.8  (foo_playcount)
HTTP Control 0.83  (foo_httpcontrol)
Scheduler 3.53  (foo_scheduler)
File Operations 2.1.1  (foo_fileops)
Standard Input Array 1.0  (foo_input_std)
Quick Search Toolbar 2.8l  (foo_uie_quicksearch)
Album list panel 0.3.4  (foo_uie_albumlist)
Playlist Tools 0.6.2 beta 3  (foo_utils)
foo_lyricsdb 0.0.7 beta 5  (foo_lyricsdb)
Album List 4.3  (foo_albumlist)
Track info panel 0.8  (foo_uie_trackinfo)
Last.fm Radio 0.5.2  (foo_lastfm_radio)
Quick Tagger 1.0  (foo_quicktag)
Run Command 1.0 beta 3  (foo_runcmd)
Noise Sharpening DSP 1.0.0  (foo_dsp_delta)
ReplayGain Scanner 2.0.8  (foo_rgscan)
Run services 0.3.4  (foo_run)
Converter 1.2  (foo_converter)
Peakmeter Spectrum Visualisation 0.2.0.0 beta  (foo_uie_vis_peakmeter_spectrum)
Console panel 0.3  (foo_uie_console)
Shpeck - Winamp vis plugins wrapper 0.3.3  (foo_vis_shpeck)
foobar2000 core 0.9.6.3  (Core)
Peakmeter Panel 0.0.4.2 beta  (foo_uie_peakmeter)
Audioscrobbler 1.3.16  (foo_audioscrobbler)

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-13 04:18:41
NEMO7538, I admit don't know what exactly causes this. try debug (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol.dll) build when you feel like it and post its crash log.
Title: foo_httpcontrol
Post by: Yirkha on 2009-04-13 10:51:07
You get pointer to permutation buffer and its length in [font= "Courier New"]on_items_reordered()[/font], but pass further only [font= "Courier New"]bit_array_order_changed[/font] created on the buffer. Seems to me like you use length of the active playlist instead of the length of the reorder buffer then, reading past the end from unallocated memory.
Title: foo_httpcontrol
Post by: NEMO7538 on 2009-04-13 12:46:58
NEMO7538, I admit don't know what exactly causes this. try debug (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol.dll) build when you feel like it and post its crash log.

I tried but I got this message:
[blockquote]Failed to load DLL: foo_httpcontrol.dll
Reason: Not a valid Win32 application.
[/blockquote]
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-13 15:36:08
Yirkha, thank you. you were right, I traversed bit_array_order_changed by find_first() find_next() and wrong t_size max value. I find it amusing that this disaster worked so long (at least for me) without noticeble glitches.

NEMO7538, weird. it loads fine here. anyway, I've updated 0.83 version, check if it's ok now.
Title: foo_httpcontrol
Post by: NEMO7538 on 2009-04-13 15:41:04
It seems to load without problem now. Thanks.
Title: foo_httpcontrol
Post by: NEMO7538 on 2009-04-18 19:47:57
Well not really .....
Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 012F9336h
Access violation, operation: read, address: 09630000h
Call path:
entry=>app_mainloop=>main_thread_callback::callback_run=>on_items_reordered
Code bytes (012F9336h):
012F92F6h:  E8 36 8C 00 00 59 59 8B 4D F4 8B C6 5E 64 89 0D
012F9306h:  00 00 00 00 C9 C2 04 00 32 C0 C2 04 00 80 7C 24
012F9316h:  04 00 74 0C 8B 44 24 0C 8B 4C 24 08 03 C1 EB 04
012F9326h:  8B 44 24 08 C2 0C 00 8B 44 24 04 8B 49 04 33 D2
012F9336h:  39 04 81 0F 95 C2 8A C2 C2 04 00 8B 44 24 04 3B
012F9346h:  41 04 72 09 3B 41 08 73 04 B0 01 EB 02 32 C0 80
012F9356h:  79 0C 00 75 05 84 C0 0F 94 C0 C2 04 00 55 8B EC
012F9366h:  51 8B 45 10 53 8B 5D 0C 89 4D FC 85 C0 74 28 56
Stack (0013F714h):
0013F6F4h:  00E0DCDC 7C9D94F8 77F443DD 7C9D94F8
0013F704h:  00000004 00000000 00E0D1E8 00000000
0013F714h:  012F938F 00005FDA 0013FA5C 00005FDA
0013F724h:  00000000 0013FA5C 0013FA48 012FE2F5
0013F734h:  00000001 00005FDA FFFFA258 004E392C
0013F744h:  100025A3 0000000C 00504CE8 00017EC3
0013F754h:  00000232 0132222C 050A0020 00017EC3
0013F764h:  00020000 00000000 00000000 01329DC4
0013F774h:  01329EAC 013221CC 16A536B8 0000005D
0013F784h:  00000200 0000005C 00000000 00000000
0013F794h:  013221CC 00000000 00000000 00000000
0013F7A4h:  00000000 013221CC 00000000 00000000
0013F7B4h:  00000000 0000005C 013221CC 00000000
0013F7C4h:  00000000 00000000 00000000 013221CC
0013F7D4h:  00000000 00000000 00000000 00000000
0013F7E4h:  003C0178 01322C78 0971FC08 7C920202
0013F7F4h:  09637000 00000000 003C0178 003C01B8
0013F804h:  00000002 0000009E 00000020 003C02D8
0013F814h:  003C0208 7C920202 00000001 00000000
0013F824h:  09637008 0013F85C 003C0000 7C920202
Registers:
EAX: 00005FDA, EBX: 00005FDA, ECX: 09618098, EDX: 00000000
ESI: 00005DA8, EDI: FFFFFFFF, EBP: 0013F72C, ESP: 0013F714
Crash location: "foo_httpcontrol", loaded at 012F0000h - 01332000h

Loaded modules:
foobar2000                      loaded at 00400000h - 0053B000h
ntdll                            loaded at 7C910000h - 7C9C6000h
kernel32                        loaded at 7C800000h - 7C906000h
COMCTL32                        loaded at 77390000h - 77493000h
msvcrt                          loaded at 77BE0000h - 77C38000h
ADVAPI32                        loaded at 77DA0000h - 77E4C000h
RPCRT4                          loaded at 77E50000h - 77EE2000h
Secur32                          loaded at 77FC0000h - 77FD1000h
GDI32                            loaded at 77EF0000h - 77F39000h
USER32                          loaded at 7E390000h - 7E421000h
SHLWAPI                          loaded at 77F40000h - 77FB6000h
SHELL32                          loaded at 7C9D0000h - 7D1F5000h
ole32                            loaded at 774A0000h - 775DD000h
shared                          loaded at 10000000h - 1002A000h
UxTheme                          loaded at 5B090000h - 5B0C8000h
COMDLG32                        loaded at 76340000h - 7638A000h
IMM32                            loaded at 76320000h - 7633D000h
MSCTF                            loaded at 74690000h - 746DC000h
apphelp                          loaded at 77B50000h - 77B72000h
msctfime                        loaded at 75140000h - 7516E000h
foo_uie_trackinfo                loaded at 00A60000h - 00A8E000h
foo_audioscrobbler              loaded at 00AA0000h - 00AD0000h
WS2_32                          loaded at 719F0000h - 71A07000h
WS2HELP                          loaded at 719E0000h - 719E8000h
foo_quicktag                    loaded at 00B30000h - 00B6E000h
foo_run                          loaded at 00B90000h - 00BBE000h
foo_input_std                    loaded at 00BE0000h - 00D20000h
foo_dsp_std                      loaded at 00D40000h - 00D88000h
foo_burninate                    loaded at 00DB0000h - 00DE7000h
VERSION                          loaded at 77BD0000h - 77BD8000h
foo_uie_albumlist                loaded at 00E10000h - 00E4D000h
foo_lyricsdb                    loaded at 00E70000h - 00E9F000h
OLEAUT32                        loaded at 770E0000h - 7716B000h
WININET                          loaded at 77AA0000h - 77B4B000h
CRYPT32                          loaded at 779E0000h - 77A77000h
MSASN1                          loaded at 77A80000h - 77A92000h
foo_pqview                      loaded at 00EC0000h - 00EE8000h
foo_navigator                    loaded at 00F10000h - 00F44000h
foo_ui_columns                  loaded at 00F80000h - 010E9000h
gdiplus                          loaded at 4EB80000h - 4ED26000h
foo_masstag                      loaded at 01120000h - 01168000h
foo_cdda                        loaded at 01190000h - 011D0000h
foo_converter                    loaded at 011F0000h - 0125C000h
foo_fileops                      loaded at 01280000h - 012C6000h
foo_httpcontrol                  loaded at 012F0000h - 01332000h
WSOCK32                          loaded at 71A10000h - 71A1A000h
MPR                              loaded at 71A60000h - 71A72000h
foo_dsp_delta                    loaded at 01360000h - 0137F000h
foo_lastfm_radio                loaded at 013A0000h - 013E5000h
foo_whatsnew                    loaded at 01410000h - 01441000h
foo_ui_std                      loaded at 01470000h - 01544000h
MSIMG32                          loaded at 76310000h - 76315000h
foo_uie_biography                loaded at 01570000h - 015EC000h
foo_uie_peakmeter                loaded at 01610000h - 01643000h
foo_albumlist                    loaded at 01670000h - 016DB000h
foo_uie_wsh_panel_mod            loaded at 01700000h - 0177C000h
WINMM                            loaded at 76AE0000h - 76B0F000h
foo_dop                          loaded at 01960000h - 01A3F000h
SETUPAPI                        loaded at 778E0000h - 779D8000h
QUARTZ                          loaded at 74780000h - 748EE000h
foo_uie_vis_peakmeter_spectrum  loaded at 01A70000h - 01AAF000h
foo_runcmd                      loaded at 01AD0000h - 01B04000h
foo_uie_quicksearch              loaded at 01B30000h - 01B76000h
foo_uie_lyrics                  loaded at 01BA0000h - 01BFD000h
foo_playcount                    loaded at 01C20000h - 01C4B000h
foo_scrobblecharts              loaded at 01C70000h - 01CA3000h
foo_uie_console                  loaded at 01CD0000h - 01CEC000h
foo_vis_shpeck                  loaded at 01D10000h - 01D4E000h
foo_out_asio                    loaded at 01D70000h - 01DA6000h
foo_freedb2                      loaded at 01DD0000h - 01E11000h
foo_history                      loaded at 01E40000h - 01E5C000h
foo_rgscan                      loaded at 01E80000h - 01EDB000h
foo_utils                        loaded at 01F00000h - 01F79000h
foo_scheduler                    loaded at 01FA0000h - 0200F000h
POWRPROF                        loaded at 74A40000h - 74A48000h
SXS                              loaded at 77210000h - 772C1000h
CLBCATQ                          loaded at 76F80000h - 76FFF000h
COMRes                          loaded at 77000000h - 770D4000h
jscript                          loaded at 75BE0000h - 75C5D000h
xpsp2res                        loaded at 042D0000h - 045AA000h
mswsock                          loaded at 71990000h - 719D0000h
DNSAPI                          loaded at 76ED0000h - 76EF7000h
rasadhlp                        loaded at 76F70000h - 76F76000h
hnetcfg                          loaded at 62E40000h - 62E99000h
wshtcpip                        loaded at 719D0000h - 719D8000h
WINTRUST                        loaded at 76BE0000h - 76C0E000h
IMAGEHLP                        loaded at 76C40000h - 76C68000h
mscms                            loaded at 73A80000h - 73A95000h
WINSPOOL                        loaded at 72F50000h - 72F76000h
mausbasi                        loaded at 17CF0000h - 17D19000h
winrnr                          loaded at 76F60000h - 76F68000h
WLDAP32                          loaded at 76F10000h - 76F3D000h
DBGHELP                          loaded at 5D3F0000h - 5D491000h

Stack dump analysis:
Address: 012F938Fh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 012FE2F5h, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 004E392Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 100025A3h, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uCallStackTracker::uCallStackTracker" (+00000000h)
Address: 00504CE8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0132222Ch, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 01329DC4h, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 01329EACh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 013221CCh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 013221CCh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 013221CCh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 013221CCh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 013221CCh, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 01322C78h, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 7C920202h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C920202h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C920202h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000015Eh)
Address: 7C91E900h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "strchr" (+00000113h)
Address: 7C920208h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000164h)
Address: 7C921066h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+00000B07h)
Address: 7C9201BBh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 7C9200A4h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C92082Ch, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000002CDh)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C92082Ch, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000002CDh)
Address: 7C92082Ch, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000002CDh)
Address: 7C920A16h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "wcsncpy" (+000004B7h)
Address: 7C92003Dh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlFreeHeap" (+00000130h)
Address: 0101E900h, location: "foo_ui_columns", loaded at 00F80000h - 010E9000h
Address: 0101E900h, location: "foo_ui_columns", loaded at 00F80000h - 010E9000h
Address: 0101E900h, location: "foo_ui_columns", loaded at 00F80000h - 010E9000h
Address: 004174EBh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00417500h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0041933Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 01319A1Ch, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 012F45B3h, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 01329DB0h, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 013221C4h, location: "foo_httpcontrol", loaded at 012F0000h - 01332000h
Address: 00459A6Bh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0050715Bh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C3D00h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0050715Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00462F00h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C3050h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0045FABEh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00504CE8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0050715Bh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0045F9CEh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C91E3h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00460D4Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004142C5h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0040B800h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004141A1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C6FB1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00414011h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00504588h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD998h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 01013EF2h, location: "foo_ui_columns", loaded at 00F80000h - 010E9000h
Address: 004C7F5Dh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004145D8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00507ABCh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CB39h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E0C4Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004DD574h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00507ABCh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004C352Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CCAEh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E398734h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetDC" (+0000006Dh)
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E398816h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetDC" (+0000014Fh)
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E3C048Fh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 7E3C048Fh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 7E398830h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetDC" (+00000169h)
Address: 7E3989CDh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetWindowLongW" (+00000127h)
Address: 0043CC8Fh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7E3AB19Ch, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DestroyWindow" (+00000000h)
Address: 7E3C048Fh, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DeregisterShellHookWindow" (+000001CFh)
Address: 7E3989F0h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "GetWindowLongW" (+0000014Ah)
Address: 7E398A10h, location: "USER32", loaded at 7E390000h - 7E421000h
Symbol: "DispatchMessageW" (+0000000Fh)
Address: 0043A70Dh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 013AB19Ch, location: "foo_lastfm_radio", loaded at 013A0000h - 013E5000h
Address: 0043B1E4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D9DF4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D9DF4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004EA0D4h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004EA0B8h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7C91E900h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "strchr" (+00000113h)
Address: 7C9201C0h, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+0000011Ch)
Address: 7C9201BBh, location: "ntdll", loaded at 7C910000h - 7C9C6000h
Symbol: "RtlAllocateHeap" (+00000117h)
Address: 004B6FB3h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B1650h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B6FB3h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B5408h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 1000258Fh, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000C8h)
Address: 004E075Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CB0C1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E075Ch, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0043B426h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9C1h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9BBh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D1BC0h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CFD20h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B1650h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9BBh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004AF9CFh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CFD20h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004CB24Dh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B151Ah, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004B1650h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 7C817067h, location: "kernel32", loaded at 7C800000h - 7C906000h
Symbol: "RegisterWaitForInputIdle" (+00000049h)
Address: 7C839AC0h, location: "kernel32", loaded at 7C800000h - 7C906000h
Symbol: "ValidateLocale" (+000002B0h)
Address: 7C817070h, location: "kernel32", loaded at 7C800000h - 7C906000h
Symbol: "RegisterWaitForInputIdle" (+00000052h)
Address: 004B1585h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004F0044h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00530057h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 01C91029h, location: "foo_scrobblecharts", loaded at 01C70000h - 01CA3000h
Address: 004B0063h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00530022h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 01C91029h, location: "foo_scrobblecharts", loaded at 01C70000h - 01CA3000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00410072h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004E0049h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004F0044h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00530057h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 004D002Eh, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 00500069h, location: "foobar2000", loaded at 00400000h - 0053B000h
Address: 0044002Eh, location: "foobar2000", loaded at 00400000h - 0053B000h

Version info:
foobar2000 v0.9.6.3
UNICODE
Windows 5.1


Additional info:
Lyric Show Panel 0.3.3.8 [Dec 11 2008 - 13:46:54]  (foo_uie_lyrics)
File Operations 2.1.1  (foo_fileops)
WSH Panel Mod 1.1.5  (foo_uie_wsh_panel_mod)
Peakmeter Panel 0.0.4.2 beta  (foo_uie_peakmeter)
ASIO support 1.2.7  (foo_out_asio)
History 0.2  (foo_history)
CD Audio Decoder 2.1.4  (foo_cdda)
Converter 1.2  (foo_converter)
Standard Input Array 1.0  (foo_input_std)
Audioscrobbler 1.3.16  (foo_audioscrobbler)
ReplayGain Scanner 2.0.8  (foo_rgscan)
Run Command 1.0 beta 3  (foo_runcmd)
Standard DSP Array 1.0  (foo_dsp_std)
Noise Sharpening DSP 1.0.0  (foo_dsp_delta)
Last.fm Chart Player 0.2.3  (foo_scrobblecharts)
Peakmeter Spectrum Visualisation 0.2.0.0 beta  (foo_uie_vis_peakmeter_spectrum)
Track info panel 0.8  (foo_uie_trackinfo)
Biography View 0.2.4  (foo_uie_biography)
Album list panel 0.3.4  (foo_uie_albumlist)
Columns UI 0.3.6.9  (foo_ui_columns)
Album List 4.3  (foo_albumlist)
HTTP Control 0.83  (foo_httpcontrol)
iPod manager 0.6.4.1  (foo_dop)
Default User Interface 0.9.5  (foo_ui_std)
Last.fm Radio 0.5.2  (foo_lastfm_radio)
freedb Tagger 0.6.1  (foo_freedb2)
Quick Search Toolbar 2.8l  (foo_uie_quicksearch)
Navigator 0.63  (foo_navigator)
Audio CD Writer 2.0.1  (foo_burninate)
Scheduler 3.53  (foo_scheduler)
Playback Statistics 2.1.8  (foo_playcount)
Masstagger 1.8 beta 1  (foo_masstag)
foo_lyricsdb 0.0.7 beta 5  (foo_lyricsdb)
Feature Watcher 1.0.4  (foo_whatsnew)
Quick Tagger 1.0  (foo_quicktag)
Shpeck - Winamp vis plugins wrapper 0.3.3  (foo_vis_shpeck)
Playlist Tools 0.6.2 beta 3  (foo_utils)
Run services 0.3.4  (foo_run)
Console panel 0.3  (foo_uie_console)
foobar2000 core 0.9.6.3  (Core)

Title: foo_httpcontrol
Post by: foo_peter on 2009-04-19 08:28:45
Oblikoamorale Thank you for the fine and very useful http_control
it runs and runs and runs for more than a year here
Now get in line Troubleshooter

Code: [Select]
 quoteThe following components found on your system are known to be problematic and should be either uninstalled or updated to their latest versions:

foo_httpcontrol.dll : HTTP Control 0.83
Reason: Repeated crash reports.
Download the latest version here


Am I now a bit confused? I have seen all sides, and after more than 1 year, only two people but now the report?
then most likely all the plugin's in the report appear to have all had at least 1 crash!

which I was very confused..
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-19 15:07:04
Code: [Select]
    v0.84 19 Apr
       add: user definable sort pattern for autoplaylist;
       fix: calling autoplaylist creator with null sort pattern argument crashed
            recent foobar2000 versions;
       fix: crashes in certain playlist callbacks situations;
Title: foo_httpcontrol
Post by: foo_peter on 2009-04-19 15:23:00
Oblikoamorale
Thank you for this quick job for as much joy and fun in this.

(http://img160.imageshack.us/my.php?image=loveisblue.jpg)
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-25 18:09:16
Code: [Select]
    v0.85 25 Apr
       add: stop after queue ability: Playback main menu checkbox,
            SAQ cmd and [SAQ] macro;
       add: Enqueue one or more playlist items:
            cmd=EnqueueTrack
            param1=numbers separated by any delitemeter;
       add: Dequeue one or more playlist items:
            cmd=DequeueTrack
            param1=numbers separated by any delitemeter;
       add: experimental media library browser based on up to three
            user-definable metadata grouping fields;
       ---: recompiled against SDK-2008-11-29;
Title: foo_httpcontrol
Post by: RavinGoneBad on 2009-04-26 06:57:50
I just found this the other day and this component and the whole 'ipod touch as a remote' just looks great.
simply amazing component! I'm lookin all over the net for internet enabled handheld devices.

Anyway, as for Aurics' ipod touch webui, I've tweaked it a bit
available here (http://www.mediafire.com/download.php?azyvvnjvztl)
added: Clear playlist option; playlist kept growing and growing without an option to remove things remotely.
tweak: EnqueueDir changed to EnqueueDirSubdirs on the browse pane; alleviates artist wide playlist additions, I'll admit it isn't a good idea on the root directory.
tweak: hArt and albumArt only forced to width; respects aspect ratio of the image
tweak: other misc things like disc.tracknumber and adjusting the interface for it (look at readme.txt for playlist row change)

There are some issues though
critical
i1) quotation marks in the ARTIST name break the playlist view; had to manually remove it from the playlist in foobar and refresh, Clear then Refresh alleviates it
cosmetic
i2) characters such as ë and ü show up as ë and lü on the browse view directory header
i3) play/pause buttons show black squares on buttonpress
i4) albumArt pane doesn't change when it switches to a new album

some feature requests
fr1) albumArt view can we have it vertical-aligned somehow(center/middle digipack art between header and buttons). I was trying to do this myself (0 years of experience with html/css/js)
fr2) remembers where it left off on the browse pane, scroll bar and directory wise
fr3) progress bar and volume control, perhaps on the scrollbar-less albumArt pane
fr4) refresh playlist on enqueue; Play, EmptyPlaylist and Shuffle seem to have their own refresh

foo_httpcontrol 0.85 has arrived!
I have an Issue with the Query step of %genre%, in my media library I use this multiple value field to a nice extent (avg. ~4 values) and the Query gives me 145 results when the Facets component only shows 47
e.g Electronic; Glitch; Hip Hop shows up as "Electronic, Glitch, Hip Hop" and querying Electronic, Glitch or Hip Hop doesn't list this or other multiple value albums.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-26 07:35:24
RavinGoneBad, yep, multiple metadata field values are not supported (yet). other than that, does the query work as it supposed to?
Title: foo_httpcontrol
Post by: NEMO7538 on 2009-04-26 08:07:27
The query seems to work as expected. However I think it should not change the current playlist (dangerous) but rather use its own playlist (with user definable name). I tried "Send results to different playlist" but it generates a new playlist each time a new query is used which is slightly annoying.

Interesting development anyway !
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-26 19:45:11
do you mean it keeps adding a new playlist every time you do query? both createsimpleautoplaylist and query commands won't add playlist unless there are no playlist named "Query" exist.
Title: foo_httpcontrol
Post by: NEMO7538 on 2009-04-26 20:29:09
do you mean it keeps adding a new playlist every time you do query? both createsimpleautoplaylist and query commands won't add playlist unless there are no playlist named "Query" exist.

In some cases it creates several "Query" playlists .. not always. It happens for example when you change the
"Keep autoplaylist" flag.
Title: foo_httpcontrol
Post by: jmccrohan on 2009-04-27 00:38:29
Could someone be so kind as to mirror the latest version of the plugin for me please?

http://atz.ath.cx:8282/foo_httpcontrol/foo...ontrol_0.85.rar (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol_0.85.rar) seems to be timing out.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-04-27 04:13:03
NEMO7538, confirmed and fixed. and other cases are?
Title: foo_httpcontrol
Post by: Hancoque on 2009-04-27 11:50:31
http://atz.ath.cx:8282/foo_httpcontrol/foo...ontrol_0.85.rar (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol_0.85.rar) seems to be timing out.

I'm experiencing the same timeout issue.
Title: foo_httpcontrol
Post by: viktor on 2009-04-27 16:40:40
i'm maintaining a small foobar component mirror here (foo_httpcontrol included):

http://birkak.extra.hu/lister.php?dir=/foobar2000/ (http://birkak.extra.hu/lister.php?dir=/foobar2000/)

Title: foo_httpcontrol
Post by: Hancoque on 2009-04-27 17:10:49
Now it's working again. But thanks for the mirror.
Title: foo_httpcontrol
Post by: kruji on 2009-04-27 18:24:06
i get the following error:

Quote
Forbidden
You don't have permission to access to this document on this server.


using vista + windows-firewall. any ideas?


//edit (solved): remote ip was wrong. localhost =/= 127.0.0.1 (?)
Title: foo_httpcontrol
Post by: eli2k on 2009-05-06 06:47:25
I tried to use the Del command with a number associated with the index of the current playlist item, but it doesn't seem to do anything. I'm getting the index by calling item_focus, which seems to return the number that I am looking for. The overlying code is based off Auric's original template, and I've been tweaking it around to add things I would like to have. Has anyone gotten it to work, or am I just doing something wrong? Thanks.

update: got it to work after specifying the third parameter, the playlist index...

I gave HELPER2 %artist% - %title%, but the dash, or any other text I put in there always disappears? What is the method you use to separate artist from track? Thanks.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-06 16:37:53
eli2k, Del uses active playlist to remove selected item(s) if you don't specify playlist index. perhaps a different playlist was active while you were trying to remove items from the other one?

regarding helper2 issue - sorry, it looks like due to the recently introduced bug in rendering module, helper2 and helper3 were always replaced with helper1. fixed without increasing component version.
Title: foo_httpcontrol
Post by: eli2k on 2009-05-07 00:00:56
eli2k, Del uses active playlist to remove selected item(s) if you don't specify playlist index. perhaps a different playlist was active while you were trying to remove items from the other one?


Thanks for the quick fix! I was on the active playlist on foobar, trying to delete it and staring at the foobar screen to see if it would be deleted, but didn't seem to work until I told it which playlist to choose. Works fine, though!

Is it possible to send a Mute command to foobar with your plugin at the moment?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-07 04:03:20
Thanks for the quick fix! I was on the active playlist on foobar, trying to delete it and staring at the foobar screen to see if it would be deleted, but didn't seem to work until I told it which playlist to choose. Works fine, though!
I cannot reproduce such behaviour. can you show the exact request which doesn't delete item(s)? the easiest way to see it is "Log access to console" checkbox in component preferences.
Is it possible to send a Mute command to foobar with your plugin at the moment?
nope. but it's not that hard to code in asynchronious interface, is it?
Title: foo_httpcontrol
Post by: eli2k on 2009-05-07 07:16:00
I cannot reproduce such behaviour. can you show the exact request which doesn't delete item(s)? the easiest way to see it is "Log access to console" checkbox in component preferences.

nope. but it's not that hard to code in asynchronious interface, is it?


This is the command I used:

Code: [Select]
onclick=sendCommand('Del'," + fooVars.item_focus + "," + fooVars.playlist_current + ");


Without the fooVars.playlist_current variable, the command did not do anything. I'm assuming if it would delete at least delete something without the third parameter, but it did not seem to be doing that.

I'm not sure what you mean to code with an asynh interface, but I don't see how I can interface with foobar without being able to send a Mute command to your plugin first, then to foobar. But it's not too important.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-07 09:02:59
This is the command I used:
Code: [Select]
onclick=sendCommand('Del'," + fooVars.item_focus + "," + fooVars.playlist_current + ");

Without the fooVars.playlist_current variable, the command did not do anything. I'm assuming if it would delete at least delete something without the third parameter, but it did not seem to be doing that.
I'm not familiar with the internal details of this UI you are working on. all I know is calling http://your_ip:your_port/?cmd=Del&param1=N (http://your_ip:your_port/?cmd=Del&param1=N) deletes item number N of active playlist. if you want to find out what's really happening in your case, you have to know what command url your UI generates. log access to console will help you.

I'm not sure what you mean to code with an asynh interface, but I don't see how I can interface with foobar without being able to send a Mute command to your plugin first, then to foobar. But it's not too important.
well, it's simple. before muting you have to store current volume level in any JS variable. after that, issue command that sets volume level to 0. that's it, sound is muted. to un-mute sound and restore volume to pre-muted state, issue command changing volume level to value stored in that variable.
and since the UI is asynchronious (at least it seems so), this variable won't get lost between commands issued by UI.
Title: foo_httpcontrol
Post by: sbp on 2009-05-13 22:02:40
Hi sorry for this very noob question - but I couldn't find the answer.

The Ipod look that Ravingonebad tweaked looks very good. My question is: is this only for use on an Ipod, or can it be used on a windows based PDA, and then just looks like an Ipod?

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-14 04:12:44
you never know until you try. my guess is as Windows Mobile Internet Explorer capabilities are *very* limited, it won't work. perhaps Opera Mobile will perform better.
Title: foo_httpcontrol
Post by: splint3r on 2009-05-14 07:28:33
I noticed an issue that comes up when swapping playlists, that is that browser client doesnt know that the currently playing track is not on the new playlist, along the same lines is that there is no way to jump back to the playlist that has the currently playing track on it (if you dont know what list that is).

Is there any possibility of a solution for this?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-14 08:01:40
I noticed an issue that comes up when swapping playlists, that is that browser client doesnt know that the currently playing track is not on the new playlist, along the same lines is that there is no way to jump back to the playlist that has the currently playing track on it (if you dont know what list that is).
Is there any possibility of a solution for this?

yeah, it looks like there is something wrong with playing track indication when swiching playlists. strangest thing is that I've seen it working properly before
and no, there are no macro standing for playing playlist index, as there hasn't been any demand for it. anyways, fb2k state macros became a bit messy, I guess it's time to do a little cleanup.
Title: foo_httpcontrol
Post by: RavinGoneBad on 2009-05-15 03:28:48
Thanks for supporting multiple meta-data fields  , no more 'query's filling up the playlist manager too, very good 

I did find a bug(?) tho with the multiple fields, they don't include/exclude each other.
steps example...
Code: [Select]
$meta_sep(genre,;) -> $meta_sep(genre,;) -> %album artist% '['%date%']' %album%

Selecting Ambient gives 110 results then... selecting Downtempo next gives 88 results!
(Facets: if you select them both gives 156, ambient and downtempo results are the same 110 and 88)
Perhaps I'm using this in the wrong way or it wasn't designed for inclusion.
Facets doesn't have the ability to exclude things either, like filtering for things that only share two tags x and y
side note: 47 genre results on the 1st step, selecting Ambient leaves me with 17 results for my next choice so it must know what albums share x and y tags right?
in Facets typing out 'ambient downtempo' does exclude everything else and shows only 45 results...
I didn't know about this $meta_sep(X,Y), $meta_sep(X,Y,Z) before! doesn't seem to work like it does here in other components, that fine tho, works for us  , ill fiddle with this more later


cosmetic type request that emulates how the album list panel works
mock-up (http://i43.tinypic.com/11uujk6.png)
Code: [Select]
$meta_sep(genre,;) -> $meta_sep(genre,;) -> [%album artist%]|'['%date%']' %album%

I think this would give the ability to do 'node' type addition, could be helpful.
  can't think of anything else...
oh and you cant use the query drop-down box to go through what you've searched, that could be cool

forgive all my ramblings, I'm just too excited to deliver this in a well thought out manner
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-15 11:43:34
RavinGoneBad, weird! it shouldn't behave the way you described. step filters are supposed to be connected with logical 'and' between themselves (and I thought they are). I'll check what's going on later.

Quote
oh and you cant use the query drop-down box to go through what you've searched, that could be cool
uhh, I don't get it. what do you mean?

by the way, thanks for feedback!
Title: foo_httpcontrol
Post by: RavinGoneBad on 2009-05-15 15:44:30
My only step
Code: [Select]
%album artist% '['%date%']' %album%

Search via the text input right? well it lists all of my library anyway in the drop down menu
examples underlined (http://i39.tinypic.com/2iu88ly.png)

I dunno if they're suppose to work with each other or they're separate
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-15 16:03:43
I dunno if they're suppose to work with each other or they're separate
yes, they aren't connected. perhaps it will be better to connect them indeed. I have to think about that.
Title: foo_httpcontrol
Post by: -katalyst- on 2009-05-18 13:05:10
I love you for making this plugin oblikoamorale 
Title: foo_httpcontrol
Post by: splint3r on 2009-05-21 12:41:11
<snip>

yeah, it looks like there is something wrong with playing track indication when swiching playlists. strangest thing is that I've seen it working properly before
and no, there are no macro standing for playing playlist index, as there hasn't been any demand for it. anyways, fb2k state macros became a bit messy, I guess it's time to do a little cleanup.


If you feel so inclined something like [PLAYLIST_PLAYING] that has a value of the list index would be very useful for me.

On another note, your server will serve up any files in the foo_httpcontrol_data folder but the built in variables are only available in the 'control' and 'browser' template files. If the intention of allowing users own files to be served is to allow fully custom AJAX powered pages, it would be more powerful if the variables were also available in these files.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-21 13:01:28
If you feel so inclined something like [PLAYLIST_PLAYING] that has a value of the list index would be very useful for me.
it is already done in unreleased yet version.
On another note, your server will serve up any files in the foo_httpcontrol_data folder but the built in variables are only available in the 'control' and 'browser' template files. If the intention of allowing users own files to be served is to allow fully custom AJAX powered pages, it would be more powerful if the variables were also available in these files.
I don't really like the idea of parsing every served file. I'm leaning towards the way of specifying template file in request itself instead. perhaps it will be a better solution.
Title: foo_httpcontrol
Post by: pcstockton on 2009-05-21 20:41:27
Hi everyone.

Thanks again for all who are working so hard on this.

It has made my Foobar experience a pure dream.

I am trying out the Raven mod of Aurics config.  I am running into the same issue I had initially with the album art no refreshing.

Has this been address by anyone?


Also,  I am curious how I could only have the one page with full art?  Is this possible?  I dont want playlists or directory structures.  All I want is the main page with album art and basic controls (play forward, back)

Thanks again all!
-Patrick
Title: foo_httpcontrol
Post by: splint3r on 2009-05-22 06:52:36
it is already done in unreleased yet version.
good to hear, its really great to see a foobar plugin being so actively developed!

I don't really like the idea of parsing every served file. I'm leaning towards the way of specifying template file in request itself instead. perhaps it will be a better solution.
your right of course, parsing all files might be unnecessary. You could also define what to parse and what not to with the directory structure, just a suggestion of course, you know best what is easiest to implement.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-22 09:20:33
pcstockton, I double checked [ALBUM_ART] and seems to work as expected. the problem most likely lies somewhere within the interface source. debugging what's happening in there should help you.

I don't really like the idea of parsing every served file. I'm leaning towards the way of specifying template file in request itself instead. perhaps it will be a better solution.
your right of course, parsing all files might be unnecessary. You could also define what to parse and what not to with the directory structure, just a suggestion of course, you know best what is easiest to implement.
the question isn't in what's the easiest way of doing that, but rather what will more convinient for async interface developers. I'm open for suggestions. I just don't want to parse all served files, that's it.
Title: foo_httpcontrol
Post by: splint3r on 2009-05-23 06:41:28
the question isn't in what's the easiest way of doing that, but rather what will more convinient for async interface developers. I'm open for suggestions. I just don't want to parse all served files, that's it.


I would vote for directory structure, but any way it works is fine for me, just as long as it works!
Title: foo_httpcontrol
Post by: fjdons on 2009-05-26 16:15:03
Is it possible to run 2 different servers?
The first is for controlling foobar from a desktop or notebook (full control and long playlist) and the second for controlling foobar from a phone (basic control and playlist separated on pages).
It would be nice if the different servers run on different ports like 8888 and 8889.

Thanks a lot for the plugin
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-27 04:12:51
fjdons, you'll be able to explicitly specify template in next version using request uri additional parameter, so virtually this will be similar to having two or more different servers.
Title: foo_httpcontrol
Post by: vassie on 2009-05-27 14:40:18
Great plugin, would it be possible to have a mobile version too? (say http://192.168.1.2:8888/m) (http://192.168.1.2:8888/m)) Would be great to control foobar from my iPod Touch and HTC Magic
Title: foo_httpcontrol
Post by: fjdons on 2009-05-27 16:49:33
alright sounds good
Title: foo_httpcontrol
Post by: pcstockton on 2009-05-27 19:06:15
Quote
pcstockton, I double checked [ALBUM_ART] and seems to work as expected. the problem most likely lies somewhere within the interface source. debugging what's happening in there should help you.


Oblikoamorale,

Thanks for the response.

What happens on the "now playing" page is:  When a song finishes, it goes to the next song on the playlist, and it refreshes the title, artist etc...  but the album art does not change.  If I manually refresh the page, the art then does change.  But it then dumps me back to the playlist page.  Then I must go back to the "now playing" page.

Is there a way for the album art to refresh without a manual refresh?  Why are only the title and artist etc, refreshing?

How do I "debug"?

Sorry for being a little dense here.

I really and truly appreciate the assistance.

Up until now, I have been using the soulruins skin.  It works great, but is not the best looking..... and the art is tiny.  Functionally it is fantastic and has no problem handling my 100,000 song playlist.  I have it set to 100 songs per page and I love it.  But the art is way too small.

I really like the "now playing" on Auric's config.  I just cannot figure out why the art isn;t refreshing with the rest of the data.

Thanks again,
Patrick
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-27 20:29:05
I really like the "now playing" on Auric's config.  I just cannot figure out why the art isn;t refreshing with the rest of the data.
that's not really the component problem, but oh well, here's the quick&dirty fix for you: iphonenav.js (http://atz.ath.cx:8282/foo_httpcontrol/iphonenav.js)

I should also mention that the way Auric's interface works is not very efficient in terms of cpu and network usage, which obvioulsy worsens battery runtime. it should be modified considering the new features of forthcoming component version.
Title: foo_httpcontrol
Post by: pcstockton on 2009-05-27 20:47:36
I should also mention that the way Auric's interface works is not very efficient in terms of cpu and network usage, which obvioulsy worsens battery runtime. it should be modified considering the new features of forthcoming component version.


Obliko,

Thanks alot.  that worked perfectly. 

Any suggestions on what to use if not Auric?

thanks again,
Dumbass Patrick
Title: foo_httpcontrol
Post by: Jac4593 on 2009-05-27 22:49:37
Was going to post about the possibilty of getting a mobile verison of this, then realised it's not just me who's wanting this feature=). I've tried cutting it down so the playlist does not load as I'm guessing that's a big hit on a mobile device considering it has to display over ~20K songs

But the page still loads as it did with the playlist and still for some reason none of the functions work  As vassie already suggested, something like http://192.168.1.2:8888/m (http://192.168.1.100:8888/m) would do! All it would need to have is the buttons shown on default with this plugin, song details and also the possibilities to expand, so if someone has a really low end phone they could connect using GPRS to their computer adress (my.ip.address.12:8888/m) and voila! And for high end mobile devices which can process it or for whichever persons need is to select a song from a playlist but the default version of this doesn't work, then allow them to add to the playlist field so they can choose their song

I'm not sure if it needs a lot of working to get this to work on a mobile device or not... (http://www.imagebam.com/image/83973137115315/) I'm guessing that the top and bottom line would be sufficant as the basic mobile structure? Probably without the time updating, just song?


If this feature will be implimented or as another plugin, then I will forever love you


Edit#; On a Nokia N95 over WLAN, using it's default browser, it doesn't work D:
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-28 03:43:04
pcstockton, can't think of any other variants. the thing is someone should do the dirty work. why not you, by the way?


vassie, Jac4593: my position is to provide backbone features that allow as much versatility as possible in (my) given conditions. stock template is not meant and never will be compatible with every single device browser in the world. its primary function is available features showoff, not usability or beauty. it suffices for my everyday use, but that is collateral.
making template compatible with your device (or writing a new one from the scratch) is the task I'm delegating to end-users, since this doesn't need any changes in component core. and when it does, I'll change whatever I can to make template developers life easier.
Title: foo_httpcontrol
Post by: Jac4593 on 2009-05-28 08:36:47
Yeah I understand, anyhow it works with my PSP so I guess I might as well use that! Thanks for making this plugin, still love you
Title: foo_httpcontrol
Post by: pcstockton on 2009-05-30 22:23:38
pcstockton, can't think of any other variants. the thing is someone should do the dirty work. why not you, by the way?


I would love to!!!

Any ideas on where to start educating myself?  I can write html and took some C++ in college.

Otherwise this is all WAY beyond my understanding.

But if pointed in the right direction (book, class, website) i would learn in a week.  and have a iPod config perfected in 2.

-patrick
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-05-31 11:15:04
Any ideas on where to start educating myself?  I can write html and took some C++ in college.

you say you have some programming experience, so you can start taking working things apart and see if you can figure out how they are put together. use the internets as technical details reference, google is our best friend. that's about it
Title: foo_httpcontrol
Post by: pcstockton on 2009-06-01 16:41:51
you say you have some programming experience, so you can start taking working things apart and see if you can figure out how they are put together. use the internets as technical details reference, google is our best friend. that's about it


Obliko,

Thanks for the tip.  That is exactly how Ive learned to do everything.  Colors or course used to be full trial and error in html with the hexidecimal dealy.

What is the name of the programming language used for these configurations?

thanks again for all of the hard work!
-Patrick
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-08 10:15:49
I'm in the middle of revising my layout, for use on my phone. This is the work in progress;




I'm not having any viewing of the playlist entries. Just this single screen. What I'm looking to do, but cant figure out, is for where it says "PLAYLIST", for it to display the name of the current playlist, and on click the cycle through other playlists. I can get it to display the number but not the name. Anyone have ideas on how to do it? Does the plugin have the ability to fetch the playlist name?

cheers.
Title: foo_httpcontrol
Post by: vairulez on 2009-06-08 10:21:22
when adding a file or a directory, the default action is end queuing.
Can it be changed to replacing the current playlist ?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-08 15:34:39
I'm not having any viewing of the playlist entries. Just this single screen. What I'm looking to do, but cant figure out, is for where it says "PLAYLIST", for it to display the name of the current playlist, and on click the cycle through other playlists. I can get it to display the number but not the name. Anyone have ideas on how to do it? Does the plugin have the ability to fetch the playlist name?
yes you can. it isn't the most straightforward way, but it I don't see much of a problem since you probably are already using JSON to store player state data.

Code: [Select]
<script language="JavaScript" type="text/javascript">
<!--
var tmp = eval('({ "playlists": [PLAYLISTS_JS] })');
alert(tmp["playlists"][[PLAYLIST_ACTIVE]]['name'] + ' ' + tmp["playlists"][[PLAYLIST_ACTIVE]]['count']);
//--></script>


vairulez, I don't quite get it, you want file browser to clear active playlist prior to adding enqueued files?
Title: foo_httpcontrol
Post by: vairulez on 2009-06-08 16:38:02
Quote
vairulez, I don't quite get it, you want file browser to clear active playlist prior to adding enqueued files?

exactly, i would like to clear the active playlist+ playing song, prior to adding the new files.
It could be a option in the browser next to "add dir + subfolders to enqueue" ?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-08 17:03:05
exactly, i would like to clear the active playlist+ playing song, prior to adding the new files.
It could be a option in the browser next to "add dir + subfolders to enqueue" ?
ok, here is the browser option to illustrate the principle. you can use this approach to empty playlist prior switching to Browser mode or whenever you like. foo_httpcontrol_browser_tpl.html (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol_browser_tpl.html)
Title: foo_httpcontrol
Post by: ojdo on 2009-06-08 17:39:11
Great plug-in! I will create a template for personal use that I will share when it's up. I just have to get used to JavaScript before. I will try to replace the functionality I once got using fullscreen configurations for trackinfo_mod (http://www.hydrogenaudio.org/forums/index.php?showtopic=62359), just remotely accessible.

Erm, and I added the component to the Hydrogenaudio wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/HTTP_Control_(foo_httpcontrol)).
Title: foo_httpcontrol
Post by: vairulez on 2009-06-08 19:16:56
exactly, i would like to clear the active playlist+ playing song, prior to adding the new files.
It could be a option in the browser next to "add dir + subfolders to enqueue" ?
ok, here is the browser option to illustrate the principle. you can use this approach to empty playlist prior switching to Browser mode or whenever you like. foo_httpcontrol_browser_tpl.html (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol_browser_tpl.html)


thanks, I'll have a look tomorrow, and will share my template (a mix of what has been posted here)
Title: foo_httpcontrol
Post by: vairulez on 2009-06-09 17:22:19
OK your code works great, but when i tried to reuse it to do my replace function (1.empty playlist, 2. enqueue dir, 3.play 1st song of the playlist) it doesn't work ...
As you have already noticed i am not a coder, especially in javascript ...
here's what i tried to do :

Code: [Select]
<script language="JavaScript" type="text/javascript">
<!--
function getXMLHTTP()
{
    try {return new ActiveXObject("Msxml2.XMLHTTP");}
    catch(e) {try {return new ActiveXObject("Microsoft.XMLHTTP");}
    catch(e) {}}
    if(typeof XMLHttpRequest != "undefined") {return new XMLHttpRequest();}
    return null;
}

function EmptyPlaylist()
{
    httpRequestStatus = getXMLHTTP();
    try {
        httpRequestStatus.open("GET", '/?cmd=EmptyPlaylist&param3=NoResponse', true);
        httpRequestStatus.send(null);
    }
    catch(e) { }
}

function ReplacePlaylist()
{
httpRequestStatus = getXMLHTTP();
    try {
        httpRequestStatus.open("GET", '/?cmd=EmptyPlaylist&param3=NoResponse', true);
                httpRequestStatus.open("GET", '/?cmd=Browse&amp;param1=[PATH]&amp;param2=EnqueueDir', true);
                httpRequestStatus.send(null);
}
    catch(e) { }
}
              

//--></script>

Replace: [ <a title="replace current directory files only" href="java script:ReplacePlaylist()">Dir</a>]


guess what, it doesn't work.
Your help would be welcome

ps : As it didn't work I didn't try to have 3. working

by the way here's what my template looks like :

(http://img200.imageshack.us/my.php?image=playerp.jpg)

(http://img410.imageshack.us/my.php?image=browser.jpg)
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-09 19:46:21
Couldnt tell you if it will work after this but you seem to have a space between java and script;

Code: [Select]
href="java script:ReplacePlaylist()">Dir</a>]
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-09 20:47:16
vairulez, your code doesn't make sense because you don't seem to understand the way asynchronious requests work. I suggest you read something on XMLHttpRequest. and again we're way off the topic thread, but oh well, here you go. both files are needed in component data folder to make things work: foo_httpcontrol_browser_tpl.html (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol_browser_tpl.html) foo_is_enqueueing.html (http://atz.ath.cx:8282/foo_httpcontrol/foo_is_enqueueing.html)
Title: foo_httpcontrol
Post by: vairulez on 2009-06-10 09:06:14
thank you so much, it works great.
I will post my template later today
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-10 09:18:38
thank you so much, it works great.
I will post my template later today
by the way, you should modify the code to prevent user from hitting "add & replace" when this operation is already in progress.

also, next version of component will contain cmd to query fb2k state via custom string specified in request, which will eliminate the need to introduce additinal template files like I did in this your case (to discover if fb2k still processing added files, and has the time to issue start playback command arrived yet).
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-10 10:43:35
Can anyone help me on why this isnt working?;

Code: [Select]
function FormatTime(t) {
    h = Math.floor(t / 3600);
    m = Math.floor((t % 3600) / 60);
    s = pad(t % 60, "0", 2);
    return m+":"+s;

    if (fooVars["trackpos"] != fooVars["tracklen"]) {
    document.getElementById("position").innerHTML = FormatTime(fooVars["trackpos"])
    document.getElementById("length").innerHTML = FormatTime(fooVars["tracklen"]);
    }
}




Can take it to PM, to stop cluttering up the thread if needs be?

This is what I have so far -



Works great on my phone, and also in Opera, Firefox, and Chrome. But not IE.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-10 16:11:08
Can anyone help me on why this isnt working?;
why should it work (I assume by "work" you mean assigning values to objects properties) when you are returning from FormatTime() function just before the actual assign?
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-10 16:50:47
Can anyone help me on why this isnt working?;
why should it work (I assume by "work" you mean assigning values to objects properties) when you are returning from FormatTime() function just before the actual assign?


Perhaps I should have worded it as can anyone tell me where I am going wrong, rather than why isnt it working.

Nevermind, I'll keep fiddling with it and try to keep this sort of non-plugin-specific query out of the thread.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-10 17:08:06
Perhaps I should have worded it as can anyone tell me where I am going wrong, rather than why isnt it working.
it's hard to say without seeing actual context, but the good start would be moving return m+":"+s; to the end of the function.
also don't forget to check browser's javascript error console, it is often handy when something doesn't work and you have no clue why. using javascript debugger helps as well (FireBug f.e. is a nice one).
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-10 17:45:04
Perhaps I should have worded it as can anyone tell me where I am going wrong, rather than why isnt it working.
it's hard to say without seeing actual context, but the good start would be moving return m+":"+s; to the end of the function.
also don't forget to check browser's javascript error console, it is often handy when something doesn't work and you have no clue why. using javascript debugger helps as well (FireBug f.e. is a nice one).


All I'm trying to do is pull the current position time, and the track length time from the controls html file and display it in my html file where the 0:00:00 are shown on the image above. But using the FormatTime to turn the numbers into an actual time format.

I'm just using recycled/edited code from other configs, but the ones I'm looking at have a progress bar too, and as I don't really know what I'm doing its hard to distinguish which parts are part of the progress bar feature and the bits necessary for just the time part.



I'll give the javascript tools a go cheers.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-10 18:32:58
I'm just using recycled/edited code from other configs, but the ones I'm looking at have a progress bar too, and as I don't really know what I'm doing its hard to distinguish which parts are part of the progress bar feature and the bits necessary for just the time part.
having read that, I think you have only two ways: either try to figure it out by yourself, or post the whole files of your work for someone to help you.
Title: foo_httpcontrol
Post by: vairulez on 2009-06-10 19:23:07
here's my template
httpcontrol template (http://www.2shared.com/file/6226900/558a9c25/foo_httpcontrol_data.html)
Title: foo_httpcontrol
Post by: xecuter2 on 2009-06-13 10:05:38
I want to thank oblikoamorale firstly for this GREAT plugin. So far it changes the entire way I use foobar  I love the template vairulez, but would it be possible to add a search entire library section, so it would be possible to add new songs from the entire library to the active playlist? That would be amazing for parties and other such events, where a terminal can be set up and people can queue what they want by using a simple search and click to queue to list  I can't wait to see what the future versions and UI's for this entail.
Thanks again -x2
Title: foo_httpcontrol
Post by: viktor on 2009-06-14 04:02:44
i think this component definitely needs an own website. now if i want to browse templates or find any info i have to go through 17 pages of posts which is _very_ unconvenient and unnecessarily time-consuming.

i think it would be great to have a google code (for example) project for this (of course only if you like the idea of opening the source code - and i see no reason in the way of this besides your personal approach and point of view maybe;)). then problems could be tracked, discussed and handled in a much more organized way, changes could be tracked more easily, the "link isn't working" problems would be eliminated (i guess gcode is quite reliable;)) and the wiki + downloads sections could be used to put up templates (this *share method is really lousy). just a few advantages which came to my mind...

when i switched to this version control stuff, i couldn't imagine how could i handle my projects without it earlier.

also, templaters, please use something nicer for file names, coz it's not too cool to have 10 foo_httpcontrol_data.zip files. the proper way is when each file has a name and a version, too IMHO.

anyway, thanks again for your work, it's really impressive and useful.
Title: foo_httpcontrol
Post by: nintendoeats on 2009-06-18 07:23:31
I hate to send this thread all the way back to square one, but I'm having a stupid problem. I can use the interface fine locally on both my desktop and netbook, but when I try to use the netbook to control the desktop I can't even get a blank page (yes, I DID change the port)! I have folders sharing across the network, so I just don't know whats happening here.

I should mention, I have a strange internet setup whereby I have to connect to the internet via a gateway or something in my apartment. This prevents me from accessing my router settings unless I unplug it from that network. However, my UPnP network is visible over that connection, and I can even see UPnP and DAAP servers from other apartments!

Thanks in advance, this is exactly the type of program I am looking for.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-18 16:12:04
it doesn't look like the component problem. all I can suggest is double check the sanity of ip address you are binding to. considering that your network setup is tricky even for you, the owner, how do you expect to be helped by clueless outsiders?
Title: foo_httpcontrol
Post by: nintendoeats on 2009-06-18 21:38:13
it doesn't look like the component problem. all I can suggest is double check the sanity of ip address you are binding to. considering that your network setup is tricky even for you, the owner, how do you expect to be helped by clueless outsiders?

Fair enough. However, I ran everything with the network disconnected from the apartments internet and it still didn't work. Sigh.

Thanks anyway, the plugin looks great.
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-20 02:22:22
I've pretty much got to a point where I'm happy with my remote now. Except the playlist switcher.

Heres what it looks like;



No doubt my code here is far from perfect, but the files are attached incase anyone wants to use them/improve it.
http://tiny.cc/aGBY6 (http://tiny.cc/aGBY6)


Thanks again to oblikoamorale for the plugin.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-20 06:30:09
Kev0, obviously it won't work the way you expecting it to, as, for example, xml parser chokes on data you are feeding it. here's the correct variant, along with a couple of other bugfixes and excessive refreshing removal kev0_tpl.rar (http://atz.ath.cx:8282/foo_httpcontrol/kev0_tpl.rar).
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-20 12:28:25
Kev0, obviously it won't work the way you expecting it to, as, for example, xml parser chokes on data you are feeding it. here's the correct variant, along with a couple of other bugfixes and excessive refreshing removal kev0_tpl.rar (http://atz.ath.cx:8282/foo_httpcontrol/kev0_tpl.rar).


Fantastic! Absolute star. Thank you very very much.
Title: foo_httpcontrol
Post by: sbp on 2009-06-20 14:08:35
Hi Kev0.


I like the look of your remote, could you please tell us a little more about your setup.
Which remote are you using - is it a windows PDA/phone or an Iphone?
Which browser is supported?

Regards
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-20 14:48:05
Hi Kev0.


I like the look of your remote, could you please tell us a little more about your setup.
Which remote are you using - is it a windows PDA/phone or an Iphone?
Which browser is supported?

Regards


I use it on my G1 Android, which has a webkit based browser, so I expect it to work in all other webkit browsers (chrome, safari?). I also use it in an Opera side bar.

Just tried and it works in Firefox, but not IE7.

Cant say how well it fits/works on an iPhone or other type of PDA sorry.
Title: foo_httpcontrol
Post by: ascencientj on 2009-06-24 05:00:08
Hi oblikoamorale, is there anyway to view the Playback Queue or sort the playlist so that the queued items are at the top?  If not, do you have any plans to add this functionality?  A frame on the page or a pop-up window showing the Queue would be awesome.

I've noticed the http page shows the playlist sorted as I have it sorted on foobar.  However, foobar can't seem to sort by %queue_index% and my forum topic about it has gone unanswered.  There is a plugin "foo_pqview" that will allow you to basically filter out your playlist and only show your queued items, but this can't be used on your webpage and having to go through a menu to toggle the Playback Queue is a bit annoying anyway. 

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-06-24 05:34:47
the component is designed to reflect current state of fb2k active playlist as it is, without introducing any modifications to it. playlist sorting is not supported at the moment and I doubt it ever will be.
foo_pqview is your best shot in this case. you can map playback queue to a separate playlist and this queue playlist will be available in the "web page", why won't it? and you don't need to mess around in menus all the time as foo_pqview queue playlist dynamically reflects any playback queue changes.
Title: foo_httpcontrol
Post by: ascencientj on 2009-06-24 18:08:35
Thanks, I did what you suggested and that's working fine.
Title: foo_httpcontrol
Post by: Kev0 on 2009-06-25 16:35:14
Updated mine slightly to include the file browser. When stopped, stop button changes to browser view link.

Thanks to vairulez for the basis of my browser. Modified slightly to better fit/suit my phone.

Files are here http://tiny.cc/JVFUl (http://tiny.cc/JVFUl) for anyone wishing to use it.




If anyone could confirm if it works on iPhone I would be grateful, cheers.
Title: foo_httpcontrol
Post by: Bl@ck_warrior on 2009-06-26 08:52:21
Quote
If anyone could confirm if it works on iPhone I would be grateful, cheers.


It works well on an Ipod touch v2 for remote control, playlist selections and album art, but i don't really know how the browser works.
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-06 09:27:38
Probably not like, but would it be possible to some how control system volume, through this oblikoamorale?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-06 10:31:26
It is possible, I guess, with some coding on my side. but I reckon audio player should be able to adjust its own volume only, not the master one. what's your reason for this feature?
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-06 12:02:52
Oh dont worry about it then, its for use outside of foobar really, so certainly not for you to spend time implementing. Just wondered if I could do something at my end to get it to do it, like key-controls or something.

I use the foobar scheduler to play a playlist with increasing volume for my morning alarm clock. After 10minutes or so, it stops and I have the radio come on in a web browser. But sometimes the radio can play songs that morning ears dont enjoy, so wanted a quick mute or volume control from my phone with the PC being in another room.

As I said, far beyond what the component is for, so dont worry about it.
Title: foo_httpcontrol
Post by: primaeval on 2009-07-06 13:24:35
EnqueueDir in the browser doesn't seem to be working any more in version 0.90 and foobar 0.9.6.8.  Or is it just me?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-06 17:11:19
yeah, sorry, small typo lurked within the code section during refactoring. fixed and reuploaded as 0.90.

Kev0, actually there is obscure way of doing what you want right now. you need foo_run, foo_runcmd and any tool able to mute system volume (for example, nircmd).
create a new service named mute in foo_run pointing to nircmid with corresponding parameters (nircmd.exe mutesysvolume 1)
voila, now you are able to run this service via foo_runcmd command line switch using foo_httpcontrol, for example:
http://127.0.0.1:8888/?cmd=CmdLine&par...service/mute%22 (http://127.0.0.1:8888/?cmd=CmdLine&param1=%22%2fruncmd-playlist%3dRun%20service/mute%22)

it has one disadvantage, though. it won't work if no playlist item is selected, but it shouldn't be a big problem with "Cursor follows playback".

have fun
Title: foo_httpcontrol
Post by: boombar on 2009-07-06 20:27:33
Is it just me, or volume change through Volume command doesn't work?
It works with VolumeUp and VolumeDown.
I use foobar 0.9.6.8, foo_httpcontrol 0.90 and firefox 3.0.11.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-06 21:29:40
fixed. another typo in new code
Title: foo_httpcontrol
Post by: Joror on 2009-07-06 23:47:14
I've been trinkering with Auric's iPhone template since I got my iPhone 3GS a week ago, adding some features I was craving  (and removed some I didn't like)

A screenshot:

More screenshots:
Screenshot 2 (http://home.parse.nl/~daan/foobar2000/screenshots/IMG_0065.png)
Screenshot 3 (http://home.parse.nl/~daan/foobar2000/screenshots/IMG_0067.png)
Screenshot 4 (http://home.parse.nl/~daan/foobar2000/screenshots/IMG_0068.png)

Download: iPhone template - Joror - 1.0 (http://home.parse.nl/~daan/foobar2000/iphone-tpl-joror-1.0.zip)

(template_readme.txt contents:)
iPhone template for foo_httpcontrol

///// Based on Auric's Template /////
/////// + Additions By Joror ////////

Installation and Usage Notes:
- In the HTTP Control preferences, set the `Playlist` row to the following:
{ "artist": "$ifgreater($len(%artist%),29,$cut(%artist%,29)'...',%artist%)", "album": "$ifgreater($len(%album%),29,$cut(%album%,29)'...',%album%)", "number": "%tracknumber%", "track": "$ifgreater($len($replace(%title%,",)),28,$cut($replace(%title%,",),28)'...',$replace(%title%,",))", "len": "%length%" }
- Set the `Helper 1` row to:
"playing": { "artist": "$ifgreater($len(%artist%),29,$cut(%artist%,29)'...',%artist%)", "album": "$ifgreater($len(%album%),29,$cut(%album%,29)'...',%album%)", "number": "%tracknumber%", "track": "$ifgreater($len($replace(%title%,",)),28,$cut($replace(%title%,",),28)'...',$replace(%title%,",))", "len": "%length%"},
- Set the `Playlist items per page` in the `UI Variables` page to 30
- To use access the remote UI, point your browser to http://YourIpAddress:8888/index.html (http://YourIpAddress:8888/index.html), where "YourIpAddress" is the IP of the machine running foobar.  If you do not add the index.html at the end, it will not work.

Credits:
- Apple for large portions of the UI layout and images
- Lars Kleinschmidt for his own iPhone template, which helped me get started
- oblikoamorale for the foo_httpcontrol component and putting up with all of my requests
- Auric for making the original look & the great start

1.0 Release change log

Changes:
- Added list of playlists
- Added playlist with paging
- Better album art setting
- Added progress bar (tap once on album art)
- Added repeat / shuffle buttons
- Added volume bar
- Added playlist search filter
- Added meta tags so that the application can now run without browser borders from your Home Screen
- Added meta tag for black top bar
- Removed/disabled harddisk 'browse' interface

Known issues:
- Automatic refresh can override your playlist paging selection (returning you to the page with the track you are playing)
- 'Fade out' / 'Fade in' does not go smoothly (but more smoothly then the original sliding)
- Fade only works in safari browsers
- Only works with page size 30 at the moment (you can change the page size in iphonenav.js if you want to) (can't 'guess' the page size - would be nice to have as a template variable)
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-07 04:34:34
impressive work!
do you plan to get rid of every-fifteen-seconds player state requests? this thing irritates me the most as I believe it is not really necessary and moreover additionally stresses the battery
timer scheduled to the end of the currently playing item works really well for this purpose (I think I've illustrated the approach in Kev0 template somewhere up the thread). if you want to track the player state you can occasionally retrieve [STATE_CHANGE] and see whether something on the player side has been changed. it is loads the phone noticeable lesser than grabbing, parsing and processing whole state data anyway.
Title: foo_httpcontrol
Post by: Joror on 2009-07-07 09:06:34
impressive work!
do you plan to get rid of every-fifteen-seconds player state requests? this thing irritates me the most as I believe it is not really necessary and moreover additionally stresses the battery
timer scheduled to the end of the currently playing item works really well for this purpose (I think I've illustrated the approach in Kev0 template somewhere up the thread). if you want to track the player state you can occasionally retrieve [STATE_CHANGE] and see whether something on the player side has been changed. it is loads the phone noticeable lesser than grabbing, parsing and processing whole state data anyway.

Yeah I've been thinking of removing that, got a client-side progress updater already - it would also prevent playlist page browsing resetting (too much).
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-07 11:16:51
yeah, sorry, small typo lurked within the code section during refactoring. fixed and reuploaded as 0.90.

Kev0, actually there is obscure way of doing what you want right now. you need foo_run, foo_runcmd and any tool able to mute system volume (for example, nircmd).
create a new service named mute in foo_run pointing to nircmid with corresponding parameters (nircmd.exe mutesysvolume 1)
voila, now you are able to run this service via foo_runcmd command line switch using foo_httpcontrol, for example:
http://127.0.0.1:8888/?cmd=CmdLine&par...service/mute%22 (http://127.0.0.1:8888/?cmd=CmdLine&param1=%22%2fruncmd-playlist%3dRun%20service/mute%22)

it has one disadvantage, though. it won't work if no playlist item is selected, but it shouldn't be a big problem with "Cursor follows playback".

have fun


Cheers, will give t a go.
Title: foo_httpcontrol
Post by: Teddyen on 2009-07-08 19:18:11
I really like your template Joror, the only problem is that I don't have an iPhone =P
It seems perfect, but it won't work properly in Opera on my HTC Touch Diamond 2.

The D2 is WVGA (800x480), but the player gives me both a horizontal and vertical scroll in the main window. If I go into the playlist and back to the main window, the whole playlist ghostes in yellow under the last-play/pause-next buttons.

If there is any chance you would like to develop it for Opera/WM too, I can provide screens of the bugs and give you feedback

Title: foo_httpcontrol
Post by: caata on 2009-07-09 15:40:51
Hi everyone,
I used to have a later version of foo_httpcontrol which i was able to control foobar from multiple computers/devices in my house (i lost the old foobar folder).
Right now I've installed foo_httpcontrol 0.90 in foobar 0.9.6 version and i really don't understand what's going on with the restriction to one remote ip.
I really don't get it.
I have more than ONE device to control foobar. How to setup to work to more ip's.

Maybe i miss something, please be kind to illuminate me.

Thankyou
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-09 17:06:05
yeah, you're right. due to new Remote IP input field you can't have more than one remote controller. somehow I overlooked it, so
I've changed the behaviour to drop any ip checking if Remote IP is set to '0.0.0.0'.
Title: foo_httpcontrol
Post by: qwerter on 2009-07-12 12:17:25
hello out there!

if you wish to hidde the address bar on your iphone:
there's a nice little javascript to make it disappear:

Code: [Select]
<!-- hidde scrollbar (from iEvince) -->
<script type="text/javascript">
var unlockURLbar = false;
if (navigator.userAgent.indexOf('iPhone') != -1 || true) {
        addEventListener("load", function() { setInterval(hideURLbar, 50);}, false);
}
function hideURLbar() {
if(window.pageYOffset < 20 && !unlockURLbar) {
window.scrollTo(0,1);
}
}
function toggleURLbar() {
if(unlockURLbar) {
unlockURLbar = false;
$("url_bar_lock_switch").style.backgroundPosition = "128px 166px";
}
else {
unlockURLbar = true;
$("url_bar_lock_switch").style.backgroundPosition = "128px 144px";
}
}
</script>
simply paste it in the index.html at the end of the file but still inside the html-body.

thanx, Joror!!! now it's just the way i like it!
specially the hidden volumebar 
Title: foo_httpcontrol
Post by: AlfredSka on 2009-07-13 21:13:04
(broken link notification removed)
Title: foo_httpcontrol
Post by: riderforever on 2009-07-13 22:20:30
Ok, surely I'm doing something wrong, but I can't understand what 
 
The readme is very straightforward regarding the installation:
Quote
*** Installation

    Delete previous version of foo_httpcontrol.dll, restart foobar2000, answer
"No" when you're asked whether you want to keep component settings.
    Extract foo_httpcontrol.dll to foobar2000  components  directory.  Extract
foo_httpcontrol_data  directory  (component  templates)  to  foobar2000  user
profile directory.
    Start foobar2000 and modify component settings according to your taste  in
its preferences (Preferences/Tools/HTTP Control). Nothing  prevents  you  from
customizing stock templates as well.
    Default configuration allows you to access  foo_httpcontrol  at  least  on
http://127.0.0.1:8888/ (http://127.0.0.1:8888/) address.

    Well, that's all!

Well I've done a fresh installation of foobar2000_0.9.6.8, leaving every option at default, then I've put the foo_httpcontrol.dll file in the components folder and the foo_httpcontrol_data directory inside C:\Users\[myUser]\AppData\Roaming\foobar2000.

Unfortunately trying to execute foobar2000 it halts at the very beginning

Code: [Select]
Illegal operation:
Code: C0000094h, flags: 00000000h, address: 01D616D1h
Call path:
entry=>initquit::on_init
Code bytes (01D616D1h):
01D61691h:  50 8B CF FF 56 2C 8B 0D E4 FA D8 01 3B CB A3 1C
01D616A1h:  F8 D8 01 7E 1E A1 34 F8 D8 01 83 F8 FF 74 14 8B
01D616B1h:  15 14 F8 D8 01 3B 15 30 F8 D8 01 75 06 33 D2 F7
01D616C1h:  F1 EB 0F 8B 74 24 10 8B F9 E8 1C 75 00 00 33 D2
01D616D1h:  F7 F7 8B 4C 24 1C 40 8D 54 24 14 A3 20 F8 D8 01
01D616E1h:  8B 01 52 FF 50 0C 84 C0 0F 84 96 03 00 00 8B 7C
01D616F1h:  24 14 E8 7C 7C 00 00 DD 1D 48 F8 D8 01 A1 30 F8
01D61701h:  D8 01 BE C4 E8 D8 01 83 F8 FF 0F 84 8F 00 00 00
Stack (001DF608h):
001DF5E8h:  00000000 00000000 00000000 00000000
001DF5F8h:  00000000 00000000 00000000 00000000
001DF608h:  001DF6AC 01D86464 00000000 00000000
001DF618h:  00CEAC08 00000000 00C8C80D 00CEA884
001DF628h:  001DF6AC 00CED494 00000000 00CED494
001DF638h:  00CEA884 001DF678 00CB299B 00000000
001DF648h:  00C8C80D 00C8C858 00C8C86F D6AB7DE1
001DF658h:  001DF6AC 01D86464 00000000 00000000
001DF668h:  01D869C0 00C11F03 00C11F18 00CED494
001DF678h:  001DF6C4 00CB34E2 FFFFFFFF 001DF6C4
001DF688h:  01D7EF74 00000003 001DF6D4 01D59947
001DF698h:  01D8E808 01D8E808 00000000 00CEA358
001DF6A8h:  00CEAC08 00CEA884 02228F00 001DF680
001DF6B8h:  00000000 00000000 001DF6F8 001DF6FC
001DF6C8h:  01D7F225 00000003 001DF6F8 001DF708
001DF6D8h:  00C2BB9C 00CC2C47 001DF784 00000000
001DF6E8h:  00000004 01C096A0 00000005 01D8E808
001DF6F8h:  00000000 001DF83C 00CAC13C 00000001
001DF708h:  001DF84C 00C2CB95 FFFFFFFE 00000000
001DF718h:  00000001 FFFFFFFE 00335B87 000C0000
Registers:
EAX: FFFFFFFF, EBX: 00000000, ECX: 01C09938, EDX: 00000000
ESI: 00CEAC08, EDI: 00000000, EBP: 001DF690, ESP: 001DF608
Crash location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h

Loaded modules:
foobar2000                      loaded at 00C00000h - 00D1E000h
ntdll                            loaded at 772D0000h - 773F7000h
kernel32                        loaded at 76B30000h - 76C0B000h
COMCTL32                        loaded at 745C0000h - 7475E000h
msvcrt                          loaded at 769F0000h - 76A9A000h
ADVAPI32                        loaded at 77120000h - 771E6000h
RPCRT4                          loaded at 77020000h - 770E2000h
GDI32                            loaded at 766F0000h - 7673B000h
USER32                          loaded at 76C10000h - 76CAD000h
SHLWAPI                          loaded at 77450000h - 774A8000h
SHELL32                          loaded at 75BD0000h - 766E0000h
ole32                            loaded at 76740000h - 76884000h
shared                          loaded at 10000000h - 1002A000h
COMDLG32                        loaded at 774B0000h - 77523000h
IMM32                            loaded at 770F0000h - 7710E000h
MSCTF                            loaded at 76DB0000h - 76E78000h
LPK                              loaded at 766E0000h - 766E9000h
USP10                            loaded at 75B50000h - 75BCD000h
uxtheme                          loaded at 74AC0000h - 74AFF000h
foo_albumlist                    loaded at 01B30000h - 01B95000h
foo_cdda                        loaded at 00BA0000h - 00BD5000h
foo_converter                    loaded at 01C10000h - 01C75000h
foo_dsp_std                      loaded at 01D00000h - 01D47000h
foo_httpcontrol                  loaded at 01D50000h - 01D99000h
WS2_32                          loaded at 76CB0000h - 76CDD000h
NSI                              loaded at 76E80000h - 76E86000h
WSOCK32                          loaded at 71F40000h - 71F47000h
MPR                              loaded at 755A0000h - 755B4000h
foo_input_std                    loaded at 02070000h - 02195000h
foo_rgscan                      loaded at 01DA0000h - 01DF0000h
foo_ui_std                      loaded at 02360000h - 02413000h
gdiplus                          loaded at 74260000h - 7440B000h
MSIMG32                          loaded at 74D90000h - 74D95000h
btmmhook                        loaded at 01C80000h - 01CB5000h
OLEAUT32                        loaded at 76AA0000h - 76B2D000h
imagehlp                        loaded at 769C0000h - 769E9000h
dbghelp                          loaded at 71CA0000h - 71D7C000h

Stack dump analysis:
Address: 01D86464h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+0001EFF4h)
Address: 00CEAC08h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C8C80Dh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CEA884h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CED494h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CED494h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CEA884h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CB299Bh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C8C80Dh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C8C858h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C8C86Fh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 01D86464h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+0001EFF4h)
Address: 01D869C0h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+0001F550h)
Address: 00C11F03h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C11F18h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CED494h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CB34E2h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 01D7EF74h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+00017B04h)
Address: 01D59947h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Address: 01D8E808h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+00027398h)
Address: 01D8E808h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+00027398h)
Address: 00CEA358h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CEAC08h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CEA884h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 01D7F225h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+00017DB5h)
Address: 00C2BB9Ch, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CC2C47h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 01D8E808h, location: "foo_httpcontrol", loaded at 01D50000h - 01D99000h
Symbol: "foobar2000_get_interface" (+00027398h)
Address: 00CAC13Ch, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C2CB95h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CD0F78h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CD0F78h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CD0F78h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C00000h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 77335B87h, location: "ntdll", loaded at 772D0000h - 773F7000h
Symbol: "RtlAllocateHeap" (+000002E1h)
Address: 77335955h, location: "ntdll", loaded at 772D0000h - 773F7000h
Symbol: "RtlAllocateHeap" (+000000AFh)
Address: 773358A6h, location: "ntdll", loaded at 772D0000h - 773F7000h
Symbol: "RtlAllocateHeap" (+00000000h)
Address: 00C050E9h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CA0923h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9AFC0h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CA0923h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9ED78h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 1000263Ah, location: "shared", loaded at 10000000h - 1002A000h
Symbol: "uPrintCrashInfo_SetDumpPath" (+000000CAh)
Address: 00CC8224h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CB4766h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CC8224h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C2CEB6h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C00000h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9BFFEh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C993E1h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C993DBh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CBAF9Ch, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CB9620h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9AFC0h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C993DBh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C993EFh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CB9620h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CB4B73h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9AD6Fh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C00000h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00CA2876h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9AFC0h, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 76B74911h, location: "kernel32", loaded at 76B30000h - 76C0B000h
Symbol: "BaseThreadInitThunk" (+00000012h)
Address: 7730E4B6h, location: "ntdll", loaded at 772D0000h - 773F7000h
Symbol: "RtlInitializeExceptionChain" (+00000063h)
Address: 76BCF389h, location: "kernel32", loaded at 76B30000h - 76C0B000h
Symbol: "UnhandledExceptionFilter" (+00000000h)
Address: 76BCF389h, location: "kernel32", loaded at 76B30000h - 76C0B000h
Symbol: "UnhandledExceptionFilter" (+00000000h)
Address: 772D9834h, location: "ntdll", loaded at 772D0000h - 773F7000h
Symbol: "RtlUpdateTimer" (+00000605h)
Address: 7730E489h, location: "ntdll", loaded at 772D0000h - 773F7000h
Symbol: "RtlInitializeExceptionChain" (+00000036h)
Address: 00C9ADDAh, location: "foobar2000", loaded at 00C00000h - 00D1E000h
Address: 00C9ADDAh, location: "foobar2000", loaded at 00C00000h - 00D1E000h

Version info:
foobar2000 v0.9.5
UNICODE
Windows 6.0


Additional info:
ReplayGain Scanner 2.0.2  (foo_rgscan)
HTTP Control 0.92  (foo_httpcontrol)
Standard Input Array 1.0  (foo_input_std)
Converter 1.0.2  (foo_converter)
foobar2000 core 0.9.5  (Core)
CD Audio Decoder 2.1.2  (foo_cdda)
Album List 4.1  (foo_albumlist)
Standard DSP Array 1.0  (foo_dsp_std)
Default User Interface 0.9.5  (foo_ui_std)

I've tried also doing a portable installation and putting the foo_httpcontrol_data directory inside the foobar main folder, but the result is the same.

Where am I wrong??

Thank you for your help.
Title: foo_httpcontrol
Post by: AlfredSka on 2009-07-13 22:25:32
Ok, surely I'm doing something wrong, but I can't understand what


I also ran into that problem.  I believe the developer posted a bad compile for a very short period of time, then silently updated it without bumping the version number.  Try revisiting the webpage, refresh, then download again (in fact, clear your cache before downloading).  The version available now does work.

Also, you are correct in copying the data folder (keeping files in the folder) to %USERPROFILE%\AppData\Roaming\foobar2000
and the dll to %programfiles%\foobar2000\components
(assuming you installed foobar2000 to 'Program Files')

EDIT: The timestamp on my foo_httpcontrol.dll is 14July2009 12:23AM (not timezone specific, as it is only July 13 where I am at)
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-14 05:00:10
you are right, that was a broken build. I tried to remove it asap but failed.
and another thing, I recommend downloading 0.92 again now, as several other behaviour issues have been addressed there. I also put a link to the latest "stable" version if you don't want to be experimented on.
Title: foo_httpcontrol
Post by: riderforever on 2009-07-14 08:14:25
That's a nice news, I'm not crazy 

Now it works, thank you for this extremely useful plugin.
Title: foo_httpcontrol
Post by: musiq on 2009-07-17 16:42:02
...

Known issues:
- Automatic refresh can override your playlist paging selection (returning you to the page with the track you are playing)
- 'Fade out' / 'Fade in' does not go smoothly (but more smoothly then the original sliding)
- Fade only works in safari browsers
- Only works with page size 30 at the moment (you can change the page size in iphonenav.js if you want to) (can't 'guess' the page size - would be nice to have as a template variable)


Hello,

I have installed your nice http application and found out multiple problems with iPhone as a browser or Safari on  PC:

- when there are multiple playlists, select one, select a track to play. then pause it because you cannot stop it, go back to the root menu, select another playlist, it displays the content, then you cannot select another song, the selection works but it does not select it and I have to close everything and restart for it to work

- when the playlist content is more than a page, the page number is displayed as "Page 2 on 1" for example for the second page, then after 15 seconds, the first page is displayed with the refresh command I assume.

- on last page, you can click on > button to display the next page which is naturally empty, you need some kind of control here to avoid refreshing in this case.

- the track number displayed starts at 0 and not at 1, you need to add 1 to the document.getElementById('progressCounter').innerHTML calculation in both single page or multiple page calculation.

- the album arts from the PC version does not display the picture, is it really implemented?

Regards
Musiq



Title: foo_httpcontrol
Post by: pcstockton on 2009-07-20 19:45:28
Juror,

VERY VERY well done.

I cant wait to give it a shot.  You have seemingly taken the best from each of the available implementations and combined them together.

I am excited to see how it works out when you edit the battery sucking refreshing.

thanks again for your hard work!
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-20 22:27:32
Jorur,

OK I am having some issues, could you please help?

Firstly, upon first install of your http controller, it is looking in a totally different place than I have Foobar installed.  It wants to look in "Users/Application Data", not "Program Files/Foobar".  I copied the entire foobar folder to "Users/Application Data...." and kind of fixed it.

Secondly, no art is displaying at all.  Do you have text for the other "Helpers" and "Album Art" fields in Preferences?  If not do I leave them blank?

Thirdly, while in the playlist, cliking on a song just turns it blue.  Clicking again then starts the song.  Double click?  Strange.

Lastly, I cannot change pages in the playlist.

Any thoughts?

FYI, I fully removed httpcontrol.dll, did a clean reinstall, extracted your deals into the httpcontrol folder, etc...  Everything looks ok, once I moved the entire Foobar folder to where your controller is looking for it.  The weird thing is I dont remember having to do any of this when I used Aurics config.

Help please!!!
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-21 00:37:30
Updated mine slightly to include the file browser. When stopped, stop button changes to browser view link.

Thanks to vairulez for the basis of my browser. Modified slightly to better fit/suit my phone.

Files are here http://tiny.cc/JVFUl (http://tiny.cc/JVFUl) for anyone wishing to use it.




If anyone could confirm if it works on iPhone I would be grateful, cheers.


Kev,

Your first version worked just fine.  Although I havent tried any of your further efforts.

Just wondering.... why do you have the buttons and text covering up the art?  Why not move them to the top and bottom?

-p
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-21 04:22:26
pcstockton, since a last couple of component versions user have to store template data in %appdata%/foobar2000 instead of fb2k components directory.

...and while I agree Joror's template needs some bugfixing, I cannot take away the fact that mostly it works. I'd fix it, but I have neither iphone nor motivation. let's wait for the author or somebody else brave to do the dirty work.
by the way, album art pane is functional in it as well, you just have to define art search rules in component preferences.
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-21 15:35:45
Kev,

Your first version worked just fine.  Although I havent tried any of your further efforts.

Just wondering.... why do you have the buttons and text covering up the art?  Why not move them to the top and bottom?

-p


Personal preference really.

Although I'm now liking Joror's fuctionality a lot. Its very clean looking. I will need some tweaking though to get it to fit on a single screen without scrolling on my G1 and to add my needed remove current track button somewhere, but its brilliant.
Title: foo_httpcontrol
Post by: viktor on 2009-07-21 16:07:16
wow, i just saw that foo_httpcontrol is now hosted on google code. very nice and thanks for your superb work!
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-22 03:52:18
pcstockton, since a last couple of component versions user have to store template data in %appdata%/foobar2000 instead of fb2k components directory.

...and while I agree Joror's template needs some bugfixing, I cannot take away the fact that mostly it works. I'd fix it, but I have neither iphone nor motivation. let's wait for the author or somebody else brave to do the dirty work.
by the way, album art pane is functional in it as well, you just have to define art search rules in component preferences.


Oh yes, it is certainly sweet.  Perfect actually.  I cant wait for the little bugs to get worked out.  I wish I had the knowledge to help myself

It is gorgeous and exactly what Ive been looking for.

Do you know what I should put in Preferences to make the album art work.  If even just that worked i would be stoked.  I dont use playlists very often.

thanks again for the hard work everyone!!!
Title: foo_httpcontrol
Post by: urs55 on 2009-07-22 10:34:09
Oblikoamorales plug-in IN COMBINATION with Jorors template could finally change my "audio-world". The two pieces together are just the missing link, because for Windows based systems it would become possible to combine foobars audio quality and capability with the slick user interface as provided by iTunes + Apple Remote software + iTouch/iPhone.

Currently I must choose between two options:

Option 1
enjoy the luxury and the elegance of the Apple tools (iTunes + Apple remote software + iTouch).
The price I have to pay for this is:
- transcode all the 16/44 FLAC files into ALAC (dbpoweramp)
- transcode all high res FLAC files into AIFF (which is a mess and tagging is hardly standardized under Windows) (dbpoweramp, iTunes)
- recalculate replaygain values either with iVolume (slow) or reformatting replaygain values using mp3tag (iTunNormTag)
- keep the FLAC files (yes I want to keep the FLACs!) and their back-up (this needs 2 x 1TB disks for my collection)
- keep the ALAC and the AIFF files (another 2 x 1TB disks at least)

remaining disadvantages:
- not state of the art audio quality (XP: no ASIO, no kernel streaming support. Vista: no WASAPI).
- if I play a 16/44 ALAC and afterwards a 24/96 AIFF file, I have to exit and restart iTunes.

Option 2
enjoy the audio quality of foobar using flac files for any resolution (16/44, 24/96, etc.) and the WASAPI driver for my DAC. Foobar must not be restarted if the resolution changes.

remaining disadvantage:
- the iTouch with the beautiful iTunes Remote application installed gets dusty on the shelf and I have to walk to the computer to change tracks, switch playlists or search a song/album/musician.


Impression after some testing
foo_httpcontrol has reached a very usable and robust state, while Jorors is clearly the best available template it's not yet there:
- refresh problem. If I select a track it takes way to long until the selection is confirmed by the small blue arrow. Track running time is not displayed continuously.
- uses a lot of battery
- some bugs as mentioned in previous posts by others (though the album art works perfectly. As stated in an earlier post by oblikoamorale you assign the following value to the album art field of the http control preferences page: $directory_path(%path%)\folder.jpg)
- in addition: the top bar with the left arrow button and the list button should NOT move, when I scroll through the list.


Final thoughts
These two components belong together like twins. Improvements based on Jorors template might be a small step for a gifted programmer (oblikoamorales, Joror) but a giant step for the computer audio world ;-) Of course I know these "small steps" are always more tricky than they seem to be at a first glance. If I can get rid of maintaining my collection in two different file formats, I will press for sure on that "Donate" button, though it won't be a fortune, it will be for sure more than 10 or 20 USD.

... tried my best to motivate the both of you and keep you going 

Urs

Title: foo_httpcontrol
Post by: Kev0 on 2009-07-22 13:51:25
......

- in addition: the top bar with the left arrow button and the list button should NOT move, when I scroll through the list.

....


I had this thought too. I'll look into it when I get round to it.


To better fit my screen I've moved the volume bar and made it show/hide on click, like the progress bar does.

I've also re-enabled the broswer as I prefer to have it. But I'm using the browser page I modified based on vairulez.


Brilliant work Joror and oblikoamorale.
Title: foo_httpcontrol
Post by: lxofith on 2009-07-22 22:58:59
Hello all,

I have been playing with foo_httpcontrol and Joror's template for a few days now (since I got my iPhone actually). I would like to thank them warmly for the tremendous work they did. I first thought of implementing a DACP plugin to be able to control foobar using iTunes Remote, but that is unnecessary as Joror's template easily shows.

There are some issues with this template however, like the constant polling (which may explain battery drain), or a few visual artifacts here and there. Also lacking is a feature essential to me: the ability to go through your library and play songs from there.

So I have started modifying Joror's template to make improvements in those areas. I have come to a point where those are fixed and the template is pretty usable, though far from perfect (see release notes). Regarding the library, there are two ways you can view its content with the plugin: either browsing the file system, or making queries according to user-defined parameters (see plugin configuration). I have implemented the former as it was nearly there, but the latter is planned for addition at some time.

Those who want to try the modified template can get it here:
http://www.mazeofith.net/foo_httpcontrol (http://www.mazeofith.net/foo_httpcontrol)

Note that the template is designed primarily for the iPhone. Other platforms are not a priority. Some features can only be used on the iPhone (those requiring double touch input).

I would like to state again that this is a work in progress. I cannot make any claim as to its fitness to your needs or any purpose whatsoever etc. That said some may find it useful or use it as a starting point for further progress, and I'd appreciate feedback, especially regarding battery life. The template has been extensively redesigned to avoid making requests to the plugin. When not doing anything else you get only one request at the end of the track. It will be hard to do much better and I am wondering if this translates into better battery life. Note that for now this means you are not notified of actions made directly in foobar until the next track starts. We will need to see how to address this.
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-22 23:52:19
lxofith,

KICK ASS!!!!  Thanks for your work.  I am going to leave work early so I can go home and start playing with it.

There should be no real reason why Foobar needs to "talk back" to the iPhone.  This component is typically used in situation where you dont have direct access to the computer playing Foobar, or when you would rather not have to look at a screen, and use mouse and keyboard.

I see no problem whatsoever in having it refresh only when changing things on the iPhone side.  And yes this should really help alot with the battery life issue.


The only suggestions I have, without actually playing with yours, is mentioned in some posts above.  I wouldn't mind having the volume bar "hide" when not in use.  I dont use Foobar's volume personally.  And yes playing from the "album list" (i assume you meant that when you said Library) would be really nice.

My own personal stumbling blocks I ran into were the following: (perhaps you have already addressed these)
- You must double tap a track in the playlist to get it to play (first tap highlites it blue, second tap plays the item)
- In playlist view, I could not get the Page to change with the arrows.
- The time and time "scroll bar" did not work.  It neither showed the time, nor did the slider work.
- When I touched anywhere in that area it changed Foobar to "Shuffle"
- I do have a large playlist (84K), and it seems to not wont to load out the gates.  This could just be because of the huge playlist.  But I like having the entire library on shuffle, then use the iPhone to jump around.  When I find something I like, I take it off Shuffle.
- My album art was not showing but I think I grabbed the correct code in the post above.  I tried three different codes for Album art so far and none worked.  This one above is a fourth version.  I have my fingers crossed.

In any event....  Huge Props to yourself, Joror, Oblikoamorale especially, Kev, Auric, and Soulruins (whose template I have been happily using until today).  I cannot explain how huge this is for me.  I will not go through the effort to convert everything to ALAC and use iTunes and the Remote app, no matter how cool it is.  This is the answer to all of my Foo-prayers.

Thanks again everyone!!!!

Consider me super excited, much appreciative, and tickled pink!!!!
-Patrick


Title: foo_httpcontrol
Post by: pcstockton on 2009-07-23 02:56:29
WOW!!!  You have got to be kidding me!!!  This is so good!  Thank you so much for the work.  This is a dream come true.

I cant stay long because I am going to go watch today's Tour de France stage and listen to music ALL NIGHT!.  This template is tremendous.  I cannot praise it enough.

The fading is excellent and fast.  The The addition of a "folder browser" is very nice. The overall appearance is gorgeous in general.

One little thing I noticed, which if never fixed I would still be ecstatic.  The "dot" on the track progression bar doesn't disappear with the rest of the bar.  It floats eerily across the album art when the overlay disappears.

Is it possible to have the volume bar disappear the same way the progress bar does?
Can the very topmost bar not scroll with the page?
Could the default album art appearance be without the progress overlay?

I will report back tomorrow regarding battery life improvement.  I cant imagine it wont be much, much better.

WELL DONE everyone.

Thank you so much.
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-23 08:27:59
This is what I did using Jorors template. Though I may have wasted my time now with lxofith working on it too! I shall try his amendments in a bit.



The enqueue, dir, clear line does fit on one line on my device. Must be a font issue on my PC. The current address line works in a breadcrumb type way.



I've looked into keeping the top bar static when scrolling through the playlist, but the "<ul>" pages is beyond my knowledge somewhat and I've not figured out how to do it yet.



Looking at lxofith's now.


EDIT... As he said its intended for iPhone. Unfortunalty that makes several of the changes unusable for me. Browser page is just the top bar plus a blank white screen. The playlist page only lets me highlight and unhighlight tracks, I cant do anything with them (play them or delete with the delete button)

I do like the larger track info text on click though. I might put that on what I have already.
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-23 09:57:47
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-23 17:38:37
Kev,

You should keep on developing your own version of Joror's for the Google phone, or whatever you have.  while ixo's is probably perfect for the iPhone.  You could help by reformatting for the G1 or whatever.
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-23 17:42:31
I will report back tomorrow regarding battery life improvement.  I cant imagine it wont be much, much better.


After using Ixo's template for about 4 hours last night, I cant say it drained the battery anymore than simple regular phone use.  I started at 100% and had at least 70% when all was said and done.

A second small issue popped up, once again if not fixed im not losing sleep.  I cannot easily pick songs from the playlists.  It highlights in blue upon first touch.  Sometimes it actually plays, mostly not.  any thoughts on this?


One more request upon further usage:

Is there any way to move the trashcan to somewhere else on the page?  It is really easy to touch when going back to album art screen.

Once again,  thanks to everyone who have helped get this far!

Oh, one last question....  How are you people getting such nice screenshots of your iPhone?  How do you do that?

thanks
-patrick
Title: foo_httpcontrol
Post by: lxofith on 2009-07-23 21:51:21
WOW!!!  You have got to be kidding me!!!  This is so good!  Thank you so much for the work.  This is a dream come true.

Well I am glad this has helped someone :-)

One little thing I noticed, which if never fixed I would still be ecstatic.  The "dot" on the track progression bar doesn't disappear with the rest of the bar.  It floats eerily across the album art when the overlay disappears.

Sorry about that, it got through "QA". I have fixed it.

Is it possible to have the volume bar disappear the same way the progress bar does?

Good idea, I don't use the volume bar too much either. Done.

Can the very topmost bar not scroll with the page?

This can be done and was planned already (see release notes). However Apple has made it very difficult to implement, so it may take some time.

Could the default album art appearance be without the progress overlay?

I don't use it this way, but I have added a preference so you can have it. See release notes/prefs.js.template in the new release.

Version 0.2 containing the fixes and improvements mentionned above is available at the same URL:
http://www.mazeofith.net/foo_httpcontrol (http://www.mazeofith.net/foo_httpcontrol)
Title: foo_httpcontrol
Post by: lxofith on 2009-07-23 22:00:39
EDIT... As he said its intended for iPhone. Unfortunalty that makes several of the changes unusable for me. Browser page is just the top bar plus a blank white screen. The playlist page only lets me highlight and unhighlight tracks, I cant do anything with them (play them or delete with the delete button)


Regarding the browser: I had the exact same issue when I first tried to add it back to the template, and the problem was in the plugin. Are you sure you are using the latest version (I think 0.92 is required)? Another fix may be to have a non-empty 'Browse path' in the plugin preferences, and making sure that you don't put trailing backslashes (this means no drive root like c:\). I suggest you upgrade the plugin.

Regarding the playlist: when selecting tracks, you should be able to remove them from the playlist by clicking the trash icon. It works with FF on my PC, have you tried that? It may be specific to your device but this is strange. I agree that playing a track is possible on the iPhone only (using two-finger touch). We could find another way for other devices, I have tried double-click with FF but it didn't work, maybe with a specific button on each track?
Title: foo_httpcontrol
Post by: lxofith on 2009-07-23 22:16:52
After using Ixo's template for about 4 hours last night, I cant say it drained the battery anymore than simple regular phone use.  I started at 100% and had at least 70% when all was said and done.

OK, this is good to know. Have you tried the original template by Joror in the same conditions?

A second small issue popped up, once again if not fixed im not losing sleep.  I cannot easily pick songs from the playlists.  It highlights in blue upon first touch.  Sometimes it actually plays, mostly not.  any thoughts on this?

You must touch the song with two fingers at the same time to make it play. This is similar to the browser where this gesture is used to empty the current playlist, enqueue the directory and start playing.
I recognize this is not intuitive. I would like to be able to select the songs or play them easily. Maybe this:
- click on the main part in the middle to play the song
- click on the left or right parts to select/unselect
What do you think?

One more request upon further usage:

Is there any way to move the trashcan to somewhere else on the page?  It is really easy to touch when going back to album art screen.

Yes I do agree with you, though I haven't found a very good spot. Maybe in the 'Page x of x' section, to the right? It would be aligned with the zone that is used for selection (if we follow what I suggest above).
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-24 01:46:44
After using Ixo's template for about 4 hours last night, I cant say it drained the battery anymore than simple regular phone use.  I started at 100% and had at least 70% when all was said and done.

OK, this is good to know. Have you tried the original template by Joror in the same conditions?

A second small issue popped up, once again if not fixed im not losing sleep.  I cannot easily pick songs from the playlists.  It highlights in blue upon first touch.  Sometimes it actually plays, mostly not.  any thoughts on this?

You must touch the song with two fingers at the same time to make it play. This is similar to the browser where this gesture is used to empty the current playlist, enqueue the directory and start playing.
I recognize this is not intuitive. I would like to be able to select the songs or play them easily. Maybe this:
- click on the main part in the middle to play the song
- click on the left or right parts to select/unselect
What do you think?

One more request upon further usage:

Is there any way to move the trashcan to somewhere else on the page?  It is really easy to touch when going back to album art screen.

Yes I do agree with you, though I haven't found a very good spot. Maybe in the 'Page x of x' section, to the right? It would be aligned with the zone that is used for selection (if we follow what I suggest above).



Ixo,

To be honest I have not tried the original Auric or Joror for that long.  But if I had to guess I wouls say I used that much battery in much shorter sessions.

Thanks for the tip on the multi-touch selection style on the playlist.  I dont know how i missed that.  But i now know why it sometimes worked after I mashed the screen a couple of times.

Regarding your question on how to enqueue, i cannot answer without playing with the playlist now that I know how it works.  I am planning a long listening session tonight and will get back to you on my opinion there.

RE: the trashcan, i think that would as good a place as any other. 

Ixo....  thanks again for the hard work.  I bought a iPhone dock today because of your template.  So good.

lastly, you commented that that you were glad this template helped me.  It will help thousands.

There must be a way for you to submit this as an application to Apple/iTunes and sell it for .99
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-24 02:06:08
Wondering....  what is the selection of the tracks for in the playlist?  If i highlight more than one song what happens, and how do I play them after selecting a few.  Does it just queue them up?

this one is new to me.
thx
-p
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-24 03:54:55
Ixo,

Nice work on the 0.2 release.  Well done.  And fast to boot.

One question.... Is the art getting stretched now that the volume bar is gone?  It kind of appears that way.

If so, maybe you could make the control bar at the bottom thicker?  But maybe that messes with things when the overlay is on?? Possibly just a thicker black control bar and keep the control buttons justified to the bottom?

In any event.... again SOOOOOO many thanks.  I have already turned on a bunch of friends to this.  Haven't received any feedback though.

-patrick
Title: foo_httpcontrol
Post by: Kev0 on 2009-07-24 11:55:44
My suggestion for the playlist page, as I had the same thought about the bin button (although it didnt work for me) would be single click selects and highlights as it does now. But on select the track number changes to a play button which starts track on click. And when selected it changes the track time to a bin button, for deleting?


I will have a go of your latest version, and make sure I have the latest version of the component too, to see if that fixes any of the ploblems I was having.

Ta.
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-24 19:59:39
Wondering....  what is the selection of the tracks for in the playlist?  If i highlight more than one song what happens, and how do I play them after selecting a few.  Does it just queue them up?

this one is new to me.
thx
-p


I cant really see the reason for being able to select more than one song.  I am sure I am missing something here.  If I highlight three of four, it will only play the one I "double tap". 

In any case.  Everything is working wonderfully on my end.  Using it at work now!

I do think the album art is stretching though.

thanks!

Title: foo_httpcontrol
Post by: pcstockton on 2009-07-25 01:48:55
i noticed one more tiny bug....

The "flash" that occurs when you touch a button (next track for example) now occurs in the wrong place due to moving the volume bar.

thanks!
Title: foo_httpcontrol
Post by: vassie on 2009-07-25 16:35:23
How can I get embedded album art to show in the browser?
Thanks
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-25 21:22:11
Also lacking is a feature essential to me: the ability to go through your library and play songs from there.


lxofith,

Have you sussed out this detail yet?  Do you think it would be possible to play directly from the "Album List" with the A,B,C,D etc style scroll bar on the right?  I guess it would be similar to browsing by artist in the Remote App.

I realize that the Remote app works this way due to how iTunes itself works, but though it might be something that could be implemented in the place of the File Browser.

Just a thought....

thanks again for this dream of a template!
-patrick
Title: foo_httpcontrol
Post by: TsiRoadkill on 2009-07-26 03:41:49
Im having problems with lxofith's config. The forward/back/play/pause buttons are hidden under safaris browser controls and I cant get to them any ideas?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-26 11:10:54
How can I get embedded album art to show in the browser?
you can't right now, but it will be possible soon.
Title: foo_httpcontrol
Post by: Joror on 2009-07-26 12:17:39
Hey guys, sorry for my inattention, was diverted away from this little project for a while. (and I thought that I had notifications set for this topic, but it only triggered once)

My situation actually changed so that I am using foobar2000 alot less, so I will probably not actively be working on this template anymore.
But it looks like all of you and LxOfIth especially picked up my slack admirably! Kudos! (open software > closed software)

I am currently persuing some iPhone app development, so I might eventually create a native app sometime.

Title: foo_httpcontrol
Post by: lxofith on 2009-07-26 22:47:33
Many thanks to all who have submitted feedback. There are very interesting ideas coming up (as well as the usual bug reports!), and I am confident we can get a great template -- at least if I have enough time to work on it; this is surely not the case right now, and I am going on vacation in a week, so please be patient.

Anyway, here are a few comments on what was suggested:

Seems like there are a few things to work on ;-) But the early feedback is sure encouraging, thank you!
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-27 16:55:10
Many thanks to all who have submitted feedback. There are very interesting ideas coming up (as well as the usual bug reports!), and I am confident we can get a great template -- at least if I have enough time to work on it; this is surely not the case right now, and I am going on vacation in a week, so please be patient.

Seems like there are a few things to work on ;-) But the early feedback is sure encouraging, thank you!


Thanks for the comments and explanations lxofith.  We all really appreciate you hard work.  It is so good now, I would use it this way forever.  Have a great time on your vacation!!

Regarding the album art....  I think your initial thought to bring back the volume bar is probably prudent.  Or whatever you think would work to get the aspect ratio correct.  Maybe just a thicker bottom bar?  In any case you have one vote for square album art.  I dont mind seeing the volume bar if it the easiest way to achieve this.

The buttons for playback would be really nice. 

Yes you are correct...  Artist view, Album view and Song view (aha 3 user defined criteria!), in Remote app look like the Contacts list on iPhone.  This is ideal.  You dont have to scroll down a huge page, and it would possibly eliminate the need for "pages".  Much more elegant.

I was mostly kidding when I mentioned selling the app on iTunes.  Of course it would be a nightmare to attempt to give proper credit/compensation to those who have been instrumental in getting this app as far along as it is.  The Foobar community has always embraced a "free" open source community.  Although I think it is certainly good enough to garner a few duckets.  I was mostly just trying to show appreciation to you oblik, yourself, Auric, joror, kev, soulruins, and the many, many others who have helped get this to where it is.  I would bet there are dozens who have helped directly or indirectly on this.

Kudos to all!

-patrick
Title: foo_httpcontrol
Post by: foo_peter on 2009-07-27 22:48:55
@Hi Oblikoamorale,

Unfortunately, the new DLL 0.93 now no longer see pictures






Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-28 03:44:17
uhh, you have to be more specific. what's your album art setup? what does a browser tell you when requesting http://<your_ip>:<your_port>/albumart_ during playback and while stopped?
Title: foo_httpcontrol
Post by: foo_peter on 2009-07-28 07:29:46
Sorry for my bad english it must be unicode compare both pictures and Best rating as stars and hearts

everything else is also my cover will be displayed


Thank you
  for their quick help
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-07-28 09:05:55
yep, there is an unexpected issue with missing or wrong document content-type... thanks for pointing that out.

to everyone downloaded 0.93: please revert to 0.92 or wait until a fixed version appears later today.
Title: foo_httpcontrol
Post by: mellow on 2009-07-28 17:55:29
Hi, I have skimmed through this thread and i don't think i've seen this mentioned.. but using lxofith's template on my iphone, I cannot see the play/pause and skip back and forth buttons as they are hidden by the iPhone's browser controls.

I'm sure im doing something wrong..

thanks!
Title: foo_httpcontrol
Post by: lxofith on 2009-07-28 18:20:07
Hi, I have skimmed through this thread and i don't think i've seen this mentioned.. but using lxofith's template on my iphone, I cannot see the play/pause and skip back and forth buttons as they are hidden by the iPhone's browser controls.

I'm sure im doing something wrong..

thanks!

The application is meant to be used as a native app. Add a shortcut to a home screen and launch the remote from there instead of using safari. This should work much better.
Title: foo_httpcontrol
Post by: mellow on 2009-07-28 18:43:01
That's fixed it, thanks.

I'm not sure if it's my network or what, but it seems to take a long time for what is displayed on the iphone to update after pressing one of the controls. Also it quite often just quits safari after it has been stuck for a bit.
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-28 19:06:14
That's fixed it, thanks.

I'm not sure if it's my network or what, but it seems to take a long time for what is displayed on the iphone to update after pressing one of the controls. Also it quite often just quits safari after it has been stuck for a bit.


hmmmm, something strange is going on.  It is extrmely fast for me.  Even loading over 100K of songs in playlists.  I am excited to see how well this works once a "Contacts" Style list is implemented.

thx.p
Title: foo_httpcontrol
Post by: foo_peter on 2009-07-28 20:07:07
yep, there is an unexpected issue with missing or wrong document content-type... thanks for pointing that out.

to everyone downloaded 0.93: please revert to 0.92 or wait until a fixed version appears later today.


@ oblikoamorale, 0.93
Thank you for the quick repair everything goes fine as usual
Title: foo_httpcontrol
Post by: mellow on 2009-07-29 00:14:04
hmmmm, something strange is going on.  It is extrmely fast for me.  Even loading over 100K of songs in playlists.


That's rather annoying. It is extremely slow for me even with the iPhone next to the router.. although the pc is connected to the network using a network over mains kit, but it works fine in games etc. Maybe it's my router?
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-29 01:02:38
hmmmm, something strange is going on.  It is extrmely fast for me.  Even loading over 100K of songs in playlists.


That's rather annoying. It is extremely slow for me even with the iPhone next to the router.. although the pc is connected to the network using a network over mains kit, but it works fine in games etc. Maybe it's my router?


I am going to take a wild guess and suggest the wireless-over-mains dealio???  Not sure though.  I would contend it is neither Foobar, the foo control plugin, nor the lxofith template.  Those three have always been very, very fast for me.  I have standard fare wireless router, nothing special.  And the wireless Linksys PCI card is as standard as you can find.

Dont give up though.....  Is there a regular wireless router you can try?

-patrick

Title: foo_httpcontrol
Post by: mellow on 2009-07-29 01:23:27
I dunno if it is the network over mains dealio, it doesnt effect anything else i do on the internubs, although it does seem to be the only thing different between what im doing compared to everyone else.

I'll have a play with stuff and see what happens.

In the morning.
Title: foo_httpcontrol
Post by: lxofith on 2009-07-29 15:09:02
I dunno if it is the network over mains dealio, it doesnt effect anything else i do on the internubs, although it does seem to be the only thing different between what im doing compared to everyone else.

I'll have a play with stuff and see what happens.

In the morning.

I too would assume the culprit is the wifi connection. I do not have any speed issue at home. You could try the template locally with your pc browser and see if you have the same problem.
Title: foo_httpcontrol
Post by: mellow on 2009-07-29 16:39:32
It was the wifi. Thanks for the help guys!

Awesome plugin oblikoamorale, awesome template Ixofith.
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-29 17:16:43
lxofith,

One more little bug...

When I use the search function (Query), the playlist does not load until you start playing in the album art pane.

I was trying to figure out exactly what makes the playlist finally appear.  It seems that clicking on "next track" does the job.

Thansk again!
-p
Title: foo_httpcontrol
Post by: lxofith on 2009-07-30 00:51:44
Version 0.2.1 is out. It only fixes album art (square) and the position of the control buttons' glow.

http://www.mazeofith.net/foo_httpcontrol (http://www.mazeofith.net/foo_httpcontrol)
Title: foo_httpcontrol
Post by: lxofith on 2009-07-30 00:55:55
When I use the search function (Query), the playlist does not load until you start playing in the album art pane.

Sorry I cannot reproduce this issue with 0.2.1. Please try with that version but I doubt it would change anything as I haven't updated this aspect.

Can you please describe precisely where you start from (empty playlist or no, playing or stopped) and what you do then?
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-30 16:22:13
I would hug you if i could lxofith!!!

Cheers!
-Patrick
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-30 16:33:55
When I use the search function (Query), the playlist does not load until you start playing in the album art pane.

Sorry I cannot reproduce this issue with 0.2.1. Please try with that version but I doubt it would change anything as I haven't updated this aspect.

Can you please describe precisely where you start from (empty playlist or no, playing or stopped) and what you do then?


lxo,

OK.  Let me see if i can describe this correctly...

I have other playlists loaded and selectable on the page that lists the playlists.  Say my "All Music" List is currently selected.

Then in playlist page, there is the search bar at the top/right.  When I type say "Frank Zappa", it thinks for a second and then, the playlist page is blank, but at the top it will say something strange like Page 1 of 11212910, usually repeated twice.  If I go back to the list of playlists page, it shows "Query" at the bottom, and shows the appropriate amount of tracks.  Go back to playlist, still blank. 

Now go to album art screen, and press play or next, the Frank Zappa playlist now starts playing back.  If I then go back to the playlist it is no longer blank and says "Page 1 of 46" or whatever....  all is well.

I will try to make some screenshots showing what it looks like.

thanks again for the hard work oblik and lxo.
Title: foo_httpcontrol
Post by: lxofith on 2009-07-30 17:45:43
When I use the search function (Query), the playlist does not load until you start playing in the album art pane.

Sorry I cannot reproduce this issue with 0.2.1. Please try with that version but I doubt it would change anything as I haven't updated this aspect.

Can you please describe precisely where you start from (empty playlist or no, playing or stopped) and what you do then?


lxo,

OK.  Let me see if i can describe this correctly...

I have other playlists loaded and selectable on the page that lists the playlists.  Say my "All Music" List is currently selected.

Then in playlist page, there is the search bar at the top/right.  When I type say "Frank Zappa", it thinks for a second and then, the playlist page is blank, but at the top it will say something strange like Page 1 of 11212910, usually repeated twice.  If I go back to the list of playlists page, it shows "Query" at the bottom, and shows the appropriate amount of tracks.  Go back to playlist, still blank. 

Now go to album art screen, and press play or next, the Frank Zappa playlist now starts playing back.  If I then go back to the playlist it is no longer blank and says "Page 1 of 46" or whatever....  all is well.

I will try to make some screenshots showing what it looks like.

thanks again for the hard work oblik and lxo.

I have been experiencing strange playlist behavior as well, it seems related to paging. For example, load a playlist whose size is larger than the page size (or use a small page size). Then start playing the playlist, and skip to the next track until you get to the last item in the current playlist page. At this point if you ask for the next track again the display is not refreshed, and in fact you get a javascript error because the playlist data is corrupted. Now if you restart the currently playing track from within foobar, then reload the remote things are fine again until you reach the next page. I fear the issue lies at the plugin side, I'll have to check with oblikoamorale.
Title: foo_httpcontrol
Post by: pcstockton on 2009-07-31 16:24:56
Ixo,

Thanks for 0.2.1  I am liking the square art much more.

Title: foo_httpcontrol
Post by: perler on 2009-08-01 11:11:59
hi,

i wonder if the default skin is supposed to look like this: http://i30.tinypic.com/vzbt4y.png (http://i30.tinypic.com/vzbt4y.png) ?

also, i had to move the foo_httpcontrol_data directory from the components subdirectory into the foobar directory itself, because of an error message, maybe it has something to do with this.

i have foobar installed in portable mode on a mapped network drive..

and a last question, i put some .m3u files with internet radio stations (mp3 based) into the data directory and expected, that they would be loaded and played when clicked on in the web interface, but nothing happens - a bug or is it the wrong way to do this?

thanks in advance and thanks for the super snappy web interface (i have it run on an embedded windows xp device with a 400 mhz processor)

Title: foo_httpcontrol
Post by: foo_peter on 2009-08-01 22:37:07
@ oblikoamorale 

Thanks for 0.94 now with template
This is the biggest you are the best


only a small thing:

failed to read C:\Programme\foobar2000\components\foo_httpcontrol_data\default\foo_httpcontrol_controls_tpl.html, error code 3.
Title: foo_httpcontrol
Post by: lxofith on 2009-08-01 22:43:33
Hi all,

I have made a slight modification to my template as a bonus before going on vacation. I hoped I could do more but time flew by as usual and you guys will have to wait until I come back to have new real features ;-)

Version 0.2.2 is available at the usual location:
http://www.mazeofith.net/foo_httpcontrol (http://www.mazeofith.net/foo_httpcontrol)

Cheers

Lx_
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-08-02 06:31:49
foo_peter, not a bug. it is possible to have different templates installed without copying files and settings around. therefore stock template (named default) contents are expected to be found in folder 'default', according to new predefined setting in component preferences page.

lxofith, interestingly (and strangely) enough, your work is viable even on Opera
Title: foo_httpcontrol
Post by: lxofith on 2009-08-02 22:37:22
lxofith, interestingly (and strangely) enough, your work is viable even on Opera

I am glad to hear that, though I cannot say I am too surprised: most of the code is standard HTML/JS and would work in most browsers. There are only a few things that are iPhone-specific. I plan to remove the most annoying ones (e.g. playlist control) in the next version.

Also you must cope with the layout. What device are you using it on?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-08-03 05:37:31
lxofith, I'm just experimenting with your temlate on desktop pc. my mobile device browser is quite picky about javascript and cannot stand even highly unsophisticated stock template (damn you, nokia!).

to everyone using the component: please update to 0.95. there are no new features, but it addresses quite important fixes.
Title: foo_httpcontrol
Post by: pcstockton on 2009-08-03 16:56:10
lxo, and obliko,

Thanks again for your tireless efforts.

I will grab .95 and 0.2.2 today.

lxofith, enjoy your vacation, you've earned it im sure.
Oblikoamorale, you should take one as well!!!

Two questions.... I am not asking for you to take this to task, but curious if it is even possible to have the "alphabet" type scroll bar on the right for playlists?  As the Remote app, and Contact lists do?  If so, would this eliminate the need for "Pages" in the playlist?  Also, would it have issues with huge playlists 80K+?

Lastly, how would the user defined searches, that lxofith mentioned, be implemented?  Would it be similar to the Remote app with tabs at the bottom for artist, album, song?  If so, that would be fantastic.

Thanks again everyone.  This has fully changed my listening experience.  I listen to music far more often than I was able to previously given my 100% computer source at this point (no CD or TT for me).  If I or someone else was watching TV, I would be able to change tracks or pick a different list.

-Patrick
Title: foo_httpcontrol
Post by: pcstockton on 2009-08-04 23:30:54
NICE!!!!!!  lxofith, Did you add album art reflection at the bottom?  If so I didnt notice it before.  It is getting better all the time.

thx,
P
Title: foo_httpcontrol
Post by: lxofith on 2009-08-05 09:51:06
NICE!!!!!!  lxofith, Did you add album art reflection at the bottom?  If so I didnt notice it before.  It is getting better all the time.

Yes, I got the idea when looking at a screenshot of iTunes Remote and thought it was nicer than the solid background we had. It took little time to implement on firefox but then I had to work around a Safari-specific bug. Otherwise the feature would have found its way into a previous version.
Title: foo_httpcontrol
Post by: blonde on 2009-08-05 17:46:31
That's nice work, lxofith.  Well done!
Title: foo_httpcontrol
Post by: pcstockton on 2009-08-08 18:36:31
lxofith,

I am not sure what has changed but the loading of playlist when using the "search bar" seems to be working correctly.
Previously it would refresh the playlist, although in Foobar is was creating one.  Now it loads the list so one can cheery pick songs.

This is so good!
Title: foo_httpcontrol
Post by: sonic74 on 2009-08-09 19:40:41
my mobile device browser is quite picky about javascript and cannot stand even highly unsophisticated stock template (damn you, nokia!).


Hello oblikoamorale,
thanks for you nice plugin! I made the following changes to your template to get it working with my Nokia E51:

pad(): rename variable "char" to "ch"
fit(): wrapped around the "style." lines: if(navigator.userAgent.indexOf('Series60/3.')==-1) {}
.npc: added "z-index:-99"
id="playlist": closed <div>

You can find it here (http://sven.killig.de/foobar2000/foo_httpcontrol_controls_tpl.html).
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-08-10 17:23:26
you're right, thanks for pointing that out!
things with nokia browser don't look so gloom anymore, so we just have to cook something appropriate for tiny screens.
Title: foo_httpcontrol
Post by: Ritsl on 2009-08-16 16:34:53
Thanks for the update, I like the template folders. Makes it easier to update either the component or the custom template, and try out other templates. May many templates bloom!

I didn't customize the browser_tpl yet, but I have to include it in the directory anyway. Might be nice if the component would fall back to the /default/ folder in such cases, but it's no big deal.

What I don't like so much is having to copy the album art rule. Does anyone want to use different album art depending on the template?

I've updated my own 'sidebar' template, latest one is here (http://people.opera.com/rijk/tmp/foo_httpcontrol_data-sidebar-0.5.zip), in a zip now including browser_tpl. controls_tpl has been updated a bit to track the default template and also to make it work a bit better outside a sidebar, looks are still the same.

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-08-17 07:40:26
Ritsl, maybe you're right and having individual album art setting for every template is overkill. but on the other side I can imagine a couple of cases where it might be useful.
regarding a set of "common" files for templates, well... no, I don't think it is a good idea. it will mess things up and cause a confusion rather than do any good.
Title: foo_httpcontrol
Post by: foo_peter on 2009-08-18 18:26:29
my playlist code row:
Code: [Select]
<td class="p">[%tracknumber%] - <td class="p"><b>[%artist%]</ b> - [%title%]</td><td class="t">%length%&nbsp;&nbsp;&nbsp;&nbsp;</td><td class="p" style="color:yellow">&nbsp;$repeat($char(9733),[%rating%])&nbsp;&nbsp;</td><td class="t">[%play_counter%]&nbsp;&nbsp;</td><td class="count" style="color:red">&nbsp;&nbsp;[%the best%]</td>


(http://img29.imageshack.us/i/petersoldies.jpg/)
Title: foo_httpcontrol
Post by: Ritsl on 2009-08-19 17:18:20
I've given my Sidebar template a home (http://www.xs4all.nl/~vangeijt/fb2ksidebar/) now.

Title: foo_httpcontrol
Post by: tehg on 2009-08-22 00:03:30
Hey, all... I've lurked on this site for a long time and now I finally have a question. I was wondering if anyone could help me  I get this error.

failed to read C:\Users\georgy\AppData\Roaming\foobar2000\foo_httpcontrol_data\default\foo_httpcontrol_controls_tpl.html, error code 3.

Any help would be appreciated thank you so much.

Also have any of you tried to run it on other ports other than 8888 ?
Title: foo_httpcontrol
Post by: tehg on 2009-08-22 00:11:22
Hey, all... I've lurked on this site for a long time and now I finally have a question. I was wondering if anyone could help me  I get this error.

failed to read C:\Users\georgy\AppData\Roaming\foobar2000\foo_httpcontrol_data\default\foo_httpcontrol_controls_tpl.html, error code 3.

Any help would be appreciated thank you so much.

Also have any of you tried to run it on other ports other than 8888 ?


Nvm. I figured it out! Thank you for reading.
Title: foo_httpcontrol
Post by: tehg on 2009-08-22 01:20:12
So, this is fucking awesome!!!!!!! Thank you so much.

Only thing is that the search isn't working. Does it matter how big your playlist is? Mine is 30,000 +
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-08-23 08:56:15
Only thing is that the search isn't working. Does it matter how big your playlist is? Mine is 30,000 +


http://code.google.com/p/foo-httpcontrol/i...?id=3&can=1 (http://code.google.com/p/foo-httpcontrol/issues/detail?id=3&can=1)
Title: foo_httpcontrol
Post by: tehg on 2009-08-24 21:07:27
Only thing is that the search isn't working. Does it matter how big your playlist is? Mine is 30,000 +


http://code.google.com/p/foo-httpcontrol/i...?id=3&can=1 (http://code.google.com/p/foo-httpcontrol/issues/detail?id=3&can=1)


Awesome, thank you so much >=]! This is easily the best plugin for foobar.
Title: foo_httpcontrol
Post by: Xenion on 2009-08-25 12:35:54
hello,
thank you for this great plugin. i have some security related questions to this plugin.

which webserver is used?
i was able to browse all my files. this is a big security hole for me. is it possible to restrict to webserver only to the foobar folder?
mac adress filter and password is no solution as you can change macs and i don't trust my mobile device (iphone)

thanks
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-08-25 13:24:42
which webserver is used?
i was able to browse all my files. this is a big security hole for me. is it possible to restrict to webserver only to the foobar folder?
mac adress filter and password is no solution as you can change macs and i don't trust my mobile device (iphone)

File/Preferences/Tools/HTTP Control/Browse path restricts browsing to a certain place or a several places separated by |.
Hide non-playable files in browser option also helps to preserve security.
Title: foo_httpcontrol
Post by: pcstockton on 2009-08-31 19:00:20
lxofith.... are you back from vacation?  I hope it was fantastic.

I dont intend to badger you, but curious if you've had any chance to consider the iTunes Remote/Contacts  style library.

thanks again for the work!
-patrick
Title: foo_httpcontrol
Post by: lxofith on 2009-08-31 20:19:20
lxofith.... are you back from vacation?  I hope it was fantastic.

I dont intend to badger you, but curious if you've had any chance to consider the iTunes Remote/Contacts  style library.

thanks again for the work!
-patrick

Hello Patick,

Yes the vacation was nice, thanks.
Unfortunately I haven't had time to work on the template yet. I know it's been quite a while, hopefully I can find some time in the near future. I will keep you posted of course.

Cheers,
Lx_
Title: foo_httpcontrol
Post by: pcstockton on 2009-08-31 21:17:20
thx my friend!
Title: foo_httpcontrol
Post by: odyssey on 2009-08-31 23:09:40
foo_httpcontrol 0.95.4 up just now

oblikoamorale: Not sure how easy it would be to implement, that probably depends on how you structured your code, but wouldn't it be a cool idea if you could define multiple servers each with it's own template?
Nevermind!

ajquery 0.2 seems REALLY nice. I'm trying to get it to work right now, but all I get is:

Quote
An AJAX error occured.

Possible reasons:

JSON parser got stuck on erroneous data;
borken connection;
god knows what else.
Restart template or think of something else.
I get this message on Google Chrome 4.203.2

I wonder if it's because my connection to my server for some reasons are damn slow right now.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-01 03:57:10
I don't really know. perhaps seeing a dump of http://yourip:yourport/ajquery/?param3=js/state.json (http://yourip:yourport/ajquery/?param3=js/state.json) can shed some light.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-09-01 18:12:39
cool component, really!

I also got the AJAX error for ajquery, running on firefox 3.0.13 from the same computer where Foobar is installed (had worked for many times in the beginning).

And I got problems to access foobar from any other PC within the network, although firewall settings (windows firewall) are to allow access from remote computers for foobar.exe 

anybody an idea?

btw there´s a typo in the ajquery readme: it should be 'Extract archive contents to %APPADATA%\foobar2000\foo_httpcontrol_data\ajquery\' instead of 'APPADATA%\foobar2000\foo_httpcontrol\ajquery\'
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-01 20:12:19
thanks for noticing the typos.

regarding error, post http://yourip:yourport/ajquery/?param3=js/state.json (http://yourip:yourport/ajquery/?param3=js/state.json) here, to pastebin, or anywhere else. it's the only way to find out what's wrong.
Title: foo_httpcontrol
Post by: DrPreston on 2009-09-01 22:29:31
I know I'm going to sound stupid.
I'm usually pretty technologically savvy (i've been an IT professional for a couple of years now) but for the life of me I cannot figure out how to access httpcontrol from any device other than my PC which is running it. The readme contains no information beyond how to install this plugin. Someone who knows what they're doing should go through and make a comprehensive walkthrough on how to configure it
Sorry if I sound like an idiot, I'm sure it's something really stupid that I'm missing here.
Title: foo_httpcontrol
Post by: pcstockton on 2009-09-02 00:04:43
Dr. Preston.

Firstly, the device you want to use to connect to Foobar must be on the same Wifi network.

Then simply point the devices browser to the same address you are using on your local computer.

http://youripadress:8888/index.html (http://youripadress:8888/index.html)

of course the above will be different if you are not using one of the html templates, or if you have changed the port in Foobar settings to something other than 8888.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-09-02 09:10:59
regarding error, post http://yourip:yourport/ajquery/?param3=js/state.json (http://yourip:yourport/ajquery/?param3=js/state.json) here, to pastebin, or anywhere else. it's the only way to find out what's wrong.

from the PC where foobar is installed I get this:

Code: [Select]
{"playlist": [ {"a":"120 Days","b":"120 Days (CD1)","n":"01","t":"Come Out (Come Down, Fade Out, Be Gone)","l":"8:51","d":"2006"}, {"a":"120 Days","b":"120 Days (CD1)","n":"02","t":"Be
 Mine","l":"4:15","d":"2006"}, {"a":"120 Days","b":"120 Days (CD1)","n":"03","t":"C-Musik","l":"7:22","d":"2006"}, {"a":"120 Days","b":"120 Days (CD1)","n":"04","t":"Sleepwalking","l":"3:28","d":"2006"},
 {"a":"120 Days","b":"120 Days (CD1)","n":"05","t":"Get Away","l":"4:41","d":"2006"}, {"a":"120 Days","b":"120 Days (CD1)","n":"06","t":"Keep on Smiling","l":"5:30","d":"2006"}, {"a":"120 Days","b":"120
 Days (CD1)","n":"07","t":"Lazy Eyes","l":"4:40","d":"2006"}, {"a":"120 Days","b":"120 Days (CD1)","n":"08","t":"Sleepless Nights #3","l":"3:04","d":"2006"}, {"a":"120 Days","b":"120 Days
 (CD1)","n":"09","t":"I've Lost My Vision (Kraut nr1)","l":"11:26","d":"2006"}, {"a":"120 days","b":"120 days (CD2)","n":"01","t":"Sleepwalking 120 days Remix","l":"8:00","d":"2006"}, {"a":"120 days","b":"120
 days (CD2)","n":"02","t":"Come Out, Come Down, Fade Out, Be Gone (T.A.Kaukolampi remix)","l":"9:33","d":"2006"}, {"a":"120 days","b":"120 days (CD2)","n":"03","t":"Come Out, Come Down, Fade Out, Be
 Gone (Reconstructed by Secret Machines)","l":"6:07","d":"2006"}, {"a":"120 days","b":"120 days (CD2)","n":"04","t":"Come Out, Come Down, Fade Out, Be Gone (Mental Overdrive
 remix)","l":"9:14","d":"2006"}, {"a":"?","b":"?","n":"?","t":"psychosphere_-_overlight","l":"5:11","d":"2008"}, {"a":"?","b":"?","n":"?","t":"02 Radioactivity","l":"5:21","d":"?"}, {"a":"?","b":"?","n":"?","t":"atma
 alpha","l":"7:19","d":"?"}, {"a":"?","b":"?","n":"?","t":"001_Rafael_Peligro-Enchanter","l":"6:54","d":"?"}, {"a":"?","b":"?","n":"?","t":"Mankind","l":"6:46","d":"?"}, {"a":"?","b":"?","n":"?","t":"002_Rafael_Peligro-
Precious_Psychosis","l":"6:48","d":"?"}, {"a":"?","b":"?","n":"?","t":"003_Rafael_Peligro-Cargo","l":"5:09","d":"?"}, {"a":"?","b":"?","n":"?","t":"freedom fighter 128","l":"7:55","d":"?"},
 {"a":"?","b":"?","n":"?","t":"frantic MoM","l":"6:51","d":"?"}, {"a":"?","b":"?","n":"?","t":"005_Rafael_Peligro-Lifecoach","l":"7:37","d":"?"}, {"a":"?","b":"?","n":"?","t":"006_Rafael_Peligro-
Fragile_People","l":"7:49","d":"?"}, {"a":"?","b":"?","n":"?","t":"007_Rafael_Peligro-Radiotauglich","l":"6:34","d":"?"}, {"a":"?","b":"?","n":"?","t":"008_Rafael_Peligro-Rollin_high","l":"5:51","d":"?"},
 {"a":"?","b":"?","n":"?","t":"009_Rafael_Peligro-Crosshatch","l":"6:17","d":"?"}, {"a":"?","b":"?","n":"?","t":"010_Rafael_Peligro-Storytelling","l":"6:53","d":"?"}, {"a":"?","b":"?","n":"?","t":"011_Rafael_Peligro-
In_a_special_way","l":"6:18","d":"?"}, {"a":"?","b":"?","n":"?","t":"012_Rafael_Peligro-Gorgeous_Life","l":"6:20","d":"?"}, ], "playlists": [ { "name": "Default", "count": "1" }, { "name": "LIBRARY", "count": "6016"
 }, { "name": "STATIONS", "count": "18" }, { "name": "FAVS", "count": "309" }, { "name": "Audio CD", "count": "5" }, { "name": "AUDIO BOOKS", "count": "6016" }, { "name": "STREAMRIPS", "count": "32" },
 { "name": "Matt", "count": "583" } ], "playbackOrder" : '4', "volume": "99", "SAC": "", "SAQ": "", "isPlaying": "0", "isPaused": "1", "isEnqueueing": "0", "playingItem": "1381", "focusedItem": "1381",
 "prevplayedItem": "4018", "itemPlayingPos": "23", "itemPlayingLen": "259", "playlistPage" : "1", "playlistItemsPerPage": "30", "playlistItemsCount": "6016", "playlistActive" : "1", "playlistPlaying" : "1",
 "playlistPlayingItemsCount": "6016", "playlistTotalTime" : "2wk 5d 5:28:40", "queueTotalTime" : "", "helper1": "Little 15 - ", "helper2": "Depeche Mode - Little 15", "helper3": "MP3 | 174kbps | 44100Hz | stereo",
 "albumArt": "/albumart_28860.jpg"}

which I think is ok (I got some AJAX errors before making this, but not afterwards).

Nevertheless I still can´t access from any other PC in the network. error (translated) 'firefox can´t get connection to server 127.0.0.1:8888'

edit: added line breaks to the codebox
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-02 09:36:34
well, I need http://yourip:yourport/ajquery/?param3=js/state.json (http://yourip:yourport/ajquery/?param3=js/state.json) dump made exactly when you do get an error, not afterwards or before.
Title: foo_httpcontrol
Post by: lucido on 2009-09-02 12:09:04
hi
great thanks oblikoamorale for this  plugin, very usefull especially for lazy people like me 

but I have the same issue with ajquery who occurs at startup or after a long period not connected

when i type "http://myip:myport/ajquery/?param3=js/state.json" I get the same result than vogliadicane and it work again

what can i do for helping ?

thanks
Title: foo_httpcontrol
Post by: Ritsl on 2009-09-02 13:26:33
Nevertheless I still can´t access from any other PC in the network. error (translated) 'firefox can´t get connection to server 127.0.0.1:8888'


This can't work, right? If you are not accessing foobar2000 running on the local machine, you'll need to use the proper network IP address of the machine that is actually running foobar2000. 127.0.0.1 is 'localhost', the address of the local machine. You should have an IP address like 10.0.0.xxx or 192.168.1.xxx, which are typically used for networks.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-02 18:46:55
I've added outputting of some available debug info for ajquery template, anyone willing to investigate the problems (sadly, I don't have any) are welcome.
Title: foo_httpcontrol
Post by: lucido on 2009-09-03 13:24:44
hi
error occurs then i try to refresh page (F5)  I must close page and open again severals times to make it work again  I can't remove first item of a playlist too
I don't know how to do for debugging I'm using firefox 3.5.2
thanks
 
Title: foo_httpcontrol
Post by: vogliadicane on 2009-09-03 18:09:12
I've added outputting of some available debug info for ajquery template, anyone willing to investigate the problems (sadly, I don't have any) are welcome.

do you mean the 'log access to console'? If yes, I get this when the error occurs:

Code: [Select]
foo_httpcontrol: [ 03.09 18:56:45 ] 127.0.0.1 	/default/&p3=js/state.json  	Mozilla/5.0 (Windows; U; Windows NT 6.0; de; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13 (.NET CLR 3.5.30729)
foo_httpcontrol: [ 03.09 18:58:00 ] 127.0.0.1 /default/&p3=js/state.json  Mozilla/5.0 (Windows; U; Windows NT 6.0; de; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13 (.NET CLR 3.5.30729)
foo_httpcontrol: [ 03.09 18:58:25 ] 127.0.0.1 /default/&p3=js/state.json  Mozilla/5.0 (Windows; U; Windows NT 6.0; de; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13 (.NET CLR 3.5.30729)

but I guess you meant something else...

some questions:

What remote I.P. should I take when the network router makes dynamic adresses?

Is there a way to disable file browsing completely or some plans to add this option in future versions?

 

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-03 18:56:05
I've looked into this issue. the root of the problem with ajquery template on firefox 3.5.2 is that load order of three javascript files linked in index.html somehow is random. once per a few page refreshes scripts load in correct order and page renders correctly. apparently it has something to do with http server part of the component, but I have no idea what at the moment.
again, opera 10/chrome 4 has nothing even remotely similar to this problem.

edit: disabling network.http.keep-alive in firefox preferences fixes this bug.

Quote
What remote I.P. should I take when the network router makes dynamic adresses?

put 0.0.0.0 to "bind to" preferences field, restart component server.

Quote
Is there a way to disable file browsing completely or some plans to add this option in future versions?

make your personal build of the component with removed browser.
Title: foo_httpcontrol
Post by: lucido on 2009-09-04 09:30:56
hi
Thank you oblikoamorale for your quick and detailed answer especially when it is more a bug of mozilla than your component.

I can't remove the first item of a playlist, but maybe it's done on purpose.

Whatever, your component is one of the most useful ever written for foobar.

thanks a lot
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-04 09:49:39
nope, it's not firefox bug, it's just that I can't handle keep-alive connections.
update component and template to latest versions, issues with keep-alive and inability to remove first item are solved there.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-09-04 17:37:44
make your personal build of the component with removed browser.


hehe, great idea, just don´t know how.

well, nevermind, it was just an idea, the component is great as it is now and the new version together with ajquery runs without errors for me now (on firefox).

thank you.
Title: foo_httpcontrol
Post by: lucido on 2009-09-05 15:16:03
hi
ajquery 0.4+foo_httpcontrol 0.95.5  works fine with firefox 3.5.2
thanks
Title: foo_httpcontrol
Post by: lucido on 2009-09-09 07:07:38
hi oblikoamorale
I've read this :
Would be cool if you could have a popup on another PC than the one running foobar2000

(However my brain can't handle the amount of work that would be needed to make such thing)

In your opinion, is that possible ??

By the way, is there any reasons that your component isn't listed on foobar site ?

Thanks for ajquery update (0.5)
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-09 08:31:04
I've read this :
Would be cool if you could have a popup on another PC than the one running foobar2000

(However my brain can't handle the amount of work that would be needed to make such thing)

In your opinion, is that possible ??

honestly, I don't understand what are you talking about.
Title: foo_httpcontrol
Post by: lucido on 2009-09-09 10:41:01
sorry it was a stupid question
I was thinking about an interface template who fits a very small window and always on top
Title: foo_httpcontrol
Post by: odyssey on 2009-09-10 18:22:23
sorry it was a stupid question
I was thinking about an interface template who fits a very small window and always on top

My messages are jumping from thread to thread

Actually I thought a bit about it today. I think you can work around it by using foo_upnp or by creating a streaming server on the remote foobar. Then have a local foobar just playing to null, it should be able to use prettypop or any other components that does this

Edit: If you want control, foo_httpcontrol might be a good choice, you just need something that can show a webpage in a window or something like that - Haven't been able to find such thing yet though (besides a usual browser).
Title: foo_httpcontrol
Post by: odyssey on 2009-09-10 18:25:39
@oblikoamorale: Don't know if i have asked before, but are there any chance of tag-control or rating or anything like that in the future?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-10 18:48:48
fb2k command-line interface is good enough for basic rating tasks I think, and is available right now. don't think I'll be able to extend these feaures in any way, mostly  because I don't know how and why I should do it.
Code: [Select]
        add: ability  to  execute  currently  running  foobar  with  specified
             command line parameters. make  sure  to  urlencode  command  line
             parameter (just in case). example:
             http://127.0.0.1:8888/?cmd=CmdLine&param1=%2fplaypause
Title: foo_httpcontrol
Post by: pcstockton on 2009-09-11 19:49:53
lxofith,

I was wondering if there is anything I could help with on your template.  I am NOT in any way intending to bother you about further developments, but curious if I can help at all.

I am a very quick study, and quite savvy when it comes to formatting things.  I simply dont even know where I would start.  But if pointed in the right direction I could easily complete soon, any or all of the tedious work associated with modifications.  I have time and would be happy to contribute.

As it stands now your template is absolutely amazing.  But searching with the text box is a little glitchy for me.  Playlist dont always load, interacts with the Foobar search in a strange way, etc...

The only thing that would really put it over the top would be to implement the same kind of playlist, album list, artist list as the iPhone Remote Application.  This would include a few "sort" buttons at the bottom of the page, and the alpha-numeric column down the right edge for selecting a place in the list.

If there is ANYTHING I can do I offer my services.  If I dont know how to do it, I will learn.

Thanks again everyone who has worked on this.  And incredible thanks to Obliks for the foundation.

-patrick
Title: foo_httpcontrol
Post by: lucido on 2009-09-12 14:59:45
foo_httpcontrol might be a good choice, you just need something that can show a webpage in a window or something like that - Haven't been able to find such thing yet though (besides a usual browser).

perhaps with an html application ?
Title: foo_httpcontrol
Post by: odyssey on 2009-09-12 15:22:19
foo_httpcontrol might be a good choice, you just need something that can show a webpage in a window or something like that - Haven't been able to find such thing yet though (besides a usual browser).

perhaps with an html application ?

Something like that yes, do you know of any? I'm thinking some program that just has a IE-control showing in all window, launched with parameters specifying url etc...
Title: foo_httpcontrol
Post by: Yirkha on 2009-09-12 21:06:47
http://widgets.opera.com/ (http://widgets.opera.com/) seems very close to that, work even when the browser itself is hidden in the tray system notification area, can appear always on top or always on bottom, etc.
Title: foo_httpcontrol
Post by: pentagram on 2009-09-13 18:38:33
For some reason I can't get lxofith's template to work. I think I'm probably just missing something obvious - can someone point me in the right direction?

I'm running Foobar v1.5.3 with the latest version of http control and using firefox 3.5.3 on Windows 7 RC. The default http control setup works perfectly. I extracted the foo_http_control_data files to overwrite the default ones (in foobar2000/foo_http_control_data/default) and changed the playlist row and helper 1 to those indicated in the readme, and cleared helpers 2 and 3. When I load it up I get the index.html layout, but the inteface doesn't really work. I can seek, but the seek progress bar doesn't show, and it says 'stopped' permanently. the play, skip forward, skip back, shuffle etc controls work once each but the get 'stuck' and you can't press them again. I don't get any cover art (it was set to the same location as the working default template). The browser allows me to add things to the playlist, but is one long page that goes off the screen and I can't scroll. The playlist thing doesn't seem to wokr much at all.

I'm guessing I've managed to mess up the simple install instructions - could someone point me in the right direction please? help appreciated.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-14 04:16:26
upload somewhere the results you get by http://yourip:yourport/ (http://yourip:yourport/) request. it is possible this json data is broken and causes problems.
Title: foo_httpcontrol
Post by: Gehirnmaehung on 2009-09-20 21:22:49
Hi,

i just installed the latest version of your plugin (which totally blows) and the ajquery-skin. Call me stupid, but why are thoses cool on-click menus not showing up everytime? I just restarted the machine which runs foobar and now i don't get the queue/dequeue/... menu anymore when i click on a song. Is this some sort of setting? I used the same client (ff 3.5.2).

Thanks, Gehirnmaehung
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-09-21 06:57:57
popup menus are supposed to appear on click only while user holds ctrl key. I think it has been mentioned in template readme.txt somewhere.
if you want popups to be displayed every time you click playlist item or playlist tab,  it's just a matter of commenting out two lines in ajquery.js
Title: foo_httpcontrol
Post by: odyssey on 2009-10-12 23:44:39
@lxofith: I have trouble using your 0.2.2 template. It seems to work well for playback, but I can't change the playing track to a specific using the playlist-browser (default controls work fine) - And why does items get selected by single-click?

A have a few requests for the preferences:
* Remove volume-slider
* Disable file-browser (replace button with playlist-link)

In addition:
* Remove ? if album-name is not found
* Replace missing album-art with something else
* Rating-buttons would be awesome!

Something is probably fixable with proper configuration in foobar, but I didn't look that much into it yet.


@oblikoamorale: I asked previously (but stroke-it-over because I thought it was already possible) if you could implement the possibility to use multiple themes at the same time, eventually as different servers (wouldn't matter how it's implemented actually). If it's already possible, please enlighten me


@lucido: I tried a little with the vorbisstreamer, but as it drops the stream when playback is stopped, it doesn't work very well. However, when it's just running it works pretty well with foo_osd at least. I was told that edcast appearently should not drop the stream, but it's really unstable and I couldn't even get it to work.
Title: foo_httpcontrol
Post by: swiharta on 2009-10-18 20:30:18
My suggestion for the playlist page, as I had the same thought about the bin button (although it didnt work for me) would be single click selects and highlights as it does now. But on select the track number changes to a play button which starts track on click. And when selected it changes the track time to a bin button, for deleting?

I like the idea of adding buttons when a track is selected to be able to play or delete the track. One advantage is that it would work on all platforms. I may implement that behavior. In this case, I would also make it so that selecting another track cancels any previous selection, and re-selecting a track would unselect it.


I am currently enjoying lxofith's template for foo_httpcontrol on my Palm Pre, and it looks perfect given it has the same resolution as the iPhone. Maybe it also helps that its browser is based on Webkit like Safari. The above proposed changed behavior in selecting and playing playlists is the only significant thing keeping me from fully enjoying the template, since I can't do an iPhone "double-tap" (wish there was a way to emulate that on the Pre).

Not only would making these changes open up the full experience to more smart phones, but they actually make a lot more sense from a UI standpoint. Sure, it would be nice to keep the double-tap for something, but at least lets agree that it shouldn't be for the most common function you would want when controlling a playlist.

In brief, lxofith has done amazing work on the iPhone template, but the current playlist behavior prevents non-iPhones from fully becoming the awesome foobar touchscreen remotes they deserve to be.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-22 16:24:43
Hi all!

First, many thanks to oblikomorale for this masterpiece plugin.

I've search for days on the net to find a remote hhttp plugin working with foobar. I want use it for controlling foobar with my PSP. With playlist view, main controls and why not browser.

I would know if someone already made a template for the psp ? If not, can you tell me how to do that please ?

Sorry for my bad english, I know some DOS commands but i don't speack english very well.

Thanks in advance.

Great work.
Title: foo_httpcontrol
Post by: pcstockton on 2009-10-22 17:23:22
In brief, lxofith has done amazing work on the iPhone template, but the current playlist behavior prevents non-iPhones from fully becoming the awesome foobar touchscreen remotes they deserve to be.


NOTHING is stopping you from developing one on your own.  lxofith has obviously spent much time, without compensation, and for you to imply he left you out is laughable.  Obviously lxofith has an iPhone, and is developing, and kindly sharing, his template for himself.  Not you and your Nintendo phone....
Title: foo_httpcontrol
Post by: tykwan on 2009-10-23 00:32:03
Hi, I am a newbie of foo_httpcontrol.

Recently downloaded the foo_httpcontrol_0_95_6 and followed the instructions to install. Unfortunately, I had no luck with it. When I tried to control my foobar, the browser showed as below:

"Failed to read C:\Documents and Settings\kwan\Application Data\foobar2000\foo_httpcontrol_data\default\foo_httpcontrol_controls_tpl.html.
The system cannot find the path specified. (3)"

Wondering does this foo_httpcontrol has to be run on a specific version of foobar? My foobar2000 version is 0.9.6.9

Your advices will be greatly appreciated.

kwan
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-23 09:18:54
swiharta, it shouldn't be that hard to change 'double tap' behaviour to single click. check the javascript logic, it is pretty straghtforward. but keep in mind that with this modification you lose the ability to mark multiple tracks for further deletion.

nomad83, to develop interface for this component you need basic knowledge of html and javascript, plus you have to be aware of your platform browser quicks and oddities. that's almost it.

tykwan, you didn't put foo_httpcontrol_data folder from component distribution archive to C:\Documents and Settings\kwan\Application Data\foobar2000\.
I thought installation steps in readme.txt are described quite clearly, but obviously they are not. if anyone is willing to help me improve documentation, you are welcome.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-23 09:50:43
Hi.

Thanks for your reply Obli.

I try some modifications of your defaut template. I write some sites long time ago on HTML language. It's not a problem for me to learn again, I like this.

I can modify images of buttons, some words, but I can't move the buttons and others importants things, but I try to learn.

The only things I don't know is the Java parts. It's difficult to modify that ?

Can I create a new template with Html and CSS style, it's better than html page alone ?

Really thanks for your work, I search durings days and days until I found your plugin. Then I must learn and work me too for get the best solution for me, it's perfect.

Thanks.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-23 12:41:44
no, it is not that difficult. I suggest you try to learn by messing with existing templates and then try creating something of your own.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-23 13:09:24
Ok, thanks you for your quick reply.

That's I do since yesterday. I export the javascrip and css to different files, like that, I can work on differently parts one by one and try to learn by changing some lines, like you say.

Thanks again.

PS: I've a little problem. On my PSP net borwser. When I refresh the page of the index after pres play button, this like i press play/pause button again. I press again refresh, and it's play again. There is a solution for that ? Thanks.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-23 16:04:16
you can't really do anything with this, as manual refresh of the page after issuing some html form command resends this command again in most browsers.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-23 16:32:24
Thanks for reply and help.

Last question, I can do anything for the refresh after hit buton too ?

Example, I press the play button and all the page is refresh on my PSP browser(very fast on my PC browser by the way).It's cool but little anoying after some time.

Do you know th ngRC project ? It's a remote app for Media Center Windows, wich work with apache tomcat server on PC. In the browser, when I press a button, nothing is refresh, the player on PC doing just what I do. (It's that's you say in your reply ?)

But it's nothing very important, just for confortable utilisation.

Thanks in advance.

Best regards.
Title: foo_httpcontrol
Post by: odyssey on 2009-10-23 16:39:49
oblikoamorale: Can you comment on my problem when changing playlists and my inability to select tracks to be played?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-24 09:27:50
please be more specific. is there a problem with the component itself?
if you're referring to lxofith template, it was designed for iphone only, so click on playlist item would select it, and "double tap" (or whatever they call this movement) on playlist item starts playback. I don't see a way to reproduce double tap on desktop browser, so you have to make fixes to the template to get rid of this.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-24 09:30:20
nomad83: stock template is written using dead simple synchronious document model, so you can't really get away from refreshing. maybe you can try an asynchronious template which doesn't reload the whole page, such as lxofith work, or ajquery.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-24 09:50:25
Ok.Thanks.

I will try that. Only prob is ajquery and Ixofith doesn't work on my PSP :/

The replacement buttons is done, with my owns buttons. The only very hard things for me is javascript but it's ok, I like to learn.

Thanks for your support.

Best regards.

PS: Ok i think I find what I need, it's AJAX right ? My brain is going to explode. I think I must learn all javascript basics before I can really do something cooL
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-24 13:32:57
Men, I'm really off. I think I understand the concept of the method, but I can"t do this work.

If Ixofith or someone can explain me how I can send "Play" command from my browser to my server with AJAX commands.

I hope my PSP(Netfront) browser can handle AJAX commands. I just want to send "play" command without page refresh.

Thanks.

Title: foo_httpcontrol
Post by: swiharta on 2009-10-24 16:48:06
While my own request to add single-click play support for non-iPhones may indeed be laughable, the assumption that I have the know-how to do this myself is even more hilarious. Please someone help me and nomad83 out. If it's as easy as you say, it should only take a second.

I peaked through the iphonenav.js file, but I can't make heads or tails of it. I searched for "tap" and "play" and only found a single instance of the word play, none for tap. So, without noob-level code commenting, I have no hope to do anything except break it.

Besides my non-iPhone bias, I think we've reached a critical mass of people who, even owning iPhones, are confused by the single-click behavior of selecting multiple tracks to remove from a playlist. This, to me, is just not something I would want to do 99.9% of the time I am controlling foobar from my phone. I just want to play music, not edit playlists. For that, using a computer will always be much faster and convenient.

And to lxofith, I applaud your amazing work and that of your predecessors. I don't expect anything from you or anyone else, I'm just asking for help. You had a reason to work on this in the first place. I assume that improving it would be favored by you and everyone using it.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-24 17:18:39
Hi swiharta.

Just wait for a moment, i'm sure oblikoamorale will help us, but he's not forced to do that. He made this masterpiece plugin, this is already too much.

I ask help on other forums in my own language too, cause Obli and others members who help us have a life out of forums.

Just be patient and curious.

I work on that since one week now, I try everything with my friend google. Some failures, some wins but in fact the failures give me more than wins cause i'm learn more things and level up my skills.^^

Thanks for your message, I'm fell less alone now.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-24 19:27:46
nomad83: ok, here is a simple example of sending an asynchronious commands: http://pastebin.com/f5c4c3ff8 (http://pastebin.com/f5c4c3ff8) as you see, nothing there is complicated.

swiharta: it seems 'gesture' is a keyword you should've searched for. here is a 'fixed' version of lixofith template for you: iphonenav.js (http://atz.ath.cx:8282/foo_httpcontrol/lxofith/iphonenav.js)
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-24 19:35:47
Ok, thanks a lot obli.

My prob now is my PSP borwser seems to doens't support AJAX or Jquery commands.

On my PC all working good, perfect. On the PSP browser, I see the buttons, I press them but nothing happen.

I'm really out of luck.

I search for another solution but it's hard for me. I spend my day to search but no chance. I want to load an image with buttons on it and when I press on the aera button only command's send, without any refresh. Like the image hide the refresh. Or redirected the button to another page with the command on it.

You think it's possible ? Or if you have another solution to get the AJAX working.

Thanks for your help.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-24 19:46:53
I cannot help you any further, sorry. I've no experience writing for psp browser and I doubt I'll ever be doing it. perhaps this is what you're looking for, I don't know, google is your friend in this matter. http://www.psp-programming.com/forums/inde...g24105#msg24105 (http://www.psp-programming.com/forums/index.php?PHPSESSID=5trqm7m8j0a6f9h8jel282i3k4&topic=2890.msg24105#msg24105)
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-24 19:55:52
Ok, no prob, you help me enough I think.

I take a look on that. It's exactly what I want to do. Thanks  !

I maybe try to take a look on php for bypass this prob.

Keep good work, I hope you do some greats plugins again for us.

Thanks a lot, you have turn on a flamme in me, i've a little project to work on, it's all.^^

Best regards from France.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-25 16:41:22
Hi.

Sorry for distrubing again, but i'm too tired and I have tried all solutions without any goals.

When I found a solution, I don't know how to use it, it's frustrated!

Here is a possible solution, but I have no idea how include on ajquery for example, or on my project:

Lojax (http://www.brothercake.com/site/resources/scripts/lojax/)

And Here's the code parts of obli that I need :

HTML:
Code: [Select]
<body onload="mouse_capture_init(); fit();" onresize="fit();">

<form action="/" method="get" name="cmd_form" target="_self" class="frm">

<input name="PlayOrPause" title="Pause/resume playback" type="image" src="pause.png" width="50"; height="50"; onclick="pc(this.name);">
<input name="cmd" type="hidden" value=""><input name="param1" type="hidden" value="">
<input name="cmd" type="hidden" value=""><input name="param1" type="hidden" value="">


java script:
Code: [Select]
function pc(c, p) {
   var com = c || ''; var par = p || '';
   with (document.cmd_form)
   {
      cmd.value = com;
      param1.value = par;
      submit();
   }
}


It's just little parts wich I understand. If someone can add the lojax script for making work with the commands above, that's great.

I think I stop searching after that, my head is going to explode, I really hope someone can help me with that.

Thanks in advance.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-25 18:04:05
nomad83:  lojax requires specific server side support and won't work properly with the component. however, I hacked lojax to be able at least to receive commands. here is the example, make sure to download both files: sending commands with lojax (http://atz.ath.cx:8282/foo_httpcontrol/lojax)
I cannot help you any further. good luck.
Title: foo_httpcontrol
Post by: swiharta on 2009-10-25 20:29:03
nomad83: ok, here is a simple example of sending an asynchronious commands: http://pastebin.com/f5c4c3ff8 (http://pastebin.com/f5c4c3ff8) as you see, nothing there is complicated.

swiharta: it seems 'gesture' is a keyword you should've searched for. here is a 'fixed' version of lixofith template for you: iphonenav.js (http://atz.ath.cx:8282/foo_httpcontrol/lxofith/iphonenav.js)


Oblikoamorale, your 60 wasted seconds of time have given me and probably some others countless hours of enjoyment on our non-iPhone mobile devices. Big ups brother, I really appreciate it.

Wish I could help you nomad83, so the PSP doesn't work too well with the template, that's too bad. Get a smart phone is my only suggestion.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-26 07:17:01
Hey guys!

I'm happy !

A dev on the PSPGen forum help me and give me a solution wich working good.

First we must use the hacked radio player wich working with official and CFW firmware. Named ifreeRadio 1.8. Very easy to use, just put the files to the root of memory stick and launch this from the radio icon.

Then with this  version you have access to amore advanced web browser wich have some interesting javascript commands:

PSP Radio commands (http://psp-online.net/ultimate-portal/UP4PSP/radio/)

Now just browse to your foo_httpcontrol template >http://myip:8888/ .

On your template now, just for testing the command, create thats lines:

Code: [Select]
<object name="radio" type="application/x-psp-extplugin"></object>


and

Code: [Select]
<input type="button" value="test" onclick="radio.sysRadioPrepareForHttpGet('http://monip/?cmd=PlayOrPause&param1=')"/>


This is just for testing the play/pause button. For the other commands see that:

Code: [Select]
Start(track) //track num must be fetched from html (index starts at zero)
QueueItems(track)
DequeueItems(track)
MoveCursor(track)
Del(track)
Seek(percent_int)
Stop()
PlayOrPause()
Start()
StartPrevious()
StartNext()
StartRandom()
PlaybackOrder(0) - Default
PlaybackOrder(1) - Repeat (playlist)
PlaybackOrder(2) - Repeat (track)
PlaybackOrder(3) - Random
PlaybackOrder(4) - Shuffle (tracks)
PlaybackOrder(5) - Shuffle (albums)
PlaybackOrder(6) - Shuffle (folders)
Volume(percent_int)
SAC(0) - don't stop after current track
SAC(1) - stop after current track
SAQ(0) - don't stop after current queue
SAQ(1) - stop after current queue
QueueAlbum()
QueueRandomItems(num_of_items)
EmptyPlaylist()
SwitchPlaylist(num_by_list) //list must be fetched from html, index starts at zero, does not play new list, just changes focus to that list
Browse()
SearchMediaLibrary("search string") //string must be in http req style
QueryRetrace()
QueryAdvance(list_index) //list must be fetched from html
P(page num) - if the playlist is longer than one page this moves to a specific page.


Just replace the PlayOrPause with others commands and create your own template !

I hope it's ok that I talk about that on your post Obli ? Thanks you again for your support. I take a look to your lojax script.

But for the moment, we can access to our own template with this simple line on the radio web browser on PSP.

I will make a template, maybe I can put him here for PSP users.

Thanks again.

Best regards.

EDIT 2: your commands working too obli !!! Nice, very nice, I think I will use yours cause with hte others I must laucnh the hacked radio then launch another browser... But the Radio Browser comand seems to be little bit more fast than the lojax ones.

I'm really sorry, but I can't make other commands like stop or start working. I must add lines or I maybe don't understand something ? Really sorry.

For people users using the psp internet browser, I suggest you the Netfront Internet Browser HighMemoryMod from Team P86.

Thanks again Oblikoamorale, you're the best.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-26 08:28:18
Sorry for double post, It's OK Oblikoamorale, I find myself how to get it work with your lojax. I use var= Play, var=Pause, etc...

Thanks again.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-26 16:09:57
Only one little thing, if you can explain me, for the volume control wich is a little bit more hard.

I try to send the command ('Volume, 10') but doesn't work or this mute the sound. I hoep I can make a volume slider but too hard for me.

Thanks for your support, sorry for being annoying.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-27 04:19:18
command requests requiring one or more parameters won't work on this modified lojax version. only one argument - cmd - is sent to the component.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-27 07:31:46
Ok. Thanks you a last time.

I think I will use the PSP Radio version, I can modify the code easily and can have some help on PSP dev forum.

Thanks again for your amazing plugin.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-27 07:42:49
I can mod lojax further to accept all parameters, later. it doesn't look too complicated. but that's the last thing I'm able to do.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-27 08:35:28
No, it's good like that, doesn't matter for that. You waste enough time for help me

I'm able to work with the PSPradio fonctions, they are very similar to the rest of your work.

Thanks you.

Title: foo_httpcontrol
Post by: augomol on 2009-10-27 14:54:47
Cool plug! 

Can I playing my library from opera mini? And how adjust it?

Thanks in advance.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-27 16:04:56
nomad83: I've updated lojax lib to transmit command parameters anyway, in case someone else needs it. lojax lib and example (http://atz.ath.cx:8282/foo_httpcontrol/lojax).

augomol: I don't know about opera mini, probably not without creating corresponding template.
Title: foo_httpcontrol
Post by: augomol on 2009-10-27 16:47:18
When I try connecting to 127.0.0.1:8888, Opera Mini show this message: Don't know how to handle request in ext:/

But I don't know how can I get control my foobar from another computer 
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-27 17:09:32
nomad83: I've updated lojax lib to transmit command parameters anyway, in case someone else needs it. lojax lib and example (http://atz.ath.cx:8282/foo_httpcontrol/lojax).

augomol: I don't know about opera mini, probably not without creating corresponding template.


Thanks a lot. I will keep this in a corner in case off.

I'm doing good with my actual work with PsP radio. But I've one problem again...

Your updated lojax will work with the seek bar and name display ?

Cause actually I must refresh for getting name of new title playing, so it's same problem what I must all this things. It's the very last thing I ask to you, I'm too tired.^^

Thanks.
Title: foo_httpcontrol
Post by: Pyromane on 2009-10-27 19:49:40
That Plugin is from a genius Oo I love it very mutch  But I've one Problem:

i forwarded my foo_httpcontrol Port 8887 with the so called "fritz box" to my pc and i've dyndns adress for easily connecting to that page.
But now the page is unsecure and everyone can have accsess to it (afraid of getting playlist changed while listening^^)...
so i look for a way of getting the whole thing working with .htaccsess-protection. I created the .htaccsess Files in the foo_httpcontrol_data folder, but the webserver doesn't run that directory... (i think there is some temp folder anywhere for the htdocs ?! So is there any way of implementing .htaccsess in it?

MfG Pyromane
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-27 20:07:24
ok, I have no idea whether this will work on psp browser or not, but here you go, basic data retrieve based on lojax: lojax lib and example (http://atz.ath.cx:8282/foo_httpcontrol/lojax/)
if this works, you have everything to build your own, although simple, psp interface.

Pyromane: htaccess is not supported. use built-in means of restricting access by ip address or login/password.
Title: foo_httpcontrol
Post by: Pyromane on 2009-10-27 20:31:08
Ah, sorry i didn't noticed that you can use password without ip-restriction
But can you tell me, where is the htdocs-folder located from which the server starts the website or are all the fiels located in the memory?

Pyromane
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-27 22:27:23
ok, I have no idea whether this will work on psp browser or not, but here you go, basic data retrieve based on lojax: lojax lib and example (http://atz.ath.cx:8282/foo_httpcontrol/lojax/)
if this works, you have everything to build your own, although simple, psp interface.

Pyromane: htaccess is not supported. use built-in means of restricting access by ip address or login/password.


Thanks for help. 

This doesn't work on the PSP browser  Nothing is display but other commands working.

But it's ok, I will search on my way, you doing all  you can.

Thanks you again and again.

Best regards.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-28 23:27:23
Oblikoamorale, there is the command to get the title of the song. I mean, when I want to have play, I send "?cmd=PlayOrPause&param1=".

There is a command for the HELPER1 ? I have a special "AJAX" like on the radio psp browser wich allow me to send something and I've another one wich allow me to get the result without refresh, but I dont' know if there is a commande for get the title playing.

Thanks.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-29 04:07:07
readme.txt quote:
Code: [Select]
       add: Parse cmd, parses param1 and returns result as
            request response. useful to check player
            state without requesting full blown state data or reloading the
            page, for example:
            http://127.0.0.1:8888/?cmd=Parse&param1=[IS_PLAYING]
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-29 09:52:49
Thanks for reply.

I try that
Code: [Select]
function get() {
radio.sysRadioPrepareForHttpGet("http://myip/?cmd=Parse&param1=[HELPER1]");
while(radio.sysRadioGetHttpGetResult()==1){
document.title('downloading...');
}
return radio.sysRadioGetHttpGetResult();
}
function updateName(){
document.getElementById('titre').innerHTML = get().match(/title>(.*?)foobar/)[1];
}


With
Code: [Select]
<input type="button" style="position:absolute; left:150px;top:150px " value="test" onclick="updateName()"/>
<b id="titre">vide</b> </div>


Here is the function radio.sysRadiogetHttpGetResult and  radio.sysRadiogetHttpGet:
Descriptions (http://psp-online.net/ultimate-portal/UP4PSP/radio/)
Descriptions (http://pspradio.co.uk/info.html)

All I got in my  "vide" when I press the button test is "null".

Thanks for your help.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-29 10:14:20
personally I don't know how to solve PSP related problems, sorry. my only suggestion is http://myip/?cmd=Parse&param1= (http://myip/?cmd=Parse&param1=)[HELPER1] indeed returns nothing (null) when foobar2000 is not playing or helper1 is not defined in component preferences.

by the way, you should consider using http://myip/?cmd=Parse&param1= (http://myip/?cmd=Parse&param1=)[HELPER1]%20 to avoid getting null response.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-29 10:28:14
Ok, thanks.

I don't know too how to use this boring psp.radio functions.

I try to ask help with that in appropriate forums.

Thanks again man .

Best regards.
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-29 16:35:39
Obli, I know you don't know how the psp browser works, but I 've a question.

Now I can get the name of the song playing now. I'm happy, I do that in a day, tired but happy.

I send the command
Code: [Select]
http://myip/?cmd=Parse&param1=[HELPER1]%20
and while the music play I get the name with other command.

I set my function to "setInterval('MYFUNCTION()',2000)" but when I change music, me or the player, the name is the same, he didn't change.

The function continue to ask the command again but the name doesn't change.

Do you have a little idea of what i've doing wrong ?

Thanks you.

Best regards.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-10-29 19:28:04
@ oblikoamorale:

I have started making my own templates. Most things are clear to me and I really love this component!

One thing, I didn´t find out is, how can I request and change tags that are not related to helpers or where no macros exist, in my case %rating% ?

Do I have to use the parse command in some way and if, how?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-10-29 19:45:37
it is not possible
Title: foo_httpcontrol
Post by: vogliadicane on 2009-10-29 20:28:08
[quote author=:ub: link=msg=580478 date=1217630244]
don't know how useful these additions are going to be, but here you go:
Thanks, oblikomorale!

I've been testing it and it works:  Using plugins RunCMD and Quicktagger (or PlaybackStatistics), it's now possible to set a %rating% tag for songs per foo_httpcontrol, and display the song's %rating% tag in the playlist.

[/quote]

^^ ah ok. I´ve asked because of this post long ago

...but didn´t want to use a workaround using another component
Title: foo_httpcontrol
Post by: alexinc on 2009-10-31 12:13:43
ok guys, as i just started looking for a remote control solution for foobar using my pda, i discovered foo_httpcontrol. so first of all many thx for this great plugin! it seems to be more useful than controlling with upnp, as control units for pdas doesnt work that well for now.

now i came across 3 limitations i would like to solve.

first of all, im using it on htc touch cruise (qvga 320x240) with win mobile 6.5 and opera 9.7 and lxofith interface with the modded iphoneav.js for single-click gesture.

-is there any easy way to convert the interface to 320x240? i guess i have to decrease all the graphics, which wouldnt be a big problem. but anyone could/would help me in rewriting the css and all stuff around, so resized graphics would fit into the whole interface again?

-i can start playing tracks with single click from playlists, but when searching for a track in folder structure i cant select a track or start playing it. is this caused by the interface being for iphone and this is one of its limitations on pda?

-last but not least, album art is shown for the first track i select, but after switching to another track it still shows the art of the first ever selected track (only restarting computer will change that). if track has no art, it doesnt show any... so it already recognizes if tracks being played are having any art or not, but seems to cache only one picture!? could this be related to opera 9.7 or is there any other solution?

thx i.a.  alex

btw. yesterday i was fighting through all 25 pages..
Title: foo_httpcontrol
Post by: nomad83 on 2009-10-31 23:58:50
Hi all.

Obli, little question for you, again I know. Finally for get the [HELPER1] I use Iframe with refresh function, by redirecting with a page .html with this inside:

Code: [Select]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Refresh" content="0; url=http://my/?cmd=Parse&param1=[HELPER1]"></head></html>


The only little prob is I can't apply any king of police, color, size on the page obtain on my Iframe. There is any way to get the [HELPER1] on a page isn't on the index page (foo_httpcontrol_controls_tpl.html).

i.e my iframe target a page title.html <ich is on the same folder of the index contain:

Code: [Select]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>Title</title></head>
<body><p style:"..." >[HELPER1]</p></body>
</html>


I can acually get the strings of the HELPER1 on the iframe result with javascript, but it's really too slow and disturbing for my PSP.

Thanks.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-01 07:28:51
yes, you can ask component to process specific file instead of default foo_httpcontrol_controls.html:
http://yourip:yourport/yourtemplate/?param...tefilename.html (http://yourip:yourport/yourtemplate/?param3=templatefilename.html)

by the way, why do you think you can't apply formatting in a single request? just urlencode everything in param1. this example shows bold red helper1 value:
http://yourip:yourport/yourtemplate/?cmd=P...3e%3c%2ffont%3e (http://yourip:yourport/yourtemplate/?cmd=Parse&param1=%3cfont+color%3d%22red%22%3e%3cstrong%3e%5bHELPER1%5d%26nbsp%3b%3c%2fstrong%3e%3c%2ffont%3e)
Title: foo_httpcontrol
Post by: nomad83 on 2009-11-01 08:28:36
Thanks a lot, I will try that right now.

You're the man, very fast reply and very good support.

Have a nice day.

Best regards.

EDIT: it's working perfectly, very nice. Thanks.
Title: foo_httpcontrol
Post by: TsiRoadkill on 2009-11-01 22:08:58
My iphone seems to choke on large playlists anyone else experiencing this? I have like 18k tracks in a few of them.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-02 04:07:16
do NOT receive all 18k tracks at once, as result is obvious. set playlist items per page option in preferences to a sane number, i.e. less than 100.
Title: foo_httpcontrol
Post by: nomad83 on 2009-11-02 16:32:13
Hi.

It's me again.

But this time not for a question.

Just to say thanks you once more time Oblikomorale.

With you, and some devs on others forums(PSPGen), and IRC, I maked a perfect template for my PSP. Refreshless, fully fonctionnal, with my own button, background, and I even made with an old <marquee>, the title actually playing can move on a small area, jukebox like. ^^

I repeat, all of that without any refresh. I'm able to modify playlists, browse my directorys, etc... Only thing I cannot make work now is the playlist page, but I use iframes and with many titles in the playlist it's just perfect.

I got to work again for the icons and the entiere style of the template, but I'm on the way and no more js probs on my road.

Thanks many times for your help, I hope each of you will make this masterpiece plugin to work, it's worth time of work.

Best regards, and really sorry for my bad english.
Title: foo_httpcontrol
Post by: crashtestcrummy on 2009-11-02 16:38:03
Hi,

Thanks for this wonderful plugin, I use it daily!

One question though : From times to times, the foohttpcontrol interface (on XP) doesn't see my computer (Vista) in the network list even though I can connect to it and it can connect to me (using shares).
Refreshing does nothing usually but, after 10 minutes or so, it finally decides to force refresh and can see my computer.

Is this an issue with FHC? Can I force the refresh?

Sorry if this question has been answered already.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-02 17:19:37
nomad83: you're welcome.

crashtestcrummy: haven't seen such issues at all, although I had no chance to test browsing on a mixed xp/vista network. there is no specific network refresh interval, the refresh itself is initiated by user-side request only. I think I've done network stuff by the book without any fancy stuff, so I really have no clue what's going on.
to speedup refresh/access tries, you can try to add remote (vista) pc name to "Browse path" in component preferences, like that:
\\vista-pc-name1|\\vista-pc-name2|etc
adding vista pc name/ip to %systemroot%\system32\drivers\etc\hosts won't hurt as well.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-02 22:18:24
@ crashtestcrummy: it´s likely an issue of the mixed XP/Vista network, especially when trying to get access TO vista PCs. Though I never experienced problems with httpcontrol, You might check all security settings on the Vista PC (firewall a.s.o.)
Title: foo_httpcontrol
Post by: L4nt0m on 2009-11-05 11:28:14
Hi all,
I designed a mimic of my default foobar config for this httpcontrol component. I've primarily designed it to use on iphone/ipod touch as remote, so for desktop use it might be too limited.

I hope you like it and thanks to oblikoamorale for this great component!

Screenshot on ipod touch:



Download: link (http://www.box.net/shared/bosv1rekc7)
Title: foo_httpcontrol
Post by: pcstockton on 2009-11-05 16:27:51
Very nice l4
Title: foo_httpcontrol
Post by: n0obie4life on 2009-11-08 05:55:16
Never Mind. I found out how to do it
Title: foo_httpcontrol
Post by: Patu on 2009-11-08 13:22:02
Thanks for your great work lxofith. Now the remote looks like it should.

I have one problem (it's probably just me). When I add something on the playlist and then browse back to the playlist, it won't update automatically. I have to go back to the playlist menu and then select the playlist again. Only then it updates the newest additions. Anyway to fix this?

Thanks
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-08 16:28:24
oblikoamorale: Is there a way to use the template´s default path in the Album art rule?

I want to use a certain image, if the file is a stream. I tried:

$if(my_condition,some_path\image.png,)

It worked with a direct path (like C:\temp) but not with anything else I tried (e.g. a path, which works in the no album art section) ...

Helpful would be any path related to foobar or this component.

Thanks.

edit: typo
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-08 18:01:37
vogliadicane: fixed in 0.95.7. relative path is relative to foobar2000.exe directory.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-08 18:13:33
vogliadicane: fixed in 0.95.7. relative path is relative to foobar2000.exe directory.


ohh sorry, I was still on 0.95.5 
Title: foo_httpcontrol
Post by: alexinc on 2009-11-08 23:25:08
-last but not least, album art is shown for the first track i select, but after switching to another track it still shows the art of the first ever selected track (only restarting computer will change that). if track has no art, it doesnt show any... so it already recognizes if tracks being played are having any art or not, but seems to cache only one picture!? could this be related to opera 9.7 or is there any other solution?


could you please try a least helping me with this issue, as it seems that its a bit faulty. tried it whith default and many other skins, but it always exists! browsed with ie and opera - no difference... when changing something in album art rule it suddenly opens the right image, but switching to another track will keep the previous album art. i guess its a little bug in component!? my rule looks like this: C:\Musik\_Art\Alben\$replace(%album artist% - %album%,:,_,?,_,/,_).jpg changing it to C:\Musik\_Art\Alben\%album artist% - %album%.jpg doesnt help either.

thx i.a.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-09 05:34:02
vogliadicane, alexinc: (re)download and try 0.95.7
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-09 09:06:31
vogliadicane, alexinc: (re)download and try 0.95.7


I did immediately after your last post. Works fine now, thanks
Title: foo_httpcontrol
Post by: alexinc on 2009-11-09 09:56:25
vogliadicane, alexinc: (re)download and try 0.95.7


I did immediately after your last post. Works fine now, thanks


me too, 4hours after latest upload!  but it didnt fix this issue... just wondering that noone else mentions it? seems related to my rule...!? of course i did "clean" update with deleting plugin+settings.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-09 10:07:40
alexinc: I've reuploaded 0.95.7 again this morning, are you sure you tried this latest version? ok, I'll figure out what's going on later.
Title: foo_httpcontrol
Post by: alexinc on 2009-11-09 11:45:19
alexinc: I've reuploaded 0.95.7 again this morning, are you sure you tried this latest version? ok, I'll figure out what's going on later.

well, if you did re-upload i'm not sure of course...  it was yesterday evening (german time) and download source said, that your upload was 4hours ago... so i'll check back after getting home today and will let you know! thx again!

edit: no further investigation seems to be necessary! just tried it via remote controlling my laptop and at least on local browsing with ie album art is changing the way its supposed to do!  nice, thx! now i just need to get a smooth ipod-like interface for 320x240 pda and an answer, why i cannot start or add tracks to playlist browsing directories on hd with lxofith-skin!
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-11 16:19:46
strange, I´ve put

Code: [Select]
$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),CLRadio.png,)|$if($strcmp($left(%path%,7),cdda$char(58)$char(47)$char(47)),CLCDr.png,)|$directory_path(%path%)\cover.jpg|$directory_path(%path%)\*.jpg

in the Album art rule, to get different graphics for streams and Audio CD.

It baasically works, but only for one of the first two options per session. Album art for local music files is always updated correctly, but for streams and CD´s only the first one used in the session is displayed correctly;

e.g. If I start the session with a CD, trhen I switch to a stream the graphic for CD is still displayed. If I start the session with a stream, the graphic for stream is still displayed when switching to a CD. No problem, if I switch to a local music file.

Any idea why this happens?

Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-12 04:41:41
I've tested all three albumart cases and they seem to work flawlessly. I think you didn't download updated 0.95.7, old version you've got has nasty typo. so just go ahead and install it.
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-12 08:22:56
I've tested all three albumart cases and they seem to work flawlessly. I think you didn't download updated 0.95.7, old version you've got has nasty typo. so just go ahead and install it.


it was actually the nasty typo! Redownloading this version did it, thanks!
Title: foo_httpcontrol
Post by: swrbad on 2009-11-14 19:09:28
Hello, I am trying many thinks to get the remote working on my iphone.Is there any step by step discription for installing all the templates and ip adresses for safari iphone browser.
When I give http://localhost:8888/index.html (http://localhost:8888/index.html) in the browser of the pc where foobar portable is running I can see the template.
But what have I to put in the http control preferences of Foobar.
There is a field "bind to" with note "yes bind succsessfull" server started.
After this field is a field remote ip and credentials and http server home directory. What is to fill here.
And what adress should I give in iphone safari browser the foobar pc and the iphone are in the same fritzbox wlan network.
Maybe some one know a good tutorial for all that stuff !
Many thanks for your help!!!!
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-15 16:21:04
Hello, I am trying many thinks to get the remote working on my iphone.Is there any step by step discription for installing all the templates and ip adresses for safari iphone browser.
When I give http://localhost:8888/index.html (http://localhost:8888/index.html) in the browser of the pc where foobar portable is running I can see the template.
But what have I to put in the http control preferences of Foobar.
There is a field "bind to" with note "yes bind succsessfull" server started.
After this field is a field remote ip and credentials and http server home directory. What is to fill here.
And what adress should I give in iphone safari browser the foobar pc and the iphone are in the same fritzbox wlan network.
Maybe some one know a good tutorial for all that stuff !
Many thanks for your help!!!!

Instead of 'localhost' you must set the IP of the server PC (where foobar is running). e.g. 192.168.2.16

Title: foo_httpcontrol
Post by: swrbad on 2009-11-15 19:34:48
Hello, I am trying many thinks to get the remote working on my iphone.Is there any step by step discription for installing all the templates and ip adresses for safari iphone browser.
When I give http://localhost:8888/index.html (http://localhost:8888/index.html) in the browser of the pc where foobar portable is running I can see the template.
But what have I to put in the http control preferences of Foobar.
There is a field "bind to" with note "yes bind succsessfull" server started.
After this field is a field remote ip and credentials and http server home directory. What is to fill here.
And what adress should I give in iphone safari browser the foobar pc and the iphone are in the same fritzbox wlan network.
Maybe some one know a good tutorial for all that stuff !
Many thanks for your help!!!!

Instead of 'localhost' you must set the IP of the server PC (where foobar is running). e.g. 192.168.2.16


Many thanks I got it!!!!!!!!
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-16 13:33:32
I've modified lxofith's latest iphone template to work and fit better on none iphone devices.

Its working great on my G1, in firefox and in chrome/safari.

Though theres a little quirk in Opera that I cant quite figure out.

Wondering if anyone can spot my mistakes before I share the files?

(I'm hacking about rather than actually having a full understanding of javascript, so if you need me to post more than this snippet to understand the problem let me know.)

Code: [Select]
playlist += "<td class='plNumber'"
            + "' onclick=\"this.className += ' clicked'; sendCommand('Start',"+ (i+fooVars.listOffset) +");\">" + fooVars.playlist[i].number;


On chrome and firefox it looks as I want it, and clicking the track number <td> initiates the start command.



whereas, in opera that <td> is not showing and the numbers are showing outside of the <td>

Title: foo_httpcontrol
Post by: alexinc on 2009-11-16 16:39:25
so what are you changing exactly for non-iphone-devices? as i'm trying the last days to make it fit on 320x240 screens and playing around in the code here and there...  same way you're doing!  started working on the "now playing"-screen and almost everything is fitting, besides shuffle-, foobar- and repeat-buttons. will solve this one too - hopefully
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-16 17:30:49
Making it fit the G1 without unessecary scrolling.
Replacing the iphone style double taps.
Making some text/buttons bigger, and changing a few colours.


This is what I've got;




On the playlist screen you can hightlight by clicking the rightside of tracks, highlighted tracks can then be removed from the playlist using the bin icon.
Clicking in the track number column starts that track, whether selected or not.

In the playlists screen clicking the bin icon completely clears out the playlist (doesnt delete the playlist thought)


I think thats all I've changed functionality wise?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-16 18:14:23
Kev0: obviously there is something wrong with playlist table tags (I can imagine some missing <tr> or <td>), and with complete source available to you only, no one else but you can figure out what. and we're out of the thread scope again.
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-17 10:04:00
Apologies for going off topic (again!)

Managed to fix it now, a missing > is all it was.

Quote
k-0.2.3 Release change log
------------------------

Now has full fucntionality in Opera, firefox and Chrome/Safari.

Making it fit the Android G1 resolution without unnecessary scrolling. (I use a modified browser that hides the notification bar, so there might be a tiny scroll when using the stock browser)
Making some text/buttons bigger, and changing a few colours.

Replacing the iphone style double taps;
On the playlist screen you can highlight by clicking the rightside of tracks, highlighted tracks can then be removed from the playlist using the bin icon.
Clicking in the track number column starts that track, whether selected or not.

On the playlists screen clicking the bin icon completely clears out the playlist (doesnt delete the playlist though)


Zip file here - http://tinyurl.com/ybjo678 (http://tinyurl.com/ybjo678)

Again, thanks to Auric, Joror and LxOfIth. They did all the hard work. And oblikoamorale, for the component and having the foresight to allow us to customise our own front end. All remote interfaces should be made like this!
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-11-17 15:50:09
Kev0: why don't you add an install file to your template? it will simplify addtion of template and its settings a lot (see example of install file in ajquery template). having a couple of screenshots wouldn't hurt as well.
Title: foo_httpcontrol
Post by: alexinc on 2009-11-17 17:35:40
nice to see and thx for sharing! its seems i'm the only one playing around with 320x240 resolution? let see, if i get it working some day, as scrolling sucks, when using such a nice interface.
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-17 18:56:44
Kev0: why don't you add an install file to your template? it will simplify addtion of template and its settings a lot (see example of install file in ajquery template). having a couple of screenshots wouldn't hurt as well.



nice to see and thx for sharing! its seems i'm the only one playing around with 320x240 resolution? let see, if i get it working some day, as scrolling sucks, when using such a nice interface.


I'll have a look at both of these if I get time.


alexinc, does the interface work as it should on you device? The only issue is the scaling of it, on your screens resolution?
Title: foo_httpcontrol
Post by: alexinc on 2009-11-17 21:34:53
just tried it some minutes right now and everything seems to work as it should. very nice! so scaling down is the big task...  played around for some days now and making it fit to 320x240 works pretty good, besides getting the repeat-, foobar- and shuffle-buttons to be positioned under progress-bar. progressbar i scaled down to 75%, but then the knob will go beyond the bar (same with volume), guess i need to change some things in iphonenav.js? well, for now i just played with "now playing"-screen, of course playlist and especially browser-screen needs lot adjustment. its not that easy i thought it could be...
Title: foo_httpcontrol
Post by: droppedD on 2009-11-18 05:45:50
Kev0: why don't you add an install file to your template? it will simplify addtion of template and its settings a lot (see example of install file in ajquery template). having a couple of screenshots wouldn't hurt as well.

I'll have a look at both of these if I get time.

I've made a version of Kevo 0.2.3 with an installer and updated readme for you: http://tinyurl.com/yjhngdj (http://tinyurl.com/yjhngdj)
Enjoy!
I may fork this going forward a bit for myself as I have a Motorola Droid - the higher DPI FWVGA resolution makes some of the buttons teensy tiny, and it's a widescreen phone so it has a bit more height to work with, too. Thanks for your hard work, though - it's a pretty slick template!
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-18 08:15:20
Good stuff droppedD.


It would be good if someone really clever sliced the CSS up into percentages! So it could scale to the screen size.
Title: foo_httpcontrol
Post by: alexinc on 2009-11-18 10:43:30
is it only style.css - related? how about the touch/gestures-input? i mean, when changing the different values in style.css to make it fit most resolutions, dont we need to adjust the fields for different input too? i mean of course some of the picture (like the bars for progress and volume) need to be resized one by one for the different resolutions, as they wont be resized throught css, am i right?
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-18 14:32:16
For the most part it will be the CSS.

Maybe the math function for the volume and Progress bar will need looking at, possible the reflection too.

I'm not completely certain what else, I'll look if I get chance.
Title: foo_httpcontrol
Post by: Kev0 on 2009-11-18 20:25:59
I started looking through the CSS to see how it would work with percentage values instead of px.

These are the files I've looked at so far incase anyone wants to pick up where I left off. Wont get chance to look again for a while.


Zip file of index.html, iphonenav.js and style.css (http://www.kevo.me.uk/f/percent_test.zip)

(This is a work in progress and by no means usable yet.)

Title: foo_httpcontrol
Post by: copperblue on 2009-11-19 16:41:40
alexinc, does the interface work as it should on you device? The only issue is the scaling of it, on your screens resolution?


Great work, it's working a treat on my Moto Cliq (320 x 480 HVGA).
Title: foo_httpcontrol
Post by: guwee on 2009-11-22 15:48:17
Hi, I'm sorry if this has already been asked but I can't seem to make it work with my iPod Touch. Everything works well when I'm accessing foobar2000 on my laptop through Opera but when I try to use my iPod Touch as a remote, i get a message that says

Quote
Cannot Open Page
Safari cannot open the page because the server cannot be found.


Again, really sorry if there's already an easy fix to this that I have overlooked. Thanks in advance!
Title: foo_httpcontrol
Post by: vogliadicane on 2009-11-23 10:43:39
I've made a version of Kevo 0.2.3 with an installer and updated readme for you: http://tinyurl.com/yjhngdj (http://tinyurl.com/yjhngdj)
Enjoy!

wow, great work! Thank you all you people involved
Title: foo_httpcontrol
Post by: gecus on 2009-11-24 21:23:37
I need some tutorial for "dummies" . I have no idea how to set this up...
Help please!
Title: foo_httpcontrol
Post by: gecus on 2009-11-25 01:50:39
I need some tutorial for "dummies" . I have no idea how to set this up...
Help please!

I got assistance from the developper, "oblikoamorale" directly (as an exception...). He got me right away on my feet. I hope that his answers will help the world of non-savies like myself:

hello.
right now you do not have to change anything in component preferences.
all you need to do is find out local ip address of your pc which runs foobar2000.
hit Start menu, choose Run. enter cmd in input field, and hit enter.
enter ipconfig in appeared black console window and hit enter again.
find the information describing your local area network connection in appeared wall of text. look out for the line looking like "IPv4 Addresss ........ : ip_address", where ip_address will be your local area network address. typically it looks like 192.168.X.X.

connect your phone to wireless network, open phone browser and navigate to address http://ip_address:8888/ (http://ip_address:8888/)


This product is excellent and highly recommended!
Thanks to oblikoamorale and the others, who helped on this development!!!
Title: foo_httpcontrol
Post by: Keepitsimple on 2009-12-03 17:48:15
Extremely cool component!

I am using foobar on both a mac and a linux machine right now with winebottle/wine. Foobar works great. It would be cool to make this app work though. Any tips on making it work?

First problem for me is that the bind to "ip:8888" is not saving (after quitting preferences and opening again). I then changed http server home director to: /home/pontus/.wine/drive_c:/Program Files/foobar2000. This was automatically changed to \home\pontus\.wine\drive_c\Program Files\foobar2000 after quitting preferences and opening it again.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-12-03 20:43:53
First problem for me is that the bind to "ip:8888" is not saving (after quitting preferences and opening again).

cannot reproduce. maybe the problem is related to SysIPAddress32 control I use for the ip field which is not (fully) supported by wine, I don't know.

I then changed http server home director to: /home/pontus/.wine/drive_c:/Program Files/foobar2000. This was automatically changed to \home\pontus\.wine\drive_c\Program Files\foobar2000 after quitting preferences and opening it again.

uhh. yes, I agree, this kind of character replacement is pointless apparently, I'll get rid of it.
Title: foo_httpcontrol
Post by: Keepitsimple on 2009-12-04 07:32:41
thx. Do you know where it is saved so I can manually add the server ip? Also am I correct in trying the foobar directory as http home server directory?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-12-04 08:26:08
you don't have to enter anything into ip field. leaving it default blank makes component listen for connections on all available network interfaces.
home directory is the place where all component data (templates) are kept. defining server home directory is not required. if the field is empty, home directory is considered as %APPDATA%\foobar2000\foo_httpcontrol. don't know how it works on wine though.
Title: foo_httpcontrol
Post by: Keepitsimple on 2009-12-04 10:14:36
ok. picture getting clearer.

I use my settings in a portable environment (was reccomended for wine, dont know why really). so all my userdata is saved in programfiles/foobar2000 instead of users/user/appdata/foobar2000. Where should I put foo_httpcontrol then. Its currently resding in users/user/appdata/foobar2000.
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-12-04 11:46:07
well, if you try to access component web page, you'll know for sure where component expects to find its data files.
but most likely, if you installed fb2k in portable mode, you have to put foo_httpcontrol_data folder to the directory containing foobar2000.exe.
Title: foo_httpcontrol
Post by: tberman333 on 2009-12-07 17:08:04
Thank you to everyone that is working in this... it is really what I needed to complete my setup at home.  The only issue I have is that I use a Windows Mobile phone (hopefully changing to the Droid soon, but damn Verizon will not let me get a good price for another year!). 

Anyway, I really like Kevs template, but it does not really fit too well on the Windows phone.  Does anyone know of a template that will work on a Touch Pro (VGA screen at 480X640).  I would be happy to try to update Kevs to work, but don't really have any coding experience, so was not sure how easy it would be to make it all fit correctly.

Thanks again.

EDIT - Adding this question:

I also have a number of live recordings in my collection.  The way I tagged these is I enter a DATE, VENUE and LOCATION rather than an ALBUM.  It works well for my setup and the %album% tag in Foobar looks at the %venue% tag I set... the only issue is, to really make sense, I would like to be able to see the %date% + %album%  in the now playing and in the playlist view.  Can anyone explain to me how to make this update in Kevs template?

Thanks!
Title: foo_httpcontrol
Post by: Kev0 on 2009-12-15 11:15:27
I'd like to know if anyone manges to get this working fully under wine?

I'd then be looking to see if I could get a sheevaplug, get it running wine and see if it works with a USB sound card.
Title: foo_httpcontrol
Post by: Tobbe on 2009-12-20 11:09:10
I'm having some problems understanding how the playlist tabs works in the ajquery template. I'm running foobar v0.9.6.9 and foo_httpcontrol 0.95.7 in firefox 3.5.5.

With only one playlist nothing happens when I click on the playlist tab. Searching in the web interface I get a playlist called "Query". Still nothing happens when I click on the playlist tabs.

How do I switch between playlists in the web interface?
Title: foo_httpcontrol
Post by: vairulez on 2009-12-27 17:01:42
is it just me or multipage playlist can't be disabled anymore ?
When I set the value to 0, it is changed to 1
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-12-27 17:13:54
Tobbe: playlist tabs are meant to switch playlists on simple mouse click. and it works fine on my testground: opera 10.10 and chrome 4 beta. can you make screenshots of web interface and template settings to clear things up?

vairulez: unlimited playlist sizes are disabled. set the number to the size of your biggest playlist to disable paging.
Title: foo_httpcontrol
Post by: Tobbe on 2009-12-27 22:00:19
It seems to work in Opera 10.00, but as I said, playlist switching doesn't work in Firefox 3.5.5. Song switching works, and Ctrl+Click works on both songs and playlist tabs.

(http://img63.imageshack.us/img63/330/httpctrlss.png) (http://img136.imageshack.us/img136/9648/httpctrlpref.png) (http://img6.imageshack.us/img6/292/httpctrltplpref.png)

Are those the screenshots you wanted, or is there something else you want to see?
Title: foo_httpcontrol
Post by: oblikoamorale on 2009-12-28 04:33:24
yes, thanks. it is peculiar that non-active playlist tab is not shaded in gray as it should. is there anything interesting appearing in firefox Tools/Error console window on page load?
anyway, I've just installed firefox 3.5.6 and my current non public version of ajquery seems to switch without problems. either try to update firefox or wait a bit for updated ajquery version. or both
Title: foo_httpcontrol
Post by: Tobbe on 2009-12-28 10:18:40
I upgraded to 3.5.6, but still have the same problem. So I guess I have to wait for your new version
Title: foo_httpcontrol
Post by: Gapkiller on 2010-01-01 22:51:51
I was trying to control foobar via my laptop using 127.0.0.1:8888
But I always get page not found errors.
While the root machine displays the template fine, my laptop isn't able to connect to it.
My laptop runs on win 7, latest firefox beta.
I also tried chrome with the same result.

am I missing something?

Thx in advance
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-02 05:29:34
if your computers are in some kind of wired or wireless LAN, change "Listen on" field to 0.0.0.0 in component preferences (if it somehow is different) and follow this: http://www.hydrogenaudio.org/forums/index....st&p=669646 (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=669646)
Title: foo_httpcontrol
Post by: Gapkiller on 2010-01-02 07:35:00
Thx for your answer.

I have wireless lan at home and have already tried this guide.   
i haven't changed anything in the preferences Dialog, found my ip adress
and pasted it with :8888 at the end.
Result: "page not found".

Even localhost:8888 ie http://127.0.0.1:8888/ (http://127.0.0.1:8888/) doesn't work but I have no idea why.
My Firewall is configured correctly and i can't think of anything else that could prevent
my laptop from connecting to my desktop PC.

Any other ideas?

thx

Title: foo_httpcontrol
Post by: Tobbe on 2010-01-02 08:58:36
On the machine that is running foobar2000 and the foo_httpcontrol plugin, can you connect to 127.0.0.1:8888?

What is the IP address of the machine running fb2k? (Probably something like 192.168.1.101). On your laptop, can you connect to that IP address + :8888? (Something like 192.168.1.101:8888).

Connecting to 127.0.0.1:8888 (or localhost:8888) on your laptop will not work because you are not running fb2k + foo_httpcontrol on that computer. Connecting to 127.0.0.1 means "connect to myself".
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-02 10:34:53
Tobbe: did the combination of component and ajquery latest versions resolve the playlist tabs switching issue you were having?
Title: foo_httpcontrol
Post by: Gapkiller on 2010-01-02 16:06:28
Quote
On the machine that is running foobar2000 and the foo_httpcontrol plugin, can you connect to 127.0.0.1:8888?

Yes.
Quote
What is the IP address of the machine running fb2k? (Probably something like 192.168.1.101). On your laptop, can you connect to that IP address + :8888? (Something like 192.168.1.101:8888).

Works perfectly!
i was probably a little intoxicated yesterday because of many whiskey sours...
Happy new year by the way!

Thx (will go to sleep before asking questions from now on  )

Gapkiller


Title: foo_httpcontrol
Post by: Tobbe on 2010-01-03 10:38:04
Works perfectly!
i was probably a little intoxicated yesterday because of many whiskey sours...
Happy new year by the way!

Thx (will go to sleep before asking questions from now on  )

Gapkiller

Great that you got it working. Glad I could help

Happy new year to you too!
Title: foo_httpcontrol
Post by: vairulez on 2010-01-04 13:32:14
I just tried the last version of httpcontrol and AJquery for foobar 1.0

1. there are some problems with old templates even after adding config.txt, the default templates works
Is there an easy way to update the templates, can you tell us what has changed ?
2. in ajquery flush queue doesn't work for me (chrome 4)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-04 15:09:50
I just tried the last version of httpcontrol and AJquery for foobar 1.0
1. there are some problems with old templates even after adding config.txt, the default templates works
Is there an easy way to update the templates, can you tell us what has changed ?

nothing apart from requirement of properly formatted config file has been changed, so all old stuff should work as it did before. what problems exactly are you experiencing?
2. in ajquery flush queue doesn't work for me (chrome 4)

I've just tested, it empties playback queue as intended. can you provide a list of steps reproducing the problem?
Title: foo_httpcontrol
Post by: NEMO7538 on 2010-01-04 21:10:18
Thanks for the new version and the ajquery stuff. I's really cool !
One request however, as I have many playlists. I would prefer to have them in a combo box (like the default design) rather than in tabs as tabs are eating all my space, if it's feasible.
Many thanks ....
Title: foo_httpcontrol
Post by: Hamallainen on 2010-01-04 23:38:27
I like the ajquery template.
Especially the way it differentiate albums from single tracks.
It looks simple but very good, i really like it. Thanks.

Is it possible to make ajquery remember  the size and position of album art / browser / library search ?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-05 11:14:41
NEMO7538: uh. I like tabs as they are, so it stays like it is, I guess. I do realise that jquery tab control becomes quite messy and buggy when tab count surpasses certain number, but I don't use that many playlists thus this problem is kinda invisible for me.
as always, you can make your own template branch, nothing is hardcoded.

Hamallainen: yeah, I've already thought of keeping windows state. I have some spare time and will post updated version later. I'm adding support for right mouse button instead of ctrl+LMB working in firefox/chrome/safari(?) as well.
Title: foo_httpcontrol
Post by: bernharddiner on 2010-01-05 12:59:42
Sorry to bother, but I have problem to install the Kevo template:


when I try to access the templates (or instal the installer version), I get the message:

Error loading C:\Dokumente und Einstellungen\XXX\Anwendungsdaten\foobar2000\foo_httpcontrol_data\kevo\config.

Installed templates list.



when i click on the installed template list, I get:

"Installed templates

    * ajquery
    * default
    * kevo [config not found]"


I can access only the ajquery and the default (underlined), which both do work proper, but have no access to the Kevo template (not underlined).

What I have observed in addition and in contradiction to the previous installations (now: Foo 1.0beta6 and foo-httpcontrol 0.96.1) is that in running Foobar under preferences/HTTPcontrol there is no chapter "templates" anymore - so I cannot change the settings for the playlist row etc. anymore!? Is this OK or not?

Thank you all for your efforts! In contradiction to me you´re doing a great job!!!

Josko
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-05 18:30:09
bernharddiner: all template settings are moved from component preferences page to the file named config.
to make kevo template work you need to create config file and put it to kevo template folder. check examples of config in ajquery and default templates, it is really very very simple.
Title: foo_httpcontrol
Post by: bernharddiner on 2010-01-06 01:59:51
Thank you oblikoamorale,

thought by myself but was too anxious to try it out.

Now I did it, and it seems to work, as long the iPod mask does not appear and everything is blocked. I have no eror messages but I cannot control Foobar. The only thing I can do is to switch btw. the pages and to hihlight the buttons, but without reaction.

Btw.: the same result with the "old" Lxofith template.

???
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-06 06:48:24
ah. another thing that has to be changed throughout the template script is the state request url. for example, lxofith script queries component with "/" url which doesn't work anymore. url has to be changed to "/lxofith/". all absolute urls to pictures and another resources within scripts or html have to be corrected too.
I have to change component code as well - right now I'm xml-escaping [helper] macros, and most of the old templates don't expect that.

in other words: there is some work to be done converting "old" templates to "new" format and making sure it works. anyone interested is welcome to participate. everyone else should stick with 0.95.7 component version until the old templates they use are converted.

EDIT: I've done some example conversions along with fixing component to be more compatible with old stuff. that's all I can help with.
Title: foo_httpcontrol
Post by: Hamallainen on 2010-01-06 11:43:00
Thanks for the remembered state, size and position of windows.
One little problem though , album art isn't displayed anymore.
I use the same path as in my default template config file but in ajquery it doesn't work anymore
(0.96.3 and 0.54a)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-06 12:49:26
interesting. upload your ajquery config or whole ajquery folder somewhere, please.
Title: foo_httpcontrol
Post by: sortestrips on 2010-01-06 13:34:21
Hey guys,

First thing first i'd like to thank all of you who have contributed to this awesome plugin.
I've got the same problems that bernharddiner has.
This is  fully working with the defaut or ajquery templates but not with kevo's or simplebasic's.
When i use the install feature it just prompt the file content;
I figured out it's suppose to create a proper config file so i've tried to make mine from the defaut template or the ajquery one and include the kevo modification listed in the template readme file.
But so far I've been unsuccesful!!
Can someone send me his config file or just copy/paste it in here.
Thank you for your time

SIncerrely,

Georges Michelet
Title: foo_httpcontrol
Post by: Hamallainen on 2010-01-06 14:19:44
interesting. upload your ajquery config or whole ajquery folder somewhere, please.

mediafire.com/file/mmwwnxknzmd/ajquery.rar

Forgot to say i'm using firefox 3.5.7
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-06 15:06:56
sortestrips: please read post #691 and then post #1 of the thread.

Hamallainen: fixed.
Title: foo_httpcontrol
Post by: Ritsl on 2010-01-06 17:03:47
EDIT: I've done some example conversions along with fixing component to be more compatible with old stuff. that's all I can help with.

Thanks, that helps. I've managed to update my template for 0.96.3 now, see http://people.opera.com/rijk/fb2ksidebar/ (http://people.opera.com/rijk/fb2ksidebar/) .
Title: foo_httpcontrol
Post by: Hamallainen on 2010-01-07 00:24:59
Thanks, working well now.
Title: foo_httpcontrol
Post by: tberman333 on 2010-01-16 15:23:47
I've made a version of Kevo 0.2.3 with an installer and updated readme for you: http://tinyurl.com/yjhngdj (http://tinyurl.com/yjhngdj)
Enjoy!
I may fork this going forward a bit for myself as I have a Motorola Droid - the higher DPI FWVGA resolution makes some of the buttons teensy tiny, and it's a widescreen phone so it has a bit more height to work with, too. Thanks for your hard work, though - it's a pretty slick template!


thanks for your work on this droppedD (and of course kevo).  I was just wondering if you have made any progress on the Droid update...  I just got one and increasing the size of this template to fit the screen better would be great.
Title: foo_httpcontrol
Post by: g.ary on 2010-01-20 11:26:16
I have tried yesterday installing this control together with Lxofith template for iPod but unfortunately got the same result as bernharddiner –  default template is working whereas Lxofith’s does not. Quick steps recap:

1. Default template is the folder  C:\Users\xxx\AppData\Roaming\foobar2000\foo_httpcontrol_data\default
2. Added Lxofith template files to C:\Users\xxx\AppData\Roaming\foobar2000\foo_httpcontrol_data\lxofith
3. Copied config file from default folder to Lxofith folder and modified as per his readme

Result – trying to acess Lxofith template directly via htto://ip:8888/index.html gives:

Error loading C:\Users\xxx\AppData\Roaming\foobar2000\foo_httpcontrol_data\index.html\config

Whereas selecting it from the list of available templates renders page in the following format (but with actual artist, album, etc data)

{ "artist": "$replace(%artist%,\,\\,",\")", "album": "$replace(%album%,\,\\,",\")", "number": "$ifgreater(%totaldiscs%,1, D%discnumber%.,)%tracknumber%", "track": "$replace(%title%,\,\\,",\")", "len": "%length%" }

Am I doing something wrong or is this now really broken?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-20 11:53:45
yes, you are doing something wrong. you're using old imcompatible templates with new component.
please read the first post carefully and take version requirements of listed templates to consideration.
Title: foo_httpcontrol
Post by: odyssey on 2010-01-20 11:57:40
I installed the lxofith template for the 1.0 component, which already includes the config-file. This (in contrary to the latest lxofith for 0.96) have some weird issues with positioning and usability (quite similar to early lxofith releases). I even tried to put the 0.22 version on top of it, but didn't fix the behavior.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-20 12:44:26
maybe, I haven't tested lxofith template conversion much. it mostly works in ff/opera/chrome, so the rest of the fixing is up to you.
Title: foo_httpcontrol
Post by: odyssey on 2010-01-20 12:48:46
How much was changed from 0.96 to 1.0 (template-wise)???

I thought it was merely export of the preferences to the config-file for each template.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-01-20 12:59:04
not much, config settings and necessity of absolute url references are the only things iirc.

it appears there were a weird error in lxofith conversion javascript code. I've fixed it, check if it helps.
Title: foo_httpcontrol
Post by: g.ary on 2010-01-20 13:35:06
RE: yes, you are doing something wrong. you're using old imcompatible templates with new component.
please read the first post carefully and take version requirements of listed templates to consideration.
>>>Thanks for quick response. I could swear that the first post has been updated within the last 24 hours 
Now,  if I understand correctly the templates listed under "User submitted templates for version 0.96.3 and newer" should work correctly with foobar2000 1.0+ component and its only the matter of using those ones.
Title: foo_httpcontrol
Post by: vogliadicane on 2010-02-03 13:50:45
I have just adapted one of my (unpublished) templates for the iPhone to the new conponent version (0.96.4).

Everything´s fine exept one little thing.
In my javascript I use the functions command, retreivestate and _sheduled from your ajquery template. Anything else is from me.

There I use an empty 'command()' with a button for refreshing all content manually.

It still works basically with version 0.96.4 but NOT for streams. If metadata is updated there I can´t get it with command().

This setting had no problems in earlier versions of http_control, so my question, did you change anything concerning updating of helpers for dynamic sources?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-02-03 14:31:57
RefreshPlayingInfo command updates helpers using current metadata. somehow it is not documented, will fix in further versions. so call it when it seems like stream is playing (playing length is unknown).
Title: foo_httpcontrol
Post by: vogliadicane on 2010-02-03 14:46:37
great! works for everything now (also albumart). Thanks a lot!
Title: foo_httpcontrol
Post by: sti3 on 2010-02-05 16:08:24
Just reinstalled windows and re-set up foobar.  A lot of stuff changed since I last did it.

Got the ajquery template and LOVE it.

I'm a css noob though--can someone tell me which lines of the index.html I'd want to modify to change the color scheme of the template?

I am guessing it's lines 12-47...  Should I just look for anything with a color value and just mess around?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-02-05 16:25:46
you can build your own jquery ui theme http://jqueryui.com/themeroller (http://jqueryui.com/themeroller), download it, extract theme data (found in css directory of downloaded zip archive) to ajquery/css, and change theme reference url in line 10 of index.html
BUT. current implementation assumes user won't use anything beside default theme (smoothness) and some colors have been hardcoded assuming theme won't be changed. so you have to sweep through the template and change whatever colors have to be changed to fit your new theme.
maybe some day I'll strip hardcoded colors and make template rely on colors provided by jquery ui theme.
Title: foo_httpcontrol
Post by: geekiegeek on 2010-02-17 01:57:09
Hi thanks for the great plug in.

Just wondering how to get the iphone templates as the links at the begining of the post dont seem to work.
Title: foo_httpcontrol
Post by: tberman333 on 2010-02-17 13:59:55
Hi thanks for the great plug in.

Just wondering how to get the iphone templates as the links at the begining of the post dont seem to work.


All of the links seem to work for me... they all bring you directly to a download of the template.
Title: foo_httpcontrol
Post by: geekiegeek on 2010-02-17 16:17:05
Hi thanks for the great plug in.

Just wondering how to get the iphone templates as the links at the begining of the post dont seem to work.


All of the links seem to work for me... they all bring you directly to a download of the template.


Thanks, they are working for me now too.
Title: foo_httpcontrol
Post by: Seldaek on 2010-02-21 20:28:24
Hi, would it be possible that the PlayRandom function acts like the random button in foobar, namely that when you are in Shuffle (albums) mode, it should pick randomly one album and start playing it from the start, instead of picking a random song. Just try to make an api call to the foobar function I think that'd be easier.

Other than that I'm in the process of building a frontend for it as a mobile application and it works fine so far so thanks
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-02-22 10:02:54
fixed, thanks for reasonable suggestion.
Title: foo_httpcontrol
Post by: alexinc on 2010-02-22 11:38:11
Other than that I'm in the process of building a frontend for it as a mobile application and it works fine so far so thanks


sounds interesting, details please! screen resolution?
Title: foo_httpcontrol
Post by: Seldaek on 2010-02-22 17:17:21
Other than that I'm in the process of building a frontend for it as a mobile application and it works fine so far so thanks


sounds interesting, details please! screen resolution?

Well... it's built in actionscript with the beta of Ellips Studio ( http://developer.openplug.com/ (http://developer.openplug.com/) ), so it could be made to run on most devices independant of screen size in theory.. however I have a ton of other things to do and this is not so high on my priority list since Ellips can only build for android1.6+ and my HTC Hero is stuck on 1.5 so my personal interest is not very high at the moment. I'll be sure to post most news here if it ever reaches a usable-by-public point, at the moment it has too many hardcoded fields and doesn't support half the functionnalities of the web interface :/
Title: foo_httpcontrol
Post by: alexinc on 2010-02-22 17:27:28
anyways, thx for your reply! i'll be watching you...
Title: foo_httpcontrol
Post by: gremlin896 on 2010-02-27 21:37:30
First off, thanks to the developer of this addon, I use it on my android g1 and it's damn useful.

Also hers some useful information for anybody using kev0's skin. I found that when using the browse function it would only show 11 files/folders. To fix this you can open the styles.css file found in the kev0 skin directory and remove the line "   height: 397px;" (line 484). This will scale the height of the page to the amount of files and folders in the current directory.

(and yes, I did just sign up to post this)

EDIT: Also, just wondering if anyone can help me with something? I'm trying to make it so that when a file is chosen in the browser it plays it straight away, rather than queueing it in the current playlist.

Code: [Select]
    }
    document.getElementById("browseList").innerHTML = browser;
    for(var i=0;i<fooVars.browser.length;i++) {
        if (!fooVars.browser[i].p) continue;
        eval("document.getElementById('browserli" + i + "').onclick = function(e) { sendCommand('Browse','" + fooVars.browser[i].pu + "'); };");
        eval("document.getElementById('browserli" + i + "').ongestureend = function(e) { playNow('" + fooVars.browser[i].pu + "'); };");
        eval("document.getElementById('browserimg" + i + "').onclick = function(e) { sendCommand('Browse','" + fooVars.browser[i].pu + "','EnqueueDirSubdirs','NoResponse',function(){setTimeout(getState,1000);}); e.stopPropagation(); };");
    }
}


I'm pretty sure something needs editing there, but I don't know what exactly. (those are lines 207-215 in "\foo_httpcontrol_data\kevo\iphonenav.js")
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-02-28 08:22:16
EDIT: Also, just wondering if anyone can help me with something? I'm trying to make it so that when a file is chosen in the browser it plays it straight away, rather than queueing it in the current playlist.

I'm afraid there is no straightforward way to start playback of added item(s) immediately. however, there is a not quite elegant workaround:
- remember playlist size prior to adding items;
- perform addition;
- query [IS_ENQUEUEING] shortly afterwards to make sure addition is complete, or keep querying while macro returns 1, otherwise proceed to next step;
- start playback of item number remembered in first step.
Title: foo_httpcontrol
Post by: vakata on 2010-03-01 20:31:52
Just created a small theme of my own, and decided to share ... maybe I missed some stuff from the API - if anyone likes it I will continue working on it. Should work in any modern browser.

Ivan
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-02 07:02:01
extremely good work, thanks for sharing! there is much to learn from your html/js/jquery coding approach
Title: foo_httpcontrol
Post by: foo_peter on 2010-03-02 08:13:35
@Vakata
I miss the readme file
Title: foo_httpcontrol
Post by: Kev0 on 2010-03-02 10:29:04
Dont know whether this will be of use to anyone else, it is a rather specific application...

But I've had a breakthrough in controlling speaker output through httpcontrol.


Nothings finished yet, but I have each rooms speakers on a separate output jack. I recently come across zvolume (http://www.zvolume.com/) which can control balance and volume on each output.....via command line!! wooooo.

So so far I have preset batch files, eg the folowing mutes all except the headphones.

Code: [Select]
zvolume /r=0 /l=0 /f=Master Volume:Bed 1 /e
zvolume /r=0 /l=0 /f=Master Volume:Bathroom /e
zvolume /r=0 /l=0 /f=Master Volume:Bed 2 /e
zvolume /r=75 /l=75 /f=Master Volume:Headphones /e


I've then added these batch files with foo_run, and with httpcontrol and foo_runcmd I can execute them from my remote device! Sonos etc, eat your (expensive) heart out.

Code: [Select]
"/kevo/?cmd=CmdLine&param1=%22%2fruncmd-playing%3dRun%20service/Vol_Headphones%22"



I've not finished implementing the controls on the remote template yet, and it wont be a "one size fits all" anyway. But thought I would share the process, as it wouldn't have been possible (or at least as easy/sexy) without httpcontrol.
Title: foo_httpcontrol
Post by: vakata on 2010-03-02 10:43:51
@oblikoamorale
Thank you  I just noticed I missed some API functions and helpers  I will post an updated version soon.

@foo_peter
With the next version  Because right now there is not much to describe, I will maybe include some keyboard shortcuts for the next one.

Which reminds me:

1) I am implementing multiselect - click an item, shift+click some place lower -> select all the items in between. Or Ctrl+Click a few items. I am saving those in an array, as I saw that the SetFocus accepts only one item. Is there an API call to select multiple items or should I continue with the client-side solution?

2) Also I was interested - any data on how often people use drag'n'drop to arrange a playlist ...  Since foobar is more of an audiophile's piece of software, usually albums are listened to in their exact order. I can easily implement drag'n'drop but I am still wondering if it will be useful.

3) Is there a way to include a file/folder at a specific position in the playlist, or is it always the last one. If it is I guess I can emulate this behavior with enqueue + save playlist size, listen for the playlist change, substract the saved playlist size from the new size, perform move of the resulting set of elements. Is this a good idea? Pros, cons, better ideas? I guess I will make drag'n'drop a config option, so the user will be able to turn this off.

Kindest regards,
Ivan

Title: foo_httpcontrol
Post by: blonde on 2010-03-02 12:11:07
@vakata:
@Kev0:

Excellent work, on both fronts!!
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-02 12:54:54
1) I am implementing multiselect - click an item, shift+click some place lower -> select all the items in between. Or Ctrl+Click a few items. I am saving those in an array, as I saw that the SetFocus accepts only one item. Is there an API call to select multiple items or should I continue with the client-side solution?

SetFocus moves cursor, it doesn't manage selection. there are no means of managing selection at the moment.

2) Also I was interested - any data on how often people use drag'n'drop to arrange a playlist ...  Since foobar is more of an audiophile's piece of software, usually albums are listened to in their exact order. I can easily implement drag'n'drop but I am still wondering if it will be useful.

that would be quote useful! personally I thought of implementing this in my ajquery template but haven't figured out a working concept
anyways. even without proper selection stuff, this couple of commands should work, if you keep the selection data client-side.
Code: [Select]
Move one or more active playlist items
cmd=Move
param1=numbers separated by any delitemeter
param2=signed move delta


Code: [Select]
Delete one or more playlist items
cmd=Del
param1=numbers separated by any delitemeter
param2=optionally specifies playlist


3) Is there a way to include a file/folder at a specific position in the playlist, or is it always the last one. If it is I guess I can emulate this behavior with enqueue + save playlist size, listen for the playlist change, substract the saved playlist size from the new size, perform move of the resulting set of elements. Is this a good idea? Pros, cons, better ideas? I guess I will make drag'n'drop a config option, so the user will be able to turn this off.

nope, not at the moment. I'm using standard SDK's process_locations_async which appends added items.
Title: foo_httpcontrol
Post by: Jack Schmaltz on 2010-03-02 19:39:39
@vakata: thanks for sharing your script its great, looking forward to updates
Title: foo_httpcontrol
Post by: inverse.chi on 2010-03-04 11:40:02
First off thank you for making this plugin - I finally got this working after reading through the forum and found out I needed to set my listen on ip to 0.0.0.0 to get this picking up over my network.

What an excellent product and I love the ability to finally control foobar via my android.

Thanks

if your computers are in some kind of wired or wireless LAN, change "Listen on" field to 0.0.0.0 in component preferences (if it somehow is different) and follow this: http://www.hydrogenaudio.org/forums/index....st&p=669646 (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=669646)

Title: foo_httpcontrol
Post by: lucido on 2010-03-05 07:52:37
Hi
Vakata, thanks for sharing your impressive work
but I have issue with Firefox 3.6
It look like the same issue that I have describe [a href='index.php?act=findpost&pid=655265']here[/a]
thanks
Title: foo_httpcontrol
Post by: vakata on 2010-03-05 15:58:07
Hi again - I just updated the theme a bit:

* Includes a settings panel - to show/hide some components & adjust playlist options & change skins
* Introduces experimental drag'n'drop - not thoroughly tested, but works in Firefox - will test more tomorrow
* User can now select (or multiselect using ctrl+click & shift+click) items in the playlist in order to mass move/delete/queue/deqeue

For the next version I will enable selection in the file browser and add drag'n'drop to that one too  (its just a bit more tricky)

Download here: http://vakata.com/foo (http://vakata.com/foo)

Cheers,
Ivan

@lucido - My firefox reloads just fine ... I will do some testing tomorrow and look into your issue.
Title: foo_httpcontrol
Post by: Jack Schmaltz on 2010-03-05 19:09:14
thanks for the update Vakata but its not working properly for me, new version wont work unless the last version is in the data folder aswell.
if i can help anymore/elaborate please dont hesitate to ask, thanks


Edit: scrap that, i was having a major blonde moment, shame on me. thanks again vakata
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-06 06:38:37
Hi again - I just updated the theme a bit

outstanding work! seems to work well in opera 10.50 too, and this fact is nice
Title: foo_httpcontrol
Post by: vakata on 2010-03-06 10:21:57
I was just wondering about the SAQ command - does it depend on a foobar component? Sorry for the noob question

As for the theme - I made a few changes last night - will upload soon:
1) I just applied some fixes to some height calculations (when the path becomes more than one line)
2) playlist enqueueing is fixed- now consequent fast requests will be made until IS_ENQUEUEING is 0 again (regardless of the interval setting)

As for the upcoming changes:
1) I am beginning work on the shortcuts now ... I was wondering whether to make a config page or to just duplicate the default foobar2000 shortcuts.
2) The IS_ENQUEUEING fix will be extended a bit to allow drag'n'drop from the file browser panel - that will take a bit more time.
3) I am planning on a context menu too - it should quick and fast to implement.

After I am done with all those fixes I will run some tests in all major browsers, after the theme is functional in all modern browsers I will concentrate on the design a bit - I am not a designer, but the buttons need a bit of work - even I notice that

Any other ideas?
Title: foo_httpcontrol
Post by: frogworth on 2010-03-07 10:12:36
So, I'm having trouble with the lxofith theme, getting the album art to show.
I have foobar 1.0, latest version of this component and the correcy lxofith from the first post.
The theme otherwise works, but it just won't show album art - whether in Firefox or iPhone Safari.
Some other themes do, like the beautiful vakata one, but obvs I need one for my iPhone as well.

Any clues as to whether it's something in my setup? Does anyone have lxofith showing album artwork?

Ta for the great component btw.
Title: foo_httpcontrol
Post by: lucido on 2010-03-07 10:20:32
@lucido - My firefox reloads just fine ... I will do some testing tomorrow and look into your issue.

Hi Thanks for quick answer
it work very fine when I testing on local but on the network I get this :

thanks
Title: foo_httpcontrol
Post by: 2E7AH on 2010-03-07 10:59:58
Any clues as to whether it's something in my setup? Does anyone have lxofith showing album artwork?

I had also problem showing bg artwork (if that's what you mean) with built-in Nokia browser, but works fine with Opera Mobile i.e.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-07 11:09:26
I was just wondering about the SAQ command - does it depend on a foobar component? Sorry for the noob question

yep, it is built-in within this component and is disabled by default (check preferences). personally I use this feature a lot, but since there happened to be some people not happy with it, I made it disappearrable.

So, I'm having trouble with the lxofith theme, getting the album art to show.

I don't have iphone, but album art does show for me in the specified template in opera, ff and chrome. what kind of album art data do you have? where do you store it and how is it named? if your albumart is embedded, be sure to check 'retrieve embedded albumart' in preferences.
Title: foo_httpcontrol
Post by: frogworth on 2010-03-07 16:22:30
So, I'm having trouble with the lxofith theme, getting the album art to show.

I don't have iphone, but album art does show for me in the specified template in opera, ff and chrome. what kind of album art data do you have? where do you store it and how is it named? if your albumart is embedded, be sure to check 'retrieve embedded albumart' in preferences.


Hm, I have my album art as cover.jpg in the same folder as the album's mp3s. Some have embedded artwork but very few, and I do have that preference set.
As mentioned, it does show up in other themes such as the default theme - but not in lxofith.
It doesn't show up in FF or on the iPhone itself...
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-07 16:34:41
check firefox's javascript error log when you see no albumart, maybe it will give us some clue. otherwise I've run out of ideas.
Title: foo_httpcontrol
Post by: Justblair on 2010-03-07 21:32:38
First Post here, please be gentle with me!

Any HTC HD2 users tried out this plugin? 

I have been playing with this all day, great plugin!!!

The only problem I had was that the themes here are not designed for my screen resolution.  I was able to scale the iphone based designs up, but the quality looked well... meh!

Not being one to mooch around, and hopefully not the sort of person that would bitch about the excellent work of others, I started designing my own template...

(http://s65.photobucket.com/albums/h219/justblair/foo_httpcontrol%20skins/?action=view&current=Screen07.jpg)

I am not by any means a coder or designer, so I used/stole unrepentantly code from the IxoFith theme and design cues from the HTC music player.  I want to make a design that will blend well with the HTC HD2 UI.

I still have a lot of tidying up to do, but if there is any interest, I can post the theme up here...

Title: foo_httpcontrol
Post by: frogworth on 2010-03-08 02:09:51
check firefox's javascript error log when you see no albumart, maybe it will give us some clue. otherwise I've run out of ideas.


If I load up the page with the current lxofith I get this error:

Code: [Select]
Error: matches is not defined
Source File: http://0.0.0.0:8888/lxofith/iphonenav.js
Line: 306


which is fair enough. There's some inconsistent commenting around there:

Code: [Select]
    if (fooVars['playBackOrderRaw']) {
//        var matches = fooVars['playBackOrderRaw'].match(/value="([0-9])" selected/);
        fooVars.playBackOrder = matches[1];
//        setPlayOrder(fooVars.playBackOrder);
    }


Not sure how it's relevant to my problem but once I commented out the offending line, I got my artwork showing! Bonus! That section now reads:
Code: [Select]
    if (fooVars['playBackOrderRaw']) {
//        var matches = fooVars['playBackOrderRaw'].match(/value="([0-9])" selected/);
//        fooVars.playBackOrder = matches[1];
//        setPlayOrder(fooVars.playBackOrder);
    }


Title: foo_httpcontrol
Post by: lucido on 2010-03-08 09:38:57
Hi
if it could help,
Firefox error log said :
Code: [Select]
Erreur : last_data.now_playing_time is undefined
Fichier Source : [url=http://192.168.2.3:8888/vakata2/script.js]http://192.168.2.3:8888/vakata2/script.js[/url]
Ligne : 329
when page don't reload

thanks
Title: foo_httpcontrol
Post by: vakata on 2010-03-08 14:28:26
Hi
if it could help,
Firefox error log said :
Code: [Select]
Erreur : last_data.now_playing_time is undefined
Fichier Source : [url=http://192.168.2.3:8888/vakata2/script.js]http://192.168.2.3:8888/vakata2/script.js[/url]
Ligne : 329
when page don't reload

thanks

Have you tried downloading the latest version from http://vakata.com/foo (http://vakata.com/foo), then deleting the vakata2 folder, and extracting the one from the archive?

Kindest regards,
Ivan
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-08 16:26:50
Not sure how it's relevant to my problem but once I commented out the offending line, I got my artwork showing!

interesting  where did you get this template? it clearly differs from my 'port'. I'd recommend you to download (and try) it from the first post of this thread, as the fix you applied might affect changing playback order and who knows what else.

I want to make a design that will blend well with the HTC HD2 UI.

I think it's better to share what you've achieved with everyone. I've seen big screen gadget users around, and they probably wouldn't mind having compatible template.

if it could help,
Firefox error log said

are you trying to connect via not very stable Wi-Fi connection?
Title: foo_httpcontrol
Post by: tehg on 2010-03-08 19:40:57
Hello, I was wondering what the best iphone skin is/where can I obtain it! Also is there one that has an actual text search? Scrolling would be a pain as I have a zillion songs.

Thank you!!!!!
Title: foo_httpcontrol
Post by: lucido on 2010-03-09 09:56:27
Have you tried downloading the latest version from http://vakata.com/foo (http://vakata.com/foo), then deleting the vakata2 folder, and extracting the one from the archive?

Kindest regards,
Ivan

Hi
yes I use the latest version
actions are performed  (like search, play or next) but the left panel is empty untill I refresh number of times
file browser panel work fine

Quote
are you trying to connect via not very stable Wi-Fi connection?

I don't think so (I use ajquery without any problems )

thanks both for your answers
Title: foo_httpcontrol
Post by: frogworth on 2010-03-09 10:58:13
Not sure how it's relevant to my problem but once I commented out the offending line, I got my artwork showing!

interesting  where did you get this template? it clearly differs from my 'port'. I'd recommend you to download (and try) it from the first post of this thread, as the fix you applied might affect changing playback order and who knows what else.


Strange... I definitely got it from this thread initially.
When it wasn't working, I went googling and found this page (http://mazeofith.net/foo_httpcontrol/) but clearly they were outdated.
I was pretty sure when I tried fixing it, I deleted everything from the lxofith directory and replaced it with the files from the lxofith.rar in the first post of this thread, but maybe I had an older version?

Anyway, thanks. Working now.
Title: foo_httpcontrol
Post by: Kev0 on 2010-03-15 18:32:13
I've had a stab at making the modified version of the LxOfIth template scalable to different screen sizes. Its still a work in progress, not everything is working quite as it should, but I'm limited in what I can test it with, so before I spend any more time on it wondered if anyone might give it a try on different sized mobile devices.


Theres probably a better way of doing doing it, but thought I'd have a go anyway.

scalable_test (http://bit.ly/cQqJTV)

!WORK IN PROGRESS!
Title: foo_httpcontrol
Post by: lucido on 2010-03-17 08:36:31
Hi
Thanks oblikoamorale for update
I use it every day !
I notice with ajquery that remove playlist command delete first playlist tab instead of current ?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-17 08:42:29
huh, indeed  thanks for reporting, will fix later.
Title: foo_httpcontrol
Post by: batz-e on 2010-03-17 14:23:32
Hey,

don't want to waste too much of your time, since I just started using foobar and I'm not sure, whether I understood its design sufficiently. So, basically, I'd like two things to be possible:



I guess, both issues could be tackled introducing some kind of pass-through feature to use foo_run and/or foo_runcmd via httpcontrol, or are there serious security issues I missed with that?
Or is there even an easier way I didn't think or know of yet?

Totally love you guys' work, httpcontrol with vakata2-theme replaced VLC with its standard http_interface and I'm nearly totally happy with that.

Regards
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-17 14:51:17
[quote author=batz-e link=msg=694189 date=1268835812]I guess, both issues could be tackled introducing some kind of pass-through feature to use foo_run and/or foo_runcmd via httpcontrol, or are there serious security issues I missed with that?[/quote]
iirc somewhere up the thread I (and Kev0, I think) posted an example of running certain external program from this component using foo_run and foo_runcmd combo, but I dont' know whether this 'hacky' approach works in fb2k 1.0. I guess you have to try and tell us results of your investigation. if it succeeds, you can add shutdown button to remote control template in a few minutes.
Title: foo_httpcontrol
Post by: vogliadicane on 2010-03-17 16:09:22
does anybody have experience with a second portable foobar install and the iPhone using httpcontrol?

I´m having problems in this case. Although (my) template is accessible by any other PC in the network, for the iPhone, i do get a connection, the "site" is displayed but it´s messed up and seems that Ajax isn´t executed. I have also tried to link each of both installations to a different port, but no luck (the I.P. is of course the same).

P.S. of course only one of the two installations is running in these cases
Title: foo_httpcontrol
Post by: batz-e on 2010-03-17 16:09:52
Well, I got it working for me, but the more I get into this stuff, the more it seems like a big bodge adventure. I added a Service with foo_run and call that via the ?cmd=CmdLine option you introduced ages ago, but never documented in your Appendix #2.

Problem with that is you can't introduce it to others with just adding a button to the interface or something, because you'll always need to add that Service (with a preset name) manually, right?

I'm not too much satisfied.. :/

Edit: Just to be a bit more precise: Reading through the thread I found you saying you discovered the beauty in foobar design. Thus, I guess I just haven't got into the matter sufficiently to recognize that as well, but what I've seen so far, it can be a pain in the a**. foobar documentation says there should be a parameter /playing_command and so on, but there is not (anymore). So (as I've learned) foo_run was introduced. Is it actually you can only add Services to the context menu, that really is a pain the a** to be adressed by command line like inputs again? I read something about working with Hotkeys or something, but I didn't find out, how to actually do that.

Thus, you're mostly busy finding a way to invoke an action, and doing that, you stumble upon the next thing, you need a workaround for, and so on and so forth.

Overall, there (to me) seems to be no general concept for components and foobar on how to communicate oder make life easy at all. Am I right with that, or is it really I need to see the inner beauty in order to be happy?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-17 18:27:12
I've never really tried to understand what is going on with all that working/nonworking command line parameters, foo_run and the similar yada-yada due to lack of need and interest, so I can't really comment on this.
also I want to mention that I don't want to introduce any features which go beyond the scope of the component. if you are really up to it, your best bet in the case might be forking your own branch with features you need (and new commands are really very simple to add).
Title: foo_httpcontrol
Post by: vogliadicane on 2010-03-17 20:19:13

yes, run services adds services to the context menu, and yes, if you want to execute them with httpcontrol you must use a commandline like pattern (using runcmd), but it´s really easy:

so e.g. you have already added a run service called "ShutDown" you invoke it with httpcontrol by
sending the command 'CmdLine' with the parameter ' /runcmd-playlist="Run service/ShutDown"'

any other context menu entry is executed with a parameter starting with ' /runcmd-playlist=...

and it´s not really "hacky" to my opinion 
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-18 04:09:07
I´m having problems in this case. Although (my) template is accessible by any other PC in the network, for the iPhone, i do get a connection, the "site" is displayed but it´s messed up and seems that Ajax isn´t executed. I have also tried to link each of both installations to a different port, but no luck (the I.P. is of course the same).

you have two options: try another iphone template (perhaps the one you are using is not quite compatible with iphone browser), or try previous version of the component as I changed something in networking code of 0.96.6 which may broke some things.
Title: foo_httpcontrol
Post by: vogliadicane on 2010-03-18 19:50:48
oblikoamorale, this is more than strange.

The situation was: I copied a template folder (named let´s say 'old'), which had worked without problems on a standard install to the foo_http_control_data folder of a portable install.

I renamed it let´s say 'new' and this didn´t work (of course I changed the path in safari iPhone to 'new'). This is what I described before. I tried 0.9.4 and 0.9.6 no luck.

Today I tracked down the problem and at the end I found, it works if:

- folder 'old' is present
- the files index.html, state.json and config are left in this 'old' folder!!

  This is more than strange, because in all of my scripts I use of course relative paths, and the config file afaik only describes settings for the template in the SAME folder, true?

So how can it be that it works only if files are present from some completely other folder???

Oblikoamorale, please help me 


P.S.: On the other hand, if I delete the file index.html in the 'new' folder, I get some Not found error as expected.
Same for the config file
Is it some kind of cache problem, if file names exist more than once?

P.P.S: same for another template by L4ntOm, it loads and after some action Error loading (but this uses commands in the adress, so maybe not comparable?)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-19 04:20:06
you can't just rename templates around and expect them to work, as name is hardcoded within their javascript and html files. thus you have to replace all 'old' name references within template data to make template work in a 'new' folder.
Title: foo_httpcontrol
Post by: batz-e on 2010-03-20 16:00:39
Hey,

please don't get me wrong, the component is great as it is, I was just wondering whether I got something wrong concerning foobar-design, but after all, I guess I did not.

Remote Shutdown now works fine for me the way I posted, too bad this won't become an offical feature, since it - imo - would be a nice thing to have in a remote control.

Thanks so far, I'll follow the thread for news. =)
Title: foo_httpcontrol
Post by: vogliadicane on 2010-03-20 16:33:37
you can't just rename templates around and expect them to work, as name is hardcoded within their javascript and html files. thus you have to replace all 'old' name references within template data to make template work in a 'new' folder.


huh, I had checked all references, but actually one line was left, that pointed to the old folder.  Thanks for pointing me to the right direction.
Title: foo_httpcontrol
Post by: Snowknight26 on 2010-03-22 00:04:28
The latest version (0.96.7) keeps causing foobar2000 to crash almost as soon as foobar2000 is loaded, give or take 10 seconds. I can provide dumps if necessary.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-22 04:04:54
interesting. I wouldn't mind seeing those minidumps.

EDIT: no dumps are needed anymore thanks to Peter, problem is understood and will be fixed tonight.
Title: foo_httpcontrol
Post by: pm1207 on 2010-03-29 18:05:33
Thanks for this component, finally I can stop using remote desktop.

Previously tested ajquery 0.58, now I uploaded versions 0.96.8 with ajquery 0.60 but the QUERY button crashes the interface. The response I get is:
An AJAX error occured.
Possible reasons:
    * JSON parser got stuck on erroneous data;
    * borken connection;
    * god knows what else.
Restart template or think of something else.



Inside the box an error that starts with:

settings.url: /ajquery/?cmd=QueryRetrace&param1=&param3=js/library.json

XMLHttpRequest.responseText:
{
"queryInfo":   [],
"query":   [ "

followed by the list of artist... and closed by
}
XMLHttpRequest.statusText: OK
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-03-30 09:26:09
I need whole contents of errorbox to fix the problem. upload it to pastebin or somewhere else.

EDIT: nevermind
Title: foo_httpcontrol
Post by: pm1207 on 2010-03-30 23:23:11
The problem I reported before is fixed on httpcontrol 0.96.9 / ajquery 0.61.
Thank you!

httpcontrol is excellent and I love the ajquery interface, outstanding.
Title: foo_httpcontrol
Post by: odyssey on 2010-04-04 16:57:15
This component (http://www.hydrogenaudio.org/forums/index.php?showtopic=79988) may be interresting for iPhone/iPod Touch-users, wanting remote control functionality similar to this.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-04-04 17:02:23
thanks for info unrelated to the topic. check first post by the way.
Title: foo_httpcontrol
Post by: odyssey on 2010-04-04 18:29:44
Oh, didn't see that one. Sorry.

Your component is fantastic, but a little laggy on a low-power handheld, so I though a few maybe was better off using a dedicated app for it, and there's not much mention of it on this forum.
Title: foo_httpcontrol
Post by: Kev0 on 2010-04-05 20:39:36
I've had a stab at making the modified version of the LxOfIth template scalable to different screen sizes. Its still a work in progress, not everything is working quite as it should, but I'm limited in what I can test it with, so before I spend any more time on it wondered if anyone might give it a try on different sized mobile devices.


Theres probably a better way of doing doing it, but thought I'd have a go anyway.

scalable_test (http://bit.ly/cQqJTV)

!WORK IN PROGRESS!



Did anyone bother looking at this? I haven't had chance to look at it again since.

I should have a better idea of how it will work when I upgrade my phone in about a month.
Title: foo_httpcontrol
Post by: SuperRi on 2010-04-09 23:07:44
Just created a small theme of my own, and decided to share ... maybe I missed some stuff from the API - if anyone likes it I will continue working on it. Should work in any modern browser.
http://vakata.com/foo/screen1.png (http://vakata.com/foo/screen1.png)
http://vakata.com/foo/screen2.png (http://vakata.com/foo/screen2.png)

The theme itself:
vakata2.rar (109 KB) (http://vakata.com/foo/vakata2.rar)

Cheers and thanks for the hard work creating this plugin - really changed my life
Ivan

Vakata ? Developer  ??????? ?? ??????? ? ?? ???????? ??????.
vakata2 / jquery ????????? ???????? ?  Opera 10.51, Minefield 3.7, Google Chrome.

Title: foo_httpcontrol
Post by: tberman333 on 2010-04-10 16:20:23
I've had a stab at making the modified version of the LxOfIth template scalable to different screen sizes. Its still a work in progress, not everything is working quite as it should, but I'm limited in what I can test it with, so before I spend any more time on it wondered if anyone might give it a try on different sized mobile devices.


Theres probably a better way of doing doing it, but thought I'd have a go anyway.

scalable_test (http://bit.ly/cQqJTV)

!WORK IN PROGRESS!



Did anyone bother looking at this? I haven't had chance to look at it again since.

I should have a better idea of how it will work when I upgrade my phone in about a month.


Kevo - I have been meaning to test this for a while, but I just got around to it today.  Here are my results on my Motorola Droid:

All of the buttons seem to work just fine. 

As far as the scaling:  Using both the default browser and Dolphin Browser, it is close vertically, but may be a little large... it seem to base the size on the screen size rather than the browser window (so it does not take the phones status bar on the top of the screen into consideration).  Also, the cover art it too wide... it seems to only show 3/4 of the cover with the right side being truncated. 

When you rotate the phone into landscape mode, it actually scales very nicely and looks great...the only problem here again is that it is just a little too large top to bottom.

Another issue is that if I keep the browser status bar visible in Dolphin (as that is an option), that is not taken into consideration when scaling at all, so the screen becomes much too large (the bottom buttons get cut off by half). 

One last thing is the border around the album art...  this is just aesthetic, but I like it better without the border and with the reflection.

If you have any questions for me, or want me to do any other testing, please feel free to PM me.

Thanks for all your work on these templates.
Title: foo_httpcontrol
Post by: ZeeJ on 2010-04-11 16:12:11
I'm writing just to say THANK YOU SO MUCH, oblikoamorale!
After some time trying to understand what was wrong with my setup, and right before posting to ask for help, the whole firewall thing came to mind, and bingo! It's working much better than I expected.
Amazing work, man!
Title: foo_httpcontrol
Post by: John Listener on 2010-04-14 02:02:06
Hi,

I've installed httpcontrol and can access it on the same machine that foobar is running on, but am unable to access it from any other machine on my lan. Current foobar, Windows XP. I punched a hole in my firewall at tcp 8888, but a call to http:\\192.nnn.nnn.nnn:8888\ goes unanswered.

Pointers appreciated,

John
Title: foo_httpcontrol
Post by: vairulez on 2010-04-14 07:43:24
I have a request for the masters of javascript and ajax here (vakata if you read this  )
Do you think it is possible to make a carousel from all the album arts in in foobar's media library using the jquey plug-in jcarousel ( http://sorgalla.com/jcarousel/ (http://sorgalla.com/jcarousel/) )

I think it would be a great add-on to vakata's and ajquery 's templates and a simple way to add an album to the playlist ... just a thought.
If I had the programming skills, i would have given it a shot but I think I still have a lot to learn to make it work ...
Title: foo_httpcontrol
Post by: loki1985 on 2010-04-14 16:02:09
is there a way to add archives (ZIP/RAR) to the playlist? this works with foobar, but not with httpcontrol.

love this plugin so much i even run it in linux using wine (works nice), only thing missing here is archives for me, since i have a lot of albums as archive files.
Title: foo_httpcontrol
Post by: John Listener on 2010-04-14 17:27:16
I've installed httpcontrol and can access it on the same machine that foobar is running on, but am unable to access it from any other machine on my lan. Current foobar, Windows XP. I punched a hole in my firewall at tcp 8888, but a call to http:\\192.nnn.nnn.nnn:8888\ goes unanswered.

Solved? No remote access worked until I turned logging on, now all remote access works whether logging is on or off.

Happy, but puzzled. 

Thanks for a great component.

    John
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-04-15 07:36:54
I have a request for the masters of javascript and ajax here (vakata if you read this  )
Do you think it is possible to make a carousel from all the album arts in in foobar's media library using the jquey plug-in jcarousel

this kind of weird stuff requires writing a new component.

is there a way to add archives (ZIP/RAR) to the playlist? this works with foobar, but not with httpcontrol.

It seems that regardless of archive reader component(s) presense, archive formats are not listed in supported file types list within the foobar2000 "Add file..." dialog. my component uses this list to remove unplayable files while adding. I could hardcode support of zip and rar extensions, but it wouldn't be too beautiful (and I doubt it will help considering the current way I'm doing the adding). I'd like to use more generic approach of which I'm clueless at the moment. EDIT: I'll add a workaround in next version.

No remote access worked until I turned logging on, now all remote access works whether logging is on or off.

it couldn't be logging as it's completely unrelated to the problem you had - it's just a bit deciding whether to log requests to foobar2000 console or not.
Title: foo_httpcontrol
Post by: Jack Schmaltz on 2010-04-18 19:58:14
hey, iv noticed some rather strange behaviour today.

in 2 of the skins i use (vakata2 & ajquery), when i enqueue a track they don't immediatley show as qued until something updates in foobar (ie, playback stats, playlist, track change). this behaviour is not apparent in the default skin (but as far as i can tell, it uses a different method to enqueue).
i tried downgrading this plugin & resetting the settings but to no avail.
i'm currently using the latest version of foobar with the latest version of this plugin & iv never had this issue before until today.

a thought however, i think my java plugins have been updated (i dont quite recall im afriad) & i'm almost certain this behaviour only started after then.
sorry to bring that to your attention if its unrelated.

EDIT: doesnt appear to be related, just disabled said add-ons & http control still behaves the same

if i can provide anymore information please dont hesitate to ask.
thank you for a great & often used plugin

EDIT2: tried accessing foobar through http on my Ubuntu install, still the same problem.
Also, installed the component to foobar on my laptop & got the same issue from that. hope this is of some help to you
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-04-18 20:38:30
in 2 of the skins i use (vakata2 & ajquery), when i enqueue a track they don't immediatley show as qued until something updates in foobar (ie, playback stats, playlist, track change). this behaviour is not apparent in the default skin (but as far as i can tell, it uses a different method to enqueue).
i tried downgrading this plugin & resetting the settings but to no avail.

EDIT: fixed in 0.96.12.1
Title: foo_httpcontrol
Post by: Jack Schmaltz on 2010-04-18 20:58:20
may it be that you have 'stop after queue' feature disabled? it might be the case. anyway, try this (http://atz.ath.cx:8282/foo_httpcontrol/foo_httpcontrol.dll).
if it doesn't help, try using a different browser.


that was it, must of got disabled from the update today. tried the version you just posted & works a treat when "stop after queue" is enabled or disabled!
just to clarify, "Enable Stop After Queue Feature" was enabled in the preferences page, but not enabled under the "Playback" menu.
problem was present in both Firefox 3.6.3 & IE 8.

thanks alot oblikoamorale for your time, now i can put my hair back in
Title: foo_httpcontrol
Post by: PostOfficeBuddy on 2010-04-19 16:28:40
Thank you so much for this wonderful plugin. It has really rocked my world. Like any new user who has not acclimated to a new system, I have some insight as to a possible improvement: would it be possible to have a setting so that I may hide the "home directory" on the landing page? The use of credentials is perfect but I would not like specific paths, especially ones containing usernames to the local machine, exposed by default for any visitor who happens to land on the site. Thanks!
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-04-19 16:55:53
you cannot specify directories forbidden for browsing, but you can define a list of allowed directories: use "Allowed paths" field in preferences, multiple values should be separated by |.
I don't consider exposing the component to whole internets a good idea. I don't know what possible vulnerabilities are crawling around in my code and, especially, jnetlib. use another layer of protection like firewall check if you really have to access the component from the outer world.
Title: foo_httpcontrol
Post by: MaCs on 2010-04-22 15:28:47
Hi,

I've installed httpcontrol and can access it on the same machine that foobar is running on, but am unable to access it from any other machine on my lan. Current foobar, Windows XP. I punched a hole in my firewall at tcp 8888, but a call to http:\\192.nnn.nnn.nnn:8888\ goes unanswered.

Pointers appreciated,

John

Did you solve your problem? It does not work for me neither but I don't even know how to "punch a hole in my firewall"... Is there a tutorial somewhere for that?
Title: foo_httpcontrol
Post by: blackfede on 2010-04-27 14:35:12
Hi, is there any way to put into the httpcontrol page a visualisation plugin like the spectrogram via the foo_httpcontrol ?
Thanks, Federico
Title: foo_httpcontrol
Post by: SuperRi on 2010-04-27 17:27:08
I don't consider exposing the component to whole internets a good idea. I don't know what possible vulnerabilities are crawling around in my code and, especially, jnetlib. use another layer of protection like firewall check if you really have to access the component from the outer world.

???? ? ????????? ?????, ? ????? ?? ????????? – ?????????.
??????? ??????????? ?? ???????, ???? ??? ?? ?????? ?????? – ?? ??? ???? ??????????,  ????????? ??? ? ?????? ????????. ????????? Firewall  ? ?.?.
??? ???, ???? ??????? ????????? foobar(??) ????? ????????, ?????? ? ???? ? ?????? ??????? ??????????? ip-?????, ?????? ???????????? - ?????????!
???????? ???????????? ????? ip-?????  ?? ? ????.

?? ???? ??? ?????:
??????? ?? ????????? – ??????????? ????? ???. ???????? foobar(??) ????? ????????.
Title: foo_httpcontrol
Post by: ayuyaia on 2010-05-03 11:30:12
Is there a way to get httpcontrol to skip forward in the currently playing track by say 10 or 20 seconds? All I could find in the instructions was the ability to seek for a given percentage of the track length. (This is possible via a foobar2000 hotkey so I am probably missing something obvious.)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-05-03 12:13:08
Is there a way to get httpcontrol to skip forward in the currently playing track by say 10 or 20 seconds? All I could find in the instructions was the ability to seek for a given percentage of the track length. (This is possible via a foobar2000 hotkey so I am probably missing something obvious.)

not at the moment. I'll add command with this kind of behaviour in next version.
Title: foo_httpcontrol
Post by: Hamallainen on 2010-05-03 14:25:40
Hello.
Small bug : in the 0.63 version of the ajquery template, you added shift+[ or shift+] to resize playlist height but for me, shift+[ doesnt work while shift+] works well. foobar2000 1.03; foo_httpcontrol 0.96.12.1; firefox 3.63
Title: foo_httpcontrol
Post by: ayuyaia on 2010-05-03 14:38:17
@oblikoamorale: Thanks, that would be great!
Title: foo_httpcontrol
Post by: SuperRi on 2010-05-04 13:24:51
Баги у foo_httpcontrol_0_96_13.


Title: foo_httpcontrol
Post by: lyh on 2010-05-04 14:15:33
the newest version.
Only IE can open correct,but Chinese characters display as garbage.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-05-04 16:50:08
duh, somehow generation of proper content-type went down the drain. hopefully fixed in 0.96.13.1
Title: foo_httpcontrol
Post by: SuperRi on 2010-05-04 18:02:35
duh, somehow generation of proper content-type went down the drain. hopefully fixed in 0.96.13.1

???????!!! 0.96.13.1 - ????????!!!
Title: foo_httpcontrol
Post by: ingermandlandiya on 2010-05-06 13:07:28
http://127.0.0.1/ajquery/index.html (http://127.0.0.1/ajquery/index.html)

Error loading template configuration file:
foo_httpcontrol_data\ajquery\config

Show installed templates list

Firefox 3.6.3
Foobar 1.0.3 portable
foo_httpcontrol 0.96.13.1
ajquery template 0.64

What do I do not so?
Title: foo_httpcontrol
Post by: ingermandlandiya on 2010-05-06 13:38:39
Has understood.
I should fill a field Home directory.
Title: foo_httpcontrol
Post by: frogworth on 2010-05-06 14:15:41
Is there a way to get httpcontrol to skip forward in the currently playing track by say 10 or 20 seconds? All I could find in the instructions was the ability to seek for a given percentage of the track length. (This is possible via a foobar2000 hotkey so I am probably missing something obvious.)

not at the moment. I'll add command with this kind of behaviour in next version.


That would be totally ACE if you could do that!
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-05-06 14:30:06
I should probably add console message with full path of file that component tries and fails to open.

EDIT: frogworth: it's already done
Title: foo_httpcontrol
Post by: ayuyaia on 2010-05-21 16:18:59
Thanks lots for adding the SeekDelta command!
Title: foo_httpcontrol
Post by: gamering on 2010-05-22 07:20:53
Thanks, works very well!
Do you also implement a function that starts foobar from foobar http control?
Title: foo_httpcontrol
Post by: galactose on 2010-05-22 21:18:36
With HTTPcontrol can you listen to music on your laptop if your controlling your computer with your laptop? If so I'm doing something wrong because i can't hear anything....
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-05-23 04:17:31
Do you also implement a function that starts foobar from foobar http control?

...what?

With HTTPcontrol can you listen to music on your laptop if your controlling your computer with your laptop? If so I'm doing something wrong because i can't hear anything....

you can't. it's just a controller. additional stuff like foo_vorbisstream, for example, is required to stream sound.
Title: foo_httpcontrol
Post by: batz-e on 2010-06-10 19:45:45
Hey there,

I have been experiencing random connection problems over the last two weeks or so. Trying to go to the control page in my browser, it remains in "Waiting for 192.168...." state. I know for sure the network is up and running, since foobar goes on scrobbling to last.fm plus I can still use the VLC media player web interface. Thus I guess it must be a foobar/httpcontrol issue.
The machine foobar is running on has not been touched since it was set up, so nothing changed in config or so.

Any idea how to trace the problem?

Best wishes

Edit: I call it random, because it works from time to time, especially when the machine has just been started up. This again makes me think there must be something going wrong in foobar or the plugin?!
Title: foo_httpcontrol
Post by: Kev0 on 2010-07-01 18:10:09
Would it ever be possible for httpcontrol to list/use the bookmarks provided by foo_uie_bookmarks (http://www.hydrogenaudio.org/forums/index.php?showtopic=46612)

I guess this might not be a wide spread request, so don't want you to bother breaking your back over it oblikoamorale. Just if it was simple enough to do, I'd find it useful.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-07-01 18:48:47
it's not (trivially) possible without some serious hacking which I'm incapable off, so sorry
Title: foo_httpcontrol
Post by: Kev0 on 2010-07-03 10:45:59
No problem, thanks anyway.
Title: foo_httpcontrol
Post by: Kev0 on 2010-07-06 11:28:17
Speaker control - It works it really really works!

Title: foo_httpcontrol
Post by: bugramovic on 2010-07-11 22:48:37
Android Client for foo_httpcontrol ("foodroid2000")

I've written an android client for foo_httpcontrol to fool around with android development.
The software is currently more or less in a beta stage. Comments and bug reports are appriciated.

Features:
- control of playback, including seekbar
- basic playlist support
- basic media library support
- basic media search

Screenshots:
main screen (http://drop.io/erhe2kx/asset/main-jpg)
config screen (http://drop.io/erhe2kx/asset/config-jpg)
media library browser (http://drop.io/erhe2kx/asset/librarz-jpg)


Installation:
You need to have
a) foo_httpcontrol obviously
b) the ajquery template. Download and instructions at the official foo_httpcontrol site (http://code.google.com/p/foo-httpcontrol/downloads/list)
c) a phone with android 1.6+
d) foodroid2000 (http://up.servut.us/24313) - the .apk which can be installed via the browser

armin
Title: foo_httpcontrol
Post by: tberman333 on 2010-07-12 01:00:24
Speaker control - It works it really really works!


Is this still experimental or is it available somewhere?
Title: foo_httpcontrol
Post by: Kev0 on 2010-07-12 10:42:29
Is this still experimental or is it available somewhere?


Its not really something I can release. Theres other things you need to do/install on the server side, and its specific to how you've got your soundcard/speakers.

I more than happy to explain how I've managed it though, incase anyone else wants to have a go with their set up.




Also I've finally moved on to a device with a bigger screen/higher res, but the previous template seems to render just fine, so no reason to modify it for me.
Title: foo_httpcontrol
Post by: tberman333 on 2010-07-12 15:35:27
Is this still experimental or is it available somewhere?


Its not really something I can release. Theres other things you need to do/install on the server side, and its specific to how you've got your soundcard/speakers.

I more than happy to explain how I've managed it though, incase anyone else wants to have a go with their set up.




Also I've finally moved on to a device with a bigger screen/higher res, but the previous template seems to render just fine, so no reason to modify it for me.


I would love to know how you did this.  It is my goal to start to add more speakers from my PC and have Foobar control all of the music (seems like what you do).

Also, as far as your new device... are you using the scaling template?  If so, any chance you have had an opportunity to go trough any of the comments I made here:

http://www.hydrogenaudio.org/forums/index....st&p=699733 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=62218&view=findpost&p=699733)

Thanks again.  Your work is very much appreciated!

Todd
Title: foo_httpcontrol
Post by: Kev0 on 2010-07-12 16:02:34
I would love to know how you did this.  It is my goal to start to add more speakers from my PC and have Foobar control all of the music (seems like what you do).

Also, as far as your new device... are you using the scaling template?  If so, any chance you have had an opportunity to go trough any of the comments I made here:

http://www.hydrogenaudio.org/forums/index....st&p=699733 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=62218&view=findpost&p=699733)

Thanks again.  Your work is very much appreciated!

Todd


Nope not the scaling one, just the normal 'Kevo' one. So the reflection etc is still there. I use xscope as my default browser so just checked it in the stock android one, but that seems to render it ok too.

Here's a summary I posted earlier on how I've done it. The key is zvolume(completely separate from foobar) accepting batch files. My setup is based on the motherboards onboard 8 channel audio. Each output goes to a different room.

Dont know whether this will be of use to anyone else, it is a rather specific application...

But I've had a breakthrough in controlling speaker output through httpcontrol.


Nothings finished yet, but I have each rooms speakers on a separate output jack. I recently come across zvolume (http://www.zvolume.com/) which can control balance and volume on each output.....via command line!! wooooo.

So so far I have preset batch files, eg the folowing mutes all except the headphones.

Code: [Select]
zvolume /r=0 /l=0 /f=Master Volume:Bed 1 /e
zvolume /r=0 /l=0 /f=Master Volume:Bathroom /e
zvolume /r=0 /l=0 /f=Master Volume:Bed 2 /e
zvolume /r=75 /l=75 /f=Master Volume:Headphones /e


I've then added these batch files with foo_run, and with httpcontrol and foo_runcmd I can execute them from my remote device! Sonos etc, eat your (expensive) heart out.

Code: [Select]
"/kevo/?cmd=CmdLine&param1=%22%2fruncmd-playing%3dRun%20service/Vol_Headphones%22"



I've not finished implementing the controls on the remote template yet, and it wont be a "one size fits all" anyway. But thought I would share the process, as it wouldn't have been possible (or at least as easy/sexy) without httpcontrol.



If anyone manages to get this far I can share the html/javascript that I used to integrate it to the remote. No point sharing it in a template as not everyones house/speakers arethe same as mine!
Title: foo_httpcontrol
Post by: chicaman on 2010-07-25 16:29:44
I am able to access via firefox / opera on my laptop where foobar is playing on the laptop.

How do i access using other laptop or desktop? http://127.0.0.1:8888/ (http://127.0.0.1:8888/) is not working
Title: foo_httpcontrol
Post by: tberman333 on 2010-07-25 17:09:07
I am able to access via firefox / opera on my laptop where foobar is playing on the laptop.

How do i access using other laptop or desktop? http://127.0.0.1:8888/ (http://127.0.0.1:8888/) is not working


You need to use the IP address of the laptop you want to access.  The easiest thing to do is setup the machine running Foobar with a static IP address.  You would then access it using that address (for example http://192.168.1.2:8888/) (http://192.168.1.2:8888/))
Title: foo_httpcontrol
Post by: chicaman on 2010-07-25 17:38:50
Ok thanks!!

I am trying to use it with my N900 browser.

I read through 33 pages in 1 hour and I tried a few template, non of them working properly except for the 2 in the first page.


Any other good template?
Title: foo_httpcontrol
Post by: helex on 2010-07-26 23:18:07
Hello!

I'm new at this community. I'm the programmer of DreamRemote (http://talk.maemo.org/showthread.php?t=52589). A Remote Control for DreamBox and several other satelite receivers for the Nokia N900.


I will begin with the buttons. Is there somewhere a wiki what commands are allowed and possible?

I'm actually not sure about the playlist. But one step after the other.

And if you have a Dreambox (http://www.dream-multimedia-tv.de/en), a AzBox (http://www.azbox.com/) or a Kathrein (UFS910) at home and a Nokia N900 you're invited to test my application immediately.
Support for dbox2 (http://www.dbox2.co.uk/) is comming soon.

I'm participating at a small coding competition. I would be glad if someone could vote for my small application: Link (http://talk.maemo.org/showthread.php?p=763672)
Title: foo_httpcontrol
Post by: dwandurrrr on 2010-07-27 18:29:30
Hi guys, i've got a problem with this

i installed the component and 2 or 3 themes, well, when i put on firefox http:127.0.0.1:8888/ajquery/index.html or http:localhost:8888/ajquery/index.html

The problem appears when i try to join with the IP of the server (  http:192.168.0.101:8888/ajquery/index.html  )

it doesnt work, no matter what is on "Listen on" (192.168.0.101 or 0.0.0.0 ), even trying it from the server, it doesnt work

Whatsup?
Title: foo_httpcontrol
Post by: dwandurrrr on 2010-07-27 20:25:44
Hi guys, i've got a problem with this

i installed the component and 2 or 3 themes, well, when i put on firefox http:127.0.0.1:8888/ajquery/index.html or http:localhost:8888/ajquery/index.html

The problem appears when i try to join with the IP of the server (  http:192.168.0.101:8888/ajquery/index.html  )

it doesnt work, no matter what is on "Listen on" (192.168.0.101 or 0.0.0.0 ), even trying it from the server, it doesnt work

Whatsup?



lol, now i tried it again with the laptop and it works.. same version of foobar, same version of firefox, same components, same network, same SO.. but i want it on the other PC! i got all my music on it <.<
Title: foo_httpcontrol
Post by: vogliadicane on 2010-07-28 07:54:18
^^ check the firewall settings on this PC (also windows defender)
Title: foo_httpcontrol
Post by: joaotavela on 2010-08-07 21:05:51
I try to put a command to change %rating% of the songs in the basic templates.
Code: [Select]
<a href="/?cmd=CmdLine&param1=tag:rating=5">[RATING 5]</a>

but did't work

Someone can help me?
what i'm doing wrong?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-08-08 07:39:07
I may be wrong, but any kind of rating command is executed in context of playlist selected item, and there is no way to set context via command-line.
Title: foo_httpcontrol
Post by: johnbhoy on 2010-08-08 14:47:03
Hello

Dont want to start a new thread for this. Is http control working in the foobar 1.1 beta updates..

I installed the dll into the correct folder using the install compentsn under preferences... i then copy the the foohttpcontroldata folder to

c/documents settings\DAW\Aplication Data\foobar2000\user-components\foo_httpcontrol

i have changed ip to be that of the pc thats running foobar . i test the connection and it states error. i have no templates installed.  I have alos installed a few templaces into the foo_httpcontrol_data folder but its not reading them for some reason.

This usually works splendidly.. noting that the file structure has changed with the beta updates. will this affect the where the templates go.  I have downloaded the brand spanking new update of http control realeasd today 0.96.14.

Appreaciates its beta so stuff like this may happen.... just incaes i am doing something blinding obviously wrong. 

Title: foo_httpcontrol
Post by: oblikoamorale on 2010-08-08 15:19:41
i then copy the the foohttpcontroldata folder to
c/documents settings\DAW\Aplication Data\foobar2000\user-components\foo_httpcontrol

wrong, where did you get you should copy this folder there? it goes to c:\documents settings\DAW\Aplication Data\foobar2000\ as it always did. also notice the error message states a last bit of the path where the component expects to find its data.
Title: foo_httpcontrol
Post by: johnbhoy on 2010-08-08 16:13:26
i then copy the the foohttpcontroldata folder to
c/documents settings\DAW\Aplication Data\foobar2000\user-components\foo_httpcontrol

wrong, where did you get you should copy this folder there? it goes to c:\documents settings\DAW\Aplication Data\foobar2000\ as it always did. also notice the error message states a last bit of the path where the component expects to find its data.



Yup. that will be the blindingly obvious error that i was making.  I was reading the readme for httpcontrol in the rar file.and was reading it too quick and not actually reading it all. more skimming over.

Thanking you..




Title: foo_httpcontrol
Post by: kaFFee666 on 2010-08-14 22:19:12
Hey guys,

I made another Template especially for mobile devices.
It is based on 'simplebasic', but its not much I left as it was.

I took simplebasic because its design looked like a good Mobi-Template.

I optimized it for a resolution of 320x240 pixels, as my Nokia E72 has. Its been tested on the Nokia in-build Webbrowser(my recommendation), Firefox(on PC) and Opera Mini v10.

Have Fun: http://tinyurl.com/mobile320x240 (http://tinyurl.com/mobile320x240)

Greetz
kaFFee666
Title: foo_httpcontrol
Post by: regi24 on 2010-08-19 21:40:19
Hi, I'm currently doing a template (optimised for 800x480) but I'm having a little problem..

When I do this:

foovar = eval("(" + response + ")");

(response is the response given by the http request).

Only works if foobar is STOPPED. If it's playing/paused firefox gives an error (missing : after property id).

Can anyone help me?

The responses:

STOPPED
Code: [Select]
"{\r\n\"playlist\": [ {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"06\", \"track\": \"The Wrong Child\", \"len\": \"3:38\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"07\", \"track\": \"Orange Crush\", \"len\": \"3:52\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"08\", \"track\": \"Turn You Inside-Out\", \"len\": \"4:17\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"09\", \"track\": \"Hairshirt\", \"len\": \"3:56\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"10\", \"track\": \"I Remember California\", \"len\": \"5:04\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"11\", \"track\": \"This World is Big\", \"len\": \"3:10\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"01\", \"track\": \"Begin The Begin\", \"len\": \"3:28\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"02\", \"track\": \"These Days\", \"len\": \"3:25\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"03\", \"track\": \"Fall On Me\", \"len\": \"2:51\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"04\", \"track\": \"Cuyahoga\", \"len\": \"4:21\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"05\", \"track\": \"Hyena\", \"len\": \"2:52\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"06\", \"track\": \"Underneath The Bunker\", \"len\": \"1:27\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"07\", \"track\": \"The Flowers Of Guatemala\", \"len\": \"3:57\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"08\", \"track\": \"I Believe\", \"len\": \"3:50\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"09\", \"track\": \"What If We Give It Away?\", \"len\": \"3:34\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"10\", \"track\": \"Just A Touch\", \"len\": \"3:01\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"11\", \"track\": \"Swan Swan H\", \"len\": \"2:50\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"12\", \"track\": \"Superman\", \"len\": \"2:54\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"01\", \"track\": \"What's The Frequency, Kenneth?\", \"len\": \"4:00\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"02\", \"track\": \"Crush With Eyeliner\", \"len\": \"4:39\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"03\", \"track\": \"King Of Comedy\", \"len\": \"3:41\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"04\", \"track\": \"I Don't Sleep, I Dream\", \"len\": \"3:28\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"05\", \"track\": \"Star 69\", \"len\": \"3:09\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"06\", \"track\": \"Strange Currencies\", \"len\": \"3:53\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"07\", \"track\": \"Tongue\", \"len\": \"4:13\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"08\", \"track\": \"Bang And Blame\", \"len\": \"5:31\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"09\", \"track\": \"I Took Your Name\", \"len\": \"4:03\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"10\", \"track\": \"Let Me In\", \"len\": \"3:28\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"11\", \"track\": \"Circus Envy\", \"len\": \"4:16\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"12\", \"track\": \"You\", \"len\": \"4:54\" } ],\r\n\"playlists\" : [{\"name\":\"Default\",\"count\":\"0\"},{\"name\":\"Filter Results (Playback)\",\"count\":\"832\"},{\"name\":\"Filter Results\",\"count\":\"7700\"},{\"name\":\"123\",\"count\":\"80\"},{\"name\":\"Library Viewer Selection\",\"count\":\"7700\"},{\"name\":\"Query\",\"count\":\"59\"},{\"name\":\"#Search Results [ ]\",\"count\":\"7700\"}],\r\n\"currentPlaylist\" : \"2\",\r\n\"playBackOrderRaw\" : '0',\r\n\r\n\"volume\": \"100\",\r\n\"isPlaying\": \"0\",\r\n\"currentPage\" : \"96\",\r\n\r\n\"currentTrack\": \"?\",\r\n\"trackpos\": \"0\",\r\n\"tracklen\": \"0\",\r\n\r\n\"helper2\": \"\",\r\n\"helper3\": \"\",\r\n\"albumArt\": \"/sergi/img/nocover.jpg\",\r\n\"playlistItemsPerPage\": \"30\"\r\n}\r\n"


PLAYING
Code: [Select]
"{\r\n\"playlist\": [ {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"06\", \"track\": \"The Wrong Child\", \"len\": \"3:38\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"07\", \"track\": \"Orange Crush\", \"len\": \"3:52\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"08\", \"track\": \"Turn You Inside-Out\", \"len\": \"4:17\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"09\", \"track\": \"Hairshirt\", \"len\": \"3:56\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"10\", \"track\": \"I Remember California\", \"len\": \"5:04\" }, {\"artist\": \"R.E.M.\", \"album\": \"Green\", \"number\": \"11\", \"track\": \"This World is Big\", \"len\": \"3:10\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"01\", \"track\": \"Begin The Begin\", \"len\": \"3:28\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"02\", \"track\": \"These Days\", \"len\": \"3:25\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"03\", \"track\": \"Fall On Me\", \"len\": \"2:51\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"04\", \"track\": \"Cuyahoga\", \"len\": \"4:21\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"05\", \"track\": \"Hyena\", \"len\": \"2:52\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"06\", \"track\": \"Underneath The Bunker\", \"len\": \"1:27\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"07\", \"track\": \"The Flowers Of Guatemala\", \"len\": \"3:57\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"08\", \"track\": \"I Believe\", \"len\": \"3:50\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"09\", \"track\": \"What If We Give It Away?\", \"len\": \"3:34\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"10\", \"track\": \"Just A Touch\", \"len\": \"3:01\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"11\", \"track\": \"Swan Swan H\", \"len\": \"2:50\" }, {\"artist\": \"R.E.M.\", \"album\": \"Lifes Rich Pageant\", \"number\": \"12\", \"track\": \"Superman\", \"len\": \"2:54\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"01\", \"track\": \"What's The Frequency, Kenneth?\", \"len\": \"4:00\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"02\", \"track\": \"Crush With Eyeliner\", \"len\": \"4:39\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"03\", \"track\": \"King Of Comedy\", \"len\": \"3:41\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"04\", \"track\": \"I Don't Sleep, I Dream\", \"len\": \"3:28\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"05\", \"track\": \"Star 69\", \"len\": \"3:09\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"06\", \"track\": \"Strange Currencies\", \"len\": \"3:53\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"07\", \"track\": \"Tongue\", \"len\": \"4:13\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"08\", \"track\": \"Bang And Blame\", \"len\": \"5:31\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"09\", \"track\": \"I Took Your Name\", \"len\": \"4:03\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"10\", \"track\": \"Let Me In\", \"len\": \"3:28\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"11\", \"track\": \"Circus Envy\", \"len\": \"4:16\" }, {\"artist\": \"R.E.M.\", \"album\": \"Monster\", \"number\": \"12\", \"track\": \"You\", \"len\": \"4:54\" } ],\r\n\"playlists\" : [{\"name\":\"Default\",\"count\":\"0\"},{\"name\":\"Filter Results (Playback)\",\"count\":\"832\"},{\"name\":\"Filter Results\",\"count\":\"7700\"},{\"name\":\"123\",\"count\":\"80\"},{\"name\":\"Library Viewer Selection\",\"count\":\"7700\"},{\"name\":\"Query\",\"count\":\"59\"},{\"name\":\"#Search Results [ ]\",\"count\":\"7700\"}],\r\n\"currentPlaylist\" : \"2\",\r\n\"playBackOrderRaw\" : '0',\r\n\r\n\"volume\": \"100\",\r\n\"isPlaying\": \"1\",\r\n\"currentPage\" : \"96\",\r\n\r\n\"currentTrack\": \"2852\",\r\n\"trackpos\": \"11\",\r\n\"tracklen\": \"257\",\r\nGreen\r\n\"helper2\": \"artist: R.E.M. - title: Turn You Inside-Out\",\r\n\"helper3\": \"FLAC | 924kbps | 44100Hz | 16-bit | stereo\",\r\n\"albumArt\": \"/new/albumart_37320.jpg\",\r\n\"playlistItemsPerPage\": \"30\"\r\n}\r\n"


Thank you!


Edit: I've found out the problem.

When I set this: helper1=[%album%] in the "config" file, the response is not "helper1": "AlbumTitle" but "AlbumTitle" (wuthout the "helper1":).

Is there any possible workaround to be able to use the helper1 and getting returned "helper1":... ?? Nevermind, just needed to modify "foo_httpcontrol_controls_tpl.html".
Title: foo_httpcontrol
Post by: cjard on 2010-08-20 19:28:06
i'm struggling to get Search to work in either basic or ajquery

I have a playlist with circa 87,000 items.
i switch to it and start playing, so far so good
I press Search and a window appears letting me write something
I choose something i know i have/can see in the mail playlist, type it, press return..
..a new "playlist" called "query" appears but it contain entries

what am i doung wrong? i recall the search function working in the past..
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-08-21 05:23:35
I'm clueless, you didn't specify how you expect it to work. technically it works as it always did: it searches the media library and puts result into a separate or current playlist, depending on preferences.
by the way, it's not a very good idea to store all of your music in single playlist, that's what media library is for.
Title: foo_httpcontrol
Post by: sla on 2010-08-22 08:16:53
When I'm trying to use ajquery in a directory with different name (not "ajquery"), I recieve such errors:
In web-interface:


And in console:


Some text in russian so I'll explain - the first string tells that "\foobar2000\foo_httpcontrol_data\ui\foo_httpcontrol_controls_tpl.html" file not found. Other strings tells us that foobar is trying to find config file in non-existent directory, this is because of installation to directory with name "ui", not "ajquery". the error message shown in the first screenshot tells the same.

I think that it would be useful to write a tip in readme file for installing to defined directory ("ajquery") or (think this case is better) modify this webui to not to use hard-coded directory name.

Best regards.
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-08-22 09:55:33
well, readme states you should keep directory structure when extracting template files, so I think it's ok there - once you start to write explicit "don't shoot yourself in the foot" warnings, you won't be able to stop.

multiple template support system designed in the way that every template should know its name beforehand. it's a simple choice actually: either we have absolute links within templates, or we're losing the important ability to use more than one template simultaneously.

thus, if you want to change template name, you'll have to search and replace through its files.
Title: foo_httpcontrol
Post by: MrMonkey on 2010-08-22 15:03:00
In the Vakata2 template, I can't get the filebrowser to work.  It doesn't queue anything.

It appears to send this:
Code: [Select]
foo_httpcontrol: [ 22.08 09:45:07 ] 192.168.1.35     /vakata2/?cmd=Browse&param1=\\AMD3500\Rapidshare\Back To School - Extended Soundtrack\06 - Twist And Shout.mp3&param2=EnqueueDir&param3=browser.json      : Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8


When I use a different template, the queueing works okay and the second parameter is not sent.  This works:
Code: [Select]
foo_httpcontrol: [ 22.08 09:49:14 ] 192.168.1.35     /ajquery/?cmd=Browse&param1=\\AMD3500\Rapidshare\Back To School - Extended Soundtrack\06 - Twist And Shout.mp3&param3=js/browser.json      : Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8


I tried modifying the vakata2' script.js file to remove EnqueueDir to no avail.

Any idea on why vakata is sending that param2 and how to remove it?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-08-22 16:39:54
http://goo.gl/W5WW (http://goo.gl/W5WW) quick working (I suppose) fix for this (script.js, replace original)
Title: foo_httpcontrol
Post by: MrMonkey on 2010-08-23 21:24:05
http://goo.gl/W5WW (http://goo.gl/W5WW) quick working (I suppose) fix for this (script.js, replace original)

Thank you so much!
Title: foo_httpcontrol
Post by: regi24 on 2010-08-25 07:22:19
Is there any way to get the albumart of each song in the playlist??

Thanks!
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-08-25 09:34:17
no, it is not possible. album art data is retrieved for playing item only.
Title: foo_httpcontrol
Post by: regi24 on 2010-08-25 18:37:51
no, it is not possible. album art data is retrieved for playing item only.


That's a shame :/

Thank you!
Title: foo_httpcontrol
Post by: Muhnwalker on 2010-09-18 16:03:47
Hi,

your Plugin rocks
But there is a little problem:

I am using foo_httpcontrol_0_96_15 with template vakata2 but I cant enqueue single files from the directory-area on the right.
Examining the code, it seems that the EnqueueDir-Command is used with the filename of the mp3.
After downgrading to a few older versions I figured out that this worked in foo_httpcontrol_0_96.11.

Could you please repair it?
Meanwhile, I will use this older version.

Greetings from germany 
Muhnwalker
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-09-18 16:11:30
http://www.hydrogenaudio.org/forums/index....st&p=719474 (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&view=findpost&p=719474)
Title: foo_httpcontrol
Post by: Muhnwalker on 2010-09-18 16:40:39
How could I overlook that post  SORRY!

It works perfectly! Thanks a lot! 
Title: foo_httpcontrol
Post by: D3smo on 2010-10-01 15:03:39
Do you know if anyone works on an iPad, configuration for foo_httpcontrol ?
Title: foo_httpcontrol
Post by: regi24 on 2010-10-10 21:29:47
I'm trying to use the command "QueryAdvance" in from the interface i'm developing.

The problem is that I generate this: "%artist% IS The Smiths" but it's actually sent: GET http://x.x.x.x:xxxx/new/?cmd=QueryAdvance&param1= (http://x.x.x.x:xxxx/new/?cmd=QueryAdvance&param1=)%artist%%20IS%20The%20Smiths

Does anyone know how to send it properly??

I do this to send:

var xmlhttp = getXMLHTTP();
xmlhttp.open("GET", myurl, true);

where  myurl=http://x.x.x.x:xxxx/new/?cmd=QueryAdvance&param1=%artist% IS The Smiths

Thanks!


P.S. I assume foo_httpcontrol can't receive the data in another format than "%artist% IS The Smiths", right?
   
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-10-11 04:15:24
first off, the syntax you are using is suitable for SearchMediaLibrary command only. it accepts any fb2k-wide valid search string with or without titleformatting.
QueryAdvance is a different thing, it is designed to be shifting between three steps defined in component preferences, somewhat similar to castrated facets.
and at last, to pass special chars like % properly, you need to urlencode your request string. see Url class in ajquery for examples.
Title: foo_httpcontrol
Post by: regi24 on 2010-10-11 08:37:41
first off, the syntax you are using is suitable for SearchMediaLibrary command only. it accepts any fb2k-wide valid search string with or without titleformatting.
QueryAdvance is a different thing, it is designed to be shifting between three steps defined in component preferences, somewhat similar to castrated facets.
and at last, to pass special chars like % properly, you need to urlencode your request string. see Url class in ajquery for examples.


Thank you.
The main problem was that I was using QueryAdvance instead of SearchMediaLibrary.
The other issue it's been solved by using escape() function with the "parameter1".
Title: foo_httpcontrol
Post by: sisyph on 2010-10-24 14:56:54
so I have a problem, but I actually don't know if you people can help me out since this concerns foodroid.

I have an android smartphone and I can access the interface by the set ip address through my browser and can control foobar on my computer.
but when I enter the same address in foodroid it either says "an error accured. no valid connection :-(" or "connection failed :-("
what's up with that? I tried port forwarding, but that can't be it, since I have access to it in my browser .. something seems to be wrong with foodroid.

help anyone?  the component rocks!
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-10-24 15:41:53
I suggest you forward the question to foodroid developer himself: foodroid.net84.net
Title: foo_httpcontrol
Post by: vogliadicane on 2010-10-24 17:45:33
help anyone?  the component rocks!


or a firewall setting? You shurely tested the access from the same computer, where foobar was running, right?
Title: foo_httpcontrol
Post by: vogliadicane on 2010-10-30 23:09:48
@oblikoamorale:
can it be, that runcommands via httpcontrol don´t work anymore since foobar1.1?

The code I have used all the time doesn´t work anymore since I updated to foobar1.1. I have tested an old installation (1.0) in parallel, using runcmd from the command line interface directly works for both. Using http control only works for version 1.0. foo_runcmd is the same version for both.

I have moved my components when updating (to user-components), so maybe it´s a matter of relative paths httpcontol uses??

edit: additional info: in contrast to the 1.0 installation there is also no message in console regarding runcmd when using httpcontrol with 1.1
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-10-31 06:00:00
right, it doesn't work. try this (http://atz.ath.cx/tmp/foo_httpcontrol.dll), and make sure "allow command-line interface" is ticked in preferences.
Title: foo_httpcontrol
Post by: vogliadicane on 2010-10-31 08:41:24
it works! Tested it both in user-components and components.

Tested only on a portable install, but I think that´s not important.
Title: foo_httpcontrol
Post by: Shizane on 2010-11-07 08:20:42
i then copy the the foohttpcontroldata folder to
c/documents settings\DAW\Aplication Data\foobar2000\user-components\foo_httpcontrol

wrong, where did you get you should copy this folder there? it goes to c:\documents settings\DAW\Aplication Data\foobar2000\ as it always did. also notice the error message states a last bit of the path where the component expects to find its data.


hey i followed the instructions but still cant apply it to my browser.
here are the screenshots

Folder Path-----------|Browser--------------|Template Error
(http://img190.imageshack.us/i/screenshot162n.png/) (http://img215.imageshack.us/i/screenshot160.png/) (http://img818.imageshack.us/i/screenshot161p.png/)


I am using Foobar 1.1 portable

my portable location is
(http://img26.imageshack.us/i/screenshot164vo.png/)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-11-07 11:51:30
quote from component's readme.html, installation section: "if portable mode was selected during installation, extract [foo_httpcontrol_data] to foobar2000 installation folder."

so, move foo_httpcontrol data one level above the configuration folder where it currently resides, judging by your screenshot.
Title: foo_httpcontrol
Post by: Shizane on 2010-11-07 12:45:31
quote from component's readme.html, installation section: "if portable mode was selected during installation, extract [foo_httpcontrol_data] to foobar2000 installation folder."

so, move foo_httpcontrol data one level above the configuration folder where it currently resides, judging by your screenshot.


No help with that as well

Folder Path-----------|Browser--------------|Template Error
(http://img441.imageshack.us/i/screenshot168l.png/) (http://img703.imageshack.us/i/screenshot169.png/) (http://img580.imageshack.us/i/screenshot170.png/)

also i dont quite understand what the template error screenshot means :S
Title: foo_httpcontrol
Post by: Shizane on 2010-11-07 13:16:29
ok
getting this error now
(http://img571.imageshack.us/i/screenshot171l.png/)
Title: foo_httpcontrol
Post by: Shizane on 2010-11-07 13:54:02
Just created a small theme of my own, and decided to share ... maybe I missed some stuff from the API - if anyone likes it I will continue working on it. Should work in any modern browser.

Ivan


nice theme  but it loads only a flat screen with no action cant do anything
(http://img72.imageshack.us/i/screenshot172.png/)

i get this error while performing search
(http://img266.imageshack.us/i/screenshot173w.png/)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-11-07 15:07:49
empty "Home directory" setting in component preferences, you don't need that.
Title: foo_httpcontrol
Post by: Shizane on 2010-11-07 18:04:03
awesome didnt know it was such a silly mistake thanks a lot
another thing i wanted to know is it possible to run the songs in the panel without actually running the player??
Title: foo_httpcontrol
Post by: classpro on 2010-11-07 21:29:39
I have tried real hard to follow the install directions, but I can't get the remote access to work.  I get the following error message when I try to log in remotely:

"Something went wrong: no templates found!

Check console for details.

Get more templates!"

I tried with just the default template and with Ajquery in the foo_httpcontrol_data subfolder.


Foobar is showing HTTPControl under preferences/tools
startserver is checked
I have pointed Firefox to the "listen in" location. 
I have not changed anything else in the settings. 

I'd appreciate any help you can give me.
Title: foo_httpcontrol
Post by: mixel on 2010-11-07 22:33:46
The http plugin works very great for me. But when i'm using lxofith iPhone skin and do a search and get only 1 result and I select that one, something goes wrong. The current playing track starts again, instead of the selected track. But when there are multiple results, and i select the second result for example, then that results just starts.

It also happens in a playlist: if you select to track at the top of the list, the 'now playing' track starts again. I've taken a look into the iphonenav.js code, but cannot really find a solution.

Maybe someone had the same problem, an knows a fix?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-11-08 07:03:36
"Something went wrong: no templates found!
Check console for details.

so, why don't you follow this suggestion and open foobar2000 console, where you'll find exact reason of this failure?
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-11-08 17:56:04
But when i'm using lxofith iPhone skin and do a search and get only 1 result and I select that one, something goes wrong.


unfortunately, I cannot reproduce this on desktop browsers - searching, clicking and stuff works just fine. I don't have any nearby iphone to test, so...
Title: foo_httpcontrol
Post by: marnaish on 2010-11-12 21:19:50
I developed a Android Remote for Foobar (FooMote - free available on google market) using the webinterface. I was wondering if it is possible to rate the files via webinterface?

More informtation about the remote: http://www.banamalon.net/android/?p=515 (http://www.banamalon.net/android/?p=515)
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-11-14 16:14:28
I'll add support for invoking any context menu command when I figure out how to do it.
Title: foo_httpcontrol
Post by: vogliadicane on 2010-11-15 16:00:02
I was wondering if it is possible to rate the files via webinterface?

atm it's only possible together with runcommand

then use:

Code: [Select]
runcmdStr = ' /runcmd-playlist="Playback Statistics/Rating/' + rating + '"';
command('CmdLine', runcmdStr);

where rating is the new value
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-11-15 18:48:11
no need to use foo_runcmd anymore, I'll post new version soon.
Title: foo_httpcontrol
Post by: vogliadicane on 2010-11-15 19:26:06
no need to use foo_runcmd anymore, I'll post new version soon.


ahh, good news
Title: foo_httpcontrol
Post by: L4nt0m on 2010-11-29 23:07:01
About a year I posted my previous config (http://www.hydrogenaudio.org/forums/index.php?showtopic=62218&st=600&p=666097&#entry666097) for this component, mainly to use it as a remote for ios devices. Last week, I updated the config, to make it feel more like a real app.
The main difference is that it now uses the iScroll (http://cubiq.org/iscroll) script, to mimic the scrolling behaviour of native ios apps, while keeping the header and footer in the same place.

I hope you like it!

Screens:
     


Download the new SimpleBasic config here (http://www.box.net/shared/3p4gqunpgb)
Title: foo_httpcontrol
Post by: Beavis04 on 2010-12-03 09:36:09
Plugin doesn't work for me, I'm able to browse on my android the 192.168.1.10 website, but getting any app to connect doesn't work. Does anyone have any ideas?

Windows Firewall off.
Hardware Firewall off.
Correct IP entered in
Correct Port entered in

Still doesn't connect.
Title: foo_httpcontrol
Post by: tberman333 on 2010-12-04 00:41:24
Plugin doesn't work for me, I'm able to browse on my android the 192.168.1.10 website, but getting any app to connect doesn't work. Does anyone have any ideas?

Windows Firewall off.
Hardware Firewall off.
Correct IP entered in
Correct Port entered in

Still doesn't connect.

Have you been able to connect from the local machine using http://127.0.0.1:8888/ (http://127.0.0.1:8888/) ?

That will ensure that the plugin is correctly installed in Foobar.
Title: foo_httpcontrol
Post by: tberman333 on 2010-12-04 00:44:03
Has anyone noticed that scrolling in playlists does not seem to work in the KEVO congif on an Android phone?  I have tried it with both the default browser and with DophinHD browser.  Everything else seems to work fine it in.

Any thoughts?
Title: foo_httpcontrol
Post by: Beavis04 on 2010-12-11 12:00:25
Thanks tberman333, I ended up giving up. It worked on my computer locally but no foobar android apps can connect. Other apps are able to connect to this computer fine though so I gave up!
Title: foo_httpcontrol
Post by: er_or on 2010-12-17 13:06:59
I don't know why, but it does not work for me "Something went wrong: no templates found!"
1) latest version of opera
2) installed components[foo_httpcontrol.dll and foo_httpcontrol_data folder] under "C:\Documents and Settings\<username\>Application Data\foobar2000\user-components\foo_httpcontrol"
3) configured foobar -> preferences -> HTTP control under listen on 127.0.0.1 : 8888

Title: foo_httpcontrol
Post by: oblikoamorale on 2010-12-17 14:11:55
according to documentation, you have to put foo_httpcontrol_data folder to C:\Documents and Settings\<username\>Application Data\foobar2000
moreover, the path where component expects to find foo_httpcontrol_data is clearly shown in fb2k console error message.
Title: foo_httpcontrol
Post by: regi24 on 2010-12-19 14:11:49
no need to use foo_runcmd anymore, I'll post new version soon.


In my own interface I already set the rating for the currently-playing using the runcmd command but right now I'm trying to set the rating of an item from the playlist.

Is this gonna be possible with the next release??

Thanks!
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-12-19 15:48:21
invoking context menu command is implemented for currently playing item only. it isn't hard to add what you want, but I'm busy with something else at the moment.
Title: foo_httpcontrol
Post by: regi24 on 2010-12-19 16:46:17
invoking context menu command is implemented for currently playing item only. it isn't hard to add what you want, but I'm busy with something else at the moment.


It's a shame :/

I'm currently almost able to set the rating to an element from the playlist. With the /runcmd-playlist command it's possible to set the rating to the selected item from the playlist.
I've tried using the cmd=SetFocus command to select an item from the playlist but it doesn't get selected the same way as it gets selected when clicked with the mouse; so the /runcmd-playlist does not work.

Is there another way of selecting a desired item from the playlist? Or can the "SetFocus" command be changed to select the item "properly"?

Thanks for your efforts!
Title: foo_httpcontrol
Post by: sonvolt on 2010-12-20 21:46:55
In my own interface I already set the rating for the currently-playing using the runcmd command but right now I'm trying to set the rating of an item from the playlist.

Thanks!

Care to post your  interface  ? Cheers..

Title: foo_httpcontrol
Post by: regi24 on 2010-12-21 06:44:03
In my own interface I already set the rating for the currently-playing using the runcmd command but right now I'm trying to set the rating of an item from the playlist.

Thanks!

Care to post your  interface  ? Cheers..


It's not finished yet. I just need to improve the look&feel, though.

I¡ll try to finish a version the next week or so..
Title: foo_httpcontrol
Post by: sonvolt on 2010-12-21 08:30:58
It's not finished yet. I just need to improve the look&feel, though.

I¡ll try to finish a version the next week or so..

That would be great look forward to seeing it when your happy with it ,  merry xmas
Title: foo_httpcontrol
Post by: wolfsong on 2010-12-22 17:00:28
according to documentation, you have to put foo_httpcontrol_data folder to C:\Documents and Settings\<username\>Application Data\foobar2000
moreover, the path where component expects to find foo_httpcontrol_data is clearly shown in fb2k console error message.

Perhaps it should be noted that this component is not compatible with the F2K component installer in the documentation instead of expecting users to figure out what hasn't been resolved by the developer.
Title: foo_httpcontrol
Post by: yolan on 2010-12-27 01:24:08
Optimized template for Nokia N900, based on vakata2.
n900 template (http://talk.maemo.org/attachment.php?attachmentid=16569&d=1293412450)
Title: foo_httpcontrol
Post by: regi24 on 2010-12-28 13:44:54
I'm trying to use the new command "SetSelection" but it's not working for me..
I'm doing this:
?cmd=SetSelection&param1=0

What I'd expect is the first item from the current playlist to be selected but it doesn't.

I'm using foobar v1.0.3.

Edit: The same behaviour under v1.1.1
Title: foo_httpcontrol
Post by: oblikoamorale on 2010-12-28 19:32:14
works for me. example: http://127.0.0.1:8888/ajquery/?cmd=SetSele...ram3=NoResponse (http://127.0.0.1:8888/ajquery/?cmd=SetSelection&param1=0&param3=NoResponse) selects first item of active playlist.

show your full url and fb2k console output (enable "log access to console" in preferences beforehand).
Title: foo_httpcontrol
Post by: regi24 on 2010-12-28 21:51:21
works for me. example: http://127.0.0.1:8888/ajquery/?cmd=SetSele...ram3=NoResponse (http://127.0.0.1:8888/ajquery/?cmd=SetSelection&param1=0&param3=NoResponse) selects first item of active playlist.

show your full url and fb2k console output (enable "log access to console" in preferences beforehand).


Now it's working for me too.. I haven't actually changed anything so I don't know what was happening before.. :/

Thanks!
Title: foo_httpcontrol
Post by: regi24 on 2011-01-09 22:58:46
I've just released a first version of an Android app.

If anyone interested:
http://foobar2000controller.blogspot.com/ (http://foobar2000controller.blogspot.com/)

Hope you enjoy it.
Title: foo_httpcontrol
Post by: alkasar on 2011-01-09 23:56:52
I've just released a first version of an Android app.

If anyone interested:
http://foobar2000controller.blogspot.com/ (http://foobar2000controller.blogspot.com/)

Hope you enjoy it.
Hi, looks very interesting with plenty of features
I see there is a server : does it need foo_httpcontrol ?
Title: foo_httpcontrol
Post by: sonvolt on 2011-01-10 00:09:47
Yes foo-httpcontrol needed.

Regi24 - How do you get into change settings if it wont connect?? do you need full path  c:\users\house\appdata\roaming\foobar2000\foo_httpcontrol_data  ??    (Windows 7)
Title: foo_httpcontrol
Post by: regi24 on 2011-01-10 06:58:20
Yes foo-httpcontrol needed.

Regi24 - How do you get into change settings if it wont connect?? do you need full path  c:\users\house\appdata\roaming\foobar2000\foo_httpcontrol_data  ??    (Windows 7)


You have to follow the instructions.
You need to unzip the file "foobar2000controller.zip" here: c:\users\house\appdata\roaming\foobar2000\foo_httpcontrol_data (if you have a regular foobar installation, not portable).
And then you need to configure foo_httpcontrol in foobar2000 as apropriate.

In the device you should only have to change the IP address from the server. The other fields are preconfigured to work with the default settings of foo_httpcontrol.

The settings folder in Android software is not the full path but the folder in c:\......\foo_httpcontrol_data\foobar2000controller". I mean, you have to write only foobar2000controller.
Title: foo_httpcontrol
Post by: tberman333 on 2011-01-10 16:57:59
I've just released a first version of an Android app.

If anyone interested:
http://foobar2000controller.blogspot.com/ (http://foobar2000controller.blogspot.com/)

Hope you enjoy it.


Will this app work without the playback statistics component?  I understand that the ratings part of it will not work, but am hoping that the rest will function correctly.
Title: foo_httpcontrol
Post by: regi24 on 2011-01-10 17:08:39
I've just released a first version of an Android app.

If anyone interested:
http://foobar2000controller.blogspot.com/ (http://foobar2000controller.blogspot.com/)

Hope you enjoy it.


Will this app work without the playback statistics component?  I understand that the ratings part of it will not work, but am hoping that the rest will function correctly.


The rating and playcount is not gonna work but the rest will work fine.
It's intended to use both foo_httpcontrol and playcount components, though.
Title: foo_httpcontrol
Post by: tberman333 on 2011-01-10 17:28:17
I've just released a first version of an Android app.

If anyone interested:
http://foobar2000controller.blogspot.com/ (http://foobar2000controller.blogspot.com/)

Hope you enjoy it.


Will this app work without the playback statistics component?  I understand that the ratings part of it will not work, but am hoping that the rest will function correctly.


The rating and playcount is not gonna work but the rest will work fine.
It's intended to use both foo_httpcontrol and playcount components, though.


Thanks for the answer.  I use foo_playback_custom as I like the extra options it provides.  I am going to try out your app in the next few days.
Title: foo_httpcontrol
Post by: makita on 2011-01-14 05:37:48
Is anybody aware of any updates to the lxofith of kev0 templates for the iPhone?  Specifically, I'm looking for a fix that enables playback of the 1st track when switching (or restarting) a playlist.  For example, say I'm listening to track 5 on a playlist and I try to play the 1st track, track 5 just starts from the beginning.  Same thing happens if I open up a new playlist and try to start track 1.  Whereas if I click on any other track than the 1st (while on either playlist), that track plays from the beginning (like I would expect it to).  Make sense?  I figure this is buried somewhere in the iphone.js file, but I'm too amateur to reverse engineer this JScript.  regi24's Android app looks awesome BTW, but I have an iPhone ... 

I've been searching for awhile now for the best way to play my FLAC files stored on the PC in my back office by wirelessly networking to the PS3 (and then receiver) in my living room.  At first I just tried using foo_upnp to enable access to my foobar media library using the PS3, but that creates the annoying/intolerable side effect of gaps between tracks.  foo_upnp Playback Stream Capture enables me to stream the audio output from foobar on my PC through the PS3 without gaps between tracks, but how do I control foobar while in my living room?  Enter foo_httpcontrol and my iPhone.  foo_touchremote was an option, but I couldn't get it to work on my XP machine and I'm not very enamored with iTunes-like navigation.  Am I the only one who just wants to be able to choose a folder (by artist), open a subfolder (by album) and play it beginning to end anymore?!? 

Other suggestions would be much appreciated.  Thanks for reading ...
Title: foo_httpcontrol
Post by: Kev0 on 2011-01-14 10:30:32
Makita. I'm afraid I'm not seeing your first track problem. I can start the first track no problem, and flick between playlist and start from anywhere. So I'm not sure how I can help.


Just a suggestion on your other point, in the foo_upnp settings, under streaming profiles, at the bottom I have "Audio Processing" in there there is settings for crossfader and skip silence. I wonder if they could help you?
Title: foo_httpcontrol
Post by: tberman333 on 2011-01-14 14:01:07
Kev0 - Your config is my favorite to use, but unfortunately I have had to stop using it as scrolling through the tracks in a playlist does not seem to work on my phone (I have the Original Motorola Droid running Android 2.2).  These seemed to happen when my Android version went from 2.1 to 2.2.  Do you know if there is any fix for this issue?

Thanks!
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-01-14 17:06:41
makita: these fixes should solve your problem kevo (http://atz.ath.cx/tmp/kevo/iphonenav.js) lxofith (http://atz.ath.cx/tmp/lxofith/iphonenav.js)
Title: foo_httpcontrol
Post by: makita on 2011-01-15 02:01:17
makita: these fixes should solve your problem kevo (http://atz.ath.cx/tmp/kevo/iphonenav.js) lxofith (http://atz.ath.cx/tmp/lxofith/iphonenav.js)


Thanks all for the expedient replies.  Oblikoamorale, your script was the exact solution I was looking for.
Title: foo_httpcontrol
Post by: Gehirnmaehung on 2011-01-23 22:56:20
I just reinstalled my HTPC which is running foobar with this great plugin, controlled via iPod. I did a complete uninstall of foobar and reinstalled the latest version of both foobar and the plugin. I experience that the mobile-templates (simplebasic, ixofith, kevo) don't work anymore - at least for me. SimpleBasic is completly destroyed on both FF and iPhone, ixofith and kevo don't display any playlists, i can not play anything. AJquery and Default are working as usual. Am i missing some new/changed configuration steps?

Thanks!


edit: to make that exact: i do not have any navigating issues with my iOS devices, simplebasic looks like a bomb hit it (displaying the correct album art though), while the other two i mentioned do not display anything of what is playing on foobar. The situation is exactly the same on my desktop with firefox.
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-01-24 04:41:57
try latest component version, I've just removed additional non-ascii char stripping which seems to affect most of the 3rd party templates.
Title: foo_httpcontrol
Post by: Hamallainen on 2011-01-24 11:01:09
Hello.
    Small bug : in the 0.63 version of the ajquery template, you added shift+[ or shift+] to resize playlist height but for me, shift+[ doesnt work while shift+] works well. foobar2000 1.03; foo_httpcontrol 0.96.12.1; firefox 3.63

    Hi. I still have this problem. I have updated both ajquery and foo_httpcontrol to 0.64 and 0.97.6. I tried with 2 browsers, Firefox 3.6.13 and Chromium 10.0.647. Am i the only one ?
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-01-24 13:50:32
Hamallainen: any other troubles with ajquery? I'll look into bracket issue tonight
Title: foo_httpcontrol
Post by: Hamallainen on 2011-01-24 15:05:02
I have no other problem (but i don't think i have tested everything).
Just one question, where is supposed to appear show selection total time (from changelog 0.63) ? Near the queue total time ? If yes then it doesn't work for me.
Thanks
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-01-24 18:04:07
try this: ajquery_0_65.zip (http://atz.ath.cx/tmp/ajquery_0_65.zip)
I've changed shift+]/[ to shift+pageup/pagedown, also made some changes to selection / queue / playlist totaltime indicator
Title: foo_httpcontrol
Post by: Hamallainen on 2011-01-26 01:46:15
Thanks. I've tested it a little today.

* shift+pageup/pagedown works but after a some testing it stopped working. If i reload the page, it sarts working again for a little while then stops. Also, sometimes but not always it makes the windows of 'folder browser', 'library search' and 'extra control' (but not album art) move up and down.

* selection totaltime always displays 0:00
queue totaltime works correctly

* also, about selection and shift / control. Sometimes shit behaves as control


I will try to test more tomorrow because right now i dont find a way to make 'shift+pageup/pagedown' and 'shift or control + click' completly working or completly not working.
Also, sorry for my english that is maybe not very understandable and is not helping describing and finding the problem
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-01-26 04:49:15
if you catch any javascript errors in your browser's error console when selection totaltime turns to 0, it would be helpful. take a screenshot too, please.

anyway, I didn't succeed in finding issues you described in opera/chrome/firefox. I need a step-by-step problem cooking recipe to understand what and where is wrong.

edit: playlist resize stops working when something is selected, fixed. reproduced moving windows (in chrome). still no luck with total time.
Title: foo_httpcontrol
Post by: Gehirnmaehung on 2011-01-28 23:56:53
try latest component version, I've just removed additional non-ascii char stripping which seems to affect most of the 3rd party templates.


Thanks, that helped alot. I still have some issues though (lxofith, kevo): can't add tracks to the playlist, it seems as if the link is removed from the plugin. The refresh for the playlist overview seems odd, i have to play a new track for proper refresh. I assume this has to be fixed in the templates.

Great plugin though, i use it alot and love it!!
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-01-29 13:02:14
files seem to add properly in aforementioned templates using deskop browser. playlist refresh issue seems to be by design, template doesn't request updated data when it should.
anyway, I don't have spare time and interest to maintain all this stuff, so I have to rely on you, end users, on that.
Title: foo_httpcontrol
Post by: Irestone on 2011-01-31 22:05:44
First, let me say that I have been using the HTTP Control Foobar plugin for a couple of years, and have found it to be excellent. Simple, lightweight, and it just works. Thank you for creating this excellent add-on for Foobar!

Second, I have to ask for help with an issue I've been happening for the last few days. The HTTP Copntrol plug-in will no longer bind to the port I have been using (port 10). I use port 10 to control the music within my network (at my house) from other areas around the house. I've done all the basic things I can think of you troubleshoot the issue (listed below), and cannot figure out where the issue may be. I can't think of anything which has changed on the computer over the last few days other than typical "Windows Updates" types of changes. I'm using Foobar version 1.1.2.

Any help you can provide would be much appreciated!

My plug-in is configured to bind to port 10 on IP address 10.0.0.45. When starting the server I receive a message of "No, bind failed".

From the console I see the following messages:
Error: foo_httpcontrol: bind failed.
foo_httpcontrol: WSAEventSelect Failed

When using 'netstat' to discover listening ports I don't see port 10 in the list (using the command: C:\>netstat -an |find /i "listening")

I turned off my Windows Firewall in the hopes that the firewall was suddenly blocking traffic to that port. I first verified that the Foobar application is int he list of "allowed apps" in the firewall, and then tried turning the firewall off. No luck.

Can you provide any additional troubleshooting steps or tools I can try to resolve the issue?
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-02-01 08:37:44
first of all, double check that one of your network interfaces have an ip address 10.0.0.45.
have you tried using another port number, bigger than 1024? I have a suspiction you need administrative account and elevated privileges if you want port 10 on windows 7.

edit: I've tested setting port 10 on my w7 x64 and it works in all ip cases: 127.0.0.1, my lan ip and 0.0.0.0.
Title: foo_httpcontrol
Post by: fuffi on 2011-02-02 22:11:45
hello oblikoamorale,
i don't read the whole 37 pages,

but do you mind to add an extra option to the preferences page like

Code: [Select]
[x] Bind to local computers ip-address


thus would make it easier for us people who are using foobar portable *not* to insert the local ip-adress every time we're on a new computer, but use the current ip automatic.

EDIT: sorry, found a new version (i'm so into that "get updates" button of foobar, that a almost forget to update your plugin manually) and my which came true with http://127.0.0.1:port/ (http://127.0.0.1:port/) 8-)
nevermind. great extension to foobar.
Title: foo_httpcontrol
Post by: fuffi on 2011-02-03 00:21:10
and my which came true with http://127.0.0.1:port/ (http://127.0.0.1:port/)

can't edit my last post, so i need to reply to my self.

sorry again, but that did not do the job quite as needed.

seeing this, i'd like to extend my previous request a little bit for more clarifying:
the local ip-address which is not the the local loopback device 120.0.0.1 but the ip-address which can be reached withing the whole network.

especialy for users using laptops which use DHCP only this will be good.
Title: foo_httpcontrol
Post by: Purple Monkey on 2011-02-03 02:02:22
Have you tried 0.0.0.0? I have mine set as such and it is accessible on any active network connections.
Title: foo_httpcontrol
Post by: fuffi on 2011-02-03 02:26:05
Have you tried 0.0.0.0? I have mine set as such and it is accessible on any active network connections.
yes, i did.
i tried 0.0.0.0:8881
and the button shows "open http://127.0.0.1:8881/" (http://127.0.0.1:8881/&quot;)
which is available only on the local computer, not in my lan.
also checking the ip of that computer in a browser from an other computer did not work. (of course not, because the plugin is only listening on the loopback device.)

but it does work, if i enter the "correct" ip address of that computer, 192.168.1.88:8881, in the plugin and check that ip from an other computes browser. so there is no firewall problem which should be a problem, i assume.

EDIT:
well, after reading your post and assuming: if it works on your side, it must work here too,
i removed the complete "\foobar2000\user-components\foo_httpcontrol" folder and "\foobar2000\foo_httpcontrol_data" too and the config-file in "foobar2000\configuration\foo_httpcontrol.dll.cfg" and started all over.

guess what?

now it works. thank you!
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-02-03 08:40:34
fuffi: setting 0.0.0.0 in "Listen on" preferences field makes component listen for incoming connections on all available interfaces. you've been confused by "Open http://127.0.0.0:8888 (http://127.0.0.1:8888)" button when you entered 0.0.0.0, but logically it's ok since 127.0.0.1 is a valid subset of available interfaces.
I didn't want to spend any time figuring out how to enumerate network interfaces and retrieving their parameters to put one of their ip addresses into this button caption, so I figured putting 127.0.0.1 will be enough in this case.
Note that after you change "Listen on" value, I think you have to restart fb2k or restart server by unchecking "Start server", pressing Apply, and checking "Start server" and Apply again.
Title: foo_httpcontrol
Post by: fuffi on 2011-02-03 10:54:10
Note that after you change "Listen on" value, I think you have to restart fb2k or restart server by unchecking "Start server", pressing Apply, and checking "Start server" and Apply again.

thank you for the explanation. i did restart the server, but i did not restart foobar. maybe that was the problem.
now it works and i'm sorry to bother you with no "real" problem :-)
cheers,
Title: foo_httpcontrol
Post by: Irestone on 2011-02-03 20:26:56
first of all, double check that one of your network interfaces have an ip address 10.0.0.45.
have you tried using another port number, bigger than 1024? I have a suspiction you need administrative account and elevated privileges if you want port 10 on windows 7.

edit: I've tested setting port 10 on my w7 x64 and it works in all ip cases: 127.0.0.1, my lan ip and 0.0.0.0.


I have double-checked everything you suggested. It's quite odd. I was running the "port 10" configuration on my Windows 7 64 bit machine for the last year or two without issue. All of a sudden it stopped working. I've tested ports from 10 through 8888 (trying random numbers in that range). Can't get any of them to bind. The machine does still have an IP of 10.0.0.45.

I'm going to try and install other types of remote control plug-ins to see if they can successfully bind to a port.

If you have any other troubleshooting steps or suggestions for me I'm open to trying anything to better understand the issue and how to resolve it!

Thanks for your help and your FANTASTIC Foobar plug-in!
Title: foo_httpcontrol
Post by: Irestone on 2011-02-03 22:35:34
first of all, double check that one of your network interfaces have an ip address 10.0.0.45.
have you tried using another port number, bigger than 1024? I have a suspiction you need administrative account and elevated privileges if you want port 10 on windows 7.

edit: I've tested setting port 10 on my w7 x64 and it works in all ip cases: 127.0.0.1, my lan ip and 0.0.0.0.


I have double-checked everything you suggested. It's quite odd. I was running the "port 10" configuration on my Windows 7 64 bit machine for the last year or two without issue. All of a sudden it stopped working. I've tested ports from 10 through 8888 (trying random numbers in that range). Can't get any of them to bind. The machine does still have an IP of 10.0.0.45.

I'm going to try and install other types of remote control plug-ins to see if they can successfully bind to a port.

If you have any other troubleshooting steps or suggestions for me I'm open to trying anything to better understand the issue and how to resolve it!

Thanks for your help and your FANTASTIC Foobar plug-in!


I was able to fix my problem with a Windows System Restore. My guess is that a windows update or a security essentials update somehow compromised the machine's ability to allow port binding.

I realized that the remote desktop protocol was no longer allowing connections, and this made me suspicious that the fact that port 3389 for RDP was failing, Foobar HTTP Control was failing, and it was more of a systemic issue with my machine.

So.....nevermind! Thanks for your attempts at helping me!
Title: foo_httpcontrol
Post by: fuffi on 2011-02-04 10:45:47
hello,
it's me again.

i recogized, that, with every "automatic" update via the "get updates"-button from foobar,
the plugin folder will be complete deleted and filled only with data from the installed zip.
this means for me, i cannot store data/information/notes/configuration-examples, etc into that folders anymore, so i need a new place, relative to the plugins.

storing data in the foobar mail folder is not what i like to do, because it bloats the folder.

so i created a folder "user-configuration" in the foobar mainfolder

Code: [Select]
e:\tc\portable\foobar2000\user-configuration\<pluginname_data>


to store my configuration/files/notes/information.


now, my question related to this plugin:
how to put that path into the "home directory" setting, if i want to keep my portability.

i cannot store "e:\tc\portable\foobar2000\user-configuration\foo_httpcontrol_data"
because on another machine E:\ does not exists.

https://code.google.com/p/foo-httpcontrol/wiki/Installation (https://code.google.com/p/foo-httpcontrol/wiki/Installation) did not helped me, and %APPDATA% points not to the folders, i'd like.

anybody a hint? maybe something with ..\ or .\..\ ?
i tried that, but didnt figured it out to work.
Title: foo_httpcontrol
Post by: oblikoamorale on 2011-02-04 10:57:58
component is not uploaded to official foobar2000 components repository so it's not a subject to autoupdating, replacing files or whatever else you are thinking of. don't worry and use your user profile\foobar2000\foo_httpcontrol_data as before.
Title: foo_httpcontrol
Post by: fuffi on 2011-02-04 11:35:49
component is not uploaded to official foobar2000 components repository

yes, i forgot about that. agian.
so you don't want to make this an official plugin anywhen? (i had no crashes of you fine plugin until now, althougth, the foobar toubleshooter told me sometimes. if i remember right.)
Title: foo_httpcontrol
Post by: Com[e]r on 2011-02-05 02:09:58

http://dl.dropbox.com/u/13003574/ajaq_black.zip (http://dl.dropbox.com/u/13003574/ajaq_black.zip)
nyah! ,)

p.s.: Load Nested wipes the playlist and adds there the nested content of current directory.
Title: foo_httpcontrol
Post by: vogliadicane on 2011-02-10 10:51:27
The iPhone remote controls of anamon are out now as stand-alone versions.

Get info here. (http://anamon.eu)

Demo video here. (http://www.anamon.eu/shop_content.php?coID=109)
Title: foo_httpcontrol
Post by: donttrip619 on 2011-02-25 07:10:02
I am unable to open the URL:PORT on my iphone though  .

My iphone is c