directmedia layer
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 742
Simple DirectMedia Layer 1.2.11
Simple DirectMedia Layer project is a library that gives portable low-level access for multimedia applications. more>>
Simple DirectMedia Layer project is a library that gives portable low-level access for multimedia applications.
Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. It is used by MPEG playback software, emulators, and many popular games, including the award winning Linux port of "Civilization: Call To Power."
SDL supports Linux, Windows, Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. The code contains support for AmigaOS, Dreamcast, Atari, AIX, OSF/Tru64, RISC OS, SymbianOS, and OS/2, but these are not officially supported.
SDL is written in C, but works with C++ natively, and has bindings to several other languages, including Ada, C#, Eiffel, Erlang, Euphoria, Guile, Haskell, Java, Lisp, Lua, ML, Objective C, Pascal, Perl, PHP, Pike, Pliant, Python, Ruby, and Smalltalk.
SDL is distributed under GNU LGPL version 2. This license allows you to use SDL freely in commercial programs as long as you link with the dynamic library.
Enhancements:
- Dynamic X11 loading is only enabled with gcc 4 supporting -fvisibility=hidden. This fixes crashes related to symbol collisions, and allows building on Solaris and IRIX.
- Fixed building SDL with Xinerama disabled.
- Fixed DRI OpenGL library loading, using RTLD_GLOBAL in dlopen().
- Added pkgconfig configuration support.
<<lessSimple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. It is used by MPEG playback software, emulators, and many popular games, including the award winning Linux port of "Civilization: Call To Power."
SDL supports Linux, Windows, Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. The code contains support for AmigaOS, Dreamcast, Atari, AIX, OSF/Tru64, RISC OS, SymbianOS, and OS/2, but these are not officially supported.
SDL is written in C, but works with C++ natively, and has bindings to several other languages, including Ada, C#, Eiffel, Erlang, Euphoria, Guile, Haskell, Java, Lisp, Lua, ML, Objective C, Pascal, Perl, PHP, Pike, Pliant, Python, Ruby, and Smalltalk.
SDL is distributed under GNU LGPL version 2. This license allows you to use SDL freely in commercial programs as long as you link with the dynamic library.
Enhancements:
- Dynamic X11 loading is only enabled with gcc 4 supporting -fvisibility=hidden. This fixes crashes related to symbol collisions, and allows building on Solaris and IRIX.
- Fixed building SDL with Xinerama disabled.
- Fixed DRI OpenGL library loading, using RTLD_GLOBAL in dlopen().
- Added pkgconfig configuration support.
Download (2.7MB)
Added: 2006-11-03 License: GPL (GNU General Public License) Price:
1125 downloads
Object-oriented Simple DirectMedia Layer 0.4
OSDL project has for goal to provide a free portable high-level open-source library for multimedia and game programming. more>>
OSDL project has for goal to provide a free portable high-level open-source library for multimedia and game programming. It is based upon low level graphical backends, notably Sam Lantingas SDL, which means Simple DirectMedia Library.
OSDL is a C++ framework built currently on top of SDL, thus OSDL stands for Objet oriented Simple DirectMedia Library.
OSDL makes use of the Ceylan library, the place where we gathered all generic developments needed by OSDL.
OSDL is also strongly linked with our project dedicated to the creation of an open-source gaming console, Once Sol. More generally speaking, one may take a look at our project portal, Esperide, which gathers all we are doing in the video game field.
At first, most people are primarily interested in screenshots, then in the OSDL API, finally in the recommended way of getting OSDL, which is named LOANI.
This is still an early stage of OSDLs development, so little information is to be found on this website. We nevertheless hope it will get bigger and bigger, as the source code grows. We advise you to look at the column we named Documentation, since many interesting articles about game creation lie there.
Enhancements:
- SVN used instead of CVS
- The Autotools are used, instead of custom-made GNUMakefiles
- integration to the Ceylan 0.5 version
- OSDL scheduler robustified and enhanced a lot
- numerous tests improved (full test suite added), and many bugs fixed
<<lessOSDL is a C++ framework built currently on top of SDL, thus OSDL stands for Objet oriented Simple DirectMedia Library.
OSDL makes use of the Ceylan library, the place where we gathered all generic developments needed by OSDL.
OSDL is also strongly linked with our project dedicated to the creation of an open-source gaming console, Once Sol. More generally speaking, one may take a look at our project portal, Esperide, which gathers all we are doing in the video game field.
At first, most people are primarily interested in screenshots, then in the OSDL API, finally in the recommended way of getting OSDL, which is named LOANI.
This is still an early stage of OSDLs development, so little information is to be found on this website. We nevertheless hope it will get bigger and bigger, as the source code grows. We advise you to look at the column we named Documentation, since many interesting articles about game creation lie there.
Enhancements:
- SVN used instead of CVS
- The Autotools are used, instead of custom-made GNUMakefiles
- integration to the Ceylan 0.5 version
- OSDL scheduler robustified and enhanced a lot
- numerous tests improved (full test suite added), and many bugs fixed
Download (7.4MB)
Added: 2007-04-27 License: LGPL (GNU Lesser General Public License) Price:
912 downloads
Common Media Input Layer 0.91 Alpha
Common Media Input Layer is an C++ OO framework designed to improve the state of cross-platform input handling in games. more>>
Common Media Input Layer (CMIL) is an C++ OO framework designed to improve the state of cross-platform input handling in games and other similar applications.
CMIL was created out of the belief that the methods used in most media APIs perform input handling in a confusing, difficult, inflexible fashion. CMILs goal is to address this issue by establishing a flexible, easy to use, human readible, OO abstraction layer. This layer specifically allows for media and input device abstraction.
Main features:
- easiliy build complex input sequences, including timed inputs, which do not impose restrictive notions of what is and isnt a moderator on the user
- custom input device configurations, IE: Users can swap input device configurations on the fly and create their own representation of a custom device using the framework facilities
<<lessCMIL was created out of the belief that the methods used in most media APIs perform input handling in a confusing, difficult, inflexible fashion. CMILs goal is to address this issue by establishing a flexible, easy to use, human readible, OO abstraction layer. This layer specifically allows for media and input device abstraction.
Main features:
- easiliy build complex input sequences, including timed inputs, which do not impose restrictive notions of what is and isnt a moderator on the user
- custom input device configurations, IE: Users can swap input device configurations on the fly and create their own representation of a custom device using the framework facilities
Download (0.087MB)
Added: 2007-07-25 License: GPL (GNU General Public License) Price:
821 downloads
CAN Abstraction Layer 0.1.6
The CAN Abstraction Layer (CANAL) provides a single interface for programs to use different CAN drivers. more>>
The CAN Abstraction Layer (CANAL) provides a single interface for programs to use different CAN drivers.
It consists of a CANAL daemon that handles client and driver communication, a canalLogger that logs messages in a window, and a simple diagnostic application. C++ clases and DLL/DL interfaces are provided.
Enhancements:
- The configuration readings for CanalWorks were upgraded.
- A GUID ordering problem in canald was fixed.
- A problem with clear message list switch in CanalWorks was fixed.
- A problem in which Linux version Level I received a thread with an invalid count returned for DataAvailable was fixed.
<<lessIt consists of a CANAL daemon that handles client and driver communication, a canalLogger that logs messages in a window, and a simple diagnostic application. C++ clases and DLL/DL interfaces are provided.
Enhancements:
- The configuration readings for CanalWorks were upgraded.
- A GUID ordering problem in canald was fixed.
- A problem with clear message list switch in CanalWorks was fixed.
- A problem in which Linux version Level I received a thread with an invalid count returned for DataAvailable was fixed.
Download (2.3MB)
Added: 2005-10-11 License: LGPL (GNU Lesser General Public License) Price:
1474 downloads
dxr3Player 0.11
dxr3Player is a lightweight, command-line DVD player for Linux and the DXR3 MPEG-2 decoder boards. more>>
dxr3Player is a lightweight, command-line DVD player for Linux and the DXR3 (aka Hollywood+) MPEG-2 decoder boards. This software supports all major DVD features, including: menus, navigation, fast forward and backward playback, subtitles and camera angle changes.
The player is very conservative on memory usage and tries very hard (and mostly succeeds) to keep video and audio in sync.
dxr3Player also plays DVDs on any X Window System display using the Simple DirectMedia Layer (SDL) library.
The software relies on the following other pieces of software:
- The dxr3 (em8300) drivers developed for Linux by the dxr3 project at Sourceforge. It is needed to access the decoder board.
- The libmpdvdkit library from MPlayer (which is actually a modified copy of the libdvdread and libdvdcss libraries). It is incorporated into the sources, and is used to access the DVDs.
- The liba52 library also from MPlayer (which is actually a modified copy of liba52, an A-52 decoding library). It is incorporated into the sources, and is used to decode AC-3 audio streams.
- If you turn on LIRC support, the LIRC library.
- If you want to play MPEG audio, the MAD library.
- The Simple DirectMedia Layer library for displaying on an X Window display without hardware support.
- The libmpeg2 library for decoding MPEG video streams when not using the DXR3 board or the Unichrome chipset.
Main features:
- DVD menus
- navigation: jumping to previous and next chapter and menus
- fast forward and backward playback, pausing
- subtitles
- camera angle changes
- support for full-screen VGA "overlay"
- infrared remote control support via LIRC
- playback of AC3, Linear PCM and MPEG audio streams
- digital audio output (both PCM and AC-3)
- joystick as input device
- dump of complete DVDs to hard disks and playback from there
Version restrictions:
- of Linear PCM streams, only 48 kHz, 16-bit stereo ones are played
- as you can see, this homepage is quite rudimentary. However, I do not hope to change it soon anymore
<<lessThe player is very conservative on memory usage and tries very hard (and mostly succeeds) to keep video and audio in sync.
dxr3Player also plays DVDs on any X Window System display using the Simple DirectMedia Layer (SDL) library.
The software relies on the following other pieces of software:
- The dxr3 (em8300) drivers developed for Linux by the dxr3 project at Sourceforge. It is needed to access the decoder board.
- The libmpdvdkit library from MPlayer (which is actually a modified copy of the libdvdread and libdvdcss libraries). It is incorporated into the sources, and is used to access the DVDs.
- The liba52 library also from MPlayer (which is actually a modified copy of liba52, an A-52 decoding library). It is incorporated into the sources, and is used to decode AC-3 audio streams.
- If you turn on LIRC support, the LIRC library.
- If you want to play MPEG audio, the MAD library.
- The Simple DirectMedia Layer library for displaying on an X Window display without hardware support.
- The libmpeg2 library for decoding MPEG video streams when not using the DXR3 board or the Unichrome chipset.
Main features:
- DVD menus
- navigation: jumping to previous and next chapter and menus
- fast forward and backward playback, pausing
- subtitles
- camera angle changes
- support for full-screen VGA "overlay"
- infrared remote control support via LIRC
- playback of AC3, Linear PCM and MPEG audio streams
- digital audio output (both PCM and AC-3)
- joystick as input device
- dump of complete DVDs to hard disks and playback from there
Version restrictions:
- of Linear PCM streams, only 48 kHz, 16-bit stereo ones are played
- as you can see, this homepage is quite rudimentary. However, I do not hope to change it soon anymore
Download (MB)
Added: 2007-06-27 License: GPL (GNU General Public License) Price:
851 downloads
Tie::Layers 0.06
Tie::Layers is a Perl module to read and write files pipelined through a stack of subroutine layers. more>>
SYNOPSIS
#####
# Subroutines
#
use Tie::Layers qw(is_handle config);
$yes = is_handle( $file_handle );
($key, $old_value) = config(%options, $key);
($key, $old_value) = config(%options, $key => $new_value );
####
# Config default startup options
#
@old_options_list = config(%options, @option_list);
@old_options_list = config(%options, @option_list);
@old_options_list = config(%options, %option_list);
#####
# Class interface
#
require Tie::Layers;
#####
# Using support methods and file handle with
# the file subroutines such as open(), readline()
# print(), close()
#
tie *LAYERS_FILEHANDLE, Tie::Layers, @options
$layers = tied *LAYERS_FILEHANDLE;
#####
# Using support methods only, no file subroutines
#
$layers = Tie::Layers->TIEHANDLE(@options);
($key, $old_value) = $layers->config($key);
($key, $old_value) = $layers->config($key => $new_value );
@old_options_list = $layers->config(@option_list);
@old_options_list = $layers->config(@option_list);
@old_options_list = $layers->config(%option_list);
$data = $layers->fin($filename, @options);
$data = $layers->fout($filename, $data, @options);
$yes = $layers->is_handle( $file_handle );
If a subroutine or method will process a list of options, @options, that subroutine will also process an array reference, @options, [@options], or hash reference, %options, {@options}.
The Tie::Layers program module contains the tie file handle Tie::Layers package. The Tie::Layers package provides the ability to insert a stack of subroutines between file subroutines print and realine and the underlying $file. The syntax of the subroutines of each layer of the readline stack and the print stack must comply to the the requirements described herein below.
This is necessary so that the Tie::Layers READLINE and PRINT subroutines know how to transfer the output from one layer to the input of another layer. The stacks are setup by supplying options with a reference to the subroutine for each layer in the print stack and the readline stack. The Tie::Layers are line orientated and do not support any character file subrouintes.
The getc, read, and write file subroutines are supported by the Tie::Layers package. The seek routines are line oriented in that the seek and tell subroutine positions are the line in the underlying file and not the character position in the file.
Download (0.070MB)
Added: 2007-02-13 License: Perl Artistic License Price:
983 downloads
The layer extract plug-in
The layer extract plug-in is a Gimp plug-in that creates a new image/film by periodically extracting layers from another image. more>>
The layer extract plug-in is a Gimp plug-in that creates a new image/film by periodically extracting layers from another image.
It takes one interval (number of sequent layers) every period. The number of periods can be limited.
"< Image >/Filters/Animation/Layer Extract"
<<lessIt takes one interval (number of sequent layers) every period. The number of periods can be limited.
"< Image >/Filters/Animation/Layer Extract"
Download (0.014MB)
Added: 2006-09-14 License: GPL (GNU General Public License) Price:
1156 downloads
Resolver User Layer Interface 0.36
RULI stands for Resolver User Layer Interface. more>>
RULI stands for Resolver User Layer Interface. Its a library built on top of an asynchronous DNS stub resolver. RULI provides an easy-to-use interface for querying DNS SRV resource records. The goal is to promote wide deployment of SRV-cognizant software. RULI aims to fully support SRV-related standards. There are bindings for PHP, Perl, Guile/Scheme, Java, and Lua. IPv6 is supported.
Now you can understand the benefits of SRV records and please see how RULI can help you.
SRV records are more complex than A records
Handling DNS SRV is not as simple as to deal with ordinary address records. When one performs a query for A records by calling gethostbyname(), he gets a list of addresses which should be contacted in the same order as they were received. For SRV records, there is an additional logic that must be applied to the records, based on their weight and priority, to discover the correct sequence for contacting them.
RULI can handle SRV records for you
The SRV logic is described in RFC 2782. Those who intend to use SRV benefits in their application are expected to implement that exact behavior. RULI can help here: it automatically performs all the SRV logic for you.
Keep focus on your application logic
Application developers probably want to spend time on their business logic; not dealing with the details of the DNS protocol or implementing the SRV specification.
RULI is a tested framework designed to properly fetch SRV records. It saves you time and head aches.
RULI is free as in free beer and in free speech
<<lessNow you can understand the benefits of SRV records and please see how RULI can help you.
SRV records are more complex than A records
Handling DNS SRV is not as simple as to deal with ordinary address records. When one performs a query for A records by calling gethostbyname(), he gets a list of addresses which should be contacted in the same order as they were received. For SRV records, there is an additional logic that must be applied to the records, based on their weight and priority, to discover the correct sequence for contacting them.
RULI can handle SRV records for you
The SRV logic is described in RFC 2782. Those who intend to use SRV benefits in their application are expected to implement that exact behavior. RULI can help here: it automatically performs all the SRV logic for you.
Keep focus on your application logic
Application developers probably want to spend time on their business logic; not dealing with the details of the DNS protocol or implementing the SRV specification.
RULI is a tested framework designed to properly fetch SRV records. It saves you time and head aches.
RULI is free as in free beer and in free speech
Download (0.12MB)
Added: 2006-07-15 License: GPL (GNU General Public License) Price:
1197 downloads
JideBuilder 1.0a2
JideBuilder is a Groovy builder for the open source JIDE Common Layer. more>>
JideBuilder is a Groovy builder for the open source JIDE Common Layer. The project is based on the original SwingBuilder.
The goal of the project is having a builder for swing apps that seamlessly integrates default swing and jide components.
<<lessThe goal of the project is having a builder for swing apps that seamlessly integrates default swing and jide components.
Download (0.18MB)
Added: 2007-06-30 License: The Apache License 2.0 Price:
848 downloads
PHP MySQL Database Layer Class 1.03
PHP MySQL Database Layer Class is a php class providing some very useful methods to work with a mySQL database. more>>
PHP MySQL Database Layer Class is a php class providing some very useful methods to work with a mySQL database.
Main features:
- connects you to a mySQL host and select a database in a single call (opposed to PHPs native functions which requires two steps)
- has a "query" method that has the same role as PHPs mysql_query but this one will tell you about the affected rows (through the "affectedRows" property) when executing an INSERT, UPDATE, DELETE query and about the found rows (through the "foundRows" property) when executing a SELECT query - the "foundRows" property tells you how many records would the query return if there was no LIMIT applied to it - very useful when creating listing so you dont have to do a query to determine how many records you have in a database and the again a query to show only the records from a page
- has an "escape_string" method that will "mysql_real_escape_string" your string weather the magic_quotes are on or not
- has a "dlookup" method that i am sure you will find VERY useful once you get to know it: it return data from a single table cell based on standard mySQL WHERE criteria - see the manual for detailed info! (yes, it acts exactly like the function with the same name from microsft access)
- provides you with a very useful debug interface which shows you each query your script is running, for how long, the total number of queries made, the total execution time of your queries, errors of your queries and what are the values of $_GET, $_POST, $_COOKIES and $_SERVER superglobal variables. The debug interface is template driven and supports localisation.
- it will notify you if a specific query is executed more than once and will advise you to optimize the script
- you can instruct it to send you an email if a query runs longer then a specified time
- the code is heavily documented so you can easily understand every aspect of it and even maybe use it as a php tutorial
Enhancements:
- the state of $_FILES and $_SESSION superglobals are now also shown in the debug window
- better integration with XTemplate (previously, there was a variable assigned to each entry in the language file now the XTemplates feature to handle arrays is used)
- properties will now have default values in PHP 4
<<lessMain features:
- connects you to a mySQL host and select a database in a single call (opposed to PHPs native functions which requires two steps)
- has a "query" method that has the same role as PHPs mysql_query but this one will tell you about the affected rows (through the "affectedRows" property) when executing an INSERT, UPDATE, DELETE query and about the found rows (through the "foundRows" property) when executing a SELECT query - the "foundRows" property tells you how many records would the query return if there was no LIMIT applied to it - very useful when creating listing so you dont have to do a query to determine how many records you have in a database and the again a query to show only the records from a page
- has an "escape_string" method that will "mysql_real_escape_string" your string weather the magic_quotes are on or not
- has a "dlookup" method that i am sure you will find VERY useful once you get to know it: it return data from a single table cell based on standard mySQL WHERE criteria - see the manual for detailed info! (yes, it acts exactly like the function with the same name from microsft access)
- provides you with a very useful debug interface which shows you each query your script is running, for how long, the total number of queries made, the total execution time of your queries, errors of your queries and what are the values of $_GET, $_POST, $_COOKIES and $_SERVER superglobal variables. The debug interface is template driven and supports localisation.
- it will notify you if a specific query is executed more than once and will advise you to optimize the script
- you can instruct it to send you an email if a query runs longer then a specified time
- the code is heavily documented so you can easily understand every aspect of it and even maybe use it as a php tutorial
Enhancements:
- the state of $_FILES and $_SESSION superglobals are now also shown in the debug window
- better integration with XTemplate (previously, there was a variable assigned to each entry in the language file now the XTemplates feature to handle arrays is used)
- properties will now have default values in PHP 4
Download (0.067MB)
Added: 2006-09-08 License: Free for non-commercial use Price:
678 downloads
Icmpenum 1.0
Icmpenum sends ICMP traffic for host enumeration. more>>
Host enumeration is the act of determining the IP address of potential targets on a network. This can be done in both layer 2 and layer 3. Icmpenum project can send ICMP traffic for such enumeration.
The ICMP packets supported are: Echo, Timestamp, Information and Netmask. Furthermore, it supports spoofing and promiscuous listening for reply packets. Icmpenum is great for enumerating networks which allow ICMP traffic.
<<lessThe ICMP packets supported are: Echo, Timestamp, Information and Netmask. Furthermore, it supports spoofing and promiscuous listening for reply packets. Icmpenum is great for enumerating networks which allow ICMP traffic.
Download (0.58MB)
Added: 2007-05-08 License: GPL (GNU General Public License) Price:
548 downloads
Object Relational Membrane 2a5
Object Relational Membrane is a Python package that provides the functionality of an object relational layer like EJB. more>>
Object Relational Membrane is a Python package that provides the functionality of an object relational layer like EJB or other persistence storage systems.
Object Relational Membrane is a thin compatibility layer between SQL table layouts and Object Oriented Python. While providing a good deal of functionality, it tries to be as small and simple as possible. It currently works with PostgreSQL and Gadfly.
Adapters for Firebird and MySQL are planed.
Enhancements:
- A number of small changes and enhancements.
- The last release previous to a "beta" release.
<<lessObject Relational Membrane is a thin compatibility layer between SQL table layouts and Object Oriented Python. While providing a good deal of functionality, it tries to be as small and simple as possible. It currently works with PostgreSQL and Gadfly.
Adapters for Firebird and MySQL are planed.
Enhancements:
- A number of small changes and enhancements.
- The last release previous to a "beta" release.
Download (0.17MB)
Added: 2007-01-23 License: GPL (GNU General Public License) Price:
1005 downloads
Animated rotation 1
Animated rotation is a GIMP plugin that can build an new animated image by rotation of a layer. more>>
Animated rotation is a GIMP plugin that can build an new animated image by rotation of a layer. You can give the angle of rotation and the number of increments.
<<less Download (MB)
Added: 2006-08-16 License: GPL (GNU General Public License) Price:
1193 downloads
Database Independent Abstraction Layer for C 0.8.2
Database Independent Abstraction Layer for C is a database-independent abstraction layer written in C. more>>
Database Independent Abstraction Layer for C (libdbi) implements a database-independent abstraction layer in C, similar to the DBI/DBD layer in Perl.
Writing one generic set of code, programmers can leverage the power of multiple databases and multiple simultaneous database connections by using this framework.
Main features:
Database-level abstraction:
Your programs dont need to deal with the arbitrary interfaces and oddities of each database library. libdbi handles all the details for you, you just tell it what you want the database to do.
Modularity:
Since database code written with libdbi is not tied to one specific database server, you can effortlessly switch databases or give your users the option to specify their own database settings.
Clean interface:
With ample documentation describing libdbi and its well thought out object-oriented design, programming with libdbi should be less painful than programming with native database libraries. And you only need to learn it once instead of learning each database librarys syntax.
Accommodates coder apathy:
libdbi is written to do The Right Thing(tm), not just some quick hack that does the job in a half-assed fashion. This saves tons of your $100/hour time from debugging, so that you can mess around having fun during the hours that clients are paying you to debug. It also strives to reduce the worldwide crisis of carpal tunnel syndrome, so it uses constructs such as this one to pack multiple function calls into one line, saving you the bother of typing more than you have to:
dbi_result_get_fields(result, "id.%i firstname.%s lastname.%s fractional_value.%f", &id, &firstname, &lastname, &floatval);
Driver interface:
The dynamic linking used by libdbi allows for driver authors to license their drivers however they please - they are not restricted to the GPL or LGPL. Drivers are easy to write, and require no special installation.
Error handling:
Instead of checking every single database call for errors, libdbi gives programmers the option of registering an error handler callback, similar to a signal handler. Because we know youll "forget" to check for errors otherwise :)
Convenience:
Spend your time writing clever code, not reinventing the wheel with your own single-use, #define-abusing, less featureful database interface.
libdbi implements a database-independent abstraction layer in C, similar to the DBI/DBD layer in Perl. Writing one generic set of code, programmers can leverage the power of multiple databases and multiple simultaneous database connections by using this framework.
The libdbi-drivers project maintains drivers for libdbi. Drivers are distributed seperately from the library itself.
There are currently drivers for MySQL, PostgreSQL, SQLite, and mSQL. More are on the way.
Enhancements:
- Support for a timezone suffix in time and date types was added.
- Error handling and error reporting were vastly improved.
- Some memory leaks were fixed.
<<lessWriting one generic set of code, programmers can leverage the power of multiple databases and multiple simultaneous database connections by using this framework.
Main features:
Database-level abstraction:
Your programs dont need to deal with the arbitrary interfaces and oddities of each database library. libdbi handles all the details for you, you just tell it what you want the database to do.
Modularity:
Since database code written with libdbi is not tied to one specific database server, you can effortlessly switch databases or give your users the option to specify their own database settings.
Clean interface:
With ample documentation describing libdbi and its well thought out object-oriented design, programming with libdbi should be less painful than programming with native database libraries. And you only need to learn it once instead of learning each database librarys syntax.
Accommodates coder apathy:
libdbi is written to do The Right Thing(tm), not just some quick hack that does the job in a half-assed fashion. This saves tons of your $100/hour time from debugging, so that you can mess around having fun during the hours that clients are paying you to debug. It also strives to reduce the worldwide crisis of carpal tunnel syndrome, so it uses constructs such as this one to pack multiple function calls into one line, saving you the bother of typing more than you have to:
dbi_result_get_fields(result, "id.%i firstname.%s lastname.%s fractional_value.%f", &id, &firstname, &lastname, &floatval);
Driver interface:
The dynamic linking used by libdbi allows for driver authors to license their drivers however they please - they are not restricted to the GPL or LGPL. Drivers are easy to write, and require no special installation.
Error handling:
Instead of checking every single database call for errors, libdbi gives programmers the option of registering an error handler callback, similar to a signal handler. Because we know youll "forget" to check for errors otherwise :)
Convenience:
Spend your time writing clever code, not reinventing the wheel with your own single-use, #define-abusing, less featureful database interface.
libdbi implements a database-independent abstraction layer in C, similar to the DBI/DBD layer in Perl. Writing one generic set of code, programmers can leverage the power of multiple databases and multiple simultaneous database connections by using this framework.
The libdbi-drivers project maintains drivers for libdbi. Drivers are distributed seperately from the library itself.
There are currently drivers for MySQL, PostgreSQL, SQLite, and mSQL. More are on the way.
Enhancements:
- Support for a timezone suffix in time and date types was added.
- Error handling and error reporting were vastly improved.
- Some memory leaks were fixed.
Download (0.99MB)
Added: 2007-02-20 License: LGPL (GNU Lesser General Public License) Price:
978 downloads
SDL4Freepascal 1.2.0.0
SDL4Freepascal project contains SDL bindings for Freepascal. more>>
SDL4Freepascal project contains SDL bindings for Freepascal.
It is a set of FreePascal units binding to the SDL (Simple Directmedia Layer) game development API.
To compile the library:
$ tar xzf SDL4Freepascal-1.2.0.0.tar.gz
$ cd SDL4Freepascal-1.2.0.0
$ ./build.sh
and to install it (as root):
# mkdir /usr/lib/fpc/yourversion/units/linux/SDL4Freepascal-1.2.0.0
# mv *.o *.ppu /usr/lib/fpc/yourversion/units/linux/SDL4Freepascal-1.2.0.0
Enhancements:
- Updated to SDL 1.2
- added some demos
- added SDL_cdrom
<<lessIt is a set of FreePascal units binding to the SDL (Simple Directmedia Layer) game development API.
To compile the library:
$ tar xzf SDL4Freepascal-1.2.0.0.tar.gz
$ cd SDL4Freepascal-1.2.0.0
$ ./build.sh
and to install it (as root):
# mkdir /usr/lib/fpc/yourversion/units/linux/SDL4Freepascal-1.2.0.0
# mv *.o *.ppu /usr/lib/fpc/yourversion/units/linux/SDL4Freepascal-1.2.0.0
Enhancements:
- Updated to SDL 1.2
- added some demos
- added SDL_cdrom
Download (0.044MB)
Added: 2006-11-20 License: LGPL (GNU Lesser General Public License) Price:
1070 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above directmedia layer 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