Help - Search - Members - Calendar
Full Version: Idea - Remote (over tcp/ip|http)
Hydrogenaudio Forums > Hosted Forums > foobar2000 > Development - (fb2k)
Pages: 1, 2
ruzz
First post so go easy on me, eh? wink.gif

I've been reading the board for a couple of days and playing around with FB for about a week or so. Great tool - kicks everything else in the butt!

Well, as the subject line says, I have an idea. I debated over which forum to place this - perhaps General or Plugins? then I saw this dev forum and decided since it's a dev issue this is the place. If that's wrong, I apologise.

Anyway, the idea:

Let me control one "FBServer" executable via a remote "FBClient" executable.

Yes, I've seen the foo_remote widget. That's not what I mean - it's as "remote" as my right hand is from my left (not very remote at all). What I need is the FBClient running on my laptop (XP box), to control the FBServer thing running on my main music server (W2K box).

Wouldn't that be cool? I think so!

I'm doing this already - sort of - by using TightVNC. But that's overkill.

OK, so that's the idea. What follows is just some implementation pointers that will hopefully foster further discussion...

It seems that FB is already very modularised. That's cool. So this idea requires a new module that listens for "commands" sent over tcp/ip|http - I'm not concerned which right now, but let's go with http.

Let's say my music server is 10.10.10.2. Let's say FB is installed and configured to listen on port NN.

A button on the remote sends
http://10.10.10.2:NN/?command=nexttrack

FBServer receives the request and does the obvious (jumps to next track)

Another button on the remote sends
http://10.10.10.2:NN/?command=nextplaylist
or perhaps
http://10.10.10.2:NN/?playlist=pink+floyd+3

I think you all get the general idea.

Of course, it's entirely possible that the commands are configured both ends by the user. That is: they could all be numbers and what a given numbered command does is down to the mapping compiled by the user (much like the UI menus/commands and other stuff are driven right now)

http://10.10.10.2:NN/?command=5

So the user decides which part of the server UI is mapped to "5" and the user also decides which menu/button on the client sends the "5".

OK, that's long enough for a first post! Hope this little seed germinates!

Ruzz
paulski
I started on a pocket pc version of a foobar front-end to control foobar on a PC a couple of months back, but got distracted with some other plugins. Now that I see some interest in this, I might continue with it.

Paulski
cRoMo
The tcp/ip or http plugin might be very usful also for other purposes than those mentioned by ruzz.

Let's say that some of You use linux IRC client remotely by SSH/Telnet client (i.e. Putty). I do either and my client is IRSSI.
The problem is that I can't install any script for my IRSSI which would automate writing the "/me is now playing song_name" stuff remotely while using Foobar locally.

It is actually possible in Winamp, using httpQ plugin (which is the simple tcp/ip server) with adequate script for my IRSSI (can be found here).

It would be nice if Foobar can have its own tcp/ip|http server plugin, so I could use the "now playing" stuff again =]
Woniol
Why don't you try Girder from www.girder.nl.
Install this program on both computers (server and laptop) and you can controll any action (aplication) on the server from your laptop. Let me know if you need some more info about Girder configuration.
Mecha-A
This is something I, too, would really like to see. As I remember this thread covers this one guy that developed a similar thing, but it was only for beta-something and seems to have gone.

I often makeshift-DJ at LAN parties with a couple friends and it'd be nice to sit in a chair with a laptop and be able to control foobar on the computer with the good speakers...Resorted to Winamp last time >_<; httpQ worked perfectly.

Anyone with the network programming knowledge to implement such a thing would be appreciated greatly.
ruzz
OK, it's time to say it straight - let's start thinking "out of the box"...

QUOTE(Woniol)
Why don't you try Girder from www.girder.nl.
Install this program on both computers (server and laptop) and you can controll any action (aplication) on the server from your laptop. Let me know if you need some more info about Girder configuration.


Sorry, but that sounds the same as VNC - I already have that (like I said). The point here, is to control a server component via a minimalistic client component - they don't necessarily have to be different machines.

If it's done "right", the client could be installed on any type of device capable of sending tcp/ip|http (my phone, my palmtop, you-name-it).

see?

