Version 6.1.13 Build 3978 (2019-09-04) [-] Mix Editor: Assertion error when editing Multi Track Container content [+] DB: Ability to search within a range of durations, e.g. "3:10+20" (everything between 190 and 210 seconds) [-] Album art always read from original location, not using cache files [-] DB: Export files: Files missing and possible "out of bounds" error [+] Remote control: Support for setting TCP read timeout through remote.ini [*] Adjusted server addresses for license retrieval and bug reporting Version 6.1.12 Build 3972 (2019-06-19) [+] Background scripts: Added OnCartwallActivePageChange [*] DB: Stations are sorted alphabetically (can be disabled in conn. settings) [*] DB: Scheduler: Container properties kept during region mapping [*] DB: GSelector import adjusted to latest format [-] Properties dialog displayed twice when editing container content [-] DB: "Subplaylist" template items not loading data if station is left empty [+] GSelector import: Support for cue markers [+] DB: New importer: GSelector Link XML [*] Zillenbiller import: Added support for additional line formats [*] DB: Improved error handling for regionalized ad import from external source [+] New "Simulation mode" feature: Play silence instead of actual audio; used to check programming/scheduling when the actual audio files are unavailable [-] Possible division by zero in waveform drawing [*] System log: Additional debug output for fixed time items processing [+] Playlist: Ability to specify item types in GUI.ini which trigger an additional delete confirmation dialog [-] Logging: Invalid stop times and durations reported for container content [*] DB: All possible ad blocks offered for selection in template editor [*] Events next execution updates automatically when internal clock is adjusted [+] DB: Scheduler: Container properties preserved during region mapping [+] Network Sync: Added Bind IP option for UDP broadcast [-] Events: Auto/assist/on air/off air flags not restored correctly [+] New command: PLAYLIST x CURSOR CURRENT (scrolls to currently playing item) Version 6.1.11 Build 3958 (2019-04-24) [+] New command: PLAYLIST x HOOKSTOCARTWALL [-] CARTWALL ALL CLOSE gives "List index out of bounds" error [-] Playlist: "Timing" disappears from context menu after multi select [*] PLAYLIST x MOVE commands will scroll so that selected item stays visible [+] New command: PLAYLIST x MOVE NEXT [+] Encoder: New option "Line input is high priority" (will mute player/mic while line is active) [*] DB: Title separation is now case-insensitive [-] DB: Title separation not calculated correctly in some cases [+] New command: CARTWALL LOAD PAGE [+] New command: CARTWALL LOAD PRESET [-] DBServer: Incorrect handling of non-ASCII UTF-8 characters in search etc. [-] DB Auto Importer: Ignoring and not loading metadata from file types provided by BASS plugins [+] DB: Hour templates: Support for cross-station references, hour offset and region mapping in all "subplaylist" template items [+] Encoder: Added Player Input 4 [+] "Cartwall Page" playlist items can now be edited in Management licenses [+] New ember_slim.dll with support for keepalive requests [+] Initial adjustment of internal clock can be set in mAirList.ini (TimeOffset) Version 6.1.10 Build 3944 (2019-03-01) [*] Default read timeout of 30 seconds for FTP connections [-] Fixed folder selection dialog for non-standard Desktop locations [+] DB: Generate menu: New "This Playlist..." command with selection dialog [*] DB: Template submenu in Generate menu can be turned off to work around out of memory problem with large number of templates [+] New commands: "CARTWALL SELECTED ..." affect all selected carts on page [*] DB: "Export file" will suggest correct file extension [-] Outdated files in cache not detected correctly [*] DB: Import files: Adjusted position of Start/Stop button [+] Config: Added "Filename format for file export" setting [+] Item option: "Automatically redo Auto Cue every time the file is opened" [+] Audition CSV cue sheets will be read automatically on file import (must be named file.mp3.csv etc.) [-] Serial port remote: Possible delayed processing of received commands [*] iTunes: Automatic Unicode decomposition for filenames with umlauts [+] Added CARTWALL SELECTED EXTRAPFL commands [-] Scripting: OnDHDFaderLevel is never executed [+] M3U Import: Support for URL-encoded filenames (M3U created by VLC 3.x) [-] DB: Wrong results returned when region containers are read from database [-] File Import: File tags ignored after .pfmd import Version 6.1.9 Build 3929 (2019-01-18) [+] BASS CPU Load displayed on Audio Settings -> General -> Info tab [+] DB: Generate playlist action: Ability to write debug log [-] Possible range check error when editing rows in configuration tables/trees [+] Events: Choose whether to run only in ON AIR or OFF AIR or both modes [*] Audio settings: Async file reading enabled by default for new installations [-] Cartwall: Not creating copy of items during drag&drop [-] Cue Editor: Artist/title swapped in Track Cue Marker edit dialog [+] Cue Editor: Ability to import cue markers from Adobe Audition CSV files [*] DB: Improved loading times of containers and embedded playlist from library [*] DBServer: Detection of stale cached connections Version 6.1.8 Build 3921 (2018-12-13) [+] Logging: %T accepts an optional offset (in seconds): %T{Format+Offset} or %T{Format-Offset} [*] DB: Templates: Import/export of assignment will only affect current tab [-] DB: Hour/date retrictions not handled correctly in multi-station environment [-] Cartwall: Confirmation displayed multiple times when closing single page [-] Ogg/FLAC: "ISRC" tag imported as "Organization", should be "ISRC" [*] Item properties: Increased dropdown count of attribute selection box Version 6.1.7 Build 3917 (2018-11-26) [-] Possible Access violation during TPI import for non-mAirListDB databases [*] File Manager state included in bug reports [+] Scripting: Added HTTPPutRaw [*] DHD: Improved handling of cartwall on/off events [-] Logging: Start time information missing from "next" items [+] Cartwall: New option: Auto-reload Favorites [-] Mix Editor does not release audio files when closing [-] Region playout: First region left out from playback [*] DB: CSV export strictly quotes all fields [-] Directory Browser: Slow performance when normaization is turned on in file import options [-] DB: Template assignment not saved when imported from file Version 6.1.6 Build 3902 (2018-10-10) [*] Rolled back bass.dll to 2.4.12.1, fixing a possible freeze problem in automation and DirectSound stutter issues [+] Scripting: Added procedure FTPGet(iHost: string; iPort: integer; iUser, iPassword, iFilename, iLocalFile: string) Version 6.1.5 Build 3898 (2018-09-21) [*] DB: More precise enforcement of station restrictions in permissions [+] Remote control: Added support for DHD RM2200D [-] Cartwall: High CPU load for setups with large number of players [+] DB: Ability to specify extra connection options during "Clone Database" [*] Scripting: Extra "iExtraOptions" parameter for CloneDatabase [-] Possible freeze related to collection of items for "next" logging ("+" syntax; even if not actually used in any log interface) [*] Metadata import: Correct handling of WAV files with both INFO and DISP chunk [*] DB: Improved performance of file scanning in Synchronize dialog [+] Database playlist actions: New option "remove empty advertising containers" [-] Mix Editor: Possible GUI freeze when closing while playing [-] License: Possible Range Check Error when using FTDI dongle activation [*] DB: Library: Added "Comment" column [*] Changed compiler settings to produce more detailed bug reports [+] Playlist actions: Ability to specfiy the input file format [+] Playlist actions: New option "Only load current hour" [-] Waveform: Range check error when amplification set to ridiculous high value [*] Amplification/normalization result considered for AutoCue thresholds Version 6.1.4 Build 3889 (2018-08-24) [-] Database browser: Icons missing when dragging into playlist [-] DB: Fixed tab scrolling problem when switching between station groups [*] Ember+: Added workaround for non-unique node IDs due to broken provider [-] Playlist: "Expand containers by default" would not always work [+] Skin: Added [MixEditorToolbar] section [*] Encoder: Fetching listener data will now work even if you accidentally entered a URL ("http://...") instead of a plain hostname [*] AutoCue: Default threshold for FadeOut changed to -20 for new installations [-] DB: Scripting: AddItemToFolder method raises Invalid Operation error [-] DB: Scripting: Readded DeleteAllItemsFromFolder method [-] Playlist: Skin: Added new "TitlePadding" setting to work around problems with fonts not properly reporting their height [-] Status Display screen object: Caption for "ON" not restored from config [+] MusicMaster Nexus: Added bindings for Comment and End Type [*] Extended Button screen object: Will trigger on mouse down already [+] Config: Misc Settings: Maximum number of database search results (previously undocumented setting) [+] New command: BROWSER RELOAD [+] File import: Support for reading cue markers from SPL-style APE tags [+] MusicMaster Nexus: Added bindings for Item Type [*] DB: Extra warning message before schema upgrade [+] Added TCP and UDP logging interfaces (in TCPRemote module) [+] Added support for importing .tlf files (PlaylistImportPro module) [*] Serial port: Transmission functions moved into background script, working around an issue where data was not send promptly [-] TPI: "List index out of bounds" error when seconds are omitted in start time [-] Encoder: Virtual record device should be multi-channel when regionalized [*] Database Search browser: Improved performance [-] DB: SQL error when "moving" an item to a folder it is already contained in [*] DB: MySQL/MariaDB backend: Added compatibility with utf8mb4 collation [*] DB: PostgreSQL: Improved performance for Advanced Search and browsing the Unsorted folder [*] Normalization: Corrected handling of mono files for R128 [*] Playlist: Stopping a player will also stop all audio sources possibly playing in the background on the same sound card channel (as a result of mixing in AUTO mode) [-] DBServer: Possible "You have no write permission for this station" when importing or deleting items [*] Updated bass.dll to 2.4.13.25 [*] Peakmeter: Added protection against invalid sample values Version 6.1.3 Build 3870 (2018-06-08) [-] Access Violation when trying to save in .mlpe format [+] New commands: PLAYLIST x LINK, UNLINK, LINK/UNLINK [*] Metadata import: Ignore empty BEXT tags [-] DBClient: Error when deleting files through remote connection [-] DBServer: Better error logging [-] Playlist default files always loaded into first player [-] Fixed slow loading of long (e.g. 24 hours) playlists [+] Scripting: Added function GetNextItems(iItem: IPlaylistItem; iIncludeItemTypes: TPlaylistItemTypes): IPlaylist; [-] Tweaked recording functions to workaround possible dropouts [-] Mix Editor: Some skin.ini settings not applied correctly [*] Playlist will detect changes in already prebuffered container items, and redo the prebuffering with the new content [+] MP4: Import "Disc" tag [+] HTTP client: Added full support for SNI (multiple HTTPS servers on same IP) [+] Serial port: Ability to enable hardware flow control through serial.ini Version 6.1.2 Build 3858 (2018-05-15) [*] "Normalize" button in Properties and Mass Edit dialog uses new 32-bit analyze functions (same as being used for the Analyze button) [*] ebur128.dll updated to v1.2.4 [-] DB: Reverse lookup of files not working for MySQL backend [+] Encoder has a third Player Input now with a separate DSP chain [-] VT: Access Violation error after recording a voice track before or after a non-playable item (e.g. Start Of Hour marker) [+] Cartwall: Added cart selection and related commands Version 6.1.1 Build 3852 (2018-04-30) [-] File import: Native file tags are read even if MMD file is present, possibly overwriting data from the MMD file [-] File import: *.cue files were not loaded correctly [+] File import: New option: Automatically create MMD files for new files [-] DB: Scheduler: Parts in square brackets [] are ignored when calculating title separation, allows for different versions of same song to be separated correctly [-] ReplayGain not imported from Vorbis Comments (FLAC/OGG) [-] Config: Encoder DSPs: Double items in Add menu after switching tabs [-] Playback: Possible deadlock when using linked items in AUTO mode [+] Remote control: Added CARTWALL ALL ... commands [+] Remote control: Added SLEEP command [+] Support for opening *.edt playlist files (WinMedia) [+] Regionalizaion: Support for region remapping (experimental) [+] DB: Support for station groups (use backslash as delimiter in station name); stations with the same group name will be arranged as tabs in the main window and also advertising configuration [-] DB: Cloning into MSSQL database may fail with "data too large" error [-] DB: Transitions sub-menu missing from "No music" item in Generate menu; "Argument out of range" error when clicking [-] Mix Editor: Assertion failure when editing Multitrack Container content [-] DB: MSSQL backend: SQL error when importing items by External ID [-] DB: SQL error when deleting a template that is still used in assignment grid [-] DB: Possible error message when editing items in "Everything" view Version 6.1.0 Build 3842 (2018-03-20) [-] Open playlist: Incorrect import filter/file type being used [+] New playlist file format: .mlpj (JSON Playlist) [-] Players not fading out in AUTO mode [+] Mix Editor: Background color can be set in skin: [MixEditor] BackgroundColor [+] DB: Hour templates: Ability to specify a postprocessing script, will be called after generation of each hour, with CurrentPlaylist set to the generated playlist [+] Ability to customize fields for GSelector import through mAirList.ini [+] Stream address not set correctly after selecting it from list [+] Advanced REST server with scripting support (background script functions OnRESTRequest, OnRawRESTRequest). Some slight changes in the JSON output for some endpoints. [+] Scripting: Added DHD remote hooks for background scripts [*] Scripting: Suppress error when MidiOutOpen is called twice [-] Scripting: Fixed DBToScale and ScaleToDB (now with Overhead parameter each) [-] DB: SQL error when cloning into MSSQL database [*] DB: Scheduler: Timing of transition items set according to music item [+] Nexus: New "Nexus Importer" application used to import files into MusicMaster database (requires NexusDatabase module) [+] Nexus: Support for Artist Keywords and Title Keywords fields [-] licensefolder command line switch ignored [-] Possible memory leak in GUI [+] New screen object: Countdown to next fixed time [+] Axia Livewire: New action "Set GPI" [*] MIDI: Improved exception handling [+] "Download File" action: Support for RSS/Atom feeds [+] MusicMaster Nexus Server database: regionalization support [-] DBClient: Several GUI functions disabled/unavailable [+] New screen object: Status Display [-] "Send e-mail" action: Default recipient not used [+] DB App: New search box, ability to switch between "search entire database" and "filter current view" modes [+] DB App: View menu: New option "Show items from subfolders" [+] DB App: New buttons "Double-clicking an item inserts it into playlist" and "Double-clicking an item inserts it into playout" (the latter only when DB windows opened from playout app) [+] Added commands to change position/size of screen objects in custom layout mode (LAYOUT SET, LAYOUT RESIZE, LAYOUT MOVE, ...) [*] Made basswma.dll optional to work around issues with the Stream Monitor. Download and copy to plugins\bass if you need WMA tag import or stream playback support. [+] DB: "Go to" dialog: Error check will also report underruns [+] DB: Minimum number of characters for search can be set in config (Misc -> Settings; previously undocumented feature) [+] DB: Playlist editor: Removed "Clear" button from toolbar (use Ctrl+A, Del) [+] DB: Playlist editor: Added "Delete" button (deletes selected items) [+] New import file format: Playlist Package (.mlpx) - XML of multiple .mlp [-] REST: Playback state information missing from /playlist//content JSON [+] Background scripts: Added procedure OnItemMetadata [-] Hook containers: Database metadata retrieval disabled for the "File Repository" items set in the config, avoiding a possible freeze during loading of database playlist. If you want to have metadata for these items, create an MMD file for them [-] Possible "Object locked not owned" error on startup [-] DB: MySQL backend: Slow library access [-] VT: FadeEnd marker should be removed for Item A after successful VT [-] Mix Editor: Undo/Redo/Cancel operations not always performed correctly Version 6.1-beta Build 3800 (2017-11-10) New features: [+] DB: Support for MusicMaster library sync and playlist import via Nexus API [+] New playlist item type: "Automatic Hook Container"; will automatically be filled with the next music items (number can be set in the Properties). There is also a new "Automatic Hook Container Marker" item that is used to determine the start of the collection of music items, e.g. at the beginning of the next hour. [+] DB: Hour templates: New element type "External items", can be used to schedule items that are not part of the DB library [+] DHD: New player option "Set channel label to item title" [+] DB: New "Text file (custom format)" library export [+] Playlist: Remembers opened playlist filename (again), save confirmation, new open/save commands in context menu [+] New Mix Editor screen object. Can be used to have a permanent Mix Editor in custom layouts. Can automatically follow the selection in the playlist. [+] Database Search Browser: Result limit can be set in GUI.ini, section [DatabaseSearch], Limit=. Only works with mAirListDB; requires server version 6.1 in case of DBClient/DBServer [+] DB: New "Manage Templates" dialog which combines the old "Manage Templates" and "Manage Template Assignments" dialog into a single window. [+] DB: New "Adjust Template Assigment" dialog can be used to make one-time changes to template assignment during scheduling [+] DB: Scheduler: Transition templates [+] Support for reading Radiohost-style tags from MP3 files [+] New GUI -> Item Colors config page, allows to set per-item-type colors that will work in main playlist, DB library and playlist etc., as an alternative to skin.ini Other changes: [*] Removed splash screen [*] Main menu: Moved "Run script" from the Open to the About menu [*] Redesigned file metadata import routines [*] Configuration app will warn you when playout is running [*] Links in ASSIST mode can now handle the condition where an item is linked from a player which is still in LOADING state [+] Shutdown password now also enforced for DBServer and DBImporter apps [+] Playout window remembers width of browser (in auto layout mode) [+] Mixdown: Samplerate can be adjusted