generated from FriendsOfREDAXO/rex_repo_template
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2 from FriendsOfREDAXO/skerbis-patch-translation
Update rex_effect_video_to_webp.php
- Loading branch information
Showing
6 changed files
with
357 additions
and
114 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,156 @@ | ||
# REDAXO VideoPreview | ||
# 🎥 VideoPreview für REDAXO | ||
|
||
AddOn generates animated webp or mp4 video without sound previews. | ||
Extends the media manager | ||
Dieses AddOn erweitert den REDAXO Media Manager um zwei neue Effekte zur automatischen Generierung von Vorschauen aus Videos. Die Effekte eignen sich ideal für Medienpools, Galerien oder überall dort, wo ein schneller Einblick in Videoinhalte benötigt wird. | ||
|
||
## 🎯 Features | ||
|
||
- **MP4-Vorschauen**: Kurze, stumme Videoausschnitte | ||
- **WebP-Vorschauen**: Animierte Bilder mit kleiner Dateigröße | ||
- **Intelligente Positionierung**: Auswahl zwischen Start, Mitte oder Ende des Videos | ||
- **Optimiert für Text**: Spezielle Filter für bessere Lesbarkeit von Texten im Video | ||
- **Flexible Konfiguration**: Von minimaler bis maximaler Kompression | ||
- **Mehrsprachig**: Deutsch und Englisch integriert | ||
|
||
## 🔧 Systemvoraussetzungen | ||
|
||
- REDAXO 5.12 oder höher | ||
- PHP 7.4 oder höher | ||
- FFmpeg auf dem Server | ||
- Ausreichend Arbeitsspeicher für Videoverarbeitung | ||
|
||
## 📦 Installation | ||
|
||
1. Im REDAXO-Backend zum Installer navigieren | ||
2. "VideoPreview" suchen | ||
3. Installieren und aktivieren | ||
4. FFmpeg-Verfügbarkeit wird automatisch geprüft | ||
|
||
## 🎮 Verwendung | ||
|
||
### Im Media Manager | ||
|
||
1. Einen neuen Media Manager Typ erstellen oder bestehenden bearbeiten | ||
2. Einen der neuen Effekte hinzufügen: | ||
- "Video Vorschau (MP4, ohne Ton)" | ||
- "Video Vorschau (WebP)" | ||
|
||
### Konfigurationsoptionen | ||
|
||
Beide Effekte bieten folgende Einstellungen: | ||
|
||
- **Position im Video** | ||
- Anfang (nach 2 Sekunden) | ||
- Mitte des Videos | ||
- 10 Sekunden vor Ende | ||
|
||
- **Ausgabebreite** | ||
- Standard: 400px | ||
- Empfehlung: 400-800px für optimale Textdarstellung | ||
|
||
- **Kompressionsstufe** | ||
1. Minimal (große Datei, beste Qualität) | ||
2. Niedrig (bessere Qualität) | ||
3. Standard (ausgewogen) | ||
4. Hoch (kleine Datei) | ||
5. Maximal (kleinste Datei) | ||
|
||
- **FPS (Bilder pro Sekunde)** | ||
- Standard: 12 | ||
- Empfehlung: 12-15 für beste Textlesbarkeit | ||
- Maximum: 30 | ||
|
||
- **Snippet-Länge** | ||
- Standard: 2 Sekunden | ||
- Maximum: 10 Sekunden | ||
|
||
### Beispiel URL-Verwendung | ||
|
||
```php | ||
// MP4-Vorschau | ||
echo rex_media_manager::getUrl('video_preview_mp4', 'mein_video.mp4'); | ||
|
||
// WebP-Vorschau | ||
echo rex_media_manager::getUrl('video_preview_webp', 'mein_video.mp4'); | ||
``` | ||
|
||
## 🔍 Technische Details | ||
|
||
### Unterstützte Videoformate | ||
- MP4 | ||
- M4V | ||
- AVI | ||
- MOV | ||
- WebM | ||
|
||
## Author | ||
### FFmpeg-Optimierungen | ||
|
||
**Friends Of REDAXO** | ||
Der Code enthält spezielle FFmpeg-Filter für optimierte Videoqualität: | ||
|
||
- **Textoptimierung**: Verbesserte Schärfe und Kontrast für bessere Lesbarkeit | ||
- **Intelligentes Scaling**: Lanczos-Algorithmus mit akkurater Rundung | ||
- **Adaptives Sharpening**: Unterschiedliche Unschärfemasken je nach Kompressionsstufe | ||
|
||
### Speichernutzung | ||
|
||
Die generierten Vorschauen werden temporär im Cache-Verzeichnis gespeichert und nach der Auslieferung automatisch gelöscht. Der Prozess ist memory-safe und für Produktivumgebungen optimiert. | ||
|
||
## 💡 Empfehlungen | ||
|
||
1. **Optimale Qualität für Text** | ||
- Niedrige Kompressionsstufe wählen | ||
- 12-15 FPS einstellen | ||
- Mindestbreite von 400px nutzen | ||
|
||
2. **Minimale Dateigröße** | ||
- Höhere Kompressionsstufe verwenden | ||
- FPS auf 12 setzen | ||
- Kurze Snippet-Länge wählen | ||
|
||
3. **Performance** | ||
- Vorschauen beim Upload generieren | ||
- URLs nach Möglichkeit cachen | ||
- WebP-Variante für schnelleres Laden nutzen | ||
|
||
## 🐛 Problemlösung | ||
|
||
### FFmpeg-Prüfung | ||
Verfügbarkeit prüfen mit: | ||
```bash | ||
ffmpeg -version | ||
``` | ||
|
||
### Leere Ausgabe | ||
1. Videolänge prüfen | ||
2. Video auf Beschädigung prüfen | ||
3. Logs in `data/log/` analysieren | ||
|
||
### Speicherprobleme | ||
PHP-Memory-Limits anpassen: | ||
```php | ||
memory_limit = 256M | ||
max_execution_time = 300 | ||
``` | ||
|
||
## 🤝 Support & Mitarbeit | ||
|
||
- [GitHub](https://github.com/FriendsOfREDAXO/videopreview) | ||
- Pull Requests sind willkommen | ||
|
||
## 📄 Lizenz | ||
|
||
MIT-Lizenz | ||
|
||
|
||
|
||
## 👏 Credits | ||
- FFmpeg für die Videoverarbeitung | ||
|
||
* http://www.redaxo.org | ||
* https://github.com/FriendsOfREDAXO | ||
|
||
**Lead** | ||
|
||
[Thomas Skerbis](https://github.com/skerbis) | ||
|
||
# REDAXO VideoPreview | ||
|
||
AddOn generates animated webp or mp4 video without sound previews. | ||
Extends the media manager |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
videopreview_to_preview = Video Vorschau (MP4, ohne Ton) | ||
videopreview_to_webp = Video Vorschau (WebP) | ||
|
||
videopreview_error_ffmpeg = FFmpeg wurde nicht gefunden. Dieser Effekt wird nicht funktionieren. | ||
videopreview_error_duration = Videolänge konnte nicht ermittelt werden | ||
videopreview_error_output = Ausgabedatei ist leer oder existiert nicht | ||
videopreview_error_command = Befehl fehlgeschlagen | ||
|
||
videopreview_compression_minimal = Minimal (große Datei, beste Qualität) | ||
videopreview_compression_low = Niedrig (bessere Qualität) | ||
videopreview_compression_standard = Standard (ausgewogen) | ||
videopreview_compression_high = Hoch (kleine Datei) | ||
videopreview_compression_maximum = Maximal (kleinste Datei) | ||
|
||
videopreview_position_label = Position im Video | ||
videopreview_position_notice = Wähle die Stelle im Video, von der der Ausschnitt erstellt werden soll | ||
videopreview_position_end = 10 Sekunden vor Ende | ||
videopreview_position_middle = Mitte des Videos | ||
videopreview_position_start = Anfang (nach 2 Sekunden) | ||
|
||
videopreview_width_label = Ausgabebreite | ||
videopreview_width_notice = Empfohlen: 400-800px für bessere Textdarstellung | ||
|
||
videopreview_compression_label = Kompressionsstufe | ||
videopreview_compression_notice = Niedrigere Kompression für bessere Textqualität wählen | ||
|
||
videopreview_fps_label = FPS | ||
videopreview_fps_notice = Empfohlen: 12-15 FPS für bessere Textlesbarkeit | ||
|
||
videopreview_length_label = Snippet-Länge (Sekunden) | ||
videopreview_length_notice = Maximal %d Sekunden. Empfohlen: 2-3 Sekunden |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
videopreview_to_preview = Video Preview (MP4, no sound) | ||
videopreview_to_webp = Video Preview (WebP) | ||
|
||
videopreview_error_ffmpeg = FFmpeg not found. This effect will not work. | ||
videopreview_error_duration = Could not determine video duration | ||
videopreview_error_output = Output file is empty or does not exist | ||
videopreview_error_command = Command failed | ||
|
||
videopreview_compression_minimal = Minimal (large file, best quality) | ||
videopreview_compression_low = Low (better quality) | ||
videopreview_compression_standard = Standard (balanced) | ||
videopreview_compression_high = High (small file) | ||
videopreview_compression_maximum = Maximum (smallest file) | ||
|
||
videopreview_position_label = Position in video | ||
videopreview_position_notice = Choose the position in the video from where the snippet should be created | ||
videopreview_position_end = 10 seconds before end | ||
videopreview_position_middle = Middle of video | ||
videopreview_position_start = Start (after 2 seconds) | ||
|
||
videopreview_width_label = Output width | ||
videopreview_width_notice = Recommended: 400-800px for better text display | ||
|
||
videopreview_compression_label = Compression level | ||
videopreview_compression_notice = Choose lower compression for better text quality | ||
|
||
videopreview_fps_label = FPS | ||
videopreview_fps_notice = Recommended: 12-15 FPS for better text readability | ||
|
||
videopreview_length_label = Snippet length (seconds) | ||
videopreview_length_notice = Maximum %d seconds. Recommended: 2-3 seconds |
Oops, something went wrong.