Jump to content

Foobar2000:LargeFieldsConfig-v2

From Hydrogenaudio Knowledgebase
Revision as of 17:44, 27 December 2025 by DEATH (talk | contribs) (Syntax)

Overview

LargeFieldsConfig feature allows you to fine-tune how foobar2000 caches information about your media. You can keep long meta values (ripping logs, lyrics) from being loaded into app memory, significantly reducing memory usage of foobar2000 if your large music library uses such tags, but hiding these fields from features such as search. Properties dialog will re-read complete tags before showing tags of affected files.

The feature is not accessible from foobar2000 itself - instead, a text file in foobar2000 profile contains relevant settings and can be edited manually; new settings will take effect on next startup. Also, any change will trigger automatic reload of tags for all your playlists and library on next foobar2000 startup.

A text file with default settings and an overview of this feature is created on first run of foobar2000 versions that support this, if it does not yet exist.

History

Original LargeFieldsConfig was introduced in foobar2000 v1.3 and worked until 1.6 series, dropped in 2.0.

LargeFieldsConfig-v2 was introduced in v2.26 preview 2025-12-27, mostly reusing existing technology from foobar2000 v1.x series, but with a new file format; also defaulting to blank config - no large fields dropped by default.

Syntax

LargeFieldsConfig-v2.txt consists of zero or more sections, each beginning with a limit= line, followed by one or more meta= or info= lines.

Lines beginning with # are treated as comments and ignored.

The limit line defines how many UTF-8 bytes per value are allowed for elements listed in the section. Length is unlimited if the value is missing ("limit=") or is not a number.

A meta line declares meta field name, such as artist, that above limit applies to; meta=* matches all fields not matched in sections prior to this one.

An info line declares tech info field name, such as bitrate, that above limit applies to; info=* matches all info fields not matched in sections prior to this one.

Sections are evaluated in order they appear in the file. For an example, if you use meta=* in the final section, it will apply to all fields not matched in other sections; but if you do so in the first section, meta= lines in following sections will have no effect.

Example

Below is a rough conversion of foobar2000 v1.x defaults to the new format:

# See: https://www.foobar2000.org/LargeFieldsConfig-v2

# Essential meta fields
limit=2000
meta=album
meta=album artist
meta=artist
meta=composer
meta=conductor
meta=date
meta=discnumber
meta=genre
meta=keywords
meta=performer
meta=producer
meta=style
meta=title
meta=totaldiscs
meta=totaltracks
meta=tracknumber

# Meta fields we never want
limit=0
meta=accurate rip
meta=aucdtect
meta=biography
meta=cuesheet
meta=eac logfile
meta=itunes_cddb_1
meta=itunmovi
meta=log
meta=logfile
meta=lyrics
meta=unsynced lyrics

# All info fields
limit=200
info=*

# All meta fields not listed in previous entries
limit=1000
meta=*