Automated short drama video publisher. Downloads drama content from MoboBoost, uses AI to identify highlight moments, clips 15-second vertical videos with te...
Automated short drama promotion video workflow, inspired by Strawberry TV model:
# macOS
brew install ffmpeg
# Python dependencies
pip install playwright opencv-python librosa numpy pyyaml
playwright install chromium
MoboBoost Cookies
config/moboboost_cookies.jsonFacebook Cookies
config/facebook_cookies.jsonpython scripts/daily_workflow.py
Download content:
python scripts/moboboost_downloader.py --drama-code 613815
Detect highlights:
python scripts/highlight_detector.py --input data/downloads/video.mp4
Clip video:
python scripts/video_editor.py --input video.mp4 --start 01:23 --title "Drama Name"
Publish to Facebook:
python scripts/facebook_publisher.py --video data/outputs/clip.mp4 --drama-code 613815 --drama-name "DramaName"
# Run daily at 9am
0 9 * * * cd /path/to/short-drama-publisher && python scripts/daily_workflow.py >> logs/cron.log 2>&1
# Video settings
video:
duration: 15 # Clip duration (seconds)
width: 1080 # Width
height: 1920 # Height (9:16 vertical)
# Text overlay settings
text_overlay:
font: "Arial-Bold"
size_ratio: 0.05 # Font size as ratio of video width
color: "#FFFFFF"
border_color: "#000000"
border_width: 2
position_y: 0.75 # Vertical position (ratio from top)
# AI highlight detection weights
highlight_weights:
scene_change: 0.30
audio_peak: 0.25
subtitle_emotion: 0.25
motion_intensity: 0.20
# Publishing settings
publishing:
videos_per_day: 3 # Number of videos per day
interval_minutes: 120 # Interval between posts (minutes)
short-drama-publisher/
├── SKILL.md # This file
├── config/
│ ├── settings.yaml # Configuration
│ ├── moboboost_cookies.json # MoboBoost credentials
│ └── facebook_cookies.json # Facebook credentials
├── scripts/
│ ├── moboboost_downloader.py # Content downloader
│ ├── highlight_detector.py # AI highlight detection
│ ├── video_editor.py # Video clipping
│ ├── facebook_publisher.py # Facebook publisher
│ └── daily_workflow.py # Main workflow
├── data/
│ ├── downloads/ # Raw downloaded content
│ ├── outputs/ # Clipped videos
│ └── history.json # Publishing history
├── fonts/ # Font files
└── logs/ # Log files
The highlight detector uses multiple signals to find the most engaging moments:
| Signal | Weight | Method |
|---|---|---|
| Scene Change | 30% | OpenCV frame-by-frame difference analysis |
| Audio Peak | 25% | Librosa audio amplitude analysis |
| Subtitle Emotion | 25% | Text sentiment analysis on subtitles |
| Motion Intensity | 20% | Optical flow magnitude calculation |
Each frame gets a composite score, and the highest-scoring 15-second segment is selected.
[!WARNING]
- MoboBoost and Facebook websites may update, requiring script adjustments
- Recommend 1-3 videos per day to simulate organic posting rhythm
- Ensure you have rights to use MoboBoost content for promotion
- Cookie-based auth may expire; re-export periodically
ZIP package — ready to use