"Technical" details

This page contains details describing some functions of streamWriter. Maybe it can also serve as a FAQ you can point to in the future.

Location of application data

Depending on the mode of operation, data is saved to different locations. If streamWriter is used in installed mode, application settings can be found in the registry (HKCU\Software\mistake.ws\streamWriter), application data like stations in the list or the list of saved tracks are saved into a file (%APPDATA%\streamWriter\streamwriter_data.dat). If streamWriter is used in portable mode, all settings are saved to the folder that contains streamwriter.exe - configuration usually saved to the registry will be saved to streamwriter_settings.ini, data will be saved to streamwriter_data.dat as in installed mode.

How lists work

If a track is ready to be saved, it will be checked if it is allowed to save this file, according to the selected list for the stream that is about to save the file. The corresponding list will be iterated for this check, while entries contained in the list are parsed differently from how they are shown to the user. Because this check is based on simple pattern-matching, every title in the list will be changed while parsing, for example "An artist - the song" will be parsed as "*an*artist*-*the*song*". The * is a wildcard for one or more characters, a ? can be used for a single character. If a title that already contains a wildcard gets added to a list, streamWriter does not add wildcards by itself as shown in the example. That means that the added title "Mexi?o" does not become "*mexi?o*" but "mexi?o" - all needed Wildcards, i.e. at the beginning and end of the title, need to be added manually.

How cutting works

How manual cutting works is described here. Automatic cutting follows these rules:

  • File must be ready to get saved
    The file is ready for being saved when enough data after the end of the song (these informtion is from the metadata at this moment) is available as buffer. This is the greater value from the buffer that should be appended if no silence could be found or the range that should be scanned for silence.
  • Searching for silence
    Now silence will be searched, the mentioned buffer from above is considered here. This should make cutting possible even if metadata does not match silence. The range as defined in the settings will now be searched for silence at the beginning and the end of the song. If silence was found, the saved file ranges from the end of the first found silence at the beginning of the song to the beginning of the first found silence at the end of the song.
  • Saving
    The file can be saved now. If silence was found at the beginning and at the end of the song, the file is considered being cut and saved according to found silence. If no silence could be found the song will be saved using the configured buffer (see here). In this case, the file must be cut manually.

Last edited by alex on 31.07.16 at 17:30