Tiny File ist eine Desktop-Anwendung zum Verkleinern und Konvertieren von Medien-Dateien. Die App nimmt Bilder, Audio-Dateien und Videos entgegen, verarbeitet sie mit FFmpeg und schreibt die optimierte Datei mit dem Suffix _TinyFile in den Zielordner.
Die Anwendung ist mit Avalonia gebaut und laeuft plattformuebergreifend. Der aktuelle Fokus liegt auf macOS.
- Bilder, Audio-Dateien und Videos per Drag & Drop hinzufuegen
- Einzelne Dateien oder einen ganzen Ordner auswaehlen
- Mehrere Dateien als Aufgabenliste verarbeiten
- Parallele Verarbeitung mit einstellbarer Task-Anzahl
- Ausgabeformat und Qualitaet getrennt fuer Bilder, Audio und Videos konfigurieren
- Optionales Resize fuer Bilder und Videos
- Optionales Entfernen von Metadaten
- FFmpeg direkt aus der Anwendung pruefen und herunterladen
- Mehrsprachige Oberflaeche fuer Deutsch und Englisch
Audio:
.mp3, .wav, .flac, .aac, .ogg, .opus, .m4a
Bilder:
.png, .jpg, .jpeg, .bmp, .gif, .tif, .tiff, .webp, .avif
Videos:
.mp4, .mkv, .mov, .avi, .webm
Audio:
mp3, aac, wav, flac, ogg, opus, m4a
Bilder:
jpeg, png, webp, bmp, tiff, gif, avif
Videos:
mp4, mkv, mov, avi, webm
- Tiny File starten.
- Bei Bedarf ueber das FFmpeg-Menue pruefen, ob FFmpeg verfuegbar ist.
- Dateien per Drag & Drop ablegen oder ueber
Dateien hinzufuegen...auswaehlen. - Optional in den Einstellungen Ausgabeformat, Qualitaet, Resize-Grenzen und Zielordner anpassen.
- Mit
Make Tiny Filedie Aufgabenliste starten. - Fertige Dateien liegen als neue Dateien mit
_TinyFileim Namen im Zielordner.
Wenn kein Zielordner gesetzt ist, wird die Ausgabe im Ordner der Eingabedatei gespeichert.
Die Einstellungen werden automatisch gespeichert.
macOS:
~/Library/Application Support/TinyFile/settings.json
Die wichtigsten Einstellungen:
ParallelTasks: Anzahl parallel laufender AufgabenOutputPath: optionaler AusgabeordnerAudioQuality,ImageQuality,VideoQuality: QualitaetsstufeResizeImages,ResizeVideos: Resize aktivierenImageMaxWidth,ImageMaxHeight: maximale BildgroesseVideoMaxWidth,VideoMaxHeight: maximale VideogroesseAudioRemoveMetaInformations,VideoRemoveMetaInformations: Metadaten entfernen
Tiny File verwendet FFmpeg fuer die eigentliche Medienverarbeitung. Die App kann FFmpeg pruefen und herunterladen. Erwartet wird ein ffmpeg-Ordner neben der ausfuehrbaren Anwendung.
Bei einem macOS-App-Bundle liegt dieser Pfad technisch unter:
TinyFile.app/Contents/MacOS/ffmpeg
Wenn FFmpeg nicht vorhanden ist, kann der Download aus der Anwendung heraus gestartet werden.
Voraussetzungen:
- .NET SDK passend zum Projekt-Target
net10.0 - macOS, Windows oder Linux fuer die Entwicklung
- FFmpeg fuer lokale Verarbeitungstests
Projekt bauen:
dotnet build TinyFile.slnApp starten:
dotnet run --project TinyFile/TinyFile.csprojmacOS arm64 Publish:
dotnet publish TinyFile/TinyFile.csproj \
-c Release \
-r osx-arm64 \
--self-contained true \
-p:UseAppHost=trueKompakter macOS arm64 Publish als Single File:
dotnet publish TinyFile/TinyFile.csproj \
-c Release \
-r osx-arm64 \
--self-contained true \
-p:UseAppHost=true \
-p:PublishSingleFile=true \
-p:EnableCompressionInSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true \
-p:DebugType=None \
-p:DebugSymbols=false \
-p:PublishTrimmed=falseTinyFile/
Views/ Avalonia UI
ViewModels/ UI-Logik und Commands
Models/ Einstellungen und Task-Modell
Service/ Settings, Lokalisierung und FFmpeg-Verwaltung
Assets/ App-Assets
CoreLibrary/
Services/ FFmpeg-basierte Verarbeitung fuer Audio, Bilder und Videos
Enum/ Formate und Qualitaetsstufen
- Fertige Ausgabedateien ueberschreiben vorhandene Dateien nur, wenn die Verarbeitung das erlaubt.
- Ordnerimport verarbeitet aktuell Dateien auf der obersten Ordnerebene.
- Fuer Distribution auf macOS reicht eine ad-hoc Signatur lokal aus. Fuer Weitergabe an andere Nutzer sollte das App-Bundle regulaer signiert und notarisiert werden.
Some parts of this project were created with assistance from AI tools such as ChatGPT. All generated content was reviewed, adapted, and integrated manually by the maintainer.

