π€ A Powerful Telegram Video Editor Bot.π οΈAdvance Features like Video Merging, Video Trimming, Video Hevc/Fast Compressor, Video Renamer, Video Screenshot Generator, Video Watermark Adder, Video Encoder, Video Subtitle Extractor Adder, Video Audio Extractor Adder, Video Convert file/Video, Video Archiver (tar,rar,Zip),Archive Extractor, Direct Download link Generator,Url Uploader html (mx-player,Zee 5,Hotstar,Voot,Sony etc.), Video Metadata, Video Information, With Permanent Thumbnail Support π
- Video Merger.
- Video Trimmer.
- Video Compressor Hevc/Fast.
- Video Renamer.
- Video Screenshot Generator.
- Video Watermark Adder.
- Video Encoder.
- Video Subtitle Extractor/Adder.
- Video Audio Extractor/Adder
- Video Archiver (tar,rar,Zip)
- Archive Extractor
- Direct Download link Generator
- Url Uploader html (mx-player,Zee 5,Hotstar,Voot,Sony etc.)
- Video Metadata
- Video Storage Info
- Permanent Thumbnail Support
- Broadcast Support
- Mongodb Added
- Log Channel Added
- Python 3.11 or higher
- FFmpeg installed on your system
- MongoDB (local or cloud)
- Telegram Bot Token (get it from @BotFather)
- Clone the repository:
git clone https://github.com/Doctorstra/
Video-Editor-Bot-V22.git
cd all-in-one- Configure environment variables:
cp .env.example .env
# Edit .env and add your credentials- Run with Docker Compose:
docker-compose up -dThat's it! Your bot is now running! π
- Install dependencies:
pip install -r requirements.txt- Install FFmpeg:
- Ubuntu/Debian:
sudo apt-get install ffmpeg - macOS:
brew install ffmpeg - Windows: Download from ffmpeg.org
- Set up MongoDB:
# Install MongoDB locally or use MongoDB Atlas (cloud)- Configure the bot:
cp .env.example .env
# Edit .env with your credentials- Run the bot:
python bot.pyCreate a .env file with the following variables:
# Required
BOT_TOKEN=your_telegram_bot_token
API_ID=your_telegram_api_id
API_HASH=your_telegram_api_hash
MONGODB_URI=mongodb://localhost:27017
# Optional
DATABASE_NAME=video_editor_bot
LOG_CHANNEL_ID=your_log_channel_id
ADMIN_IDS=123456789,987654321
MAX_FILE_SIZE=2000-
Bot Token: Message @BotFather on Telegram
- Send
/newbot - Follow the instructions
- Copy the token
- Send
-
API ID & Hash: Visit my.telegram.org
- Log in with your phone number
- Go to "API Development Tools"
- Create an application
- Copy API ID and API Hash
Start the bot and use these commands:
/start - Start the bot and see welcome message
/help - Get list of all commands
/about - Learn more about the bot
/stats - View your statistics
/compress - Compress video (choose HEVC or Fast mode)
/trim <start> <duration> - Trim video (e.g., /trim 00:00:10 00:00:30)
/merge - Merge multiple videos (send videos then /done)
/rename <name> - Rename video file
/encode - Encode video to different format
/screenshot [timestamp] - Generate screenshot (e.g., /screenshot 00:00:05)
/metadata - View video information
/extract_audio - Extract audio from video
/extract_subs - Extract subtitles from video
/add_audio - Add audio to video
/add_subs - Add subtitles to video
/add_watermark - Add watermark to video
/set_thumbnail - Set permanent thumbnail
/show_thumbnail - View your thumbnail
/delete_thumbnail - Remove your thumbnail
/archive <type> - Create archive (zip/tar/rar)
/extract - Extract archive
/download <url> - Download from URL or streaming platform
/generate_link - Generate direct download link
/storage - Check your storage usage
/broadcast <message> - Send message to all users
/stats_all - View bot statistics
- Send
/compress - Send your video file
- Bot processes and sends compressed version
- Send
/merge - Send first video
- Send second video
- Send more videos (if needed)
- Send
/done - Bot merges and sends result
- Send
/add_watermark - Send watermark image
- Send video
- Bot adds watermark and sends result
all-in-one/
βββ bot.py # Main bot application
βββ config.py # Configuration management
βββ database.py # MongoDB operations
βββ requirements.txt # Python dependencies
βββ Dockerfile # Docker configuration
βββ docker-compose.yml # Docker Compose setup
βββ .env.example # Environment template
βββ handlers/ # Command handlers
β βββ basic_handlers.py
β βββ video_handlers.py
β βββ thumbnail_handlers.py
β βββ archive_handlers.py
βββ utils/ # Utility modules
βββ video_utils.py
βββ archive_utils.py
βββ download_utils.py
Edit MAX_FILE_SIZE in .env to change the upload limit (in MB).
Set DOWNLOAD_PATH and UPLOAD_PATH in .env.
ENABLE_BROADCAST=True
ENABLE_URL_UPLOAD=True
ENABLE_WATERMARK=TrueSet LOG_CHANNEL_ID to send all bot activities to a Telegram channel.
This project is licensed under the License - see the LICENSE file for details.