Features guide
Detailed reference. For the “what is RECLION” pitch, see Product overview. For Q&A, see the FAQ. For everything below, the authoritative source is the in-repo features.md; this page is the customer-facing summary.
Launch
- Splash windowon app start: a 320 by 320 frameless transparent always-on-top card with the RECLION lion plus wordmark and a pulsing orange record dot. Hides the encoder probe and main-window load. Minimum display 1.2 seconds, hard cap 2.5 seconds. Excluded from screen capture so it can’t accidentally land in a hot-key-started recording.
- App user model ID (
com.jefreyland.reclion) is set so Windows pins the app to its own taskbar group instead of “Generic Electron”. - Native window title:
RECLION (Early Access), visible in alt-tab and the taskbar. The in-app titlebar shows just the lion mark plus RECLION wordmark; “Early Access” lives only in the OS-level title.
Capture
- Full-display capture with multi-monitor support. A display selector appears when more than one is detected.
- Window capture with a thumbnail picker covering all open windows (16:9 thumbnails, two-column modal, scrollable).
- Source aspect ratio preserved. Recording a non-16:9 window (Android emulator portrait, half-screen browser, ultra-wide monitor) keeps the captured shape instead of stretching it. The chosen Resolution becomes a max bound; output never upscales beyond source dims.
- Mid-recording window resize handled. If the captured window is maximised mid-session, the canvas is locked at start dimensions but each frame is letterboxed or pillarboxed to fit instead of stretching. The exported MP4 stays consistent dimensions throughout.
- 3-second countdowndisplayed full-screen on the target display before recording starts, so you’re never caught mid-blink.
- Pause and Resume with audio plus video timestamp re-base. The resulting file is contiguous, with no silent gaps and no A/V drift.
- Auto-stopon system suspend, shutdown, or app quit, so a closed laptop lid doesn’t lose your recording.
- Recovery prompt on next launch if a previous session left an orphaned temp file.
Audio
- Microphone capture via standard Windows audio APIs (
getUserMediaplusMediaStreamTrackProcessor). - Selectable mic device in Settings or the idle-view dropdown.
- AAC encoding at 48 kHz, mono, 128 kbps.
- Live mic level meter on the floating recording bar.
- Mute toggle mid-recordingpreserves silence in the timeline (doesn’t compress out the muted period).
- Audio timestamps rebased through pause, so audio stays in sync with video after pause and resume.
- System audio (desktop sounds): shipped. Set Audio to System or Both; RECLION uses Windows WASAPI loopback, no virtual audio cable required.
Webcam overlay
- Three modes: live Webcam, static Picture, or None.
- Two layouts for live Webcam, swappable mid-recording: Circle (floating overlay, the default) or Fullscreen (the webcam stream IS the recording). The toggle lives in the recording bar, so you can flip between a screen demo and a talking-head intro without stopping the recording.
- Live circular overlay composited into the recorded frames.
- Picture mode lets you upload a still image (PNG, JPG, GIF, WebP).
- Selectable camera device.
- Permission isn’t requested until you pick Camera mode (no surprise prompts).
- Drag the circle anywhere on screen; it snaps to corners (top-left/right, bottom-left/right).
- Live position tracking. Dragging the floating webcam window during a recording streams the new position to the compositor every frame, so the recorded avatar follows your drag in real time instead of staying glued to its starting position.
- Live preview window is content-protected, so the recorded video shows only the worker-composited circle (no double-avatar artefact).
Cursor effects
- Mouse-highlight halo. A soft gold gradient ring around the cursor, visible in the live overlay AND composited into the recording.
- Cursor centre dot.A small solid gold dot at the exact pointer location. Doubles as a click-target marker and a hard obscure for any system cursor that bleeds through Electron’s screen capture.
- Click ripple. Two concentric eased gold rings expand outward over about 500 ms on every left-click. Rendered live AND in the worker, so what you see matches what gets exported.
Recording controls
- Floating recording bar. Always-on-top, frameless, content-protected. Hosts every mid-session control:
- Red dot plus pulsing timer
- Pause, Resume, and Stop (three explicit buttons, not a toggle, so the active state is unambiguous)
- Restart: discards the current take and immediately starts a new one with the same config (no preview, no temp file kept, no source picker)
- Toggle webcam (Webcam, Picture, None)
- Layout swap (Circle ↔ Fullscreen)
- Mic mute (gain swap, doesn’t drop frames)
- Screenshot (instant PNG write, doesn’t interrupt recording)
- Hotkeys:
Ctrl+Shift+Rstart,Ctrl+Shift+Sstop. Global, working from anywhere on Windows.
Editing
- In-app preview of the just-recorded clip via Blob URL (works identically in dev and packaged builds).
- Native HTML5 player with full timeline scrubbing.
- Edit Timeline, a real editor surface capped at 50vh so the preview canvas can never collapse beneath it. Auto-spaced tick marks, gold trim track edge-to-edge with bumper handles, one row per annotation with colored bands positioned by source-time start and end.
- Trim Start and End, a dual-handle gold slider below the video. Drag the handles or click the track to snap the nearer handle. Reset button restores the full range. The preview itself loops inside the trim window so you hear and see exactly what gets exported.
- Internal cuts. Split (
Stwice to mark a range), Remove Section (Del), Undo (Ctrl+Z). Cuts render as dark dashed bands on the timeline; click a cut to restore it. - Draggable playhead. The orange playhead circle is grabbable; drag to scrub through the video. Snaps out of cut bands automatically.
- Variable speed playback and export at 1.0×, 1.25×, 1.5×, 1.75×, 2.0×, with audio pitch preserved.
- Live duration label updates with trim and speed:
Trimmed 1:16 · @1.5× = 0:50. - Window grows for preview. When entering the preview view from a recording, the main window auto-grows so the right column (Playback, Format, Annotations, Export pair, Record Again) is fully visible. Manually-resized or maximised windows are left alone.
Annotations (post-recording, baked in at export)
- Three tool types:
- Blur: drag a rectangle over a region; ffmpeg
boxblur=10redacts the area in the exported video. - Text: click on the preview, type, press Enter to commit. White text on a translucent black pill via ffmpeg
drawtext. Empty input is silently dropped. - Arrow: drag from tail to tip. Brand-orange line plus arrowhead with circular grab handles on each end. Rasterized to a transparent PNG at export and overlaid via ffmpeg.
- Blur: drag a rectangle over a region; ffmpeg
- Auto-select on creation. A fresh annotation is immediately selected so its delete and resize affordances are visible without a second click.
- Click-to-select model.Affordances (delete, blur corner handles, arrow endpoint dots) only appear on the selected annotation; hovering doesn’t auto-show them, so the user never thinks the cursor accidentally selected something.
- Per-annotation time ranges.Every annotation has an optional start/end range in source-time. Default is “always on”. Drag a band’s left or right edge in the edit timeline to constrain it. The overlay reflects the range live; ffmpeg’s
enable='between(t, X, Y)'clause does the same on the export side. - Inline rename.Click the pencil icon inside any band to swap its label (“Blur 1”) for an editable input. Enter or blur commits; Escape cancels. Custom names persist on the annotation; the export pipeline ignores them.
- Single-track timeline UI. One row per annotation, 30 px tall with 15 px breathing room between rows so each band reads as a distinct strip. Label, time chip, rename, and trash all live INSIDE the band, so dragging it slides the whole unit along the timeline. Gold start and end bumpers on every band.
- SVG-only icons. Every glyph in the editor (band type marker, edit pencil, trash, splash button, mode toggles) is inline SVG with
currentColorstrokes. No emoji or unicode glyphs anywhere in the rendered UI, so icons stay sharp at any zoom and respect the theme. - Type-tinted blocks.Purple Blur, pink Text, orange Arrow. Time chip reads “0:00 to 0:03” when ranged, “Always” when unbounded.
- Delete. Click the trash icon inside a band, OR select an annotation and press
DeleteorBackspace. With nothing selected,Deletefalls through to the existing edit-timeline cut shortcut so the two never collide. - Coordinates are stored as 0..1 fractions of the source video resolution; annotations survive any future Resolution change.
- Cleared by Record Again or after a successful export.
Export
- WebCodecs
VideoEncoderwith hardware acceleration preference: NVIDIA NVENC, Intel Quick Sync, AMD AMF, with software fallback (libx264). - Auto codec and level selection.The encoder picks the right H.264 profile level for the requested resolution (Level 4.0 to 5.2). 1440p and 4K work because the level isn’t hardcoded.
- Resolutions: 720p, 1080p, 1440p, 4K.
- Frame rates: 30 fps, 60 fps.
- Title prompt modal. Clicking Export…asks “Name your recording” with a live slugified filename preview (
"Blog Tutorial"→blog-tutorial.mp4). - Slug rules: lowercase, strip diacritics, runs of non-alphanumerics become hyphens, trim edges, hard cap 80 chars.
- Collision handling. Re-exporting with the same title appends
_(2),_(3), and so on, so prior exports aren’t silently overwritten. - Frame-accurate trim via FFmpeg
-ss <start> -t <duration>(input-relative seek). - Fast-copy path for 1.0× speed with no trim: a straight
copyFile, near-instant. - Re-encode path for any speed other than 1.0× OR any trim, using the hardware-accelerated H.264 encoder probed at startup, with libx264 fallback if the accelerator hits a driver bug mid-encode.
- Live progress bar. Gold-amber fill with
42% · 0:18 left. Driven by parsing FFmpeg’sout_time_us, throttled to 5 updates per second. - Detailed failure reasons. Non-zero FFmpeg exit captures the last ~500 chars of stderr and surfaces them in the toast.
- “Show in folder” link in the Saved toast lands you at the new file in Explorer.
Screenshot
- Mid-recording screenshot. Saves a PNG of the current composited frame to
~\Videos\Reclion\screenshots\immediately. Doesn’t interrupt the recording. - Camera shutter effect. White flash, body scale, synthesized click sound (WebAudio, no asset file).
UI
- Frameless dark window with custom titlebar (minimize, maximize, close, RECLION wordmark, lion mark, Settings).
- Warm-charcoal palette with lion-gold accent and orange-red record indicator (
#F26B1F, the headphone-dot color in the lion mark, distinctive vs pure red but still reads as “REC”). - Idle view: webcam circle, profile-mode toggle (Webcam, Picture, None), Source-type tabs (Screen, Window), Display selector (multi-monitor only), mic and camera dropdowns, Record button, hotkey hint.
- Preview view: video player, duration label with effective-time math, trim slider, speed pills, format dropdown, Export… and Export and Email buttons, Record Again, progress bar, status line.
- Source picker: 16:9 thumbnails in 2 columns at full modal width.
- Settings modal: Resolution, Frame rate, Quality (Low, Standard, High pill row spanning the value column, with a live caption such as “~4 Mbps at 720p / 30 fps”), Save folder picker, Mouse highlight toggle, Encoder name, Cache clear and reload, Open log folder.
- Toasts (bottom-center) with optional action buttons (e.g., Open logs on a failure).
- Footer with Privacy Policy, Terms and Conditions, and About links.
Privacy & data
- Recordings: in
~\Videos\Reclion\videos\. Never uploaded. - Screenshots: in
~\Videos\Reclion\screenshots\. Never uploaded. - Settings: in
%APPDATA%\reclion\. Local only. - Diagnostic log:
%APPDATA%\reclion\logs\reclion-YYYY-MM-DD.log. Sent to us only if you choose to attach it to a support ticket. - No telemetry, no analytics, no clickstream tracking.
- Network calls: licence check (every ~2 weeks); Export and Email (
mailto:opens your client); footer links (open the browser, whitelisted toreclion.com).
Diagnostics & reliability
- On-disk log file mirrors
console.*output from every renderer (main, bar, webcam, countdown, cursor overlay, splash). - Crash capture.
uncaughtException,unhandledRejection,render-process-gone,child-process-gone, andpreload-errorare all written to the log. - Worker-side log relay so encoder and muxer events survive an app close.
- Recovery from 0-byte recordings. Worker reports
failedinstead of producing a blank preview. - Defensive logging wrappers.Recording controls (Pause, Resume, Stop) post to the worker BEFORE logging, so a stale preload bridge can’t break recording.
- Detailed failure surfacing. When a recording fails, the toast shows the underlying cause and offers an Open logs button.