Skip to content
This repository has been archived by the owner on Apr 28, 2019. It is now read-only.

Latest commit

 

History

History
44 lines (29 loc) · 1.28 KB

README.md

File metadata and controls

44 lines (29 loc) · 1.28 KB

ascii-chat

ASCII video chat.

Probably the first command line video chat progam.

It just prints ASCII, so it works on your rxvt-unicode in OpenBox, a Putty SSH session, and even iTerm on OSX.
It even works in an initial UNIX login shell, i.e. the login shell that runs 'startx'.

Eventually it will support 3+ simultaneous people, 'google-hangouts' style, and sound via PulseAudio or something.

Animated demonstration

Dependencies

  • Most people: apt-get install clang libopencv-dev libjpeg-dev
  • ArchLinux masterrace: pacman -S clang opencv libjpeg-turbo

Build and run

  • Clone this repo onto a computer with a webcam.
  • Install the dependencies.
  • run 'make clean all'.
  • run './bin/server' in one terminal, and then
  • run './bin/client -p 9001 -a 127.0.0.1' in another.

TODO

  • Port some functions as inline assembly for class project

  • Have optimization in mind, when programming the code in assembly

  • Client should continuously attempt to reconnect

  • Client program should accept URL arguments, as well as IP addresses like it does now

  • Colorize ASCII output

  • Refactor image processing algorithms

  • Client should gracefully handle frame width > term width

  • Client should gracefully handle term resize event