And, like cromo said, you may just want to send command strings via ssh/putty clients/servers - there's no need then to "see" the server at all - hell, the server may not even have a desktop to see!

If the FBServer component is installed on a machine, any software capable of sending http could control it. You could (if you were so inclined) have MS Word drive the server component either "locally" or remotely.

QUOTE(Mecha-A)
I often makeshift-DJ at LAN parties with a couple friends and it'd be nice to sit in a chair with a laptop and be able to control foobar on the computer with the good speakers...


zackly! I bet there are many similar scenarios. For me, I have a similar setup - my "music server" is routed to my main hifi. My laptop, via the wireless lan could be "anywhere" (within reason). I just want to change songs/change playlists from the laptop - without the overkill lan overhead of VNC. With a FBServer component, many things would become possible.
ruzz
QUOTE(paulski @ Aug 28 2003, 11:32 AM)
I started on a pocket pc version of a foobar front-end to control foobar on a PC a couple of months back, but got distracted with some other plugins. Now that I see some interest in this, I might continue with it.

Paulski

Interesting. How did you plan on the server receiving the requests?
billcow
I actually rather like that idea. It probably wouldn't be especially useful for me, but it's still a good idea. I'm thinking it would consist of the following things:

1) A server plugin. This might be a UI plugin, but it'd probably be better as just a general plugin with callbacks and such. It would have a small embedded web server that serves up status pages (preferrably with TAGZ-based templates) and interprets commands sent as POST commands to perform the specified action. A nice touch would be the ability to execute menu commands based on their name, like "Playback/Order/Random" for instance. Obviously in that case the slashes would have to be changed to something HTTP-compliant, but that's trivial. "Play this" type commands could be done by either a search string or by playlist number, including the possibility of actually adding the file(s) from the database to the playlist if they aren't already there. There are some pretty full-featured (relatively speaking) web servers that are exceptionally tiny and fast, so it wouldn't need to be too big.

2) A client plugin. This would actually more likely be an optional non-HTML interface to the server plugin, much like the various GUIs for mlDonkey (www.mldonkey.org - an open-source eDonkey client). This is obviously an icing on the cake type thing, but would be nice anyway.

I would code this myself, but I still haven't managed to get the hang of playlist manipulation in the foobar SDK, so it'll have to wait until either I figure it out or someone else codes it.
ruzz
QUOTE(billcow @ Aug 28 2003, 09:31 PM)
1) A server plugin. This might be a UI plugin, but it'd probably be better as just a general plugin with callbacks and such. It would have a small embedded web server that serves up status pages (preferrably with TAGZ-based templates) and interprets commands sent as POST commands to perform the specified action.


POST or GET is fine - no prefs here. You could even code it to take either!
QUOTE
A nice touch would be the ability to execute menu commands based on their name, like "Playback/Order/Random" for instance.


Suggest you don't do that. TH!NK: multilang support. If you go with logical command mapping (as I suggested earlier) you'll avoid needing to recode for FB/Swahili wink.gif

Suggest someone who knows the UI API "in depth" codifies the mapping so that an agreed "standard" can be achieved. And, of course, internally the numbers are consts/variables named as you'd expect:

CMD_PLAYBACK/CMD_ORDER/CMD_RANDOM

or

CMD_PLAYBACK_ORDER_RANDOM

or whatever...

QUOTE
There are some pretty full-featured (relatively speaking) web servers that are exceptionally tiny and fast, so it wouldn't need to be too big.


And, let's face it, we're not exactly talking about needing many features. This is sounding pretty cool...

QUOTE
2) A client plugin. This would actually more likely be an optional non-HTML interface to the server plugin, much like the various GUIs for mlDonkey (www.mldonkey.org - an open-source eDonkey client). This is obviously an icing on the cake type thing, but would be nice anyway.


Like I implied aerlier, the client is largely a matter of user choice - it may not be something you (or anyone else here) codes. Could be simple html page/form, MS word/excel... or, indeed, another FB with client plugin.

QUOTE
I would code this myself, but I still haven't managed to get the hang of playlist manipulation in the foobar SDK, so it'll have to wait until either I figure it out or someone else codes it.


cool - I can wait
.............................
..............
....

