Environment Variables

Table of contents
  1. 1. Debugging
  2. 2. Turning features on/off
  3. 3. Other

There are a number of environment variables that can be set to control Songbird's behaviour in various ways. Primarily, these are useful for debugging, or for testing incomplete features. This page lists them (but is not yet comprehensive).

Debugging

 Name  Description  Notes
NSPR_LOG_FILE Specifies the file to be used by the NSPR logging system.  
NSPR_LOG_MODULES In debug builds (only) this enables log output from the NSPR logging system. Values are comma separated. Possible values include: all:5 for everything
GST_DEBUG In GStreamer builds (release OR debug), this can be used to turn on the GStreamer debug logging. It is a comma-separated list of category:level values, e.g. GST_DEBUG=alsasink:5,baseaudiosink:3  
XPCOM_MEM_LEAK_LOG Log memory leaks to a file (e.g., XPCOM_MEM_LEAK_LOG=leak.log).  
XPCOM_DEBUG_BREAK Specify action to take on debug breaks. Set to "warn" on Windows to avoid excessive alert boxes on Windows debug builds.  
SONGBIRD_SKIP_FIRST_RUN Set this to skip first-run wizard on debug builds. Setting it to a value of CSPerf will allow the first run wizard to pop but quickly dismiss it for use in cold start performance tests.  

 

Turning features on/off

 

 Name  Description  Notes
 SB_GST_ENABLE

Enables various levels of GStreamer support on MacOS and Win32 (if GStreamer is compiled in). Possible values are:

unset : 'minimal' GStreamer mode. GStreamer is used for FLAC files only.

"all": GStreamer is used for all formats that it can support

"none": GStreamer is turned off entirely

 Has no effect on linux.
SB_GST_SYSTEM This is used to enable use of the system GStreamer on linux. By default, the bundled GStreamer will be used instead. If this environment variable is set (to any value), the system one will be used instead. linux only
SB_GST_NO_SYSTEM

By default, songbird's bundled gstreamer will also load system-wide gstreamer plugins.

If this is set (to any value) only the bundled plugins will be used

Linux only.

Other

Name Description Notes
SB_TIMING_SERVICE_LOG This is used to send the timing service output to a specific file. If not set, the output is directed to the console. Can be any valid file path for the platform
SB_ENABLE_TESTS Enables the unit tests in release builds, or disables them in debug build. See Unit Tests  
SB_ENABLE_LIBRARY_PERF Enables perf tests in release builds or disable them in debug builds  
SB_PERF_LIBRARY Sets the database to use for the performance tests  
SB_PERF_RESULTS Output file to write performance stats to  
Tag page
You must login to post a comment.