New Release of DemoRecorder-24×7: Added Mouse-click and Keyboard Recording

There is a new release of DemoRecorder-24×7 with version number

DemoRecorder-24×7 is our screen recorder product for mission critical 24×7 recording.

It runs on systems using the X11-window system
which includes Linux and most Unix-like operating systems.

It is designed for use in areas like air traffic control and railway traffic control.
( see also our testimonials )

You can download the new version from:

Installation requires sysadmin skills because the recording process is to be installed as an X11-proxy.
If you need help for that please write to support at

Compared to the last release the following has changed:

  1. mouse-click and keyboard recording and playback:
    • For showing the keyboard-image in playback, please use option –show-keyboard-image for “demorec”
    • For showing the event-list in playback, please use option –show-eventlist for “demorec”
    • keyboard recording is disabled by default for security reasons
      because recording passwords can be a security problem.
    • To enable it please use option “-enable-keyrec” for demorec-proxy.
    • There is an API for enabling and disabling keyboard
      recording. See the API source tree for details.
      It also contains a dummy password entry example
      which disables keyboard recording temporarily
      while the password is entered.
      Other examples are for

      • querying the keyboard recording mode, and displaying it,
      • changing the keyboard recording mode.
  2. support for XInput and XKB extensions with XCB-based lean-proxy.
    In the last few months I have fixed the following things there:

    • fix the XCB protocol description for XInput and XKB.
    • fixed issues with sequence-numbers. Especially those needed for XCB-clients.
    • support for byteswapped clients with XInput and XKB is fixed now.

      For testing the byteswapped stuff I have
      reactivated my old Sparc Blade 100 and
      installed Linux on it.
      Byteswapping was also implicitly tested with a test computer from a customer.

    • general testing and bugfixing.
    • set the version number to

Entering the software project business on Dec 16th

[German translation below]

Starting with Dec 16th I will concentrate full time on my business.

This enables me to extend the scope of my business beyond my product DemoRecorder:

I will reenter the software project outsourcing business, i.e, I’ll offer to implement software projects for customers who want to outsource a project.

You may already send me project inquiries: I may however take longer for answering them because my time until Dec 16th is already reserved otherwise.

I can offer quite a bit for the software project outsourcing business:

  • Professional project execution:

    This primarily means adherence to delivery dates and quality.
    Up until now I have met delivery dates for all software projects which have done in my business since 1995. And I have always delivered very good quality.
    I achieve that by making realistic estimations of effort, of cost and of delivery times and by planning buffer time as needed.
    Therefore I can deliver good quality on time without stress and drama.

  • Long term maintenance:

    I offer long term maintenance for projects which my company has implemented.
    This is rarely offered by software project companies but I think it is essential.
    Maintenance is an advantage for customers who do not want to use their own development capacity for maintenance.Of course I also offer to educate the developers of the customer so they can do the maintenance.

I will reject inquiries for projects which should be delivered earlier than what I can guarantee with a good conscience. ( As a business I have the advantage that I can reject projects. As an employee, you usually have no choice and have to implement projects where it is clear from the beginning that there is a high risk of missing the deadline, etc. )

The most important task for the success of a project is the cost and time estimation. If the estimation is done right, the project can be delivered on time, in budget and with good quality.

Therefore I will usually charge money for making a cost and time estimation and an offer.
I will make exceptions primarily for projects with a connection to my product DemoRecorder.

Here is some information about the type of projects I will be good at:

My core competencies are C/C++, Linux, X11, parsing, screen-recording, complex systems, computational geometry, and much more
I can enter new fields pretty quickly. Therefore I may also accept project inquiries from other areas.
If a project is too far away from my core competencies, so that implementing the project is not economically feasible. I’ll say that honestly and will reject the project.

With my 32 years of experience with software development, I can estimate pretty well, which projects I can implement in a good way.
( I am of age 42 and have started software development with age 11 )

This means: If I accept a project, you can be sure that I will implement it well and on time.

I will post further details here. Or ask me.

Have a nice day,