done it yet? dry.gif laugh.gif
diskreet
Lots of mention of a client-plugin and such. Why not just an HTTP server plugin, and it could be accessed via any browser? smile.gif
Mecha-A
QUOTE(diskreet @ Aug 28 2003, 02:10 PM)
Lots of mention of a client-plugin and such. Why not just an HTTP server plugin, and it could be accessed via any browser? smile.gif

That sounds like the best idea -- if the embedded server can get commands via HTML, things are really easy. All you'd have to do is write a page like

CODE
DELUX FOOBAR WEB INTERFACE MANAGER!

_Play_                --> "http://xxx.xxx.xxx.xxx:21/?command=play"
_Don't Play_          --> "http://.../?command=stop"
_Play Something Else_ --> "..."

CLICK THE BUTTONS FOR INTERFACE MANAGEMENT


and so forth.

There'd have to be some intelligence behind the playlist control, but once the server is written the "client" is trivial.
ruzz
QUOTE(diskreet @ Aug 28 2003, 02:10 PM)
Lots of mention of a client-plugin and such. Why not just an HTTP server plugin, and it could be accessed via any browser? smile.gif


No reason "why not". As I think I've already suggested, the client is largely immaterial - in my post immediately before yours I mentioned a simple html page.

It's the the server component that "does the business" - that's the key. But hey, If someone wants to code a specific client, why the hell not! wink.gif

so... the big question...

Is someone going to take ownership of this?

biggrin.gif

Please? B)
ruzz
QUOTE(Mecha-A @ Aug 29 2003, 01:11 AM)
... but once the server is written the "client" is trivial.


smile.gif zackly.
foosion
QUOTE(ruzz @ Aug 28 2003, 11:46 PM)
QUOTE

A nice touch would be the ability to execute menu commands based on their name, like "Playback/Order/Random" for instance.


Suggest you don't do that. TH!NK: multilang support. If you go with logical command mapping (as I suggested earlier) you'll avoid needing to recode for FB/Swahili wink.gif

Suggest someone who knows the UI API "in depth" codifies the mapping so that an agreed "standard" can be achieved. And, of course, internally the numbers are consts/variables named as you'd expect:

CMD_PLAYBACK/CMD_ORDER/CMD_RANDOM

or

CMD_PLAYBACK_ORDER_RANDOM

or whatever...

I don't see what's wrong with symbolic names:
1) They're already used in foobar, and you can execute them like this:
CODE
menu_manager::run_command("Playback/Stop");

2) FB/Swahili? You're not gonna see this, at least not from Peter. As he has said multiple times, he doesn't want to support localization. And as far as localization of the remote gui is concerned, I don't think that the user will care about the actual command sent by the stop button - whether it is "Playback/Stop" or, say, 27.
kode54
DON'T FORGET! Localization would have to include all 3rd party components!
McLone
imho two separate plugin [ideas] make sence:
1) full-featured B) http-server w/playlist editing, adding files/urls and so on
2) telnet interface. This will be my favorite as i have just one machine w/win32 on my work, all others - FreeBSD boxes, and no foobar on *n*x sad.gif

p.s. f@#$%ng win32 threads... so easy to use (afaik) that programmers couldn't resist on using threads and handles...7-Zip is another one unportable victim...
Mecha-A
Telnet interface is an AWESOME AWESOME idea. That would be the ideal solution IMHO.
Antipodean
Here's something I made last night. Its a client/server foobar controller written in python (which means you'll need python to run it) which works over tcp/ip networks. The server (fbserv.py) is just a console based app. I've included both a console (fbclient.py) and GUI (fbguiclient.py) client.
I'd recommend using the console client because the GUI one is still a little buggy and doesnt support a lot of features. sad.gif
To get started in the console client just type 'help'.

Download: Foobar2000 Control client/server

Extra Notes:
The server app uses foobar.py so make sure that that it is in the same directory as fbserv.py on the server comp.
If you want the server to run in the background (no console window) rename it from 'fbserv.py' to 'fbserv.pyw'.
This also requires the foo_remote plugin.

