Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ws2122:asciia:ascii_animation [2022/03/16 16:04] Jaden [5. Ergebnis] |
ws2122:asciia:ascii_animation [2022/03/26 16:37] (aktuell) MoscarTU |
||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
===== 1. Projektbeschreibung ===== | ===== 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. | + | 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 [[https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange?msclkid=fae8ad14a5e011ec84811dbed2e65590|hier]]. |
{{ :ws2122:asciia:bilder-1.jpg?nolink |}} | {{ :ws2122:asciia:bilder-1.jpg?nolink |}} | ||
Unsere Zwischenziele: | Unsere Zwischenziele: | ||
Zeile 12: | Zeile 13: | ||
* Video in Frames aufteilen | * Video in Frames aufteilen | ||
* Konvertierung der Bilddaten in ASCII-Zeichen | * Konvertierung der Bilddaten in ASCII-Zeichen | ||
- | * Zusammenfügen der ASCII-Frames zu Video und Videowiedergabe (ASCII). | + | * Zusammenfügen der ASCII-Frames zu Video und Videowiedergabe (ASCII) |
Geplant ist hierfür nur die Ein- und Ausgabe von Schwarz-Weiß Videos. | 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. | Als Bonusziel wäre denkbar, das Ganze für farbige Ein- und Ausgabe zu optimieren, falls wir dazu kommen werden. | ||
- | ===== 2. Dokumentation ===== | + | ===== 2. Protokoll ===== |
- | [[ws2122:asciia:ascii_animation:protokoll|Hier geht es zum Protokoll und Verlauf des Projekts]] | + | **[[ws2122:asciia:ascii_animation:protokoll|Hier geht es zum Protokoll und Verlauf des Projekts.]]** |
- | ===== 3. Code ===== | + | ===== 3. Erklärung zum Code ===== |
- | Unser Code ist unterteilt in 3 verschiedene Dateien, welche unterschiedliche Funktionen haben: | + | Unser Code ist unterteilt in drei verschiedene Dateien, welche unterschiedliche Funktionen haben: |
- | [[ws2122:asciia:ASCII-Animation.py|ASCII-Animation.py:]] | + | ===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. | + | 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: **[[ws2122:asciia:ASCII-Animation.py|ASCII-Animation.py]] |
+ | ** | ||
- | [[ws2122:asciia:Abbruch.py:|Abbruch.py:]] | + | ===AsciiBildConverter.py=== |
- | Regelt das Pausieren des Programms mit STRG + C und löscht bei Abbruch alle vorher erstellten Bilddateien, um Speicherplatz wieder freizugeben. | + | Diese Datei beinhaltet die Funktion, um die Originalbilder in ASCII-Zeichen umzuwandeln. Die Funktionsweise wird hier gezeigt: **[[ws2122:asciia:AsciiBildConverter.py:|AsciiBildConverter.py]]** |
- | [[ws2122:asciia:AsciiBildConverter.py:|AsciiBildConverter.py:]] | + | ===Abbruch.py=== |
- | Beinhaltet die Funktion, um die Originalbilder in ASCII-Zeichen umzuwandeln. | + | 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: **[[ws2122:asciia:Abbruch.py:|Abbruch.py]]** |
===== 4. Fazit und Ausblick ===== | ===== 4. Fazit und Ausblick ===== | ||
Zeile 46: | Zeile 48: | ||
===== 5. Ergebnis ===== | ===== 5. Ergebnis ===== | ||
+ | Der komplette Code mit einem Test-Video zum Ausführen des Programms: {{:ws2122:asciia:ascii-animation.zip|ASCII-Animation}} | ||
+ | |||
+ | <HTML> | ||
+ | <iframe width="560" height="315" src="https://www.youtube.com/embed/cs5IG3gt18g" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> | ||
+ | </HTML> | ||
[[https://www.youtube.com/watch?v=cs5IG3gt18g|Ergebnisvideo auf YouTube]] | [[https://www.youtube.com/watch?v=cs5IG3gt18g|Ergebnisvideo auf YouTube]] |