P.S. I have implemented my software development process in 1995/1996 in my business and it has proven to be successful. Of course I have adapted and optimized it. You’ll read more about my software development process in other blog posts,

German translation:(not word by word, but approximate)

Ich werde ab 16.Dez fulltime selbständig sein.
Dabei werde ich auch wieder im Projektgeschäft tätig sein. ( neben meinem Produkt DemoRecorder. )
D.h. ich werde auch wieder Softwareentwicklungsaufträge durchführen.

Ich nehme ab sofort Projektanfragen an. (Bitte an christian.linhart at senden.)
Die Bearbeitung der Anfragen kann jedoch etwas dauern, weil meine Zeit bis zum 16, Dezember schon anderweitig verplant ist.

Dabei kann ich professionelle Projektabwicklung bieten:
Das bedeutet in erster Linie Termintreue und Qualität:
Bisher habe ich bei allen Softwareentwicklungsaufträgen, die ich seit 1995 angenommen habe, meine Liefertermine halten können und sehr gute Qualität abgeliefert.
Das erreiche ich durch realistische Aufwandsschätzungen und Einplanung entsprechend nötiger Pufferzeiten.
Dadurch kann ich ohne Stress und Drama eine gute Qualität pünktlich liefern.
Diesen Softwareentwicklungsprozess habe ich ca 1995/1996 in meinem Unternehmen implementiert und er hat sich sehr bewährt.

Ich biete auch langfristige Wartung für die von mir durchgeführten Projekte an. Das ist vor allem dann von Vorteil, wenn der Kunde keine internen Entwicklerkapazitäten für die Wartung einsetzen will. Ich kann natürlich auch die Entwickler des Kunden einschulen.

Ich lehne Aufträge ab, die früher geliefert werden müssten, als ich das guten Gewissens garantieren kann. ( Diesen Vorteil hat man als Unternehmer. Als Angestellter hat man da ja meistens keine Wahl und muss dann auch Projekte abwickeln, bei denen von vornherein klar ist, dass ein hohes Terminrisiko besteht o.ä. )

Entscheidend für den Erfolg eines Software Projekts ist vor allem die Aufwandsschätzung. Falls die Aufwandsschätzung ordentlich gemacht wurde, kann das Projekt termingerecht und mit guter Qualität fertiggestellt werden.

Deshalb wird normalerweise eine Aufwandsabschätzung und die Erstellung eins Angebot kostenpflichtig sein.
Ausnahmen gibt es vor allem für Projekte, die mit meinem Produkt DemoRecorder zu tun haben.

Meine Kernkompetenzen liegen u.a. bei C/C++, Linux, X11, Parsing, komplexen Systemen, algorithmischer Geometrie, und vieles mehr…
Ich kann mich jedoch sehr rasch in neue Gebiete einarbeiten, d.h. ich nehme auch Anfragen aus anderen Gebieten an.
Falls eine Anfrage so weit von meinen Kernkompetenzen weg liegen würde, dass eine wirtschaftliche Projektdurchführung nicht sinnvoll erscheint, dann sage ich das ehrlich und lehne den Auftrag ab.

Mit meinen 31 Jahren Erfahrung mit SW-Entwicklung kann ich recht gut beurteilen, welche Aufträge gut durchführbar sind.
( Ich bin 42 und habe mit 11 Jahren mit SW-Entwicklung angefangen )

D.h. wenn ich einen Auftrag annehme, dann könnt ihr sicher sein, dass ich das ordentlich und termingerecht abwickle.

Ich werde weitere Details hier posten oder fragen Sie mich.

Liebe Grüße,

Christian Linhart

P.S.: Mein Produkt DemoRecorder ist aus einem Projekt-Auftrag entstanden. (Die Rechte sind bei mir geblieben, weil mein damaliger Kunde zahlungsunfähig war.)

P.P.S.:Es kann sein, dass ich bald mal nach Mitarbeitern suchen werde,
Wenn da etwas spruchreif werden sollte, werde ich das hier posten