Skip to content

mattwyd/mattrotclips

Repository files navigation

TikTok Brainrot Generator

This project generates engaging short videos from text stories. It features a web-based UI for easy video creation, allowing users to input stories, select background videos, choose background music, and pick from a variety of TikTok-style Text-to-Speech (TTS) voices. The final videos are saved directly to your local machine.

Created by egebese.

Acknowledgements: This project is a significantly modified version of the original reddit-shorts-generator by gavink97. While the core functionality has been adapted for local use with different TTS and story input methods, and now includes a Web UI, much of the foundational video processing logic and project structure is derived from this original work.

Key Features

  • Web-Based User Interface: Easily create videos through a user-friendly web page.
  • Flexible Input:
    • Enter story titles and content directly in the UI.
    • Select background videos from your resources/footage/ directory, with thumbnail previews.
    • Choose background music from your resources/music/ directory, with audio previews.
    • Select from a wide range of TikTok TTS voices.
  • Local Video Output: Saves generated videos to the generated_shorts/ directory.
  • TikTok TTS Narration: Utilizes the mark-rez/TikTok-Voice-TTS library for dynamic and natural-sounding text-to-speech.
  • Customizable Aesthetics:
    • Fonts: Uses "Montserrat ExtraBold" for the title image text and video subtitles by default.
    • Background Video Looping: Background videos will loop if their duration is shorter than the narration.
    • Custom Title Image: Allows for a user-provided template (resources/images/reddit_submission_template.png) where the story title is overlaid.
  • Platform Independent: Core functionality does not rely on direct integration with external platforms like Reddit or YouTube APIs for content fetching or uploading.

#TOOD

  • validate end to end speaker detection and framing autoclip tab this mean we need to be changign the crop to fit the active point of attion / speaker roughly

  • fix this ndex.js:12747:17) at JSXParserMixin.parseBlockOrModuleBlockBody (/Users/mattproctor/Documents/mattrotclips/node_modules/@babel/parser/lib/index.js:13316:61) 7:19:47 p.m. [vite] Pre-transform error: /Users/mattproctor/Documents/mattrotclips/src/screens/AutoClipper.jsx: Unexpected token (483:2)

    481 | // ── Phase: selecting ────────────────────────────────────────────────────────── 482 | function SelectingPhase({ clips, videoTitle, videoDuration, heatmap, url, outFolder, onProcess, onReset }) {

483 | const videoId = extractYtId(url) | ^ 484 | const [selected, setSelected] = useState(() => new Set(clips.map((_, i) => i))) 485 | const [previews, setPreviews] = useState({}) 486 | const [outDir, setOutDir] = useState(outFolder || localStorage.getItem('ac_last_outfolder') || '~/Movies/Shorts')

  • add a caption toggle deafults to true for autoclip tab

  • show the view retention heatmap visually on the clip bars (if available)

  • add options for higher quality clip outputs the auto clip tab

  • the previw should be a littele phone of the clip webplaying the youtubethinkg

  • maybe scrape youtube comments for clip parts?

  • change the clip review section to instread of linking to finder show clips in line with a button to delete or a button post to youtube which will use our yotube auth to post it

  • the auto clip should have features to cut silences and speed up audio slightly

  • some way to adjust the captions font, color, sizing with a to scale preview on a tiktok aspect ratio thumbanil

About

matts brainrot gen

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors