{"id":18107788,"url":"https://github.com/ar10dev/lyrics-to-video","last_synced_at":"2025-08-20T20:33:46.553Z","repository":{"id":247298420,"uuid":"825480038","full_name":"AR10Dev/Lyrics-to-Video","owner":"AR10Dev","description":"A simple lyric video generator written in Rust","archived":false,"fork":false,"pushed_at":"2024-07-10T09:33:33.000Z","size":27,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-31T23:14:46.423Z","etag":null,"topics":["autoedit","editing","lyrics","music","video"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AR10Dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-07T22:29:01.000Z","updated_at":"2024-07-10T23:52:41.000Z","dependencies_parsed_at":"2024-07-10T11:17:28.301Z","dependency_job_id":"cc6c4ce3-de90-4e70-a319-9f2f841a88da","html_url":"https://github.com/AR10Dev/Lyrics-to-Video","commit_stats":null,"previous_names":["ar10dev/lyrics-to-video"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AR10Dev%2FLyrics-to-Video","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AR10Dev%2FLyrics-to-Video/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AR10Dev%2FLyrics-to-Video/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AR10Dev%2FLyrics-to-Video/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AR10Dev","download_url":"https://codeload.github.com/AR10Dev/Lyrics-to-Video/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230454447,"owners_count":18228393,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autoedit","editing","lyrics","music","video"],"created_at":"2024-10-31T23:13:32.147Z","updated_at":"2025-08-20T20:33:46.521Z","avatar_url":"https://github.com/AR10Dev.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rust Lyric Video Generator\n\nThis project is a simple lyric video generator written in Rust. It takes an audio file and a set of lyrics, and generates a video with the lyrics displayed in sync with the audio.\n\n## 🚀 Features\n\n- Generate lyric videos from audio files and text\n- Customizable video resolution and frame rate\n- Simple black background with white text\n- Uses ffmpeg for final video compilation\n\n## 📋 Prerequisites\n\nBefore you begin, ensure you have met the following requirements:\n\n- Rust and Cargo installed (https://www.rust-lang.org/tools/install)\n- ffmpeg installed and available in your system PATH\n- A TrueType font file (.ttf) for rendering text\n\n## 🛠️ Installation\n\n1. Clone this repository:\n   ```\n   git clone https://github.com/AR10Dev/Lyrics-to-Video.git\n   cd Lyrics-to-Video\n   ```\n\n2. Build the project:\n   ```\n   cargo build --release\n   ```\n\n## 📝 Usage\n\n1. Place your audio file (MP3 format) in the project root and name it `audio.mp3`.\n2. Place your font file (TTF format) in the project root and name it `font.ttf`.\n3. Create a `config.json` file in the project root with the following structure:\n   ```json\n   {\n     \"width\": 1920,\n     \"height\": 1080,\n     \"fps\": 30,\n     \"font_height\": 60.0,\n     \"audio_path\": \"audio.mp3\",\n     \"font_path\": \"font.ttf\",\n     \"output_directory\": \"output_frames\",\n     \"lyrics\": [\n       {\n         \"text\": \"First line of lyrics\",\n         \"start_time\": 0.0,\n         \"end_time\": 2.0\n       },\n       {\n         \"text\": \"Second line of lyrics\",\n         \"start_time\": 2.0,\n         \"end_time\": 4.0\n       }\n       // Add more lyrics...\n     ]\n   }\n   ```\n4. Run the program:\n   ```\n   cargo run --release\n   ```\n\nThe program will generate a series of PNG frames in the `output_frames` directory and then use ffmpeg to combine these frames with the audio into a final MP4 video named `output_video.mp4`.\n\n## ⚙️ Configuration\n\nYou can modify the following settings in `config.json`:\n\n- Video resolution: Adjust `width` and `height` fields\n- Frame rate: Modify the `fps` field\n- Font size: Change the `font_height` field\n- Audio file path: Update the `audio_path` field\n- Font file path: Update the `font_path` field\n- Output directory: Change the `output_directory` field\n- Lyrics: Add or modify the lyrics and their timings in the `lyrics` array\n\n## 📦 Dependencies\n\nThis project uses the following Rust crates:\n\n- `ab_glyph` for font handling\n- `image` for image creation and manipulation\n- `imageproc` for drawing text on images\n- `rodio` for audio file parsing\n\n## 🤝 Contributing\n\nContributions, issues, and feature requests are welcome! Feel free to check [issues page](https://github.com/AR10Dev/Lyrics-to-Video/issues).\n\n## 📜 License\n\nThis project is [GPL-3.0](https://choosealicense.com/licenses/gpl-3.0/) licensed.\n\n## 🙏 Acknowledgements\n\n- [Rust](https://www.rust-lang.org/)\n- [ffmpeg](https://ffmpeg.org/)\n- All the awesome Rust crate developers\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Far10dev%2Flyrics-to-video","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Far10dev%2Flyrics-to-video","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Far10dev%2Flyrics-to-video/lists"}