Also, I'm going to write a cgi script that will allow people to control foobar via the web.
Antipodean
Here's the cgi script I mentioned previously that I was going to write. It's written in python and uses the general purpose foobar module (foobar.py) I wrote a couple of weeks ago.
I think this is the kind of thing people were after. It will let you control foobar via your browser. Don't expect too much though, it's fairly minimalistic.. just how I like it. smile.gif

Foobar control CGI script
and the foobar module if you havent got it already.

This script will let you do direct requests via the url, for example:
'http://127.0.0.1/cgi-bin/fb.py?control=play/pause' to toggle play/pause
'http://127.0.0.1/cgi-bin/fb.py?tracknum=5' to play track 5

This isn't a standalone web sever like people were talking about, you will still need to set up some kind of webserver and configure it to run python scripts.

Perhaps this can also be a good reason for everybody to install/learn python.. wink.gif
Niggletron
Hi,

I made a little php script to run on a webserver with php support on windows(the machine I have good speakers on B) ). I made this for my use as im lazy and dont wont to have to reach over to that box to advance to the next song so I made this script to do it though the browser.

A note about the script: its not very complex or "smart" it only does the options through the command line provied by the /? switch.

So if anybody wants to try it you can grab it here

The only thing you will need to configure is the $foobar variable to with the full path to the foobar2000.exe.

If anyone decides to give it a try and thinks its worth adding any extras to it let me know

