feat: add keystroke captions and overlays for recorded videos#719
feat: add keystroke captions and overlays for recorded videos#719pkazmier wants to merge 5 commits into
Conversation
|
I’m more than happy to update the README as well, but before doing so, I wanted to wait to see if there was interest. It took almost 4 hours to just write the demos and PR text itself. |
Introduces a caption system that burns keystroke overlays into video output using ASS subtitles via ffmpeg. Captions are configured through the tape DSL with Set commands (CaptionFont, CaptionFontSize, CaptionStyle, CaptionAlignment, etc.) and support "vim" (plain text) and "icon" (requires a nerd font) key rendering styles, customizable colors/positioning, and an inactivity timeout.
62b8ac8 to
f288da1
Compare
|
I've also incorporated an DemoOverlayOverlay with MultilineOverlay Title Tucked into CornerOverlay without CaptionsOf course you can use Overlays without captions: |
Introduce a new `Overlay[@duration] "text"` tape command that displays styled text overlays at specific points during playback, independent of keystroke captions. Includes configurable Set options for font, color, alignment, margins, box opacity/padding, and multiline support via \N. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
f288da1 to
7eee728
Compare
|
Can Captions be turn off and on between other commands? |
Currently, they are disabled in |
16b8751 to
58709f6
Compare
I've just updated my PR, which adds Here is a demo showing selective captioning as well as an overlay title: |
|
Comments for the maintainers:
Thanks for your consideration. |
This change eliminates the global "Set Caption true" setting. This was used to enable captions, but it was global. Feedback from another user suggested it would be nice to be able to enable and disable captioning selectively. Thus this change.
58709f6 to
443981b
Compare
|
If this gets merged, I have another one almost ready to go that adds audio capabilities. Teaser: set-caption-with-audio-overlay-title.mp4 |





Introduces a caption system that burns keystroke overlays into video output using ASS subtitles via ffmpeg. Captions are enabled / disabled via
CaptionOnandCaptionOffcommands. Captions are configured viaSetcommands (CaptionFont,CaptionFontSize,CaptionKeyStyle,CaptionAlignment, etc.) and support "vim" and "icon" key rendering styles, customizable colors/positioning, and controls for max keys shown as well as an inactivity timeout.Caption Settings
CaptionFont
CaptionFontSize
CaptionMaxKeys
CaptionInactivityTimer
CaptionFontColor
CaptionHighlightColor
CaptionKeyStyle
CaptionBoxColor
CaptionBoxOpacity
CaptionBoxPadding
CaptionAlignment
I have demos for all of the positions as well: top-left, top-center, top-right, middle-left, middle-center, middle-right, bottom-left, bottom-center, and bottom-right.
CaptionMargin