Since mid-1999 I was a member of "H.323 group" - a group of students who were designing and developing an H.323 terminal. We worked under supervision of Dr. Jarosław Domaszewicz. We have encountered many problems and that is why the application is still not fully functional. Nonetheless, I successfully graduated (in October 2000) and it was mainly due to division of the project into separate modules. The simple scheme is shown below:
The terminal we were developing was built of several modules:
The project is written using the C programming language for the Win32 programming environment (but many modules are portable). The project source code has NOT published (no download - sorry).
This is a document describing H.245 protocol (the shadowed rectangle in the picture). If you deal with this protocol or you are just interested what are its capabilities it may be a good starting point. H.245 is quite often mentioned in a number of publications about multimedia terminals (based on H.32x) and contemporary telecommunications trends. Unfortunately its functionality is usually vaguely or even wrongly explained (e.g., it is never used to establish new calls as some articles claim). On the other hand, reading the original ITU specification is a hard and time consuming job; moreover, you must be familiar with other ITU (and IETF) specifications. This work may be viewed as "H.245 essentials" or "introduction to H.245" that describes H.245 in quite a concise way.
This work is part of my B.Sc thesis. The original title is "Implementing H.323 Terminal: H.245 Subsystem" by M. Rój. It is available in the online html format and (if you prefer printing forms) in pdf format (346 KB) .
The C header file containing my H.245 API is here.
Audio engine (the shadowed parts in the picture). This part of my thesis is available as online html format and in the pdf format (363 KB) .
Thank you for all e-mails about the project. Sorry, I am no longer involved.