later.
sharpkiddie
I have just started looking into this problem this evening. I thought of using SOAP -- specifically gSOAP (http://www.cs.fsu.edu/~engelen/soap.html) which lets you knock up pretty noddy little client/server applications very quickly. I'm not sure if foobar is set up to run a web service as a plugin, but it would let you handle all manner of neat little remote control problems. Neither am I sure that I'm HARDCORE enough to code a foobar plugin smile.gif Still, it'll be a fun project.
pop3smtp23
Hy,

just thought about the same thing. Wonderful you allready had the same idea, and did some good work. Anyway, is there some source code around? Because, I´d like to have a plug-in just like httpq, and control it with a java-applet in a browser. This way, you could control foobar with a nice gui from just everywhere where a browser and at least a jdk 1.1 is installed (you could even control it via your mobil smile.gif)
This would make it possible for me to let foobar run on my computer with a good soundcard, and control it in my livingroom with an old laptop (pentium 133).

cu, pop3smtp23.
danbee
QUOTE(paulski @ Aug 28 2003, 10:32 AM)
I started on a pocket pc version of a foobar front-end to control foobar on a PC a couple of months back, but got distracted with some other plugins. Now that I see some interest in this, I might continue with it.

Paulski

I'd be *very* interested in this plugin. I'd also be willing to help (at least as much as I can).
elwoodblues
I would love to have a client/server app such as the one being discussed. The reason is that I have a music server with a great sound card located in the basement. The card is wired to the stereo upstairs and the computer is currently controlled by tightVNC. This works, but it is overkill for controlling foobar. So client on my upstairs computer would be awesome!

I love to help, but I don’t have the skills to make a meaningful contribution. I’m just voice my support for this project.

Thanks in advance!
bluestat
I put together this little control server that works as a plugin for foobar2000. Compiled against the 0.7 SDK. No documentation for it other than the help command;p but you will figure it out!

Started to do this so I could control my stereo via a bluetooth PDA or something if I ever get one;p and make a fancy little app on there to send the commands, search, browse the playlist and what not. Then I would have a standalone pc with foobar running to plugged into my stereo. Well I don't have a stereo yet either;) But that is the plan! lol.
Then I could sit on the balcony and play tunes!

Just telnet to port 3333 or whatever you configure it as in the options page, and it should be pretty straightforward. When you list the playlist it just dumps out like ALBUM ARTIST, ARTIST, ALBUM, TRACKNUMBER, TITLE, DATE, GENRE delimited by the | character. Those are configurable on the options page.

http://www.hydrogenaudio.org/forums/index....showtopic=38114

Anyway maybe it would be useful to someone else. Maybe if people like it I could keep working on it and post it in the third party plugins section.

Let me know if you break it! Thanks!

Cheers!

edit: will recompile this when the new 0.9 sdk is out
wolke
@bluestat: wonderful! i was looking for something like this, and i like it although it's still pretty basic.
could you please at least implement the shuffle command for me? smile.gif

btw, i'm using a scriptable telnet client and assigned hotkeys for the different actions.
rexit2
A related plugin request:

http://www.hydrogenaudio.org/forums/index....=song+requester
Mecha-A
bluestat:

Fantastic! Perfect!
Want to release the source? =D
andersan
I have used several different telnet and http control servers for Winamp, and I've come to the conclusion that they all suck or don't do what I want them to. Therefore I decided to make my own smile.gif

I recently started working on a media player abstraction layer for controlling any kind of media player (through a general C++ interface). I'm also implementing a command line "telnet" server which uses this abstraction layer to control its player. I already have the basic framework up and running against a home-made player i hacked togehter last night (using the BASS sound system), so I guess implementing it for Foobar2000 won't be that big a problem - as soon as I can figure out which end of the SDK I should start looking at that is.. wink.gif

The idea behind the project is to deliver one single unified protocol for controlling any kind of media player through a tcp/ip connection. My general implementation will support all the basic commands like play, pause, resume, next, prev, etc. in addition to common playlist mainpulation commands (getplpos, getplsize, getplfile, getpltitle), setting/getting volume and panning settings, getting/setting song position and so on. The framework is also easily extendible so developers can add special functionality for their custom player implementation.

Using this protocol in yuor controlling application will allow you to control any player my abstraction layer and "telnet" server can be implemented for (and that's virtually any player - that's the whole idea!), meaning you can write one web interface and use it to control either Winamp, Sonique, Foobar2000, XMMS or whatever player yuo feel like using that week smile.gif

I only started this project a few days ago, so don't expect to see a release for a while yet. Even though I'm probably going to make an implementation for Foobar2000, I'm probably going to implement it for Winamp first and integrate it into my WinCue plug-in. (But hey, if you write a client for Winamp/WinCue you can just switch to Foobar2000 once the server is ported! smile.gif)
brikk
I've put together a plug-in which I hope the posters in this thread will find useful. It's called HTTP Writer. It shows the info of the current song playing, with your personal format string through a HTTP server listening on port 4800. (Users of httpQ will find this plug-in quite familiar)

At the same time I added a simple remote control function that allows you to run commands like Playback/Random for instance. For more info visit the plugin homepage or get it right away.
ruzz
A-ha! That's what I wanted - many thanks! biggrin.gif

two things:

1 Are you planning to add more commands? (eg, playlist switching etc)
2 Playback/Pause doesn't work here.

I knocked up a little player page, used and iframe to capture the output (holds the player in the outer page that way). It's very easy to use and does exactly what I want. thanks again!

ruzzzzzz
brikk
QUOTE(ruzz @ Nov 22 2003, 12:52 PM)
A-ha!  That's what I wanted - many thanks!  biggrin.gif

two things:

1 Are you planning to add more commands?  (eg, playlist switching etc)
2 Playback/Pause doesn't work here.

I knocked up a little player page, used and iframe to capture the output (holds the player in the outer page that way).  It's very easy to use and does exactly what I want.  thanks again!

ruzzzzzz

I'm glad you liked it!

1. My personal interest in this plugin is the track information, so I will most likely not implement the playlist switching, eventhough I don't think it would be that much work to do so. The source code is out there - perhaps someone is interested?

2. So I noted, I'm not sure why but I changed my plugin page to reflect this fact biggrin.gif

Thanks for the feedback!
foosion
QUOTE(brikk @ Nov 22 2003, 10:07 PM)
The source code is out there - perhaps someone is interested?

The truth is out there as well. The truth in this case is that your server denies access to foo_write_http.zip (at least for me dry.gif).
brikk
QUOTE(foosion @ Nov 22 2003, 01:42 PM)
QUOTE(brikk @ Nov 22 2003, 10:07 PM)
The source code is out there - perhaps someone is interested?

The truth is out there as well. The truth in this case is that your server denies access to foo_write_http.zip (at least for me dry.gif).

Sorry about that. I forgot the file permissions after last upload. It should work now.
foosion
@brikk
Hint: Use charset=utf-8 in Content-Type...
Skates
brikk any chance of being able to format the HTML page that is displayed?
brikk
QUOTE
Posted by foosion:
@brikk
Hint: Use charset=utf-8 in Content-Type...


I choose to use the iso/ansi standard because of the many terminals that use it. If there is a strong need for utf-8 I could add an option to switch between the two.


QUOTE
Posted by Skates:
brikk any chance of being able to format the HTML page that is displayed?


I'm not sure what you mean, maybe you could give me an example? I guess it would work to add HTML-parameters to the formatting string and then use it with PHP for example. The page that is displayed if you view it in a browser is encoded in plain/text with charset iso-8859-1, so it depends on the browser if it accepts HTML anyway - some do, some don't.
foosion
QUOTE(brikk @ Nov 23 2003, 11:03 AM)
I choose to use the iso/ansi standard because of the many terminals that use it. If there is a strong need for utf-8 I could add an option to switch between the two.

OK, fair enough. But my point was that you had "utf8" instead of "utf-8" in your code (the hyphen was missing).
Skates
Yeah I meant to allow html formatting to be inputted into the formatting string, so you can dress up the output a little!
pornel
IMHO remote control with Lirc (> WinLirc) protocol would be best. You could control foo using any lirc client (that would be Girder plugin in my case).
From remote computer and from infrared remote :)
Safrax
QUOTE(pornel @ Dec 10 2003, 06:07 AM)
IMHO remote control with Lirc (> WinLirc) protocol would be best. You could control foo using any lirc client (that would be Girder plugin in my case).
From remote computer and from infrared remote smile.gif

