PDA

View Full Version : Development blog



spoon
July 31st, 2014, 04:09 AM
This thread will highlight the milestones we pass on the development of foobar mobile. Initially it will be very illustration sparse, as the core of the player takes preference.

spoon
July 31st, 2014, 04:31 AM
31st July

Development work has officially started, we are very close to the first goal, so it is assured that the project goes ahead.

First priority is to get some of the core foobar classes (Windows) so they can work cross-platform, this work takes place now.

Peter
August 4th, 2014, 05:00 AM
4th August
Essential parts of foobar2000 codebase now compile on Xcode/LLVM; we are going over the codebase getting rid of Microsoft OS & toolchain dependencies.

To those of you familiar with the foobar2000 SDK:
* PFC project now works with all major compilers that support C++11 (LLVM, GCC).
* PFC features that relied on Windows API now have POSIX equivalents (pfc::thread for an example).
* Various classes from 'helpers' have been moved to PFC for easier reuse.
* 'SDK' project defining all interfaces for foobar2000 components now works with LLVM compiler (GCC testing pending).

Some of these changes will soon make it to the public foobar2000 SDK, so anyone using PFC in their own projects will benefit from this as well.

spoon
August 14th, 2014, 05:42 PM
14th August

The database design is complete and implemented on Windows, testing is almost finalized prior to porting to the various platforms.

spoon
August 24th, 2014, 12:38 PM
24th August

Media indexer ported to iOS, next up android and windows phone.

Peter
August 27th, 2014, 08:05 AM
27th August

We have audio playback in iOS simulator now - using foobar2000 engine ported to iOS. Tests on actual hardware pending.

Playback uses foobar2000 engine ported from Windows with all the features (playlists, ReplayGain, gapless, DSP capability), interfaced with Apple audio codecs for MP3 & AAC handling but using original foobar2000 demuxers for each format.

More to follow soon.

Peter
August 29th, 2014, 08:50 AM
29th August

Now running on iPod Touch 4Gen, iOS 6.1.1, playing iPod library content through foobar2000 pipeline.

36

spoon
September 2nd, 2014, 03:56 PM
2nd September

Android & WP indexing are completed (WP yet to be tested).

spoon
September 8th, 2014, 03:35 AM
8th September

Work started on database browse and selection.

Peter
September 12th, 2014, 09:06 AM
37
Today's build showing benchmark results on iPod library MP3 files decoded using Apple's MP3 decoder.

(Unoptimized build running on lowest-spec device, so the scores will improve)

spoon
September 19th, 2014, 04:06 PM
19th September

Browsing code completed, ready for implementation, first alpha on iOS is not a huge number of weeks away now.

Peter
October 3rd, 2014, 09:08 AM
Most of target codecs are running on actual iOS hardware now, I'm working to make the user interface alpha testing worthy now.

Benchmark scores from iPod Touch 4gen:
FLAC: 61x realtime
Vorbis: 25x realtime
Musepack: 55x realtime

More codecs (Opus, WavPack) pending also.

Peter
October 7th, 2014, 06:44 AM
WavPack/normal: 29x realtime
Opus: 13x realtime

This is the slowest supported device, so Opus is confirmed usable on all iOS devices that we support.

Peter
October 14th, 2014, 05:36 AM
iPad version is functional

Benchmark scores for iPad 2 / iOS 8.0.2 / 2 threads ( the CPU is dual-core ):
AAC 101x
ALAC 50x
FLAC 189x
MP3 79x
Musepack 173x
Opus 44x
PCM 1300x
Vorbis 93x
WavPack 88x

Peter
November 5th, 2014, 03:58 AM
A bit late update but,

