Offline Sorter Change Log v4.7.1 (Last Updated 2/22/2023) Bug fixes: - Fixed problem with scan sorting methods invoked from the Perform Automatic Sorting dialog Offline Sorter Change Log v4.7.0 (Last Updated 1/25/2023) New Features: - Supports up to 702 units per channel - Units view and Waveform Inspection View can show pages of units, with Next and Previous buttons - Cross correlation view now can show a range of units, which can be set in the Properties dialog. By default it limits to showing 26 units - ISI View now has the same abilities to select the units to show as the Cross Correlation View, including a new Properties dialog, and can also show pages of units - The Sort Summary View has been limited to show a maximum of 8 units, overlaps analysis can handle a maximum of 26 units - While .plx and .nex files support the full number of units, other formats like .pl2 and .nev are limited to 255 units. A warning will be printed if there are more units than can be saved. - Better support for 4K screen resolutions. This now includes automatically detecting when a 4K screen is in use, so the Grid Column Width Multiplier option to manually specify a magnification factor for grid views has been removed - Printing from OFS now uses more of the page Enhancements: - Changes to the Neuroshare loader to allow it to load CED .smrx files through CED’s Neuroshare DLL - The native Blackrock loader can now handle version 3 files - Faster initial read of matlab files (when obtaining Matlab variable names) - Alphabetized some menus, Quick Batch and Key references for easier access - Export per-Waveform data can now be configured to export only the Unsorted waveforms Bug fixes: - Fixed problem loading large .MED and .NEV files - Fixed issue where re-calculating SNR would not update Channel Parameters table - When exporting channel/waveform/unit info to Matlab, automatically replace more characters in channel names to avoid illegal Matlab variable names - Fixed issues when loading Matlab spike files with too many units - Fix crash when dealing with very large numbers of tetrode spikes - Fixed problem with converting .plx files to tetrode when there are duplicated timestamps for the tetrode spikes - Fix problem with remembering the last data directory - Fixed problem where batch files could fail translating certain environment variables - Fixed issue where unit contours were not erased after mousewheel zooming on 3D Cluster View Offline Sorter Change Log v4.6.2 (Last Updated 04-09-2022) Bug Fixes: - Fixed regression in 4.6.1 where OFS would not start properly if a configuration file did not already exist (ie a fresh start) Offline Sorter Change Log v4.6.1 (Last Updated 03-28-2022) New Features: - The peak heights histogram in the Waveform Detection view is now binned according to the data present, instead of assuming that the peak values will cover the entire dynamic range. This is helpful when the data only covers a small fraction of the dynamic range. There are also new menu options to set a threshold at an on-screen location, and to rebuild the histogram with the currently-loaded continuous data. - Faster loading for Blackrock .nev files Bug Fixes: - Fixed issue where Export per-Waveform Data would not work if the specified output file did not already exist - Fixed problem with Sort Using Nex function if the timestamps in a channel don’t exactly match those in the corresponding .nex variable - Fixed problem with specifying L-Ratio or Isolation Distance as a cluster quality metric from batch files - Fixed problem with initial calculation of SNR when using dual thresholds or allowing overlapping waveforms - Fixed problem with timeline view range after loading spikes from Matlab - Fixed problem where failure to load a .ofss file from batch was not being reported Offline Sorter Change Log v4.6.0 (Last Updated 09-13-2021) New Features: - Added ability to Export to New .OMF if an .OMF file was loaded. This allows e.g. spike extraction performed on an .OMF file to be exported to an .OMF file with individual .pl2 files ‘underneath’ it, instead of to one large .pl2 file. The exported individual .pl2 files underneath the .OMF file have the same time boundaries as the original .pl2 files. Bug Fixes: - Fixed possible crash when using Valley Seeking or T-Dist E-M sorting on a channel with more waveforms than the sorting waveform limit - Fix issue when doing Save or Save As of modified Neuralynx files. Now an output directory is selected, and the directory must be empty and different from the input directory. - Raster view was not immediately updating when Time Segments were shown or un-shown. - Will no longer load more than 256 events and markers (total) from .nex or .nex5 files - Add more warnings when loading other-vendor files with excessively long waveforms or spikes with differing waveform lengths. - Prevented additional ‘SPK_’, ‘FILT_’ and ‘SPK_FILT_’ prefixes from being added to Source names when re-exporting filtered data and extracted spikes to .pl2 - Removing the FILT_ Source is now equivalent to turning off filtering for the continuous Source being filtered - Removing a Source that had filtering applied now also removes the FILT_ Source - Dissassociating a SPK Source from a filtered WB Source would cause the filtering to be reset on the WB Source - Disallow selecting a FILT_ Source when associating channels because it is too confusing (the association is actually to the un-filtered Source) - Removing any Source whose channels appear before spike channels will require resetting all spikes on all channels. - Showed another warning to be sure that the user is aware of this. - Operations on Sources (renaming, removing, associating) could not work correctly when OMF files were loaded, the relevant menu options are now disabled in that case. - Removed some confusing warning messages when associating/disassociating Sources - Fixed some situations that could go wrong if Excel was being left open between Export Channel/Waveform/Unit Data to Excel operations - Fixed bug that could affect typing in a new scroll range for the Timeline view - When showing both spikes and continuous data in the Timeline view, large zoom factors could cause spikes to be rendered down into the continuous data region - When importing spike data from Matlab, and error message is generated if the matlab variables are not double precision Offline Sorter Change Log v4.5.1 (Last Updated 04-21-2021) Bug Fixes: - Restored channel number that went missing from the first column in the Channel Map View - Fixed issues with displays not updating after toggling Enhanced PCA on/off, or doing interval invalidation on a channel - Greyed out more dialog controls based on the state of other controls - Fix issues when channel (or SIG) names are longer than 31 characters - Avoid errors caused by illegal Matlab variable names by improving the way in which Matlab variable names are generated within the Export Per functions - Fix bug in Cross Correlation view where it use stale data after changes to sorting in channels. - Allow exporting to .pl2 when multiple files are loaded - Events were not rebased properly for Neuralynx files with timestamp rebasing active - Fix issue with animation during scan sorting - When exporting unit/waveform/channel info to files from batch, always do all channels into a single file - Fix issue with CAR/CMR - Fix issue with writing PL2 files containing large numbers of continuous data samples per channel. - Add explicit error message for an attempt to load an unsupported file type via a batch file (.mat, .bin) - Guard against bad values in the .plx header date/time fields Offline Sorter Change Log v4.5.0 (Last Updated 01-23-2020) New Features: - New option the Neuralynx loader to re-base all timestamps to 0, by subtracting off the earliest timestamp encountered in any loaded Neuralynx data file - New option to specify a range of channels to process in functions that allowed processing by Source. E.g. Waveform Align now allows processing the current channel, all channels in a selected Source, or a specified range of spike channels. - Added a readout of the threshold sigmas to the Peak Heights Histogram - Added a Sort -> Sort Using .TXT File function that can read unit assignments from a text file and apply them to the current channel Improvements: - Refreshed the sample .ofb batch files - Leading spaces on .ofb lines are now ignored Bug Fixes: - Fixed bug in Enhanced PCA affecting only channels with fewer than 50 waveforms present - Fixed bug when applying .tpl files where waveform extraction was performed - Fixed .nex/.nex5 import of waveform variables with 0 waveforms that left the num pts per w/f value at 0. - Fixed bug in reading large (>4Gb) .nex5 files. - Fixed bug when waveform views were showing only Selected Unit, and a unit with 0 waveforms in it was selected - Fixed bug where filtering failed on Windows 7 systems where the CPU has the AVX-512 feature available - Fixed bug with Export as New PL2 when the original pl2 file was loaded with the “Create Separate Events for Strobed Codes” Data Import Option selected - Fixed bug where the filtered continuous source would not be created if a channel was not open when a filter was applied to an entire Source. - Fixed bug where the second threshold was not set properly when detecting all channels in a Source with dual thresholds - Disallowed saving over the same .nex or .nex5 file that is currently loaded - Fixed bug in reading large BlackRock files. Offline Sorter Change Log v4.4.2 (Last Updated 05-01-2019) New Features: - Can now remove spike and continuous Sources (and their associated Channels) from OFS via a right-click menu option on the Sources view. This is useful to strip out Sources that are not being used in an analysis from the data files - Can now associate and dis-associate spike and continuous channels via a right-click menu option on the Sources view - Can now rename spike and continuous Sources and optionally the channels that belong to that Source via a right-click menu option on the Sources view. The new Source and channel names will only be written to disk if an Export to .PL2 or .plx is done. - New Waveforms->Show Invalidated Waveforms that does the same thing as the “Invalid w/f” Show/Hide entry in the - Control Panel. Note that a hotkey can now be bound to this function. Bug Fixes: - Strobed events were not handled properly during Load Multiple Files - Undoing an Align Waveforms operation that shifted timestamps would not properly restore the original timestamps - Markers from Nex5 files were not being properly read if the marker values were stored as integers instead of strings - Fix bug in reading very large Nex5 files - Fix bug where extracting spikes with different number of samples per waveform on different channels within the same - Source was mistakenly allowed. Now after a warning, all spikes will be removed from all channels in the Source if an extraction with a different number of samples per waveforms is done. - Fix bug where threshold values for tetrode spikes could be written out incorrectly during Export to New .PLX Offline Sorter Change Log v4.4.1 (Last Updated 01-22-2019) New Features: - Improved support for 4K monitors; icons and pane title bars are now larger and easier to hit - New Waveforms->Invalidate Currently Selected Waveform menu item, which can be bound to a keystroke to conveniently invalidate single waveform Improvements: - The L-Ratio and Isolation Distance sort quality metrics can now be exported per-unit and per-channel. - Improved handling of very large continuous data files (>2G samples per channel), for the 64-bit version only - Offline Sorter can now be started in batch mode over remote desktop without issuing the warning about FBOs not being available - Offline Sorter running in batch mode will lower its process priority, to allow background sorting while acquiring data on the same machine - New batch command Set SuppressOutputSrc, which is like Set IgnoreSrc except it allows the Source to be processed but not written out to any output files. This is useful for example if you want to do filtering, thresholding, and sorting of a wideband Source (so it cannot be Ignored), but you don’t want to export the original wideband continuous data (it can be Suppressed). - As part of the 4K monitor support, can now make grid columns wider than usual by entering a multiplier, useful if using a larger font on a 4K monitor - New option to set the gains to use when importing NEX5 data files that store data as floats - Events in .plx files from multiple DI boards installed in MAP hardware are now differentiated Bug Fixes: - The Matlab importers were not releasing memory, causing Offline Sorter to bog down after use - Fix bug where clicking in threshold scan graph before data was loaded would crash - Fix bug with Save or Save As on trodal .pl2 files - Fix bug with exporting large (>2GB) .nex5 files - Fix bug with case-sensitivity in matching names of events specified in batch files Offline Sorter Change Log v4.4.0 (Last Updated 2/20/18) New Features: - T-Dist E-M automatic sorting now behaves like Valley Seeking in that it can obey a specified Waveform Limit, and can automatically perform ‘Following Sort’ actions of assigning unsorted waveforms to the nearest cluster, and removing outliers. This allows using T-Dist E-M sorting on channels that have millions of spikes to find the clusters using a smaller subset of waveforms, and then assigning the rest of the spikes into those clusters. - The Matlab spike importer can now optionally read an array of unit designations - A new ‘Set IgnoreSrc’ batch command allows skipping over sources during batch operations. For example, if the batch job is to re-extract and sort spikes from continuous data, there may be an original spike Source in the file that should just be ignored. Improvements: - Replaced the Display Option for enabling OpenGL display lists (obsolete) with an option for disabling OpenGL doublebuffering. - With the option checked (the default), Offline Sorter behaves as before. Unchecking the option and restarting Offline Sorter may allow certain operations, like scrolling the Timeline View while the Control Displays option is checked, to go faster. However, with the OpenGL double-buffering disabled, there is a risk of seeing flashing/tearing artifacts while redrawing the views. - Removed the requirement to open a channel before Waveforms -> Detect would allow setting the waveform detection options - In Waveform Inspection view, added new ability to set waveforms back to unsorted (‘u’ or ‘0’) key, and to sort to a unit by double-clicking on the unit box. - For batch valley-seeking sorting, the waveform limits and ‘Following Sort’ actions (Assign unsorted to closest unit and Remove outliers) are no longer always automatically turned off. They will now default to whatever they were set to in the last interactive session. NOTE THAT THIS CAN CHANGE BATCH SORTING RESULTS if the waveform limit and assign nearest/ remove outliers operations were not explicitly configured in the batch file. This behavior change was done because if a waveform limit was not specified and a channel contained large numbers of waveforms, sorting could take an unreasonably long time. - Separated what used to be a single value for the Max Iterations for any E-M sorting into separate values for Max Iterations for T-Distribution E-M sorting and for Standard E-M sorting.This is useful as the Standard E-M sorting generally performs better with a smaller number of Max Iterations than that required for T-Distribution E-M to perform optimally. - For valley-seeking sorting, a maximum of 400000 waveforms is now enforced for 64-bit Offline Sorter, the limit for 32-bit Offline Sorter is still 50000 waveforms. - The batch commands ‘Set WaveformLimit’, ‘Set AssignUnsortedAfterSort’, ‘Set RemoveOutliersAfterSort’ now apply to both Valley Seeking and T-Dist E-M sorting from batch. - Slight speed improvements with filtering on some systems. - New option for Export to New PL2 to export empty spike channels. This is convenient if you wish to preserve the total number of channels in a .PL2 file. - Removed ‘Redraw’ context menu items, and the ‘Redraw Cluster Displays immediately when Slice Position Changes’ option, they were no longer useful. - Various minor changes to the UI for increased clarity Bug Fixes: - Fix problem with Export to New plx files from pl2 files that contain CPX events - Fix problem with handling of Nex5 files that utilize 64-bit timestamps - Fix problem that could crash while displaying the Quick Key Reference or Quick Batch Reference dialogs on Windows 10 - Fix problem with Density Leveling function - Fix problem where valley-seeking sorting on huge numbers of waveform could crash. - Fix problem when specific channels where chosen to compute the CAR/CMR; the channels used would be off-by-1 from the channels chosen. If the last channel was chosen, it would crash. - Fix crash when initially right-clicking on Overlaps Analysis window - Fix Overwrite File-Save behavior with .pl2 files - Fix crash with Enhanced PCA in channels with only a few waveforms Offline Sorter Change Log v4.3.1 (Last Updated 8/02/17) Improvements: - Support for Nex 5.1 files with 64-bit timestamps and float samples - Licensing updates Bug Fixes: - Fix bug in loading long-duration pl2 files with timestamps > 32 bits - Fix bug in loading .NEV files with both spike and continuous data - Fix bug in Export as New PL2 with disabled trodal channels - Fix bug that allowed Matlab import menu items to enable when Matlab was not available on the system Offline Sorter Change Log v4.3.0 (Last Updated 3/21/17) New Features: - Added ability to do channel mapping with .pl2 files. - Added ability to Export Per-Waveform Data into a different file per time segment. Note that when multiple .pl2 files have been imported (or an .omf file), this allows an output file to be written for each original input file (if the default of creating a new time segment per file was chosen). - New Threshold Scan view to show the per-threshold SNR and waveform count values numerically. Added signal and noise standard deviations (in microvolts) to the display. - New Calculate SNR tool that allows SNR calculations from existing spikes, taking into account invalidated and sorted/ unsorted spikes. - New Center Timeline on a Time feature allows entering in a time and the Timeline window will center itself displaying that time. - For importing .nex files, it is now possible to control whether the unit designation is obtained by parsing the Nex Variable name, from the UnitNumber field in Nex Variables, or is always set to unsorted. Improvements: - Many operations that process or export spikes for all channels are now much faster. This is because OFS now assumes that the spike counts for a channel are correct regardless of whether the channel has been loaded or not. For obscure cases where the spike counts may not be correct after the file is initially loaded, there is a new Tools -> Verify Channel Counts that will load all channels, one by one. This then guarantees that all counts are correct for all channels. - Sped up many operations that loop over all channels by disabling display updates during the processing. - The progress bar shown on the bottom during long operations now generally gives a better indication of the true amount of progress. - If errors occur during a batch operation, the error messages are now much more likely to be present in the batch log file. - Scan Graph view now has a toolbar. - The MATLAB continuous data importer can now handle data stored in integer formats. - Channel mappings for Sources can be loaded in without disturbing the existing channel mappings for Sources not present in the file. Bug Fixes: - The Davies-Bouldin sort quality metric was not being calculated correctly - The Blackrock native loader left the channel count at the maximum (unless the Remove Empty Channels option was specified), now it limits to the last channel with non-zero counts. - Fixed a bug when using the non-default file save behavior for .pl2 files that caused renaming to fail. - Fixed a bug that could happen when a .plx file with more than 4 units was loaded then immediately exported to NEX. - Fix bug that mistakenly disabled menu items for several operations that can be performed when no channel has been loaded, e.g. performing automatic sorting on all channels. - Fix bug where saving a TPL file would complain when empty channels were not sorted with a template or contour sorting method. - Fix bug where setting waveform length from batch stopped working. - Fix bug with clicking on an empty Overlaps Analysis view. - Fix bug in loading pl2 files when the first electrode in a stereotrode/tetrode channel was disabled. - Fix bugs that could cause nonsense waveforms to appear in a disabled electrode for stereotrode/tetrode data. - Fix continuity problem with filtering across continuous data buffer boundaries. - Fix problem with calculating SNR that caused the ratio to be too low (some samples that were signal were counted as noise). - Fixed redraw problem after using interval selection to invalidate waveforms. - Fix bug where .plx export would skip the entire channel if first electrode was not present. Offline Sorter Change Log v4.2.0 (Last Updated 8/31/16) New Features: - Overlap analysis for tetrodes, along with a new display showing unit shifts in the Overlaps Analysis View. - Added an optional “noise unit” to overlaps analysis to potentially rescue unit firings that appear late in the waveform window because they were triggered by some random noise instead of a different unit firing. - For Export to .PLX, .PL2®, and .NEX, the user now has full control over which Sources are exported. This includes the ability prevent certain spike Sources from being exported to .PLX, which was not previously possible. - Added a new Select Waveform dialog that allows choosing a specific waveform for display. - Support for importing HDF5-based file format from 3-Brain. Improvements: - In Overlaps Analysis, shifted templates that match (to within the template tolerance) any other unit are now disqualified. - This greatly reduces “false positive” overlaps. - In Overlaps Analysis, don’t draw the flat line when the shift template does not cross threshold, or is not relevant to the “noise unit” analysis. - Allowed extraction of longer waveforms, up to 896 samples. - Improved initial seed point selection for E-M sorting algorithms. - Added a unit label and improved performance of Waveform Inspection view. - The format of the Source selection grid has been made consistent between the Export to .PLX/.PL2/.NEX dialogs and the Sources View. - Shift left-click pan and Shift right-click zoom in the Timeline and Rasters Views. - Mouse-wheel zoom in Continuous Frequency Spectrum View. - Show number of channels explicitly in Sources view. - New batch command to invalidated unsorted waveforms on each channel. - Perform automatic sorting dialog now allows setting more items, with spin controls, and remembers whether 2D or 3D feature space was selected. - Went to a more sensible order for the items in the Control Grid. Bug Fixes: - Fixed issue where for some graphics cards (usually Intel-based cards) the waveforms view would not erase properly. - Fixed issue where hitting the delete key would put grids into an odd state. - Fixed bug loading very large Blackrock nsX files. - Fix bug in Rasters View that could crash when continuous data was present on a spike channel. - Fixed bug that left the Timeline View in a strange state after reloading a saved layout or a Reset to Default Layout. - Fixed bug that could crash if the Continuous Frequency Spectrum View was showing when a temporary continuous Source association was made. - Fixed problem with View Only Selected Time Segment behavior. - Fixed issue with Feature vs Feature showing tetrode modes when current channel is single-electrode. - Fixed issue when resetting range and zoom from Feature vs Feature view. - Fixed bug with changing trodality in Channel Map view. - Fixed bug where applying a filter would not update the peak heights histogram, which could cause auto-thresholding to set a bad threshold on the current channel. Offline Sorter v4.1.0 New Features: - Support for loading spike and continuous data from MATLAB®. - Support for .NEX5 NeuroExplorer® format, including a new ExportToNex5 batch command. - Reinstated the native loader for Blackrock/Cyberkinetics files, and added support for continuous data. - Export Per-Unit Data can now export several of the per-Waveform quantities calculated on the unit template waveforms. - Added the ability to limit the waveforms used for PCA to those in the currently-selected unit. This is sometimes useful for emphasizing substructure within a unit. Note that using this setting is ‘temporary’ in the sense that changing the channel will revert the PCA calculation to the Use All Valid setting again. - New batch commands allow doing low-pass filtering and setting sort start/end from batch. - New feature (on by default) to simplify drawn contours by reducing the number of line segments in them before using them. This can greatly speed up operations involving drawn contours, especially when there are large numbers of spikes, but it can be slightly less precise in that the inside/outside determination of a few points around the edges of the contour may be different. - The template fit tolerance is no longer limited to integer values. Non-integer values can be entered into the fit tolerance spin boxes and used to get finer control of the template matching, but the non-integer fit tolerance values cannot be saved into .PLX or .TPL files. - Added a Stop button to the Perform Automatic Sorting dialog. - Doing Remove Waveforms (or Remove All Waveforms Except) while the unsorted unit is selected will remove the selected waveforms from all units. Improvements: - Advanced statistics are no longer recalculated during animated sorting, even if they are enabled. Sorting goes much faster now by default, but it is no longer possible to watch the sort quality metrics evolve as the sorting progresses. - Since computing per-Unit L-Ratio and Isolation Distance sort quality metrics can take a long time (especially with large numbers of waveforms), the calculation of these quantities is now disabled by default, which again speeds up sorting. - If the user is interested in these metrics, they can be enabled on the Tools->Options->Stats options screen. - The default Outlier Threshold is now 2.0 instead of 1.3. - Added a toolbar button to bring up the Recalculate PCA dialog. - Increased the maximum samples per waveform to 224, fixed the check to complain if waveforms longer than this are encountered. - Changed the way that the Neuroshare loader determines the gap structure for continuous data channels, which should be faster in many cases. - Made the Neuroshare loader more tolerant of bad voltage range specifications in data files. This improved the ability to load data from certain vendors (e.g. Alpha Omega). - Batch processing is now smarter about not loading continuous channels if there have been no batch commands specified for continuous data, which improves performance. - Digital referencing now supports stereotrode/tetrode data. - Miscellaneous speed and memory-usage improvements throughout. - When Time Segments are generated automatically to cover a file, the end and begin times are now separated by one timestamp. This allows exporting the segments as non-overlapping intervals to recent versions of NeuroExplorer. Bug Fixes: - Fixed issue with crossing waveforms when the spike digitization frequency is not the same as the timestamp frequency. - Fix issue with disabled continuous channels from PL2 files still showing up. - Fixed problem with Events when loading multiple PL2 files. - Fixed bug affecting the Neuroshare and Neuralynx loaders when different Sources with the same sampling frequency should have been created. - Fixed bug with extracting spikes from slowly-varying continuous data. - Stopping sorting now also stops scan sorting methods, and sorting all channels. - Scrolling all the way to the right on the Raster View could corrupt the time range. - The Automatic Sorting dialog no longer re-does the last sort that was done by pressing Apply after the user presses OK, unless something was changed within the dialog to necessitate re-sorting. - Fixed the quick viewpoint ‘jump’ in 3D windows that happened when the mouse button was first pressed to circle points. - Fixed bug where the Timeline View could remain blank following a Scan. - Event sources are no longer listed in the Export to PL2 dialog – event Sources are always exported. - Changing channels while sorting is in progress is no longer allowed. - Fixed bug with creating a new unit from the selected waveform in the Timeline View when there were no units already in existence. Offline Sorter v4.0 New Features: - Ability to load multiple .PL2 files simultaneously. - Added digital referencing. - Added Overlaps Analysis view which performs overlapping waveform analysis. - Time Segments can now be named and individually colored and toggled on/off, and can be saved/ restored as NeuroExplorer Intervals. The Interval Selection tool can now create Time Segments. - Added Signal-to-Noise ratio computation. - New Threshold Scan Graph view which allows examining Signal-to-Noise and number of spikes as a function of threshold position for continuous data. - Added new L-Ratio and Isolation Distance sort quality metrics. - Added support for Bands and Lines sorting methods. - Ability to display arbitrary (compatible) combinations of continuous and spike data for a channel together in the Timeline view. This replaces the need to associate channels during loading of .PLX files or during channel remapping. - Ability to apply high-cut filtering to continuous channels. - New Scan modes which include the ability to scan using different random initial seed clusters. - Ability to use standard deviation or MAD to calculate fit tolerances or band fit tolerances. - Support for multiple spike Sources. - The contents of the Sort Summary view are customizable. Improvements: - Sort Start and Sort End are per-Source. - Tooltips now on graph views. - Improved options to show 3D and Normalized per-segment statistics on Time Segments view. - Now performs digital gain compensation when different electrodes in sterotrode/tetrode .PLX files have different gains. - Batch command DetectMicrovolts now allows specifying constant voltage thresholds. - Improved the appearance of the Surface view. - The native MultiChannel Systems importer now handles the “digital” stream. It also includes a toggle to use native or Neuroshare DLLs to import .MCS data files. - In Waveforms view, Timeline view, or Waveform Detection view the mouse wheel now controls the voltage Zoom. - The Create Separate Events for all Strobe Codes feature now applies to .PL2 files. - More tools can now do all channels in a Source. - Find Units tooltip now indicates which sorting method will be applied. Bug Fixes: - Fixed bug to where one can now print the Waveforms view with Ctrl-P. - Fixed bug where unrecognized batch command errors in batch files were not being reported to the user. They were just silently ignored. Fixing this bug may cause existing batch files to complain about syntax errors if the wrong characters were used to ‘comment out’ files. Comment lines should start with ‘//’ characters. Obsoleted Features: - Support for .PLX0 and .DDT files. - Optimize .PLX file. - Native versions of loaders for vendor file formats that now have Neuroshare DLLs available. - Update .EXP file with Sort Info. - Create Events at unit firing times. Offline Sorter v3.3.5 Bug Fixes: - Fixed crash (introduced in 3.3.4) that happened during extraction of spikes from continuous data. Offline Sorter v3.3.4 Bug Fixes: - Fixed crash that could happen when digital events were being shown in the Timeline view. - Fixed bug where center selected in Timeline view would no longer change displayed time range. - Fixed bug to where creating multiple time segments now works again. - Fixed incorrect Free Memory display in toolbar. - Fixed bug where export to New PLX could produce illegal .PLX files when the original file was a .NEX file. Offline Sorter v3.3.3 General: - This is the last release that supports Windows® XP. The next release will only be provided for Windows 7. New Features: - New Tetrode Min/Max display available in Feature vs Feature view - shows both the Peak and the Valley feature for each electrode permutation. - Now Exports to .PL2 files from batch. - Introduced Event Sources for .PL2 files. - Rewrote the Channel Map view to be per-Source. Also, the (confusing) ability to remap channels using droplists has been replaced with writing/editing/reading a channel mapping (.OFM) file. The format of the .OFM changed to be per-Source. - Spike + Continuous channels are no longer associated on import. Instead, arbitrary continuous channels can be displayed with any spike channel. - New convenience toolbar buttons for selecting which waveforms to show (unsorted, current unit, current segment). Improvements: - Introduced concept of a current Source. Changing the channel changes the current Source. - Can now select which continuous Sources to Export to NeuroExplorer. - When exporting unit/channel/waveform data from batch, output files now have a double extension to better indicate which kind of export they contain. - Streamlined support for other file formats; dropped native loaders for CED and Cyberkinetics files (these files can still be loaded into Offline Sorter™ via Neuroshare). - Removed option to pre-load spikes (it was obsolete - spikes were being preloaded anyway). - Specifying a time range in batch via Set TimeRangeStart/End now affects continuous and events as well as spikes. - Can now translate environment variables in batch file arguments, using the %VAR_NAME% syntax. - Now supports non-integer gains. - Restoring a scan sorting (e.g. from human-supervised sorting procedure) now also restores the initial sorting best choice. - Can now remove short ISI waveforms from units for multiple channels via Tools -> Remove Short ISI Waveforms. Bug Fixes: - Fixed bug where Offline Sorter could get confused on the waveform length when dealing with trodal .PL2 files. - Fixed problem with sampling frequency when importing newer .NEV files. - Fixed issue with typing threshold values in Timeline view. - Fixed issue with very large timestamps in Neuralynx files. - Fixed issues with exporting from multi-Source .PL2 to .PLX files. - Fixed display issue when some Sources were stereotrode/tetrode and some were not. - Fixed problem with temp directory when starting Offline Sorter with command line arguments. - Fixed bug where Waveforms views would no longer show invalidated waveforms in some cases. - Fixed bugs with slightly-off alignment between spikes and continuous in Timeline view. Offline Sorter v3.3.2 New Features: - Combined many Sorting menu options into new Automatic Sorting and Template Sorting dialogs. Improvements: - Better behavior when the hard drive fills up during writing, but users should still avoid letting the hard drive fill up during writing. - Now keeps track of the reprocessing and acquisition comments separately for .PL2 files, allow editing PL2 comments. - Removed the (broken) ability to associate file extensions from the Help -> About box. - Faster selection of waveforms from Cluster view. - Sources view is now shown by default. - Operations that allowed processing All Channels now allow users to select a Source instead. - Raw Src/Channel numbers are now shown in a new column in the Channel Parameters view. Bug Fixes: - Fixed issue with loading continuous data from .NEX files. - Fixed issue with .PL2 files containing 12-bit data (converted from older .PLX files). - Fixed isse where we removed the dangerous ability to customize the main menu. It could cause newly-added menu items to not appear until the user performed a Window->Customization->Reset of the menu bar. - Fixed bug that prevented opening a file from the command line, or after associating the .PLX file extension with Offline Sorter and double-clicking on a .PLX file. - Fixed bug with saving .PLX0 files. - Fixed bug where Offline Sorter would crash if the Feature Space droplists were removed from the Feature Space toolbar. - Fixed bug that allowed batch files to set a preamp gain of 0. - Fixed bug where Export to .PL2 would ask the user to select a .PLX file. - Fixed an issue where Sources created during extraction did not have channel numbers starting at 1. Offline Sorter v3.3.1 New Features: - Can now Export to .PL2 files. Improvements: - Set initial spike channel gain to be the same as continuous gain for .PLX files - makes future spike extraction easier. - Offline Sorter now reports raw channel numbers for .PL2 files that are 1-based. - Zoom in/out in Z for 3D Cluster view no longer reversed as compared to X and Y. Bug Fixes: - Fixed bug where batch command ‘Set ContPreampGain’ did not properly adjust total continuous gain. - Fixed bug where Offline Sorter allowed changing trodality or remapping channels in .PL2 files. This was never supported, but Offline Sorter allowed doing it through the user interface, with somewhat disastrous results. - Fixed a hesitation when highlighting waveforms in the 3D Cluster view. - Fixed crash when clicking on empty lines at the end of the Channel Map view. - Fixed complaint about licensing when starting a batch command file without first doing anything else in Offline Sorter. - Fixed issue with Saving .PL2 files after invalidating waveforms. - Fixed an issue with reading very old tetrode .PLX files. - Fixed crash in Offline Sorter 32bit when clicking in Waveform Detection view with discontinuous data selected. Offline Sorter v3.3.0 New Features: - Can now load and save .PL2 files. - Added alignment during waveform extraction. - Added Enhanced PCA, and an Apply button to the Tools -> Recalculate PCA dialog. - Added mouse wheel zooming to 2D Cluster view and Feature vs. Feature view. - Added zooming by middle mouse click/drag to 2D Cluster view and Feature vs. Feature view. - Added zooming to a time range in the Timeline view using the middle mouse button. - Added ability to define Time Segments interactively in the Timeline view via the right click menu. - Added ability to invalidate waveforms in the current segment via Timeline view right click menu. - Added control over the placement of the Offline Sorter temporary cache directory, and the ability to clean it. - Added a tool to invalidate high-amplitude artifacts. - Rewrote the Waveforms view for much faster rendering of large numbers of waveforms. The previous Waveforms view is available under the ‘View - Waveforms (Legacy)’ menu. Improvements: - Added more info to Sources view. - Nicer pagination when printing the Sort Summary view. - Made the Timeline view less cluttered by moving some functions to other windows. - Added right click menu in Units view to re-sort using templates and (new) tolerances. - Added ability to enabled dual threshold extraction from batch via Set DetectSigmas2. - Can now use Time Segments for Interval Selection. - Added ability to turn Deferred Waveform Drawing on/off from the right click menus of the affected view. - Prevented some unneeded redraws - some cases should be faster to render now. - CED native importer now warns for file versions that it cannot handle instead of crashing. - Prevented unneeded re-reading of files during Export to .NEX in some cases. - Can now set a fixed initial zoom (instead of auto-zooming each channel), and added an option to preferentially use spikes instead of continuous data in auto zoom calculation. - Increased the maximum number of channels to 4096 in 64-bit version only. - No longer overwrites Acquisition Software in header when exporting to .PLX. Bug Fixes: - Fixed bug where filtered continuous data could be clipped as if it had 12-bit samples. - Fixed bug that caused crashes whenever the Control Grid was closed. - Fixed bug in Axion loader that did not display correct Continuous channels. - Fixed bug in Axion loader that caused .PLX files exported from Axion data to be invalid. - Fixed where we improved memory allocation to prevent 32-bit Offline Sorter from running out of memory for high channel count files. - Fixed bug that only happened for complicated channel remappings for .PLX files. - Fixed bug where sometimes the Segments view would not repopulate correctly after loading a new file. - Fixed bug where Control Grid channel list was blank when Control Panel view is shown manually after application start. - Fixed bug so that it can now handle reading in .NEX files that were saved from Offline Sorter without saving the unsorted waveforms. - Fixed bug where state of the Continuously Trigger check box no longer persisted (its state not saved/restored when you exist/re-open Offline Sorter). The Continuously Trigger check box will now always be unchecked when you start OFS. - Fixed bug where deleting all spikes on all channels because of a change to waveform lengths could crash. - Fixed bug that could crash when doing a scan and 0 units were found. - Fixed bug where selecting sort method in menu would not select the sort method in the Control Panel droplist. - Fixed issue with setting threshold while Deferred Waveform Drawing is on. - Fixed issue in which Control Grid values did not update properly after a Reset to Defaults. Fixed bug in nsn loader that could result in zero amplitude spikes. - Fixed issues with loading CED tetrode data and Cyberkinetics files via the Neuroshare loader. - Fixed update issues in the binary import dialog. Offline Sorter v3.2.4 New Features: - Can now load Axion files. Improvements: - When changing spike length/prethreshold in a file for which spikes already exist, the option is now available to erase all existing spikes. - Will now show the drop-arrow on droplists all the time instead of just when the droplist has focus. - Now allows the use of time segments to limit the export of data to new .PLX and .NEX files. - When exporting to .NEX or to a new .PLX, the time range limits can now affect continuous and event data as well as spikes. - Changed Neuroshare loader to make it more general. Bug Fixes: - Fixed bug where Values for FWHM that were once expressed in units of clock ticks, are now expressed in milliseconds. - Fixed glitch that would cause a solid line to be rendered from where continuous data ended to the end of the file. Offline Sorter v3.2.3 New Features: - Waveforms can no longer be selected by clicking in the Waveforms view. - The Adjust Gains tool can now automatically set optimal gains for spike extraction (new Optimize button). Improvements: - Added ability to continuously trigger spikes from continuous data. - Added new waveform feature to calculate the average. - Added ability to invalidate waveforms outside of intervals read from a file. - Fixed issues with Create Time Segments and made it easier to use this feature to get functionality equivalent to the older Use Range feature (by creating one segment). - Default directory for saving .TPL files is same as the data file directory. - Added ExportToTPL and SetContinueSort batch commands. Bug Fixes: - Fixed bug where Unit labels exported to MATLAB during export per-unit data were off by one. - Fixed bug by cleaning up some displays that could show stale views when filed was changed. - Fixed bugs associated with converting continuous data to tetrodes when each channel did not have the exact same number of samples. - Fixed bugs that only occurred in 64-bit version with large spike counts. - Fixed bug in Sources view channel ranges for unusual file configurations. Offline Sorter v3.2.2 New Features: - Added Redo button. - Added Stop Sort button. - Added Recalculate All Stats button in stats panes. - Added Adaptive template tool. Improvements: - Now has nicer behavior for ‘shifted-in’ values at the waveform edges during waveform alignment. - Adaptive templates are now handled by undo. Bug Fixes: - Fixed problem with exporting not yet loaded channels in ‘Export to New .PLX’. - Fixed .PLX files with gaps in channel numbers. - Added fix for changing trodality of Continuous Only data files. - Fixed minor bugs with menus not graying out appropriately. - Fixed bug with picking in Cluster vs. Time view. - Added fix so Toggling stats options forces recalc/redraw. - Added fix to reset the sort width to full-range after waveform extraction. - Fixed crash with continuous-only Datawave files. - Fixed issue with remove short ISI waveforms from batch. - Fixed bug with Adaptive template sorting. Offline Sorter v3.2.1 Bug Fixes: - Fixed issue that could scramble the loading of tetrode .PLX files. - Fixed crash issue when making individual events out of strobes when loading .PLX and Neuralynx files. - Fixed batch problem that can cause processing of the first channel to fail under unusual circumstances. Offline Sorter v3.2.0 New Features: - Added new native .NEX loader that can combine .NEX waveform variables for a channel. - Added new Sources Info view to display the Source structure of loaded files. - Added ability to disable calculation of per-segment statistics to save time if not using segment-related views. Improvements: - Improved low-cut filtering options for continuous data. - Improved large-file handling, faster channel load times. - Better handling of Sources from .PLX files written by OmniPlex®. - New batch commands for setting filtering options and preamp gains. Bug Fixes: - Fixed problem with settings getting saved/restored before/after batch runs when the current directory was changed during the batch operation. - Fixed problem with sorting extracted spikes when applying a .TPL file to .DDT data. - Fixed problem with Overwrite file save behavior and Neuralynx files. - Fixed problem with invalidated waveforms being saved to Neuralynx files with an invalid unit number of -1. - Fixed problem when spike streams with 0 spikes in them were encountered while loading MCS files. - Fixed problem with multiple spike sources in MCS files. - Fixed crash issue by disallowing remapping assignment of spike channels to continuous channels (any remapping can still be accomplished by assigning continuous channels to spike channels). - Fixed issue with unit tolerances not getting imported properly from .TPL files. - Fixed issue with invoking PLX0 conversion using Offline Sorter command line options. - Fixed ability to keep showing sorting contours after the initial sort. Offline Sorter v3.1.0 New Features: - Added support for .PLX file format version 107, which includes support for large channel counts. - Added control of the directory for output files. - Added the Set OutputDir batch command. Improvements: - Box sorting boxes are now saved/restored to .TPL files. - Scan files saved during batch now named for the saved output file instead of the input file. - Improvements to batch syntax and reporting. Bug Fixes: - Fixed crash problem that occurred if the Control Grid window was closed. - Fixed problem with saving/restoring custom key assignments. - Fixed problem where remapping a .PLX file to stereotrode/tetrode would result in extra copies of the events. - Fixed potential problem with loading strobed events from .NEV, .NLX and Neuroshare files. - Fixed bug to where Export as PLX now writes out the modified spike threshold resulting from re-thresholding. - Fixed bug to where files with 16-bit waveform data now use the non-MAP fit tolerance for template sorting, ignoring the - Use MAP-Compatible Fit Tolerance setting. - Fixed issue with invalidating waveforms for file formats where the timestamp frequency is not the same as the waveform digitization frequency. - Fixed potential issue with SortEnd not being properly read in from trodal .PLX files. - Fixed issue with the full-scale voltage edit box on the Timeline view not being updated after a waveform extraction. - Fixed problem with exporting to .PLX when file containing only continuous channels was imported from certain formats. - Fixed issues with handling gains/voltages from MCS files. Offline Sorter v3.0.1 Bug Fixes: - Fixed issues with exporting upsampled continuous data to NeuroExplorer. - Fixed bug to where Export functions are now compatible with latest releases of MATLAB. - Fixed bug to where you can no longer circle clusters when in box sorting mode. - Fixed issues with events during ‘Export to New .PLX’ when data was read in from Neuroshare. Offline Sorter v3.0.0 New Features: - Time Segments – The Select Time Segment function has now been replaced by the much more extensive ability to divide the file into time segments, with support for viewing and using only a specific segment in all operations. Added an option to automatically create time segments when loading a file. - Added a new Clusters vs. Time view that shows how clusters evolve as a function of time. - Added Sort Quality vs. Time Segment Graph view to display how sort quality changed through the file. Improvements: - MATLAB export functions now work with MATLAB R2009a. Sorting Changes: - Added ability to sort with Adaptive template. - Added Box sorting. - Added a new Templates vs. Time view to display how the template adapted through the file. - Added ability to quickly save and recall sortings for a channel, which is useful for comparisons. - Added a new Scan Graph view that graphically displays the contents of the Scan view. - Scan results can now be saved to and loaded from .SCAN files. A new option exists to automatically load the companion .SCAN file for each channel as it is loaded. Together with the new batch scan commands, this enables a useful mode of operation where you set up a batch Offline Sorter job to do sorting scans all night, then manually review the sorting and choose the most appealing sort for each channel. - Added new sorting methods based on scanning a parameter and picking the best sort according to a selected sort quality metric. Continuous Data Handling: - Added upsampling with linear or spline interpolation. - Can now (optionally) save upsampled and filtered continuous data in the ‘Export to New .PLX’ operation. - Added an FFT (Fast Fourier Transform) view to show the frequency spectrum of continuous data. - Waveform detection/extraction will now appropriately treat differences in voltage scales between waveform and continuous data. - The Channel Parameters and File Summary view now show more information related to gains and voltage ranges. - The Channel Parameters view allows modification of the continuous or spike channel gains if they are not correct in the data file, and there is a new Adjust Gains tool. General UI Changes: - A new user interface toolkit is now used, which provides for added flexibility and customizability. - The buttons on the Waveform and Cluster view have now been turned into toolbars. - The bottom Timeline view has now been enhanced so that it can show continuous and waveform data simultaneously with a resizable splitter. The controls have been simplified, and added an option to show dots at the sample locations for continuous data. - The Contours and Waveform Crossing sorting methods have now been combined into one, and this sorting method is always in effect no matter which other sorting method you have selected. Crossing in the - Waveforms view is now symmetrical with circling in the Cluster view for all operations. - The views showing Waveform or Continuous Data now show the time and voltage corresponding to the mouse position in the status bar. - Now the currently selected Unit is always drawn on top in the Waveforms view. - New Select main menu item to select the Next/Previous Channel, Unit, Waveform, or Segment. - The electrode enable checkboxes have now moved into the Control Grid. - New Run menu allows easily starting other applications from within Offline Sorter. General Changes: - Performance enhancements for loading data files. - Batch enhancements. - New commands for scanning. - Added a menu item to edit batch files with a user-selected editor. - Offline Sorter remembers previous batch file locations. - New Quick Batch Reference now showing all batch commands. - Added a menu item to show the log file resulting from the last batch run. - There are new options to automatically load the first channel after opening a new file (on by default), and to automatic load companion scan results. - The following features have been deprecated: - 3D Phase Space view. - The Sort toolbar. - The ‘Show 0 to scroll pos’ feature of the Waveform display. - The ability to time-magnify just the spikes (without zooming the time range) in the Waveform display. - The Control Cluster display and Control Waveform display are no longer independent. It is just Control Displays now. - Added options for handling sort start/end imported from .PLX files. - Can now save and restore all Offline Sorter options and settings to/from a file, and reset all options to factory defaults. - Dumping PowerPoint® slides now creates the output .PPT file in the data directory to work around a file protection issue in Vista®. - Now available as a true 64-bit executable.