.. _CLI: Command Line Interfaces (CLI) ============================= This page explains how to use the *usv-playpen* CLI (command line interfaces). Record ^^^^^^ ``conduct-calibration`` ``conduct-calibration`` is the command-line interface for performing a tracking camera calibration. .. code-block:: text usage: conduct-calibration [-h] [--set KEY.PATH=VALUE]... optional arguments: -h, --help Show this help message and exit. --set Override a specific setting using a dot-path. This option can be used multiple times. For example: --set calibration_duration=10 --set video.general.calibration_frame_rate=20 ``conduct-recording`` ``conduct-recording`` is the command-line interface for conducting a recording session. .. code-block:: text usage: conduct-recording [-h] [--set KEY.PATH=VALUE]... optional arguments: -h, --help Show this help message and exit. --set Override a specific setting using a dot-path. This option can be used multiple times. For example: --set video_session_duration=20 --set audio.general.fftlength=512 --set arduino_sync_port=COM7 Process ^^^^^^^ ``concatenate-ephys-files`` ``concatenate-ephys-files`` is the command-line interface for concatenating ephys binary files across multiple sessions. .. code-block:: text usage: concatenate-ephys-files [-h] --root-directories TEXT,TEXT,... required arguments: --root-directories A comma-separated string of session root directory paths. optional arguments: -h, --help Show this help message and exit. ``split-clusters`` ``split-clusters`` is the command-line interface for splitting curated ephys clusters into individual session files. .. code-block:: text usage: split-clusters [-h] --root-directories TEXT,TEXT,... [--min-spikes INTEGER] [--kilosort-version TEXT] required arguments: --root-directories A comma-separated string of session root directory paths. optional arguments: -h, --help Show this help message and exit. --min-spikes Minimum number of spikes for a cluster to be saved. --kilosort-version Version of Kilosort used for spike sorting. ``concatenate-video-files`` ``concatenate-video-files`` is the command-line interface for concatenating video files. .. code-block:: text usage: concatenate-video-files [-h] --root-directory PATH [--camera-serial TEXT] [--extension TEXT] [--output-name TEXT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --camera-serial Camera serial number(s). --extension Video file extension. --output-name Name of the concatenated file. ``rectify-video-fps`` ``rectify-video-fps`` iis the command-line interface for re-encoding videos to a correct frame rate. .. code-block:: text usage: rectify-video-fps [-h] --root-directory PATH [--camera-serial TEXT...] [--target-file TEXT] [--extension TEXT] [--crf INTEGER] [--preset TEXT] [--delete-old-file | --no-delete-old-file] [--conduct-concat | --no-conduct-concat] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --camera-serial Camera serial number(s). --target-file Name of the target video file. --extension Video file extension. --crf FFMPEG -crf (e.g., 16). --preset FFMPEG encoding speed preset. --delete-old-file / --no-delete-old-file Deletes the original file after encoding. --conduct-concat / --no-conduct-concat Indicate if prior concatenation was performed ``multichannel-to-single-ch`` ``multichannel-to-single-ch`` is the command-line interface for splitting multichannel audio files into single-channel files. .. code-block:: text usage: multichannel-to-single-ch [-h] --root-directory PATH required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. ``crop-wav-files`` ``crop-wav-files`` is the command-line interface for cropping audio WAV files to match video length. .. code-block:: text usage: crop-wav-files [-h] --root-directory PATH [--trigger-device TEXT] [--trigger-channel INTEGER] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --trigger-device USGH device(s) receiving triggerbox input. --trigger-channel USGH channel receiving triggerbox input. ``av-sync-check`` ``av-sync-check`` is the command-line interface for checking audio-video synchronization and generating a summary figure. .. code-block:: text usage: av-sync-check [-h] --root-directory PATH [--extra-camera TEXT] [--audio-sync-ch INTEGER] [--exact-frame-times | --no-exact-frame-times] [--nidq-sr FLOAT] [--nidq-channels INTEGER] [--nidq-trigger-bit INTEGER] [--nidq-sync-bit INTEGER] [--video-sync-camera TEXT...] [--led-version TEXT] [--led-dev INTEGER] [--video-extension TEXT] [--intensity-thresh FLOAT] [--ms-tolerance INTEGER] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --extra-camera Camera serial number for extra data. --audio-sync-ch Audio channel receiving sync input. --exact-frame-times / --no-exact-frame-times Extract exact video frame times. --nidq-sr NI-DAQ sampling rate (Hz). --nidq-channels Number of NI-DAQ channels. --nidq-trigger-bit NI-DAQ triggerbox input bit position. --nidq-sync-bit NI-DAQ sync input bit position. --video-sync-camera Camera serial number for video sync. --led-version Version of the LED pixel used for sync. --led-dev LED pixel deviation value. --video-extension Video extension for sync files. --intensity-thresh Relative intensity threshold for LED detection. --ms-tolerance Divergence tolerance (in ms). ``ev-sync-check`` ``ev-sync-check`` is the command-line interface for validating ephys-video synchronization. .. code-block:: text usage: ev-sync-check [-h] --root-directory PATH [--file-type TEXT] [--tolerance FLOAT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --file-type Neuropixels file type (ap or lf). --tolerance Divergence tolerance (in ms). ``hpss-audio`` ``hpss-audio`` is the command-line interface for performing Harmonic-Percussive Source Separation (HPSS) on audio files. .. code-block:: text usage: hpss-audio [-h] --root-directory PATH [--stft-params INTEGER INTEGER] [--kernel-size INTEGER INTEGER] [--power FLOAT] [--margin INTEGER INTEGER] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --stft-params STFT window length and hop size. --kernel-size Median filter kernel size (harmonic, percussive). --power HPSS power parameter. --margin HPSS margin (harmonic, percussive). ``bp-filter-audio`` ``bp-filter-audio`` is the command-line interface for band-pass filtering audio files. .. code-block:: text usage: bp-filter-audio [-h] --root-directory PATH [--format TEXT] [--dirs TEXT...] [--freq-bounds INTEGER INTEGER] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --format Audio file format. --dirs Directory/ies containing files to filter. --freq-bounds Frequency bounds for the band-pass filter (Hz). ``concatenate-audio-files`` ``concatenate-audio-files`` is the command-line interface for vertically stacking audio files into a single memmap file. .. code-block:: text usage: concatenate-audio-files [-h] --root-directory PATH [--format TEXT] [--dirs TEXT...] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --format Audio file format. --dirs Directory/ies to search for files to concatenate. ``sleap-to-h5`` ``sleap-to-h5`` is the command-line interface for converting SLEAP (.slp) files to HDF5 (.h5) files. .. code-block:: text usage: sleap-to-h5 [-h] --root-directory PATH [--venv-path TEXT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --venv-path SLEAP VENV path. ``anipose-calibrate`` ``anipose-calibrate`` is the command-line interface for conducting Anipose camera calibration. .. code-block:: text usage: anipose-calibrate [-h] --root-directory PATH [--board-provided | --no-board-provided] [--board-dims INTEGER INTEGER] [--square-len INTEGER] [--marker-params FLOAT FLOAT] [--dict-size INTEGER] [--img-dims INTEGER INTEGER] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --board-provided / --no-board-provided Indicate that the calibration board is provided. --board-dims Checkerboard dimensions (squares_x, squares_y). --square-len Length of a checkerboard square (mm). --marker-params ArUco marker length (mm) and dictionary bits. --dict-size Size of the ArUco dictionary. --img-dims Image dimensions (width, height) in pixels. ``anipose-triangulate`` ``anipose-triangulate`` is the command-line interface for conducting Anipose 3D triangulation. .. code-block:: text usage: anipose-triangulate [-h] --root-directory PATH --calibration-file PATH [--arena-points | --no-arena-points] [--frame-restriction INTEGER] [--exclude-views TEXT...] [--display-progress | --no-display-progress] [--use-ransac | --no-use-ransac] [--rigid-constraints "TEXT,TEXT"...] [--weak-constraints "TEXT,TEXT"...] [--smooth-scale FLOAT] [--weight-weak INTEGER] [--weight-rigid INTEGER] [--reprojection-threshold INTEGER] [--regularization TEXT] [--n-deriv-smooth INTEGER] required arguments: --root-directory Session root directory path. --cal-directory Path to the Anipose calibration session. optional arguments: -h, --help Show this help message and exit. --arena-points / --no-arena-points Triangulate arena points instead of animal points. --frame-restriction Restrict triangulation to a specific number of frames. --exclude-views Camera views to exclude from triangulation. --display-progress / --no-display-progress Display the progress bar during triangulation. --use-ransac / --no-use-ransac Use RANSAC for robust triangulation. --rigid-constraints Pair(s) of nodes for a rigid constraint. --weak-constraints Pair(s) of nodes for a weak constraint. --smooth-scale Scaling factor for smoothing. --weight-weak Weight for weak constraints. --weight-rigid Weight for rigid constraints. --reprojection-threshold Reprojection error threshold. --regularization Regularization function to use. --n-deriv-smooth Number of derivatives to use for smoothing. ``anipose-trm`` ``anipose-trm`` is the command-line interface for translating, rotating, and scaling 3D point data. .. code-block:: text usage: anipose-trm [-h] --root-directory PATH --exp-code TEXT --arena-file PATH [--save-data-for TEXT] [--delete-original | --no-delete-original] [--ref-len FLOAT] required arguments: --root-directory Session root directory path. --exp-code Experimental code. --arena-directory Path to the original arena session. optional arguments: -h, --help Show this help message and exit. --save-data-for Data to save after transformation. --delete-original / --no-delete-original Delete the original data after transformation. --ref-len Length of the static reference object. ``das-infer`` ``das-infer`` is the command-line interface for running Deep Audio Segmenter (DAS) inference on audio files. .. code-block:: text usage: das-infer [-h] --root-directory PATH [--env-name TEXT] [--model-dir PATH] [--model-name TEXT] [--output-type TEXT] [--confidence-thresh FLOAT] [--min-len FLOAT] [--fill-gap FLOAT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --env-name Name of the DAS conda environment. --model-dir Directory of the DAS model. --model-name Base name of the DAS model. --output-type Output file type for DAS predictions. --confidence-thresh Confidence threshold for segment detection. --min-len Minimum length for a detected segment (s). --fill-gap Gap duration to fill between segments (s). ``das-summarize`` ``das-summarize`` is the command-line interface for summarizing DAS inference findings. .. code-block:: text usage: das-summarize [-h] --root-directory PATH [--win-len INTEGER] [--freq-cutoff INTEGER] [--corr-cutoff FLOAT] [--var-cutoff FLOAT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --win-len Window length of the signal. --freq-cutoff Low frequency cutoff (Hz). --corr-cutoff Minimum noise correlation cutoff. --var-cutoff Maximum noise variance cutoff. ``prepare-vcl-assign`` ``prepare-vcl-assign`` is the command-line interface for preparing data for vocalization assignment using Vocalocator. .. code-block:: text usage: prepare-vcl-assign [-h] --root-directory PATH --arena-directory PATH required arguments: --root-directory Session root directory path. --arena-directory Arena session root directory path. optional arguments: -h, --help Show this help message and exit. ``vcl-assign`` ``vcl-assign`` is the command-line interface for assigning vocalizations to specific animals using Vocalocator. .. code-block:: text usage: vcl-assign [-h] --root-directory PATH [--vcl-version TEXT] [--env-name TEXT] [--model-dir PATH] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --vcl-version Version of Vocalocator to use ('vcl' or 'vcl-ssl'). --env-name Name of the Vocalocator conda environment. --model-dir Directory of the Vocalocator model. Analyze ^^^^^^^ ``generate-beh-features`` ``generate-beh-features`` is the command-line interface for calculating 3D behavioral features. .. code-block:: text usage: generate-beh-features [-h] --root-directory PATH [--head-points TEXT TEXT TEXT TEXT] [--tail-points TEXT TEXT TEXT TEXT TEXT] [--back-root-points TEXT TEXT TEXT] [--derivative-bins TEXT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --head-points Skeleton head nodes. --tail-points Skeleton tail nodes. --back-root-points Skeleton back nodes. --derivative-bins Number of bins for derivative calculation. ``generate-usv-playback`` ``generate-usv-playback`` is the command-line interface for generating artificial USV playback files. .. code-block:: text usage: generate-usv-playback [-h] --exp-id TEXT [--num-usv-files INTEGER] [--total-usv-number INTEGER] [--ipi-duration FLOAT] [--wav-sampling-rate INTEGER] [--playback-snippets-dir TEXT] required arguments: --exp-id Experimenter ID. optional arguments: -h, --help Show this help message and exit. --num-usv-files Number of WAV files to create. --total-usv-number Total number of USVs to distribute across file. --ipi-duration Inter-USV-interval duration (in s). --wav-sampling-rate Sampling rate for the output WAV file (in Hz). --playback-snippets-dir Directory of USV playback snippets. ``generate-naturalistic-usv-playback`` ``generate-naturalistic-usv-playback`` is the command-line interface for generating naturalistic USV playback files. .. code-block:: text usage: generate-usv-playback [-h] --exp-id TEXT [--num-naturalistic-usv-files INTEGER] [--naturalistic-wav-sampling-rate INTEGER] [--total-playback-time INTEGER] [--naturalistic-playback-snippets-dir-prefix TEXT] [--inter-seq-interval-dist TEXT] [--usv-seq-length-dist TEXT] [--inter-usv-interval-dist TEXT] required arguments: --exp-id Experimenter ID. optional arguments: -h, --help Show this help message and exit. --num-naturalistic-usv-files Number of naturalistic playback files to be created. --naturalistic-wav-sampling-rate Sampling rate of the naturalistic playback .WAV file in kHz. --naturalistic-playback-snippets-dir-prefix Prefix of the snippet subdirectory (the rest of its name should be "_usv_playback_snippets". --total-playback-time Total acceptable time of the playback time (in s). --inter-seq-interval-dist Distribution of inter-sequence intervals (time (s) : probability (sums to 1). --usv-seq-length-dist Distribution of USV sequence lengths (time (s) : probability (sums to 1). --inter-usv-interval-dist Distribution of inter-USV intervals (time (s) : probability (sums to 1). ``generate-usv-interval-distributions`` ``generate-usv-interval-distributions`` is the command-line interface for computing inter-vocalization-interval (inter-USV interval) distributions across one or more session-list text files and (optionally) sweeping a 1D Gaussian Mixture Model on the pooled log-inter-USV intervals. By convention, ``track_names[0]`` is treated as the male and ``track_names[1]`` as the female. Each session-list text file contains one session root directory per line; paths are run through ``configure_path`` so Mac/Linux/Windows entries resolve correctly on the host platform. ``--session-list`` may be passed multiple times to merge multiple cohorts. Both interval definitions are computed unconditionally on every run: ``s2s`` = ``start[i+1] - start[i]`` (literature standard), and ``e2s`` = ``start[i+1] - stop[i]`` (alternate; can be negative for overlapping calls and is dropped via the ``> 0`` filter, with the drop count reported per session per mode). Both definitions share the same per-session pass over the noise-filtered USV table, so there is no compute saving from omitting one. For each mode, the command writes ``ivi_intervals_.pkl`` (pooled M / F arrays plus per-session metadata), ``ivi_master_.csv`` (tidy one-row-per-inter-USV interval table), and (when ``--fit-gmm``) ``gmm_fits_results_.csv`` with per-component log-means, log-stds, weights, mixture modes, and adjacent-component decision boundaries to ``--output-directory``. .. code-block:: text usage: generate-usv-interval-distributions [-h] [--session-list PATH...] [--output-directory PATH] [--noise-col-id TEXT] [--noise-categories INTEGER...] [--fit-gmm | --no-fit-gmm] [--n-components-min INTEGER] [--n-components-max INTEGER] [--n-repeats INTEGER] [--max-modes-reported INTEGER] [--random-seed-base INTEGER] [--cv-n-folds INTEGER] [--cv-n-init INTEGER] [--gmm-n-init INTEGER] [--gmm-reg-covar FLOAT] [--tau FLOAT] [--figures-directory PATH] [--model-class {gauss,t}] [--bootstrap-lrt-B INTEGER] [--bootstrap-lrt-n-subsample INTEGER] [--bootstrap-lrt-alpha FLOAT] [--bootstrap-lrt-bonferroni | --no-bootstrap-lrt-bonferroni] optional arguments: -h, --help Show this help message and exit. --session-list Path to a text file containing session root directories (one per line). Repeatable. --output-directory Directory in which to write inter-USV interval master pickles, tidy CSVs and GMM sweep CSVs. --noise-col-id Name of the noise classification column in the USV summary CSV. --noise-categories Integer label(s) in noise_col_id that mark a USV as noise. --fit-gmm / --no-fit-gmm Whether to run the GMM sweep after inter-USV interval extraction. --n-components-min Minimum number of GMM components. --n-components-max Maximum number of GMM components. --n-repeats Number of EM-init repeats per (key, n_components). --max-modes-reported Maximum number of mixture modes recorded per fit. --random-seed-base Base seed; rep r uses random_seed_base + r. --cv-n-folds Number of K-fold splits for CV log-likelihood. Default 5. --cv-n-init EM restarts per fold during CV. Default 5. --gmm-n-init EM restarts per in-sample GMM fit. Default 10. --gmm-reg-covar Covariance regularisation passed to sklearn's GaussianMixture. Default 1e-4. --tau Posterior threshold for the LEFT component when computing inter-component decision boundaries. Default 0.5 (standard Bayes boundary). --figures-directory Directory the inter-USV interval notebook uses to save rendered figures. --model-class Mixture class. 't' = Student-t mixture (default; one heavy-tailed component absorbs the long-pause tail). 'gauss' = log-Gaussian mixture (classical). --bootstrap-lrt-B Number of parametric bootstrap replicates per pairwise LRT. Default 50. --bootstrap-lrt-n-subsample Subsample size for both observed and bootstrap fits. Default 15000. --bootstrap-lrt-alpha Significance threshold for the step-up rule. Default 0.05. --bootstrap-lrt-bonferroni Divide alpha by the number of pairwise tests before applying the step-up rule. ``generate-rm`` ``generate-rm`` is the command-line interface for calculating per-cluster neuronal tuning curves (behavioral + vocal in one pass). Behavioral tuning runs when the session's ``*_behavioral_features.csv`` exists; vocal tuning runs when the ``*_usv_summary.csv`` and synced spike data exist. Sessions missing both inputs return cleanly without producing any tuning files. .. code-block:: text usage: generate-rm [-h] --root-directory PATH [--temporal-offsets INTEGER...] [--n-shuffles INTEGER] [--total-bin-num INTEGER] [--n-spatial-bins INTEGER] [--spatial-scale-cm INTEGER] [--peth-window-seconds FLOAT FLOAT] [--peth-bin-seconds FLOAT] [--bout-quiet-seconds FLOAT] [--n-usv-min-self INTEGER] [--n-usv-min-partner INTEGER] [--n-usv-min-category INTEGER] [--include-partner-tuning | --no-include-partner-tuning] [--behavioral-min-occupancy-seconds FLOAT] [--smoothing-sd FLOAT] required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. --temporal-offsets Spike-behavior offset(s) to consider (in s). --n-shuffles Number of shuffles. --total-bin-num Total number of bins for 1D tuning curves. --n-spatial-bins Number of spatial bins. --spatial-scale-cm Spatial extent of the arena (in cm). --peth-window-seconds Pre-USV PETH window [start stop] (in s). --peth-bin-seconds PETH bin width (in s). --bout-quiet-seconds Inter-bout silence required to define a new bout (in s). --n-usv-min-self Minimum self-side USV count to compute self plots. --n-usv-min-partner Minimum partner-side USV count to compute partner plots. --n-usv-min-category Minimum per-category USV count to retain that category. --include-partner-tuning / --no-include-partner-tuning Also compute partner-side vocal tuning when partner threshold is met. --behavioral-min-occupancy-seconds Minimum behavioral occupancy per bin (in s) for that bin to be rendered in the 1D feature line plots; persisted into ``behavioral_metadata`` of each cluster pkl. --smoothing-sd Standard deviation (in bins) of the Gaussian smoothing applied to ratemaps and shuffle distributions; ``0`` disables. Visualize ^^^^^^^^^ ``generate-rm-figs`` ``generate-rm-figs`` is the command-line interface for rendering the per-cluster neuronal tuning figures from existing pkls. Each cluster gets one combined output (behavioral pages + vocal Page 1 / Page 2). The output file format and ratemap colormap are read from ``visualizations_settings.json`` under ``neuronal_tuning_figures``; compute-time knobs (``smoothing_sd``, ``behavioral_min_occupancy_seconds``) live on the analyses side and are read from each pkl's ``behavioral_metadata`` block at render time. .. code-block:: text usage: generate-rm-figs [-h] --root-directory PATH required arguments: --root-directory Session root directory path. optional arguments: -h, --help Show this help message and exit. ``generate-viz`` ``generate-viz`` is the command-line interface for making plots/animations of 3D tracked mice. .. code-block:: text usage: generate-viz [-h] --root-directory PATH --arena-directory PATH --exp-id TEXT [--speaker-audio-file PATH] [--sequence-audio-file PATH] [--animate | --no-animate] [--video-start-time FLOAT] [--video-duration FLOAT] [--plot-theme TEXT] [--save-fig | --no-save-fig] [--view-angle TEXT] [--side-azimuth-start FLOAT] [--rotate-side-view | --no-rotate-side-view] [--rotation-speed FLOAT] [--history | --no-history] [--speaker | --no-speaker] [--spectrogram | --no-spectrogram] [--spectrogram-ch INTEGER] [--raster-plot | --no-raster-plot] [--brain-areas TEXT...] [--other TEXT...] [--raster-special-units TEXT...] [--spike-sound | --no-spike-sound] [--beh-features | --no-beh-features] [--beh-features-to-plot TEXT...] [--special-beh-features TEXT...] [--fig-format TEXT] [--fig-dpi INTEGER] [--animation-codec TEXT] [--animation-codec-preset TEXT] [--animation-codec-tune TEXT] [--animation-writer TEXT] [--animation-format TEXT] [--arena-node-connections | --no-arena-node-connections] [--arena-axes-lw FLOAT] [--arena-mics-lw FLOAT] [--arena-mics-opacity FLOAT] [--plot-corners | --no-plot-corners] [--corner-size FLOAT] [--corner-opacity FLOAT] [--plot-mesh-walls | --no-plot-mesh-walls] [--mesh-opacity FLOAT] [--active-mic | --no-active-mic] [--inactive-mic | --no-inactive-mic] [--inactive-mic-color TEXT] [--text-fontsize INTEGER] [--speaker-opacity FLOAT] [--nodes | --no-nodes] [--node-size FLOAT] [--node-opacity FLOAT] [--node-lw FLOAT] [--node-connection-lw FLOAT] [--body-opacity FLOAT] [--history-point TEXT] [--history-span-sec INTEGER] [--history-ls TEXT] [--history-lw FLOAT] [--beh-features-window-size INTEGER] [--raster-window-size INTEGER] [--raster-lw FLOAT] [--raster-ll FLOAT] [--spectrogram-cbar | --no-spectrogram-cbar] [--spectrogram-plot-window-size INTEGER] [--spectrogram-power-limit INTEGER INTEGER] [--spectrogram-frequency-limit INTEGER INTEGER] [--spectrogram-yticks INTEGER...] [--spectrogram-stft-nfft INTEGER] [--plot-usv-segments | --no-plot-usv-segments] [--usv-segments-ypos INTEGER] [--usv-segments-lw FLOAT] required arguments: --root-directory Session root directory path. --arena-directory Arena session path. --exp-id Experimenter ID. optional arguments: -h, --help Show this help message and exit. --speaker-audio-file Speaker audio file path. --sequence-audio-file Audible audio sequence file path. --animate / --no-animate Animate visualization. --video-start-time Video start time (in s). --video-duration Video duration (in s). --plot-theme Plot background theme (light or dark). --save-fig / --no-save-fig Save plot as figure to file. --view-angle View angle for 3D visualization ("top" or "side"). --side-azimuth-start Azimuth angle for side view (in degrees). --rotate-side-view / --no-rotate-side-view Rotate side view in animation. --rotation-speed Speed of rotation for side view (in degrees/s). --history / --no-history Display history of single mouse node. --speaker / --no-speaker Display speaker node in visualization. --spectrogram / --no-spectrogram Display spectrogram of audio sequence. --spectrogram-ch Spectrogram channel (0-23). --raster-plot / --no-raster-plot Display spike raster plot in visualization. --brain-areas Brain areas to display in raster plot. --other Other spike cluster features to use for filtering. --raster-special-units Clusters to accentuate in raster plot. --spike-sound / --no-spike-sound Play sound each time the cluster spikes. --beh-features / --no-beh-features Display behavioral feature dynamics. --beh-features-to-plot Behavioral feature(s) to display. --special-beh-features Behavioral feature(s) to accentuate in display. --fig-format Figure format. --fig-dpi Figure resolution in dots per inch. --animation-codec The video codec for the animation writer. --animation-codec-preset The preset flag for the animation codec. --animation-codec-tune The tune flag for the animation codec. --animation-writer Animation writer backend. --animation-format Video format. --arena-node-connections / --no-arena-node-connections Display connections between arena nodes. --arena-axes-lw Line width for the arena axes. --arena-mics-lw Line width for the microphone markers. --arena-mics-opacity Opacity for the microphone markers. --plot-corners / --no-plot-corners Display arena corner markers. --corner-size Size of the arena corner markers. --corner-opacity Opacity of the arena corner markers. --plot-mesh-walls / --no-plot-mesh-walls Display arena walls as a mesh. --mesh-opacity Opacity of the arena wall mesh. --active-mic / --no-active-mic Display the active microphone marker. --inactive-mic / --no-inactive-mic Display inactive microphone markers. --inactive-mic-color Color for inactive microphone markers. --text-fontsize Font size for text elements in the plot. --speaker-opacity Opacity of the speaker node. --nodes / --no-nodes Display mouse nodes. --node-size Size of the mouse nodes. --node-opacity Opacity of the mouse nodes. --node-lw Line width for the mouse node connections. --node-connection-lw Line width for mouse node connections. --body-opacity Opacity of the mouse body. --history-point Node to use for the history trail. --history-span-sec Duration of the history trail (s). --history-ls Line style for the history trail. --history-lw Line width for the history trail. --beh-features-window-size Window size for behavioral features (s). --raster-window-size Window size for the raster plot (s). --raster-lw Line width for spikes in the raster plot. --raster-ll Line length for spikes in the raster plot. --spectrogram-cbar / --no-spectrogram-cbar Display the color bar for the spectrogram. --spectrogram-plot-window-size Window size for the spectrogram plot (s). --spectrogram-power-limit Power (min/max) for spectrogram color scale. --spectrogram-frequency-limit Freq. (min/max) for spectrogram y-axis (Hz). --spectrogram-yticks Y-tick position for spectrogram. --spectrogram-stft-nfft NFFT for the spectrogram STFT calculation. --plot-usv-segments / --no-plot-usv-segments Display USV assignments on the spectrogram. --usv-segments-ypos Y-axis position for USV segment markers (Hz). --usv-segments-lw Line width for USV segment markers. Set up and use the CLI on the *Spock* cluster ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ In order to exploit the full functionality of *usv-playpen*, one should install subsidiary uv (sleap) or conda packages (das, vcl-ssl). To install these on the *Spock* cluster, you can use the commands below (NB: the conda version is arbitrary, but you should note down which one you used): .. code-block:: bash $ uv tool install --python 3.11 "sleap-nn[torch]==0.1.2" --torch-backend cu118 .. code-block:: bash $ module load anacondapy/2024.02 $ conda init bash .. code-block:: bash $ conda create python=3.10 das=0.32.2 -c conda-forge -c nvidia -c ncb -n das -y .. code-block:: bash $ conda create --name vcl-ssl python=3.10 torchaudio packaging -y $ git clone https://github.com/Aramist/vocalocator-ssl.git && cd vocalocator-ssl $ conda activate vcl-ssl && pip install -e . Having set up these environments, you can set up directories with bash scripts in /src/other/DAS, /src/other/HPSS, /src/other/SLEAP and /src/other/USV_PLAYPEN and run them to expedite your data processing or analysis.