Professional Multi-Format Content Generation System
Tamamen lokal çalışan, AI destekli eğitici içerik üretim pipeline'ı. Markdown makalelerinden otomatik olarak PDF, TTS (Audio), Video ve Script dosyaları üretir.
Bu proje, eğitici içerik üretimini otomatikleştiren entegre bir sistemdir. Tek bir markdown makalesinden başlayarak, profesyonel kalitede çoklu format çıktılar üretebilirsiniz.
- 📝 Markdown Articles - Medium'a direkt yapıştırılabilir format
- 📄 PDF Documents - Stylized PDF dökümanlar
- 🎙️ Audio Narration - Voice-cloned British English TTS
- 🎬 Professional Videos - Cinematic educational videos
- 📋 Unified Scripts - TTS + Video için ortak script formatı
Projects/
├── article-generation/ # Makale üretim servisi
├── video-scripter-service/ # Unified script üretim servisi
├── tts-service/ # Text-to-Speech (ses üretimi)
├── video-generation-service/ # Video üretim servisi
└── pdf-service/ # PDF dönüştürme servisi
┌─────────────────────┐
│ Markdown Article │
│ (article.md) │
└──────────┬──────────┘
│
├─────────────────────────────────────┐
│ │
▼ ▼
┌──────────────────────┐ ┌─────────────────────┐
│ PDF Service │ │ Video Scripter │
│ → article.pdf │ │ → unified_script │
└──────────────────────┘ └──────────┬──────────┘
│
┌──────────────────────┴──────────────────────┐
│ │
▼ ▼
┌──────────────────────┐ ┌──────────────────────┐
│ TTS Service │ │ Video Generation │
│ → narration.wav │ │ → professional.mp4 │
└──────────────────────┘ └──────────────────────┘
Markdown makale üretim servisi - Local Ollama üzerinden DeepSeek R1 kullanarak otomatik makale üretir.
Özellikler:
- 🆓 Tamamen lokal (cloud API yok)
- 🎯 Çoklu şablon (Educational, Tutorial, Deep-dive)
- 🌍 Çoklu dil desteği (Türkçe/İngilizce)
- 📝 Medium formatında markdown çıktı
Hızlı Başlangıç:
cd article-generation
npm install
npm run generate:single -t "JavaScript Loops" -s educational -m 8Dokümantasyon: article-generation/README.md
Unified TTS + Video Script Üretim Servisi - Markdown makalelerini hem TTS hem de video üretimi için kullanılabilecek unified script formatına dönüştürür.
Özellikler:
- 📋 Tek script dosyası (TTS + Video için ortak)
- ⏱️ Saniye saniye timing planlaması
- 🎬 Detaylı görsel açıklamaları
- 🎙️ TTS ayarları (speed, tone, pauses)
Hızlı Başlangıç:
cd video-scripter-service
npm install
npm run generate:single what-is-it-javascript.mdÇıktı: output/what-is-it-javascript_script.txt
Dokümantasyon: video-scripter-service/README.md
Text-to-Speech Servisi - XTTS v2 kullanarak voice-cloned British English ses üretimi.
Özellikler:
- 🎤 Voice cloning (XTTS v2)
- 🇬🇧 British English narration
- 🔊 Scene-by-scene audio generation
- 📝 Unified script format desteği
- 🧹 Otomatik script temizleme
Hızlı Başlangıç:
cd tts-service
python3 -m venv venv
source venv/bin/activate
pip install coqui-tts
# Unified script'ten ses üret
python generate_unified.py \
../video-scripter-service/output/what-is-it-javascript_script.txt \
out/narration.wavÇıktı: out/narration.wav
Dokümantasyon: tts-service/README.md
Profesyonel Video Üretim Servisi - Unified script ve audio dosyasından cinematic educational video üretir.
Özellikler:
- 🎬 Studio-grade visuals
- 🎥 Cinematic color palette
- ✨ Smooth animations & transitions
- 💻 Code editor mockups
- 📊 Animated diagrams
- 🎨 Professional typography
- ⚡ Memory-optimized rendering
Hızlı Başlangıç:
cd video-generation-service
./setup.sh # Virtual environment setup
# Video üret
./generate.sh \
../video-scripter-service/output/what-is-it-javascript_script.txt \
../tts-service/out/what-is-it-javascript_script.wav \
output/video.mp4Çıktı: output/video.mp4
Dokümantasyon: video-generation-service/README.md
PDF Dönüştürme Servisi - Markdown makalelerini styled PDF formatına dönüştürür.
Özellikler:
- 📄 Custom styling
- 🎨 Professional typography
- 📝 Multiple file support
Hızlı Başlangıç:
cd pdf-service
npm install
npm run convert:single what-is-it-javascript.mdÇıktı: output/what-is-it-javascript.pdf
Dokümantasyon: pdf-service/README.md
En kolay kullanım yöntemi: Interactive CLI ile tüm servisleri tek bir arayüzden yönetin!
# Ana dizinde
npm install# Interactive CLI'yi başlat
npm start
# Veya direkt
node cli.js✅ Menü tabanlı navigasyon - Kolay kullanım
✅ Servis durumu kontrolü - Tüm servislerin durumunu kontrol eder
✅ Dosya seçimi - Mevcut makalelerden seçim yapma
✅ Full Pipeline - Tek tıkla tüm pipeline'ı çalıştırma
✅ Hata yönetimi - Anlaşılır hata mesajları
- 📝 Generate New Article - Yeni makale üret
- 📄 Generate PDF - Makaleden PDF oluştur
- 📋 Generate Video Script - Makaleden video script oluştur
- 🎙️ Generate TTS Audio - Script'ten ses dosyası oluştur
- 🎬 Generate Video - Script + Audio'dan video oluştur
- 🚀 Full Pipeline - Tüm pipeline'ı tek seferde çalıştır
- 📊 Check Service Status - Servis durumlarını kontrol et
- 📁 List Available Articles - Mevcut makaleleri listele
- 📁 List Generated Files - Üretilen dosyaları listele
- ❌ Exit - Çıkış
$ npm start
══════════════════════════════════════════════════════════════════
Educational Content Production Pipeline - Interactive CLI
══════════════════════════════════════════════════════════════════
📋 Main Menu
──────────────────────────────────────────────────────────────
1. 📝 Generate New Article
2. 📄 Generate PDF from Article
3. 📋 Generate Video Script from Article
4. 🎙️ Generate TTS Audio from Script
5. 🎬 Generate Video from Script + Audio
6. 🚀 Full Pipeline (Article → Script → Audio → Video)
7. 📊 Check Service Status
8. 📁 List Available Articles
9. 📁 List Generated Files
0. ❌ Exit
Select option (0-9): 6
🚀 Full Pipeline: Article → Script → Audio → VideoBir makaleden başlayarak tüm formatları üretmek için:
cd article-generation
npm install
npm run generate:single -t "JavaScript Variables" -s educational -m 8
# Output: articles/what-is-it-javascript.mdcd ../video-scripter-service
npm install
npm run generate:single what-is-it-javascript.md
# Output: output/what-is-it-javascript_script.txtcd ../tts-service
python3 -m venv venv
source venv/bin/activate
pip install coqui-tts
python generate_unified.py \
../video-scripter-service/output/what-is-it-javascript_script.txt \
out/what-is-it-javascript_script.wavcd ../video-generation-service
./setup.sh
./generate.sh \
../video-scripter-service/output/what-is-it-javascript_script.txt \
../tts-service/out/what-is-it-javascript_script.wav \
output/what-is-it-javascript.mp4cd ../pdf-service
npm install
npm run convert:single what-is-it-javascript.md
# Output: output/what-is-it-javascript.pdfSonuç: Tek bir makaleden 5 farklı format çıktı! 🎉
- Node.js (v18 veya üzeri)
- Python 3.12 (TTS ve Video servisleri için)
- FFmpeg (Video servisi için)
- Ollama (Makale ve script üretimi için)
# Ollama'yı kurun
curl -fsSL https://ollama.com/install.sh | sh
# DeepSeek R1 modelini yükleyin
ollama pull deepseek-r1:14b
# Ollama servisini başlatın
ollama serve# Ubuntu/Debian
sudo apt-get install ffmpeg
# macOS
brew install ffmpegYukarıdaki "Hızlı Başlangıç" bölümündeki adımları takip edin. Tek bir makaleden tüm formatları üretirsiniz.
Mevcut bir makale ve script'iniz varsa:
# 1. Script üret (eğer yoksa)
cd video-scripter-service
npm run generate:single article.md
# 2. Audio üret
cd ../tts-service
python generate_unified.py script.txt audio.wav
# 3. Video üret
cd ../video-generation-service
./generate.sh script.txt audio.wav output.mp4cd pdf-service
npm run convert:single article.mdVideo ve TTS servisleri için ortak script formatı:
---
[scene 1]
narration: |
This is the exact text that TTS service will read aloud.
Natural, spoken language style.
visual: |
Detailed description of what video-generation service should create.
Very specific: colors, animations, layout, camera angle.
duration: "8s"
tts_settings:
speed: 1.05
tone: "Educational and energetic"
video_settings:
camera: "static front"
mood: "modern, clean, minimal"
animation: "code blocks fade in smoothly"
background: "dark gradient"
code:
read_aloud: false
content: |
console.log("Hello JS");
---Detaylı format açıklaması: video-scripter-service/README.md
- Resolution: 1920x1080 (Full HD)
- Frame Rate: 30 FPS
- Aspect Ratio: 16:9 (configurable)
- Codec: H.264 (libx264)
- Audio Codec: AAC
- Bitrate: 5000k
- Format: WAV
- Quality: High-quality voice cloning
- Language: British English
- Voice: Cloned from reference audio
- Model: XTTS v2
Projects/
├── README.md # Bu dosya
│
├── article-generation/ # Makale üretim servisi
│ ├── articles/ # Üretilen makaleler
│ ├── src/
│ │ ├── generateSingle.js # CLI tool
│ │ ├── generateArticles.js # Batch generation
│ │ └── ...
│ └── README.md
│
├── video-scripter-service/ # Script üretim servisi
│ ├── output/ # Üretilen scriptler
│ ├── src/
│ │ ├── generateSingle.js # CLI tool
│ │ └── ...
│ └── README.md
│
├── tts-service/ # TTS servisi
│ ├── out/ # Üretilen audio dosyaları
│ ├── voice/ # Voice cloning referans dosyası
│ ├── generate_unified.py # Unified script parser
│ └── README.md
│
├── video-generation-service/ # Video üretim servisi
│ ├── output/ # Üretilen videolar
│ ├── src/
│ │ ├── generateSingle.py # CLI tool
│ │ ├── professionalVideoGenerator.py
│ │ └── ...
│ ├── setup.sh # Setup script
│ ├── generate.sh # Convenience script
│ └── README.md
│
└── pdf-service/ # PDF servisi
├── output/ # Üretilen PDF'ler
├── src/
│ └── ...
└── README.md
- Cloud API yok
- Tüm işlemler kendi makinenizde çalışır
- Veri gizliliği garanti
- Studio-grade video çıktıları
- Cinematic visual language
- High-quality voice cloning
- Professional typography
- Tek makaleden multi-format çıktı
- Otomatik senkronizasyon
- Unified script formatı
- Smooth workflow
- Efficient video rendering
- Disk-based frame storage
- Optimized memory usage
- Handles long videos
# Ollama servisinin çalıştığını kontrol et
curl http://localhost:11434/api/tags
# Ollama'yı başlat
ollama serve# Her serviste virtual environment kullanın
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt# FFmpeg'in yüklü olduğunu kontrol et
ffmpeg -version
# Yüklü değilse
sudo apt-get install ffmpegVideo üretimi sırasında OOM hatası alırsanız:
- Video çözünürlüğünü düşürün (
sceneRenderer.py) - Bitrate'i azaltın (
professionalVideoGenerator.py) - Daha küçük video segmentleri üretin
Her servis için detaylı dokümantasyon:
- 📖 Article Generation
- 📖 Video Scripter Service
- 📖 TTS Service
- 📖 Video Generation Service
- 📖 PDF Service
┌─────────────────────────────────────────────────────────────┐
│ ARTICLE GENERATION │
│ Topics.json → Ollama (DeepSeek R1) → Markdown Articles │
└────────────────────┬────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ PDF SERVICE (Parallel) │
│ Markdown → Styled PDF Document │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ VIDEO SCRIPTER SERVICE │
│ Markdown → Unified Script (TTS + Video format) │
└────────────────────┬────────────────────────────────────────┘
│
┌───────────┴───────────┐
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────────┐
│ TTS SERVICE │ │ VIDEO GENERATION │
│ │ │ SERVICE │
│ Script → Audio │ │ Script + Audio → │
│ (XTTS v2) │ │ Professional Video │
└─────────────────┘ └─────────────────────┘
MIT
Bu pipeline ile:
✅ Tek makaleden → 5 farklı format çıktı
✅ Profesyonel kalitede → Studio-grade üretim
✅ Tamamen lokal → Veri gizliliği garanti
✅ Otomatik senkronizasyon → Perfect audio-video sync
✅ Scalable → Kolayca genişletilebilir
Happy Content Creation! 🚀