Showing posts from July, 2009

Mini HOWTO: Create a PDF document from multiple images

Sometimes it is required to send someone multiple images. Of course, you can send these images as they are, or you can create and send an archive of these images. But it will be more convenient to send a PDF document. In that case the recipient can easily open the document and he/she will see these images in the sequence you assumed.

There is a powerful software suite called ImageMagick. It provides various utilities for any graphics processing demands. Now we are interested in a convert utility. It has many useful features and it is really irreplaceable for the image batch-processing like in our case.

The command for converting images is pretty simple:

$ convert -define pdf:use-cropbox=true -density 72x72 -resample 72x72 -compress JPEG *.png result.pdf
The convert utility takes all PNG-images in the current directory and creates a PDF-document from it.

You can modify any options as you want. Let's have a look at some of them:
density and resample - these options are required for…

My FOSS projects

Updated list of the projects I'm working on:Mail Dispatcher (role: admin, platform: Python/PyGTK) - A tool for dispatching (basically, deleting) email messages on POP3 server via Plain or SSL connection with advanced filtering capabilities.DHCP Explorer (role: admin, platform: Python) - A console cross-platform tool for locating all available DHCP servers.sdict2db (role: admin, platform: C#/WinForms) - Parser for SDict-based format dictionaries with ability to save in a SQL server (with creating table, index and filling data) and in a text file (SDict text format).DNN Dictionary (role: admin, platform: C#/DotNetNuke) - A DotNetNuke module for translating texts using SDict-based ( dictionaries. It works using AJAX mechanism so there is no pages reloading during translating.Geek Workspace (role: admin, platform: Python/PyQt4) - Geek Workspace is a desktop environment aimed for developers, scientists, engineers and students. The key point is a programmed control o…

Creating video conference application with GStreamer

GStreamer is a library for constructing graphs of media-handling components. The applications it supports range from simple Ogg/Vorbis playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing. GStreamer is released under the LGPL, so it can be used in commercial applications.

The power of GStreamer is in its module infrastructure - you're working with certain "blocks", combine it with "pipes" and got results without any coding (via gst-launch utility). Of course, after playing with gst-launch you can write an application in any language you prefer (GStreamer supports various bindings and due to fact that GStreamer is written in C, I do not see any problems to bind it with an application that is developed in any serious programming language).

I do not want to explain GStream basics, but move forward to the blog topic - creating videoconference application. If you want certain tutorial, please take a look to the Python …