The first alpha of foobar2000 for iOS (build 1) is out - released on 28th October.
Readme & downloads (http://mobile.foobar2000.com/forum/showthread.php?84-foobar2000-Mobile-for-iOS-readme)

A new update with a large number of fixes is being prepared.

Peter
November 5th, 2014, 04:30 AM
Build 6 out
Readme & downloads (http://mobile.foobar2000.com/forum/showthread.php?84-foobar2000-Mobile-for-iOS-readme)

Peter
November 14th, 2014, 08:54 AM
Build 7 out
Readme & downloads (http://mobile.foobar2000.com/forum/showthread.php?84-foobar2000-Mobile-for-iOS-readme)

Only album artwork indexing fixes. All device IDs sent to us until today are now included.

spoon
November 28th, 2014, 05:54 PM
Build 8 out, only changes are to add more UDIDs, so everyone upto today can test.

Peter
December 5th, 2014, 08:42 AM
Build 9 out.

New UDIDs included.
Fixed browse tree randomly showing nonsense on the root level.

DSPs (skip silence, hard limiter): Sorry, didn't make it into this build, my fault - forgot that the whole relevant menu branch is debug build only. Monday build will include this.

Peter
December 8th, 2014, 02:35 PM
Build 10 released.
An equivalent of Windows foobar2000 "Preferences" system is now included.
Right now there are only two preferences page: Media Library ( existed before ) and DSP Manager (new). A whole bunch of DSPs from Windows foobar2000 has been ported over; there's more to come. You can enable/disable DSPs as well as reorder them in the chain.
DSP capability has been added to the decoding speed tester also.

Peter
December 12th, 2014, 08:44 AM
Build 11 released.
ReplayGain & DSP updates; notably the Crossfeed component has been ported from Windows.

Peter
December 18th, 2014, 08:03 AM
Build 12 will be released shortly.

Most notable changes:
* The page flip control has been replaced with a tab control to prevent finger slide events from interrupting other controls.
* Last seen browse path is now remembered across app instances.
* Tools screen clean-ups and updates.
* Documents folder browser now hides non-audio files.

Peter
December 22nd, 2014, 06:49 AM
Build 13 is being prepared and will be available shortly.
Notable changes:
* iOS7/8 bug fix - suppressed finger slide to go back to the previous screen as it was messing various preferences pages up
* Appearance tweaks
* Much improved tools screen clarity
* Disabled some features that aren't yet properly implemented/tested, in particular some browse tree branches and tools branches.
* ReplayGain preferences no longer truncate text like crazy on smaller screens

Peter
January 8th, 2015, 08:13 AM
Build 14 is being prepared.

Starting from this build, you are no longer dependant on iTunes for transferring music to your device.
You can now use foobar2000 mobile to download music from UPnP media servers, such as foo_upnp (http://www.foobar2000.org/components/view/foo_upnp) or Asset UPnP (http://www.dbpoweramp.com/asset-upnp-dlna.htm).
Since foo_upnp is no longer developed, we recommend using Asset (free version does all you need) for the task.

After this update, we're focusing on the Android version. Note that the recent additions are implemented in a platform-independant way and will be also immediately available on the other platforms as soon as the ports are functional.

Peter
January 9th, 2015, 08:40 AM
Build 15 is available, with incremental fixes.

We're trying up all loose ends in the iOS version before moving to Android development.

Peter
January 16th, 2015, 08:01 AM
Another week, another build of foobar2000 for iOS.

After repeated complaints about iPhone6+ issues, I bought one for in-house testing; build 16 addresses all issues that I encountered.

Peter
February 20th, 2015, 07:38 AM
Maintenance update: foobar2000 Mobile for iOS build 17 coming up, with various fixes and extended UPnP configuration.

The Android port is taking longer than anticipated, but it's making progress, we're really hoping to get an alpha build out next month.

Peter
March 16th, 2015, 06:52 AM
Android status:
Browsing tree works
UPnP browsing works
Playback pending, hoping to get there this week

Peter
March 19th, 2015, 09:08 AM
Android status update:
Audio playback working, using OpenSL ES output.

Peter
March 23rd, 2015, 08:45 AM
Android status update:
FFmpeg is now used for decoding MP3/AAC/Vorbis.
I'm doing my best to make an alpha version available by the end of this week.

Peter
March 24th, 2015, 06:33 AM
Android status update:
Planned codec coverage for Alpha build 1 has been reached:
Working lossy codecs: MP3, MP4/AAC, Vorbis, Opus, Musepack
Working lossless codecs: FLAC, WavPack, ALAC, WAV, AIFF

Working on the user interface now.

Peter
March 27th, 2015, 12:20 PM
Android status update:
Alpha 1 build will be available shortly! Alpha testers, watch your mailboxes.

Readme:
http://mobile.foobar2000.com/forum/showthread.php?99-foobar2000-for-Android-readme&goto=newpost

Peter
April 9th, 2015, 03:10 AM
Alpha 2 for Android has been out for a while, Alpha 3 planned on Friday

Alpha 18 for iOS out (http://mobile.foobar2000.com/forum/showthread.php?84-foobar2000-Mobile-for-iOS-readme), a maintenance update addressing a reported crashbug.

Peter
April 10th, 2015, 09:03 AM
Alpha 3 for Android is available.

Peter
April 13th, 2015, 07:48 AM
Work-in-progress: now tested & working correctly with:

HTC One Mini2 (formerly: audio glitching)
HTC One m8 (formerly: audio glitching)
Asus Fonepad and other Intel Atom based devices (formerly: would lock up on startup)

Peter
April 17th, 2015, 06:11 AM
Alpha 4 for Android is available.

Peter
April 24th, 2015, 09:45 AM
Updates:
Alpha 5 for Android, with dark theme and playback controls in a Notification entry
Alpha 19 for iOS, with some recent performance fixes ported over

Peter
May 8th, 2015, 08:34 AM
Updates: Alpha 6 for Android Alpha 20 for iOS
Changes:
All: Paused state now much less powerhungry, releases all playback resources, so no reason to ever use explicit "stop" instead
All: Disabled stereo-to-4channels DSP as it's pointless on mobile devices
Android: Added pause on headphones unplug
Android: Added remote control event listening
Android: Added remote control metadata (for car display panels, smartwatches, etc)
Android: Added theme picker, can now choose between white/black
Android: Changed package signing (no longer using a debug package) - app reinstall cycle needed again, hopefully for the last time
Android: Fixed wrong size of notification picture

Peter
May 15th, 2015, 07:36 AM
Updates: Alpha 7 for Android Alpha 21 for iOS
Changes:
All: Improved logic of detecting changed album art for browsing tree items
All: Fixed wrong album art shown under "Albums" if two albums have the same name
All: Album artists shown in "Albums"
All: Fixed a bug causing numbers shown instead of artist/album names in browse tree
All: Now-playing page visual tweaks
iOS: Fixed stuck progress page after use of decoding speed test if the test pass completed within a very short period of time
iOS: Now playing info in lockscreen and airplay receivers
iOS: Fixed "rename" & "delete" context menu commands for files & folders, they broke a few versions ago
iOS: Rewritten decoding speed test screen, now usable regardless of screen size & orientation
iOS: Prettier DSP reordering
Android: Fixes to remote control event handling, playback controls now accessible in lockscreen
Android: Album art now propagated along with metadata to remote controls
Android: Decoding speed test screen tweaks ( up to date with iOS version looks )
Android: Audio focus handling, we now pause when some other app plays

Peter
May 22nd, 2015, 07:54 AM
Updates: Alpha 8 for Android Alpha 22 for iOS
Changes: All: Added long press play/pause to stop
All: Improved picture handling performance
All: Improved browse tree performance
All: Added minimalistic advanced preferences page
iOS: Improved DSP preferences further
iOS: Changed [A...] and so on into iOS indexed list
iOS: Grid view for albums can now be toggled (before it was always enabled on iPad and disabled on others)
Android: Now runs on 4.0 devices, most of them
Android: Changed [A...] and so on into fastscroll list with section headers
Android: Now playing along more nicely with system sounds such as incoming mail beeps

Peter
May 29th, 2015, 06:44 AM
Updates: Alpha 9 for Android Alpha 23 for iOS
Changes:
All: Fixed image resource leaks
All: Much improved library browsing performance
All: Fixed crashes related to UPnP handling
All: Added "start playback when plugging headphones" option
iOS: Grid album view refinements
iOS: Fixed a bug causing iOS to kill our process after using UPnP downloader but without dismissing its page

Peter
May 29th, 2015, 08:11 AM
Aaaand a hotfix for Album Artist / Album view not quite working right. Alpha 10 for Android / Alpha 24 for iOS is out.

Peter
June 5th, 2015, 07:57 AM
Updates: Alpha 10 for Android Alpha 25 for iOS
Changes: Preliminary shuffle support

Peter
June 12th, 2015, 09:11 AM
Updated both versions - Alpha 12 on Android, Alpha 26 on iOS;
Changes: Fixed lagging when browsing UPnP folders Fixed shuffle & all tracks items order Fixed ugly top bar icon on Android 5.x

Peter
June 21st, 2015, 02:07 PM
New: Alpha 13 on Android, Alpha 27 on iOS:
Changes: All: Added new Media Library stats in preferences
All: Added indication of media library indexing in progress when navigating the browse tree
All: Fixed flashing of stock albumart / empty playback info when switching playing tracks via track list
iOS: Properly implemented toast-like popup messages
Android: Fixed crash on incoming message tone

Peter
July 17th, 2015, 03:59 AM
Windows Phone port lives.
Browsing of UPnP media servers works on my Nokia Lumia / WP8.1 unit.

Alpha builds expected sometime late August or early September.

Peter
July 28th, 2015, 04:01 AM
WASAPI output component from desktop foobar2000 has been ported to Windows Phone.
However it's not particularly useful as Windows Phone offers only subset of WASAPI functionality - only "shared mode" that requires the app to push the exact stream format that Windows mixer operates on - in case of Windows Phone it seems to be stereo 48000hz float32. Regardless I will do my best to make it available as a part of foobar2000 for Windows Phone / Windows Universal App distribution.

Right now working on XAudio2 output module. Once that works we'll have usable playback on Windows Phone platform; I'll proceed to work on the cosmetics to make an alpha build ready.

Peter
July 31st, 2015, 06:51 AM
A refresh build for iOS and Android is being prepared. Newly submitted iOS device UDIDs have been added.

Alpha 14 for Android
Alpha 28 for iOS


Changes:
Fixed crashing with specific album artwork images
Android: Fixed list item icons not being loaded in certain scenarios


On the Windows Phone end, we have working decoding and playback. I'm working on the UI to deliver an alpha build as soon as possible. Once Windows Phone port reaches the functionality level of iOS & Android ports, we'll go beta.

spoon
August 3rd, 2015, 01:45 PM
Search is now being implemented, it should make the last few alphas before beta testing.

Peter
August 4th, 2015, 08:09 AM
WinPhone port has UPnP download capability and media library indexing, I'm hoping to reach the stage where I can field-test it this week. Still missing a few essential bits before it's usable outside the lab.

Peter
August 10th, 2015, 08:11 AM
Windows 10 Universal target has been added - no plans for Windows 8 app, only Windows Phone 8.1 and Windows 10 Universal apps are currently being worked on, with pretty much all the code shared between the two.

I confirm that Windows 10 Universal app will be ready at the same time as Windows Phone app.

I'm currently working on complying with requirements to have our app playing audio in the background, as it's somewhat more complicated on Windows than it was on iOS and Android.

spoon
August 15th, 2015, 07:07 AM
Skinning is a work in progress:

http://mobile.foobar2000.com/forum/showthread.php?114-Skinning

Peter
August 18th, 2015, 07:46 AM
Status update:
Added serialization of currently played track list and playback state, necessary for Windows Phone to work properly.

Other platforms benefit from this also: from now on, if foobar2000 mobile is closed and restarted for whatever reason, it will properly remember what it was playing and resume playback where it left.

Peter
August 24th, 2015, 07:22 AM
Windows Phone 8.1: finally capable of playing while the device is locked, had to move all of playback logic into a separate background tasks to comply with Microsoft's requirements; no other platform requires such thing so far.
I'm cleaning up the cosmetics so I can release a Windows Phone alpha build.

Peter
August 26th, 2015, 01:04 AM
Windows Phone / Universal status update:

Now using FFmpeg for decoding of MP3, AAC and Vorbis, similarly to the Android port.

Earlier I attempted to use Media Foundation codecs for MP3 and AAC but the results were uninteresting, actually got it working on Windows 10 Universal after some hacking but failed on Windows Phone 8.1, so FFmpeg it is.

Peter
August 31st, 2015, 05:35 AM
Windows Phone status update.

I'm very sorry to say that I cannot yet give you guys a test build yet.
I'll make one as soon as the current blocking bug is gone, but in the current state it's not usable past most basic testing:
It plays correctly only as long as the device is connected via USB; as soon as it's disconnected and you lock the device, it crashes. As far as I know we meet the requirements necessary for background audio playback - all playback workload done in a separate process; we can play in background while connected via USB.

I'm forced to say that no other OS has given me as much sh*t as Windows Phone, not only I've had to redesign large portions of the app to meet the requirements but I keep being stalled by bad documentation and toolchain bugs.
I hope we'll get to the bottom of this soon.

Peter
September 4th, 2015, 08:10 AM
Summary of <censored> that's been stalling me for all week-
https://social.msdn.microsoft.com/Forums/en-US/01a8ff22-9b00-474b-bf31-4f50023dc1bd/windows-phone-81-background-audio-playback-without-windowsmediaplaybackmediaplayer?forum=wpdevelop

At least now I'm making progress... hopefully this won't cause the app to be rejected from the app store. And Windows 10 doesn't seem to have this bug.

Peter
September 11th, 2015, 08:21 AM
Android (alpha 15) and iOS (alpha 29) updates.
Resampler DSP
Playback and playlist state now remembered across app restarts
"Play location" page to input URLs directly
Many bug fixes

Windows Phone build soon. We're working on distributing it to you guys. Stay tuned.

Peter
September 13th, 2015, 02:07 AM
Looks like we accidentally let our iOS distribution certificate expire. I apologize for the inconvenience. A new build (alpha 30) is being posted now, with the code signing issue resolved.

Peter
September 18th, 2015, 12:08 PM
Updates for Android (alpha 16) and iOS (alpha 31) have been posted, mainly bug fixes. Windows Phone version is almost ready, we're doing our best to iron out as many bugs as possible before alpha test.

Peter
September 21st, 2015, 09:16 AM
Windows Phone submission is in progress.
Everyone with alpha access will be able to get foobar2000 from the Windows store as soon as it's ready, assuming your Microsoft account email address matches the one used for foobar2000 mobile registration. If it does not, please drop me a message and you'll be given access shortly.

Peter
September 22nd, 2015, 03:35 AM
Windows Phone version is now live!

Readme (http://mobile.foobar2000.com/forum/showthread.php?117-foobar2000-for-Windows-Phone-readme)
Download (http://windowsphone.com/s?appid=84d76305-8fb5-4557-b866-d5b2210ad1f5)

Peter
September 25th, 2015, 09:16 AM
Weekly updates being posted: iOS (build 32), Android (build 17) and Windows Phone (1.1.1).
Change log:

Search functionality now available in iOS version. Other platforms will get it too soon.
New album art indexing scheme, for faster browsing
Greatly reduced image cache size
Fixed Android startup crash
Last seen positions in various views are now remembered [ work in progress ]
Other bug fixes


Windows Phone version is being pushed to the store and should be available tomorrow.

Peter
September 25th, 2015, 11:43 AM
iOS version now at build 34. Various regressions have been fixed.

Peter
September 29th, 2015, 03:08 AM
Apologies for the Windows Phone delay, it took a little longer as more bugs were being looked into. Version 1.1.1 is available now.

Peter
October 2nd, 2015, 09:15 AM
Weekly updates being posted:
iOS (build 35)
Android (build 18)
Windows Phone (1.1.2)

Change log:
Implemented search on Android and Windows Phone
Fixed first run possibly not showing any content on Windows Phone
Improved app performance on slower devices, Lumia 520 and iPod Touch 4gen now much more tolerable
Windows: Fixed non moving playback indicator after coming back from background
Improved media indexing performance
Improved disc number field handling in music library
Various bug fixes

Peter
October 9th, 2015, 08:49 AM
Weekly updates being posted:

iOS: alpha 36
Android: alpha 19
Windows: 1.1.3

Change log:
Discnumber handling cleanups, extraction of discnumber value from the album title is now optional. Toggling the switch will automatically reload tags from your library content.
Tapping on the now-playing track in a playlist now just goes to the 'playback' tab/page.
Fixed crash when browsing UPnP albums.
Windows: Fixed audio glitching bug.
Windows: Fixed failure to resume properly after the app has been in background for several minutes.

Peter
October 16th, 2015, 08:53 AM
Weekly updates:

iOS: alpha 37
Android: alpha 20
Windows: 1.1.4

Change log:
Windows: Fixed misbehaving auto start on headphone attach
Windows: Fixed more audio glitching bugs
Windows: Improved response to changing ReplayGain or DSP configuration
Windows: Made console content from the playback process visible
Windows: Visual updates, replaced bitmaps with Segoe UI Symbol glyphs, better handling of white theme
iOS: Fixed DSP configuration not remembered (and effectively all of DSP functionality not working) on 64bit devices.
All: Reworked playlist behavior & appearance, various views now show as multi-album playlists with nice album headers
All: Reworked context menu semantics; album headers now also present context menus
All: Albums can now be sorted by year - option under 'advanced'
All: Bug fixes

Peter
October 17th, 2015, 12:51 AM
Android: Alpha 21
Fixed alpha 20 regressions

Peter
October 30th, 2015, 12:14 PM
Big update today.

Most importantly
foobar2000 for Android now supports Android versions as old as 2.3 (http://mobile.foobar2000.com/forum/showthread.php?124-Announcement-Android-goal-changed).

Versions being posted
Alpha 22 for Android
Alpha 38 for iOS
1.1.5 for Windows Phone

Change log
UPnP browsing refinements
Reworked formatting of browse view rows
Android & Windows Phone: Added albums grid view (togglable in Advanced)
More responsive media library, changing configuration cancels current scan if any
Disc & track number rendering cleanups
Windows: Fixed remembering scroll positions
Fixed broken "Advanced search" entries
Various bug fixes
iOS: Improved albums grid view
iOS: Fixed mishandling of slash in album & title tags in iTunes library tracks
Android: "Download" command now visible even if there's no default save location
Android: Lowest supported version system is now Android 2.3
Android: Fixed soft-keyboard not hiding on tab change
Android: Faster decoding thanks to new and improved FFmpeg build

Peter
November 13th, 2015, 09:44 AM
Versions being posted
Alpha 23 for Android Alpha 39 for iOS 1.1.6 for Windows Phone

Change log
Prevented artist pictures from being taken from compilation album covers
Added experimental ReplayGain scanner
Improved "Shuffle Tracks" and "Shuffle Albums" performance
Various visual fixes
Android: Corrected playback thread priority management, now usable on single core devices without glitching during scrolling lists
Android: Fixed UPnP not working shortly after app startup

Peter
November 13th, 2015, 12:00 PM
Another update for Android and iOS up; first wave of reported bugs in the new ReplayGain scanner has been dealt with.

WinPhone update will have to wait a bit; I can't even submit a new one until the previous one goes live; I'll post it as soon as I can.

Peter
November 20th, 2015, 02:19 PM
Weekly update:
Android build 25
iOS build 41
Windows Phone 1.1.8 [submission in progress]

Changes
UPnP downloader: no longer cancels download after navigating away from it
UPnP downloader: fixed handling of track titles with : character
Android: Fixed crash when running in background and the playing track has no album cover
ReplayGain bug fixes
Made response to ReplayGain & DSP configuration change instant
Improved display of track & disc numbers in UPnP folders
Fixed crash when opening an empty browse tree page (such as empty UPnP folder)
Library browsing views now refresh after library content has changed
Windows: Added folder-based browsing of device's media library


Again most of this week's effort went into making Windows Phone filesystem operations not suck... it takes 0.3s just to pull a list of 28 subfolders in my Lumia 640XL's music library - from phone's internal storage, not a slow SD card - and there doesn't seem to be anything I can do about it. Even old Samsung Galaxy Ace *destroys* the fastest Windows Phone devices at media library indexing speed. I hope Windows 10 for phones improves this.

Peter
December 1st, 2015, 11:37 AM
Support for skins has been added to the iOS version and will be available with this week's update.

Picture a working prototype running on my iPhone, not a mockup:
45

As you can see, the bottom tabs are gone for good; the playback controls occupy the entire screen.

Similar approach will be adopted on all platforms.

Peter
December 4th, 2015, 09:08 AM
Weekly updates:
Android build 26
iOS build 42
Windows Phone 1.2 [submission in progress]

Changes
iOS: Entirely new user interface layout, new playback screen is now skinnable.
All: "Media Library indexing in progress" no longer appears during routine rescans, only when the hasn't been properly indexed yet
All: Prevented UPnP downloader from grabbing Asset UPnP's stub folder pictures as album covers
All: Added an option to see non audio files in folder browsing view, to delete unwanted folder.jpg and such
All: Reworked album header appearance in track lists
Windows: Improved looks & behaviors of toast popup messages

Peter
December 6th, 2015, 01:08 AM
Uh-huh, I know what you're thinking: did he post 4 verisons or only 3? To tell you the truth I lost track myself in all this excitement.

foobar2000 Mobile is now available as a Windows Universal app to all Windows Phone alpha testers.
http://forum.foobar2000.com/forum/showthread.php?126-foobar2000-for-Windows-Universal-(Windows-10-desktop-tablet-phone)-readme

In other news, we'll be entering beta stage as skin functionality is ready on more platforms.

Peter
December 14th, 2015, 08:25 AM
Skinning coming to Android version soon, early prototype works.

On iOS, the skins are now able to control appwide colors used in playlists and such.

Peter
December 20th, 2015, 12:54 PM
Long-awaited update:
iOS: Alpha 43
Android: Alpha 27

On iOS, skin support has been extended; more parts of the app use skin-defined colors.
Black and white skins are now included by default.

Skin support and new tab-less UI has been ported to Android, everything mostly works with minor glitches on low-memory devices and no convenient way to activate playback controls while browsing ( must go to tools / "show playback controls", or tap the currently playing item );

Additionally, an Android compiler configuration issue causing major performance loss has been fixed; decoding speeds should be much better on all ARM based devices now; problem was present since approximately alpha 22.

Peter
January 6th, 2016, 04:42 AM
iOS version has been updated with recently registered device IDs; those of you who submitted device IDs recently can now install it. A proper update will follow soon.

Peter
January 9th, 2016, 12:21 PM
Good news everyone! (tm)

iOS version is going beta, through Apple TestFlight.

Invitation emails will be arriving soon, we're making sure everything is in working order. No more UDID registration - it will just work on all devices registered with your Apple ID.

There is one catch to it - Apple TestFlight requires iOS8 or newer, you won't be able to install on older devices even that we support those. If you wish to install on device running iOS older than 8, please use the old route - send device ID to me, I'll send you a sideloadable IPA file that you can install on it.

Peter
January 10th, 2016, 01:17 PM
Apple TestFlight appears to be working well - contrary to *cough* Microsoft store.

Everybody involved should have gotten an invite email from Apple to install the beta.

Readme for the iOS version (forum.foobar2000.com/forum/showthread.php?84-foobar2000-Mobile-for-iOS-readme) updated with the details.

Peter
January 15th, 2016, 09:13 AM
Android version has gone beta as well. Just finished sending the emails.

Peter
January 22nd, 2016, 04:52 AM
Version 1.0.4 for Android and iOS is being prepared.

Changes:
New feature: console log saving.
iOS: Fixed the last few dialogs that did not get skin colors applied.
Fixed "sort albums by date" not always having an effect.
Fixed unresponsive "play" button longpress.
Android: Added handler for "audio becoming noisy" event, should now properly pause on headphone unplug.
iOS: Fixed edge pan gesture (for toggling between playback & other UI) interfering with usability of some pages.
Android: Various cosmetic fixes, fixed propagation of skin colors other than classic white/black ones.
Android: Added missing "..." button in playback controls screen.


Next week I resume work on Windows Phone/Universal port.

Peter
January 27th, 2016, 07:32 AM
After some initial gripes I've successfully posted foobar2000 mobile to Google Play

foobar2000 on Google Play (https://play.google.com/apps/testing/com.foobar2000.foobar2000)

Currently as closed beta, see Android version readme (http://forum.foobar2000.com/forum/showthread.php?99-foobar2000-for-Android-readme) for further details.

Peter
February 2nd, 2016, 07:08 AM
Windows Universal skin rendering sort of works....

*sigh* can't get it running on Windows Phone 8.1, running into all kinds of obstacles:
* broken compiler - flood of nonsensical errors after attempting to use a trivial C++11 feature took me two hours to figure out
* broken debugger - been trying to run the app for the last 30 minutes with no success
* broken app store - how many people actually managed to install it??

If you're a Windows Phone version alpha or beta backer, feel free to contact me to get enlisted for iOS or Android beta testing instead, as it's impossible to give any promises about release timeline, and even then it will always lag behind the other ports due to inferior development tools.

Peter
February 3rd, 2016, 09:19 AM
OK, progress
Windows Phone 8.1 version has been successfully upgraded to the new (tab-less) user interface, with playback screen skin rendering - running on my development Lumia 640 XL unit. I'll be working towards getting the beta out to you guys.

Peter
February 4th, 2016, 05:42 AM
Follow up rant
MSDN does not f***ing work most of the time as of this week so I can't access any of Windows development documentation properly.
Windows Phone compiler is ridiculously broken, debug build produces malformed binary about half the time and requires a clean rebuild to fix.

I feel sorry for anyone else developing for this platform. Android has annoyed the hell out of me on many occasions but I'd still rather code for Android than deal with Microsoft nonsense. And that means a lot considering that I've been writing Windows programs for the last 20 years.

Peter
February 11th, 2016, 08:57 AM
OK, after endless VS2015 crashes and other nonsense ( say, why does MS mandate higher version number for Win10 package than WinPhone81 package if you post both ? ) - the beta is going up to the Windows app store, this time including the Windows 10 app.

However, MS dashboard is displaying a notice about delays, so it's hard to tell when it will be actually published.

Note that version numbering is being changed to be consistent with other platforms, the new update will say "1.0.6 beta" in the aboutbox; Windows Store package version numbers will be 1.2.1 (Phone 8.1) and 1.3.1 (Universal).

Peter
February 15th, 2016, 09:04 AM
Looks like Microsoft store situation has improved.

Version 1.0.7 with many bug fixes is being posted, should show up on your devices in a couple of hours.

Beta access to foobar2000 for Windows Phone will be opened tomorrow, expect Microsoft Store activation links in your mailboxes soon. This includes access to the Windows 10 Universal app through Microsoft store.

Peter
February 16th, 2016, 06:22 AM
Windows Phone / Windows Universal version has gone beta.

Everybody with beta access should have gotten their activation codes emailed. You can install foobar2000 Mobile on full range of Windows 10 devices (via activation code), as well as Windows 8.1 phones (your Microsoft account name must be included on the tester list, if it's different than the email address used to register with us, please contact a staff member to get added).

Peter
February 18th, 2016, 05:25 AM
Turns out not everyone got their Windows 10 access codes emailed on Tuesday because I suck at Microsoft Excel. This has just been corrected. Apologies for the delay.

New build for Windows - with swipe to toggle browsing/playback - will be posted today.

Peter
February 18th, 2016, 09:06 AM
Beta 1.0.8 for Windows Phone is out, with browse/playback swiping.

Peter
February 19th, 2016, 03:54 AM
Beta 1.0.8 for Android is being posted. Fixes crash on skin change ( 1.0.7 regression ).

Peter
February 26th, 2016, 09:05 AM
Version 1.0.11 for all platforms coming up.
Changes:
New folder icons in browse view.
Fixed shuffle albums vs shuffle tracks reusing each other's playlist instead of creating new ones.
Made re-opening a shuffle view actually re-shuffle tracks (but not when restarting app / restoring previous view).
Bug-fixed image downscaling code, various visual glitches in skined playback view should be gone.
Windows: foobar2000 now starts listening to[ headphone plug/unplug events on app startup rather than when starting playback for the first time.
Windows: Made browse view hierarchy properly restored after app restart.
Windows: Various appearance tweaks.

Peter
March 4th, 2016, 09:13 AM
Version 1.0.12 for all platforms coming up.
Changes: Windows: Ability to move/copy files between app-private storage and system music folder.
Windows: Default to downloading music to system music folder.
Windows: Various bug fixes. Greatly improved stability. Misbehaviors after suspend cycle should be all gone.
All: Further fixes to skin image rescaling algorithm. Default skin seekbar now looks like it was meant to.
All: Significantly reduced skinned playback controls screen update rates and CPU usage.

Peter
March 11th, 2016, 07:47 AM
Version 1.0.13 for all platforms is being posted.
Changes: Fixed skin element calculation glitch, seems to mainly affect Android.
Revised module playback support - now works on all platforms.
Windows: Jumpy playback position should be now fixed.
Windows: Fixed sticky seekbar drag bug.
When browsing documents folders, last seen folder is now remembered across app instances.
iOS: Cleaned up playback screen gestures on iOS6.

Peter
March 17th, 2016, 02:12 PM
This week's update comes earlier than usual, for all platforms.

Version 1.0.14 changes:
iOS: Fixed playback screen fringe glitch
iOS: Fixed black skin vs table view A-Z index
Android: Fixed "skip silence" DSP crash
Module files are now much faster to open, but non seekable and do not show length
Prettier handling of non-seekable files (seekbar disabled)
Added "Reset" button to settings of individual DSPs
Made changing DSP settings interrupt playback less often
Made album grid view use skin provided images
Improved browse view album header looks on tablet & desktop devices

Peter
March 29th, 2016, 09:41 AM
Version 1.0.15 - currently only Windows, other platforms will follow.

Changes: Grid view for albums is now enabled by default
Added confirm-before-delete when browsing folders
Better info display when playing module files

On Windows, new debug logging features have been added to try to get some info about the blankscreen bug... but the bug seems to have vanished. I'm suspecting that this is actually a problem with either the store... app installations from the store were affected while ones made directly with Visual Studio on development devices were OK.

Peter
March 30th, 2016, 08:50 AM
1.0.15 for Android is ready, iOS will show up shortly.

A refresh update for Windows has been posted - still versioned as 1.0.15; it contains some internal fixes. In particular, browsing of device music library lags much less now.

Peter
April 15th, 2016, 06:27 AM
Version 1.0.16 being posted for all platforms.

Change log: Much more verbose console logging
Fixed playback view incorrectly rendering playback time values longer than 1 hour
Made dragging ReplayGain preamp sliders interrupt playback less
Windows: Fixed stuck background playback process after existing the app
Windows: Another attempt at working around stuck black playback screen after loss of GPU context

Peter
April 18th, 2016, 09:03 AM
Windows 10 app progress

Starting with the next update, Media Library can operate on any folder, not just user's music library folder, so you no longer need to point your Windows Music library at your actual music folder if you have no desire to let other apps implicitly index your music.

Peter
April 21st, 2016, 08:46 AM
Windows version update - 1.0.16 - is being processed and will arrive on your devices shortly.

Windows Phone 8.1: Corrected unresponsive UI for several seconds when loading skin (was unable to even flip back to browse screen).
Windows 10 tablet/desktop (not phone): Now able to index music in arbitrary folders, not only Windows music library
Removed access to foobar2000-private music folder that gets lost forever if you uninstall the app as it no longer makes any sense.
The folder still exists and is accessible if it has been created by an earlier version. New installs will no longer present it.
Now possible to open files in foobar2000 mobile from Windows Explorer

Peter
May 5th, 2016, 06:52 AM
iOS version 1.0.16 got somehow stuck and did not get pushed to you guys until just now. Sorry about the delay. If the fixes were any more important, I'd have noticed this earlier.

As you've probably noticed by now, preview version of foobar2000 mobile for Windows 10 is now available to everyone
http://foobar2000.com/get-win10

On the Android front, version 1.0.19a has been posted, with major bug fixes and reworked notification playback controls.

Android and iOS public previews are being prepared and will be available soon.

Peter
May 7th, 2016, 06:47 AM
iOS public preview is ready.

http://foobar2000.com/get-ios

Peter
May 9th, 2016, 05:23 AM
Android public preview is ready.

http://foobar2000.com/get-android

Peter
May 10th, 2016, 03:58 AM
Windows version now at 1.0.20, the update should show up on your devices shortly if it hasn't yet.

Missing skin picker functionality has been added, now you can load fbskin files from any location.

Peter
May 11th, 2016, 01:06 AM
iOS now at 1.0.20.

AppStore free distribution now supports iOS 6.1.
However that does not work with TestFlight as TestFlight itself requires iOS 8.

There seems to be a bit of a messup with TestFlight, publishing 1.0.20 on AppStore made it disappear from TestFlight as far as I can see. I'm looking into this today.

Peter
May 13th, 2016, 09:20 AM
Note that I've changed the version numbering scheme (http://forum.foobar2000.com/forum/showthread.php?174-Versioning-scheme-change-after-1-0-20&goto=newpost) today to deal with Apple requirements.

Version 1.0.21/1.0.22 is going up to Google Play right now, with major bug fixes.
1.0.22 will show up on iTunes TestFlight sometime tomorrow, not much fixed there but 1.0.20 was not properly available to TestFlight users so you will finally get the 1.0.20 changes along with beta features.

Windows Store update is also pending; fixes include alternating between screens of different DPI on Windows 10 desktop.

Peter
May 17th, 2016, 07:44 AM
This week's progress so far summarized:
Windows phone: unbugged Bluetooth headset handling
Windows desktop: fixed seeking and track cycling audio glitching
Windows: added handling of M3U/PLS radio playlists
Android: the ability to browse all found storage devices is coming back, just not root filesystem browsing.More to come.

Peter
May 20th, 2016, 11:25 AM
Version 1.0.23 / 1.0.24 going up. Should show up on your Androids shortly, the other platforms will soon follow.

Changes: All: Improved pause performance with formats that are slow to seek
iOS: Fixed crashing when flipping views on iOS 8.x, possibly 7.x too
iOS: Support for loading playlist files (M3U, PLS) through Documents folder browsing
Android: Added filetype registration for various supported media files as well as playlist files
Android: Made possible to browse all found storage devices by folder even if they&*8217;re not music library folders
Windows, Android: Support for M3U and PLS playlists
Windows, Android: Support for internet radio using M3U and PLS playlists from web browser
Windows: Fixed problems with bluetooth headsets on Windows phones

Peter
May 21st, 2016, 04:11 AM
One other thing that I lost track of in all this excitement-

Windows Phone 8.1 is now supported in the free preview version.

Peter
May 27th, 2016, 08:53 AM
Short newsflash.

iOS6/7 playbacks creen ... context menu crash, fixed

WASAPI is being tested on Windows 10 and Windows Phone 8.1, looks good so far, reported audio quality issues should be gone as we do all resampling on our side and hand 48KHz signal to the system - or whatever sample rate the mixer runs at.
MOD files etc will be rendered at system's output sample rate with WASAPI enabled, no pointless resampling will be done.

No new builds this week, I'll put something up once WASAPI has been tested thoroughly.

Peter
May 31st, 2016, 07:00 AM
Windows version update going up today, many bug fixes.

In particular, it seems at some point skin picking openfiledialog of the Windows 10 app vanished after code structure changes. This is pretty bad, I personally apologize anyone affected by this bug. This has been corrected and a fixed version will be arriving on your devices today.

Peter
June 10th, 2016, 05:00 PM
1.0.27 / 1.0.28 going up, for all platforms.

Changes:
All: Added playback order controls, shuffle and repeat modes
All: Made the next track visible to the skin
All: Grid album view is now text+image by default, image-only is opt-in
All: Made duplicate tracks hidden by default when browsing
All: Various utility advanced preferences options added
All: Skin rendering bug fixes
Windows: Added MMCSS, should no longer stutter under heavy CPU usage

Peter
June 15th, 2016, 10:02 AM
Work in progress report:

Stop-after-current has been added.
Playback order options have been made controllable by skin buttons. Use "repeat", "shuffle", "stopaftercurrent" buttons in the skin to control them.

Peter
June 18th, 2016, 10:10 AM
Version 1.0.29 / 1.0.30 is being prepated. Change list: Added stop after current feature
Repeat / shuffle / stop after current are now accessible via skin elements; default skin provides shuffle/repeat controls
Smarter shuffle vs non-repeat behavior when manually started playback from specific track
Fixed DSP reordering bugs
Implemented skin-controlled volume control; added fallback tools items for volume control since not every skin has a volume slider

Peter
June 18th, 2016, 03:28 PM
There has been a slight messup with the new Windows version, but it was sighted by me shortly after posting the new update and has now been resolved.

If you're experiencing erratic behaviors while pausing, please update again.

Peter
June 29th, 2016, 09:53 PM
iOS port now at 1.0.33/1.0.34.

1.0.32 adds one iOS specific regression hotfix and image loading behavior change.
1.0.34 fixes 1.0.32 image handling regression that did not yet appear on other platforms.

Peter
July 15th, 2016, 08:36 AM
1.0.36 update posted for Android only.

Changes: Added wifi multicast lock - which appears to be required for UPnP discovery to work on some devices, hence change in permissions
Rewrote folder picker dialog ( for library settings and downloader )
Fixed crash when using [frame] in a skin
Added https playback support for internet radio

Peter
August 20th, 2016, 03:37 AM
1.0.36 posted for iOS ( beta only for now, lite will follow next week ).

Changes: Various UI tweaks
Tag handling changes from latest foobar2000 1.3.11 for Windows desktop

Peter
September 19th, 2016, 10:26 AM
1.0.37 / 1.0.38 for iOS are being posted.

iOS 10 first run experience has been fixed; music library is indexed as soon as the user approves the prompt.

Other fixes are mostly behind-the-scenes stuff merged from latest foobar2000 desktop.


Other than that, I'm very sad to announce that iOS versions prior to 8 are no longer supported in the current build of foobar2000 mobile - I have to use latest Xcode to legitimately interact with new iOS 10 features, and it no longer supports targetting iOS versions older than 8.

Affected devices are: iPod Touch 4gen, iPhone 3GS, iPhone 4.

However, as far as I am aware of, the App Store will still let you install the last version of the app that does support your OS, so you can still get 1.0.33 - there was nothing criminally broken in that version as far as I know. If an urgent fix is needed, I'll look into making a separate submission - without iOS 10 specific features - built with old Xcode.

Peter
October 5th, 2016, 10:13 AM
Well, it's been awfully quiet lately so it's time for some good news.

Update for all platforms (1.0.39/1.0.40) is going up. Playlist manipulation features are included, as well as lots of fixes.

You can either build playlists directly in foobar2000 mobile, or upload externally-made m3u files to your device and point foobar2000 at the folder you put them in.

iOS and Android versions should be arriving shortly.

Windows version will be slightly delayed as I'm having trouble with getting debugging working on my Lumias again.... *sigh*

Peter
October 6th, 2016, 12:53 PM
Murphy's law at its best - last minute edit before 1.0.40 went wrong without me noticing. Hotfix going up.

Peter
October 13th, 2016, 07:37 AM
This week's update - 1.0.44 - is being rolled out. Windows version included.

First the good news:
Many playlist manipulation bugs have been fixed. On iOS, reordering playlist items as well as DSPs now works properly.

Now, the bad news:
Our current Windows codebase requires Windows 10 1607. Supporting older Windows 10 is out of the question. Windows Phone 8.1 version may be updated again when things stabilize.
Please note that if you run one of the affected Windows versions, you can still get the newest old foobar2000 version that supports your OS from the Windows Store.

Peter
October 28th, 2016, 08:23 AM
1.0.47 / 1.0.48 for all platforms going up.

Changes: Android: "Play location" now hides soft keyboard on dismiss
Android: Added OpenSL ES output mode, opt-in via advanced settings
All: Added website / forum / support links to the about page
iOS: Fixed mono AAC files not playing
iOS: Fixed high sample rate ALAC files not playing
iOS: Fixed certain MP3 files (ones not gapless to begin with) having extra silence inserted at the end
All: Fixed user interface lockup when attempting to play UPnP or internet radio from an unresponsive server
All: Fixed certain Ogg files with strangely formatted tags being unreadable
Android, Windows: Fixed missing context menu for search results
Windows: Fixed potential crash on browse

Peter
November 21st, 2016, 07:05 AM
Today, I'm proud to announce a new feature that will greatly simplify the process of transferring music to foobar2000 mobile:

Built-in minimalist FTP server providing access to configured music folders.

Note that the FTP server is active only when relevant page is shown and shut down as soon as you navigate away from it; it is only for temporary use not for persistent music sharing.

It is particularly useful for the iOS version of foobar2000 mobile, you can finally do whatever you want with your documents folder without iTunes involved.

FTP clients tested and verified to be compatible during in-house test cycle:
FileZilla (Windows)
Windows Explorer
ForkLift (Mac)
Safari (Mac)
Google Chrome
Mozilla Firefox

The feature will be rolled out on all platforms.

Currently, foobar2000 mobile version 1.0.50 is being published - for now only for beta testers.

Peter
November 24th, 2016, 04:21 AM
New update going up today.

There have been various refinements to the FTP server functionality. FTP is still available in beta only, public versions will get it by the end of the year.

Other than that, the MinimServer incompatibility has been addressed.

Peter
November 26th, 2016, 12:52 AM
Well, Apple is really taking their sweet time reviewing & approving the new update. I pushed the 1.0.51/1.0.52 update date to Monday in the change log for now, and it's still stuck in "reviewing".

Peter
December 1st, 2016, 05:25 AM
Well, I just realized how the FTP server feature entirely doesn't work on Lumia devices.

Worse, it worked fine during in-lab tests. It just won't work when installed via Windows Store or sideloaded. It only works when installed using debugger. In other words, it's a proper heisenbug (https://en.wikipedia.org/wiki/Heisenbug).

After further research it turns out we need to declare "internet server" capability in the manifest to do this - not that we run an internet server as we explicitly bind to a local network IP. The failure is entirely silent, even the app thinks it opened the port successfully.

The next update will address this.

Peter
December 21st, 2016, 07:28 AM
Version 1.0.55 / 1.0.56 going up. I hope Apple store gets it approved before the Christmas break.

Change log: FTP server: now available to everyone, not just beta users.
FTP server: improved compatibility with various FTP clients.
Tools menu structure cleanups.
Skinning: New image entries: iconadd, iconremove, iconsliders, iconspeaker, iconmenu, iconlist; default black/white skin images are used if a custom skin is missing some of the new functionality.
ReplayGain scanner can now show what albums or tracks are missing ReplayGain info.
Refreshed user-specified UPnP server list page functionality.
Creating a new playlist now initiates playlist rename.
Fixed a skin rendering glitch causing white skin buttons to visible have gray fringe bars on some devices.
Android: Enabled app-private music folder feature, in case you do not wish to let any other apps access your music.
Android: Fixed various file type registration handling bugs.

Peter
January 10th, 2017, 04:04 AM
Today's lesson: if you forget to merge changes over between different branches of the same app, you're going to be fixing the same bugs over and over.

1.0.57/1.0.58 for iOS in processing - fixed mono AAC playback once again, as well as high sample rate ALAC & AAC.

Peter
March 13th, 2017, 06:48 AM
Well it looks like iOS beta 60 day interval expired, so I'm pushing a new beta today.

1.0.60 introduces FTP client feature; works similarly to UPnP media server browsing, except it works with FTP servers.
You can add FTP servers for foobar2000 to index under 'media servers' settings, by typing ftp:// URLs.

Peter
April 6th, 2017, 11:56 AM
Version 1.0.61/1.0.62 for all platforms is being published and will appear on your devices shortly.

Changes since 1.0.60:
[All] Greatly improved FTP browsing performance over 1.0.60
[All] More reliable remembering of scroll position across various views
[All] Folder browsing: different message when the folder is empty vs the folder contains invisible files
[All] New supported formats: TAK [FFmpeg], APE [FFmpeg], WMA [Media Foundation & FFmpeg]
[All] Updated FFmpeg to 3.2.4
[All] FTP browser treats "@recycle" etc as hidden
[All] Fixed folder browsing losing now-playing track status when leaving & reentering a folder.
[All] Decoding speed test page tweaks
[iOS] Fixed a bug causing certain folder pictures not to load
[iOS] Disabled autocorrect for various edit boxes such as "play location" URL
[iOS] FFmpeg now used for AAC + MP3
[Android] Fixed generic progress dialog bugs - affecting mainly decoding speed tester
[Android] Now compiled with latest R14 NDK
[Windows] Fixed album grid view glitches

Peter
April 7th, 2017, 03:59 PM
Well, the Windows Store submission got stalled by nonsensical certification errors - certain functions that do work on actual device and were allowed before are no longer allowed. It's now coming thru though.

In other news, Windows Phone 8.1 support has been brought back.

Peter
April 12th, 2017, 04:57 AM
I just noticed that current Android build won't run on my "low anchor device", Samsung Galaxy Ace running Android 2.3.7. If you have such old device, stick with old version. I'll see what I can do about making it work again with the next update.

I think the problem is CPU compatibility with pre-ARMv7 rather than old Android version.

Peter
April 13th, 2017, 06:52 AM
FTP server incompatibility found-
Certain clients - ForkLift3 in particular - do not work with our FTP server with a blank password. This has been fixed on our end for the next update.
If you you are having trouble using foobar2000's FTP server feature, try setting a non-empty password.

Peter
April 14th, 2017, 04:58 AM
Android-only update today, 1.0.63/1.0.64.

Fixed above-mentioned FTP server incompatibility.
Folders containing .nomedia files are now excluded from indexing.
Fixed incompatibility with certain very old devices (1.0.61 regression).
Fixed some cosmetic glitches
Fixed first run glitches, "foobar2000 music folder" is now created reliably on first run.
Smaller distribution size, you only get binaries relevant to your device instead of all binaries packed into one APK.

Peter
April 22nd, 2017, 01:03 PM
Good news for Android users, the Android port is getting the attention it needed so badly.

The next update will address file access permissions issues on Android 6 and newer - you will just point foobar2000 at your music folder using standard system folder picker panel, without having to specifically manipulate app permissions. This will also address writing (FTP server) permissions.

Peter
May 2nd, 2017, 01:05 PM
AT LAST the biiiig Android update - 1.0.66 is being rolled out to beta testers.

Changes: Support for reading and writing of all external storage types. You may need to remove a library folder and add it back to gain write access.
Adding folders now uses standard system folder picker where available.
Fixed various image resizing quality issues.
Much improved swiping between browse and playback.
Fixed crash on skin change on Android 2.x
Skin picker now uses system file picker dialog if available
Library folders now have on/off switches to toggle indexing - you can have certain folder appear in browse tree (and FTP server) without indexing files inside.
FTP client (downloader) and FTP server fixes.

I must say that I always favored the iOS port and I still do as far as the general quality of development tools goes - but for you guys, the Android port is as good as the iOS now.

Peter
May 8th, 2017, 03:05 AM
1.0.67 / 1.0.68 will be posted for all platforms today (give one day before Apple approves it, everyone else should get it today already).

Changes over 1.0.66: Android: Prevented FTP server shutdown on screen orientation change.
Android: Edit box behavior tweaks, prevented autocorrect when entering media server URLs and such
Android: Improved compatibility with lockscreen and remote control events on Android 5 and newer.
All: Worked around TAK format seeking glitches in FFmpeg
All: Fixed missing metadata when making playlists with tracks not indexed by the Media Library.
All: Fixed stall when trying to back out of loading a large list of UPnP items
All: Improved UPnP compatibility with servers giving wrong content-type for M4A files (Universal Media Server).
Windows: Fixed various crashes
Windows: Image management tweaks
Windows: Prevented loss of folder access permissions if the same folder is added more than once (both music and playlists) then removed once.

Peter
May 11th, 2017, 07:22 AM
Version 1.0.70 beta for Android has been posted. It contains various Android-specific fixes and addresses things that did get ugly in the previous update.
Fixed swipe vs seekbar/volumebar interaction.
Improved folder browsing performance.
Fixed hidden files (prefixed with dot) being shown where they should not be when browsing by folder.
Fixed cases where media library would not index the requested folder, even though folder browsing worked fine.
For troubleshooting, an advanced option has been added to use the old folder picker instead of the new one.
This option appears only on Android Lollipop and newer as the feature is inactive on older system versions.
Enabling this restores old (pre-1.0.66) fb2k behaviors regarding file access. For this to take full effect you need to remove and re-add affected library folders.

Peter
May 12th, 2017, 05:58 AM
Versions 1.0.71 / 1.0.72 being rolled out for Android.
Non-beta version (1.0.71): see also 1.0.70 changes above
Fixed stuck media library indexing bug after quitting by repeated-back-button
Fixed some more picture resizing quality issues

Peter
May 22nd, 2017, 08:04 AM
Version 1.0.74 being posted.

This update is for Android beta testers only. If you're affected by bugs in the current Android public build (1.0.71), please give me a should and I'll add you to the beta program.

Changes: Android: Fixed missing playback=>browse screen transition when using ... commands in the playback screen
Android: Greatly improved image loading performance
Android: Auto detected internal/external storage folders are back in the main page, opt-out.
Android: .nomedia folder exclusion is now opt-out.
Android: Improved performance of default audio output mode (AudioTrack) on Lollipop and newer.
Android: Notification appearance tweaks
Android: Fixed missing playback resume after a phone call.
Android: Experimental performance fixes with modern folder picker vs media library. Please test media library behaviors with modern folder picker again.
All: Folder browsing tweaks, non audio files (if enabled) shown in a separate group
All: UPnP-streaming of Opus files from foo_upnp now works.
All: UPnP discovery tweaks, server list should popuplate much quicker now.

Peter
May 24th, 2017, 12:22 PM
Version 1.0.76 - again beta-only being rolled out for Android and iOS.

Changes: Android: Fixed silly but amusing bug in audio focus handling, regaining audio focus no longer starts playback when it should not
Android: File type registration improvements - should now appear as available default player on modern Android versions
Android: Added menu button handling on playback screen
All: Fixed UPnP browsing regression crash
All: Changed the way UPnP content list retrieval works, hopefully for better compatibility with specific servers
All: Fixed "style" metadata field not being read (need to reindex library to take effect)
All: Track number field handling fixes

Peter
May 24th, 2017, 02:27 PM
There seems to be a cockup with track number handling changes in today's beta.

Shown track numbers may be wrong, and the deduplication routine (enabled by default) operates on incorrect data effectively hiding tracks in affected albums.

To get all your tracks showing again - but with possibly wrong tracknumbers - disable hiding duplicate tracks in advanced settings.

This will be fixed shortly.

Update: another build (same version number) successfully pushed to both stores.

Peter
May 25th, 2017, 10:29 AM
Beta 1.0.76 for Windows is in processing as well, with up to date fixes.

Peter
May 26th, 2017, 07:41 AM
Version 1.0.78 for Android will be available shortly.

Changes: Made ourselves recognized by the Android system as a music player, so starting 'play' button on your headset should start fb2k now
Further fixes to external storage handling.
Use of 'old folder picker' should not ever be needed again. All slow-browsing cases should now be fixed - unless accessing folders that cannot be accessed with the old folder picker at all.
Added an option not to hide files/folders with names starting with a dot.
Fixed horrible bug with Unicode in search queries.
Made files without an 'album' tag possible to locate when browsing by genre.
Fixed text truncation issues in skin rendering.

Peter
May 31st, 2017, 04:53 AM
Versions 1.0.79/1.0.80 - public and beta are being posted for Android.

Changes: Fixed album count calculation glitch.
Fixed random crashing on Asus FonePad, possibly other x86 devices too.
Fixed FTP being inaccessible on some devices when the system is giving us nonsensical file modification times.

Peter
May 31st, 2017, 06:35 AM
iOS public+beta update in progress as well.

Peter
June 29th, 2017, 01:02 PM
Beta version 1.0.82 being prepared for Android and iOS.

Changes: All: Prevented playback restart when reordering inactive DSPs
All: Made FTP server startup failures shown properly - now stays "off" if so
All: UPnP discovery and browsing tweaks
All: Fixed some "advanced search" fields not being picked by database - folder add/remove cycle needed.
All: Improved auto "hide duplicate tracks" feature
All: Cleaned up handling of play/pause/fastforward/rewind buttons
All: Fixed wrong-track-played-from-search
All: Improved downloader behaviors when dealing with uncommon filename characters.
All: Added an advanced settings option to disable monitoring of music folders for changes.
All: Added an advanced settings option to disable splitting of artist names by "feat." etc.
All: Fixed crash when toggling shuffle/repeat when stopped.
Android: Many workarounds for FiiO X5 3gen firmware bugs.
Android: Added "share this folder only" mode in FTP server.
Android: Fixed wrong track duration info passed to MediaSession.
Android: Reworked folder picking again - the old (efficient) folder picker is shown by default again, with modern one as fallback. Modern picker used in contexts where write access is essential.
Android: Implemented missing volume control with OpenSL output.
Android: Many cosmetic tweaks.
iOS: Fixed extreme scrolling lag in FTP folders

Peter
July 11th, 2017, 04:43 AM
Beta version 1.0.84 for Android and iOS is being posted.

Changes: Android: Added experimental Android TV support
Android: Improved notification appearance, on Android 7.x in particular
Android: Menu button for playback screen menu works again
Android: Prevented certain playback control key events from being registered twice
Android: Fixed MediaSession interop bugs - better interop with Android Autio / AnyAutoAudio, bluetooth speakers, etc.
All: Right-to-left language display fixes
All: Various crash bugs fixed

Peter
July 14th, 2017, 05:57 AM
Version 1.0.83 (public) for Android is being rolled out. Same change log as 1.0.84.

Peter
July 14th, 2017, 08:16 AM
Now, Windows....
I see the MS store version is a total mess, last update got rejected (missing privacy policy URL) and we did not notice until just now.

I am scratching the separate beta line for now. Lite version gets full beta features from now on.
Their store is a great <censored> to work with, and the dev chain sucks, insanely slow rebuilds.

At least the Win Phone 8.1 version stays (and gets updated if I get them to accept new package, meh).

I've been trying to build and post the Windows version for the last 3 hours, without much success, unless lines of rants and MS jokes on IRC are the measure of success.

Peter
July 15th, 2017, 02:43 PM
1.0.83 for Windows pulled due to apparent regressions. Currently the downloads are unavailable to prevent existing users from getting a bugged build. We'll be back shortly when I've tested everything properly.

Peter
July 16th, 2017, 12:27 PM
1.0.85 for Windows has been submitted and is currently awaiting certification.

Skins now *do* load on Windows Phone 8.1.
Cycling skins no longer leaves leftover bitmaps from the previous skin in active pages.
foobar2000 private music folder is indexed again like it should.

Peter
July 21st, 2017, 09:19 AM
Windows Phone 8.1 package has been updated, regression with skin picker not working is now gone.

Version 1.0.86 (beta) for Android has been posted. Various crashes reported via Google Play have been addressed.


Edit: For now Android betas are arm64 and armv7a only, no old ARM or x86 as practically nobody uses those.

Peter
July 25th, 2017, 07:42 AM
Well it's time for some Windows development rants.

I got fb2k running in Windows Phone 8.1 emulator the last week. Yes, JUST LAST WEEK, after two years of development.
Initially I presumed the emulator was broken as I could not come up with a way to copy music to the emulated device and there was no apparent network connectivity.
As it turns out, Windows Phone emulator comes with a Special Snowflake edition of WinSock stack, their select() fails on empty but not null fd_set, effectively making all of my async network code unusable.
Now that I do not have to rely on ridiculously bugged Windows Phone 8.1 on-device debugging, I got some actual work done, added missing features such as add-any-folder in Media Library settings.

Next subject, updating the Windows 10 app to new background playback semantics introduced in 1607. According to the friendly github page with samples, all you have to do is flip the flag and all apps playing audio magically gain the privilege of running indefinitely in background, iOS style, right?
HAHA. WRONG.
The github page (https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/BackgroundMediaPlayback) contains harmful misinformation. If you do exactly what they tell you and nothing more, you end with an app that suspends playback when minimized. Initializing System Media Transport Controls appears to be mandatory in order to continue running. Cue rant about how it's hard to verify if your SMTC calls are coming thru over Remote Desktop, but OK, eventually got there.
The final insult is, if you run the goddamn app with debugger attached, background music playback doesn't prevent device sleep! Locking MS Surface screen using the button suspends the app. Wasted good part of my work day trying to work around it, when I finally realized that the same app works correctly if there's no debugger attached.

At this point I'm trying to nail the remaining issues with the Windows port and then I intend to leave it as-is, only fix reported bugs but not add new features. And reallocate my resources to other ports. (http://www.foobar2000.org/temp/macbar.png)

Peter
July 26th, 2017, 09:48 AM
Follow up rant.

The Windows Phone/Universal port of fb2k mobile is working pretty decently now - except for lockscreen controls ("Universal Volume Control") on Windows Phone 10 (Lumia 640XL). The same thing works fine on my MS Surface.
Apparently the only way to get SystemMediaTransportControls API to do anything useful on a phone is to have a MediaPlayer object playing something. The sample app (https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/SystemMediaTransportControls) works only if its MediaPlayer object is doing something; otherwise calls to SMTC are ignored.

I am pretty sure that nobody at Microsoft ever attempted writing a proper custom ( = own decoders + XAudio/WASAPI output ) music player app for WinRT/UWP/whatever-they-call-it-now. Or perhaps they did but ran away screaming after having uncovered an asston of bugs preventing things from working properly.

Peter
July 27th, 2017, 08:05 AM
Ver 1.0.87 for Android has been posted.

"Lite" mode is gone, full features are now enabled in non beta builds.

There have been complaints about the last update being unable to access SD cards and such. This is a side effect of upgrading to the latest Android SDK on my end - however I did not observe such loss of privileges on any of my devices.
The new version now checks for mass storage access permissions on startup and fires a prompt if necessary.


Edit: iOS 1.0.87 update in progress as well. Minor fixes + enabled full features in the public build.

Peter
July 31st, 2017, 03:48 AM
Starting from the next update, separate beta and public builds are gone entirely on all platforms - there will be no special indication of running a beta build.

For the benefit of all our users, the beta testers will get each new build before everyone else does - and once the build was proven worthy by the beta testers, it will be pushed to everyone else.

This way, the chance of everyone getting a build with severe regressions will be minimal - as most people have no way to revert to an older version.

Peter
August 1st, 2017, 09:39 AM
Version 1.0.88 has been made available to Android beta testers.
Changes: Fixed internet radio track titles not working regression
Fixed various crash bugs reported thru Google Play, thanks to everyone who did submit diagnostic data

Peter
August 1st, 2017, 03:19 PM
1.0.88 for all platforms will be landing on your devices shortly.

Windows version fixes a whole lot of bugs in particular, and adds a few new features (better system file picker integration).

Peter
August 4th, 2017, 07:39 AM
1.0.88 for Android is in full rollout - anybody checking for updates will get it now.

Special thanks to everybody who contributed crash telemetry. I can already see that all recurring crashbugs from the previous versions are gone. The 1.0.88 crash report list is still blank after 28K installs - now that's a pretty sight I've been long waiting for. I'll do my best to keep it this way from now on, future updates that add new features will undergo a longer beta process.

Peter
August 7th, 2017, 08:54 AM
1.0.89 for Android in beta.
1.0.89 for Windows update submission in progress.

Windows 10 seekbar stutter is fixed.
A quite nasty bug in media library has been fixed - it would result in unnecessary file info reads when just checking for changed files on some configurations. This mainly affected Windows Phone and Android with SAF/modern-folder-picker folders in library. iOS port is not affected. Media Library indexing on affected configurations will be now much faster.
Additionally, some media library indexing operations now run in multiple threads, which gives a nice speed boost on folders that were slow to index before (mainly Android SAF).

Android SAF/modern-file-picker situation still sucks, but it will get slightly less horrible now.

Peter
August 13th, 2017, 11:15 AM
1.0.90 for Android in beta ( stable channel still on 1.0.88 )

Changes: Various visual glitches fixed
Fixed various rare crash bugs
Fixed missing tap+hold context menu on album headers

Peter
August 30th, 2017, 05:50 AM
1.0.92 in beta for iOS and Android.

Changes:
All: Fixed buggy behavior after reordering playlist items.
Android: Prettier no-song notification


I've started work on a major 1.1 update with new features, including: Drag-reordering on Android
Better Android O integration
Equalizer
However, I'm afraid that it's time to say goodbye to Android older than 4.0 and Windows Phone 8.1. I do not plan to make foobar2000 mobile 1.1 series available for these platforms. It's probably better for the few people still using them this way - you will stick with stable and safe versions instead of receiving updates that were not tested properly on your specific device type.
I'm not entirely discontinuing support for these platforms, but any upcoming updates for them will be bug fixes of the foobar2000 mobile 1.0.x series.

Peter
August 30th, 2017, 07:40 AM
I've just created a section of the official site with standalone Android APK downloads:
https://www.foobar2000.org/apk

Peter
September 4th, 2017, 07:12 AM
1.0.93 in beta for iOS and Android.

Fixed media library regression from 1.0.89, causing - guess what - unnecessary file access which was supposed to get fixed.

iOS non-beta is still at 1.0.88 so not even affected by this.

Windows specific issues are being investigated.

Peter
September 5th, 2017, 03:43 AM
Another day, another build.

1.0.94 is being rolled out for all platforms, addressing high Media Library CPU usage bug.

Note that only beta testers get all these daily builds. Public update happens when a build has been in beta for a few days without apparent serious issues.


A special announcement
foobar2000 mobile Android beta access is now open for everybody.
If you wish to start receive bleeding edge builds, just sign up here - https://foobar2000.com/test-android
You can opt out any time if a beta version is giving you trouble.
Enjoy.

Peter
September 6th, 2017, 04:19 AM
Windows Phone 8.1 status update
I realize that complaining about Windows Phone 8.1 issues like barking up a dead tree, but:
I just found out how Windows Store is distributing old and broken 1.0.85 to Windows Phone 8.1 users. This is extra bad, 1.0.85 was not sufficiently tested by me prior to publishing, shipped with major regressions and was pulled from the store by me next day after it went live.
I posted multiple updates after that. And then posted 1.0.94 yesterday. They say 1.0.94 package is being distributed, but that's not what they actually do.
It would appear that Windows Phone 8.1 port is dead - I have latest & greatest code compiling for it but I cannot distribute it because the store does not work. Sucks because I was hoping end support for this platform leaving a stable and bug-free build for those using it.
This is not the first time they reject a build for idiotic reasons without me noticing - only this time they also lie about it and claim that the new one is live.

To summarize-
Installing foobar2000 mobile from Windows Phone Store may give you package that is outdated and broken. A newer build exists but cannot be published properly for reasons unknown.


EDIT
Not everyone gets the old version apparently according to other users. Also, right now one of my devices gets the broken package while another gets the correct one, so there's hope yet.
Either way, Windows Mobile (both 8.1 and 10) development is an endless time sink, the toolchain and store website are bad even by Android standards, and the platform has even less users even than iOS.

Peter
December 23rd, 2017, 05:32 AM
Well long time no update, and I did not manage to implement everything that I had planned for version 1.1 yet, but the development of foobar2000 mobile isn't dead, just other things have been taking priority over it.

Version 1.1 beta for Android and iOS are being prepared. However iOS one might take a while to get thru and their review system will be offline over the holidays.
1.1 changes so far: All: Added Equalizer DSP
All: Up to date with latest foobar2000 desktop decoder codebase
All: Updated DUMB module decoder to latest
All: Rewritten media server browser, now integrated with user-specified server management, removed now obsolete media servers settings page
iOS: New way of flipping between playback / browse screens.
Android: Required system version is now Android 4.0 (API 14)
Android: Implemented drag&drop reordering in playlists and DSP manager
Android: More FiiO device compatibility hacks

Peter
March 21st, 2018, 08:34 AM
Version 1.1.8 - beta only for now - is being published for Android and iOS.

Important changes:
Reworked Media Library - will need to rescan your music on first run.
Added the ability to put remote resources - such as FTP folders - in media library.
Can now rescan individual library folders on demand; remote folders not rescanned unless explicitly requested.
Faster media indexing - multiple folders will be indexed concurrently.
FTP client and server bug fixes.

In other news-

Minimalist foobar2000 for mac, based on foobar2000 mobile codebase:
https://www.foobar2000.org/mac

foobar2000 for Android beta access is public and open to everyone, not just backers:
https://www.foobar2000.org/test-android

Peter
March 22nd, 2018, 10:49 AM
Another day, another beta-
Version 1.1.9 corrects HTTP client cockup from 1.1.8.

The new 1.1 series can experimentally read folder contents from HTTP index.html ( and WebDAV ) in Media Library. Feel free to toy with it and report your findings, just don't expect it to fully work yet. The folder path must end with a slash for foobar2000 to recognize a HTTP URL as a folder.


I don't know WTF is wrong with Google Play, normally the updates were instant to process, now iOS people are on 1.1.8 and will be on 1.1.9 shortly while even my own Android devices still get 1.1.5 - even though according to the dashboard 1.1.5 is no longer being served.

Edit: Well well, 1.1.9 confirmed available from Google Play now, happy testing.

Peter
March 29th, 2018, 08:13 AM
1.1.10 beta going up for iOS & Android.
Changes: iOS: FTP server page now prevents device sleep properly.
Playlist manipulation performance and bug fixes.
Better feedback when failing to play a DRM protected WMA file.
FTP/HTTP networking fixes.

Peter
March 30th, 2018, 05:45 AM
Experimental feature in 1.1 series that you might want to try:
Loading of FPL playlists produced by desktop foobar2000 - put FPL playlists in a playlists folder indexed by the media library.
While the referenced file paths in the playlists obviously don't work on a mobile device, foobar2000 mobile will try to locate songs with matching metadata in your music library.

Peter
April 4th, 2018, 09:00 AM
Version 1.1.11 beta for Android only is being published.
Changes: Fixed erratic behavior of internal volume control
Fixed regressions in the Media Servers page, long tapping items works again
Cosmetic fixes

Peter
April 5th, 2018, 03:39 AM
Version 1.1.12 for Android has been posted, correcting a 1.1.11 cockup causing no output if the volume slider was at max.

Peter
April 11th, 2018, 02:21 PM
Version 1.1.13 (beta) for Android has been posted. Various FTP compatibility issues have been fixed.

Peter
May 16th, 2018, 03:20 AM
Version 1.1.15 (beta) is being posted for Android and iOS. Changes: More FTP compatibility fixes Fixed lockup when reading specific SPC files iOS: Fixed longtap context menu bugs

Peter
May 24th, 2018, 04:35 AM
Version 1.1.16 (beta) is being posted for Android and iOS.
This version is a release candidate, if all goes well it will be made available to everyone in a couple of days.

Changes: Media Servers page bug fixes

And before anyone asks, the Windows 10 port is still alive, just not updated due to relatively low popularity. I'll look into releasing version 1.1 for Windows 10 at some point after I'm done with the other ports.

Peter
June 6th, 2018, 05:47 AM
1.1.16 has been promoted from beta to stable. Thanks to everyone who beta-tested it.

Android users should be getting 1.1.16 already.
iOS version is in review and should be available shortly.

Windows 10 version refresh is being worked on.

Edit: The Windows 10 version is on hold again... Latest and greatest Visual Studio fails to compile our codebase with an internal compiler error.

Peter
June 8th, 2018, 08:43 AM
Windows 10 status update

New build is in internal testing and will be hopefully made available to everyone next week.

Peter
June 13th, 2018, 02:18 PM
Version 1.1.17 is being rolled out for all platforms - in beta-first-stable-later fashion.
Changes: Fixed a Media Library regression resulting in missing cover art [ details (http://forum.foobar2000.com/forum/showthread.php?1047-no-cover-art-issue-iOs-ver-1-1-16) ]
Fixed various operations resulting in rescanning of all Media Library folders. These now only rescan the affected folder.
Android: Can add folders to Media Library using system folder picker again
Improved FTP client compatibility with certain devices [ details (http://forum.foobar2000.com/forum/showthread.php?1049-Problems-with-FTP-server-of-Vodafone-Station-Revolution) ]

Android beta testers can get it already. If you want to be the first to get new iOS version updates, send me your Apple ID.

Peter
October 8th, 2018, 05:12 AM
iOS beta testing is now open to everyone. You can now sign up automatically, without having to submit your Apple ID to me in order to become a tester.

https://foobar2000.com/test-ios

Version 1.1.21 for iOS is already available to beta testers and will be available to everyone shortly. It fixes incompatibility between Equalizer page and iOS 8.x (possibly other old versions).

Peter
October 31st, 2018, 07:23 AM
Version 1.1.22 being posted for iOS+Android - beta first, stable soon if everything checks out.

Changes: Fixed bugs related to renaming folders.
Android: Fixed a crash bug.
Android: Fixed TuneFUSION compatibility issues with Android SD card filesystem.

Peter
February 28th, 2019, 07:03 AM
There has been a shift in development priorities in recent months; Android having the most users has received more attention. The latest beta version of foobar2000 mobile now implements a variety of Android home screen widgets.

Also, standalone APK downloads site has just been updated to serve the latest build:
https://foobar2000.org/apk