sora-watermark-remover
v1.0.3
Published
Automated tool to remove watermarks from Sora AI videos using Playwright. Cross-platform GUI for batch processing with parallel uploads.
Maintainers
Readme
Sora Watermark Remover 🎬
כלי אוטומציה להסרת watermark מסרטוני Sora AI באמצעות Playwright.
✨ תכונות
- 🚀 הרצה עם npx - ללא צורך בהתקנה גלובלית
- 🖱️ בחירת תיקייה גרפית - GUI לבחירת תיקייה בכל מערכות ההפעלה
- ⚡ עיבוד במקביל - עד 10 סרטונים בו זמנית
- 🎯 Cross-platform - תמיכה ב-Windows, macOS, Linux
- 📊 התקדמות בזמן אמת - מעקב אחר כל סרטון
- 🔄 אוטומציה מלאה - ללא צורך בהתערבות ידנית
🚀 שימוש מהיר (פקודה אחת!)
אופציה 1: הרצה ישירה עם npx (ללא התקנה)
# פקודה אחת שעושה הכל!
npx sora-watermark-removerהסקריפט יפתח חלון בחירת תיקייה, יתחיל את השרת אוטומטית, ויעבד את כל הסרטונים.
אופציה 2: התקנה גלובלית
# התקן פעם אחת
npm install -g sora-watermark-remover
# הרץ מכל מקום עם פקודה אחת
sora-removeאופציה 3: פיתוח לוקלי
# שכפל והתקן
git clone <repository-url>
cd playmark
npm install
# הרץ את השרת בלבד
npm run start:dev
# או הרץ batch בלבד (בטרמינל נפרד)
npm run batchהרצה
Development Mode (עם hot reload)
npm run start:devProduction Mode
npm run build
npm run start:prodשימוש
העלאת סרטונים באצווה (Batch Upload) 🚀
פקודה אחת ששולטת בהכל!
# עם npx (ללא התקנה)
npx sora-watermark-remover
# או אם התקנת גלובלית
sora-removeהסקריפט יעשה הכל אוטומטית:
- יתחיל את השרת ברקע - אוטומטית
- יפתח חלון בחירת תיקייה - GUI נפתח אוטומטית (Windows/macOS/Linux)
- ישאל כמה סרטונים במקביל - מומלץ 2-3 (תלוי ביכולת המחשב)
- יעבד את כל הסרטונים - עם התקדמות בזמן אמת
- יעצור את השרת בסוף - ניקוי אוטומטי
דוגמה:
$ npx sora-watermark-remover
Sora Watermark Remover
ℹ Starting server...
✓ Server started successfully
ℹ Starting batch upload...
Video Watermark Remover - Batch Upload
ℹ Checking if server is running...
✓ Server is running
ℹ Opening folder selection dialog...
ℹ Scanning folder: /Users/mymac/Downloads/videos
✓ Found 5 video file(s)
1. video1.mp4
2. video2.mov
3. video3.mp4
4. video4.avi
5. video5.mp4
? How many videos to process in parallel? (1-5 recommended) › 2
? Process 5 video(s) with concurrency of 2? › yes
Starting batch upload...
⏳ [1/5] Uploading: video1.mp4
⏳ [2/5] Uploading: video2.mov
✓ [1/5] Completed: video1.mp4 → video-1-2025-10-18T12-30-45-123Z.mp4
⏳ [3/5] Uploading: video3.mp4
✓ [2/5] Completed: video2.mov → video-2-2025-10-18T12-31-15-456Z.mp4
...
=== Summary ===
✓ Successful: 5/5
ℹ Total time: 125.34s
ℹ Downloads folder: /Users/mymac/Code/playmark/downloads
✓ All done!
ℹ Stopping server...תכונות:
- ✅ פקודה אחת - הכל אוטומטי
- ✅ השרת מתנהל אוטומטית (מתחיל ונעצר)
- ✅ סריקה אוטומטית של כל קבצי הווידאו בתיקייה
- ✅ עיבוד במקביל (1-10 סרטונים במקביל)
- ✅ התקדמות בזמן אמת
- ✅ סיכום מפורט בסוף
- ✅ טיפול חכם בשגיאות
העלאת סרטון בודד להסרת watermark
Endpoint: POST http://localhost:3000/video/remove-watermark
דוגמה עם cURL:
curl -X POST \
http://localhost:3000/video/remove-watermark \
-F "video=@/path/to/your/video.mp4"דוגמה עם JavaScript (fetch):
const formData = new FormData();
formData.append('video', videoFile);
const response = await fetch('http://localhost:3000/video/remove-watermark', {
method: 'POST',
body: formData
});
const result = await response.json();
console.log(result);דוגמה עם Postman:
- בחר POST request
- הכנס את ה-URL:
http://localhost:3000/video/remove-watermark - עבור ל-Body
- בחר form-data
- הוסף key בשם
videoמסוג File - בחר את קובץ הסרטון
- שלח את הבקשה
תגובה מוצלחת
{
"success": true,
"message": "Watermark removed successfully",
"downloadPath": "/Users/youruser/Code/playmark/downloads/video-1-2025-10-18T12-30-45-123Z.mp4",
"filename": "video-1-2025-10-18T12-30-45-123Z.mp4"
}מבנה תיקיות
playmark/
├── src/
│ ├── video-remover/
│ │ ├── video-remover.controller.ts # Controller עם endpoint להעלאת סרטון
│ │ ├── video-remover.service.ts # Service עם לוגיקת Playwright
│ │ └── video-remover.module.ts # NestJS Module
│ ├── app.module.ts # Main app module
│ └── main.ts # Bootstrap file
├── uploads/ # תיקיית העלאות זמניות
├── downloads/ # תיקיית סרטונים מעובדים
└── package.jsonאיך זה עובד?
- המשתמש מעלה סרטון דרך ה-API
- הסרטון נשמר זמנית בתיקיית
uploads/ - Playwright פותח דפדפן ונכנס לאתר https://magiceraser.org/sora-watermark-remover/
- הסרטון מועלה לאתר
- המערכת מחכה שהאתר יסיים לעבד את הסרטון
- לוחצת על כפתור Download
- שומרת את הסרטון בתיקיית
downloads/עם שם ייחודי - מוחקת את הקובץ הזמני מ-
uploads/ - מחזירה את הנתיב והשם של הסרטון המעובד
הגדרות
ניתן לשנות את ההגדרות הבאות:
- Port: הגדר
PORTenvironment variable (ברירת מחדל: 3000) - Headless mode: הדפדפן רץ ברקע (headless: true). לשנות לשורה 13 ב-
src/video-remover/video-remover.service.ts - גודל קובץ מקסימלי: עבור לקובץ
src/video-remover/video-remover.controller.tsושנה אתfileSize(שורה 56) - מספר עיבודים במקביל: בסקריפט batch תוכל לבחור 1-10 (מומלץ 2-3)
📋 דרישות מערכת
- Node.js 18+ - הורד כאן
- Google Chrome - חייב להיות מותקן במערכת
- מערכת הפעלה:
- ✅ macOS (10.13+)
- ✅ Windows (10+)
- ✅ Linux (עם zenity/kdialog/yad לבחירת תיקייה גרפית)
טיפולוגיה
אם יש בעיות עם Playwright:
npx playwright install chromiumרישיון
ISC
