Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pj8912/merge-for-shorts

Application to merge two videos suited for youtube shorts, tik tok or instagram reels, built using Flask and Moviepy in python
https://github.com/pj8912/merge-for-shorts

automation family-guy flask images instagram merge-videos python quake3 reels tik-tok vertical-farming video-editing youtube-shorts

Last synced: 2 months ago
JSON representation

Application to merge two videos suited for youtube shorts, tik tok or instagram reels, built using Flask and Moviepy in python

Awesome Lists containing this project

README

        

# Merge For Shorts

![mergeforshorts](https://github.com/user-attachments/assets/f2cdc6cb-3151-49e0-83d4-ca72e91a56b6)

## 🤝 Support
If you like the project please do consider supporting me 🙏

Buy Me a Coffee at ko-fi.com

## ⚙️ Functionalities
- Crop a video to shorts format
- Merge videos for shorts

## Requirements
- This requires `python 3.9` or higher versions
- `ffmpeg` package

## ⬇️ Installation

### Clone repo
```
git clone https://github.com/pj8912/merge-for-shorts.git
```
Create and activate your `venv` (I use [myenv](https://github.com/pj8912/myenv))

### Install requirements
```shell
pip install -r requirements.txt
```

## 🏃 Start

- To run the Flask application, you can use the following command:
```shell
python app.py
```
- Visit http://localhost:5000

## Working
- This will start the Flask development server and you can access the application by visiting `http://localhost:5000` in your web browser.

- **Crop to shorts** : Upload a video and convert to shorts format `9:16` with just a click!

- **Merge two videos** : The format of the video is any movie or tv series clip at the top and random videogame or life hacks videos at the bottom. Uploaded video file sits at the top and video game at the bottom which is in the `uploads` folder - `quake_short.mp4` , where two of them are combined to form a single video file which is <= `1 minute`. If the video uploaded by the user is greater than a minute it will be reduced to a minute. The progress can be seen on the terminal.

## Example
- Check out this [Youtube](https://www.youtube.com/shorts/vQst9hvQXKI) video
- `Family Guy` video at the top and `quake` video at the bottom

## 📸 App Screenshots

### Crop video to shorts Format
![Alt text](image-2.png)

### Merge For Shorts

![merge-page](image-3.png)

## Configuration

- You can configure the application by modifying the config dictionary in the `app.py` file. You can set the location and name of the folder where uploaded files will be saved, as well as the maximum allowed file size.

- Adjust the length of the output clips for either `crop` or `merge` in `app.py`. As mentioned above, the merged-videos output is within a minute. No length limit set for Crop-to-shorts feature.

## Contributors

- [jp](https://github.com/pj8912)

## License
This project is licensed under the Apache License Version 2.0.

## Contribution

- The goal of this project is to convert individual videos to shorts format and automate the process of making vertical `shorts` videos of a certain kind.

- Contributions are always welcome, no matter how large or small. Pull requests are always welcome, and I'll do my best to do reviews as fast as I can.

In the case of a bug report, bugfix or a suggestions, please feel very free to open an issue too.