I'm working on something like this. I'm using vb.net to do it (it's the only language I know so don't bash me for it..). Currently I'm stuck on how to interface vb with foobar. I've tried using the winamp api emulator plugin and some sample winamp ipc vb6 code I converted to .net but that doesn't work. The only thing I'm currently able to do is execute foobar with various command line options which is nasty ugly awful horrid tasteless, etc way of doing things.

If anyone would like to give me a hand or some pointers on how to go about talking to foobar from within my program, I'd be all for it.
jako
QUOTE(brikk @ Nov 22 2003, 10:53 AM)
I've put together a plug-in which I hope the posters in this thread will find useful. It's called HTTP Writer. It shows the info of the current song playing, with your personal format string through a HTTP server listening on port 4800. (Users of httpQ will find this plug-in quite familiar)

At the same time I added a simple remote control function that allows you to run commands like Playback/Random for instance. For more info visit the plugin homepage or get it right away.

it is not stable.

in the foobar_hta,you can refresh or do any action of the right click menu,it will play the next item or previous.

and if we try to connect to the server all the time with wrong password,it will success at last!!

and could you make an explain of the full command!!
brikk
QUOTE(jako @ Dec 17 2003, 12:04 AM)
QUOTE(brikk @ Nov 22 2003, 10:53 AM)
I've put together a plug-in which I hope the posters in this thread will find useful. It's called HTTP Writer. It shows the info of the current song playing, with your personal format string through a HTTP server listening on port 4800. (Users of httpQ will find this plug-in quite familiar)

At the same time I added a simple remote control function that allows you to run commands like Playback/Random for instance. For more info visit the plugin homepage or get it right away.

it is not stable.

in the foobar_hta,you can refresh or do any action of the right click menu,it will play the next item or previous.

and if we try to connect to the server all the time with wrong password,it will success at last!!

and could you make an explain of the full command!!

In what way is it not stable? Could you give me a detailed description of how you get past the password protection, because I cannot repeat this. I do not understand what you mean by a full explanation of the command, so I cannot give you a better explanation than there is on the page as of now smile.gif

Since the HTA application was developed by Ruzz, I will let him answer the questions that concern it.
rage-
Here's something I've hacked together for my Pocket PC, for use as a remote. It's not pretty (it uses foo_textwriter to output all kinds of data to a php file, etc), and it's not working 100% yet (having problems with the actual control buttons), but it does work enough for me.

Here's a screenshot:

user posted image
rage-
Alright, http_write doesn't work to well, at least when I'm using it. I wrote a php script that'll connect to foo_controlserver, and allow me to control foobar that way. For anyone who's interested, here's the script:

