# README
CLI Prepare for StreamDeck
Overview
This CLI tool is designed to help prepare media files for use with StreamDeck, a customizable keyboard that allows users to trigger actions and display custom icons. The application provides a user-friendly interface to process and organize media files (images and videos) for StreamDeck integration.
Features
- Interactive CLI interface built with Bubble Tea
- Media folder preparation for StreamDeck
- Image and video thumbnail generation
- Customizable border colors for thumbnails
- OSC (Open Sound Control) path configuration
- Support for multiple media types
Main Functionality
Media Preparation
The tool offers the following key functions:
-
Prepare Media Folder:
- Processes images and videos in a specified directory
- Generates thumbnails with configurable border colors
- Creates pressed state images for interactive buttons
- Generates a JSON configuration file for StreamDeck integration
-
Echo Command:
- A placeholder for future development
- Can be used to test the CLI tool's functionality
Configuration
The application uses a configuration system that allows you to:
- Set border colors and widths for thumbnails
- Configure OSC (Open Sound Control) command generation with multiple options:
- Define multiple OSC prefix options with different behaviors
- Support for both constant and serial argument types
- Configurable base values for arguments
- Optional index augmentation for command generation
The configuration is stored in a config.json
file with the following main settings:
border_color
: Hex color code for thumbnail borders (default: "#FFFFFF")border_width
: Width of the thumbnail borders in pixels (default: 5)osc_prefix_options
: Array of OSC prefix configurations:name
: Display name for the optionprefix
: The OSC command prefix (e.g., "/streamdeck/option_1")argument_type
: Either "constant" or "serial" for different command generation patternsargument_base
: Starting value for argumentsaugment_index
: Boolean to control index augmentation in command generation
Requirements
- Go 1.16+
- FFmpeg (for video thumbnail extraction)
Installation
go get github.com/buffos/cli-prepare-for-streamdeck
go build
Usage
Run the application and select from the main menu:
- Prepare Media Folder
- Echo Command
- Quit
Dependencies
- Bubble Tea (github.com/charmbracelet/bubbletea)
- Lipgloss (github.com/charmbracelet/lipgloss)
- Imaging (github.com/disintegration/imaging)
License
MIT License
Contributing
Contributions are welcome! Please submit pull requests or open issues on the GitHub repository.
# Packages
No description provided by the author
# Constants
No description provided by the author
# Structs
DirectoryInfo provides more details about a directory.
No description provided by the author
No description provided by the author
No description provided by the author