☞ 2021 Note: I'm finally moving to Quod Libet. Got sick of relying on Wine, sick of bad support for not-Latin alphabets, sick of it being not open-source, sick of some not-standard ways it handles metadata … I'm sure I'll miss some features though
I've written a little bit about the process of transitioning to different software below: §Switching Away From Foobar
Foobar 2000 is my favourite Music Player, even after switching to Linux, which is a bit of a pain, because it's Windows-only. Running it in Wine means you miss out on being able to use it to sync with stuff via USB, but that's no longer necessary for me anyway. Still, I mostly just use it when I boot into Windows 7 I finally have a nice Wine setup. Fonts have continued to be the biggest pain. The foobar2000 in the AUR was a help!
☞ Okay so I just accidentally deleted some playlists because Ctrl+w
is set to just delete playlists without any confirmation. Weird key choice I have now disabled!
Like I say in the intro, there's no Linux version, so here're some tips to get it running under Arch Linux with Wine:
※ I now have a different phone, so just stream the music from my NAS. I'll leave this stuff here in case it helps people though!
Foobar 2000 Mobile is still very much a work-in-progress, but I find it does what I want. I haven't actually looked into any other music players for my Android phone, yet.
I first tried using the One Way Sync component to get my music on there, but have since been using good ol' rsync. I have a big enough SD card to hold all my music, so I just use Rsync to keep it the same asd what's on my computer.
Playlists can be easily export from Foobar by just right clicking a playlist and selecting 'Save All As' to spit them all out as .M3U8 files (otherwise non-Roman characters get mucked) to a folder. Then using either a bash script or text editor to fix the strings so they point to where my music files are on my phone.
The only little tricky thing is accessing the music location via
/run/user/$UID/gvfs/mtp*
and running Rsync command from there, instead of via the mounted phone shortcut that appears in my file browser. The Rsync command I use is:
rsync --verbose --progress --omit-dir-times --no-perms --recursive --inplace --ignore-existing --delete-after --exclude='*.txt' /mnt/shared/Music/ ./
Gleaned from: https://askubuntu.com/questions/343502/how-to-rsync-to-android
This is one of Foobar's best features. It enables really detailed UI customisation. This is what allows you to put panels where you want, and put whatever you want in those panels, basically.
Good utilities for tagging files in batches, including the ability to auto-assign tags based on file-name. Both do the same job indifferent ways.
One Way Sync is pretty straight forward, but was a little intimidating and not well explained when I first looked at its settings. There are three pages of settings from
File > One Way Sync > Configure
Components > Tools …
(click images to open full-size)
'Encoder Settings' is just the commands that are passed along when a file needs to be converted from a format like FLAC to MP3. I don't really need this, so just left it as-is, apart from changing the location of lame.exe (the default is in the Foobar folder). Sometimes in these kinds of fields I had trouble editing existing options, so I'd have to copy and paste the info into a new field. You can have multiple, which one is used is setup on another page.
I also uncheck 'Create subfolder for each task, which was making a new folder with a new set of files for each playlist. I prefer to have all the music in one place and have all the playlists point to there.
The 'Destination Devices and Folders' should automatically list you hardware. I had to rename my phone to 'Android', because spaces or brackets or something were stopping music getting copied over.
The 'To Android' in the pulldown is the name of my preset. You have two different kinds you can save, one for 'Devices' and one for 'Tasks'. Multiple 'Tasks' ones can be included within the 'Devices' ones. The 'Devices' ones (IE 'To Android') are what you select to start coping stuff over, so give 'em a useful name!
I unchecked 'Covert lossless files', becaues I don't think I have any. You can also set it to convert stuff like OGG if your player doesn't handle them. The 'lame' in the pulldown is referencing the settigns from the first page.
You'll also want to check 'Linux Compatible playlists' if you're sending things to Android. I think everything else is default.
I changed the 'Titleformatting Scripts' a little. The default stuck things in an extra folder called 'files', and I've been using %album artist% instead of %album%, because that's how I roll. This syntax is the same as elsewhere in Foobar.
I think the rest probably makes sense‽
Handy thing for when you move files around or want to setup on a different computer or disk structure. Puts a menu item in edit
which will go through a playlist and fix broken links. So if say the playlist thinks a file is at C:\Music\…
but it's now at /mnt/music/…
and it's in your media library Playlist Revive will find it and fix the link for you :)
Something I find useful for it's ability to easily move things to/from/between playlists.
You access the features through the right-click menu, under 'Legacy Commands'.
You can do some neat things with this feature, but I've barely touched it. The most useful thing I use them for is automatically generating a playlist of the newest things I've added to Foobar.
Creating autoplaylists is a bit unintuitive (I wrote this section because I just had to look it up again). You:
Library > Album List
or Library > Search
.Album List
you make the search by right clicking on the results, from Search
You click on the …
button. From both of these you can select the 'Create Autoplaylist' option.Syntax used for things such as autoplaylists, autotagging.
Query Pattern | %added% DURING LAST 4 WEEKS |
---|---|
Sort Pattern | SORT DESCENDING BY [%added%] |
This will take a while to work. Depending on the value you use to define 'new'. In my example it will take four weeks till it starts working, because it only counts from when you add the component was installed. Still!, a handy way to keep track of new stuff.
Query Pattern | %genre% MISSING |
---|---|
Sort Pattern | if2(%album artist%,<no artist>)[ / %album%] |
Checks for empty tags (in this case genre) so you can fix them up when needed. Sorted by album / artist.
Query Pattern | %play_count% MISSING |
---|---|
Sort Pattern |
Sorta a combination of what's used above, this one lists things you haven't listened to yet.
For me, the easiest way to get music ready for putting on a Nintendo 3DS is to export it from playlists to their own directories.
In Foobar:
Contents > File Operations > Copy to
… > Copy to > [preset name]
. You will still get a prompt and opportunity to change things before it runs.%list_index% - %title%
, which names the files with the number they are in the playlist and the track name.In preferences:
Display > Columns UI > Colors and Fonts
Display > Default User Interface > Colors and Fonts
.m3u8
files (that I then renamed .m3u
for MPD's sake) I found out that the links weren't in tact, but I'll fix that later.<genre>Pop;Live;Australian</genre>
, whereas <genre>Pop</genre> <genre>Live</genre> <genre>Australian</genre>
is the standard way. With Ex Falso you can easily split a tag.If you get the error 'foobar 2000 Unrecoverable playback error: Invalid parameter. (0x80070057)' when trying to play files and you're running Foobar through Wine make sure you have the 32-bit audio stuff installed. In Arch Linux's case lib32-libpulse and lib32-libpulse. See §Linux.