CODE
<?
function tnet($cmd) {
 $fp = fsockopen ("192.168.1.100", 3333, $errno, $errstr, 10);
 if(!$fp) {
        echo "Connection failed\n";
        exit();
 }else{
        echo "<b>Connected</b>\n<br>";
        echo ". ".fgets($fp, 128)."<br>\n";
        echo ". ".fgets($fp, 128)."<br>\n";
        echo ". ".fgets($fp, 128)."<br>\n";
        echo ". ".fgets($fp, 128)."<br>\n";
        echo ". ".fgets($fp, 128)."<br>\n";
        fputs ($fp, "$cmd\r\n");
        fputs ($fp, "$cmd\r");
        echo "<br><b>Command Sent:</b> $cmd <br>\n";
        echo ". ".fgets($fp, 128)."<br>\n";
 }
 fclose ($fp);
}
tnet($cmd);
?>


Just call it via "/filename.php?cmd=play" or whatever command you want.
DoomHammer
One problem with foo_http_write. I use it to generate XML info and writer doesn't translate & as &amp; etc. Could somebody correct it?
brikk
QUOTE(DoomHammer @ Dec 23 2003, 09:58 AM)
One problem with foo_http_write. I use it to generate XML info and writer doesn't translate & as &amp; etc. Could somebody correct it?

This should not be too hard to fix, it might even have been fixed already in the HTML output hack I recieved the other day. However I won't be able to check it out until next year when I get back home, but I'll have a look into it then and update you about it as soon as possible.
jako
[quote=brikk,Dec 23 2003, 06:22 AM] [quote=jako,Dec 17 2003, 12:04 AM][quote=brikk,Nov 22 2003, 10:53 AM] I've put together a plug-in which I hope the posters in this thread will find useful. It's called HTTP Writer. It shows the info of the current song playing, with your personal format string through a HTTP server listening on port 4800. (Users of httpQ will find this plug-in quite familiar)

At the same time I added a simple remote control function that allows you to run commands like Playback/Random for instance. For more info visit the plugin homepage or get it right away. [/quote]
it is not stable.

in the foobar_hta,you can refresh or do any action of the right click menu,it will play the next item or previous.

and if we try to connect to the server all the time with wrong password,it will success at last!!

and could you make an explain of the full command!![/quote]
In what way is it not stable? Could you give me a detailed description of how you get past the password protection, because I cannot repeat this. I do not understand what you mean by a full explanation of the command, so I cannot give you a better explanation than there is on the page as of now smile.gif

Since the HTA application was developed by Ruzz, I will let him answer the questions that concern it. [/quote]
oh,sorry,i found that it is my system's wrong!

on my system it looks like all the remote softwares' passwords become void! tongue.gif

i try it on other computers and it is working fine.



[/QUOTE]I do not understand what you mean by a full explanation of the command[/QUOTE]

it means all the command that can use in the http writer.
brikk
QUOTE(jako @ Dec 23 2003, 09:47 PM)
QUOTE
I do not understand what you mean by a full explanation of the command


it means all the command that can use in the http writer.

The commands you can use are:
Playback/Play
Playback/Stop
Playback/Next
Playback/Random

Previously it was possible to use most commands that you can find in the items preferences, but I didn't find it very useful to be able to for example quit foobar remotely wink.gif

For a Random track command the full url would then be:
http://<insert your IP here>:4800?cmd=Playback/Random

If you have entered a password append &pwd=<password> and you get:
http://<insert your IP here>:4800?cmd=Playback/Random&pwd=<password>
StangLS
QUOTE(bluestat @ Nov 3 2003, 04:42 PM)
I put together this little control server that works as a plugin for foobar2000. Compiled against the 0.7 SDK. No documentation for it other than the help command;p but you will figure it out!

That is perfect!
I created a small application to use your plugin. It's not very good yet, because I created it in 15 minutes, but in the future it should somehow look like foobar and work almost the same way.

If you are using the standard fields ("codec;bitrate;%_length_seconds%;ALBUM ARTIST;ARTIST;ALBUM;DATE;GENRE;TRACKNUMBER;TITLE"), you can use my application for remote-control (running on windows).

--> Let me be your application <--

I hope it helps!
You can replace the images, if you want and restart the program to use them.

---
I'm german - please do not laugh about my spelling smile.gif
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.