warp
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 27
Time::Warp 0.5
Time::Warp is a Perl module to control over the flow of time. more>>
Time::Warp is a Perl module to control over the flow of time.
SYNOPSIS
use Time::Warp qw(scale to time);
to(time + 5); # 5 seconds ahead
scale(2); # make time flow twice normal
Our external experience unfolds in 3 1/2 dimensions (time has a dimensionality of 1/2). The Time::Warp module offers developers control over the measurement of time.
API
to($desired_time)
The theory of relativity asserts that all physical laws are enforced relative to the observer. Since the starting point of time is arbitrary, it is permissable to change it. This has the effect of making it appear as if time is moving forwards or backward instanteously. For example, on some types of operating systems time starts at Wed Dec 31 19:00:00 1969 (this will likely change as we approach 2030 and with the acceptance of 64-bit CPUs).
to(time + 60*60); # 1 hour ahead
scale($factor)
Changes the speed at which time is progressing.
scale(scale * 2); # double the speed of time
Note that it is not possible to stop time or cause it to reverse since this is forbidden by the second law of thermodynamics.
<<lessSYNOPSIS
use Time::Warp qw(scale to time);
to(time + 5); # 5 seconds ahead
scale(2); # make time flow twice normal
Our external experience unfolds in 3 1/2 dimensions (time has a dimensionality of 1/2). The Time::Warp module offers developers control over the measurement of time.
API
to($desired_time)
The theory of relativity asserts that all physical laws are enforced relative to the observer. Since the starting point of time is arbitrary, it is permissable to change it. This has the effect of making it appear as if time is moving forwards or backward instanteously. For example, on some types of operating systems time starts at Wed Dec 31 19:00:00 1969 (this will likely change as we approach 2030 and with the acceptance of 64-bit CPUs).
to(time + 60*60); # 1 hour ahead
scale($factor)
Changes the speed at which time is progressing.
scale(scale * 2); # double the speed of time
Note that it is not possible to stop time or cause it to reverse since this is forbidden by the second law of thermodynamics.
Download (0.003MB)
Added: 2007-04-10 License: Perl Artistic License Price:
928 downloads
Warp Rogue 0.7.7b
Warp Rogue is a gothic science fantasy roguelike game. more>>
Warp Rogue is a gothic science fantasy roguelike game. It features RPG-like game mechanics, recruitable NPCs, and a consistent theme.
Enhancements:
- Recruiting was fixed.
- A new floor symbol was added.
<<lessEnhancements:
- Recruiting was fixed.
- A new floor symbol was added.
Download (0.29MB)
Added: 2007-06-09 License: Public Domain Price:
874 downloads
Config::Model::WarpedThing 0.611
Config::Model::WarpedThing is a base class for warped classes. more>>
Config::Model::WarpedThing is a base class for warped classes.
SYNOPSIS
use base qw/Config::Model::WarpedThing/ ;
This class must be inherited by all classes that can be warped by Config::Model::Value. This class provides a set of methods that are expected by a warp master from a warped class.
Currently this class is inherited by Config::Model::Value, Config::Model::AnyId and Config::Model::WarpedNode.
WarpThing does not provide a constructor.
<<lessSYNOPSIS
use base qw/Config::Model::WarpedThing/ ;
This class must be inherited by all classes that can be warped by Config::Model::Value. This class provides a set of methods that are expected by a warp master from a warped class.
Currently this class is inherited by Config::Model::Value, Config::Model::AnyId and Config::Model::WarpedNode.
WarpThing does not provide a constructor.
Download (0.12MB)
Added: 2007-07-06 License: Perl Artistic License Price:
840 downloads
nwfiir 0s
Nwfiir audio tools is a free suite of console programs for your Unix machine to process high resolution digital audio. more>>
Nwfiir audio tools is a free suite of console programs for your Unix machine (Linux in particular) to process high resolution digital audio. The suites core program is nwfiir, which is a real-time digital equaliser. The name is a combination of the abbrevations FIR, IIR, WFIR and WIIR, that is four types of filters, Finite Impulse Response, Infinite Impulse Response and their warped counterparts. Currently only FIR and WFIR have been implemented in the application
The goal of room equalisation is to have a desired power response in the listening position. The desired response is most often the flat one, that is when all frequencies in the audible range, from 20 - 20000 Hz, are equally amplified. You may own very expensive speakers and amplifiers and so on, that will produce a flat power response, but only if it is placed in an anechoic lab environment. The room have a profound impact on the sound.
To minimise the problems, one can measure the power response in the listening position with a microphone, and with help of that put in a precisely tuned equaliser that minimises the rooms negative impact on the sound. Commercial systems exist for this (Roister, Tact Audio), however they are still very, very expensive. The software presented here is a a full room equalisation system, apart from the hardware which you may well own already anyway.
Enhancements:
- New component: fird, a FIR filter designer, however with no psycho-acoustic stuff yet.
- A quick hack: fconv, a fast convolver, ugly code lack of features and so on, but can be used to demonstrate how much faster fast convolution is than convolution in the time domain (which nwfiir does).
- Fixed some Makefile stuff.
<<lessThe goal of room equalisation is to have a desired power response in the listening position. The desired response is most often the flat one, that is when all frequencies in the audible range, from 20 - 20000 Hz, are equally amplified. You may own very expensive speakers and amplifiers and so on, that will produce a flat power response, but only if it is placed in an anechoic lab environment. The room have a profound impact on the sound.
To minimise the problems, one can measure the power response in the listening position with a microphone, and with help of that put in a precisely tuned equaliser that minimises the rooms negative impact on the sound. Commercial systems exist for this (Roister, Tact Audio), however they are still very, very expensive. The software presented here is a a full room equalisation system, apart from the hardware which you may well own already anyway.
Enhancements:
- New component: fird, a FIR filter designer, however with no psycho-acoustic stuff yet.
- A quick hack: fconv, a fast convolver, ugly code lack of features and so on, but can be used to demonstrate how much faster fast convolution is than convolution in the time domain (which nwfiir does).
- Fixed some Makefile stuff.
Download (0.057MB)
Added: 2006-07-25 License: GPL (GNU General Public License) Price:
1188 downloads
Japa 0.1.2
Japa is a perceptual or psychoacoustic audio spectrum analyser. more>>
Japa short from JACK and ALSA Perceptual Analyser is a perceptual or psychoacoustic audio spectrum analyser.
In contrast to JAAA, this is more an acoustical or musical tool than a purely technical one.
Possible uses include spectrum monitoring while mixing or mastering, evaluation of ambient noise, and (using pink noise), equalisation of PA systems.
JAPA allows you to measure two inputs at the same time, compare them, store them to memory and compare them to stored traces. It offers a number of resolutions, speeds, and various display options. The dual inputs and memories will find their way into future JAAA versions as well.
Display controls:
The controls below the spectrum window modify only the way things are presented, and not the actual measurement.
Range: Vertical display range, 20, 40, 60 or 80 dB. There are two scales. The one at the left is used for absolute displays. The one at the right always has 0 dB at half scale and is used when comparing two signals.
Scale: Controls the frequency scale. Grid lines are one octave apart, minor ticks are 1/3 octave. The default scale is logarithmic with ticks the standard 1/3 octave frequencies. There are two alternatives:
440 Hz log scale (click ) This follows the filter bandwidths, i.e. all filters will have the same width on the screen. The exact layout of this scale depends on the "warp factor" (see below).
Resp: The normal frequency response is flat in the sense that it will correctly indicate the level of a sine wave at all frequencies. The Prop setting adds a correction that is inversely proportional to the relative bandwidth of each filter. This will give a flat display when the input is pink noise.
Input controls:
There are two channels, called A and B. Each of them can be connected to one of four inputs, or switched off (this conserves CPU cycles - switching off the corresponding trace display does not).
Below the input selection is the gain control. Input gain can be set in steps of 5 dB. There are two more buttons:
Auto: Sets the gain based on the current signal level. This a momentary action.
Lnk: The second channels gain can be linked to the first for stereo operation. This includes the Auto function.
Analyser controls
Resol: Resolution of the filter bank. This sets the FFT size to 128, 256, or 512. The number of filters effectively used is almost equal to this number (japa interpolates between FFT bins to give correct amplitudes at all frequencies).
Warp: JAPA uses a warped FFT to analyse the spectrum. Frequency warping is done by replacing each delay element in the digital processing by an all-pass filter. This control allows you to set the warp factor, and this in turn determines how the filter bandwidths change as a function of the center frequency. You can see the warped scales by selecting the Warp option in the Scale display control. The default setting corresponds closely to the Bark scale. Higher values give more detail in the lower frequency range at the expense of the higher.
Speed: This controls the averaging filters that follow the spectrum analyser. The Low setting is mainly for noise measurement.
Memory store controls:
Each channel has a peak hold function. Note that this operates *after* the averaging done in the analyser and set by the Speed controls. There are two memories called X and Y. The current data for each channel can be stored to either memory. When the peak hold function is active, the current peak values are stored.
Note: the peak hold function and the two memories are reset when either the Resolution or Warp factor are changed. This may change in future versions.
Note: the gain controls are shown as part of the input blocks, but in reality the gain is applied only much later: when a trace is displayed or stored to memory. The result is that the peak hold function is not disturbed by changing the gain.
Trace display controls:
Three traces can be displayed at any time, and each row controls one of them. Options of the form A/B compare two inputs or memories. This means that the difference in dB between them is displayed rather than the actual levels.
<<lessIn contrast to JAAA, this is more an acoustical or musical tool than a purely technical one.
Possible uses include spectrum monitoring while mixing or mastering, evaluation of ambient noise, and (using pink noise), equalisation of PA systems.
JAPA allows you to measure two inputs at the same time, compare them, store them to memory and compare them to stored traces. It offers a number of resolutions, speeds, and various display options. The dual inputs and memories will find their way into future JAAA versions as well.
Display controls:
The controls below the spectrum window modify only the way things are presented, and not the actual measurement.
Range: Vertical display range, 20, 40, 60 or 80 dB. There are two scales. The one at the left is used for absolute displays. The one at the right always has 0 dB at half scale and is used when comparing two signals.
Scale: Controls the frequency scale. Grid lines are one octave apart, minor ticks are 1/3 octave. The default scale is logarithmic with ticks the standard 1/3 octave frequencies. There are two alternatives:
440 Hz log scale (click ) This follows the filter bandwidths, i.e. all filters will have the same width on the screen. The exact layout of this scale depends on the "warp factor" (see below).
Resp: The normal frequency response is flat in the sense that it will correctly indicate the level of a sine wave at all frequencies. The Prop setting adds a correction that is inversely proportional to the relative bandwidth of each filter. This will give a flat display when the input is pink noise.
Input controls:
There are two channels, called A and B. Each of them can be connected to one of four inputs, or switched off (this conserves CPU cycles - switching off the corresponding trace display does not).
Below the input selection is the gain control. Input gain can be set in steps of 5 dB. There are two more buttons:
Auto: Sets the gain based on the current signal level. This a momentary action.
Lnk: The second channels gain can be linked to the first for stereo operation. This includes the Auto function.
Analyser controls
Resol: Resolution of the filter bank. This sets the FFT size to 128, 256, or 512. The number of filters effectively used is almost equal to this number (japa interpolates between FFT bins to give correct amplitudes at all frequencies).
Warp: JAPA uses a warped FFT to analyse the spectrum. Frequency warping is done by replacing each delay element in the digital processing by an all-pass filter. This control allows you to set the warp factor, and this in turn determines how the filter bandwidths change as a function of the center frequency. You can see the warped scales by selecting the Warp option in the Scale display control. The default setting corresponds closely to the Bark scale. Higher values give more detail in the lower frequency range at the expense of the higher.
Speed: This controls the averaging filters that follow the spectrum analyser. The Low setting is mainly for noise measurement.
Memory store controls:
Each channel has a peak hold function. Note that this operates *after* the averaging done in the analyser and set by the Speed controls. There are two memories called X and Y. The current data for each channel can be stored to either memory. When the peak hold function is active, the current peak values are stored.
Note: the peak hold function and the two memories are reset when either the Resolution or Warp factor are changed. This may change in future versions.
Note: the gain controls are shown as part of the input blocks, but in reality the gain is applied only much later: when a trace is displayed or stored to memory. The result is that the peak hold function is not disturbed by changing the gain.
Trace display controls:
Three traces can be displayed at any time, and each row controls one of them. Options of the form A/B compare two inputs or memories. This means that the difference in dB between them is displayed rather than the actual levels.
Download (0.033MB)
Added: 2006-02-03 License: GPL (GNU General Public License) Price:
1358 downloads
Ardour 2.0.5
Ardour is a professional multitrack/multichannel audio recorder and DAW for Linux. more>>
Ardour project is a digital audio workstation. You can use it to record, edit and mix multi-track audio. Produce your own CDs. Mix video soundtracks. Experiment with new ideas about music and sound. Generate sound installations for 12 speaker gallery shows. Have Fun.
Ardour capabilities include: multichannel recording, non-linear, non-destructive region based editing with unlimited undo/redo, full automation support, a mixer whose capabilities rival high end hardware consoles, lots of plugins to warp, shift and shape your music, and controllable from hardware control surfaces at the same time as it syncs to timecode.
If youve been looking for a tool similar to ProTools, Nuendo, Cubase SX, Digital Performer, Samplitude or Sequoia, you might have found it.
<<lessArdour capabilities include: multichannel recording, non-linear, non-destructive region based editing with unlimited undo/redo, full automation support, a mixer whose capabilities rival high end hardware consoles, lots of plugins to warp, shift and shape your music, and controllable from hardware control surfaces at the same time as it syncs to timecode.
If youve been looking for a tool similar to ProTools, Nuendo, Cubase SX, Digital Performer, Samplitude or Sequoia, you might have found it.
Download (1.3MB)
Added: 2007-08-05 License: GPL (GNU General Public License) Price:
537 downloads
ParaView 2.6.0
ParaView project is an application designed with the need to visualize large data sets in mind. more>>
ParaView project is an application designed with the need to visualize large data sets in mind. The goals of the ParaView project include the following:
- Develop an open-source, multi-platform visualization application.
- Support distributed computation models to process large data sets.
- Create an open, flexible, and intuitive user interface.
- Develop an extensible architecture based on open standards.
ParaView runs on distributed and shared memory parallel as well as single processor systems and has been succesfully tested on Windows, Linux and various Unix workstations and clusters. Under the hood, ParaView uses the Visualization Toolkit as the data processing and rendering engine and has a user interface written using a unique blend of Tcl/Tk and C++. Please go here for a detailed list of features.
ParaView was created by Kitware in conjunction with Jim Ahrens of the Advanced Computing Laboratory at Los Alamos National Laboratory (LANL). Contributors and developers of ParaView currently include: Kitware, LANL, Sandia National Laboratories, and Army Research Laboratory. ParaView is funded by the US Department of Energy ASCI Views program as part of a three-year contract awarded to Kitware, Inc. by a consortium of three National Labs - Los Alamos, Sandia, and Livermore. The goal of the project is to develop scalable parallel processing tools with an emphasis on distributed memory implementations. The project includes parallel algorithms, infrastructure, I/O, support, and display devices. One significant feature of the contract is that all software developed is to be delivered open source. Hence ParaView is available as an open-source system.
Main features:
- Handles structured (uniform rectilinear, non-uniform rectilinear, and curvilinear grids), unstructured, polygonal and image data.
- All processing operations (filters) produce datasets. This allows the user to either further process or save as a data file the result of every operation. For example, the user can extract a cut surface, reduce the number of points on this surface by masking, and apply glyphs (for example, vector arrows) to the result.
- Contours and isosurfaces can be extracted from all data types using scalars or vector components. The results can be colored by any other variable or processed further. When possible, structured data contours/isosurfaces are extracted with fast and efficient algorithms which make use of the special data layout.
- Vectors fields can be inspected by applying glyphs (arrows, cones, lines, spheres, and various 2D glyphs) to the points in a dataset. The glyphs can be scaled by scalars, vector component or vector magnitude and can be oriented using a vector field.
- A sub-region of a dataset can be extracted by cutting or clipping with an arbitrary plane (all data types), specifying a threshold criteria to exclude cells (all data types) and/or specifying a VOI (volume of interest - structured data types only)
- Streamlines can be generated using constant step or adaptive integrators. The results can be displayed as points, lines, tubes, ribbons, etc., and can be processed by a multitude of filters.
- The points in a dataset can be warped (displaced) with scalars (given a user defined displacement vector) or with vectors (unavailable for non-linear rectilinear grids).
- With the array calculator, new variables can be computed using existing point or cell field arrays. A multitude of scalar and vector operations are supported.
- Data can be probed at a point or along a line. The results are displayed either graphically or as text and can be exported for further analysis.
- ParaView provides many other data sources and filters by default (edge extraction, surface extraction, reflection, decimation, extrusion, smoothing...) and any VTK filter can be added by providing a simple XML description (VTK provides hundreds of sources and filters, see VTK documentation for a complete list).
Enhancements:
- This release adds parallel uniform rectilinear grid volume rendering (vtkImageData).
- It introduces new algorithms for parallel unstructured grid volume rendering.
- Support for hardware accelerated offscreen rendering using OpenGL framebuffers.
- Improved multi-block support.
- Improved AMR support.
- Animation saving with ffmpeg.
- Filters have been added for FLUENT, OpenFOAM, MFIX, LSDyna, and AcuSolve.
- A gradient filter for unstructured data.
- Many other enhancements and bugfixes.
<<less- Develop an open-source, multi-platform visualization application.
- Support distributed computation models to process large data sets.
- Create an open, flexible, and intuitive user interface.
- Develop an extensible architecture based on open standards.
ParaView runs on distributed and shared memory parallel as well as single processor systems and has been succesfully tested on Windows, Linux and various Unix workstations and clusters. Under the hood, ParaView uses the Visualization Toolkit as the data processing and rendering engine and has a user interface written using a unique blend of Tcl/Tk and C++. Please go here for a detailed list of features.
ParaView was created by Kitware in conjunction with Jim Ahrens of the Advanced Computing Laboratory at Los Alamos National Laboratory (LANL). Contributors and developers of ParaView currently include: Kitware, LANL, Sandia National Laboratories, and Army Research Laboratory. ParaView is funded by the US Department of Energy ASCI Views program as part of a three-year contract awarded to Kitware, Inc. by a consortium of three National Labs - Los Alamos, Sandia, and Livermore. The goal of the project is to develop scalable parallel processing tools with an emphasis on distributed memory implementations. The project includes parallel algorithms, infrastructure, I/O, support, and display devices. One significant feature of the contract is that all software developed is to be delivered open source. Hence ParaView is available as an open-source system.
Main features:
- Handles structured (uniform rectilinear, non-uniform rectilinear, and curvilinear grids), unstructured, polygonal and image data.
- All processing operations (filters) produce datasets. This allows the user to either further process or save as a data file the result of every operation. For example, the user can extract a cut surface, reduce the number of points on this surface by masking, and apply glyphs (for example, vector arrows) to the result.
- Contours and isosurfaces can be extracted from all data types using scalars or vector components. The results can be colored by any other variable or processed further. When possible, structured data contours/isosurfaces are extracted with fast and efficient algorithms which make use of the special data layout.
- Vectors fields can be inspected by applying glyphs (arrows, cones, lines, spheres, and various 2D glyphs) to the points in a dataset. The glyphs can be scaled by scalars, vector component or vector magnitude and can be oriented using a vector field.
- A sub-region of a dataset can be extracted by cutting or clipping with an arbitrary plane (all data types), specifying a threshold criteria to exclude cells (all data types) and/or specifying a VOI (volume of interest - structured data types only)
- Streamlines can be generated using constant step or adaptive integrators. The results can be displayed as points, lines, tubes, ribbons, etc., and can be processed by a multitude of filters.
- The points in a dataset can be warped (displaced) with scalars (given a user defined displacement vector) or with vectors (unavailable for non-linear rectilinear grids).
- With the array calculator, new variables can be computed using existing point or cell field arrays. A multitude of scalar and vector operations are supported.
- Data can be probed at a point or along a line. The results are displayed either graphically or as text and can be exported for further analysis.
- ParaView provides many other data sources and filters by default (edge extraction, surface extraction, reflection, decimation, extrusion, smoothing...) and any VTK filter can be added by providing a simple XML description (VTK provides hundreds of sources and filters, see VTK documentation for a complete list).
Enhancements:
- This release adds parallel uniform rectilinear grid volume rendering (vtkImageData).
- It introduces new algorithms for parallel unstructured grid volume rendering.
- Support for hardware accelerated offscreen rendering using OpenGL framebuffers.
- Improved multi-block support.
- Improved AMR support.
- Animation saving with ffmpeg.
- Filters have been added for FLUENT, OpenFOAM, MFIX, LSDyna, and AcuSolve.
- A gradient filter for unstructured data.
- Many other enhancements and bugfixes.
Download (29.3MB)
Added: 2007-03-19 License: GPL (GNU General Public License) Price:
958 downloads
GMap 0.0.4 Alpha
GMap is a Map editor for GPS maps that runs on linux. more>>
GMap is a Map editor for GPS maps that runs on linux. This project is a work in progress. GMap reads various formats and writes .mp polish map format files suitable for compiling using the cgpsmapper compiler.
I also have some notes relating to the use of GPS tools on Linux and the use of cGPSmapper on Linux and M$-Windows.
Currently the development is at an alpha stage. However it is starting to provide some basic funtionality so there is a copy here for anyone that wants to play.
Note that this is the only doc there is at the moment, it is incomplete and may also be slightly out of sync with the uploaded executable.
Main features:
- Display tracks and area (POLYLINE/POLYGON) features.
- Some POI support
- Editing of track and area features.
- Limited UNDO, currently should handle add, delete and move points. Split tracks. Convert a track to an area feature. Dont rely on it. Save often.
- Read and write data data to Polish format map data files. These are suitable for feeding to the cGPSmapper map compiler.
- Read tracks and waypoints from ".gpx" files (from gpsbabel or mapsource uploads)
- Read Tracks and points from google earth ".kml" files (not .kmz)
- Saves to named file or first input file. Original input is renamed to oldname;version (eg gmap fred.mp -> save renames to fred.mp;1 etc)
- Holds 2 sets of map data, one as a reference which is not written out. You can merge as many files as you like on read.
- Some handling of things with holes.
- Map warping. Allows you to warp one set of map data so it aligns correctly with another set of data. Example being to fix data estimated from images or maps against correct ground tracks.
- Knows something about the world being curved.
- Can read tracks, waypoints and current position from my garmin GPSMap 60CSx and a ForeRunner301
<<lessI also have some notes relating to the use of GPS tools on Linux and the use of cGPSmapper on Linux and M$-Windows.
Currently the development is at an alpha stage. However it is starting to provide some basic funtionality so there is a copy here for anyone that wants to play.
Note that this is the only doc there is at the moment, it is incomplete and may also be slightly out of sync with the uploaded executable.
Main features:
- Display tracks and area (POLYLINE/POLYGON) features.
- Some POI support
- Editing of track and area features.
- Limited UNDO, currently should handle add, delete and move points. Split tracks. Convert a track to an area feature. Dont rely on it. Save often.
- Read and write data data to Polish format map data files. These are suitable for feeding to the cGPSmapper map compiler.
- Read tracks and waypoints from ".gpx" files (from gpsbabel or mapsource uploads)
- Read Tracks and points from google earth ".kml" files (not .kmz)
- Saves to named file or first input file. Original input is renamed to oldname;version (eg gmap fred.mp -> save renames to fred.mp;1 etc)
- Holds 2 sets of map data, one as a reference which is not written out. You can merge as many files as you like on read.
- Some handling of things with holes.
- Map warping. Allows you to warp one set of map data so it aligns correctly with another set of data. Example being to fix data estimated from images or maps against correct ground tracks.
- Knows something about the world being curved.
- Can read tracks, waypoints and current position from my garmin GPSMap 60CSx and a ForeRunner301
Download (0.93MB)
Added: 2007-05-15 License: Free for non-commercial use Price:
908 downloads
Games::Irrlicht 0.04
Games::Irrlicht is a Perl module that use the Irrlicht 3D Engine in Perl. more>>
Games::Irrlicht is a Perl module that use the Irrlicht 3D Engine in Perl.
SYNOPSIS
package MyGame;
use strict;
use base Games::Irrlicht;
use Games::Irrlicht::Constants; get EDT_SOFTWARE etc
# override methods:
The Why
When building a game or screensaver displaying some continously running animation, a couple of basics need to be done to get a smooth animation and to care of copying with varying speeds of the system. Ideally, the animation displayed should be always the same, no matter how fast the system is.
This not only includes different systems (a PS/2 for instance would be slower than a 3 Ghz PC system), but also changes in the speed of the system over time, for instance when a background process uses some CPU time or the complexity of the scene changes.
In many old (especial DOS) games, like the famous Wing Commander series, the animation would be drawn simple as fast as the system could, meaning that if you would try to play such a game on a modern machine it we end before you had the chance to click a button, simple because it wizzes a couple 10,000 frames per second past your screen.
While it is quite simple to restrict the maximum framerate possible, care must be taken to not just "burn" surplus CPU cycles. Instead the application should free the CPU whenever possible and give other applications/thread a chance to run. This is especially important for low-priority applications like screensavers.
Games::Irrlicht makes this possible for you without you needing to worry about how this is done. It will restrict the frame rate to a possible maximum and tries to achive the average framerate as close as possible to this maximum.
Games::Irrlicht also monitors the average framerate and gives you access to this value, so that you can, for instance, adjust the scene complexity based on the current framerate. You can access the current framerate, averaged over the last second (1000 ms) by calling current_fps.
Frame-rate Independend Clock
Now that our application is drawing frames (via the method draw_frame, which you should override in a subclass), we need a method to decouple the animation speed from the framerate.
If we would simple put put an animation step every frame, we would get some sort of Death of the Fast Machine" effect ala Wing Commander. E.g. if the system manages only 10 FPS, the animation would be slower than when we do 60 FPS.
To achive this, SDL::App::FPS features a clock, which runs independed of the current frame rate (and actually, independend of the systems clock, but more on this in the next section).
You can access it via a call to current_time, and it will return the ticks e.g. the number of milliseconds elapsed since the start of the application.
To effectively decouple animation speed from FPS, get at each frame the current time, then move all objects (or animation sequences) according to their speed and display them at the location that matches the time at the start of the frame. See examples/ for an example on how to do this.
Note that it is better to draw all objects according to the time at the start of the frame, and not according to the time when you draw a particular object. Or in other words, treat the time like it is standing still when drawing a complete frame. Thus each frame becomes a snapshot in time, and you dont get nasty sideeffects like one object beeing always "behind" the others just because it gets drawn earlier.
Time Warp
Now that we have a constant animation speed independend from framerate or system speed, lets have some fun.
Since all our animation steps are coupled to the current time, we can play tricks with the current time.
The function time_warp lets you access a time warp factor. The default is 1.0, but you can set it to any value you like. If you set it, for instance to 0.5, the time will pass only half as fast as it used to be. This means instant slow motion! And when you really based all your animation on the current time, as you should, then it will really slow down your entire game to a crawl.
Likewise a time warp of 2 lets the time pass twice as fast. There are virtually no restrictions to the time warp.
For instance, a time warp greater than one lets the player pass boring moments in a game, for instance when you need to wait for certain events in a strategy game, like your factory beeing completed.
Try to press the left (fast forward), right (slow motion) and middle (normal) mousebuttons in the example application and watch the effect.
If you are very bored, press the b key and see that even negative time warps are possible...
Ramping Time Warp
Now, setting the time war to factor of N is nice, but sometimes you want to make dramatic effects, like slowly freezing the time into ultra slow motion or speeding it up again.
For this, ramp_time_warp can be used. You give it a time warp factor you want to reach, and a time (based on real time, not the warped, but you can of course change this). Over the course of the time you specified, the time warp factor will be adapted until it reaches the new value. This means it is possible to slowly speeding up or down.
You can also check whether the time warp is constant or currently ramping by using time_is_ramping. When a ramp is in effect, call ramp_time_warp without arguments to get the current parameters. See below for details.
The example application uses the ramping effect instead instant time warp.
Event handlers
This section describes events as external events that typically happen due to user intervention.
Such events are keypresses, mouse movement, mouse button presses, or just the flipping of the power switch. Of course the last event cannot be handled in a sane way by our framework.
All the events are checked and handled by Games::Irrlicht automatically. The event QUIT (which denotes that the application should shut down) is also carried out automatically. If you want to do some tidying up when this happens, override the method quit_handler.
The event checking and handling is done at the start of each frame. This means no event will happen while you draw the current frame. Well, it will happen, but the action caused by that event will delayed until the next frame starts. This simplifies the frame drawing routine tremendously, since you know that your world will be static until the next frame.
<<lessSYNOPSIS
package MyGame;
use strict;
use base Games::Irrlicht;
use Games::Irrlicht::Constants; get EDT_SOFTWARE etc
# override methods:
The Why
When building a game or screensaver displaying some continously running animation, a couple of basics need to be done to get a smooth animation and to care of copying with varying speeds of the system. Ideally, the animation displayed should be always the same, no matter how fast the system is.
This not only includes different systems (a PS/2 for instance would be slower than a 3 Ghz PC system), but also changes in the speed of the system over time, for instance when a background process uses some CPU time or the complexity of the scene changes.
In many old (especial DOS) games, like the famous Wing Commander series, the animation would be drawn simple as fast as the system could, meaning that if you would try to play such a game on a modern machine it we end before you had the chance to click a button, simple because it wizzes a couple 10,000 frames per second past your screen.
While it is quite simple to restrict the maximum framerate possible, care must be taken to not just "burn" surplus CPU cycles. Instead the application should free the CPU whenever possible and give other applications/thread a chance to run. This is especially important for low-priority applications like screensavers.
Games::Irrlicht makes this possible for you without you needing to worry about how this is done. It will restrict the frame rate to a possible maximum and tries to achive the average framerate as close as possible to this maximum.
Games::Irrlicht also monitors the average framerate and gives you access to this value, so that you can, for instance, adjust the scene complexity based on the current framerate. You can access the current framerate, averaged over the last second (1000 ms) by calling current_fps.
Frame-rate Independend Clock
Now that our application is drawing frames (via the method draw_frame, which you should override in a subclass), we need a method to decouple the animation speed from the framerate.
If we would simple put put an animation step every frame, we would get some sort of Death of the Fast Machine" effect ala Wing Commander. E.g. if the system manages only 10 FPS, the animation would be slower than when we do 60 FPS.
To achive this, SDL::App::FPS features a clock, which runs independed of the current frame rate (and actually, independend of the systems clock, but more on this in the next section).
You can access it via a call to current_time, and it will return the ticks e.g. the number of milliseconds elapsed since the start of the application.
To effectively decouple animation speed from FPS, get at each frame the current time, then move all objects (or animation sequences) according to their speed and display them at the location that matches the time at the start of the frame. See examples/ for an example on how to do this.
Note that it is better to draw all objects according to the time at the start of the frame, and not according to the time when you draw a particular object. Or in other words, treat the time like it is standing still when drawing a complete frame. Thus each frame becomes a snapshot in time, and you dont get nasty sideeffects like one object beeing always "behind" the others just because it gets drawn earlier.
Time Warp
Now that we have a constant animation speed independend from framerate or system speed, lets have some fun.
Since all our animation steps are coupled to the current time, we can play tricks with the current time.
The function time_warp lets you access a time warp factor. The default is 1.0, but you can set it to any value you like. If you set it, for instance to 0.5, the time will pass only half as fast as it used to be. This means instant slow motion! And when you really based all your animation on the current time, as you should, then it will really slow down your entire game to a crawl.
Likewise a time warp of 2 lets the time pass twice as fast. There are virtually no restrictions to the time warp.
For instance, a time warp greater than one lets the player pass boring moments in a game, for instance when you need to wait for certain events in a strategy game, like your factory beeing completed.
Try to press the left (fast forward), right (slow motion) and middle (normal) mousebuttons in the example application and watch the effect.
If you are very bored, press the b key and see that even negative time warps are possible...
Ramping Time Warp
Now, setting the time war to factor of N is nice, but sometimes you want to make dramatic effects, like slowly freezing the time into ultra slow motion or speeding it up again.
For this, ramp_time_warp can be used. You give it a time warp factor you want to reach, and a time (based on real time, not the warped, but you can of course change this). Over the course of the time you specified, the time warp factor will be adapted until it reaches the new value. This means it is possible to slowly speeding up or down.
You can also check whether the time warp is constant or currently ramping by using time_is_ramping. When a ramp is in effect, call ramp_time_warp without arguments to get the current parameters. See below for details.
The example application uses the ramping effect instead instant time warp.
Event handlers
This section describes events as external events that typically happen due to user intervention.
Such events are keypresses, mouse movement, mouse button presses, or just the flipping of the power switch. Of course the last event cannot be handled in a sane way by our framework.
All the events are checked and handled by Games::Irrlicht automatically. The event QUIT (which denotes that the application should shut down) is also carried out automatically. If you want to do some tidying up when this happens, override the method quit_handler.
The event checking and handling is done at the start of each frame. This means no event will happen while you draw the current frame. Well, it will happen, but the action caused by that event will delayed until the next frame starts. This simplifies the frame drawing routine tremendously, since you know that your world will be static until the next frame.
Download (0.039MB)
Added: 2006-09-30 License: Perl Artistic License Price:
1126 downloads
Imager::Engines 0.54
Imager::Engines is a Perl module for programmable transformation operations. more>>
Imager::Engines is a Perl module for programmable transformation operations.
SYNOPSIS
use Imager;
my %opts;
my @imgs;
my $img;
...
my $newimg = $img->transform(
xexpr=>x,
yexpr=>y+10*sin((x+y)/10))
or die $img->errstr;
my $newimg = Imager::transform2(%opts, @imgs)
or die "transform2 failed: $Imager::ERRSTR";
my $newimg = $img->matrix_transform(
matrix=>[ -1, 0, $img->getwidth-1,
0, 1, 0,
0, 0, 1 ]);
transform
The transform() function can be used to generate spatial warps and rotations and such effects. It only operates on a single image and its only function is to displace pixels.
It can be given the operations in postfix notation or the module Affix::Infix2Postfix can be used to generate postfix code from infix code. Look in the test case t/t55trans.t for an example.
transform() needs expressions (or opcodes) that determine the source pixel for each target pixel. Source expressions are infix expressions using any of the +, -, *, / or ** binary operators, the - unary operator, ( and ) for grouping and the sin() and cos() functions. The target pixel is input as the variables x and y.
You specify the x and y expressions as xexpr and yexpr respectively. You can also specify opcodes directly, but thats magic deep enough that you can look at the source code.
<<lessSYNOPSIS
use Imager;
my %opts;
my @imgs;
my $img;
...
my $newimg = $img->transform(
xexpr=>x,
yexpr=>y+10*sin((x+y)/10))
or die $img->errstr;
my $newimg = Imager::transform2(%opts, @imgs)
or die "transform2 failed: $Imager::ERRSTR";
my $newimg = $img->matrix_transform(
matrix=>[ -1, 0, $img->getwidth-1,
0, 1, 0,
0, 0, 1 ]);
transform
The transform() function can be used to generate spatial warps and rotations and such effects. It only operates on a single image and its only function is to displace pixels.
It can be given the operations in postfix notation or the module Affix::Infix2Postfix can be used to generate postfix code from infix code. Look in the test case t/t55trans.t for an example.
transform() needs expressions (or opcodes) that determine the source pixel for each target pixel. Source expressions are infix expressions using any of the +, -, *, / or ** binary operators, the - unary operator, ( and ) for grouping and the sin() and cos() functions. The target pixel is input as the variables x and y.
You specify the x and y expressions as xexpr and yexpr respectively. You can also specify opcodes directly, but thats magic deep enough that you can look at the source code.
Download (0.83MB)
Added: 2006-10-17 License: Perl Artistic License Price:
1102 downloads

