app
RHS Preview
RHS Preview lets you inspect an Intan RHS recording without loading the entire waveform into memory. Use it to check channels, move through short waveform windows, choose the channels to plot, and prepare protocol or file-filter JSON for later analysis.
Open RHS Preview
From the LabKit launcher, select RHS Preview and choose Open. From a source checkout, run:
labkit_RHSPreview_app
Preview A Recording
- On Setup, choose one
.rhsfile. - The app reads the header, lists the amplifier channels, selects up to eight channels, and displays a short waveform window.
- Drag Pan to move the window through the recording. Scroll over the plot to change the displayed duration around the pointer.
- Edit the plotted interval on the graph when you need to mark a smaller region. Choose Zoom to ROI to make that interval the current window.
- Choose Refresh Preview to reread the current window from disk.
Only the displayed window is decoded. This keeps navigation practical for long recordings and does not change the source file.
Choose Channels And Roles
On Protocol, the channel table contains four columns:
| Column | Purpose |
|---|---|
| Plot | Show or hide this channel in the stacked preview |
| Role | Assign its purpose in the experiment |
| Label | Enter a readable name for plots and later analysis |
| Channel | Intan channel name read from the recording |
You may open an existing protocol JSON before editing the table. Choose Save Protocol Draft to save the current assignments. A protocol is recommended for response analysis because it makes the stimulation, reference, and response channels explicit.
Prepare A File Filter
Use Add RHS files or folder to collect recordings for a later analysis. The file table lets you assign a label and comment to each recording. Remove individual entries or clear the list as needed, then choose Save Filter Record.
The filter record identifies the selected files and their labels. It does not copy the RHS recordings or contain decoded waveforms.
Saved Project Sources
The preview recording, optional protocol, and filter recordings are saved as distinct portable project sources. Older projects that stored these sources separately are combined automatically on load.
Project And Session State
The durable project stores portable references for one preview recording, one optional protocol, and an ordered collection of filter recordings. It also stores preview settings, channel-role drafts, manual filter labels/comments, and compact export records.
Header indices, decoded preview windows, table presentation state, current ROI and window position, status text, and log messages are transient session data. They are reconstructed from the project sources when a project is opened.
Review Recording Information
The Review tab shows the indexed duration, channel counts, current window, selected channels, and recent action. The preview plot uses a separate vertical band for each selected channel so traces do not obscure one another.
Read An RHS Window Without The App
[index, status] = labkit.rhs.indexFile("recording.rhs");
assert(status.ok, status.message)
options = struct( ...
"family", "amplifier", ...
"channels", ["A-000", "A-001"], ...
"timeRangeSec", [1.0 1.5]);
[window, status] = labkit.rhs.readWindow("recording.rhs", options);
assert(status.ok, status.message)
indexFile reads recording metadata. readWindow returns the selected time range together with the sample rate and channel information needed to interpret the waveform matrix.
Errors And Limitations
- RHS Preview currently displays amplifier channels.
- A channel listed in a protocol must exist in the selected recording.
- A window is limited to the indexed recording duration; requests outside that range are clamped.
- Short reads reduce memory and waiting time, but repeated navigation still requires disk access.
- The app is for inspection and preparation. Use Nerve Response Analysis for stimulus detection and CAP measurements.
Related Functions And Apps
labkit.rhs.indexFilelabkit.rhs.readWindowrhs_preview.analysisRun.readPreviewWindow- Nerve Response Analysis
- RHS library
Functions And API
Open a function for exact MATLAB syntax, arguments, outputs, behavior, and source.
| Function | Purpose |
|---|---|
rhs_preview.analysisRun.readPreviewWindow | Read the requested RHS preview window from app state. |
Change history
- 2026-07-20 - App actions require explanatory hover helpfeat | compatible
- 2026-07-19 - App SDK explicit contract replaces the retired UI runtimerefactor | breaking
- 2026-07-17 - Explicit layout action contractrefactor | compatible
- 2026-07-16 - Core, neurophysiology, and ECG project validation ownershiprefactor | compatible
- 2026-07-16 - Runtime-owned session defaults across App familiesrefactor | compatible
- 2026-07-16 - RHS Preview separates source roles from reference mechanicsrefactor | compatible
- 2026-07-16 - UI 7 public runtime boundaryrefactor | breaking
- 2026-07-16 - Canonical role-based source collectionsrefactor | compatible
- 2026-07-15 - Runtime V2 lifecycle ownership across the app fleetrefactor | breaking
- 2026-07-06 - UI 5 facade redesign, app migration, and plot refreshrefactor | breaking
- 2026-07-03 - CSC export and viewport policyfeat | compatible
- 2026-07-03 - UI groups migrationrefactor | compatible
- 2026-07-03 - Declarative app runtimerefactor | compatible
- 2026-07-01 - Debug sample packsfeat | compatible
- 2026-06-30 - Migration helper cleanuprefactor | compatible
- 2026-06-30 - Close guards and caught-exception diagnosticsfeat | compatible
- 2026-06-28 - App diagnostics and hardened UI workflowsfeat | compatible
- 2026-06-24 - File-panel migrationrefactor | breaking
- 2026-06-23 - Version metadata baselinefeat | compatible