Application: foobar2000
Category: Music & Video
License: Freeware
Language: English
Description: foobar2000 is an advanced freeware audio player for the Windows platform. Some of the basic features include full unicode support, ReplayGain support and native support for several popular audio formats.
Download foobar2000 Portable 1.x Dev Test 3 [1MB download / 7MB installed]
(MD5: f604db7e664a2e1150f873dda12e3d08)
Release Notes:
1.x Dev Test 3 (2011-09-22):
- A few portability fixes.
- Still not up to spec though (Core.cfg is still not writable).
- Upgraded to PAL 2.1.1 (f4f69418c925).
1.x Dev Test 2 (2010-11-17):
- Added drive switching to playlists.
1.x Dev Test 1 (2010-10-31):
- Updated for new (1.x) foobar2000 config directory layout.
- Drive switching is configured but disabled at the moment.
- Should be ok on an upgrade but backing up is always good.
- Uses PAL 2.1 Pre (e47661cf96ca).
0.9.6.9 Dev Test 1 (2009-10-15): Initial release
Install Instructions: (also in "help.html")
- Download foobar2000.
- Run the installer.
- Agree to the license.
- Select 'Portable installation'.
- Browse to 'foobar2000Portable\App'.
- Select install type.
- Install.
- Un-tick 'Run foobar2000' and finish.
- Run foobar2000 Portable.
Notes:
Not tested with any components.
Tested with:
XP Home SP3 (Admin)
Working on XP SP3 here
A note with regards to the drive letter changes. Theres a few scripts floating around the foobar2000 forums that change the drive letter for the user. Unfortunately it goes a bit over my head so I can't really tell which would cater for a portable app but should be worth a look.
Thanks for the launcher Prapper
PortableApps.com Advocate
I just had a quick look over on the forums. As far as I can see, there are a couple of vb scripts that are being used to automate changing the drive letter to the one that foobar2000 expects to see and then back again on the way out. All very clever but I'm not sure that it would be wise to try and incorporate anything like that into the launcher. Surely there would be issues with other apps running off the same drive at the same time (if I'm understanding correctly). Thanks for the info though, all good stuff!
Interestingly, it seems there are rumours that relative path support is coming in the next major release so perhaps it would be better to wait and see what happens.
I hope the launcher is still useful for you though.
You can use the built-in subst command to mount a specific directory into a drive letter (supports relative paths as well). The syntax is the following:
subst m: ..\..\docs\music
The command above will mount the directory to the drive letter m:. To remove a substitution, use the following command:
subst m: /d
With the "nsExec" plugin (or with the simple exec command), it's quite easy to built in such support into the launcher (using the .ini file for the parameters as the drive and the directory).
I think it's a bit more elegant solution instead of hacking the playlist/library files.
(I'm using a TrueCrypt volume, so the drive letter changing does not effect me at all.)
Ah, right, I didn't realize you could do it per folder. That changes things. I'll have a look and see what I can do. Thanks to both of you for the info.
We don't use subst in launchers. It's unavailable on many PCs due to rights and will have issues on others due to the drive letter already being in use.
Sometimes, the impossible can become possible, if you're awesome!
OK, no problem.
EDIT: Would it be acceptable if the launcher checked the user account and then the drive was configurable in advance with the INI like this... ?
Just to say that the INI configuration options above work a treat. Shame not to use it but you're the boss. Thanks to everyone again.
The playlist option is fine. Though it doesn't give access to the full library playlist capability is more than good enough for now. Hopefully the developers of the base app fix the drive letter issue though as it looks like its been an ongoing complaint for some time.
Thanks for taking he time to port this
PortableApps.com Advocate
No problem
Although I don't really use foobar2000, XMPlay has the same problem and I just got used to dragging the M3U files onto it so I don't use the library in that one either.
Write the tags and playlist with Mp3tag and drag onto the audio player. Easy
Installed it - seems to be working fine and remembering my settings. Thanks!
Is this actually going to be updated again? I'd really like to see foobar2000 go official.
"Der Klügere gibt nach, deshalb regieren Dumme die Welt."
The settings files have changed a bit since I last looked at this so I'll try and update it soon. They still don't appear to be update-able with "TextReplace" either so I suspect the chances of it going official are close to zero.
What are the files like? Is it something I could take a look at by downloadng the package? At times we've done other ways - Songbird for example has to update drive letters in a SQL database, and dealing with hex as well.
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
Well, when I say they've changed, what I really mean is their location. As to their encoding, I don't know, except to say that it still doesn't work. I'll update this over the next couple of days and you can take a look if you like.
Despite my previous rather negative comments, and having looked at it again, it's still a useful package, even with the drive limitations. Just not up to portable scratch yet
See release notes for changes.
Notes: If you want to
fiddletest -The six FileWrite sections (disabled) are for the files I could get a drive/path to appear in (there may be more).
I would have liked to have moved the 'themes' folder in and out of the app dir but, as it's present on install, it just gets backed up instead. Perhaps this behaviour should be overridden if the destination is the app's dir? Or is there a PAL trick I'm missing? Uncomment in the INI to test. 'First-run only' code would have done it but is this still not implemented?
Also, presuming drive/path switching was working, it might have been nice to run through the playlists dir with a FindFirst type thing on the FPL files. Can PAL do that or is it a custom code job? See (G)ZDoom Portable if you want an example (although the game is not for the faint of heart!)
By "running through the playlists dir" I presume you just mean you want wildcards? Gringoloco to the rescue! Wildcard support is in PAL 2.1 (in fact, not having done the documentation for it is the only reason I didn't release PAL 2.1 Beta 1 a week or more ago...).
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
OK, I'll wait for the documentation on that one then. Any news about first-run code? Is that going to be supported at all?
What are you wanting for first-run code? It can be done, but the precise way in which it should be done will vary depending on how you want to do it.
With the wildcards, use them as you'd expect them to work... they work with FileWrite, FilesMove, DirectoriesMove and DirectoriesCleanup.
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
I think you're making it too complicated. It doesn't matter what it's going to be used for, it should just be a custom segment which is run if $EXEDIR\Data\settings doesn't exist and directly after (any) DefaultData has been copied.
What you can do is in the custom-code, set a variable whenever Data\settings doesn't exist:
After that check for it in what ever custom-code hook you'd need it and execute the first run code !
Maybe PAL could include setting the $FirstRun variable, that would help a bit.
Still I'm interested for what settings you do need the first-run code?
Mainly I need it to set some first-run paths in the settings files or the registry, but like WinampP uses it for the command-line as-well !
Just an idea, a first run launcher.ini or launcher.ini-section could maybe solve everybody's first run problems ?
Formerly Gringoloco
Windows XP Pro sp3 x32
Having a variable for it is not a good idea, in my opinion; I'd like to know what it's for before saying how it should be done - I can't think of any genuine cause for it yet, since copying DefaultData got moved earlier. So I'd like to hear what it's for before I can really judge what's best to be done.
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
...and have to say it's a nice app, especially for the size of it.
The playlists can be just updated with the wildcard support:
But it does not seem to be possible to update whole paths, probably due to the binary type of all the settings files. Especially the .cfg files (or at least Core.cfg) are pretty hard. It seems to have some file protection build into it. Looking at Foobar2000 SDK, it seems to be an md5-hash fileguard. Making some how use of this SDK is probably your(our) only chance for the .cfg files.
Same probably goes for setting any first-run settings, the binary format of the settings files do not seem to allow much modification (or any for the .cfg files).
Formerly Gringoloco
Windows XP Pro sp3 x32
Thanks for looking. I don't think I'll be delving into the SDK, your word is good enough for me!
I'll change the drive letter in the playlists folder, shame about the paths though...
I only wanted first-run to move the themes folder into Data (as I said). Otherwise we get "App\foobar2000\themes.BackupByfoobar2000Portable". I think somebody was having a similar problem with Opera lately?
Lack of custom code on first-run still seems to me like an omission of major functionality in PAL but I'm obviously on my own with that one, ha-ha. Thanks for the nice solution though
You're not on your own about the first-run issue, it's sometimes just hard to convince ChrisMorgan. Probably it depends for the amount of apps it would be needed for, till then it's not that hard to implement yourself by custom-code.
About the backup folder, why do not make foobar2000Portable an online installer. The foobar2000 installer is an NSIS installer so is that easy to get extracted, then in the installer custom-code move the themes folder to e.g. DefaultData.
Formerly Gringoloco
Windows XP Pro sp3 x32
Yeah I know, but I can't get a consistent download link (it seems to change every hour or so). So installing the launcher and the app have to be two separate processes.
You could say that about any of the other custom segments at every point in the sequence (except the most useful ie; first-run). Anyway, I give up! And thanks again
P.S. I decided not to use it anyway. But, hey, it should be my choice!
Providing an easy way to do first-run code is something I'd like to not put in because I believe it's very rarely the best solution. It is, however, fairly easy to do for yourself if you really insist upon it - just check for the existence of the desired directory in ${Segment.onInit} and set a flag variable is the easiest way.
In this case, I think you may even find that it's fixed incidentally by something we're going to be doing to fix up this Opera problem, making it not backup inside the App directory.
On gringoloco's point of making it an online installer - there's no reason why it needs to be an online installer; custom code applies just as much offline as online. And that's the solution which I would advocate for this case, rather than first-run code (BPBible does it approximately the same way with its included resources which go straight into Data, but they're done with the optional component).
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1
See release notes for changes.
Does this work with the new foobar2000 v1.1.2?
Being new to foobar2000, I do not really understand the drive letter issue. Has it been resolved? Are there any other issued to be aware of?
Is it okay to make a Start Menu shortcut pointing at foobar2000Portable.exe, to start it, or would that cause any missing environmental variables to mess things up?
Thanks for any information.
Hi,
Version 1.1.7 was released, will the PAF be updated?
Thanks
Is there a reason it needs to be updated?
"foobar2000 Portable 1.x"
Foobar2000 is freeware. You are required to download the Foobar2000 installer and install it to the app directory.
Read the install instructions at the top of the page.
couple of things, there is the nice updater of the portable apps application, that will not make sense to have if you need to copy the new version manually somewhere into directories, would just be different to all other applications in of portableapps.com, 2nd if you have to check the foobar2000 website, download the program, and copy manually stuff, why then not use the 'portable' option of the foobar2000 installer instead of bother with the additional PAF installation at all?
Just some thoughts.... maybe I miss something
Did you realize, you are in the Beta section of the Development Forum? Foobar is not officially released and therefore not handled by the updater. It is in Development Test state (alpha or beta release). When or if it will be released officially, who knows...
I tested it on windows 7 x64 and added some components and a new skin and work perfect.
DarkOne 3.0.1 skin (recommended): http://tedgo.deviantart.com/art/DarkOne-v3-0-1-187628705