WCD 5.0.4
It saves time typing at the keyboard. One needs to type only a part of a directory name and wcd will jump to it. more>>
WCD 5.0.4 brings users the convenience of a program which can change directory quickly. It saves time typing at the keyboard. One needs to type only a part of a directory name and wcd will jump to it. By default wcd searches for a directory with a name that begins with what has been typed, but the use of wildcards is also fully supported.
For instance:
wcd Deskwill change to directory /home/waterlan/Desktop
But also
wcd *topwill do that.
Wcd is free to use and you can get the source code too.
Major Features:
- Full screen interactive directory browser with speed search and zoom in/out.
- Present the user a list in case of multiple matches.
- Wildcards *, ? and [SET] supported.
- Directory stack, push pop.
- Subdir definition possible. E.g. wcd subdira/subdirb
- Long directory names support in Win95/98/NT DOS-box
- Windows LAN UNC paths supported.
- Change drive and directory at once.
- Alias directories.
- Ban directories.
- Exclude directories.
- Free portable source-code.
- Multi user: Jump to folders of your colleagues.
- Multi platform:
- DOS 16 bit, DOS 32 bit, DOS bash
- Windows Command prompt, Windows PowerShell, Windows zsh, MSYS, Cygwin
- Unix/Linux: all Bourne and C type shells.
- OS/2 Warp
- Native language support: Dutch, English, Spanish
- UTF-8 Unicode support for Unix/Linux, including double width and combining characters.
Added: 2009-07-22 License: GPL Price: FREE
14 downloads
WMII 2 3.1
WMII is a dynamic window manager for X11. more>>
WMII is the next generation of wmi. WMII 2 project is a dynamic window manager for X11, which is highly customizable and usable with keyboard and mouse. It supports conventional, tabbed and tiled window management with low memory usage and a vi-alike user interaction.
Due to a complete rewrite it is highly modularized and uses a new configuration and inter-process communication interface which is oriented on the 9p protocol of the plan9 operating system.
Main features:
General
- xinerama/multihead support (not yet implemented)
Window management
- tabbed window management
- tiled window management
- conventional window management
- customizable snap-to-border feature
Input devices
- full keyboard control
- improved mouse control
Configuration
- IXP configuration interface
- remote configuration
- session support (through configuration)
Tools
Official utilities (included in wmii)
- wmiiwm? (core window manager)
- wmimenu? (generic menu)
- wmibar? (generic bar)
- wmir (wmi remote configuration/shell tool)
- wmikeys? (the shortcut handler)
- wmifs? (virtual master file system server)
- wmiplumb? (plumbing tool)
- wmiwarp? (pointer warping tool)
Contributed Tools
- Szs3rd (the thing to show system, mail, player and other informations... BSD compatible in a few days!)
- wmizer (configuration tool)
- status-rssw (Gmail Inbox checker status text presentation & other wmii things)
- plumbrb (Plumbing handler with regex support)
Rendering
- cairo rendering backend
- Xlib rendering backend
- style support
- antialiased fonts (cairo rendering backend only)
Compliance
- POSIX compliance (poorly several GNU libs are not)
- ICCCM compliance
- partly NETWM compliance (without KDE-/Gnome-only crap)
<<lessDue to a complete rewrite it is highly modularized and uses a new configuration and inter-process communication interface which is oriented on the 9p protocol of the plan9 operating system.
Main features:
General
- xinerama/multihead support (not yet implemented)
Window management
- tabbed window management
- tiled window management
- conventional window management
- customizable snap-to-border feature
Input devices
- full keyboard control
- improved mouse control
Configuration
- IXP configuration interface
- remote configuration
- session support (through configuration)
Tools
Official utilities (included in wmii)
- wmiiwm? (core window manager)
- wmimenu? (generic menu)
- wmibar? (generic bar)
- wmir (wmi remote configuration/shell tool)
- wmikeys? (the shortcut handler)
- wmifs? (virtual master file system server)
- wmiplumb? (plumbing tool)
- wmiwarp? (pointer warping tool)
Contributed Tools
- Szs3rd (the thing to show system, mail, player and other informations... BSD compatible in a few days!)
- wmizer (configuration tool)
- status-rssw (Gmail Inbox checker status text presentation & other wmii things)
- plumbrb (Plumbing handler with regex support)
Rendering
- cairo rendering backend
- Xlib rendering backend
- style support
- antialiased fonts (cairo rendering backend only)
Compliance
- POSIX compliance (poorly several GNU libs are not)
- ICCCM compliance
- partly NETWM compliance (without KDE-/Gnome-only crap)
Download (0.063MB)
Added: 2006-06-18 License: GPL (GNU General Public License) Price:
1223 downloads
NewVideoRecorder 20041227
NewVideoRecorder is a high quality video capture toolkit for Linux. more>>
NewVideoRecorder is a high quality video capture toolkit for Linux. At the moment it supports v4l1 and v4l2 devices as video sources, oss and alsa as an audio source. It can output to quicktime (in RTjpeg, YUV2, or RAW format, and most ffmpeg formats), AVI (in DivX format), NuppelVideo format, MPEG-1, and streaming multicast/unsicast.
nvrec includes deep buffering to minimise frame drops, in high load situations, and a smooth framedropping algorithm to keep the video as smooth as possible if you do have to drop frames.
It also has a audio "stretcher" to write the exact amount of audio to the output file (this compensates for lack of clock synch between video and audio cards). nvrec is written in an extremely modular way, to make it easy to integrate with existing applications, or add your own output formats.
This engine makes use of deep buffers (2 seconds+) for audio and video. The video is buffered in the driver to avoid too many costly userspace copies. The audio is buffered in a userspace ring buffer. This is expensive, but neccessary, as OSS drivers are often limited to very short buffers.
All buffers are accurately timestamped as they are received: video buffers by the kernel, and audio buffers by gettimeofday() (offset by the current depth of the kernel buffer). At the start, audio or video is dropped until both are in sync, and from then on, only audio and video timestamped for the same period is processed.
Since there will be clock drift between the audio capture and video capture cards, the audio stream is dynamically warped so that exactly the right amount of audio is placed in the output file for each video frame written to the file (NOTE: At the moment the warping is done by a simple line algorithm - could do a lot better here). A simple P-I controller adjusts the warping factor to keep sync.
The code tries to keep the internal buffers between 10% (to make sure we never run out of data) and 40% (to make sure we don;t have uncontrolled dropping) full. When the buffer is less than 10% full, it simply sleeps 1 frame period. When the buffer is more than 40% full, it gradually drops more frames per sencond, until a stable point is reached.
The code is designed to be very modular, so there should be no problem adding an alsa core.
There are currently five output cores: qtfile_core, which produces RTjpeg, YUV2 or RAW encoded quicktime files; divxfile_core, which produces DivX encoded avi files; nuvfile_core, which produces NuppelVideo0.4 files; rtefile_core, which produces mpeg-1 program streams; and ffmpegfile_core, which produces a lot of types of files, like mpeg4, mpeg2, mpeg1, wmv, dv, h263... (see documentation in ffmpeg.sf.net).
Enhancements:
- Added support for recording radio (in devices with support for that
- Fixed ffmpegrec support, updating the code to use the new libavcodec api and new libavformat api (ffmpeg cvs release 2004-07-09 checked)
- Fixed some bugs in the calls to v4l2 api (kernel 2.6.4).
- Added support for split files on the fly, by specify the size of each chunk and the basename used for each file.
- Fixed some compile warnings. The code compiles without problems in gcc 2.95 and gcc 3.3.
<<lessnvrec includes deep buffering to minimise frame drops, in high load situations, and a smooth framedropping algorithm to keep the video as smooth as possible if you do have to drop frames.
It also has a audio "stretcher" to write the exact amount of audio to the output file (this compensates for lack of clock synch between video and audio cards). nvrec is written in an extremely modular way, to make it easy to integrate with existing applications, or add your own output formats.
This engine makes use of deep buffers (2 seconds+) for audio and video. The video is buffered in the driver to avoid too many costly userspace copies. The audio is buffered in a userspace ring buffer. This is expensive, but neccessary, as OSS drivers are often limited to very short buffers.
All buffers are accurately timestamped as they are received: video buffers by the kernel, and audio buffers by gettimeofday() (offset by the current depth of the kernel buffer). At the start, audio or video is dropped until both are in sync, and from then on, only audio and video timestamped for the same period is processed.
Since there will be clock drift between the audio capture and video capture cards, the audio stream is dynamically warped so that exactly the right amount of audio is placed in the output file for each video frame written to the file (NOTE: At the moment the warping is done by a simple line algorithm - could do a lot better here). A simple P-I controller adjusts the warping factor to keep sync.
The code tries to keep the internal buffers between 10% (to make sure we never run out of data) and 40% (to make sure we don;t have uncontrolled dropping) full. When the buffer is less than 10% full, it simply sleeps 1 frame period. When the buffer is more than 40% full, it gradually drops more frames per sencond, until a stable point is reached.
The code is designed to be very modular, so there should be no problem adding an alsa core.
There are currently five output cores: qtfile_core, which produces RTjpeg, YUV2 or RAW encoded quicktime files; divxfile_core, which produces DivX encoded avi files; nuvfile_core, which produces NuppelVideo0.4 files; rtefile_core, which produces mpeg-1 program streams; and ffmpegfile_core, which produces a lot of types of files, like mpeg4, mpeg2, mpeg1, wmv, dv, h263... (see documentation in ffmpeg.sf.net).
Enhancements:
- Added support for recording radio (in devices with support for that
- Fixed ffmpegrec support, updating the code to use the new libavcodec api and new libavformat api (ffmpeg cvs release 2004-07-09 checked)
- Fixed some bugs in the calls to v4l2 api (kernel 2.6.4).
- Added support for split files on the fly, by specify the size of each chunk and the basename used for each file.
- Fixed some compile warnings. The code compiles without problems in gcc 2.95 and gcc 3.3.
Download (0.26MB)
Added: 2006-07-19 License: GPL (GNU General Public License) Price:
1194 downloads
dynamic window manager 4.3
dynamic window manager or dwm is a dynamic window manager for X11. more>>
dynamic window manager or dwm is a dynamic window manager for X11.
As founder and main developer of wmii I came to the conclusion that wmii is too clunky for my needs. I dont need so many funky features and all this hype about remote control through a 9P service, I only want to manage my windows in a simple, but dynamic way.
wmii never got finished because I listened to users, who proposed arbitrary ideas I considered useful. This resulted in an extreme CADT development model, which was a mistake. Thus the philosophy of dwm is simply to fit my needs (maybe yours as well). Thats it.
Main features:
- dwm has no Lua integration, no 9P support, no editable tagbars, no shell-based configuration, no remote control, and comes without any additional tools like printing the selection or warping the mouse.
- dwm is only a single binary, its source code is intended to never exceed 2000 SLOC.
- dwm is based on tagging and dynamic window management (however simpler than ion, wmii or larswm). It manages windows in tiling and floating modes. Either mode can be applied dynamically, depending on the application in use and the task performed.
- dwm doesnt distinguishes between layers, there is no floating or tiled layer. Wether the clients of currently selected tag are in tiled mode or not, you can re-arrange all clients on the fly. Popup- and fixed-size windows are treated floating, however.
- dwm is customized through editing its source code, that makes it extremely fast and secure - it does not process any input data which hasnt been known at compile time, except window title names and status text read from standard input. You dont have to learn Lua/sh/ruby or some weird configuration file format (like X resource files), beside C to customize it for your needs, you only have to learn C (at least editing header files).
- Because dwm is customized through editing its source code, its pointless to make binary packages of it. This keeps its userbase small and elitist. No novices asking stupid questions.
- dwm uses 1-pixel borders to provide the maximum of screen real estate to clients. Small titlebars are only drawn in front of unfocused clients.
- dwm reads from standard input to print arbitrary status text (like the date, load, battery charge). Thats much simpler than larsremote, wmiir and what not...
- It can be downloaded and distributed under the conditions of the MIT/X Consortium license.
- Optionally you can install dmenu to extend dwm with a wmii-alike menu.
Enhancements:
- This release contains certain major bugfixes, especially regarding banning/unbanning client windows.
<<lessAs founder and main developer of wmii I came to the conclusion that wmii is too clunky for my needs. I dont need so many funky features and all this hype about remote control through a 9P service, I only want to manage my windows in a simple, but dynamic way.
wmii never got finished because I listened to users, who proposed arbitrary ideas I considered useful. This resulted in an extreme CADT development model, which was a mistake. Thus the philosophy of dwm is simply to fit my needs (maybe yours as well). Thats it.
Main features:
- dwm has no Lua integration, no 9P support, no editable tagbars, no shell-based configuration, no remote control, and comes without any additional tools like printing the selection or warping the mouse.
- dwm is only a single binary, its source code is intended to never exceed 2000 SLOC.
- dwm is based on tagging and dynamic window management (however simpler than ion, wmii or larswm). It manages windows in tiling and floating modes. Either mode can be applied dynamically, depending on the application in use and the task performed.
- dwm doesnt distinguishes between layers, there is no floating or tiled layer. Wether the clients of currently selected tag are in tiled mode or not, you can re-arrange all clients on the fly. Popup- and fixed-size windows are treated floating, however.
- dwm is customized through editing its source code, that makes it extremely fast and secure - it does not process any input data which hasnt been known at compile time, except window title names and status text read from standard input. You dont have to learn Lua/sh/ruby or some weird configuration file format (like X resource files), beside C to customize it for your needs, you only have to learn C (at least editing header files).
- Because dwm is customized through editing its source code, its pointless to make binary packages of it. This keeps its userbase small and elitist. No novices asking stupid questions.
- dwm uses 1-pixel borders to provide the maximum of screen real estate to clients. Small titlebars are only drawn in front of unfocused clients.
- dwm reads from standard input to print arbitrary status text (like the date, load, battery charge). Thats much simpler than larsremote, wmiir and what not...
- It can be downloaded and distributed under the conditions of the MIT/X Consortium license.
- Optionally you can install dmenu to extend dwm with a wmii-alike menu.
Enhancements:
- This release contains certain major bugfixes, especially regarding banning/unbanning client windows.
Download (0.018MB)
Added: 2007-07-16 License: MIT/X Consortium License Price:
830 downloads
Gcover 0.1.3
Gcover is a cd cover editor program for the Gnome community. more>>
Gcover is a cd cover editor program for the Gnome community. Its my first development under Linux/C/Gnome so dont take it too hard. There are two reasons why I release this program:
I think it is quite useful If you want to create nice covers for your "home made" cds (eg.:audio cds from mp3s or data cds).
I couldnt find any good cover editor program for Gnome.
Main features:
- Different kind of covers (One or two back pages,booklet for your front pages or simple 2 paged front)
- Title text,page text with different fonts and colors. Many text formatting opportunities(eg.:margins,alignment,columns,word warp,etc..)
- Picture for every pages with scaling options,border cutting,different interpolation modes(using the power of gdk-pixbuf),etc..
- Printing to postscript output,real printers. Print preview.
- Plain text loading to the page editor or to the internal clipboard
- And so on... Its better if you look the program
<<lessI think it is quite useful If you want to create nice covers for your "home made" cds (eg.:audio cds from mp3s or data cds).
I couldnt find any good cover editor program for Gnome.
Main features:
- Different kind of covers (One or two back pages,booklet for your front pages or simple 2 paged front)
- Title text,page text with different fonts and colors. Many text formatting opportunities(eg.:margins,alignment,columns,word warp,etc..)
- Picture for every pages with scaling options,border cutting,different interpolation modes(using the power of gdk-pixbuf),etc..
- Printing to postscript output,real printers. Print preview.
- Plain text loading to the page editor or to the internal clipboard
- And so on... Its better if you look the program
Download (0.36MB)
Added: 2006-07-19 License: GPL (GNU General Public License) Price:
1193 downloads
Secleted [ 0 ] software to compare
- Page: 1 of 2
- 1
- 2
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above warp search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed