Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

ws2122:asciia:ascii_animation

ASCII-Animation

Teilnehmer: Carl Mosler, Jaden Diodone

1. Projektbeschreibung

Das Ziel ist, eine Videodatei einzulesen, die einzelnen Pixel in ASCII-Zeichen umzuwandeln und anschließend das gleiche Video mit ASCII-Zeichen auf der Konsole wieder auszugeben. Eine Erklärung zu ASCII gibt es hier.

Unsere Zwischenziele:

  • Video importieren
  • Video in Frames aufteilen
  • Konvertierung der Bilddaten in ASCII-Zeichen
  • Zusammenfügen der ASCII-Frames zu Video und Videowiedergabe (ASCII)

Geplant ist hierfür nur die Ein- und Ausgabe von Schwarz-Weiß Videos. Als Bonusziel wäre denkbar, das Ganze für farbige Ein- und Ausgabe zu optimieren, falls wir dazu kommen werden.

2. Protokoll

3. Erklärung zum Code

Unser Code ist unterteilt in drei verschiedene Dateien, welche unterschiedliche Funktionen haben:

ASCII-Animation.py

Dies ist unsere Hauptdatei und beinhaltet die Main-Methode. Neben dieser werden hier außerdem einige Hilfsfunktionen für die Eingabe definiert und der Bilderordner erstellt. Auf der folgenden Seite werden die einzelnen Codeabschnitte genauer erklärt: ASCII-Animation.py

AsciiBildConverter.py

Diese Datei beinhaltet die Funktion, um die Originalbilder in ASCII-Zeichen umzuwandeln. Die Funktionsweise wird hier gezeigt: AsciiBildConverter.py

Abbruch.py

Regelt das Pausieren des Programms mit STRG + C und löscht bei Abbruch alle vorher erstellten Bilddateien, um Speicherplatz wieder freizugeben. Diese Datei wird hier genauer beschrieben: Abbruch.py

4. Fazit und Ausblick

Im Allgemeinen sind wir sehr zufrieden damit, was wir im Rahmen dieses Projektes erreicht haben. Besonders als Programmieranfänger waren wir uns anfangs nicht sicher, ob wir unsere Ziele erreichen können, doch letztendlich haben wir sogar einen Teil unserer Zusatzziele implementiert, nämlich die variable farbige Ausgabe des ASCII-Videos. Außerdem sind uns noch weitere schöne und nützliche Features eingefallen.

Eine zusätzliche Funktion, die noch denkbar wäre, ist die Möglichkeit, farbige Videos einzulesen und die Ausgabe bunt zu gestalten, anstatt nur zweifarbig so wie es jetzt der Fall ist. Außerdem könnte man noch Sound implementieren, falls es sich bei dem Originalvideo um beispielsweise ein Musikvideo handelt. Auch das Timing der Frames ist weiterhin verbesserungswürdig.

5. Ergebnis

Der komplette Code mit einem Test-Video zum Ausführen des Programms: ASCII-Animation

Ergebnisvideo auf YouTube

ws2122/asciia/ascii_animation.txt · Zuletzt geändert: 2022/03/26 16:37 von MoscarTU