foobar2000 v1.3 upcoming changes
2013-07-25 12:35:15
The upcoming foobar2000 v1.3 release will address various performance problems with very large music libraries. Background: One of the key issues with foobar2000 metadb design is that it stores a complete copy of file's text metadata in its cache. This includes:misplaced cuesheets EAC logs lyrics epic novels misplaced base64 encoded pictures other weird stuff that people come up with .. which leads to:extreme memory usage slow startup and shutdown poor search performance To address the above issue, foobar2000 v1.3 metadb will selectively ignore specific metadata records read from the files - mainly data that does not need to be readily available for displaying in playlist, library viewers, etc. This will not affect daily use; properties dialog will still be able to show complete metadata by reading it from affected files directly. If your component needs to display such data - lyrics in particular - please change your code to fetch it from the file directly on-demand. Example:static bool getInfoFromFile ( metadb_handle_ptr inHandle , file_info & outInfo , abort_callback & abort ) { try { input_info_reader :: ptr reader ; input_entry :: g_open_for_info_read ( reader , NULL , inHandle -> get_path (), abort ); reader -> get_info ( inHandle -> get_subsong_index (), outInfo , abort ); return true ; } catch ( exception_aborted ) { throw ; } catch (...) { outInfo . reset (); return false ; } } Thank you for your attention.